/* Wyndridge Farm — site styles
   Type: Sorts Mill Goudy (headings, matches the wordmark) · Century Gothic (labels, nav, buttons) · Alegreya Sans (body)
   Palette: fox rust + scarf black + farmhouse cream, taken from the logo. */

@font-face{font-family:"Sorts Mill Goudy";src:url(../fonts/sorts-mill-goudy.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Sorts Mill Goudy";src:url(../fonts/sorts-mill-goudy-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Century Gothic";src:url(../fonts/century-gothic.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Century Gothic";src:url(../fonts/century-gothic-bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Alegreya Sans";src:url(../fonts/alegreya-sans.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Alegreya Sans";src:url(../fonts/alegreya-sans-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Alegreya Sans";src:url(../fonts/alegreya-sans-medium.woff2) format("woff2");font-weight:500;font-display:swap}

:root{color-scheme:light;
--bg:#F5EEE3;--bg2:#ECE1CF;--card:#FBF7F0;--ink:#24201B;--head:#1C1814;--muted:#665B50;--line:#DDCFBA;
--fox-ink:#A13F1E;--deep:#15120F;--band:#1F1A16;--cream:#F7EFE2;--fox:#B9482A;--fox-hi:#E3875C;--fox-soft:#F0B08C;
--on-fox:#FFF6EC;--sa:env(safe-area-inset-top,0px);
--hh:4.75rem;--pad:clamp(1.25rem,5vw,4.5rem);--max:82rem;--r:6px;
--display:"Sorts Mill Goudy","Goudy Old Style",Garamond,Georgia,serif;
--label:"Century Gothic",Futura,"Avenir Next","Trebuchet MS",sans-serif;
--body:"Alegreya Sans","Gill Sans","Segoe UI",system-ui,sans-serif;
--ease:cubic-bezier(.2,.7,.2,1);
--wheat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 170' fill='none' stroke='%23E3875C' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M60 166V18M60 22c-4-6-4-13 0-18c4 5 4 12 0 18M60 40c-7-2-13-8-14-17c8 2 13 8 14 17M60 40c7-2 13-8 14-17c-8 2-13 8-14 17M60 58c-7-2-13-8-14-17c8 2 13 8 14 17M60 58c7-2 13-8 14-17c-8 2-13 8-14 17M60 76c-7-2-13-8-14-17c8 2 13 8 14 17M60 76c7-2 13-8 14-17c-8 2-13 8-14 17M60 94c-7-2-13-8-14-17c8 2 13 8 14 17M60 94c7-2 13-8 14-17c-8 2-13 8-14 17M60 112c-7-2-13-8-14-17c8 2 13 8 14 17M60 112c7-2 13-8 14-17c-8 2-13 8-14 17M60 138c-12-4-24-2-36 10M60 128c12-6 26-6 38 4M46 23l-6-10M74 23l6-10M46 41l-7-9M74 41l7-9'/%3E%3C/svg%3E")}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1.2rem/1.6 var(--body);min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
main{flex:1 0 auto;width:100%;padding-top:calc(var(--hh) + var(--sa))}
html[data-route=home] main{padding-top:0}
img{max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.08;margin:0;color:var(--head);letter-spacing:.005em}
h2{font-size:clamp(2.2rem,4.8vw,3.6rem)}
p{margin:0 0 1rem}
[hidden]{display:none!important}
[id]{scroll-margin-top:calc(var(--hh) + var(--sa) + 1rem)}
:focus-visible{outline:2px solid var(--fox-hi);outline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:-1px;padding:0;border:0}
.skip{position:fixed;left:1rem;top:-4rem;z-index:99;background:var(--fox);color:var(--on-fox);padding:.6rem 1rem;border-radius:var(--r);font-family:var(--label);text-decoration:none}
.skip:focus{top:1rem}
.wrap{max-width:var(--max);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.eyebrow{display:inline-flex;align-items:center;gap:.8rem;margin:0 0 1rem;font-family:var(--label);font-size:.74rem;letter-spacing:.26em;text-transform:uppercase;color:var(--fox-ink)}
.eyebrow::before{content:"";width:2.2rem;height:1px;background:currentColor}
.center{text-align:center}
.center .eyebrow::after{content:"";width:2.2rem;height:1px;background:currentColor}
.lede{font-size:clamp(1.3rem,1.9vw,1.55rem);line-height:1.5;color:var(--muted);max-width:40rem}
.fine{font-size:1.05rem;color:var(--muted);font-style:italic}
.actions{display:flex;flex-wrap:wrap;gap:.9rem}
.center .actions,.actions.center{justify-content:center}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font:400 .8rem/1 var(--label);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding:1.1rem 1.75rem;border-radius:3px;border:1px solid var(--fox);background:var(--fox);color:var(--on-fox);cursor:pointer;transition:background .25s,color .25s,border-color .25s,transform .3s var(--ease),box-shadow .3s}
.btn:hover{background:#A33C20;border-color:#A33C20;transform:translateY(-2px);box-shadow:0 12px 26px -14px rgba(0,0,0,.55)}
.btn.ghost{background:transparent;color:inherit;border-color:currentColor}
.btn.ghost:hover{background:var(--cream);color:var(--deep);border-color:var(--cream)}
.btn.outline{background:transparent;color:var(--head);border-color:var(--head)}
.btn.outline:hover{background:var(--head);color:var(--bg)}
.btn.sm{padding:.8rem 1.2rem;font-size:.72rem}
.arrow-link{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--label);font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:var(--head);padding-bottom:.35rem;border-bottom:1px solid var(--fox);transition:gap .3s var(--ease),color .2s}
.arrow-link::after{content:"\2192";font-family:var(--body);font-size:1.05rem;line-height:0;letter-spacing:0}
.arrow-link:hover{gap:.9rem;color:var(--fox-ink)}

/* header */
.site-head{position:fixed;inset:0 0 auto;z-index:30;height:calc(var(--hh) + var(--sa));padding-top:var(--sa)!important;display:flex;align-items:center;gap:1.5rem;padding:0 var(--pad);color:var(--cream);background:rgba(21,18,15,.97);border-bottom:1px solid rgba(247,239,226,.1);transition:background .4s,border-color .4s,box-shadow .4s}
html[data-route=home] .site-head:not(.scrolled):not(.open){background:linear-gradient(rgba(12,10,8,.65),rgba(12,10,8,0));border-color:transparent}
.site-head.scrolled{box-shadow:0 10px 30px -20px rgba(0,0,0,.7)}
.logo{display:flex;align-items:center;gap:.7rem;line-height:0;margin-right:auto;text-decoration:none}
.logo .fox{height:2.9rem;width:auto}
.logo .wm{height:1.65rem;width:auto}
#sidemenu{display:flex;align-items:center;gap:clamp(1rem,2vw,2.1rem)}
#sidemenu a{font-family:var(--label);font-size:.76rem;letter-spacing:.17em;text-transform:uppercase;text-decoration:none;position:relative;padding:.45rem 0;white-space:nowrap}
#sidemenu a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--fox-hi);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
#sidemenu a:hover::after,#sidemenu a[aria-current=page]::after{transform:none}
#sidemenu .drawer-extra,.menu-toggle,.close,.scrim{display:none}
.head-cta{margin-left:.5rem}
@media(min-width:1101px){#sidemenu .drawer-only{display:none}}
/* blur lives on a pseudo-element: backdrop-filter on the header itself would trap the fixed mobile drawer inside the header's box */
.site-head::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}
.site-head.scrolled:not(.open),html:not([data-route=home]) .site-head:not(.open){background:rgba(21,18,15,.9)}
.site-head.scrolled:not(.open)::before,html:not([data-route=home]) .site-head:not(.open)::before{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
@media(max-width:1250px) and (min-width:1101px){#sidemenu a{font-size:.68rem;letter-spacing:.13em}.logo .wm{height:1.35rem}}
@media(max-width:1100px){
:root{--hh:4.1rem}
.logo .fox{height:2.5rem}.logo .wm{height:1.3rem}
.head-cta{margin-left:0;padding:.65rem .95rem;font-size:.68rem}
.menu-toggle{display:block;background:none;border:0;color:inherit;padding:.4rem;margin-right:-.4rem;cursor:pointer;line-height:0}
#sidemenu{position:fixed;top:0;right:0;bottom:0;width:min(21rem,86vw);z-index:40;flex-direction:column;align-items:stretch;gap:0;background:var(--deep);padding:calc(env(safe-area-inset-top,0px) + 1rem) 1.75rem 2rem;box-shadow:-10px 0 40px rgba(0,0,0,.45);transform:translateX(100%);visibility:hidden;transition:transform .35s var(--ease),visibility .35s;overflow-y:auto}
#sidemenu a{font-size:.95rem;padding:1.05rem 0;border-bottom:1px solid rgba(247,239,226,.12)}
#sidemenu a::after{display:none}
#sidemenu a[aria-current=page]{color:var(--fox-hi)}
#sidemenu .drawer-extra{display:block;margin-top:auto;padding-top:2rem;font-size:1.1rem;line-height:1.5;opacity:.9}
#sidemenu .drawer-extra a{border:0;font-family:var(--body);text-transform:none;font-size:1.1rem;letter-spacing:0;padding:0;text-decoration:underline;text-decoration-color:var(--fox-hi)}
.close{display:block;align-self:flex-end;background:none;border:0;color:inherit;font-size:2.2rem;line-height:1;padding:.2rem .5rem;margin-right:-.5rem;cursor:pointer}
.site-head.open #sidemenu{transform:none;visibility:visible}
#sidemenu::after{content:"";position:fixed;right:-3rem;bottom:-2rem;width:12rem;height:16rem;background:var(--wheat) no-repeat center/contain;opacity:.18;pointer-events:none;z-index:-1}
.scrim{display:block;position:fixed;inset:0;z-index:35;background:rgba(0,0,0,.55);opacity:0;pointer-events:none;transition:opacity .3s}
.site-head.open .scrim{opacity:1;pointer-events:auto}
}
@media(max-width:350px){.logo .wm{display:none}}

/* photo placeholders — swap each .ph for an <img> when photos are ready */
.ph{position:relative;display:block;overflow:hidden;background:radial-gradient(120% 90% at 70% 0%,#4A2E20 0%,rgba(74,46,32,0) 60%),linear-gradient(170deg,#2B231D 0%,#16120F 100%);color:var(--cream)}
.ph::before{content:"";position:absolute;inset:auto 0 0;height:46%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 120' preserveAspectRatio='none'%3E%3Cpath d='M0 60C60 30 120 40 190 62S320 40 400 52V120H0z' fill='%23E3875C' fill-opacity='.10'/%3E%3Cpath d='M0 84C80 62 150 70 230 88S350 74 400 80V120H0z' fill='%23000' fill-opacity='.28'/%3E%3C/svg%3E") no-repeat bottom/100% 100%}
.ph::after{content:attr(data-ph);position:absolute;left:1rem;top:1rem;font-family:var(--label);font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(247,239,226,.55);padding:.35rem .6rem;border:1px solid rgba(247,239,226,.22);border-radius:2px;max-width:calc(100% - 2rem)}
.ph.wheat{background-image:var(--wheat),radial-gradient(120% 90% at 70% 0%,#4A2E20 0%,rgba(74,46,32,0) 60%),linear-gradient(170deg,#2B231D 0%,#16120F 100%);background-repeat:no-repeat;background-size:auto 46%,auto,auto;background-position:center 42%,0 0,0 0}

/* hero */
.hero{position:relative;height:100vh;height:min(100svh,72vw);min-height:38rem;max-height:62rem;display:flex;align-items:flex-end;color:var(--cream);background:var(--deep);overflow:hidden}
.hero-media{position:absolute;inset:0}
.hero-media>svg,.hero-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:kb 14s ease-out both}
@keyframes kb{from{transform:scale(1.06)}to{transform:scale(1)}}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,10,8,.78) 0%,rgba(12,10,8,.35) 40%,rgba(12,10,8,0) 70%),linear-gradient(0deg,rgba(12,10,8,.92) 0%,rgba(12,10,8,.45) 32%,rgba(12,10,8,0) 55%)}
.hero-word{position:absolute;z-index:3;left:0;right:0;top:calc(var(--hh) + clamp(1rem,7vh,5rem));text-align:center;font-family:var(--display);font-size:clamp(3.6rem,13.5vw,13.5rem);line-height:.9;letter-spacing:.04em;margin:0;background:linear-gradient(100deg,#F7EFE2 10%,#F0B08C 48%,#C9562F 92%);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.93;pointer-events:none;user-select:none}
.hero-copy{position:relative;z-index:4;width:100%;padding-bottom:clamp(2.5rem,6vh,4.5rem)}
.hero-title{font-family:var(--display);font-size:clamp(2.4rem,4.4vw,4.1rem);line-height:1.04;max-width:16ch;margin:0 0 1.25rem;color:var(--cream);text-wrap:balance;text-shadow:0 2px 30px rgba(0,0,0,.35)}
.hero .eyebrow{color:var(--fox-soft)}
.hero .sub{font-size:clamp(1.25rem,1.7vw,1.5rem);max-width:32rem;margin:0 0 2rem;opacity:.92}
@media(max-width:760px){
.hero{height:auto;min-height:0;max-height:none;display:block;padding-top:calc(var(--hh) + var(--sa))}
.hero-media{position:relative;inset:auto;aspect-ratio:4/3}
.hero-media::after{background:linear-gradient(0deg,var(--deep) 0%,rgba(21,18,15,0) 40%)}
.hero-word{top:calc(var(--hh) + 1.5rem);font-size:clamp(2.6rem,14vw,5rem)}
.hero-copy{padding-top:.5rem;padding-bottom:2.75rem;text-align:center}
.hero .eyebrow{justify-content:center;font-size:.64rem;letter-spacing:.18em;gap:.6rem}
.hero .eyebrow::after{content:"";width:1.2rem;height:1px;background:currentColor}.hero .eyebrow::before{width:1.2rem}
.hero-title{margin-left:auto;margin-right:auto;font-size:clamp(2rem,9vw,2.6rem)}
.hero .sub{margin-left:auto;margin-right:auto}
.hero .actions{justify-content:center}
.hero .actions .btn{flex:1 1 12rem}
}

/* info bar */
.infobar{background:var(--deep);color:var(--cream);border-top:1px solid rgba(227,135,92,.35)}
.ib-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.ib{display:flex;align-items:center;gap:1rem;padding:1.6rem 1.5rem;text-decoration:none;color:inherit;font-size:1.2rem;line-height:1.3;transition:background .25s}
.ib+.ib{border-left:1px solid rgba(247,239,226,.1)}
a.ib:hover{background:rgba(255,255,255,.04)}
.ib svg{flex:none;color:var(--fox-hi)}
.ib span{display:flex;flex-direction:column}
.ib small{font-family:var(--label);font-size:.64rem;letter-spacing:.22em;text-transform:uppercase;opacity:.7;margin-bottom:.3rem}
.ib-status .dot{width:.8rem;height:.8rem;margin:0 .35rem;border-radius:50%;background:#B9B9A8;flex:none}
.ib-status.open .dot{background:#5FC98A;box-shadow:0 0 0 5px rgba(95,201,138,.22);animation:pulse 2.4s ease-in-out infinite}
.ib-status.closed .dot{background:#E5806B;box-shadow:0 0 0 5px rgba(229,128,107,.2)}
@keyframes pulse{50%{box-shadow:0 0 0 9px rgba(95,201,138,0)}}
.ib-status .sub{font-size:1rem;opacity:.8;font-style:italic}
.ib-status .sub:empty{display:none}
@media(max-width:760px){.ib-row{grid-template-columns:1fr}.ib{padding:1.1rem var(--pad)}.ib+.ib{border-left:0;border-top:1px solid rgba(247,239,226,.1)}}

/* sections */
.sec{padding:clamp(4rem,9vw,7.5rem) 0}
.sec.tight{padding-top:clamp(2.5rem,5vw,4rem)}
.sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.5rem 3rem;margin-bottom:clamp(2rem,4vw,3.25rem)}
.sec-head.center{flex-direction:column;align-items:center}
.sec-head h2{max-width:20ch}
.sec-head .lede{margin:0}

/* promo cards */
.news-grid{display:grid;grid-template-columns:1fr;gap:clamp(1rem,2vw,1.5rem)}
@media(min-width:700px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-grid>:nth-child(3):last-child{grid-column:1/-1}}
@media(min-width:1100px){.news-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.news-grid>:nth-child(3):last-child{grid-column:auto}}
.news-card{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;min-height:15rem;padding:clamp(1.75rem,3.5vw,2.75rem);border-radius:var(--r);color:var(--cream);text-decoration:none;background:linear-gradient(130deg,#3A160C 0%,#6E2A15 65%,#8E3A1E 100%);transition:transform .45s var(--ease),box-shadow .45s;container-type:inline-size}
.news-card.nc-b{background:linear-gradient(130deg,#16201A 0%,#26392D 70%,#33493A 100%)}
.news-card.nc-c{background:linear-gradient(130deg,#191512 0%,#2E2620 70%,#3D332A 100%)}
.news-card::after{content:"";position:absolute;right:-1.5rem;bottom:-2.5rem;width:12rem;height:16rem;background:var(--wheat) no-repeat center/contain;opacity:.32;transition:transform .8s var(--ease)}
.news-card:hover{transform:translateY(-4px);box-shadow:0 24px 40px -26px rgba(0,0,0,.7)}
.news-card:hover::after{transform:translateY(-6px) rotate(-4deg)}
.news-card .tag{font-family:var(--label);font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;background:var(--fox-soft);color:#2A140B;border-radius:2px;padding:.35rem .6rem}
.news-card h3{color:inherit;font-size:clamp(1.6rem,10cqi,2.4rem);margin-top:.4rem;position:relative;z-index:1}
.news-card p{margin:0;font-style:italic;font-size:1.2rem;opacity:.9;position:relative;z-index:1}
.news-card .arrow-link{margin-top:auto;color:var(--cream);border-color:var(--fox-hi);position:relative;z-index:1}
.follow-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem 1.25rem;margin-top:clamp(.75rem,1.5vw,1rem);padding:.85rem 1.25rem;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}
.follow-strip p{margin:0;font-family:var(--label);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--head)}
.follow-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}
.follow-btns a{display:inline-flex;align-items:center;gap:.45rem;min-height:2.25rem;padding:.4rem .85rem;border:1px solid var(--line);border-radius:999px;font-family:var(--label);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--head);background:var(--bg);transition:background .2s,color .2s,border-color .2s}
.follow-btns a:hover{background:var(--head);color:var(--bg);border-color:var(--head)}
.follow-btns svg{color:var(--fox-ink)}
.follow-btns a:hover svg{color:inherit}

/* welcome / story */
.story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(2rem,6vw,5.5rem);align-items:center}
.story-copy h2{margin-bottom:1.5rem}
.story-copy p{max-width:36rem;line-height:1.7}
.story-copy .lede{color:var(--head);margin-bottom:1.25rem}
.story-copy .actions{margin-top:2rem}
.collage{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:1fr 1fr;gap:clamp(.6rem,1.2vw,1rem);aspect-ratio:5/4}
.collage .ph{border-radius:var(--r)}
.collage .ph:first-child{grid-row:1/3}
@media(max-width:860px){.story{grid-template-columns:1fr}}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(3rem,6vw,4.5rem);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stat{padding:1.75rem 1rem;text-align:center}
.stat+.stat{border-left:1px solid var(--line)}
.stat b{display:block;font-family:var(--label);font-weight:400;letter-spacing:.02em;font-size:clamp(2.1rem,4vw,3rem);line-height:1;color:var(--fox-ink)}
.stat span{display:block;margin-top:.6rem;font-family:var(--label);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
@media(max-width:760px){.stats{grid-template-columns:1fr 1fr}.stat:nth-child(3){border-left:0}.stat:nth-child(n+3){border-top:1px solid var(--line)}}

/* explore tiles */
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1.25rem)}
.tile{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;border-radius:var(--r);color:#fff;text-decoration:none}
.tile .ph{position:absolute;inset:0;transition:transform .9s var(--ease)}
.tile:hover .ph{transform:scale(1.05)}
.tile .cap{position:absolute;inset:auto 0 0;padding:4rem 1.4rem 1.4rem;background:linear-gradient(transparent,rgba(0,0,0,.8));display:flex;flex-direction:column;line-height:1.2}
.tile .cap strong{font-family:var(--display);font-weight:400;font-size:clamp(1.5rem,2.3vw,1.9rem)}
.tile .cap small{font-size:1.08rem;font-style:italic;opacity:.9;margin-top:.35rem}
.tile .cap small::before{content:"";display:block;width:1.75rem;height:1px;background:var(--fox-hi);margin-bottom:.55rem}
@media(max-width:900px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.tile{aspect-ratio:4/5}}
@media(max-width:520px){.tiles{grid-template-columns:1fr}.tile{aspect-ratio:3/2}}

/* dish scroller */
.dish-nav{display:flex;gap:.6rem}
.round{width:3rem;height:3rem;border-radius:50%;border:1px solid var(--head);background:transparent;color:var(--head);display:grid;place-items:center;cursor:pointer;padding:0;transition:background .2s,color .2s,opacity .2s}
.round:hover:not(:disabled){background:var(--head);color:var(--bg)}
.round:disabled{opacity:.3;cursor:default}
.dish-track{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(15rem,23vw,20rem);gap:clamp(1rem,1.8vw,1.5rem);overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--pad) 1rem max(var(--pad),calc((100% - var(--max))/2 + var(--pad)));scroll-padding-inline:max(var(--pad),calc((100% - var(--max))/2 + var(--pad)));scrollbar-width:none}
.dish-track::-webkit-scrollbar{display:none}
.dish{scroll-snap-align:start;text-decoration:none;display:block}
.dish .ph{aspect-ratio:4/5;border-radius:var(--r)}
.dish strong{display:block;margin-top:1rem;font-family:var(--display);font-weight:400;font-size:1.45rem;line-height:1.15;color:var(--head)}
.dish small{display:block;color:var(--muted);font-size:1.05rem;font-style:italic;line-height:1.35;margin-top:.25rem}

/* dark band (hours) */
.band{background:var(--band);color:var(--cream);position:relative;overflow:hidden;isolation:isolate}
.band::before{content:"";position:absolute;z-index:-1;right:-4rem;top:-3rem;width:22rem;height:30rem;background:var(--wheat) no-repeat center/contain;opacity:.3}
@media(max-width:900px){.band::before{width:14rem;right:-5rem;top:auto;bottom:-4rem;opacity:.18}}
.band h2,.band h3{color:var(--cream)}
.band .eyebrow{color:var(--fox-soft)}
.band .lede{color:rgba(247,239,226,.8)}
.hours-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem)}
.hcol{min-width:0;display:flex;flex-direction:column;padding:clamp(1.75rem,3vw,2.5rem);border:1px solid rgba(227,135,92,.28);border-radius:var(--r);background:rgba(255,255,255,.03)}
.hcol h3{font-size:1.75rem;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--fox-hi)}
.hcol p{opacity:.88}
.times{margin:0 0 1.5rem}
.times div{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.65rem 0;border-bottom:1px dotted rgba(247,239,226,.22)}
.times dt{font-family:var(--label);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;opacity:.8}
.times dd{margin:0;font-size:1.2rem;text-align:right;white-space:nowrap}
.times .closed dd{opacity:.6;font-style:italic}
.hcol .fine{color:inherit;opacity:.75;margin:-.5rem 0 1.5rem}
.hcol .arrow-link{margin-top:auto;align-self:flex-start;color:var(--cream);border-color:var(--fox-hi)}
.linklist{list-style:none;margin:0 0 1.5rem;padding:0}
.linklist li{border-bottom:1px dotted rgba(247,239,226,.22)}
.linklist a{display:flex;justify-content:space-between;align-items:center;padding:.7rem 0;text-decoration:none;font-size:1.2rem}
.linklist a::after{content:"\2197";color:var(--fox-hi);font-size:1rem}
.linklist a:hover{color:var(--fox-soft)}
@media(max-width:900px){.hours-grid{grid-template-columns:1fr}}

/* cards (menu landing, beverage lines) */
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.cards.five{grid-template-columns:repeat(5,minmax(0,1fr))}
.mcard{position:relative;display:flex;flex-direction:column;gap:.45rem;padding:1.7rem 1.5rem 1.5rem;min-height:11rem;background:var(--card);border:1px solid var(--line);border-radius:var(--r);text-decoration:none;transition:transform .4s var(--ease),border-color .3s,box-shadow .4s}
.mcard::before{content:"";width:1.75rem;height:1px;background:var(--fox);margin-bottom:.6rem}
.mcard h3{font-size:1.6rem}
.mcard span{color:var(--muted);font-style:italic;font-size:1.08rem;line-height:1.4}
.mcard b{margin-top:auto;padding-top:.6rem;font-weight:400;font-family:var(--label);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fox-ink)}
a.mcard:hover{transform:translateY(-4px);border-color:var(--fox);box-shadow:0 20px 36px -26px rgba(0,0,0,.45)}
@media(max-width:1100px){.cards,.cards.five{grid-template-columns:repeat(2,minmax(0,1fr))}.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.cards.three{grid-template-columns:1fr}}
@media(max-width:520px){.cards,.cards.five{grid-template-columns:1fr}.mcard{min-height:9rem}}

/* cta band */
.cta-band{position:relative;isolation:isolate;overflow:hidden;color:var(--cream);text-align:center;padding:clamp(5rem,12vw,9rem) 0}
.cta-band>.ph,.cta-band>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}
.cta-band::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(14,11,9,.55)}
.cta-band h2{color:var(--cream);margin:0 auto 1rem;max-width:18ch}
.cta-band .eyebrow{color:var(--fox-soft)}
.cta-band p.lede{color:inherit;opacity:.9;margin:0 auto 2rem}

/* visit + map */
.visit-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.visit h2{margin-bottom:1.75rem}
.visit-list{display:grid;gap:1.1rem;margin:0 0 2rem}
.visit-list dt{font-family:var(--label);font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--fox-ink);margin-bottom:.3rem}
.visit-list dd{margin:0;font-size:1.25rem;line-height:1.45}
.visit-list a{text-decoration-color:var(--fox);text-underline-offset:3px}
.map{position:relative;aspect-ratio:4/3;min-height:20rem;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:var(--card);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;text-align:center;padding:2rem;color:var(--muted);text-decoration:none}
.map::before{content:"";position:absolute;inset:0;opacity:.55;background:repeating-linear-gradient(115deg,transparent 0 46px,var(--line) 46px 47px),repeating-linear-gradient(25deg,transparent 0 70px,var(--line) 70px 71px)}
.map>*{position:relative}
.map svg{color:var(--fox-ink);margin-bottom:.4rem}
.map strong{font-family:var(--display);font-weight:400;font-size:1.6rem;color:var(--head)}
.map .arrow-link{margin-top:1rem}
@media(max-width:860px){.visit-grid{grid-template-columns:1fr}.map{aspect-ratio:1/1;min-height:0}}

/* footer */
.site-foot{background:var(--deep);color:var(--cream);padding:clamp(3.5rem,7vw,5.5rem) 0 0;flex-shrink:0;font-size:1.12rem}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2.5rem}
.foot-grid h2{font-family:var(--label);color:var(--fox-soft);font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;margin-bottom:1rem;line-height:1.4}
.foot-grid p{margin:0 0 .6rem;line-height:1.55;opacity:.9}
.foot-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
.foot-grid a{text-decoration-color:rgba(227,135,92,.6);text-underline-offset:3px}
.foot-grid a:hover{color:var(--fox-soft)}
.foot-logo{width:11rem;height:auto;display:block;margin-bottom:1.25rem}
.foot-grid .arrow-link{color:var(--cream);border-color:var(--fox-hi);margin-top:.6rem}
.social{display:flex;gap:.75rem;margin-top:1.25rem}
.social a{display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:50%;border:1px solid rgba(247,239,226,.3);transition:background .2s,border-color .2s,color .2s}
.social a:hover{background:var(--fox-hi);border-color:var(--fox-hi);color:var(--deep)}
.foot-hours{display:grid;grid-template-columns:auto 1fr;gap:.25rem 1rem;margin:0}
.foot-hours dt{opacity:.7}.foot-hours dd{margin:0}
.foot-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;margin-top:clamp(3rem,6vw,4.5rem);padding-top:1.5rem;padding-bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));border-top:1px solid rgba(247,239,226,.12);font-size:.98rem;opacity:.75}
.foot-base p{margin:0}
.foot-base a{text-underline-offset:3px}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}}
@media(max-width:520px){.foot-grid{grid-template-columns:1fr}}

