/* Williams Woak — storefront v2 · editorial luxury.
   Palette per Studio Narpavi guidelines: Burgundy Wine leads, Silk Ivory is the base, Velvet Night for depth,
   Honey Gold for hairlines only. Flavour panels use each label's own colour block.
   Type: Instrument Serif (display) + Montserrat (text). 8-pt spacing scale, 1.4+ body line-height. */
:root{
  --ivory:#FEF7EC; --burg:#781024; --night:#0E0E0E; --feather:#A4978C; --gold:#9E7842; --ember:#CAA198;
  --alt:#F3E8D6; --ink:#0E0E0E; --ink60:rgba(14,14,14,.66); --line:rgba(14,14,14,.14); --lineL:rgba(254,247,236,.22);
  --serif:'Instrument Serif',Georgia,serif; --sans:'Montserrat',system-ui,sans-serif;
  --ease:cubic-bezier(.22,.8,.22,1); --wrap:1280px; --pad:clamp(20px,4.4vw,64px);
  --s1:8px;--s2:16px;--s3:24px;--s4:32px;--s5:48px;--s6:64px;--s7:96px;--s8:144px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);font-size:16px;line-height:1.7;color:var(--ink);background:var(--ivory);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,svg,video{display:block;max-width:100%}
a{color:inherit}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit;touch-action:manipulation}
:focus-visible{outline:2px solid var(--burg);outline-offset:3px}
.hdr.over-dark:not(.is-solid) :focus-visible,.night :focus-visible,.dark :focus-visible,.hero :focus-visible,.pg-h :focus-visible,.quiz :focus-visible,.ftr :focus-visible,.cine :focus-visible,.explorer :focus-visible{outline-color:var(--ivory)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:var(--ivory);color:var(--burg);padding:8px 14px;z-index:200}.skip:focus{left:8px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)} .wrap-n{max-width:980px;margin:0 auto;padding:0 var(--pad)} .narrow{max-width:820px}

/* type */
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.02;letter-spacing:-.01em}
em{font-style:italic;color:var(--burg)}
.hero em,.pg-h em,.night em,.dark em,.quiz .h2 em,.cine em,.explorer em,.on-dark em{color:var(--ember)}
.pg-h.tint2 em{color:var(--burg)}
.serif{font-family:var(--serif)} .serif-i{font-family:var(--serif);font-style:italic}
.h1{font-size:clamp(3rem,7.4vw,6.6rem)} .h2{font-size:clamp(2.4rem,4.8vw,4.2rem);margin:var(--s1) 0 var(--s3)}
.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--burg);margin-bottom:var(--s2)}
.eyebrow.on-dark,.hero .eyebrow,.pg-h .eyebrow,.night .eyebrow,.dark .eyebrow,.quiz .eyebrow,.cine .eyebrow,.explorer .eyebrow{color:var(--ember)}
.pg-h.tint2 .eyebrow{color:var(--burg)}
.lede{font-size:clamp(1.02rem,1.4vw,1.18rem);max-width:54ch;margin-top:var(--s3)} .lede-s{max-width:44ch;margin-bottom:var(--s3)}
.note{font-size:.84rem;color:var(--ink60);margin-top:var(--s2)} .fine{font-size:.78rem;opacity:.75}
.night .note,.dark .note{color:rgba(254,247,236,.68)}
p+p{margin-top:var(--s2)}
.link{font-weight:600;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px;display:inline-block;transition:opacity .3s}.link:hover{opacity:.65}

/* buttons: rectangular, tracked caps */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s1);min-height:48px;padding:0 var(--s4);background:var(--burg);color:var(--ivory);font-weight:600;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border-radius:2px;transition:background .3s,color .3s,transform .35s var(--ease),box-shadow .3s;will-change:transform}
.btn:hover{background:#5a0c1b}
.btn--fill{background:var(--burg);color:var(--ivory)}
.btn--line,.btn--ghost{background:transparent;color:var(--burg);box-shadow:inset 0 0 0 1.5px var(--burg)}.btn--line:hover,.btn--ghost:hover{background:var(--burg);color:var(--ivory)}
.btn--fill-l,.btn--light{background:var(--ivory);color:var(--burg)}.btn--fill-l:hover,.btn--light:hover{background:#fff;color:var(--burg)}
.btn--line-l,.btn--ghost-l{background:transparent;color:var(--ivory);box-shadow:inset 0 0 0 1.5px rgba(254,247,236,.75)}.btn--line-l:hover,.btn--ghost-l:hover{background:var(--ivory);color:var(--burg)}
.btn--full{width:100%}
.btn:disabled{opacity:.45;pointer-events:none}

/* header: logo centred, nav split either side */
.hdr{position:fixed;inset:0 0 auto 0;z-index:90;color:var(--ivory);transition:background .4s,color .4s,box-shadow .4s,transform .45s var(--ease)}
.hdr-in{max-width:1500px;margin:0 auto;padding:var(--s2) var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--s3)}
.logo{display:block;width:clamp(170px,17vw,240px)} .logo img{width:100%;height:auto}
.logo-d{display:block}.logo-l{display:none}
.hdr.is-solid{background:rgba(254,247,236,.96);color:var(--burg);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line)}
.hdr.is-solid .logo-d{display:none}.hdr.is-solid .logo-l{display:block}
.hdr.hide{transform:translateY(-100%)}
.nav{display:flex;gap:var(--s4);align-items:center}
.nav a,.nav-r>a{font-size:.74rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;position:relative;padding:12px 0}
.nav a::after,.nav-r>a::after{content:"";position:absolute;left:0;right:100%;bottom:6px;height:1px;background:currentColor;transition:right .4s var(--ease)}
.nav a:hover::after,.nav-r>a:hover::after,.has-mega:hover>a::after{right:0}
.nav-r{display:flex;gap:var(--s3);align-items:center;justify-content:flex-end}
.only-m{display:none}
.has-mega{position:relative}
.mega{position:absolute;left:-24px;top:100%;width:min(520px,90vw);background:var(--ivory);color:var(--ink);box-shadow:0 30px 70px rgba(14,14,14,.22);padding:var(--s2);display:grid;grid-template-columns:1fr 1fr;gap:2px;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s var(--ease);border-top:2px solid var(--burg)}
.has-mega:hover .mega,.has-mega:focus-within .mega{opacity:1;visibility:visible;transform:none}
.mega a{display:flex;gap:var(--s2);align-items:center;padding:12px;font-family:var(--serif);font-size:1.3rem;line-height:1.1;letter-spacing:0;text-transform:none;font-weight:400;color:var(--ink)}
.mega a::after{display:none}.mega a:hover{background:var(--alt)}
.mega i{width:20px;height:20px;border-radius:50%;flex:none}
.mega small{display:block;font-family:var(--sans);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink60);margin-top:2px}
.cart-btn{position:relative;width:44px;height:44px;display:grid;place-items:center}
.cart-btn b{position:absolute;top:4px;right:2px;min-width:18px;height:18px;border-radius:9px;background:var(--ivory);color:var(--burg);font-size:.65rem;display:grid;place-items:center;font-weight:700;transform:scale(0);transition:transform .35s var(--ease)}
.hdr.is-solid .cart-btn b{background:var(--burg);color:var(--ivory)} .cart-btn b.has{transform:scale(1)}
.burger{display:none;width:44px;height:44px;position:relative}.burger span{position:absolute;left:10px;right:10px;height:1.5px;background:currentColor;transition:.35s var(--ease)}.burger span:first-child{top:17px}.burger span:last-child{top:26px}
.burger[aria-expanded=true] span:first-child{top:21px;transform:rotate(45deg)}.burger[aria-expanded=true] span:last-child{top:21px;transform:rotate(-45deg)}

