/* Keep the hero action in document flow: content, not a viewport formula,
   determines the bottom of the section. Preserve the existing layered artwork. */
@media(max-width:700px){
 .hero.hero-v2{height:auto;min-height:0;max-height:none;padding:calc(180px + 100vw) var(--edge) max(32px,env(safe-area-inset-bottom));}
 .hero-v2 .hero-copy{position:relative;inset:auto;width:100%;max-width:none;margin:0}
 .hero-v2 .hero-copy p{font-size:18px;white-space:normal;line-height:1.35;margin:0 0 20px}
 .hero-v2 .hero-copy .btn{min-height:52px;height:auto;font-size:13px;line-height:1.4;padding:16px 18px;white-space:normal;width:100%}
}
/* Tablet: keep the action inside the photograph, with room reserved for it. */
@media(min-width:701px) and (max-width:900px){
 .hero.hero-v2{height:auto;min-height:66.6667vw;max-height:none;padding:44vw var(--edge) 28px}
 .hero-v2 .scene{height:100%;object-fit:cover}
 .hero-v2 h1{top:7%;font-size:18vw}
 .hero-v2::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(35deg,rgba(32,45,24,.65),transparent 55%)}
 .hero-v2 .hero-copy{position:relative;inset:auto;width:48%;max-width:none;margin:0}
 .hero-v2 .hero-copy p{font-size:18px;line-height:1.35;white-space:normal;margin-bottom:18px}
 .hero-v2 .hero-copy .btn{min-height:52px;height:auto;max-width:100%;font-size:12px;padding:15px 18px;line-height:1.4;white-space:normal}
}
/* Do not squeeze venue names and actions into three narrow tablet columns. */
@media(min-width:601px) and (max-width:900px){
 .partners .venue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .partners .venue-card{display:flex;flex-direction:column}
 .partners .venue-card-copy{display:flex;flex-direction:column;align-items:flex-start;flex:1}
 .partners .venue-card-copy .btn{margin-top:auto}
}
/* Cover tall desktop windows as well as wide ones. Both scene layers share
   the same 3:2 geometry, so the foreground mask stays aligned. */
@media(min-width:901px){
 .hero-v2 .scene{inset:auto;top:50%;left:50%;height:max(100%,66.666667vw);width:auto;aspect-ratio:3 / 2;max-width:none;transform:translate(-50%,-50%);object-fit:fill}
}
/* Keep the counter inline with its brackets, matching the animated label. */
@media(min-width:901px){
body .header .header-order{display:inline-block;line-height:18px;text-align:center;--fill-bg:var(--rust);--fill-text:var(--cream);isolation:isolate}
body .header .header-order [data-cart-count]{margin:0;font-variant-numeric:tabular-nums}
body .header .header-order:hover,body .header .header-order:focus-visible{background:transparent;color:#354832;transform:none}
body .header .header-order .btn-fill{border-radius:inherit;font-variant-numeric:tabular-nums}

}

/* Native scrollbars share the menu category slider's terracotta token. */
:root{scrollbar-color:var(--rust) var(--paper)}
*::-webkit-scrollbar{width:12px;height:12px}
*::-webkit-scrollbar-track{background:var(--paper)}
*::-webkit-scrollbar-thumb{background:var(--rust);border:3px solid var(--paper);border-radius:12px}
*::-webkit-scrollbar-corner{background:var(--paper)}
@media(forced-colors:active){:root{scrollbar-color:auto}}