/* inner pages */
.page{max-width:var(--max);margin:0 auto;padding:clamp(3rem,7vw,5.5rem) var(--pad) clamp(4rem,9vw,7rem)}
.page-head{text-align:center;max-width:48rem;margin:0 auto clamp(2.5rem,5vw,3.75rem)}
.page-head h1{overflow-wrap:break-word;font-size:clamp(2.7rem,6.5vw,4.8rem)}
.page-head h1::after{content:"";display:block;width:1.7rem;height:2.4rem;margin:1.2rem auto 0;background:var(--wheat) no-repeat center/contain}
.page-head .eyebrow::after{content:"";width:2.2rem;height:1px;background:currentColor}
.page-head .lede{margin:1.25rem auto 0}
.page-head .fine{margin:1rem 0 0}
.page-head .actions{justify-content:center;margin-top:1.75rem}
.sub-h{text-align:center;margin:clamp(4rem,8vw,6rem) auto clamp(2rem,4vw,3rem);max-width:44rem}
.sub-h h2{font-size:clamp(2rem,4.2vw,3rem)}
.sub-h .lede{margin:1rem auto 0}
.sub-h .eyebrow::after{content:"";width:2.2rem;height:1px;background:currentColor}

/* feature block */
.feature{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;max-width:72rem;margin:0 auto}
.feature>.ph{min-height:24rem}
.feature .fc{padding:clamp(2rem,5vw,4rem);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.feature h2{margin-bottom:1rem;font-size:clamp(2rem,3.6vw,2.8rem)}
.feature .lede{margin-bottom:1.5rem;font-size:1.25rem}
@media(max-width:760px){.feature{grid-template-columns:1fr}.feature>.ph{min-height:0;aspect-ratio:3/2}}

/* alternating spaces */
.space:nth-of-type(odd)>.ph{background-image:var(--wheat),radial-gradient(120% 90% at 70% 0%,#4A2E20 0%,rgba(74,46,32,0) 60%),linear-gradient(170deg,#2B231D 0%,#16120F 100%);background-repeat:no-repeat;background-size:auto 40%,auto,auto;background-position:center 45%,0 0,0 0}
.space{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(1.75rem,4.5vw,4rem);align-items:center;padding:clamp(2.5rem,5vw,4rem) 0;border-top:1px solid var(--line)}
.space:nth-of-type(even){grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}
.space:nth-of-type(even)>:first-child{order:2}
.space>.ph{aspect-ratio:3/2;border-radius:var(--r)}
.space .num{font-family:var(--label);color:var(--fox-ink);font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;margin:0 0 .75rem}
.space h3{font-size:clamp(2.1rem,3.6vw,2.9rem);margin-bottom:1rem}
.space .meta{display:inline-block;color:var(--head);font-size:1.08rem;font-style:italic;margin:0 0 1rem;padding:.5rem 0;border-top:1px solid var(--fox);border-bottom:1px solid var(--fox)}
.space ul{margin:0 0 1rem;padding-left:1.1rem;color:var(--muted)}
.space li{margin-bottom:.3rem}.space li::marker{color:var(--fox-ink)}
.space .actions{margin-top:1.25rem}
@media(max-width:760px){.space,.space:nth-of-type(even){grid-template-columns:1fr}.space:nth-of-type(even)>:first-child{order:0}}
.contact-line{margin:1.5rem auto 0;text-align:center;font-size:1.08rem;color:var(--muted)}
.contact-line a{color:var(--head);text-decoration-color:var(--fox);text-underline-offset:3px;overflow-wrap:anywhere}
.contact-line a:hover{color:var(--fox-ink)}
.page-end{text-align:center;margin-top:clamp(2rem,4vw,3rem);padding-top:clamp(2.5rem,5vw,3.5rem);border-top:1px solid var(--line)}

/* text menus */
.menu-jump{position:sticky;top:calc(var(--hh) + var(--sa));z-index:5;display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:none;padding:.8rem 0;margin:0 auto;max-width:64rem;background:var(--bg);border-bottom:1px solid var(--line)}
.menu-jump::-webkit-scrollbar{display:none}
.menu-jump a{flex:none;font-family:var(--label);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;padding:.65rem 1.05rem;border:1px solid var(--line);border-radius:999px;color:var(--head);white-space:nowrap;transition:background .2s,border-color .2s}
.menu-jump a:hover{border-color:var(--fox);background:var(--card)}
@media(min-width:761px){.menu-jump{flex-wrap:wrap;justify-content:center}}
.tmenu{max-width:64rem;margin:0 auto}
.msec{padding:clamp(2.5rem,5vw,3.5rem) 0;border-bottom:1px solid var(--line);scroll-margin-top:calc(var(--hh) + var(--sa) + 4.5rem)}
.msec>h2{font-size:clamp(2rem,4vw,2.8rem);text-align:center}
.msec>h2::after{content:"";display:block;width:2.5rem;height:1px;background:var(--fox);margin:1rem auto 0}
.mnote{text-align:center;color:var(--muted);font-family:var(--label);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;line-height:1.8;margin:1rem auto 0;max-width:40rem}
.tier{margin:2.25rem 0 0;padding-bottom:.6rem;border-bottom:1px solid var(--line);font-family:var(--label);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fox-ink)}
.items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem clamp(2rem,5vw,4rem);margin-top:2.25rem}
.tier+.items{margin-top:1.5rem}
.item{min-width:0}
.ln{display:flex;align-items:baseline;gap:.6rem}
.item h3{margin:0;font-family:var(--display);font-weight:400;font-size:1.45rem;line-height:1.2;color:var(--head)}
.lead{flex:1 1 1rem;min-width:1rem;border-bottom:1px dotted var(--muted);opacity:.55;transform:translateY(-.25em)}
.pr{flex:none;font-variant-numeric:lining-nums tabular-nums;color:var(--head);white-space:nowrap;font-size:1.1rem}
.pr.tbd{color:var(--muted);font-style:italic;font-size:1rem}
.item p{margin:.3rem 0 0;color:var(--muted);font-size:1.08rem;line-height:1.5}
.item .ph-txt{font-style:italic;opacity:.8}
.notice{max-width:40rem;margin:0 auto 2rem;padding:1rem 1.25rem;border:1px dashed var(--fox);border-radius:var(--r);text-align:center;color:var(--muted);font-style:italic;font-size:1.05rem;background:var(--card)}
.chips{list-style:none;padding:0;margin:1.75rem auto 0;display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;max-width:60rem}
.chips li{padding:.55rem 1.05rem;border:1px solid var(--line);border-radius:999px;background:var(--card);font-size:1.05rem}
@media(max-width:760px){.items{grid-template-columns:1fr}}

/* beverage lists */
.bev-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem clamp(2rem,4vw,3rem);margin-top:2rem}
.bev-grid h3{font-family:var(--label);font-weight:400;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--fox-ink);margin:0 0 .4rem;padding-bottom:.6rem;border-bottom:1px solid var(--line)}
.bev-grid ul{list-style:none;margin:0;padding:0}
.bev-grid li{padding:.55rem 0;border-bottom:1px dotted var(--line);font-family:var(--display);font-size:1.35rem;color:var(--head)}
@media(max-width:860px){.bev-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.bev-grid{grid-template-columns:1fr}}
.mpart{display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center;padding:clamp(2.5rem,5vw,3.5rem) 1.25rem;margin-top:clamp(2rem,4vw,3rem);background:var(--band);color:var(--cream);border-radius:var(--r);position:relative;overflow:hidden;isolation:isolate;scroll-margin-top:calc(var(--hh) + var(--sa) + 1rem)}
.mpart::after{content:"";position:absolute;z-index:-1;right:-2rem;bottom:-3rem;width:11rem;height:15rem;background:var(--wheat) no-repeat center/contain;opacity:.25}
.mpart .eyebrow{color:var(--fox-soft);margin:0}
.mpart h2{color:var(--cream);font-size:clamp(2.2rem,4.5vw,3.2rem)}
.mpart p{max-width:40rem;margin:0;opacity:.85}
.mpart .actions{margin-top:.75rem;justify-content:center}