/* sections */
.sec{padding:clamp(72px,10vw,144px) 0}
.alt,.tint{background:var(--alt)} .night{background:var(--night);color:var(--ivory)} .dark{background:var(--burg);color:var(--ivory)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,112px);align-items:center}
.sec-h{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--s2);margin-bottom:clamp(32px,5vw,64px);flex-wrap:wrap}
.pg-h{background:var(--burg);color:var(--ivory);padding:clamp(150px,18vw,220px) 0 clamp(56px,8vw,104px)}
.pg-h .h1{max-width:16ch}
.pg-h.tint2{background:var(--alt);color:var(--ink)} .pg-h.tint2 img{margin-bottom:var(--s3)}
.ink{color:inherit}
.grain{position:relative}
[data-r]{opacity:0;transform:translateY(32px);transition:opacity 1s var(--ease),transform 1s var(--ease)}[data-r].in{opacity:1;transform:none}

/* HERO: video only */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:var(--ivory);background:var(--night);overflow:hidden}
.hero-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,14,14,.6) 0%,rgba(14,14,14,.1) 22%,rgba(14,14,14,.42) 48%,rgba(14,14,14,.9) 100%)}
.hero-in{position:relative;padding-bottom:clamp(40px,7vw,88px);padding-top:140px;width:100%}
.hero-h{font-size:clamp(3.4rem,9.6vw,9rem);line-height:.94;margin:var(--s1) 0 var(--s4);text-shadow:0 2px 40px rgba(14,14,14,.45)}
.ln{display:block;overflow:hidden;padding-bottom:.1em}.ln>span{display:inline-block;transform:translateY(108%);animation:up 1.2s var(--ease) forwards}
.ln:nth-child(1)>span{animation-delay:.2s}.ln:nth-child(2)>span{animation-delay:.36s}
@keyframes up{to{transform:none}}
[data-hero]{opacity:0;transform:translateY(20px);animation:fade 1.1s var(--ease) forwards;animation-delay:.8s}@keyframes fade{to{opacity:1;transform:none}}
.hero-row{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--s4);flex-wrap:wrap;border-top:1px solid var(--lineL);padding-top:var(--s3)}
.hero-row .lede{margin:0;max-width:44ch}
.hero-cta{display:flex;gap:var(--s2);flex-wrap:wrap}
.scroll-cue{position:absolute;right:var(--pad);top:50%;width:1px;height:96px;background:linear-gradient(var(--ivory),transparent);transform-origin:top;animation:cue 2.4s ease-in-out infinite}.scroll-cue span{display:none}
@keyframes cue{0%{transform:scaleY(0)}50%{transform:scaleY(1)}100%{transform:scaleY(1);opacity:0}}

/* intro statement */
.intro{padding:clamp(88px,13vw,200px) 0;background:var(--ivory);text-align:center}
.statement{font-family:var(--serif);font-size:clamp(1.9rem,4vw,3.4rem);line-height:1.18;color:var(--ink);margin:var(--s3) 0 var(--s5);letter-spacing:-.005em}
.statement .w{opacity:.18;transition:opacity .5s}.statement .w.on{opacity:1}

