.purim-pk { max-width: var(--container-max); margin: 0 auto; padding: 0 var(--container-pad) 64px; }
.purim-hero { margin: 24px 0 8px; padding: 48px 40px; border-radius: var(--radius-2xl); background:
radial-gradient(circle at 12% 20%, rgba(237,106,38,.16) 0 70px, transparent 72px),
radial-gradient(circle at 88% 30%, rgba(212,165,116,.22) 0 54px, transparent 56px),
radial-gradient(circle at 70% 85%, rgba(237,106,38,.10) 0 40px, transparent 42px),
var(--bg-warm); }
.purim-hero-text { max-width: 640px; }
.purim-eyebrow { font-size: 13px; font-weight: 700; letter-spacing: .04em; color: var(--orange); margin: 0 0 12px; }
.purim-hero h1 { font-family: var(--display); font-size: clamp(28px, 2.2rem + 1vw, 44px); line-height: 1.15; color: var(--ink); margin: 0 0 16px; }
.purim-lead { font-size: 17px; line-height: 1.6; color: var(--ink-soft); margin: 0 0 24px; }
.purim-cta { display: flex; gap: 12px; flex-wrap: wrap; }
.purim-btn { display: inline-flex; align-items: center; min-height: 48px; padding: 0 24px; border-radius: 100px; background: var(--ink); color: #fff; font-weight: 700; text-decoration: none; transition: transform .08s ease-out, background .15s; }
.purim-btn:hover { background: #333; }
.purim-btn:active { transform: scale(.97); }
.purim-btn.ghost { background: transparent; color: var(--ink); border: 1.5px solid var(--ink); }
.purim-btn:focus-visible { outline: 2px solid var(--orange); outline-offset: 2px; }
.purim-section { margin-top: 56px; }
.purim-section h2 { font-family: var(--display); font-size: clamp(22px, 1.4rem + .6vw, 30px); margin: 0 0 8px; color: var(--ink); }
.purim-sub { color: var(--ink-muted); margin: 0 0 20px; }
.purim-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 16px; }
.purim-card { display: flex; flex-direction: column; border-radius: var(--radius-lg); overflow: hidden; background: var(--surface); box-shadow: var(--shadow-md); text-decoration: none; color: var(--ink); transition: transform .2s cubic-bezier(.16,1,.3,1), box-shadow .2s; }
.purim-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); }
.purim-card:focus-visible { outline: 2px solid var(--orange); outline-offset: 3px; }
.purim-card img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; background: #f0ede7; display: block; }
.purim-card-body { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px 16px; }
.purim-card-body strong { font-size: 17px; }
.purim-card-body span { font-size: 14px; color: var(--ink-soft); }
.purim-card-go { margin-top: 6px; color: var(--orange) !important; font-weight: 700; }
.purim-steps ol { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; padding: 0; margin: 16px 0 0; list-style: none; counter-reset: s; }
.purim-steps li { counter-increment: s; background: var(--bg-soft); border-radius: var(--radius-lg); padding: 20px; line-height: 1.55; color: var(--ink-soft); }
.purim-steps li::before { content: counter(s); display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--orange); color: #fff; font-weight: 700; margin-bottom: 10px; }
.purim-steps li strong { color: var(--ink); }
.purim-table-wrap { overflow-x: auto; }
.purim-table { width: 100%; max-width: 560px; border-collapse: collapse; margin-top: 12px; font-size: 15px; }
.purim-table th, .purim-table td { padding: 10px 14px; text-align: center; border-bottom: 1px solid var(--line); }
.purim-table th { background: var(--bg-soft); font-weight: 700; }
.purim-table tbody tr:nth-child(2) td, .purim-table tbody tr:nth-child(3) td { background: rgba(237,106,38,.05); }
.purim-note { color: var(--ink-muted); font-size: 14px; max-width: 65ch; }
.purim-faq details { border-bottom: 1px solid var(--line); padding: 14px 0; max-width: 760px; }
.purim-faq summary { cursor: pointer; font-weight: 700; font-size: 16px; color: var(--ink); }
.purim-faq p { margin: 10px 0 0; color: var(--ink-soft); line-height: 1.6; }
.purim-final { text-align: center; padding: 40px 16px; border-radius: var(--radius-2xl); background: var(--bg-soft); }
@media (max-width: 640px) { .purim-hero { padding: 32px 20px; } .purim-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; } .purim-card-body { padding: 10px 12px 12px; } }
@media (prefers-reduced-motion: reduce) { .purim-card, .purim-btn { transition: none; } } .purim-hero:has(.purim-hero-img) { display: grid; grid-template-columns: 1.15fr 1fr; gap: 32px; align-items: center; }
.purim-hero-img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; border-radius: var(--radius-xl); box-shadow: var(--shadow-lg); }
@media (max-width: 860px) { .purim-hero:has(.purim-hero-img) { grid-template-columns: 1fr; } .purim-hero-img { max-width: 520px; } }