/* facts row (inn) */
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;max-width:64rem;margin:0 auto}
.fact{text-align:center;padding:1.5rem 1rem;background:var(--card);border:1px solid var(--line);border-radius:var(--r)}
.fact b{display:block;font-family:var(--label);font-weight:400;font-size:2.1rem;line-height:1;color:var(--fox-ink)}
.fact span{display:block;margin-top:.5rem;font-family:var(--label);font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
@media(max-width:760px){.facts{grid-template-columns:1fr 1fr}}
.floors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem)}
.floor{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:clamp(1.5rem,3vw,2.25rem)}
.floor h3{font-size:1.8rem;margin-bottom:1rem;padding-bottom:.9rem;border-bottom:1px solid var(--fox)}
.floor ul{margin:0;padding-left:1.1rem;color:var(--muted);font-size:1.1rem}
.floor li{margin-bottom:.45rem}.floor li::marker{color:var(--fox-ink)}
@media(max-width:900px){.floors{grid-template-columns:1fr}}

/* FAQ */
.faq{max-width:52rem;margin:0 auto}
.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;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 0;font-family:var(--display);font-size:1.45rem;color:var(--head)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;width:2rem;height:2rem;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-family:var(--body);font-size:1.2rem;color:var(--fox-ink);transition:transform .3s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details>div{padding:0 0 1.4rem;color:var(--muted);max-width:44rem}
.faq details>div p:last-child{margin:0}