/* range explorer */
.explorer{background:var(--night);color:var(--ivory);padding:clamp(72px,9vw,128px) 0}
.ex-wrap{max-width:1500px;margin:0 auto;padding:0 var(--pad);display:grid;grid-template-columns:minmax(320px,.8fr) 1.6fr;gap:clamp(32px,5vw,88px);align-items:stretch}
.ex-list{display:grid;margin:var(--s4) 0}
.ex-tab{display:grid;grid-template-columns:40px 1fr auto;gap:var(--s2);align-items:baseline;text-align:left;padding:14px 0;border-top:1px solid var(--lineL);color:rgba(254,247,236,.55);transition:color .3s,padding .4s var(--ease);min-height:56px}
.ex-tab:last-child{border-bottom:1px solid var(--lineL)}
.ex-tab .n{font-size:.7rem;letter-spacing:.14em;font-weight:600}
.ex-tab .nm{font-family:var(--serif);font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1.1}
.ex-tab .sw{font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;opacity:0;transition:opacity .3s}
.ex-tab:hover,.ex-tab[aria-selected=true]{color:var(--ivory)} .ex-tab[aria-selected=true]{padding-left:var(--s2);box-shadow:inset 2px 0 0 var(--gold)} .ex-tab[aria-selected=true] .sw,.ex-tab:hover .sw{opacity:.8}
.ex-side .link{color:var(--ivory)}
.ex-stage{position:relative;min-height:clamp(520px,62vw,760px)}
.ex-panel{position:absolute;inset:0;background:var(--p);color:var(--fg);display:grid;grid-template-columns:1fr 1fr;opacity:0;visibility:hidden;transition:opacity .6s var(--ease)}
.ex-panel.on{opacity:1;visibility:visible}
.ex-art{position:relative;min-height:100%}
.ex-art::before{content:"";position:absolute;inset:auto 10% 0 10%;height:62%;background:radial-gradient(ellipse at 50% 100%,rgba(0,0,0,.28),transparent 70%)}
.ex-art .bottle{position:absolute;left:50%;bottom:0;height:calc(100% - 40px);width:auto;aspect-ratio:11/30;transform:translate(-50%,18px);transition:transform .9s var(--ease);filter:drop-shadow(0 28px 30px rgba(0,0,0,.35))}
.ex-panel.on .ex-art .bottle{transform:translate(-50%,0)}
.ex-info{padding:clamp(24px,3.4vw,56px);display:flex;flex-direction:column;justify-content:center;gap:var(--s2)}
.ex-info .eyebrow{color:inherit;opacity:.78;margin:0} .ex-info h3{font-size:clamp(2.6rem,4.6vw,4.6rem)}
.ex-line{font-size:1.02rem;max-width:34ch}
.ex-facts{list-style:none;display:flex;gap:var(--s3);flex-wrap:wrap;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;padding:var(--s2) 0;border-block:1px solid color-mix(in srgb,var(--fg) 30%,transparent)}
.ex-facts b{display:block;font-family:var(--serif);font-size:1.7rem;font-weight:400;letter-spacing:0;line-height:1.1}
.ex-cta{display:flex;gap:var(--s2);align-items:center;flex-wrap:wrap}
.ex-cta .price{font-family:var(--serif);font-size:2rem;font-weight:400;margin-right:var(--s1)}
.ex-panel .btn--fill{background:var(--fg);color:var(--p)} .ex-panel .btn--line{color:var(--fg);box-shadow:inset 0 0 0 1.5px var(--fg)} .ex-panel .btn--line:hover{background:var(--fg);color:var(--p)} .ex-panel .btn--fill:hover{opacity:.88}

/* marquee */
.marq{overflow:hidden;background:var(--burg);color:var(--ivory);padding:var(--s3) 0}
.marq-t{display:flex;gap:var(--s5);width:max-content;animation:marq 42s linear infinite;font-family:var(--serif);font-size:clamp(2rem,3.6vw,3.2rem);align-items:center;white-space:nowrap}
.marq-t i{font-style:normal;color:var(--ember)} .marq:hover .marq-t{animation-play-state:paused}
@keyframes marq{to{transform:translateX(-50%)}}

/* cinema */
.cine{background:var(--night);color:var(--ivory)}
.cine-in{display:grid;grid-template-columns:.8fr 1.4fr;gap:clamp(32px,6vw,96px);align-items:center}

/* rows */
.rows{border-top:1px solid var(--line)}
.rows .row{display:grid;grid-template-columns:80px minmax(200px,340px) 1fr auto;gap:var(--s4);align-items:center;padding:var(--s4) 0;border-bottom:1px solid var(--line);text-decoration:none;transition:padding .5s var(--ease),background .4s}
.rows .row:hover{padding-left:var(--s3);background:var(--alt)}
.row .n{font-family:var(--serif);color:var(--gold);font-size:1.3rem}.rows .row h3{font-size:clamp(2.6rem,5vw,4.6rem);color:var(--burg)}.rows .row p{color:var(--ink60);max-width:46ch}.row .go{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--burg);white-space:nowrap}

/* quiz */
.quiz{background:var(--burg);color:var(--ivory)}
.quiz-card{background:var(--ivory);color:var(--ink);padding:clamp(28px,4vw,56px);min-height:380px;position:relative;box-shadow:0 40px 90px rgba(0,0,0,.35)}
.q-prog{height:2px;background:var(--line);margin-bottom:var(--s4)}.q-prog i{display:block;height:100%;width:0;background:var(--burg);transition:width .6s var(--ease)}
.q-body{animation:fade .6s var(--ease)}.q-body .eyebrow{color:var(--burg)}.q-body h3{font-size:2.4rem;margin-bottom:var(--s3)}.q-opts{display:grid;gap:var(--s1)}
.q-opts button{text-align:left;padding:0 var(--s3);min-height:56px;box-shadow:inset 0 0 0 1px var(--line);font-weight:600;transition:.3s var(--ease);display:flex;justify-content:space-between;align-items:center}
.q-opts button:hover{background:var(--burg);color:var(--ivory);box-shadow:none;padding-left:var(--s4)}.q-opts button::after{content:"→"}
.q-res{display:grid;grid-template-columns:110px 1fr;gap:var(--s3);align-items:center}.q-res .bottle{width:100%;height:auto;aspect-ratio:11/30;filter:drop-shadow(0 12px 14px rgba(14,14,14,.25))}.q-res h3{margin-bottom:var(--s1)}
.q-res .row2{display:flex;gap:var(--s1);flex-wrap:wrap;margin-top:var(--s2)}.q-redo{font-size:.78rem;text-decoration:underline;margin-top:var(--s2);display:inline-block}
.quiz-card .btn{background:var(--burg);color:var(--ivory)} .quiz-card .btn--ghost{background:transparent;color:var(--burg)} .quiz-card .btn--ghost:hover{background:var(--burg);color:var(--ivory)}

