.parties-page .page-hero{padding-block:clamp(1.25rem,3vw,3rem) clamp(1.5rem,3vw,2.5rem)}.party-hero-grid{grid-template-areas:"copy""food""photo";align-items:center;gap:1.5rem;display:grid}.party-hero-grid .page-hero-copy{grid-area:copy;min-width:0}.parties-page h1{font-size:clamp(2.25rem,4.5vw,4rem)}.party-hero-grid .party-visual{grid-area:photo}.party-hero-grid .party-visual img{border-radius:var(--card-radius);width:100%;height:auto;display:block}.parties-page .hero-description{margin-top:1rem}.party-food-welcome{border:1px solid var(--border);border-radius:var(--card-radius);background:var(--sage);grid-area:food;padding:clamp(1.25rem,2.5vw,1.75rem)}.party-food-welcome>p:last-child{max-width:60rem;margin-top:.625rem;font-size:clamp(1rem,1.5vw,1.125rem);font-weight:600}.parties-page .party-packages-section{padding-block:clamp(2rem,4vw,4rem)}.party-stage-heading{margin-bottom:1.5rem}.party-stage-heading>.section-label{margin-bottom:.625rem;display:block}.party-stage-heading h2{font-size:clamp(1.875rem,3vw,2.75rem)}.party-experience-selector{min-inline-size:0}.party-experience-options{gap:1rem;display:grid}.party-experience-choice{border:1px solid var(--border-strong);border-radius:var(--card-radius);cursor:pointer;align-items:flex-start;gap:.875rem;min-width:0;padding:clamp(1.25rem,2.5vw,1.75rem);display:flex}.party-experience-choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.party-experience-choice:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:5px}.party-experience-choice input{width:1.25rem;height:1.25rem;accent-color:var(--accent);cursor:pointer;flex-shrink:0;margin-top:.375rem}.party-experience-choice-copy{gap:.5rem;min-width:0;display:grid}.party-experience-name{font-family:var(--font-heading), Georgia, serif;font-size:clamp(1.375rem,2vw,1.75rem);line-height:1.2}.party-experience-capacity{font-size:.9375rem;font-weight:700}.party-experience-description{max-width:31rem;font-size:.9375rem}.party-package-stage{margin-top:clamp(2.5rem,5vw,4rem)}.party-selected-experience{color:var(--muted);margin-top:.875rem}.parties-page .party-packages-grid{grid-template-columns:minmax(0,1fr);align-items:stretch}.parties-page .party-package{border-radius:calc(var(--card-radius) + .375rem);padding:clamp(1.5rem,3vw,2.5rem)}.party-package-header>.section-label{margin-bottom:.75rem}.parties-page .party-package-description{margin-top:.75rem}.party-package-pricing{margin-block:1.25rem}.party-package-price{font-family:var(--font-heading), Georgia, serif;font-size:clamp(2.75rem,4vw,3.5rem);line-height:1.1}.party-package-features{border-top:1px solid var(--border);gap:.875rem;padding-top:1.5rem;list-style:none;display:grid}.party-package-featured .party-package-features{border-color:var(--border-strong)}.party-package-features li{align-items:flex-start;gap:.75rem;display:flex}.party-feature-check{background:var(--sage);width:1.5rem;height:1.5rem;color:var(--foreground);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:.125rem;font-size:.875rem;font-weight:700;display:inline-flex}.party-package-extras{border:1px solid var(--border);border-radius:var(--card-radius);background:var(--surface);margin-top:1.5rem;padding:1.25rem}.party-package-extras h4{font-family:var(--font-body), sans-serif;letter-spacing:normal;font-size:.9375rem}.party-package-extras .party-package-features{border-top:0;gap:.75rem;padding-top:.875rem;font-size:.9375rem}.party-package-extras .party-feature-check{background:var(--accent-soft);color:var(--accent)}.party-package-booking-note{color:var(--muted);text-align:center;margin-top:.625rem;font-size:.875rem}.parties-page .party-faq-section{border-top:0}.parties-page .party-faq>p{padding-top:.5rem}@container (min-width:48rem){.party-hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);grid-template-areas:"copy photo""food food";gap:1.5rem 2.5rem}.party-experience-options,.parties-page .party-packages-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parties-page .party-package{grid-template-rows:subgrid;grid-row:span 4;row-gap:0;display:grid}.party-package-header,.party-package>.party-package-features{align-self:start}.party-package-action{grid-row:4}@media (prefers-reduced-motion:no-preference){.party-packages-grid[data-party-changed]>.offer-card{animation:.18s ease-out backwards party-package-change}}}@keyframes party-package-change{0%{opacity:.6}to{opacity:1}}