/* checklist */
.checks{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 2rem;max-width:56rem;margin:0 auto}
.checks li{display:flex;gap:.75rem;align-items:baseline;padding:.75rem 0;border-bottom:1px dotted var(--line);font-size:1.15rem}
.checks li::before{content:"";flex:none;width:.5rem;height:.5rem;border:1px solid var(--fox);transform:rotate(45deg) translateY(-.15rem)}
@media(max-width:700px){.checks{grid-template-columns:1fr}}

/* badge */
.badge{display:inline-flex;align-items:center;gap:.6rem;margin-top:.5rem;padding:.6rem 1.1rem;font-style:normal;border:1px solid var(--fox);border-radius:999px;font-family:var(--label);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--fox-ink)}

/* 404 */
.nf{text-align:center;padding:clamp(5rem,12vw,9rem) var(--pad)}
.nf img{width:9rem;height:auto;margin-bottom:1.5rem}

/* reveal — content is visible by default; site.js only hides blocks that start below the fold, then animates them in */
.rv{transition:opacity 1s var(--ease),transform 1s var(--ease)}
.rv.pre{opacity:0;transform:translateY(28px)}
/* sections that links jump to fade without moving, so the jump lands in the right place */
.rv.pre[id],.rv.pre:has([id]){transform:none}
.rv.d1{transition-delay:.1s}.rv.d2{transition-delay:.2s}.rv.d3{transition-delay:.3s}
/* page-load sequence */
@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes wordIn{from{opacity:0;letter-spacing:.12em}to{opacity:.93;letter-spacing:.04em}}
.hero-word{animation:wordIn 1.8s var(--ease) both}
.hero-copy>*{animation:rise 1s var(--ease) both}
.hero-copy>:nth-child(1){animation-delay:.35s}.hero-copy>:nth-child(2){animation-delay:.5s}.hero-copy>:nth-child(3){animation-delay:.65s}.hero-copy>:nth-child(4){animation-delay:.8s}
.infobar .ib{animation:rise .9s var(--ease) both}.infobar .ib:nth-child(1){animation-delay:.9s}.infobar .ib:nth-child(2){animation-delay:1s}.infobar .ib:nth-child(3){animation-delay:1.1s}
.page-head>*{animation:rise .9s var(--ease) both}
.page-head>:nth-child(2){animation-delay:.1s}.page-head>:nth-child(3){animation-delay:.2s}.page-head>:nth-child(4){animation-delay:.3s}.page-head>:nth-child(5){animation-delay:.4s}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.rv.pre{opacity:1;transform:none}}
@media(max-width:420px){.page-head h1{font-size:clamp(2.2rem,10vw,2.7rem)}.times div{flex-wrap:wrap;gap:.15rem 1rem}.times dd{text-align:left}}
.tiles>.ph{aspect-ratio:4/3;border-radius:var(--r)}
@media(max-width:900px){.tiles>.ph{aspect-ratio:4/5}}@media(max-width:520px){.tiles>.ph{aspect-ratio:3/2}}

/* real photos (img.ph keeps each slot's size/shape; object-fit crops) */
img.ph{width:100%;height:100%;object-fit:cover;background:var(--bg2)}
.dish-fig{display:block;overflow:hidden;border-radius:var(--r);aspect-ratio:4/5;background:var(--bg2)}
.dish-fig>.ph{aspect-ratio:auto;height:100%;border-radius:0;transition:transform .9s var(--ease)}
.dish:hover .dish-fig>.ph{transform:scale(1.06)}
.photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.5rem,1.2vw,1rem);max-width:64rem;margin:0 auto clamp(1.5rem,3vw,2.25rem)}
.photo-strip img{aspect-ratio:4/3;border-radius:var(--r)}
@media(max-width:600px){.photo-strip{grid-template-columns:1fr 1fr}.photo-strip img:last-child{display:none}}

/* short landscape screens (phones on their side): hero sized to its content */
@media (orientation:landscape) and (max-height:540px){
.hero{height:auto;min-height:0;max-height:none;display:block;padding-top:calc(var(--hh) + var(--sa) + .75rem)}
.hero-media{position:absolute;inset:0;aspect-ratio:auto}
.hero-word{position:relative;top:auto;font-size:clamp(3rem,10vw,6.5rem);margin-bottom:.25rem}
.hero-copy{padding-top:0;padding-bottom:1.75rem;text-align:left}
.hero .eyebrow{justify-content:flex-start}
.hero-title{font-size:clamp(1.8rem,4vw,2.4rem);margin-left:0;margin-bottom:.6rem}
.hero .sub{margin:0 0 1.25rem;font-size:1.1rem}
.hero .actions{justify-content:flex-start}.hero .actions .btn{flex:0 0 auto}
}

/* ===== Homepage: photo hero + sector doors (concept A) ===== */
.fhero{position:relative;min-height:min(78svh,44rem);display:flex;align-items:flex-end;color:var(--cream);background:var(--deep);overflow:hidden}
.fhero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;animation:kb 14s ease-out both}
.fhero::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,10,8,.9) 0%,rgba(12,10,8,.4) 42%,rgba(12,10,8,.12) 70%),linear-gradient(rgba(12,10,8,.55),rgba(12,10,8,0) 22%)}
.fhero-copy{position:relative;z-index:1;width:100%;padding-top:calc(var(--hh) + 3rem);padding-bottom:clamp(8.5rem,14vw,10.5rem)}
.fhero .eyebrow{color:var(--fox-soft)}
.fhero h1{font-size:clamp(2.6rem,5.6vw,4.8rem);line-height:1.02;max-width:15ch;margin:0 0 1rem;color:var(--cream);text-wrap:balance;text-shadow:0 2px 30px rgba(0,0,0,.35)}
.fhero .sub{font-size:clamp(1.2rem,1.7vw,1.45rem);max-width:36rem;margin:0;opacity:.92}
.fhero-copy>*{animation:rise 1s var(--ease) both}
.fhero-copy>:nth-child(2){animation-delay:.12s}.fhero-copy>:nth-child(3){animation-delay:.24s}