/* event */
.event{background:var(--ivory)}
.ev-in{display:grid;grid-template-columns:auto 1fr;gap:clamp(32px,7vw,120px);align-items:center}
.ev-num{display:flex;align-items:flex-end;gap:var(--s2);color:var(--burg)}.ev-num b{font-family:var(--serif);font-weight:400;font-size:clamp(9rem,20vw,19rem);line-height:.78;letter-spacing:-.04em}.ev-num span{font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700;padding-bottom:var(--s2);line-height:1.5}
.ticks{list-style:none;margin:var(--s3) 0;display:grid;gap:var(--s1)}.ticks li{padding-left:var(--s4);position:relative;font-weight:500}.ticks li::before{content:"";position:absolute;left:0;top:.8em;width:20px;height:1px;background:var(--gold)}

/* videos */
.vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s3)}
.vid{position:relative;background:var(--night);aspect-ratio:16/9;overflow:hidden}
.vid figcaption{position:absolute;left:0;right:0;bottom:0;padding:48px var(--s2) var(--s2);background:linear-gradient(transparent,rgba(14,14,14,.85));color:var(--ivory);font-size:.8rem;font-weight:600;pointer-events:none;line-height:1.4}
.vid-btn{position:absolute;inset:0;width:100%}.vid img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease),opacity .4s}.vid:hover img{transform:scale(1.05);opacity:.85}
.play{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:var(--ivory);color:var(--burg);display:grid;place-items:center;transition:transform .4s var(--ease)}.vid:hover .play{transform:scale(1.12)}.play svg{margin-left:3px}
.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ig{display:flex;justify-content:space-between;align-items:center;gap:var(--s3);margin-top:var(--s5);padding:var(--s4) 0;border-block:1px solid var(--line);flex-wrap:wrap}.ig h3{font-size:2.4rem}.ig2{display:flex;justify-content:space-between;align-items:center;gap:var(--s5);flex-wrap:wrap}
.journal{background:var(--ivory)}

/* faq */
.faq-s{align-items:start}
.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:var(--s3) 0;font-weight:600;display:flex;justify-content:space-between;gap:var(--s2);align-items:center;min-height:56px}.faq summary::-webkit-details-marker{display:none}
.faq summary i{flex:none;width:16px;height:16px;position:relative}.faq summary i::before,.faq summary i::after{content:"";position:absolute;left:0;right:0;top:7px;height:1.5px;background:var(--burg);transition:.35s var(--ease)}.faq summary i::after{transform:rotate(90deg)}
.faq details[open] summary i::after{transform:rotate(0)}.faq details p{padding:0 var(--s5) var(--s3) 0;color:var(--ink60);animation:fade .5s var(--ease)}

/* cards */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.4vw,32px)}.g4{grid-template-columns:repeat(4,1fr)}.grid>*{min-width:0}
.pc{display:flex;flex-direction:column}.pc.out{display:none}
.pc-art{position:relative;display:block;aspect-ratio:4/5;background:var(--p);color:var(--fg);overflow:hidden;text-decoration:none}
.pc-art::before{content:"";position:absolute;inset:auto 0 0 0;height:48%;background:linear-gradient(transparent,rgba(0,0,0,.2))}
.pc-art .bottle{position:absolute;left:0;right:0;bottom:-2%;margin:0 auto;height:88%;width:auto;aspect-ratio:11/30;transition:transform .8s var(--ease);filter:drop-shadow(0 20px 22px rgba(0,0,0,.32))}
.pc:hover .pc-art .bottle{transform:translateY(-14px) scale(1.03)}
.tag{position:absolute;left:var(--s2);top:var(--s2);z-index:3;background:var(--ivory);color:var(--burg);font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:6px 12px}
.pc-b{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s2);padding:var(--s2) 0 0}
.pc-b h3{font-size:2rem}.pc-b h3 a{text-decoration:none}.pc-b p{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink60);margin-top:4px;font-weight:600}
.pc-r{display:flex;flex-direction:column;align-items:flex-end;gap:var(--s1)}
.price{font-weight:600;font-size:1rem}.price s{font-weight:400;opacity:.5;font-size:.84em;margin-left:4px}.price.lg{font-family:var(--serif);font-size:2.8rem;font-weight:400}
.add{font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--burg);min-height:36px;padding:0 var(--s2);box-shadow:inset 0 0 0 1.5px var(--burg);transition:.3s;white-space:nowrap}.add:hover,.add.done{background:var(--burg);color:var(--ivory)}
.pc-art.photo{aspect-ratio:3/4;background:var(--alt)}.pc-art.photo::before{display:none}.pc-art.photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.pc:hover .pc-art.photo img{transform:scale(1.05)}
.filters{display:flex;gap:var(--s1);flex-wrap:wrap;margin-bottom:var(--s5)}.filters button{min-height:44px;padding:0 var(--s3);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;box-shadow:inset 0 0 0 1px var(--line);transition:.3s}.filters button.on,.filters button:hover{background:var(--burg);color:var(--ivory);box-shadow:none}
.tbl-w{overflow-x:auto}.tbl{width:100%;border-collapse:collapse;font-size:.94rem}.tbl th{text-align:left;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;padding:var(--s2);border-bottom:1.5px solid var(--burg);color:var(--burg)}.tbl td{padding:var(--s2);border-bottom:1px solid var(--line)}.tbl a{font-family:var(--serif);font-size:1.5rem;text-decoration:none;color:var(--burg)}.tbl tr:hover td{background:rgba(255,255,255,.5)}