.doors{position:relative;z-index:2;margin-top:clamp(-7.5rem,-10vw,-6rem)}
.doors-label{display:none}
.doors-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(.6rem,1.1vw,1rem)}
.door{display:flex;flex-direction:column;text-decoration:none;background:var(--card);border-radius:var(--r);overflow:hidden;box-shadow:0 26px 44px -30px rgba(0,0,0,.7);transition:transform .45s var(--ease),box-shadow .45s}
.door:hover{transform:translateY(-4px);box-shadow:0 30px 50px -28px rgba(0,0,0,.75)}
.door-fig{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--bg2)}
.door-fig img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.door:hover .door-fig img{transform:scale(1.05)}
.door-txt{display:flex;flex-direction:column;gap:.2rem;padding:1rem 1.1rem 1.15rem;flex:1}
.door-txt strong{font-family:var(--display);font-weight:400;font-size:clamp(1.35rem,1.9vw,1.7rem);line-height:1.1;color:var(--head)}
.door-txt small{font-size:1rem;font-style:italic;color:var(--muted);line-height:1.35}
.door-txt b{margin-top:auto;padding-top:.6rem;font-weight:400;font-family:var(--label);font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fox-ink)}
.door{animation:rise .9s var(--ease) both}
.door:nth-child(1){animation-delay:.35s}.door:nth-child(2){animation-delay:.43s}.door:nth-child(3){animation-delay:.51s}.door:nth-child(4){animation-delay:.59s}.door:nth-child(5){animation-delay:.67s}

@media(max-width:1100px){.doors-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
.fhero{min-height:0;height:auto}
.fhero-copy{padding-top:calc(var(--hh) + 9rem);padding-bottom:2rem}
.doors{margin-top:0;padding-top:1.5rem}
.doors-label{display:block;margin:0 0 .75rem;font-family:var(--label);font-size:.64rem;letter-spacing:.24em;text-transform:uppercase;color:var(--fox-ink)}
.doors-grid{grid-template-columns:1fr;gap:.6rem}
.door{flex-direction:row;box-shadow:none;border:1px solid var(--line)}
.door-fig{flex:none;width:7.5rem;aspect-ratio:auto;min-height:6.25rem}
.door-txt{justify-content:center;padding:.75rem .9rem}
.door-txt b{display:none}
}