/* story */
.story-img{position:relative}
.arch{aspect-ratio:4/5;border-radius:260px 260px 0 0;background:radial-gradient(ellipse 70% 50% at 50% 62%,rgba(202,161,152,.3),transparent 70%),var(--burg);display:flex;align-items:flex-end;justify-content:center;gap:2%;padding:0 6% 7%;overflow:hidden;position:relative}
.arch::after{content:"";position:absolute;inset:12px;border-radius:250px 250px 0 0;box-shadow:inset 0 0 0 1px rgba(254,247,236,.4);pointer-events:none}
.ab{width:30%;filter:drop-shadow(0 22px 26px rgba(0,0,0,.4))}.ab .bottle{width:100%;height:auto;aspect-ratio:11/30}.ab1{width:38%}
.stamp{position:absolute;right:-12px;bottom:32px;width:100px;height:100px;border-radius:50%;background:var(--ivory);display:grid;place-items:center;box-shadow:0 12px 30px rgba(14,14,14,.2)}.stamp img{width:58px}
.vals{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5);margin-top:var(--s4)}.vals>div{border-top:1px solid var(--lineL);padding-top:var(--s2)}.vals h3{font-size:2.4rem;margin:var(--s1) 0}.vals .n{font-family:var(--serif);color:var(--ember)}.vals p{opacity:.88}
.big{font-size:1.8rem;line-height:1.2;color:var(--burg);margin:var(--s3) 0}
.round{width:100%;aspect-ratio:1;object-fit:cover}

/* flavour page */
.fl-hero{display:grid;grid-template-columns:1.02fr 1fr;min-height:100svh;background:var(--ivory)}
.fl-panel{position:sticky;top:0;height:100svh;background:var(--p);color:var(--fg);display:grid;place-items:end center;overflow:hidden}
.fl-panel::before{content:"";position:absolute;inset:auto 0 0 0;height:50%;background:linear-gradient(transparent,rgba(0,0,0,.24))}
.fl-b{position:absolute;left:50%;bottom:6vh;transform:translateX(-50%);width:auto;height:80%;aspect-ratio:11/30;filter:drop-shadow(0 40px 40px rgba(0,0,0,.35));animation:bob 7s ease-in-out infinite alternate}.fl-b .bottle{height:100%;width:auto;aspect-ratio:11/30}
@keyframes bob{from{translate:0 0}to{translate:0 -12px}}
.fl-no{position:absolute;left:var(--s4);bottom:var(--s3);font-family:var(--serif);font-size:clamp(6rem,14vw,13rem);line-height:.8;opacity:.18}
.fl-buy{display:flex;align-items:center}.fl-buy-in{padding:clamp(110px,12vw,150px) var(--pad) var(--s7);width:100%;max-width:680px}
.fl-h{font-size:clamp(3.4rem,7vw,6.4rem);line-height:.96;margin:0 0 var(--s2);color:var(--burg)}
.crumb{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--ink60);margin-bottom:var(--s3)}.crumb a{text-decoration:none;border-bottom:1px solid var(--line)}
.chips{display:flex;gap:var(--s1);flex-wrap:wrap;margin-top:var(--s3)}.chips span{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:8px 14px;box-shadow:inset 0 0 0 1px var(--line)}
.buy{margin-top:var(--s4);padding:var(--s4) 0;border-block:1px solid var(--line);display:grid;gap:var(--s3)}
.buy-p small{display:block;font-size:.72rem;color:var(--ink60);margin-top:2px}.buy-r{display:flex;gap:var(--s2);align-items:center;flex-wrap:wrap}.buy-r .btn{flex:1;min-width:200px}
.buy-l{display:flex;gap:var(--s4);flex-wrap:wrap;font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.buy-l a{text-decoration:none;border-bottom:1px solid var(--burg);padding-bottom:3px;color:var(--burg)}.buy-l span{color:var(--ink60)}
.qty{display:inline-flex;align-items:center;box-shadow:inset 0 0 0 1px var(--line);height:48px}.qty button{width:44px;height:100%;font-size:1.2rem}.qty output{min-width:32px;text-align:center;font-weight:700}
.specs{display:grid;grid-template-columns:1fr 1fr;margin-top:var(--s4)}.specs div{padding:var(--s2) 0;border-bottom:1px solid var(--line)}.specs dt{font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--burg);font-weight:700}.specs dd{font-family:var(--serif);font-size:1.5rem;line-height:1.2}
.why{list-style:none;margin-top:var(--s4);display:grid}.why li{padding:var(--s2) 0 var(--s2) var(--s5);border-top:1px solid var(--line);font-weight:600;position:relative}.why li:last-child{border-bottom:1px solid var(--line)}.why li::before{content:"";position:absolute;left:0;top:50%;width:24px;height:1px;background:var(--gold)}
.notes{background:var(--alt);padding:clamp(28px,4vw,56px)}.nrow{display:grid;grid-template-columns:100px 1fr;gap:var(--s2);padding:var(--s2) 0;border-bottom:1px solid var(--line);align-items:baseline}.nrow:last-of-type{border:0}.nrow span{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--burg)}.nrow p{font-size:1.6rem;line-height:1.2;margin:0}
.pair{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5)}.pcard{border-top:1px solid var(--lineL);padding-top:var(--s3)}.pcard h3{font-size:2.2rem;color:var(--ember);margin-bottom:var(--s2)}.pcard ul{list-style:none}.pcard li{padding:var(--s1) 0;border-bottom:1px solid var(--lineL)}.pcard li:last-child{border:0}.pcard p b{display:block;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ember);margin-top:var(--s1)}
.nt{width:100%;border-collapse:collapse;margin:var(--s2) 0;font-size:.94rem}.nt caption{text-align:left;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;padding-bottom:var(--s1);color:var(--burg)}.nt th{text-align:left;font-weight:500;padding:12px 0;border-bottom:1px solid var(--line)}.nt td{text-align:right;font-weight:600;border-bottom:1px solid var(--line)}
.sticky-buy{position:fixed;left:0;right:0;bottom:0;z-index:80;background:var(--ivory);box-shadow:0 -1px 0 var(--line),0 -16px 40px rgba(14,14,14,.1);padding:12px var(--pad);display:flex;justify-content:space-between;align-items:center;gap:var(--s2);transform:translateY(110%);transition:transform .5s var(--ease)}.sticky-buy.show{transform:none}.sticky-buy b{font-family:var(--serif);font-size:1.6rem;font-weight:400;margin-right:var(--s2);color:var(--burg)}

/* events + booking */
.ev-card{display:grid;grid-template-columns:140px 1.2fr 1fr;gap:clamp(24px,3.4vw,56px);background:var(--burg);color:var(--ivory);padding:clamp(28px,4vw,56px);align-items:center}
.ev-date{text-align:center;border-right:1px solid var(--lineL);padding-right:var(--s4)}.ev-date b{font-family:var(--serif);font-size:6rem;font-weight:400;line-height:.9;display:block}.ev-date span{font-size:1.1rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700}.ev-date small{display:block;opacity:.7}
.ev-info h3{font-size:3rem;margin-bottom:var(--s2)}.ev-info .eyebrow{color:var(--ember)}.ev-info .ticks li::before{background:var(--ember)}
.ev-meta{display:flex;gap:var(--s1);flex-wrap:wrap;margin:var(--s3) 0}.ev-meta span{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:8px 14px;box-shadow:inset 0 0 0 1px var(--lineL)}
.ev-info .btn{background:var(--ivory);color:var(--burg)}
.soon{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4);margin-top:var(--s4)}.soon-c{padding:var(--s4) 0;border-top:1px solid var(--line)}.soon-c h3{font-size:2.2rem;margin:var(--s2) 0 var(--s1)}.soon-c p{color:var(--ink60);margin-bottom:var(--s2)}.pill{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:6px 12px;background:var(--alt);color:var(--burg)}
.book{background:var(--ivory);padding:clamp(24px,3.4vw,48px);box-shadow:0 30px 80px rgba(14,14,14,.1)}
.steps{list-style:none;display:flex;gap:6px;margin-bottom:var(--s5);counter-reset:s}.steps li{flex:1;counter-increment:s;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink60);padding-top:12px;border-top:2px solid var(--line);transition:.4s}.steps li::before{content:counter(s) ". "}.steps li.on{color:var(--burg);border-color:var(--burg)}.steps li.done{border-color:var(--gold);color:var(--ink)}
.book-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:clamp(24px,4vw,64px)}.bstep{display:none}.bstep.on{display:block;animation:fade .6s var(--ease)}.bstep h3{font-size:2.4rem;margin-bottom:var(--s3)}
.sess{display:grid;gap:var(--s2)}.sc{display:grid;grid-template-columns:1fr auto;gap:var(--s2);align-items:center;text-align:left;padding:var(--s3);box-shadow:inset 0 0 0 1px var(--line);transition:.3s var(--ease);width:100%;min-height:72px}.sc:hover{box-shadow:inset 0 0 0 1.5px var(--burg);transform:translateX(6px)}.sc b{font-family:var(--serif);font-size:2rem;font-weight:400;display:block;line-height:1.1}.sc small{font-size:.78rem;color:var(--ink60)}.sc .left{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--burg);text-align:right}.sc.full{opacity:.45;pointer-events:none}.sc.sel{background:var(--burg);color:var(--ivory);box-shadow:none}.sc.sel small,.sc.sel .left{color:var(--ember)}
.qrow{display:flex;align-items:center;gap:var(--s2);margin-bottom:var(--s3);flex-wrap:wrap}.qrow>span{font-weight:600}.qrow small{color:var(--ink60)}
form label{display:block;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:var(--s3)}form input:not([type=checkbox]),form textarea{display:block;width:100%;margin-top:8px;padding:14px 16px;min-height:48px;border:1px solid var(--line);background:#fff;font:inherit;font-size:1rem;text-transform:none;letter-spacing:0;font-weight:400;border-radius:0}form input:focus,form textarea:focus{outline:none;border-color:var(--burg);box-shadow:0 0 0 1px var(--burg)}
label.chk{display:flex;gap:12px;align-items:flex-start;text-transform:none;letter-spacing:0;font-weight:500;font-size:.88rem}.chk input{margin-top:4px;accent-color:var(--burg);width:18px;height:18px}
.err{color:var(--burg);font-weight:600;font-size:.86rem;min-height:1.4em}.brow{display:flex;gap:var(--s1);margin-top:var(--s2);flex-wrap:wrap}
.book-side{background:var(--alt);padding:var(--s4);align-self:start;position:sticky;top:104px}.book-side h4{font-family:var(--serif);font-weight:400;font-size:2rem;line-height:1.1}.book-side>p{color:var(--ink60);font-size:.84rem;margin-bottom:var(--s2)}.book-side dt{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--burg);margin-top:var(--s2)}.book-side dd{font-size:.92rem}
.tot{display:flex;justify-content:space-between;align-items:baseline;margin-top:var(--s3);padding-top:var(--s2);border-top:1px solid var(--gold)}.tot b{font-family:var(--serif);font-size:2.2rem;font-weight:400}
.rv{margin-bottom:var(--s2)}.rv .row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}.pay{margin-top:var(--s3);padding:var(--s2) var(--s3);background:var(--alt)}.pay .eyebrow{margin-bottom:4px}
.ticket{position:relative;background:var(--burg);color:var(--ivory);padding:var(--s4);display:grid;grid-template-columns:1fr auto;gap:var(--s4);overflow:hidden;margin-bottom:var(--s3)}.ticket::before,.ticket::after{content:"";position:absolute;left:62%;width:26px;height:26px;border-radius:50%;background:var(--ivory)}.ticket::before{top:-13px}.ticket::after{bottom:-13px}
.ticket h4{font-family:var(--serif);font-weight:400;font-size:2.4rem;line-height:1}.ticket small{display:block;font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ember);font-weight:700;margin-top:var(--s2)}.ticket .ref{border-left:1px dashed rgba(254,247,236,.5);padding-left:var(--s4);display:grid;place-content:center;text-align:center}.ticket .ref b{font-family:var(--serif);font-size:2.6rem;font-weight:400}.ticket img{width:150px;margin-bottom:var(--s2)}
.wrap-r{flex-wrap:wrap}

/* misc pages */
.doc h2{font-family:var(--serif);font-weight:400;font-size:2.2rem;margin:var(--s5) 0 var(--s1);color:var(--burg)}.doc ul{padding-left:var(--s3)}.doc li{margin:8px 0;color:var(--ink60)}
.paper{background:var(--ivory)}
.cinfo h3{font-size:2.2rem;margin:var(--s4) 0 var(--s1)}.cinfo h3:first-child{margin-top:0}.cinfo a{text-decoration:none;border-bottom:1px solid var(--gold)}
.cform{background:var(--alt);padding:var(--s4)}
.gal{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:var(--s2)}.gal img{width:100%;height:100%;object-fit:cover;max-height:620px}