.today{margin-top:clamp(1rem,2vw,1.75rem)}
.today-in{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem 2rem;padding:1rem 1.25rem;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}
.today-status{display:flex;align-items:center;gap:.7rem;text-decoration:none}
.today-status .dot{width:.7rem;height:.7rem;border-radius:50%;background:#B9B9A8;flex:none}
.today-status.open .dot{background:#3E9E66;box-shadow:0 0 0 5px rgba(62,158,102,.18);animation:pulse 2.4s ease-in-out infinite}
.today-status.closed .dot{background:#D2664F;box-shadow:0 0 0 5px rgba(210,102,79,.16)}
.today-status .label{font-weight:500}
.today-status .sub{font-style:normal;color:var(--muted)}
.today-status .sub::before{content:"· "}
.today-status .sub:empty::before{content:""}
.today-next{text-decoration:none;color:var(--muted)}
.today-next small{font-family:var(--label);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fox-ink);margin-right:.6rem}
.today-next:hover{color:var(--fox-ink)}
.today-act{margin-left:auto;display:flex;flex-wrap:wrap;gap:.6rem}
.today-act .btn{padding:.85rem 1.15rem;font-size:.68rem}
@media(max-width:760px){.today-act{margin-left:0;width:100%}.today-act .btn{flex:1 1 9rem}.today-next small{display:block;margin:0 0 .15rem}}

.sbands{display:flex;flex-direction:column;gap:clamp(4rem,9vw,7rem);padding-top:clamp(4rem,9vw,7rem)}
.sband{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;scroll-margin-top:calc(var(--hh) + 1rem)}
.sband.flip{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
.sband.flip .sband-media{order:2}
.sband-media{display:grid;gap:.75rem}
.sband-media img{display:block;width:100%;height:100%;object-fit:cover;border-radius:var(--r)}
.sband-media.n1 img{aspect-ratio:3/2}
.sband-media.n2{grid-template-columns:repeat(2,minmax(0,1fr))}
.sband-media.n2 img{aspect-ratio:4/5}
.sband-media.n2 img:nth-child(2){margin-top:2.5rem}
.sband-copy h2{margin-bottom:1rem}
.sband-copy .lede{margin-bottom:1.25rem}
.sband-copy .actions{margin-top:1.5rem}
.sband-copy .badge{margin:0}
.sband-links{margin:1rem 0 0;font-size:1.05rem;color:var(--muted)}
.sband-links a{text-decoration-color:var(--fox);text-underline-offset:3px}
.brands{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem;max-width:30rem}
.brands li{padding:.5rem 0;border-bottom:1px dotted var(--line);font-family:var(--display);font-size:1.35rem;color:var(--head)}
.facts3{display:flex;max-width:30rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.facts3 span{flex:1;padding:.75rem 0;text-align:center;font-family:var(--label);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.facts3 b{display:block;font-weight:400;font-size:1.8rem;letter-spacing:.02em;color:var(--fox-ink);text-transform:none}
@media(max-width:860px){.sband,.sband.flip{grid-template-columns:1fr}.sband.flip .sband-media{order:0}.sband-media.n2 img:nth-child(2){margin-top:1.5rem}}

.whats-on{position:relative;isolation:isolate;margin-top:clamp(5rem,10vw,8rem);padding:clamp(4rem,9vw,6.5rem) 0;color:var(--cream);background:var(--deep);overflow:hidden}
.whats-on-img{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover;opacity:.36}
.whats-on h2{color:var(--cream);margin-bottom:2rem;max-width:20ch}
.whats-on .eyebrow{color:var(--fox-soft)}
.won-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1rem;margin-bottom:2rem}
.won{display:flex;flex-direction:column;gap:.3rem;padding:1.4rem 1.5rem;border-radius:var(--r);background:rgba(21,18,15,.74);border:1px solid rgba(227,135,92,.35);text-decoration:none;color:var(--cream);transition:border-color .3s,transform .4s var(--ease)}
.won:hover{border-color:var(--fox-hi);transform:translateY(-3px);color:var(--cream)}
.won small{font-family:var(--label);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fox-soft)}
.won strong{font-family:var(--display);font-weight:400;font-size:1.65rem;line-height:1.12}
.won span{opacity:.82;font-style:italic}
.fhero h1{max-width:19ch}
.today-act .btn{white-space:nowrap}
@media(max-width:760px){.fhero h1{max-width:13ch}.today-act .btn{letter-spacing:.12em;padding-left:.8rem;padding-right:.8rem}.today-status{align-items:flex-start}.today-status .dot{margin-top:.45rem}}
/* hero slideshow */
.fhero-slides{position:absolute;inset:0}
.fhero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.6s ease}
.fhero-slide.on{opacity:1}
.fhero-slide .fhero-img{animation:none;transform:scale(1.06)}
.fhero-slide.on .fhero-img{animation:kb 9s ease-out both}
.fhero-pano{object-position:62% 55%}
.fhero-pause{position:absolute;z-index:3;right:clamp(1rem,3vw,2rem);top:calc(var(--hh) + 1rem);width:2.75rem;height:2.75rem;border-radius:50%;display:grid;place-items:center;padding:0;cursor:pointer;color:#fff;background:rgba(12,10,8,.4);border:1px solid rgba(255,255,255,.35);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:.7;transition:opacity .2s,background .2s}
.fhero-pause:hover,.fhero-pause:focus-visible{opacity:1;background:rgba(12,10,8,.7)}
.fhero-pause .ico-play{display:none}
.fhero-pause.paused .ico-play{display:inline}.fhero-pause.paused .ico-pause{display:none}
.fhero::after{z-index:0;background:linear-gradient(90deg,rgba(12,10,8,.62) 0%,rgba(12,10,8,.3) 45%,rgba(12,10,8,0) 72%),linear-gradient(0deg,rgba(12,10,8,.9) 0%,rgba(12,10,8,.42) 42%,rgba(12,10,8,.14) 70%),linear-gradient(rgba(12,10,8,.55),rgba(12,10,8,0) 22%)}
@media(max-width:760px){.fhero::after{background:linear-gradient(0deg,rgba(12,10,8,.92) 0%,rgba(12,10,8,.55) 50%,rgba(12,10,8,.25) 100%)}}
/* slideshow v2: slow overlapping crossfade, zoom never jumps */
.fhero-slide{transition:opacity 2.8s cubic-bezier(.4,0,.2,1);z-index:0}
.fhero-slide.on{z-index:2}
.fhero-slide.was{opacity:1;z-index:1}
.fhero-slide.on .fhero-img,.fhero-slide.was .fhero-img{animation:kb 12s cubic-bezier(.25,.1,.25,1) both}
.fhero-aerial{object-position:center 62%}
.fhero::after{z-index:3}
.fhero-copy{z-index:4}
.fhero-pause{z-index:5}
.fhero{isolation:isolate}

/* ===== homepage scroll choreography ===== */
/* section bands: photos wipe up into view and settle; copy arrives line by line; the eyebrow rule draws in */
[data-anim] .sband-media img{clip-path:inset(0 0 0 0 round var(--r));transition:clip-path 1.3s cubic-bezier(.65,0,.25,1),transform 1.8s cubic-bezier(.2,.7,.2,1)}
[data-anim] .sband-media img:nth-child(2){transition-delay:.18s,.18s}
[data-anim].pre .sband-media img{clip-path:inset(100% 0 0 0 round var(--r));transform:scale(1.12)}
[data-anim] .sband-copy>*,[data-anim]>.eyebrow,[data-anim]>h2,[data-anim]>.won-grid>.won,[data-anim]>.actions{transition:opacity .9s var(--ease),transform 1s var(--ease)}
[data-anim].pre .sband-copy>*,[data-anim].pre>.eyebrow,[data-anim].pre>h2,[data-anim].pre>.won-grid>.won,[data-anim].pre>.actions{opacity:0;transform:translateY(24px)}
[data-anim] .sband-copy>:nth-child(1),[data-anim]>.eyebrow{transition-delay:.25s}
[data-anim] .sband-copy>:nth-child(2),[data-anim]>h2{transition-delay:.35s}
[data-anim] .sband-copy>:nth-child(3),[data-anim]>.won-grid>.won:nth-child(1){transition-delay:.45s}
[data-anim] .sband-copy>:nth-child(4),[data-anim]>.won-grid>.won:nth-child(2){transition-delay:.55s}
[data-anim] .sband-copy>:nth-child(5),[data-anim]>.won-grid>.won:nth-child(3){transition-delay:.65s}
[data-anim] .sband-copy>:nth-child(6),[data-anim]>.actions{transition-delay:.75s}
[data-anim] .eyebrow::before{transform-origin:left;transition:transform 1s cubic-bezier(.65,0,.25,1) .3s}
[data-anim].pre .eyebrow::before{transform:scaleX(0)}
.whats-on .won.rv{opacity:1;transform:none}
/* parallax layers */
.fhero-slides,.fhero-copy{will-change:transform}
.whats-on-img{transform:scale(1.15);will-change:transform}
/* today strip settles in a touch later than the doors */
.today.rv{transition-delay:.15s}
@media (prefers-reduced-motion:reduce){[data-anim].pre .sband-media img,[data-anim].pre .sband-copy>*,[data-anim].pre>*,[data-anim].pre>.won-grid>.won{opacity:1!important;transform:none!important;clip-path:none!important}}
.fhero-inn{object-position:62% 55%}
.fhero-inn{object-position:62% 38%}

/* ===== Restaurant page ===== */
.rhero{padding:clamp(2.5rem,6vw,4.5rem) 0 clamp(2.5rem,5vw,4rem)}
.rhero-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.rhero h1{font-size:clamp(2.8rem,5.8vw,5rem);line-height:1;margin:0 0 1.1rem;text-wrap:balance}
.rhero .lede{margin:0 0 1.75rem}
.rhero-copy>*{animation:rise .9s var(--ease) both}
.rhero-copy>:nth-child(2){animation-delay:.08s}.rhero-copy>:nth-child(3){animation-delay:.16s}.rhero-copy>:nth-child(4){animation-delay:.24s}.rhero-copy>:nth-child(5){animation-delay:.32s}
.rhero-status{display:inline-flex;align-items:center;gap:.65rem;margin-top:1.5rem;text-decoration:none;font-size:1.05rem}
.rhero-status .dot{width:.65rem;height:.65rem;border-radius:50%;background:#B9B9A8;flex:none}
.rhero-status.open .dot{background:#3E9E66;box-shadow:0 0 0 5px rgba(62,158,102,.18)}
.rhero-status.closed .dot{background:#D2664F;box-shadow:0 0 0 5px rgba(210,102,79,.16)}
.rhero-status .label{font-weight:500}.rhero-status .sub{font-style:normal;color:var(--muted)}
.rhero-status .sub::before{content:"· "}.rhero-status .sub:empty::before{content:""}
.rhero-fig{position:relative;margin:0;max-width:600px;justify-self:end;width:100%;animation:rise 1.1s var(--ease) .15s both}
.rhero-fig img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center 60%;border-radius:var(--r);box-shadow:0 40px 70px -45px rgba(0,0,0,.55)}
.rhero-fig::before{content:"";position:absolute;left:-1.25rem;top:1.25rem;right:1.25rem;bottom:-1.25rem;border:1px solid var(--fox);border-radius:var(--r);z-index:-1}
.rhero-fig figcaption{position:absolute;left:1rem;bottom:1rem;padding:.5rem .8rem;border-radius:3px;background:rgba(251,247,240,.94);font-family:var(--label);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--head)}
@media(max-width:860px){.rhero-in{grid-template-columns:1fr}.rhero-fig{justify-self:stretch;max-width:none}.rhero-fig img{aspect-ratio:4/3}.rhero-fig::before{left:-.6rem;top:.6rem;right:.6rem;bottom:-.6rem}}

.subnav{position:sticky;top:calc(var(--hh) + var(--sa));z-index:20;background:rgba(245,238,227,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.subnav-in{display:flex;align-items:center;gap:.25rem 1.6rem;overflow-x:auto;scrollbar-width:none;white-space:nowrap;min-height:3.25rem}
.subnav-in::-webkit-scrollbar{display:none}
.subnav-title{font-family:var(--display);font-size:1.35rem;color:var(--head);margin-right:.75rem;padding-right:1.4rem;border-right:1px solid var(--line)}
.subnav a{flex:none;font-family:var(--label);font-size:.66rem;letter-spacing:.17em;text-transform:uppercase;text-decoration:none;color:var(--head);padding:1rem 0;position:relative}
.subnav a span{color:var(--fox-ink)}
.subnav a::after{content:"";position:absolute;left:0;right:0;bottom:.6rem;height:1px;background:var(--fox);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.subnav a:hover::after,.subnav a[aria-current=page]::after{transform:none}
.subnav a[aria-current=page]{color:var(--fox-ink)}
@media(max-width:760px){.subnav-title{display:none}.subnav-in{gap:.25rem 1.3rem}}

.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,4vw,3.5rem)}
.pillars>div{padding-top:1.5rem;border-top:1px solid var(--head)}
.pillars h2{font-size:clamp(1.7rem,2.6vw,2.2rem);margin-bottom:.8rem}
.pillars p:not(.eyebrow){color:var(--muted);margin:0}
[data-anim]>.pillars>div,.pillars[data-anim]>div{transition:opacity .9s var(--ease),transform 1s var(--ease)}
.pillars[data-anim].pre>div{opacity:0;transform:translateY(24px)}
.pillars[data-anim]>div:nth-child(2){transition-delay:.12s}.pillars[data-anim]>div:nth-child(3){transition-delay:.24s}
@media(max-width:860px){.pillars{grid-template-columns:1fr}}

.mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(10rem,17vw,15rem);gap:clamp(.5rem,1vw,.85rem)}
.mtile{position:relative;margin:0;overflow:hidden;border-radius:var(--r);background:var(--bg2)}
.mtile.big{grid-column:span 2;grid-row:span 2}.mtile.tall{grid-row:span 2}.mtile.wide{grid-column:span 2}
.mtile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease),clip-path 1.2s cubic-bezier(.65,0,.25,1);clip-path:inset(0 0 0 0 round var(--r))}
.mtile:hover img{transform:scale(1.05)}
.mtile figcaption{position:absolute;left:0;right:0;bottom:0;padding:2.5rem 1rem .9rem;background:linear-gradient(transparent,rgba(12,10,8,.72));color:var(--cream);font-family:var(--display);font-size:clamp(1.05rem,1.5vw,1.35rem);line-height:1.15}
.mosaic[data-anim].pre .mtile img{clip-path:inset(100% 0 0 0 round var(--r));transform:scale(1.1)}
.mosaic[data-anim].pre figcaption{opacity:0}
.mosaic figcaption{transition:opacity .8s ease .6s}
.mosaic .mtile:nth-child(2) img{transition-delay:.08s}.mosaic .mtile:nth-child(3) img{transition-delay:.16s}.mosaic .mtile:nth-child(4) img{transition-delay:.24s}.mosaic .mtile:nth-child(5) img{transition-delay:.32s}.mosaic .mtile:nth-child(6) img{transition-delay:.4s}.mosaic .mtile:nth-child(7) img{transition-delay:.48s}
@media(max-width:760px){.mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:9.5rem}.mtile.tall{grid-row:span 2}.mtile.wide,.mtile.big{grid-column:span 2}}

.bar-band{background:var(--band);color:var(--cream);padding:clamp(4rem,9vw,6.5rem) 0;position:relative;overflow:hidden;isolation:isolate}
.bar-band::before{content:"";position:absolute;z-index:-1;right:-3rem;bottom:-4rem;width:18rem;height:24rem;background:var(--wheat) no-repeat center/contain;opacity:.22}
.bar-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.bar-fig img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r)}
.bar-copy h2{color:var(--cream);margin-bottom:1rem}
.bar-copy .eyebrow{color:var(--fox-soft)}
.bar-copy .lede{color:rgba(247,239,226,.82);margin-bottom:1.75rem}
.bar-in[data-anim] .bar-fig img{transition:clip-path 1.3s cubic-bezier(.65,0,.25,1),transform 1.8s var(--ease);clip-path:inset(0 0 0 0 round var(--r))}
.bar-in[data-anim].pre .bar-fig img{clip-path:inset(0 100% 0 0 round var(--r));transform:scale(1.1)}
.bar-in[data-anim] .bar-copy>*{transition:opacity .9s var(--ease),transform 1s var(--ease)}
.bar-in[data-anim].pre .bar-copy>*{opacity:0;transform:translateY(22px)}
.bar-in[data-anim] .bar-copy>:nth-child(2){transition-delay:.1s}.bar-in[data-anim] .bar-copy>:nth-child(3){transition-delay:.2s}.bar-in[data-anim] .bar-copy>:nth-child(4){transition-delay:.3s}
@media(max-width:860px){.bar-in{grid-template-columns:1fr}}

.neighbors{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.neighbors h2{margin-bottom:1rem}
.neighbors ul{list-style:none;margin:0;padding:0;columns:2;column-gap:2.5rem}
.neighbors li{break-inside:avoid;padding:.6rem 0;border-bottom:1px dotted var(--line);font-family:var(--display);font-size:1.3rem;color:var(--head)}
.neighbors[data-anim] ul{transition:opacity 1s var(--ease) .2s,transform 1s var(--ease) .2s}
.neighbors[data-anim].pre ul{opacity:0;transform:translateY(20px)}
@media(max-width:860px){.neighbors{grid-template-columns:1fr}}
@media(max-width:480px){.neighbors ul{columns:1}}

.hrs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem)}
.hrs-card{padding:clamp(1.75rem,3.5vw,2.75rem);background:var(--card);border:1px solid var(--line);border-radius:var(--r)}
.hrs-card h2{font-size:clamp(1.8rem,3vw,2.4rem);margin-bottom:1.25rem}
.hrs-card .fine{margin:1.25rem 0 0}
.week{margin:0}
.week div{display:flex;justify-content:space-between;gap:1rem;padding:.6rem .75rem;margin:0 -.75rem;border-bottom:1px dotted var(--line);border-radius:3px}
.week dt{font-family:var(--label);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--head);padding-top:.25rem}
.week dd{margin:0;font-variant-numeric:tabular-nums}
.week .closed dd{color:var(--muted);font-style:italic}
.week .today{background:var(--bg2);border-bottom-color:transparent}
.week .today dt::after{content:" · Today";color:var(--fox-ink)}
.order-list{list-style:none;margin:0;padding:0}
.order-list a{display:flex;flex-direction:column;gap:.1rem;padding:.85rem 2rem .85rem 0;border-bottom:1px dotted var(--line);text-decoration:none;position:relative}
.order-list a::after{content:"\2197";position:absolute;right:.25rem;top:50%;transform:translateY(-50%);color:var(--fox-ink);transition:transform .3s var(--ease)}
.order-list a:hover::after{transform:translate(3px,-60%)}
.order-list b{font-family:var(--display);font-weight:400;font-size:1.4rem;color:var(--head)}
.order-list span{color:var(--muted);font-size:1.02rem}
.hrs-call{margin:1.25rem 0 0;color:var(--muted)}
.hrs-call a{color:var(--head);text-underline-offset:3px;text-decoration-color:var(--fox)}
@media(max-width:860px){.hrs-grid{grid-template-columns:1fr}}