/* williams wine band + footer */
.ww-band{background:var(--alt);padding:clamp(64px,9vw,128px) 0}
.ww-band-in{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(32px,6vw,96px);align-items:center}.ww-band-copy img{margin-bottom:var(--s3)}.ww-band h2{font-size:clamp(2.2rem,4vw,3.4rem);margin-bottom:var(--s2);color:var(--ink)}.ww-band p{max-width:46ch;margin-bottom:var(--s3);color:var(--ink60)}.ww-band .eyebrow{color:var(--burg)}
.ww-band .btn--ghost-l{color:var(--burg);box-shadow:inset 0 0 0 1.5px var(--burg)}.ww-band .btn--ghost-l:hover{background:var(--burg);color:var(--ivory)}
.ww-band-imgs{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s2)}.wb{display:block;aspect-ratio:3/5;overflow:hidden}.wb img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.wb:hover img{transform:scale(1.08)}.wb1,.wb3{transform:translateY(28px)}
.ftr{background:var(--burg);color:var(--ivory);padding:var(--s7) 0 var(--s3)}
.ftr-top{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:var(--s4)}.ftr h3{font-family:var(--sans);font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ember);margin-bottom:var(--s2)}
.ftr-top a{display:block;text-decoration:none;font-size:.9rem;padding:4px 0;opacity:.92}.ftr-top a:hover{opacity:1;text-decoration:underline}
.ftr-brand img{width:240px;margin-bottom:var(--s2)}.ftr-brand .serif-i{font-size:1.6rem;color:var(--ember)}.ftr-brand .fine{max-width:34ch;margin-top:var(--s1)}.soc{display:flex;gap:var(--s3);margin-top:var(--s2)}
.ftr-bot{display:flex;justify-content:space-between;gap:var(--s2);flex-wrap:wrap;margin-top:var(--s7);padding-top:var(--s3);border-top:1px solid var(--lineL)}
.ftr .fine{opacity:.8}#visits{display:inline-block;animation:fade 1s var(--ease)}
.arth a{color:var(--ivory);text-decoration:none}
.dba-flip{display:inline-block;position:relative;height:1.2em;overflow:hidden;vertical-align:text-bottom;font-weight:600}
.dba-track{display:block;animation:dba-cycle 21s cubic-bezier(.76,0,.24,1) infinite}
.dba-face{display:block;height:1.2em;line-height:1.2em}
.dba-dot,.dba-heart{color:#c2410c}
@keyframes dba-cycle{0%,14.2%{transform:translateY(0)}16.7%,30.9%{transform:translateY(-1.2em)}33.3%,47.5%{transform:translateY(-2.4em)}50%,64.2%{transform:translateY(-3.6em)}66.7%,80.9%{transform:translateY(-4.8em)}83.3%,97.5%{transform:translateY(-6em)}100%{transform:translateY(-7.2em)}}

/* drawer + modal */
.drawer,.modal{position:fixed;inset:0;z-index:120;visibility:hidden}.drawer.open,.modal.open{visibility:visible}
.drawer-bg,.modal-bg{position:absolute;inset:0;background:rgba(14,14,14,.55);opacity:0;transition:opacity .4s}.open .drawer-bg,.open .modal-bg{opacity:1}
.drawer-p{position:absolute;right:0;top:0;bottom:0;width:min(460px,100%);background:var(--ivory);color:var(--ink);transform:translateX(100%);transition:transform .5s var(--ease);display:flex;flex-direction:column}.drawer.open .drawer-p{transform:none}
.drawer-h{display:flex;justify-content:space-between;align-items:center;padding:var(--s3) var(--s4);border-bottom:1px solid var(--line)}.drawer-h h2{font-size:2.2rem}.drawer-h button,.modal-x{font-size:2rem;line-height:1;width:44px;height:44px}
.drawer-b{flex:1;overflow:auto;padding:var(--s1) var(--s4)}.drawer-f{padding:var(--s3) var(--s4);border-top:1px solid var(--line);display:grid;gap:var(--s2)}
.ci{display:grid;grid-template-columns:48px 1fr auto;gap:var(--s2);padding:var(--s2) 0;border-bottom:1px solid var(--line);align-items:center}.ci i{width:48px;height:48px;border-radius:50%}.ci b{font-family:var(--serif);font-size:1.5rem;font-weight:400;display:block;line-height:1.1}.ci small{color:var(--ink60)}.ci .qty{height:36px;margin-top:6px}.ci .qty button{width:34px}.ci .rm{font-size:.7rem;text-decoration:underline;color:var(--ink60);display:block;text-align:right;margin-top:6px;min-height:28px}
.empty{padding:var(--s7) 0;text-align:center;color:var(--ink60)}.empty a{color:var(--burg);font-weight:600}
.modal-p{position:absolute;left:50%;top:50%;transform:translate(-50%,-46%);width:min(560px,92vw);max-height:90vh;overflow:auto;background:var(--ivory);color:var(--ink);padding:var(--s5);opacity:0;transition:.45s var(--ease)}.modal.open .modal-p{opacity:1;transform:translate(-50%,-50%)}.modal-x{position:absolute;right:12px;top:10px}.modal h2{font-size:2.6rem;margin-bottom:var(--s2)}.modal .eyebrow{color:var(--burg)}
#coList .row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}.co-actions{display:flex;gap:var(--s1);flex-wrap:wrap;margin-top:var(--s3)}
.curtain{position:fixed;inset:0;z-index:300;background:var(--burg);transform:translateY(-100%);pointer-events:none}.curtain.in{animation:curIn .6s var(--ease) forwards;pointer-events:all}.curtain.out{animation:curOut .8s var(--ease) forwards}
@keyframes curIn{from{transform:translateY(100%)}to{transform:none}}@keyframes curOut{from{transform:none}to{transform:translateY(-100%)}}

/* responsive */
@media(max-width:1100px){
  .ex-art .bottle{height:calc(100% - 24px)}
  .ex-wrap{grid-template-columns:minmax(0,1fr)}.ex-wrap>*{min-width:0}.ex-list{display:flex;overflow-x:auto;gap:0;margin:var(--s3) calc(var(--pad) * -1);padding:0 var(--pad);scrollbar-width:none;border-block:1px solid var(--lineL)}.ex-list::-webkit-scrollbar{display:none}
  .ex-tab{flex:none;grid-template-columns:auto;border:0!important;padding:14px var(--s2)!important;box-shadow:none!important}.ex-tab .n,.ex-tab .sw{display:none}.ex-tab[aria-selected=true]{color:var(--ivory);box-shadow:inset 0 -2px 0 var(--gold)!important}
  .ex-stage{min-height:0}.ex-panel{position:relative;inset:auto;display:none;grid-template-columns:1fr;opacity:1;visibility:visible}.ex-panel.on{display:grid}.ex-art{height:min(70vw,460px);padding-top:var(--s3)}
  .cine-in,.ev-in{grid-template-columns:1fr}.ev-num b{font-size:clamp(7rem,28vw,12rem)}
  .rows .row{grid-template-columns:48px 1fr;row-gap:var(--s1)}.rows .row p,.rows .row .go{grid-column:2}
}
@media(max-width:1000px){
  .hdr-in{grid-template-columns:auto 1fr;gap:var(--s2)}.hdr-in .logo{order:0}.nav-l{order:3}.nav-r{order:2}
  .nav-l{position:fixed;inset:0;background:var(--burg);color:var(--ivory);flex-direction:column;justify-content:center;gap:var(--s2);transform:translateX(100%);transition:transform .55s var(--ease);z-index:-1}.nav-l.open{transform:none}
  .nav-l a{font-family:var(--serif);font-size:2.6rem;text-transform:none;letter-spacing:0;font-weight:400}.nav-l .only-m{display:block}.mega{display:none}.hide-m{display:none}
  body.menu .hdr{color:var(--ivory);background:transparent;box-shadow:none}body.menu .logo-d{display:block!important}body.menu .logo-l{display:none!important}
  .burger{display:block}.nav-r{justify-content:flex-end}
  .split,.ww-band-in,.book-grid,.fl-hero{grid-template-columns:1fr}
  .fl-panel{position:relative;height:78svh}.fl-buy-in{padding-top:var(--s5)}
  .grid,.g4,.vgrid,.pair,.soon,.vals{grid-template-columns:1fr 1fr}.ftr-top{grid-template-columns:1fr 1fr}.ftr-brand{grid-column:1/-1}
  .ev-card{grid-template-columns:1fr}.ev-date{border:0;border-bottom:1px solid var(--lineL);padding:0 0 var(--s2);text-align:left}.gal{grid-template-columns:1fr 1fr}.book-side{position:static}
  .scroll-cue{display:none}
}
@media(max-width:600px){
  .grid,.g4{grid-template-columns:1fr 1fr;gap:var(--s2)}.vgrid,.pair,.soon,.vals,.gal{grid-template-columns:1fr}
  .pc-b{flex-direction:column;gap:var(--s1)}.pc-r{flex-direction:row;align-items:center;justify-content:space-between;width:100%}.pc-b h3{font-size:1.5rem}.pc-b p{font-size:.62rem}
  .hero-h{font-size:clamp(3rem,15vw,4.4rem)}.q-res{grid-template-columns:1fr}.q-res .bottle{width:90px}.ticket{grid-template-columns:1fr}.ticket .ref{border:0;padding:0;text-align:left}.steps li{font-size:.58rem}
  .ww-band-imgs{grid-template-columns:repeat(2,1fr)}.specs{grid-template-columns:1fr 1fr}.ex-info h3{font-size:2.8rem}.hero-row{flex-direction:column;align-items:flex-start}
}
@media print{.hdr,.ftr,.ww-band,.drawer,.modal,.curtain,.book>*:not(.book-grid),.book-side,.brow,.steps{display:none!important}.bstep{display:none!important}.bstep[data-step="4"]{display:block!important}.book-grid{display:block}.ticket{background:#fff!important;color:#000!important;border:2px solid #000}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}[data-r],[data-hero]{opacity:1;transform:none}.ln>span{transform:none}.marq-t{animation:none}.hero-vid{display:none}.hero{background:var(--night) url('/assets/video/cumbum-poster.jpg') center/cover}.statement .w{opacity:1}}
.hero .eyebrow{color:var(--ivory);text-shadow:0 1px 18px rgba(14,14,14,.6)}

/* page-heading covers: still image + burgundy/night veil */
.pg-h{position:relative;isolation:isolate;overflow:hidden;background:var(--night)}
.pg-h::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--cover) center/cover no-repeat;transform:scale(1.06);animation:coverIn 2.4s var(--ease) forwards}
.pg-h::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(14,14,14,.62) 0%,rgba(14,14,14,.38) 40%,rgba(120,16,36,.78) 100%)}
@keyframes coverIn{to{transform:scale(1)}}
.pg-h .eyebrow,.pg-h em{color:var(--ember)} .pg-h .h1,.pg-h .lede{color:var(--ivory);text-shadow:0 2px 30px rgba(14,14,14,.4)}
.pg-h a{color:var(--ivory)}
.ww-logo-cover{filter:brightness(0) invert(1);opacity:.95}
@media(prefers-reduced-motion:reduce){.pg-h::before{animation:none;transform:none}}
.pg-h .eyebrow{color:var(--ivory);text-shadow:0 1px 16px rgba(14,14,14,.7)}
.pg-h::after{background:linear-gradient(180deg,rgba(14,14,14,.7) 0%,rgba(14,14,14,.45) 42%,rgba(120,16,36,.82) 100%)}