.hh-block{margin-top:1.75rem;padding:1.25rem 1.4rem;border:1px solid var(--fox);border-radius:var(--r);background:var(--bg)}
.hh-block .eyebrow{margin-bottom:.4rem}
.hh-every{margin:0 0 .6rem;font-family:var(--display);font-size:1.45rem;color:var(--head)}
.hh-days{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem 1.25rem}
.hh-days li{display:flex;flex-direction:column}
.hh-days b{font-weight:400;font-family:var(--label);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--fox-ink)}
.hh-days span{font-size:1.05rem}
#happy-hour .hh-block{max-width:40rem;margin:0 auto;text-align:center}
#happy-hour .hh-block .eyebrow{justify-content:center}
#happy-hour .hh-every{font-size:clamp(1.8rem,3.4vw,2.4rem)}
#happy-hour .hh-days{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:1rem}
@media(max-width:600px){#happy-hour .hh-days{grid-template-columns:repeat(2,minmax(0,1fr))}}
.page-head .fine .gf{margin-right:.35rem;vertical-align:.12em}
.item .opts{text-transform:none;letter-spacing:.04em;font-family:var(--body);font-style:italic;font-size:.98rem}
.gf{flex:none;align-self:center;display:inline-block;font-family:var(--label);font-size:.58rem;letter-spacing:.12em;line-height:1;padding:.3rem .4rem .24rem;border:1px solid var(--fox);border-radius:3px;color:var(--fox-ink)}
.callout{max-width:40rem;margin:2.25rem auto 0;padding:1.1rem 1.4rem;border:1px solid var(--fox);border-radius:var(--r);text-align:center;background:var(--card)}
.callout strong{display:block;font-family:var(--label);font-weight:400;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fox-ink);margin-bottom:.4rem}
.callout p{margin:0;color:var(--muted);font-size:1.05rem}
@media(max-width:600px){.rhero .eyebrow{font-size:.6rem;letter-spacing:.16em;gap:.6rem}.rhero .eyebrow::before{width:1.4rem}.rhero-fig figcaption{right:1rem;font-size:.55rem}}
/* menus page: the restaurant bar scrolls away; the section bar pins under the main header */
.subnav.static{position:relative;top:auto}
.menu-jump{z-index:15;max-width:none;margin-left:calc(-1 * var(--pad));margin-right:calc(-1 * var(--pad));padding-left:var(--pad);padding-right:var(--pad);background:rgba(245,238,227,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.menu-jump a[aria-current]{background:var(--head);border-color:var(--head);color:var(--bg)}
.menu-jump a{transition:background .25s,color .25s,border-color .25s}
.msec{scroll-margin-top:calc(var(--hh) + var(--sa) + 5rem)}

/* ===== Farm events ===== */
.doors-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
.door-txt strong{font-size:clamp(1.2rem,1.65vw,1.55rem)}
@media(max-width:1100px){.doors-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.doors-grid{grid-template-columns:1fr}}
.whats-on{margin-top:clamp(4rem,9vw,7rem)}
.won small{line-height:1.5}

.ehero{position:relative;min-height:min(62svh,34rem);display:flex;align-items:flex-end;color:var(--cream);background:var(--deep);overflow:hidden;isolation:isolate}
.ehero-img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 55%;animation:kb 14s ease-out both}
.ehero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(12,10,8,.88) 0%,rgba(12,10,8,.35) 50%,rgba(12,10,8,.2) 100%)}
.ehero-copy{padding-top:calc(var(--hh) + 4rem);padding-bottom:clamp(2.5rem,6vw,4rem)}
.ehero-copy>*{animation:rise 1s var(--ease) both}.ehero-copy>:nth-child(2){animation-delay:.12s}.ehero-copy>:nth-child(3){animation-delay:.24s}
.ehero .eyebrow{color:var(--fox-soft)}
.ehero h1{color:var(--cream);font-size:clamp(2.6rem,6vw,5rem);line-height:1.02;margin:0 0 .9rem}
.ehero .sub{font-size:clamp(1.15rem,1.6vw,1.4rem);max-width:34rem;margin:0;opacity:.92}

.spot{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;padding-top:clamp(3.5rem,7vw,5.5rem);scroll-margin-top:calc(var(--hh) + 1rem)}
.spot-fig{position:relative}
.spot-fig img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r)}
.spot-fig .dtile{position:absolute;left:-1rem;top:-1rem;box-shadow:0 18px 30px -18px rgba(0,0,0,.5)}
.spot h2{font-size:clamp(2.8rem,5.5vw,4.4rem);line-height:1;margin-bottom:.5rem}
.spot-when{font-family:var(--label);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--fox-ink);margin:0 0 1.25rem}
.spot .lede{margin-bottom:1.25rem}
.spot-list{list-style:none;margin:0 0 1.25rem;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.1rem 1.5rem}
.spot-list li{padding:.5rem 0 .5rem 1.1rem;border-bottom:1px dotted var(--line);position:relative}
.spot-list li::before{content:"";position:absolute;left:0;top:1.05rem;width:.4rem;height:.4rem;border:1px solid var(--fox);transform:rotate(45deg)}
.spot-price{font-family:var(--display);font-size:1.4rem;color:var(--head);margin:0 0 1.5rem}
.spot[data-anim] .spot-fig img{transition:clip-path 1.3s cubic-bezier(.65,0,.25,1),transform 1.8s var(--ease);clip-path:inset(0 0 0 0 round var(--r))}
.spot[data-anim].pre .spot-fig img{clip-path:inset(0 100% 0 0 round var(--r));transform:scale(1.08)}
.spot[data-anim] .spot-copy>*{transition:opacity .9s var(--ease),transform 1s var(--ease)}
.spot[data-anim].pre .spot-copy>*{opacity:0;transform:translateY(22px)}
.spot[data-anim] .spot-copy>:nth-child(2){transition-delay:.08s}.spot[data-anim] .spot-copy>:nth-child(3){transition-delay:.16s}.spot[data-anim] .spot-copy>:nth-child(4){transition-delay:.24s}.spot[data-anim] .spot-copy>:nth-child(5){transition-delay:.32s}.spot[data-anim] .spot-copy>:nth-child(n+6){transition-delay:.4s}
@media(max-width:860px){.spot{grid-template-columns:1fr}.spot-fig .dtile{left:.75rem;top:.75rem}}
@media(max-width:480px){.spot-list{grid-template-columns:1fr}}

.dtile{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:5.5rem;height:6rem;border-radius:var(--r);background:var(--fox);color:var(--on-fox);text-align:center;line-height:1;flex:none}
.dtile small{font-family:var(--label);font-size:.62rem;letter-spacing:.22em;text-transform:uppercase}
.dtile b{font-family:var(--display);font-weight:400;font-size:2.4rem;margin:.25rem 0 .2rem}
.dtile i{font-style:normal;font-family:var(--label);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;opacity:.85}
.dtile.tba b{font-size:1.6rem;letter-spacing:.05em}

.elist{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.erow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(1rem,3vw,2.25rem);align-items:center;padding:clamp(1.25rem,2.5vw,1.75rem) 0;border-bottom:1px solid var(--line);scroll-margin-top:calc(var(--hh) + 1rem)}
.erow .dtile{background:var(--card);color:var(--head);border:1px solid var(--line)}
.erow .dtile small,.erow .dtile i{color:var(--fox-ink)}
.erow-tag{margin:0 0 .2rem;font-family:var(--label);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fox-ink)}
.erow h3{font-size:clamp(1.6rem,2.6vw,2.1rem);margin-bottom:.25rem}
.erow-when{margin:0 0 .35rem;color:var(--head);font-size:1.05rem}
.erow-main p:last-child{margin:0;color:var(--muted)}
.erow-act{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end}
.erow-act:empty{display:none}
.elist[data-anim] .erow{transition:opacity .8s var(--ease),transform .9s var(--ease)}
.elist[data-anim].pre .erow{opacity:0;transform:translateY(20px)}
.elist[data-anim] .erow:nth-child(2){transition-delay:.1s}.elist[data-anim] .erow:nth-child(3){transition-delay:.2s}.elist[data-anim] .erow:nth-child(n+4){transition-delay:.3s}
.erow.past{display:none}
@media(max-width:700px){.erow{grid-template-columns:auto minmax(0,1fr)}.erow-act{grid-column:1/-1;justify-content:flex-start}}
.cards.five{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:1100px){.cards.five{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.cards.five{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:440px){.cards.five{grid-template-columns:1fr}}
.cta-band a{text-underline-offset:3px}
.ehero-copy{width:100%}
.spot{padding-left:var(--pad);padding-right:var(--pad)}
@media(min-width:1101px){.doors{max-width:calc(var(--max) + 8rem);padding-left:clamp(1.25rem,3vw,3rem);padding-right:clamp(1.25rem,3vw,3rem)}.door-txt{padding:.95rem 1rem 1.05rem}}
@media(min-width:1101px){.today{max-width:calc(var(--max) + 8rem);padding-left:clamp(1.25rem,3vw,3rem);padding-right:clamp(1.25rem,3vw,3rem)}}

/* ===== Cidery & Brewery ===== */
.rhero-fig>.ph{aspect-ratio:1/1;border-radius:var(--r)}
@media(max-width:860px){.rhero-fig>.ph{aspect-ratio:4/3}}
.brand-list{display:flex;flex-direction:column;gap:clamp(4rem,8vw,6rem);padding-top:clamp(3.5rem,7vw,5.5rem);padding-bottom:clamp(2rem,4vw,3rem)}
.brand{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.brand.flip{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
.brand.flip .brand-media{order:2}
.brand-media{display:block;border-radius:var(--r);overflow:hidden}
.bev-fig{margin:0;aspect-ratio:3/2;border-radius:var(--r);overflow:hidden}
.bev-fig img,.bev-fig .ph{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.brand-media:hover .bev-fig img,.brand-media:hover .bev-fig .ph{transform:scale(1.04)}
.brand-copy h2{margin-bottom:1rem}
.brand-copy h2 a{text-decoration:none}
.brand-copy h2 a:hover{color:var(--fox-ink)}
.chiplist{list-style:none;margin:0 0 1.5rem;padding:0;display:flex;flex-wrap:wrap;gap:.45rem}
.chiplist li{padding:.4rem .85rem;border:1px solid var(--line);border-radius:999px;background:var(--card);font-size:1rem}
.chiplist .more{color:var(--fox-ink);border-style:dashed;background:none}
.brand[data-anim] .bev-fig{transition:clip-path 1.3s cubic-bezier(.65,0,.25,1);clip-path:inset(0 0 0 0 round var(--r))}
.brand[data-anim].pre .bev-fig{clip-path:inset(100% 0 0 0 round var(--r))}
.brand[data-anim] .brand-copy>*{transition:opacity .9s var(--ease),transform 1s var(--ease)}
.brand[data-anim].pre .brand-copy>*{opacity:0;transform:translateY(22px)}
.brand[data-anim] .brand-copy>:nth-child(2){transition-delay:.08s}.brand[data-anim] .brand-copy>:nth-child(3){transition-delay:.16s}.brand[data-anim] .brand-copy>:nth-child(4){transition-delay:.24s}.brand[data-anim] .brand-copy>:nth-child(5){transition-delay:.32s}
@media(max-width:860px){.brand,.brand.flip{grid-template-columns:1fr}.brand.flip .brand-media{order:0}}

.lineup-group{margin-top:clamp(1.5rem,3vw,2.5rem)}
.pgrid{list-style:none;margin:1.25rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,14rem),1fr));gap:clamp(.6rem,1.2vw,1rem)}
.pcard{display:flex;flex-direction:column;justify-content:flex-end;gap:.35rem;min-height:9.5rem;padding:1.25rem 1.3rem;background:var(--card);border:1px solid var(--line);border-radius:var(--r);position:relative;overflow:hidden;transition:transform .4s var(--ease),border-color .3s,box-shadow .4s}
.pcard::after{content:"";position:absolute;right:-1.2rem;top:-1.5rem;width:5rem;height:7rem;background:var(--wheat) no-repeat center/contain;opacity:.16}
.pcard:hover{transform:translateY(-3px);border-color:var(--fox);box-shadow:0 18px 32px -24px rgba(0,0,0,.45)}
.pcard-tag{font-family:var(--label);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fox-ink)}
.pcard strong{font-family:var(--display);font-weight:400;font-size:1.6rem;line-height:1.1;color:var(--head)}
.pcard span:not(.pcard-tag){color:var(--muted);font-size:1rem}
.lineup-group[data-anim] .pcard{transition:opacity .7s var(--ease),transform .8s var(--ease),border-color .3s,box-shadow .4s}
.lineup-group[data-anim].pre .pcard{opacity:0;transform:translateY(18px)}
.lineup-group[data-anim] .pcard:nth-child(2){transition-delay:.05s}.lineup-group[data-anim] .pcard:nth-child(3){transition-delay:.1s}.lineup-group[data-anim] .pcard:nth-child(4){transition-delay:.15s}.lineup-group[data-anim] .pcard:nth-child(5){transition-delay:.2s}.lineup-group[data-anim] .pcard:nth-child(n+6){transition-delay:.25s}
div.mcard{cursor:default}
.door:nth-child(6){animation-delay:.75s}
/* brand logos */
.logo-panel{display:grid;place-items:center;background:var(--card);border:1px solid var(--line);position:relative;overflow:hidden}
.logo-panel::after{content:"";position:absolute;right:-2rem;bottom:-3rem;width:12rem;height:16rem;background:var(--wheat) no-repeat center/contain;opacity:.12;pointer-events:none}
.logo-panel .brand-logo{width:58%;max-width:22rem;height:auto;max-height:70%;object-fit:contain;position:relative;z-index:1;transition:transform 1s var(--ease)}
.brand-media:hover .logo-panel .brand-logo{transform:scale(1.04)}
.rhero-fig.logo-panel{aspect-ratio:1/1;border-radius:var(--r);box-shadow:0 40px 70px -45px rgba(0,0,0,.35)}
.rhero-fig.logo-panel .brand-logo{width:66%}
@media(max-width:860px){.rhero-fig.logo-panel{aspect-ratio:4/3}}
.bev-fig,.rhero-fig{position:relative}
.logo-badge{position:absolute;left:1rem;bottom:1rem;z-index:2;display:grid;place-items:center;width:clamp(6.5rem,12vw,8.5rem);aspect-ratio:1/1;padding:.9rem;border-radius:50%;background:var(--card);box-shadow:0 14px 28px -14px rgba(0,0,0,.5)}
.logo-badge .brand-logo{width:100%;height:100%;object-fit:contain}
.logo-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-family:var(--display);font-size:clamp(1.4rem,2.6vw,2.2rem);line-height:1.1;color:var(--head);padding:1rem;border:1px dashed var(--fox);border-radius:var(--r)}
.logo-ph small{display:block;margin-top:.5rem;font-family:var(--label);font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fox-ink)}
.logo-badge .logo-ph{border-radius:50%;font-size:.85rem;padding:.4rem;width:100%;height:100%}
.logo-badge .logo-ph small{font-size:.5rem;margin-top:.2rem}
.logo-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.6rem,1.5vw,1.25rem);padding-top:clamp(2.5rem,5vw,3.5rem)}
.logo-row a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem;min-height:9.5rem;padding:1.4rem 1rem 1.1rem;background:var(--card);border:1px solid var(--line);border-radius:var(--r);text-decoration:none;transition:transform .4s var(--ease),border-color .3s,box-shadow .4s}
.logo-row a:hover{transform:translateY(-3px);border-color:var(--fox);box-shadow:0 18px 32px -24px rgba(0,0,0,.45)}
.logo-row .row-logo{height:4.5rem;width:auto;max-width:85%;object-fit:contain}
.logo-row .logo-ph{height:4.5rem;font-size:1.1rem;border-radius:4px;padding:.4rem .8rem}
.logo-row .logo-ph small{font-size:.5rem;margin-top:.25rem}
.logo-row span:not(.logo-ph){font-family:var(--label);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fox-ink)}
@media(max-width:700px){.logo-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
.logo-row a{animation:rise .8s var(--ease) both}
.logo-row a:nth-child(2){animation-delay:.08s}.logo-row a:nth-child(3){animation-delay:.16s}.logo-row a:nth-child(4){animation-delay:.24s}
.rhero-fig.logo-panel{overflow:visible}
.rhero-fig.logo-panel::after{display:none}
.rhero-fig.logo-panel img.brand-logo{width:66%;height:auto;max-height:70%;aspect-ratio:auto;object-fit:contain;box-shadow:none;border-radius:0}
.brand-media{text-decoration:none}
.rhero-fig.logo-panel::before{display:none}
.logo-badge{width:clamp(8rem,15vw,11rem);aspect-ratio:auto;border-radius:var(--r);padding:.75rem}
.rhero-fig .logo-badge img.brand-logo{aspect-ratio:auto;height:auto;box-shadow:none;border-radius:0;object-fit:contain}

/* ===== product can cards ===== */
.pgrid{grid-template-columns:repeat(auto-fill,minmax(min(100%,13.5rem),1fr));gap:clamp(.75rem,1.4vw,1.25rem)}
.pcard{display:flex;flex-direction:column;justify-content:flex-start;gap:0;min-height:0;padding:0;overflow:visible;background:var(--card)}
.pcard::after{display:none}
.pcard-stage{position:relative;display:grid;place-items:end center;height:clamp(15rem,22vw,18rem);padding:1.6rem 1rem .9rem;border-radius:var(--r) var(--r) 0 0;overflow:hidden;
  background:radial-gradient(70% 55% at 50% 42%,rgba(255,255,255,.75) 0%,rgba(255,255,255,0) 70%),linear-gradient(180deg,var(--bg2) 0%,var(--card) 100%)}
.pcard-stage::before{content:"";position:absolute;right:-1.4rem;top:-1.6rem;width:5.5rem;height:7.5rem;background:var(--wheat) no-repeat center/contain;opacity:.14}
.can-img{position:relative;z-index:2;display:block;height:100%;width:auto;max-width:72%;object-fit:contain;transform:translateY(0) rotate(0);transition:transform .6s cubic-bezier(.34,1.56,.64,1);will-change:transform}
.can-shadow{position:absolute;z-index:1;left:50%;bottom:.55rem;width:46%;height:.9rem;transform:translateX(-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(40,25,15,.32),rgba(40,25,15,0));transition:transform .6s cubic-bezier(.34,1.56,.64,1),opacity .6s}
.pcard-txt{display:flex;flex-direction:column;gap:.3rem;padding:1rem 1.15rem 1.2rem;border-top:1px solid var(--line)}
.pcard-txt strong{font-size:1.45rem}
.pcard:hover{transform:none;box-shadow:0 22px 40px -28px rgba(0,0,0,.5)}
.pcard:hover .can-img{transform:translateY(-14px) rotate(-3deg)}
.pcard:hover .can-shadow{transform:translateX(-50%) scale(.7);opacity:.55}
@media (hover:hover){.pcard:hover .can-img{animation:canfloat 2.6s ease-in-out .6s infinite}}
@keyframes canfloat{0%,100%{transform:translateY(-14px) rotate(-3deg)}50%{transform:translateY(-22px) rotate(-1deg)}}
/* products we don't have a can render for yet */
.can-ph{position:relative;z-index:2;display:grid;place-items:center;height:88%;aspect-ratio:340/620;border-radius:14% 14% 10% 10%/7% 7% 5% 5%;border:1px dashed var(--fox);background:linear-gradient(90deg,rgba(255,255,255,.5),rgba(255,255,255,0) 40%,rgba(0,0,0,.04));transition:transform .6s cubic-bezier(.34,1.56,.64,1)}
.can-ph span{font-family:var(--label);font-size:.55rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fox-ink);writing-mode:vertical-rl;transform:rotate(180deg)}
.pcard:hover .can-ph{transform:translateY(-10px)}
@media (prefers-reduced-motion:reduce){.pcard:hover .can-img,.pcard:hover .can-ph{animation:none;transform:none}}
.logo-row{grid-template-columns:repeat(var(--n,4),minmax(0,1fr))}@media(max-width:700px){.logo-row{grid-template-columns:repeat(2,minmax(0,1fr))}.logo-row a:last-child:nth-child(odd){grid-column:1/-1}}
/* can sizing: the can always fits its stage (height-led), at every width */
.pcard-stage{display:flex;align-items:flex-end;justify-content:center;height:clamp(13rem,21vw,18rem)}
.can-img{height:100%;width:auto;max-width:none;max-height:100%;flex:none}
@media(max-width:700px){
  .pgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
  .pcard-stage{height:clamp(11.5rem,52vw,15rem);padding:1.1rem .5rem .7rem}
  .pcard-txt{padding:.75rem .8rem .9rem}
  .pcard-txt strong{font-size:1.15rem}
  .pcard-tag{font-size:.52rem;letter-spacing:.16em}
  .can-shadow{bottom:.35rem}
}
@media(max-width:340px){.pcard-stage{height:10rem}}
/* brand page header: smaller logo panel with the buttons underneath */
.bhero-side{display:flex;flex-direction:column;align-items:center;gap:1.25rem;justify-self:end;width:100%;max-width:24rem;animation:rise 1.1s var(--ease) .15s both}
.bhero-side .rhero-fig.bhero-fig{max-width:none;justify-self:auto;aspect-ratio:4/3;animation:none}
.bhero-side .rhero-fig.bhero-fig img.brand-logo{width:70%;max-height:62%}
.bhero-side .actions{justify-content:center;width:100%}
.bhero-side .actions .btn{flex:1 1 auto}
@media(max-width:860px){.bhero-side{justify-self:stretch;max-width:26rem;margin:0 auto}.bhero-side .rhero-fig.bhero-fig{aspect-ratio:16/10}}
@media(max-width:760px){.bhero-side .actions{flex-wrap:nowrap}.bhero-side .actions .btn{flex:1 1 0;padding-left:.6rem;padding-right:.6rem;white-space:nowrap}}
