/* Bravado site stylesheet: the one file every page loads (2026-09-30). Page-specific rules are scoped with :where(html.pg-*), which adds no specificity; the pg-* class sits on each page's <html>. */

/* ===== style ===== */
@font-face{font-family:Bungee;src:url('assets/bungee.woff2') format('woff2');font-weight:400;font-display:swap}
ul>li::marker{content:url("assets/bravado-flame-marker.svg") " ";color:var(--red);font-family:Arial,sans-serif;font-size:1em;font-weight:400}
:root{--cream:#e3ded6;--light:#f0ebe5;--ink:#231f20;--red:#b93228;--mustard:#dda544;--display:Bungee,'Arial Black',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'Arial Rounded MT Bold',Arial,sans-serif;font-size:16px;line-height:1.5}img{display:block;max-width:100%;object-fit:cover}a{color:inherit;text-underline-offset:5px}button,
a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a:focus-visible,
button:focus-visible,
summary:focus-visible{outline:3px solid currentColor;outline-offset:5px}h1,
h2,
h3,
p{margin:0}h1,
h2,
h3{font-family:var(--display);font-weight:400;line-height:1.13;text-transform:uppercase}h2{font-size:clamp(28px,3.2vw,46px)}.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:12px 23px;background:var(--red);color:#fff7ef;border:1px solid var(--red);border-radius:7px;font-size:14px;line-height:1.3;text-transform:uppercase;text-decoration:none;transition:background .2s,transform .2s}.button:hover{background:#92271f;transform:translateY(-2px)}.button.outline{background:transparent;border-color:#fff7ef}.button.outline:hover{background:#fff7ef;color:var(--ink)}.button.dark-outline{color:var(--red);border-color:var(--red)}.skip-link{position:fixed;top:-100px;left:10px;z-index:50;background:white;padding:12px}.skip-link:focus{top:10px}.preview-bar{min-height:33px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 24px;background:var(--ink);color:var(--cream);font-size:11px;letter-spacing:1.4px}.preview-bar button{border:0;background:none;color:inherit;font-size:12px;letter-spacing:0}.hero{position:relative;min-height:620px;height:78vh;max-height:950px;color:#fff7ef;isolation:isolate}.hero-poster,
.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-poster{object-position:center 55%}.hero-shade{z-index:-1;background:linear-gradient(180deg,rgba(20,15,10,.26),rgba(20,15,10,.40) 40%,rgba(20,15,10,.45))}.site-header{position:absolute;top:24px;left:4%;right:4%;height:77px;display:flex;align-items:center;justify-content:space-between;padding:10px 23px;background:var(--light);border-radius:60px;color:var(--ink)}.wordmark{width:112px;display:block}.wordmark img{width:100%;height:auto}.site-header nav{display:flex;gap:32px}.site-header nav a{text-decoration:none;font-size:14px}.site-header nav a:hover{text-decoration:underline}.site-header .small{border-radius:30px}.hero-copy{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:110px 24px 60px}.hero h1{font-size:clamp(54px,7.5vw,118px);line-height:.99;letter-spacing:-2px;max-width:1100px;text-shadow:0 2px 20px #0002}.hero-copy>p{font-size:clamp(17px,2.2vw,32px);text-transform:uppercase;line-height:1.25;margin-top:20px}.hero-actions{display:flex;gap:16px;justify-content:center;margin-top:36px}.video-note{position:absolute;bottom:20px;right:24px;font-size:11px;letter-spacing:1px;padding:6px 10px;background:#231f20b8;border-radius:3px}.ingredient-band{align-items:center;white-space:nowrap;min-height:74px;border-bottom:1px solid var(--red);color:var(--red);font-family:var(--display);font-size:clamp(14px,1.55vw,23px)}.ingredient-band b{color:#a46815}.menu-section{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:45px;padding:100px 3%;max-width:1680px;margin:auto;align-items:center}.capsules{display:grid;grid-template-columns:1fr 1fr;gap:26px 22px}.capsules a{position:relative;display:block;aspect-ratio: .61;overflow:hidden;border-radius:999px}.capsules img{width:100%;height:100%;transition:transform .3s}.capsules a:hover img{transform:scale(1.04)}.capsules a:focus-visible{outline-color:var(--red)}.capsules a span{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);font-size:12px;white-space:nowrap;padding:5px 9px;background:#231f20c9;border-radius:20px;color:white}.crop-bottom{object-position:50% 90%}.menu-copy{text-align:center}.menu-copy h2{font-size:clamp(22px,2.5vw,40px);line-height:1.5}.menu-copy h2 a{text-decoration-thickness:2px}.menu-copy>.button{margin-top:28px}.brand-seal{margin:60px auto 0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;border:2px solid var(--mustard);border-radius:50%;width:192px;height:192px;padding:20px;color:#8c5509;text-transform:uppercase;font-family:var(--display);font-size:12px;line-height:1.3}.brand-seal img{width:120px;height:auto}.reservation{background:var(--light);padding:90px 30px}.reservation-inner{max-width:1000px;margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}.reservation-image{width:100%;height:470px;border-radius:24px}.reservation-copy h2{font-size:clamp(30px,3vw,43px)}.eyebrow{font-family:var(--display);font-size:15px;margin-top:24px}.reservation-rule{height:1px;background:#c9c0b7;margin:22px 0 28px}.reservation-copy h3{font-size:25px;line-height:1.4}.reservation-copy>p:not(.eyebrow){margin-top:20px;max-width:400px;line-height:1.6}.reservation-copy .button{margin-top:28px}.destination-note{display:block;font-size:13px;margin-top:12px;color:#61574d}.proof{display:grid;grid-template-columns:1fr 1fr}.reviews-column{background:var(--cream)}.proof-inner{max-width:470px;margin:auto;padding:80px 40px 95px}.proof h2{font-size:clamp(30px,3.2vw,45px)}.sample-label{font-size:12px;line-height:1.4;margin:15px 0 40px;max-width:320px}.vertical-stack{display:flex;flex-direction:column;gap:38px;width:100%;max-width:380px}.quote-card,
.press-card{display:block;border-radius:22px;background:#f0e7d2;padding:25px 25px 22px;transform:rotate(-3deg);text-decoration:none}.quote-card:nth-child(2){transform:rotate(3deg)}.press-card{background:var(--light);transform:rotate(3deg);transition:transform .2s}.press-card:nth-child(2){transform:rotate(-3deg)}.press-card:hover{transform:rotate(0)}.card-label{font-size:10px;letter-spacing:1px;display:block;margin-bottom:10px}.sample-stars{color:#aa2d24;letter-spacing:3px;font-size:22px}.quote-card blockquote{margin:14px 0;font-size:16px;line-height:1.5}.card-footnote{font-size:11px;line-height:1.4;color:#655a4d}.press-card h3{font-size:19px;line-height:1.4}.press-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;margin-top:20px}.press-bottom b{font-size:25px}.order-band{background:var(--red);color:var(--light);position:relative;padding:27px 0 24px;border-bottom:1px solid #ffffff35}.marquee-window{overflow:hidden}.marquee-track{display:flex;width:max-content;animation:marquee 50s linear infinite}.marquee-group{display:flex;align-items:center;gap:35px;flex-shrink:0;padding-right:35px;white-space:nowrap;font-family:var(--display);font-size:clamp(23px,3vw,43px)}.marquee-group a{text-decoration:none}.marquee-group a:hover{text-decoration:underline}.marquee-group>span{color:#e8bdb0;font-size:34px}.order-band:hover .marquee-track{animation-play-state:paused}.order-band:focus-within .marquee-track,
.order-band.paused .marquee-track{animation:none;transform:none}.order-band:focus-within .marquee-window,
.order-band.paused .marquee-window{overflow-x:auto;padding:8px 20px}.marquee-toggle{display:block;margin:14px auto 0;background:transparent;border:0;color:var(--light);font-size:12px;text-decoration:underline;text-underline-offset:3px}@keyframes marquee{to{transform:translateX(-50%)}}.social{background:var(--red);color:var(--light);text-align:center;padding:64px 0 85px}.social h2{font-size:40px}.social-links{display:flex;justify-content:center;flex-wrap:wrap;gap:16px;margin:30px 20px 45px}.social-links a{font-size:14px;padding:10px 15px;background:#7a1b184a;border-radius:6px;text-decoration:none}.social-links a:hover{background:#7a1b187a}.social-gallery{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.social-gallery img{width:100%;height:260px;border-radius:10px}.faq{display:grid;grid-template-columns:1fr 1fr;gap:70px;max-width:1130px;margin:auto;padding:90px 30px}.faq-intro>p{margin:24px 0}.faq-list details{padding:16px 20px;background:var(--light);margin-bottom:12px;border-radius:9px}.faq-list summary{font-family:var(--display);font-size:14px;cursor:pointer;position:relative;padding-right:24px;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:0;font-size:20px}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:15px;line-height:1.55;margin:12px 0 4px}footer{padding:64px 8% 22px;background:var(--ink);color:var(--light)}.footer-logo{display:block;margin:0 auto 44px}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:45px;max-width:1100px;margin:0 auto 50px}.footer-grid h3{font-size:17px;margin-bottom:16px}.footer-grid a{display:block;margin:5px 0;text-decoration:none}.footer-grid a:hover{text-decoration:underline}.footer-grid p,
.footer-grid a{font-size:14px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:12px;border-top:1px solid #ffffff25;padding-top:20px;max-width:1100px;margin:auto}dialog{border:0;border-radius:16px;background:var(--light);color:var(--ink);width:min(560px,calc(100% - 32px));padding:30px;max-height:85vh;overflow:auto}dialog::backdrop{background:#100b08a8}.dialog-heading{display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:1px;margin-bottom:20px}.dialog-heading button{background:none;border:0;font-size:28px;line-height:1}dialog h2{font-size:27px;line-height:1.25}#dialog-body{margin:20px 0 26px}#dialog-body p+p{margin-top:14px}#dialog-body li{margin:10px 0}body:has(dialog[open]){overflow:hidden}
@media(min-width:1600px){.menu-section{gap:60px}.reservation-inner{max-width:1200px}.reservation-image{height:600px}.proof-inner{max-width:560px}.vertical-stack{max-width:400px}}
@media(max-width:1000px){.menu-section{gap:24px;padding:70px 24px}.capsules{gap:14px}.brand-seal{width:145px;height:145px;margin-top:36px;font-size:10px;padding:20px}.brand-seal img{width:85px}.reservation-inner{gap:35px}.proof-inner{padding:60px 35px 75px}.social-gallery{gap:10px}.social-gallery img{height:180px}.faq{gap:35px}.hero{min-height:580px}.site-header nav{gap:20px}}
@media(max-width:700px){.preview-bar{padding:7px 12px;font-size:9px;letter-spacing:.7px}.wordmark{width:91px}.site-header nav{display:none}.site-header .small{font-size:12px;padding:10px 15px}.hero-actions{gap:10px;margin-top:26px}.button{font-size:12px;padding:12px 16px}.video-note{right:auto}.menu-section{grid-template-columns:1fr 1fr;gap:24px 18px}.menu-copy{grid-column:1/-1;grid-row:1}.brand-seal{margin:28px auto}.capsules{gap:12px}.capsules a{aspect-ratio:.62}.capsules a span{font-size:9px;bottom:18px;padding:4px 6px}.reservation{padding:52px 24px}.reservation-inner{display:flex;flex-direction:column-reverse;gap:30px}.reservation-copy{width:100%;text-align:center}.reservation-copy h2{font-size:32px}.reservation-copy h3{font-size:22px}.reservation-copy>p:not(.eyebrow){margin:18px auto 0}.reservation-image{height:340px;border-radius:16px;max-width:460px}.proof{grid-template-columns:1fr}.proof-inner{max-width:450px;padding:50px 35px 65px}.proof h2{font-size:32px}.sample-label{margin-bottom:30px}.vertical-stack{max-width:none;gap:30px}.quote-card,
.press-card{padding:24px}.quote-card blockquote{font-size:16px}.press-card h3{font-size:18px}.social{padding:45px 0 50px}.social h2{font-size:30px}.social-links{flex-direction:column;max-width:285px;margin:25px auto 35px;gap:10px}.social-gallery{grid-template-columns:repeat(3,1fr);padding:0 12px;gap:10px}.social-gallery img{height:170px}.faq{grid-template-columns:1fr;padding:52px 24px;gap:30px}.faq-intro h2{font-size:32px}.faq-intro>p{margin:20px 0}.faq-list details{padding:15px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px}footer{padding:50px 24px 20px}dialog{padding:24px}dialog h2{font-size:24px}}
.faq-list summary{min-height:44px;display:flex;align-items:center}.faq-list summary:after{top:7px}.site-header .small{min-height:44px}.proof .vertical-stack{max-width:380px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,
*:before,
*:after{animation:none!important;transition:none!important}.marquee-window{overflow-x:auto;padding:8px 20px}.marquee-group[data-copy]{display:none}}
/* Figma desktop frame measurements, 2026-09-14. Font identity and seal export pending. */
@media (min-width:701px){
.hero{height:auto;min-height:0;max-height:none;aspect-ratio:1920/992}
.site-header{top:7.862903%;left:16.354167%;right:auto;width:67.291667%;height:6.048387%;padding:0 4.166667vw;border:1px solid #231f20;border-radius:.729167vw;background:#fff;display:flex;justify-content:space-between}
.site-header nav{display:flex;align-items:center;gap:1.666667vw;height:100%}
.site-header nav a{font-size:.833333vw;line-height:1;white-space:nowrap;text-transform:uppercase;font-weight:400;position:relative}
.site-header nav a:before{content:'';position:absolute;inset:-14px -4px}
.site-header .wordmark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center}
.site-header .small{min-height:0;height:2.083333vw;width:8.020833vw;padding:0;gap:.416667vw;border-radius:.625vw;font-size:.729167vw;transform:none}
.site-header .private-dining-button{width:auto;min-width:10.5vw;padding:0 .75vw}
.hero-copy{position:absolute;inset:0;padding:0;display:block}
.hero h1{position:absolute;left:0;width:100%;max-width:none;line-height:.92;letter-spacing:0;text-shadow:none}
.hero-copy>p{position:absolute;left:0;top:67.1371%;width:100%;margin:0;font-size:2.5vw;line-height:1.2}
.hero-actions{position:absolute;left:0;right:0;top:78.427419%;margin:0;gap:1.666667vw}
.hero-actions .button{height:2.5vw;min-height:0;padding:0;width:8.541667vw;font-size:.833333vw;border-radius:.416667vw;position:relative;transform:none}
.hero-actions .button+ .button{width:9.166667vw}
.hero-actions .button:before{content:'→';margin-right:.416667vw}
.hero-actions .button:after{content:'';position:absolute;inset:-8px 0}
.ingredient-band{height:6.666667vw;min-height:0;font-size:1.666667vw}
.ingredient-band span{flex-shrink:0}.ingredient-band b{font-size:1.25vw}
.menu-section{max-width:none;width:100%;grid-template-columns:552fr 640fr 552fr;gap:2.083333vw;padding:8.333333vw 2.5vw}
.capsules{gap:2.083333vw 1.875vw}.capsules a{aspect-ratio:260/428}
.menu-copy h2{font-size:2.604167vw;line-height:1.45}
.menu-copy>.button{margin-top:2.916667vw;min-height:0;height:2.5vw;padding:0 1.25vw;font-size:.833333vw;border-radius:.416667vw}
.brand-seal{margin-top:6.041667vw;width:15.625vw;height:15.625vw;font-size:1.041667vw;padding:1.5625vw}
.brand-seal img{width:9.895833vw}
.reservation{padding:7.8125vw 16.354167vw}
.reservation-inner{max-width:none;grid-template-columns:552fr 660fr;gap:4.166667vw}
.reservation-image{height:36.458333vw;border-radius:1.5625vw}
.reservation-copy h2{font-size:3.125vw}
.proof-inner{max-width:none;margin:0;padding:7.8125vw 5.208333vw 9.375vw 16.354167vw}
.press-column .proof-inner{padding-left:5.625vw;padding-right:16.354167vw}
.proof h2{font-size:3.125vw}
.proof .vertical-stack{max-width:none;width:27.083333vw;gap:4.166667vw}
.quote-card,
.press-card{border-radius:1.5625vw;padding:2.083333vw 2.5vw}
.quote-card blockquote{font-size:1.041667vw}.press-card h3{font-size:1.25vw}
}
.mobile-menu-toggle,
.mobile-hero-actions{display:none}.site-header .mobile-navigation[hidden]{display:none}
@media(min-width:701px){.hero-actions .button{gap:.416667vw}.hero h1{font-size:5.833333vw;top:44.65%}.site-header .mobile-navigation{display:none}}
@media(max-width:700px){
.hero{aspect-ratio:402/482;height:auto;min-height:0;max-height:none}
.site-header{top:5.809129%;left:4.975124%;right:auto;width:90.049751%;height:5.809129%;padding:0;border-radius:1.243781vw;background:#fff;border:1px solid var(--ink)}
.site-header .nav-left,
.site-header .nav-right{display:none}
.site-header .wordmark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center}
.mobile-menu-toggle{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:3px;background:none;border:0;padding:12px}
.mobile-menu-toggle span{display:block;width:16px;height:1px;background:var(--ink)}
.site-header .mobile-navigation:not([hidden]){position:absolute;right:0;top:calc(100% + 16px);z-index:10;display:flex;flex-direction:column;align-items:stretch;gap:0;height:auto;padding:10px;background:#fff;border:1px solid var(--ink);border-radius:8px}
.site-header .mobile-navigation a{font-size:14px;display:flex;min-height:44px;align-items:center;padding:8px 12px;text-transform:uppercase}
.site-header .mobile-navigation .private-dining-button{justify-content:center;margin:4px 8px;width:auto;min-height:40px;padding:8px 12px}
.hero-copy{position:absolute;inset:0;display:block;padding:0}
.hero h1{position:absolute;top:54.5%;left:0;width:100%;font-size:10.447761vw;line-height:.95;letter-spacing:0}
.hero-copy>p{position:absolute;top:73%;left:0;width:100%;max-width:none;font-size:3.9801vw;line-height:1.2;margin:0}
.hero-actions{display:none}
.mobile-hero-actions{position:absolute;left:0;right:0;display:flex;justify-content:center}
.mobile-hero-actions .button{height:8.457711vw;min-height:0;padding:0 2.487562vw;font-size:2.985075vw;border-radius:1.243781vw;position:relative}
.mobile-hero-actions .button:after{content:'';position:absolute;inset:-8px 0}
.video-note{font-size:8px;letter-spacing:.3px;bottom:6px;left:10px;padding:3px 5px}
.ingredient-band{height:16.41791vw;min-height:0;font-size:4.228856vw}
.menu-section{display:block;padding:13.432836vw 5vw 12vw}
.menu-copy h2{font-size:7.960199vw;line-height:1.32}
.menu-copy>.button{height:8.457711vw;min-height:0;padding:0 4vw;font-size:2.985075vw;margin-top:8.955224vw}
.capsules{display:none}
.brand-seal{margin-top:13.432836vw;width:26.865672vw;height:26.865672vw;font-size:2vw;padding:3vw;gap:1vw}
.brand-seal img{width:18vw}
}
.site-header{z-index:5}
/* Approved white-plate seal: deliberately projects slightly above and below the menu bar. */
.site-header .wordmark{width:11.5625vw;height:7.291667vw;aspect-ratio:540 / 330;overflow:visible}
.site-header .wordmark img{position:static;width:100%;height:100%;max-width:100%;object-fit:contain}
@media(max-width:700px){.site-header .wordmark{width:28.358209vw;height:17.412935vw}}
.more-bravado{position:relative}
.more-bravado summary{cursor:pointer;list-style:none;text-transform:uppercase;font-weight:400;font-size:.833333vw;line-height:1;padding:14px 0;white-space:nowrap}
.more-bravado summary::-webkit-details-marker{display:none}
.more-bravado summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.more-bravado-links{position:absolute;top:100%;left:-14px;width:240px;padding:8px;background:#fff;border:1px solid var(--ink);border-radius:8px;box-shadow:0 8px 20px #0003;z-index:20}
.site-header .more-bravado-links a{display:flex;align-items:center;min-height:44px;padding:10px 12px;font-size:14px;line-height:1.2;white-space:normal;border-radius:4px}
.site-header .more-bravado-links a:before{content:none}
.site-header .more-bravado-links a:hover,
.site-header .more-bravado-links a:focus-visible{background:var(--cream);color:var(--ink)}
@media(max-width:700px){
.site-header .mobile-navigation:not([hidden]){width:260px;max-width:85vw;max-height:70vh;overflow-y:auto}
.more-bravado summary{display:flex;align-items:center;min-height:44px;padding:8px 12px;font-size:14px}
.more-bravado-links{position:static;width:auto;margin:0 0 8px 12px;padding:0 0 0 8px;border:0;border-left:2px solid var(--ink);border-radius:0;box-shadow:none}
}

/* Frame the supplied dark-background artwork, preserving the original PNG. */
.footer-logo{position:relative;width:min(320px,100%);aspect-ratio:745/420;overflow:hidden}
.footer-logo img{position:absolute;width:123.489933%;max-width:none;height:auto;left:-12.080537%;top:-15.476190%}

/* Homepage ingredient ticker copied from the live Bravado presentation. */
.ingredient-band{display:block;justify-content:initial;gap:0;padding:0;overflow:hidden}
.ingredient-track{display:flex;align-items:center;width:max-content;height:100%;animation:ingredient-scroll 52s linear infinite;will-change:transform}
.ingredient-group{--ingredient-gap:clamp(22px,2.1vw,42px);display:flex;flex:none;align-self:center;align-items:baseline;justify-content:flex-start;gap:var(--ingredient-gap);min-width:100vw;height:auto;padding:0 var(--ingredient-gap) 0 0;white-space:nowrap}
.ingredient-group span,
.ingredient-group b{flex:none}
.ingredient-group span{display:block;line-height:1}
.ingredient-group .bravado-flame{display:block;width:.667em;height:1em;margin:0;line-height:1;transform:translateY(1px)}
@keyframes ingredient-scroll{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.ingredient-band{overflow-x:auto}.ingredient-track{animation:none;transform:none;will-change:auto}.ingredient-group[aria-hidden="true"]{display:none}}
/* Homepage booking callout */
.hero-copy>.hero-booking-notes{display:none}
@media(min-width:701px){.hero-copy>.hero-booking-notes{top:83.2%;left:0;right:0;font-family:var(--display);letter-spacing:.035em;text-transform:uppercase}.hero-actions .hero-booking:before{content:'→';margin-right:.416667vw}}
@media(max-width:700px){.mobile-hero-actions{flex-direction:column;align-items:center}.mobile-hero-actions .hero-booking{min-height:0}.mobile-hero-actions .hero-booking-notes{display:block;margin:0;font-family:var(--display);letter-spacing:.035em;text-align:center;text-transform:uppercase}.mobile-hero-actions .hero-booking:before{content:'→';margin-right:1.2vw}}
/* Keep the booking button and supporting note as one evenly spaced unit. */
@media(min-width:701px){.hero-booking-cluster{position:absolute;top:78.427419%;left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:1vw}.hero-booking-cluster .hero-actions{position:static;margin:0}.hero-actions .hero-booking{width:9.166667vw;height:2.5vw;font-size:.833333vw}.hero-copy>.hero-booking-notes{position:static;display:block;margin:0;font-size:.65vw;line-height:1.55}}
@media(max-width:700px){.mobile-hero-actions{top:80%;gap:1.5vw}.mobile-hero-actions .hero-booking{height:8.457711vw;padding:0 2.487562vw;font-size:2.985075vw}.mobile-hero-actions .hero-booking-notes{font-size:1.7vw;line-height:1.55}}
/* Homepage only: preserve the existing header design while it follows page scroll. */
.hero:has(.home-header){z-index:100}.home-header{position:fixed;z-index:100}

/* Order now sits above Book now in the homepage hero on phone and tablet (Richie, 2026-09-30); desktop keeps it in the header.
   Same size as Book now with the colours swapped (cream fill, red text and border), so the two read as different jobs. */
.hero-order{background:#fff7ef;color:var(--red);border-color:var(--red)}
.hero-order:hover{background:var(--light);color:#92271f}
@media(min-width:1025px){.hero-actions .hero-order{display:none!important}}
/* Tablet: both hero buttons bigger (Richie, 2026-09-30), so the heading and subheading move up to make room. */
@media(min-width:701px) and (max-width:1024px){.hero h1{top:38.5%}.hero-copy>p{top:60.5%}.hero-booking-cluster{top:67%}.hero-booking-cluster .hero-actions{flex-direction:column;align-items:center;gap:.8vw}.hero-booking-cluster .hero-actions .hero-booking{width:20vw;height:4.7vw;font-size:1.7vw;border-radius:.9vw}.hero-booking-cluster .hero-booking-notes{font-size:1.5vw;line-height:1.4}}
/* Phone: lift the heading, subheading and buttons a little so both buttons and the booking note fit inside the hero.
   The desktop booking cluster is hidden on phone; its note was showing as stray text above the header. */
@media(max-width:700px){.mobile-hero-actions .hero-booking{width:29vw}.hero h1{top:50%}.hero-copy>p{top:68%}.mobile-hero-actions{top:74.5%}.hero-booking-cluster{display:none}}

/* ===== hero-video ===== */
.home-video .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;opacity:0;pointer-events:none}
.home-video .hero-video.is-ready{opacity:1}
.home-video .hero h1,
.home-video .hero-copy>p{text-shadow:0 2px 12px #0009}

/* ===== opening-popup ===== */
/* Soft-opening popup card: rules copied from bravado.kitchen live opening-gate.css (2026-09-24), popup-only. */

:root:where(.pg-home){
  --opening-cream:#e3ded6;
  --opening-ink:#231f20;
  --opening-red:#d9252a;
}

:where(html.pg-home) .opening-gate{
  position:absolute;
  inset:0;
  z-index:4;
  display:grid;
  place-items:center;
  min-height:620px;
  height:78vh;
  max-height:950px;
  padding:clamp(118px,10vw,180px) 24px 46px;
  pointer-events:none;
}

:where(html.pg-home) .opening-card{
  width:min(470px,calc(100vw - 40px));
  padding:clamp(26px,3.5vw,42px) clamp(24px,4vw,42px) clamp(24px,3vw,36px);
  border:1px solid rgba(227,222,214,.72);
  border-radius:22px;
  background:rgba(35,31,32,.94);
  color:var(--opening-cream);
  text-align:center;
  box-shadow:0 24px 80px rgba(0,0,0,.38);
  pointer-events:auto;
}

:where(html.pg-home) .opening-logo{
  position:relative;
  width:min(205px,62%);
  aspect-ratio:469/307;
  margin:0 auto 14px;
  overflow:hidden;
}

:where(html.pg-home) .opening-logo img{
  position:absolute;
  left:-162.473348%;
  top:-36.156352%;
  width:426.439232%;
  max-width:none;
  height:auto;
}

:where(html.pg-home) .opening-kicker,
:where(html.pg-home) .opening-rewards,
:where(html.pg-home) .opening-fineprint{
  margin:0;
}

:where(html.pg-home) .opening-kicker{
  color:var(--opening-cream);
  font-size:11px;
  font-weight:700;
  letter-spacing:.2em;
  line-height:1.2;
  text-transform:uppercase;
}

:where(html.pg-home) .opening-card h1{
  margin:10px 0 0;
  color:var(--opening-cream);
  font-family:var(--display);
  font-size:clamp(38px,5.5vw,62px);
  font-weight:400;
  letter-spacing:-.035em;
  line-height:.95;
  text-transform:uppercase;
}

:where(html.pg-home) .opening-card h1 strong{
  display:block;
  color:var(--opening-red);
  font-size:clamp(24px,3.25vw,34px);
  font-weight:inherit;
  letter-spacing:-.025em;
  line-height:1.05;
  white-space:nowrap;
}

:where(html.pg-home) .opening-card h1 span{
  display:block;
  font-size:clamp(32px,4.1vw,44px);
  font-weight:inherit;
  letter-spacing:-.025em;
  line-height:1;
  white-space:nowrap;
}

.opening-time{
  margin:8px 0 0;
  color:var(--opening-cream);
  font-family:var(--display);
  font-size:clamp(20px,2.7vw,28px);
  line-height:1;
  text-transform:uppercase;
}

:where(html.pg-home) .opening-rule{
  display:block;
  width:64px;
  height:4px;
  margin:20px auto 18px;
  background:var(--opening-red);
}

:where(html.pg-home) .opening-rewards{
  margin-top:20px;
  font-family:var(--display);
  font-size:clamp(18px,2.3vw,25px);
  line-height:1.15;
  text-transform:uppercase;
}

:where(html.pg-home) .opening-actions{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  margin-top:20px;
}

.opening-actions--reserve{
  margin-top:0;
}

:where(html.pg-home) .opening-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:240px;
  max-width:100%;
  min-height:52px;
  margin-top:0;
  padding:14px 28px;
  border:2px solid var(--opening-red);
  border-radius:7px;
  background:var(--opening-red);
  color:#fff;
  font-size:15px;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1.2;
  text-decoration:none;
  text-transform:uppercase;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
  touch-action:manipulation;
}

.opening-button.reserve-button{
  border-color:var(--opening-red);
  background:var(--opening-red);
  color:#fff;
}

:where(html.pg-home) .opening-button:hover{
  background:var(--opening-cream);
  color:var(--opening-ink);
  transform:translateY(-2px);
}

:where(html.pg-home) .opening-button:focus-visible{
  outline:3px solid #fff;
  outline-offset:5px;
}

:where(html.pg-home) .opening-fineprint{
  margin-top:13px;
  color:rgba(227,222,214,.78);
  font:11px/1.4 Arial,sans-serif;
}

@media(min-width:701px){
  :where(html.pg-home) .opening-gate{
    height:auto;
    min-height:0;
    max-height:none;
    aspect-ratio:1920/992;
    padding:9.5vw 24px 2.4vw;
  }
}

@media(min-width:701px) and (max-width:1439px){
  :where(html.pg-home) .opening-gate{
    width:100%;
    height:720px;
    aspect-ratio:auto;
    padding:104px 24px 24px;
  }
}

@media(max-width:700px){
  :where(html.pg-home) .opening-gate{
    min-height:0;
    height:auto;
    max-height:none;
    aspect-ratio:402/482;
    padding:18vw 16px 6vw;
  }
  :where(html.pg-home) .opening-card{
    width:min(365px,calc(100vw - 32px));
    padding:14px 18px 13px;
    border-radius:18px;
  }
  :where(html.pg-home) .opening-logo{
    width:min(120px,40%);
    margin-bottom:5px;
  }
  :where(html.pg-home) .opening-card h1{
    margin-top:5px;
    font-size:clamp(31px,9.5vw,43px);
  }
  .opening-time{
    margin-top:5px;
    font-size:clamp(17px,5.4vw,22px);
  }
  :where(html.pg-home) .opening-rule{
    margin:9px auto 9px;
  }
  :where(html.pg-home) .opening-rewards{
    margin-top:14px;
    font-size:clamp(16px,5vw,21px);
  }
  :where(html.pg-home) .opening-actions{
    gap:8px;
    margin-top:10px;
  }
  .opening-actions--reserve{
    margin-top:0;
  }
  :where(html.pg-home) .opening-button{
    min-height:44px;
    padding:10px 22px;
    font-size:13px;
  }
  :where(html.pg-home) .opening-fineprint{
    margin-top:6px;
  }
}

@media(prefers-reduced-motion:reduce){
  :where(html.pg-home) .opening-button{
    transition:none;
  }
  :where(html.pg-home) .opening-button:hover{
    transform:none;
  }
}

/* ---- Dev-site overlay mode (added 2026-09-24) ----
   The live site builds this card into the hero and locks the page.
   Here it sits over the page as a dismissible popup: close button, click outside, or Escape.
   Nothing is locked; once closed the site is fully usable. */
.opening-gate.opening-popup,
.opening-gate.opening-popup[class]{
  position:fixed;
  inset:0;
  z-index:1000;
  width:auto;
  height:auto;
  min-height:0;
  max-height:none;
  aspect-ratio:auto;
  padding:24px 16px;
  display:grid;
  place-items:center;
  overflow-y:auto;
  background:rgba(16,11,8,.62);
  pointer-events:auto;
}
.opening-gate.opening-popup[hidden]{display:none}
.opening-popup .opening-card{position:relative}
.opening-close{
  position:absolute;
  top:10px;
  right:12px;
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border:0;
  background:none;
  color:var(--opening-cream);
  font-size:30px;
  line-height:1;
  cursor:pointer;
}
.opening-close:hover{color:#fff}
.opening-close:focus-visible{outline:2px solid var(--opening-cream);outline-offset:2px}
body.opening-popup-open{overflow:hidden}

/* Now Open (2026-09-24): replaces the soft-opening dates. Black card kept; red and white text. */
.opening-card h1 .opening-now{color:var(--opening-red);font-size:clamp(46px,6.4vw,72px);line-height:.92}
.opening-card h1 .opening-for{color:var(--opening-cream);margin-top:8px}
.opening-pill{display:inline-block;padding:6px 18px 5px;border:2px solid var(--opening-cream);border-radius:999px;line-height:1}
.opening-starts{margin:12px 0 0;color:var(--opening-cream);font-family:var(--display);font-size:clamp(14px,1.7vw,18px);line-height:1.5;text-transform:uppercase}
.opening-starts b{color:var(--opening-red);font-weight:inherit}
@media(max-width:700px){.opening-card h1 .opening-now{font-size:clamp(40px,12.5vw,56px)}.opening-starts{margin-top:8px;font-size:clamp(13px,3.9vw,16px)}}
/* Short desktop screens (e.g. 1280x720): tighten so the whole card fits without running off the bottom. */
@media(min-width:701px) and (max-height:800px){:where(html.pg-home) .opening-card{padding-top:26px}:where(html.pg-home) .opening-logo{width:min(150px,40%)}:where(html.pg-home) .opening-card h1{margin-top:4px}.opening-card h1 .opening-now{font-size:56px}.opening-card h1 .opening-for{margin-top:4px;font-size:28px}.opening-time{margin-top:6px}.opening-pill{padding:4px 16px 3px}.opening-starts{margin-top:6px;font-size:14px;line-height:1.4}:where(html.pg-home) .opening-rule{margin-top:12px;margin-bottom:12px}}
/* The pill is now a VIEW MENU link (2026-09-24): same outlined shape, site arrow, one line. */
a.opening-pill{color:var(--opening-cream);text-decoration:none;white-space:nowrap;display:inline-grid;grid-auto-flow:column;align-items:baseline;align-content:center;justify-content:center;gap:.1875em}
a.opening-pill:hover,
a.opening-pill:focus-visible{background:var(--opening-cream);color:var(--opening-ink)}
a.opening-pill>span[aria-hidden="true"]:first-child{display:block;width:1em;height:.7em;overflow:hidden;text-indent:200%;white-space:nowrap;background-color:currentColor;align-self:baseline;transform:translateY(-.01em);transform:translateY(calc(.35em - .5cap));-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14'%3E%3Cpath d='M1.5 7h16M12 1.5 17.5 7 12 12.5' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14'%3E%3Cpath d='M1.5 7h16M12 1.5 17.5 7 12 12.5' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}

/* ===== category-template ===== */
.category-scroll{position:relative;overflow:hidden;background:var(--cream);border-bottom:1px solid var(--red)}
.category-scroll .ingredient-band{border:0}
.category-scroll .ingredient-group{min-width:0}
.category-scroll:hover .ingredient-track,
.category-scroll:focus-within .ingredient-track,
.category-scroll.is-paused .ingredient-track{animation-play-state:paused}
.category-scroll-toggle{position:absolute;right:8px;bottom:3px;font:10px Arial,sans-serif;border:0;border-radius:3px;padding:3px 6px;color:var(--ink);background:var(--cream);cursor:pointer}
@keyframes category-scroll{to{transform:translateX(-50%)}}
.category-intro{display:grid;grid-template-columns:minmax(120px,260fr) minmax(0,1280fr) minmax(120px,260fr);gap:2.083333vw;padding:7.5vw 2.5vw;background:var(--cream);align-items:center}
.category-ovals{display:grid;gap:1.875vw}
.category-ovals a{display:block;position:relative;overflow:hidden;aspect-ratio:260/428;border-radius:999px;color:white}
.category-ovals img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.category-ovals a:hover img{transform:scale(1.035)}
.category-ovals span{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);background:#231f20e6;padding:7px 10px;border-radius:24px;font-size:12px;line-height:1.3;text-align:center;max-width:90%;width:max-content}
.category-intro-copy{width:min(100%,680px);margin:auto;padding:30px 24px}
.category-kicker{font-size:13px;text-transform:uppercase;letter-spacing:.13em;margin:0 0 24px}
.category-intro-copy h2{font-family:Bungee,Impact,sans-serif;font-weight:400;font-size:clamp(32px,3.125vw,60px);line-height:1.17;margin:0 0 36px;text-align:left}
.category-intro-copy>p:not(.category-kicker){font-size:clamp(17px,1.145833vw,22px);line-height:1.85;margin:0 0 28px}
.category-intro-copy a{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.category-intro-copy a:hover{color:var(--red)}
@media(max-width:700px){
.category-intro{grid-template-columns:1fr 1fr;gap:22px;padding:52px 6vw}
.category-intro-copy{grid-column:1/-1;grid-row:1;padding:0}
.category-intro-copy h2{font-size:34px;margin-bottom:25px}
.category-intro-copy>p:not(.category-kicker){font-size:17px;line-height:1.8}
.category-ovals{gap:22px}.category-ovals span{font-size:11px;bottom:16px}
}
@media(prefers-reduced-motion:reduce){.category-scroll .ingredient-band{animation:none}.category-ovals img{transition:none}}

/* ===== cocktail-bar ===== */
.cocktail-content{background:var(--cream);padding:90px 6vw 120px}
:where(html.pg-category) .cocktail-intro{margin:0 auto 110px}
.cocktail-content h2{font-family:var(--display);font-weight:400;font-size:clamp(28px,2.4vw,46px);line-height:1.25;margin:0 0 32px}
:where(html.pg-category) .cocktail-intro h2{max-width:850px}
.cocktail-content p,
.cocktail-content li,
.cocktail-content dd{font-size:18px;line-height:1.85}
.cocktail-content p{margin:0 0 24px}
.cocktail-content ul{padding-left:22px;margin:0 0 28px}.cocktail-content li{padding-left:5px;margin-bottom:10px}
.cocktail-content a:not(.service-oval){text-decoration:underline;text-underline-offset:4px}
.cocktail-services{max-width:1120px;margin:auto;display:grid;gap:120px}
.cocktail-service{display:grid;grid-template-columns:300px minmax(0,680px);gap:clamp(40px,5vw,100px);align-items:center}
.cocktail-service:nth-child(even){grid-template-columns:minmax(0,680px) 300px}
.cocktail-service:nth-child(even) .service-oval{grid-column:2;grid-row:1}.cocktail-service:nth-child(even) .service-copy{grid-column:1;grid-row:1}
.service-oval{position:relative;display:block;width:100%;aspect-ratio:300/490;border-radius:999px;overflow:hidden;color:#fff}
.service-oval img{display:block;width:100%;height:100%;object-fit:cover;object-position:35% center}
.cocktail-service:nth-child(even) .service-oval img{object-position:70% center}
.service-oval span{position:absolute;left:16px;right:16px;bottom:24px;padding:10px 12px;border-radius:28px;background:#231f20e6;font-size:13px;text-align:center;line-height:1.4}
.classic-drinks{margin:28px 0;display:grid;gap:16px}.classic-drinks dt{font-weight:700;font-size:18px}.classic-drinks dd{margin:0}
.cocktail-aside{margin:30px 0;font-style:italic}
.cocktail-content .footnotes{margin-top:40px;font-size:12px;overflow-wrap:anywhere}.cocktail-content .footnotes li{font-size:12px;line-height:1.6}
@media(max-width:850px){.cocktail-content{padding:60px 24px 80px}:where(html.pg-category) .cocktail-intro{margin-bottom:72px}.cocktail-services{gap:76px}.cocktail-service,
.cocktail-service:nth-child(even){display:flex;flex-direction:column;gap:32px;align-items:stretch}.service-oval{width:min(260px,80%);align-self:center}.cocktail-content h2{font-size:30px}.cocktail-content p,
.cocktail-content li,
.cocktail-content dd{font-size:17px;line-height:1.8}}
/* Single large cocktail photograph accompanies the intro; service links retain oval crops. */
:where(html.pg-category) .cocktail-intro{max-width:1292px;display:grid;grid-template-columns:minmax(0,552fr) minmax(0,660fr);gap:clamp(40px,4.166667vw,80px);align-items:center}
.cocktail-intro-image{display:block;width:100%;aspect-ratio:552/700;object-fit:cover;border-radius:clamp(18px,1.5625vw,30px)}
.cocktail-intro-copy{min-width:0}
:where(html.pg-category) .cocktail-intro h2{font-size:clamp(30px,2.4vw,46px)}
@media(max-width:850px){:where(html.pg-category) .cocktail-intro{display:flex;flex-direction:column;gap:32px;align-items:stretch}.cocktail-intro-image{aspect-ratio:4/3}:where(html.pg-category) .cocktail-intro h2{font-size:30px}}

/* ===== category-pages ===== */
/* Keep longer category names in flow so they cannot collide with the subtitle. */
.small-plates-page .hero-shade,
.italian-page .hero-shade{background:linear-gradient(180deg,rgba(20,15,10,.40),rgba(20,15,10,.55) 40%,rgba(20,15,10,.58))}
:where(html.pg-category) :is(.category-extension,.cocktail-hero-match) .hero-copy{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:120px 24px 45px}
:where(html.pg-category) :is(.category-extension,.cocktail-hero-match) .hero h1{position:static;width:100%;font-size:clamp(32px,5.3vw,100px);line-height:1.05;max-width:18ch}
:where(html.pg-category) :is(.category-extension,.cocktail-hero-match) .hero-copy>p{position:static;width:auto;margin:20px 0 0;font-size:clamp(14px,1.8vw,28px);max-width:36ch}
:where(html.pg-category) :is(.category-extension,.cocktail-hero-match) .hero-actions{position:static;margin-top:30px}
.category-extension .cocktail-intro-image{height:auto}
.category-extension .cocktail-intro-copy h3{font-size:24px;line-height:1.35;margin:28px 0 20px}
/* Small Plates links to its peer categories after its own editorial content. */
.small-plates-page .related-categories{max-width:1292px;margin:120px auto 0;padding-top:76px;border-top:1px solid rgba(35,31,32,.25)}
.small-plates-page .related-categories>h2{text-align:center;margin-bottom:46px}
.small-plates-page .related-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2vw,32px)}
.small-plates-page .related-category-oval{position:relative;display:block;aspect-ratio:300/490;overflow:hidden;border-radius:999px;color:#fff;isolation:isolate;transform:translateZ(0);transition:transform 220ms ease;will-change:transform}
.small-plates-page .related-category-oval::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(20,15,10,.62));z-index:-1}
.small-plates-page .related-category-oval img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 220ms ease}
.small-plates-page .related-category-oval span{position:absolute;right:16px;bottom:22px;left:16px;color:#fff;font-family:var(--display);font-size:clamp(13px,1.1vw,17px);line-height:1.15;text-align:center;text-shadow:0 1px 8px rgba(0,0,0,.65)}
.small-plates-page .related-category-oval:hover,
.small-plates-page .related-category-oval:focus-visible{transform:scale(1.05)}
.small-plates-page .related-category-oval:focus-visible{outline:3px solid var(--brick);outline-offset:5px}
@media(prefers-reduced-motion:reduce){.small-plates-page .related-category-oval,
.small-plates-page .related-category-oval img{transition:none}.small-plates-page .related-category-oval:hover,
.small-plates-page .related-category-oval:focus-visible{transform:none}}
/* Tighten only the four Classic Pizzas entries by 20% of their existing spacing. */
#classic-pizzas-in-franklin-nashville-tn~.classic-drinks{gap:12.8px;margin:22.4px 0}
@media(max-width:700px){
 :where(html.pg-category) :is(.category-extension,.cocktail-hero-match) .hero-copy{padding:90px 16px 96px}
 :where(html.pg-category) :is(.category-extension,.cocktail-hero-match) .hero h1{font-size:clamp(28px,8vw,52px);max-width:18ch}
 :where(html.pg-category) :is(.category-extension,.cocktail-hero-match) .hero-copy>p{font-size:14px;line-height:1.35;margin-top:16px}
 .small-plates-page .related-categories{margin-top:80px;padding-top:56px}.small-plates-page .related-categories>h2{margin-bottom:28px}.small-plates-page .related-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.small-plates-page .related-category-oval span{right:10px;bottom:18px;left:10px}
}

/* ===== figma-refinements ===== */
/* Original Figma flame SVG supplied by Kaushal, 2026-09-22. */
.bravado-flame{display:inline-block;flex:0 0 auto;width:.72em;height:1.1em;background:currentColor;-webkit-mask:url('assets/bravado-flame.svg') center/contain no-repeat;mask:url('assets/bravado-flame.svg') center/contain no-repeat;vertical-align:middle}
.ingredient-band .bravado-flame{color:var(--ink);font-size:inherit}
.marquee-group>.bravado-flame{color:var(--cream);font-size:inherit}
.press-column{background:var(--ink);color:var(--cream)}
.press-column .press-card{color:var(--ink)}
.quote-card{background:var(--light)}
.brand-seal{border:0;padding:0;display:block;color:var(--ink)}
.brand-seal .flame-seal{width:100%;height:100%;object-fit:contain}

/* ===== menu-refresh ===== */
.menu-section{
  display:grid;
  grid-template-columns:3fr 4fr 3fr;
  grid-template-areas:
    "title title title"
    "left center right";
  align-items:start;
  column-gap:0;
  row-gap:0;
  width:100%;
  max-width:none;
  margin:0;
  padding:4.166667vw .833333vw 7vw;
  background:var(--cream);
}

.menu-section>h2{
  grid-area:title;
  margin:0;
  text-align:center;
  font-family:var(--display);
  font-size:clamp(40px,3vw,58px);
  line-height:1;
  text-transform:uppercase;
}

.menu-gallery{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:2.083333vw 1.875vw;
}

.left-capsules{grid-area:left}
.right-capsules{grid-area:right}

.menu-gallery img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:260/428;
  object-fit:cover;
  border-radius:999px;
}

.left-capsules img:nth-child(1){object-position:50% 42%}
.left-capsules img:nth-child(3){object-position:50% 68%}
.right-capsules img:nth-child(1){object-position:50% 52%}
.right-capsules img:nth-child(3){object-position:50% 54%}

.menu-copy{
  grid-area:center;
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:center;
  text-align:center;
}

.menu-links{
  display:flex;
  flex-direction:column;
  align-items:center;
  width:100%;
  gap:clamp(14px,1.2vw,23px);
  margin:clamp(32px,2.5vw,48px) 0 0;
}

.menu-links a{
  --menu-arrow-gap:clamp(14px,1.1vw,22px);
  position:relative;
  display:block;
  min-height:44px;
  color:var(--ink);
  font-family:var(--display);
  font-size:clamp(30px,2.5vw,48px);
  line-height:1;
  text-decoration:none;
  transition:color .18s ease;
}

.menu-links a:hover,
.menu-links a:focus-visible{
  color:var(--red);
}

.menu-links .menu-arrow{
  position:absolute;
  right:calc(100% + var(--menu-arrow-gap));
  top:50%;
  font-family:Arial,sans-serif;
  font-size:.82em;
  line-height:1;
  transform:translateY(-50%);
}

.menu-links .menu-label{
  text-decoration:underline;
  text-decoration-thickness:clamp(2px,.18vw,4px);
  text-underline-offset:clamp(5px,.45vw,9px);
}

.menu-section .menu-cta{
  min-height:48px;
  height:auto;
  margin-top:clamp(38px,3.125vw,60px);
  gap:10px;
  padding:12px 15px;
  border-radius:10px;
  font-size:clamp(13px,.833333vw,16px);
}

.brand-seal{
  position:relative;
  display:grid;
  place-items:center;
  width:clamp(190px,16vw,307px);
  height:clamp(190px,16vw,307px);
  margin:clamp(54px,6vw,116px) auto 0;
  padding:0;
  border:0;
  border-radius:50%;
  overflow:hidden;
  isolation:isolate;
}

.brand-seal .seal-figma-ring,
.brand-seal .seal-figma-center{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.44);
}

.brand-seal .seal-figma-ring{
  animation:bravado-seal-spin 18s linear infinite;
  will-change:transform;
}

.brand-seal .seal-figma-center{
  clip-path:circle(25% at 50% 50%);
}

@keyframes bravado-seal-spin{
  to{transform:scale(1.44) rotate(360deg)}
}

@media(max-width:1100px){
  .menu-section{
    grid-template-columns:1fr 1fr;
    grid-template-areas:
      "title title"
      "center center"
      "left right";
    gap:52px 28px;
    padding-inline:28px;
  }

  .menu-copy{margin-bottom:8px}
  .menu-links{margin-top:22px}
  .brand-seal{margin-top:54px}
}

@media(max-width:700px){
  .menu-section{
    grid-template-columns:1fr;
    grid-template-areas:
      "title"
      "center"
      "left"
      "right";
    gap:38px;
    padding:64px 18px 72px;
  }

  .menu-section>h2{
    margin:0;
    font-size:clamp(36px,11vw,50px);
  }

  .menu-links{
    gap:12px;
    margin:4px 0 0;
  }

  .menu-links a{
    gap:14px;
    font-size:clamp(28px,9vw,40px);
  }

  .menu-section .menu-cta{
    margin-top:30px;
    font-size:13px;
  }

  .brand-seal{
    width:190px;
    height:190px;
    margin-top:48px;
  }

  .menu-gallery{gap:16px 12px}
}

@media(prefers-reduced-motion:reduce){
  .brand-seal .seal-figma-ring{
    animation:none;
    will-change:auto;
  }
}

/* ===== brunch ===== */
:where(html.pg-meal) .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.brunch-page{min-height:100vh;background:var(--cream)}
.brunch-header{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px clamp(20px,6vw,110px);background:var(--light);border-bottom:1px solid #c9c0b7}
.brunch-header .wordmark{width:102px}.brunch-header nav{display:flex;align-items:center;gap:clamp(16px,2.4vw,38px)}.brunch-header nav a{text-decoration:none;text-transform:uppercase;font-size:13px}.brunch-header nav a:hover,
.brunch-header nav a:focus-visible{color:var(--red)}
.brunch-menu-section{display:grid;grid-template-columns:3fr 4fr 3fr;gap:0;align-items:start;min-height:calc(100vh - 92px);padding:clamp(52px,6.4vw,120px) clamp(14px,.83vw,20px) clamp(68px,7vw,134px)}
.brunch-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(15px,2.08vw,40px) clamp(14px,1.875vw,36px)}
.brunch-gallery img{display:block;width:100%;height:auto;aspect-ratio:260/428;object-fit:cover;border-radius:999px}.brunch-gallery-left img:nth-child(1){object-position:50% 42%}.brunch-gallery-left img:nth-child(2){object-position:50% 52%}.brunch-gallery-left img:nth-child(3){object-position:50% 68%}.brunch-gallery-right img:nth-child(1){object-position:50% 52%}.brunch-gallery-right img:nth-child(2){object-position:50% 55%}.brunch-gallery-right img:nth-child(3){object-position:50% 50%}
.brunch-category-links{display:flex;flex-direction:column;align-items:center;gap:clamp(15px,1.2vw,24px);padding-top:clamp(18px,1.8vw,36px);font-family:var(--display);font-size:clamp(30px,2.5vw,48px);line-height:1}
.brunch-category-links a{position:relative;display:block;color:var(--ink);text-decoration:underline;text-decoration-thickness:clamp(2px,.18vw,4px);text-underline-offset:clamp(5px,.45vw,9px);transition:color .18s ease}.brunch-category-links a span{position:absolute;right:calc(100% + clamp(14px,1.1vw,22px));top:50%;font-family:Arial,sans-serif;font-size:.82em;line-height:1;text-decoration:none;transform:translateY(-50%)}.brunch-category-links a:hover,
.brunch-category-links a:focus-visible,
.brunch-category-links a.is-active{color:var(--red)}
.brunch-category-links .category-order{min-height:44px;padding:12px 23px;border-radius:7px;color:#fff7ef;font-family:Arial,sans-serif;font-size:14px;line-height:1.3;text-decoration:none;text-transform:uppercase}.brunch-category-links .category-order:hover,
.brunch-category-links .category-order:focus-visible{color:#fff7ef}
.brunch-category-links .category-copy{width:min(100%,620px);padding-top:clamp(32px,2.5vw,48px);color:var(--ink);font-family:'Arial Rounded MT Bold',Arial,sans-serif;font-size:clamp(18px,1.35vw,24px);line-height:1.55;text-align:center;text-transform:none}.brunch-category-links .category-copy h2{font-size:clamp(30px,2.5vw,48px);line-height:1.12;margin:0 0 22px;text-align:center}.brunch-category-links .category-copy p{margin:0}
@media(max-width:900px){.brunch-menu-section{grid-template-columns:1fr;gap:42px;padding-inline:28px}.brunch-category-links{grid-row:1}.brunch-gallery{max-width:600px;width:100%;margin:auto}.brunch-header{min-height:78px}.brunch-gallery-right{padding-bottom:30px}}
@media(max-width:500px){.brunch-header nav{gap:12px}.brunch-header nav a{font-size:11px}.brunch-menu-section{padding:40px 18px 64px;gap:36px}.brunch-category-links{font-size:clamp(28px,9vw,40px);gap:12px}.brunch-gallery{gap:16px 12px}}
@media(prefers-reduced-motion:reduce){.brunch-category-links a{transition:none}}
.category-footer{display:flex;flex-direction:column;align-items:center;gap:20px;padding:52px 24px 28px;background:var(--ink);color:var(--light);text-align:center}.category-footer .footer-logo{width:160px;margin:0}.category-footer>div{display:flex;gap:20px;flex-wrap:wrap;justify-content:center}.category-footer a{font-size:14px;text-decoration:none}.category-footer a:hover{text-decoration:underline}.category-footer small{font-size:12px}
/* 2026-09-27: meal-page hero headings are one line, but the shared hero spaces the tagline for the homepage's two-line heading.
   Drop the heading by one line-height (font-size x line-height from style.css) so the gap to the tagline matches the homepage. */
@media(min-width:701px){:where(html.pg-meal) body[data-category] .hero h1{top:calc(44.65% + 5.3667vw)}}
@media(max-width:700px){:where(html.pg-meal) body[data-category] .hero h1{top:calc(54.5% + 9.925vw)}}
/* 2026-09-26: 10% breathing room each side of the copy that sits between the two oval galleries. */
@media(min-width:901px){.brunch-category-links .category-copy>p{margin-left:10%;margin-right:10%}}
/* 2026-09-27: copy top padding cut from clamp(130px,10vw,210px) to clamp(32px,2.5vw,48px) at every width; the old band under the Brunch/Lunch/Dinner/Bar link read as an empty hole. */
/* 2026-09-27: on wide screens the middle column (order button, page link, heading, copy) sits centred between the two rows of ovals instead of pinned to the top. */
@media(min-width:901px){.brunch-menu-section>.brunch-category-links{align-self:center}}

/* ===== opening-gate ===== */
:root:where(.pg-meal){
  --opening-cream:#e3ded6;
  --opening-ink:#231f20;
  --opening-red:#d9252a;
}

:where(html.pg-meal) body.opening-preview{
  --opening-ticker-height:96px;
}

body.opening-preview .preview-bar{
  display:none;
}

:where(html.pg-meal) body.opening-preview main>.ingredient-band~*{
  display:none!important;
}

:where(html.pg-meal) body.opening-preview .site-header nav{
  pointer-events:auto;
}

:where(html.pg-meal) body.opening-preview .hero{
  width:100%;
  height:calc(100svh - var(--opening-ticker-height));
  min-height:0;
  max-height:none;
  aspect-ratio:auto;
}

:where(html.pg-meal) body.opening-preview .opening-gate{
  height:100%;
  min-height:0;
  max-height:none;
  aspect-ratio:auto;
}

:where(html.pg-meal) body.opening-preview .hero-copy,
:where(html.pg-meal) body.opening-preview .mobile-hero-actions{
  visibility:hidden;
  pointer-events:none;
}

:where(html.pg-meal) .opening-gate{
  position:absolute;
  inset:0;
  z-index:4;
  display:grid;
  place-items:center;
  min-height:620px;
  height:78vh;
  max-height:950px;
  padding:clamp(118px,10vw,180px) 24px 46px;
  pointer-events:none;
}

:where(html.pg-meal) .opening-card{
  width:min(470px,calc(100vw - 40px));
  padding:clamp(26px,3.5vw,42px) clamp(24px,4vw,42px) clamp(24px,3vw,36px);
  border:1px solid rgba(227,222,214,.72);
  border-radius:22px;
  background:rgba(35,31,32,.94);
  color:var(--opening-cream);
  text-align:center;
  box-shadow:0 24px 80px rgba(0,0,0,.38);
  pointer-events:auto;
  translate:0 -12px;
}

:where(html.pg-meal) .opening-logo{
  position:relative;
  width:min(205px,62%);
  aspect-ratio:469/307;
  margin:0 auto 14px;
  overflow:hidden;
}

:where(html.pg-meal) .opening-logo img{
  position:absolute;
  left:-162.473348%;
  top:-36.156352%;
  width:426.439232%;
  max-width:none;
  height:auto;
}

.opening-kicker,
:where(html.pg-meal) .opening-rewards,
:where(html.pg-meal) .opening-fineprint{
  margin:0;
}

.opening-kicker{
  color:var(--opening-cream);
  font-size:11px;
  font-weight:700;
  letter-spacing:.2em;
  line-height:1.2;
  text-transform:uppercase;
}

:where(html.pg-meal) .opening-card h1{
  margin:10px 0 0;
  color:var(--opening-cream);
  font-family:var(--display);
  font-size:clamp(36px,calc(5.5vw - 2px),60px);
  font-weight:400;
  letter-spacing:-.035em;
  line-height:.95;
  text-transform:uppercase;
}

:where(html.pg-meal) .opening-card h1 strong{
  color:var(--opening-red);
  font:inherit;
}

:where(html.pg-meal) .opening-rule{
  display:block;
  width:64px;
  height:4px;
  margin:20px auto 18px;
  background:var(--opening-red);
}

:where(html.pg-meal) .opening-rewards{
  font-family:var(--display);
  font-size:clamp(16px,calc(2.3vw - 2px),23px);
  line-height:1.15;
  text-transform:uppercase;
}

:where(html.pg-meal) .opening-actions{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  margin-top:20px;
}

:where(html.pg-meal) .opening-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:240px;
  max-width:100%;
  min-height:52px;
  margin-top:0;
  padding:14px 28px;
  border:2px solid var(--opening-red);
  border-radius:7px;
  background:var(--opening-red);
  color:#fff;
  font-size:15px;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1.2;
  text-decoration:none;
  text-transform:uppercase;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
  touch-action:manipulation;
}

:where(html.pg-meal) .opening-button:hover{
  background:var(--opening-cream);
  color:var(--opening-ink);
  transform:translateY(-2px);
}

:where(html.pg-meal) .opening-button:focus-visible{
  outline:3px solid #fff;
  outline-offset:5px;
}

:where(html.pg-meal) .opening-fineprint{
  margin-top:13px;
  color:rgba(227,222,214,.78);
  font:11px/1.4 Arial,sans-serif;
}

:where(html.pg-meal) body.opening-preview a[aria-disabled="true"]{
  cursor:default;
}

:where(html.pg-meal) body.opening-preview .ingredient-band{
  display:block;
  height:var(--opening-ticker-height);
  min-height:var(--opening-ticker-height);
  justify-content:initial;
  gap:0;
  padding:0;
  overflow:hidden;
}

:where(html.pg-meal) .ingredient-track{
  display:flex;
  align-items:center;
  width:max-content;
  height:100%;
  animation:ingredient-scroll 52s linear infinite;
  will-change:transform;
}

:where(html.pg-meal) .ingredient-group{
  --ingredient-gap:clamp(22px,2.1vw,42px);
  display:flex;
  flex:none;
  align-self:center;
  align-items:baseline;
  justify-content:flex-start;
  gap:var(--ingredient-gap);
  min-width:100vw;
  height:auto;
  padding:0 var(--ingredient-gap) 0 0;
  white-space:nowrap;
}

:where(html.pg-meal) .ingredient-group span,
:where(html.pg-meal) .ingredient-group b{
  flex:none;
}

:where(html.pg-meal) .ingredient-group span{
  display:block;
  line-height:1;
}

:where(html.pg-meal) .ingredient-group .bravado-flame{
  display:block;
  width:.667em;
  height:1em;
  margin:0;
  line-height:1;
  transform:translateY(1px);
}

@media(min-width:701px){
  :where(html.pg-meal) .opening-gate{
    height:auto;
    min-height:0;
    max-height:none;
    aspect-ratio:1920/992;
    padding:9.5vw 24px 2.4vw;
  }
}

@media(min-width:701px) and (max-width:1439px){
  :where(html.pg-meal) body.opening-preview .hero{
    min-height:720px;
    aspect-ratio:auto;
  }

  :where(html.pg-meal) .opening-gate{
    width:100%;
    height:720px;
    aspect-ratio:auto;
    padding:104px 24px 24px;
  }
}

@media(max-width:700px){
  :where(html.pg-meal) body.opening-preview{
    --opening-ticker-height:62px;
  }

  :where(html.pg-meal) .opening-gate{
    min-height:0;
    height:auto;
    max-height:none;
    aspect-ratio:402/482;
    padding:18vw 16px 6vw;
  }

  :where(html.pg-meal) .opening-card{
    translate:none;
    width:min(365px,calc(100vw - 32px));
    padding:14px 18px 13px;
    border-radius:18px;
  }

  :where(html.pg-meal) .opening-logo{
    width:min(120px,40%);
    margin-bottom:5px;
  }

  :where(html.pg-meal) .opening-card h1{
    margin-top:5px;
    font-size:clamp(29px,calc(9.5vw - 2px),41px);
  }

  :where(html.pg-meal) .opening-rule{
    margin:9px auto 9px;
  }

  :where(html.pg-meal) .opening-rewards{
    font-size:clamp(14px,calc(5vw - 2px),19px);
  }

  :where(html.pg-meal) .opening-actions{
    gap:8px;
    margin-top:10px;
  }

  :where(html.pg-meal) .opening-button{
    min-height:44px;
    padding:10px 22px;
    font-size:13px;
  }

  :where(html.pg-meal) .opening-fineprint{
    margin-top:6px;
  }
}

@media(prefers-reduced-motion:reduce){
  :where(html.pg-meal) .opening-button{
    transition:none;
  }

  :where(html.pg-meal) .opening-button:hover{
    transform:none;
  }

  :where(html.pg-meal) body.opening-preview .ingredient-band{
    overflow-x:auto;
  }

  :where(html.pg-meal) .ingredient-track{
    animation:none;
    transform:none;
    will-change:auto;
  }

  :where(html.pg-meal) .ingredient-group[aria-hidden="true"]{
    display:none;
  }
}

/* ===== brunch-popup ===== */
/* Keep the full Bravado wordmark proportionate inside the live-style card. */
:where(html.pg-meal) .opening-card .opening-logo{
  width:min(205px,62%);
  height:auto;
  aspect-ratio:920/546;
  overflow:visible;
}

:where(html.pg-meal) .opening-card .opening-logo img{
  position:static;
  inset:auto;
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  transform:none;
}

/* The category page uses an absolute-position heading in its hero. Reset it inside the card. */
:where(html.pg-meal) .opening-card h1{
  position:static;
  inset:auto;
  width:auto;
}

@media(max-width:700px){
  :where(html.pg-meal) .opening-card .opening-logo{width:min(132px,44%);margin-bottom:8px}
}

/* Launch popup (brunch / lunch): lock the page so it cannot scroll. */
html.launch-locked,
html.launch-locked body{
  overflow:hidden;
  overscroll-behavior:none;
  height:100%;
}

/* ===== rewards-footer ===== */
.rewards-footer-signup,
.footer-subscribe {
  max-width: 480px;
}

.rewards-footer-signup h3,
.footer-subscribe h3 {
  margin: 0 0 12px;
}

.rewards-footer-signup p,
.footer-subscribe p {
  margin: 0;
}

.rewards-form {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
}

.rewards-form input[type="email"] {
  box-sizing: border-box;
  min-width: 0;
  flex: 0 1 auto;
  width: 100%;
  height: 40px;
  padding: 0 16px;
  border: 1px solid #bec3c8;
  border-radius: 3px;
  color: #1e1c1c;
  background: #fff;
  font: 14px/1.2 Helvetica, Arial, sans-serif;
}

.rewards-form button {
  height: auto;
  min-height: 44px;
  width: auto;
  max-width: 100%;
  padding: 12px 23px;
  justify-self: start;
  align-self: flex-start;
  margin-left: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  cursor: pointer;
  border: 0;
  border-radius: 7px;
  color: #fff;
  background: #d9252a;
  font: 500 14px/1.2 Helvetica, Arial, sans-serif;
  white-space: normal;
  text-align: center;
}

.rewards-form button:hover,
.rewards-form button:focus-visible {
  background: #b82126;
}

.footer-grid > .rewards-footer-signup {
  grid-column: 1 / -1;
  width: min(100%, 520px);
}

.category-footer .rewards-footer-signup {
  width: min(100%, 480px);
}

@media (max-width: 520px) {
  .rewards-form {
    flex-direction: column;
    align-items: stretch;
  }

  .rewards-form input[type="email"] {
    width: 100%;
  }
}

/* Keep the existing grid-footer field aligned with its compact button. */
.figma-footer .rewards-form input[type="email"] {
  justify-self: start;
}

.rewards-form button::before {
  content: "\2192";
  flex: 0 0 auto;
}

/* ===== footer-refresh ===== */
.figma-footer{
  min-height:728px;
  padding:93px clamp(24px,5vw,96px) 82px;
  background:var(--ink);
  color:var(--light);
  font-family:Arial,sans-serif;
}

.figma-footer .footer-logo{
  display:block;
  width:360px;
  aspect-ratio:745/420;
  margin:0 auto 96px;
  overflow:hidden;
}

.figma-footer .footer-logo img{
  display:block;
  position:absolute;
  left:-12.080537%;
  top:-15.476190%;
  width:123.489933%;
  max-width:none;
  height:auto;
  transform:none;
}

.figma-footer .footer-grid{
  display:grid;
  grid-template-columns:170px 257px 393px 240px;
  justify-content:space-between;
  gap:60px;
  width:100%;
  max-width:1300px;
  margin:0 auto;
}

.figma-footer h3,
.figma-footer .footer-nav a{
  font-family:var(--display);
  font-weight:400;
  text-transform:uppercase;
}

.figma-footer h3{
  margin:0 0 10px;
  font-size:22px;
  line-height:1.15;
}

.figma-footer a{
  color:inherit;
  text-decoration:none;
}

.figma-footer a:hover{
  text-decoration:underline;
}

.figma-footer .footer-nav{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:24px;
}

.figma-footer .footer-nav a{
  display:flex;
  align-items:center;
  min-height:30px;
  margin:0;
  font-size:21px;
  line-height:1;
}

.figma-footer .footer-subscribe p{
  max-width:360px;
  margin:0 0 24px;
  font-size:14px;
  line-height:1.35;
}

.figma-footer .footer-subscribe form{
  display:grid;
  gap:14px;
}

.figma-footer .footer-subscribe form>label:not(.footer-consent){
  position:relative;
  display:block;
  min-height:51px;
  border-bottom:2px solid var(--light);
  font-size:14px;
  line-height:1.2;
}

.figma-footer .footer-subscribe form>label>span:first-child{
  display:block;
}

.figma-footer .footer-subscribe input[type='text'],
.figma-footer .footer-subscribe input[type='email']{
  width:calc(100% - 42px);
  height:24px;
  padding:0;
  border:0;
  outline:0;
  background:transparent;
  color:var(--light);
  font:inherit;
}

.figma-footer .footer-subscribe form>label:focus-within{
  border-color:#fff;
}

.figma-footer .footer-email button{
  position:absolute;
  right:0;
  bottom:10px;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  padding:0;
  border:0;
  border-radius:10px;
  background:var(--light);
  color:var(--ink);
  font-family:Arial,sans-serif;
  font-size:17px;
  line-height:1;
}

.figma-footer .footer-consent{
  display:grid;
  grid-template-columns:17px 1fr;
  gap:9px;
  align-items:start;
  margin-top:1px;
  font-size:10px;
  line-height:1.3;
}

.figma-footer .footer-consent input{
  width:17px;
  height:17px;
  margin:0;
  accent-color:var(--red);
}

.figma-footer .footer-contact{
  font-size:16px;
  line-height:1.35;
}

.figma-footer .footer-contact h3{
  margin-bottom:24px;
}

.figma-footer .footer-contact a{
  display:block;
  margin:0 0 14px;
  font-size:16px;
}

.figma-footer .footer-contact p{
  margin:0 0 23px;
  font-size:16px;
  line-height:1.35;
}

.figma-footer .footer-contact small{
  display:block;
  font-size:11px;
  line-height:1.55;
  letter-spacing:1.3px;
  text-transform:uppercase;
}

@media(max-width:1200px){
  .figma-footer .footer-grid{
    grid-template-columns:1fr 1.2fr 1.7fr 1.2fr;
    gap:36px;
  }
}

@media(max-width:900px){
  .figma-footer{
    padding:64px 36px 70px;
  }

  .figma-footer .footer-logo{
    width:min(320px,70vw);
    margin-bottom:58px;
  }

  .figma-footer .footer-grid{
    grid-template-columns:1fr 1fr;
    gap:52px 36px;
    max-width:680px;
  }

  .figma-footer .footer-subscribe,
.figma-footer .footer-contact{
    grid-column:1/-1;
  }

  .figma-footer .footer-contact{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 24px;
  }

  .figma-footer .footer-contact h3,
.figma-footer .footer-contact small{
    grid-column:1/-1;
  }
}

@media(max-width:560px){
  .figma-footer{
    min-height:0;
    padding:52px 22px 60px;
  }

  .figma-footer .footer-logo{
    width:min(280px,82vw);
    margin-bottom:48px;
  }

  .figma-footer .footer-grid{
    gap:44px 24px;
  }

  .figma-footer .footer-nav{
    gap:18px;
  }

  .figma-footer .footer-nav a,
.figma-footer h3{
    font-size:17px;
  }

  .figma-footer .footer-subscribe p,
.figma-footer .footer-contact,
.figma-footer .footer-contact a,
.figma-footer .footer-contact p{
    font-size:14px;
  }

  .figma-footer .footer-contact{
    display:block;
  }
}

/* ===== home page: Explore Our Menu button (2026-10-05) ===== */
.menu-section>.menu-explore{grid-area:title;justify-self:center;min-height:60px;height:auto;padding:0 40px;gap:12px;border-radius:10px;font-size:clamp(16px,1.3vw,22px);letter-spacing:.05em;white-space:nowrap;margin:0 0 clamp(36px,3vw,56px)}
.menu-section>.sr-only{margin:-1px}
@media(max-width:1100px){.menu-section>.menu-explore{margin-bottom:0}}
@media(max-width:700px){.menu-section>.menu-explore{width:100%;max-width:420px;padding:0 16px;font-size:clamp(15px,5vw,19px)}}

/* ===== menus ===== */
.menus-page{background:var(--cream);color:var(--ink)}
.menus-page a:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.menus-page :is(.hero,.order-band) a:focus-visible{outline-color:currentColor}

/* Menus page hero: static photo, copy flows in the hero instead of the Figma absolute positions. */
.menus-page .hero{display:flex;flex-direction:column;aspect-ratio:auto;height:auto;min-height:51.667vw;max-height:none}
.menus-page .hero-shade{background:linear-gradient(180deg,rgba(20,15,10,.40),rgba(20,15,10,.55) 40%,rgba(20,15,10,.58))}
.menus-page .hero-copy{position:relative;inset:auto;flex:1;width:100%;height:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:120px 24px 45px}
.menus-page .hero h1{position:static;width:auto;max-width:none;margin:0;display:flex;align-items:baseline;justify-content:center;gap:.35em;white-space:nowrap;font-size:clamp(34px,3.1vw,64px);line-height:1.05;letter-spacing:0;color:#fff7ef;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.menus-page .h1-pipe{color:inherit}
.menus-page .hero-copy>p{position:static;width:auto;max-width:none;margin:20px 0 0;font-size:clamp(14px,1.8vw,28px);line-height:1.3;letter-spacing:.08em;text-transform:uppercase;color:#fff7ef;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.menus-hero-actions{display:none}
.menus-page .menus-hero-actions .button{min-height:48px;padding:12px 24px;font-size:14px;border-radius:7px;white-space:nowrap}
@media(max-width:1024px){
  .menus-page .hero{min-height:52vw}
  .menus-page .hero-copy{padding-top:calc(13vh + 20px)}
  .menus-page .hero h1{flex-direction:column;align-items:center;gap:.1em;white-space:normal;font-size:clamp(26px,5.6vw,52px)}
  .menus-page .h1-pipe{display:none}
  .menus-page .h1-part{text-wrap:balance}
  .menus-hero-actions{display:flex;justify-content:center;margin-top:50px}
}
@media(max-width:700px){
  .menus-page .hero{min-height:120vw}
  .menus-page .hero-copy{padding:calc(13vh + 20px) 18px 56px}
  .menus-page .hero h1{font-size:clamp(24px,6.6vw,40px)}
  .menus-page .hero-copy>p{font-size:14px;margin-top:16px}
}

/* Jump nav (not sticky: the fixed header's geometry is viewport based). */
.menu-nav-band{scroll-margin-top:16vh;background:var(--light);border-bottom:1px solid var(--red);padding:24px 18px}
.menu-nav-band nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;max-width:1120px;margin:auto}
@media(max-width:1000px){.menu-nav-band nav{grid-template-columns:repeat(3,minmax(0,1fr))}}
.menu-nav-band a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 8px;font-family:var(--display);font-size:16px;line-height:1.1;text-transform:uppercase;text-align:center;text-decoration:none;white-space:nowrap;color:var(--red);border:1px solid var(--red);border-radius:7px;transition:background .2s,color .2s}
.menu-nav-band a:hover,.menu-nav-band a:focus-visible{background:var(--red);color:#fff7ef}
@media(max-width:600px){.menu-nav-band nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.menu-nav-band a{font-size:15px}}

/* Menu sections */
.menu-sec{scroll-margin-top:16vh;padding:64px 0;border-top:1px solid rgba(35,31,32,.22)}
.menu-cream{background:var(--cream)}
.menu-light{background:var(--light)}
.menu-wrap{max-width:1180px;margin:auto;padding:0 28px}
.menu-sec h2{margin:0;text-align:center;font-size:clamp(34px,3.4vw,56px);line-height:1.1}
.menu-rule{display:flex;align-items:center;gap:14px;max-width:240px;margin:20px auto 28px}
.menu-rule i{flex:1;height:1px;background:rgba(35,31,32,.22)}
.menu-rule .bravado-flame{display:block;color:var(--red);font-size:20px}
.menu-intro{margin:0 auto;text-align:center;color:#4d4647;font-size:15px;line-height:1.6}
.menu-intro p{margin:0}
.menu-cat{margin-top:44px}
.menu-cat>h3,.menu-cat>.menu-h3-gap{margin:0;padding-bottom:12px;border-bottom:1px solid rgba(35,31,32,.22);font-size:clamp(24px,7vw,28px);line-height:1.1;color:var(--red);text-align:left}
.menu-cat>.menu-h3-gap{margin-top:40px}
.menu-note{margin:8px 0 0;color:#4d4647;font-size:15px;line-height:1.5}
.menu-cat .mi-list,.menu-cat .mc-list,.menu-cat .mw-list{list-style:none;margin:24px 0 0;padding:0}
.menu-note+.mi-list,.menu-note+.mc-list{margin-top:24px}
.mi-list>li,.mc-list>li,.mw-list>li{display:block;margin:0;padding:0}
.mi-list{max-width:680px;margin-inline:auto!important}
.mi{break-inside:avoid;padding-bottom:20px!important}
.mi-top{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.mi-name{font-weight:700;font-size:17px;line-height:1.3}
.mi-tag{font-weight:400;font-size:15px;color:#4d4647}
.mi-price{flex:none;min-width:3ch;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700;font-size:17px;line-height:1.3}
.mi-desc{margin:4px 0 0;padding-right:3.5em;color:#4d4647;font-weight:400;font-size:15px;line-height:1.45}
.mc-list>li.mc{display:flex;justify-content:space-between;align-items:baseline;gap:16px;break-inside:avoid;padding-bottom:12px!important}
.mc-one{max-width:420px}
.mc-grid{column-gap:clamp(40px,5vw,72px)}
@media(min-width:560px){.mc-grid{column-count:2}}
@media(min-width:1024px){.mc-grid{column-count:3}}
.menu-extras{margin-top:40px}
.menu-extras .mc-one{margin-top:0!important}
.menu-sub{margin:20px 0 0;font-weight:700;font-size:16px}
.menu-extras .menu-sub+.mc-list{margin-top:12px}
.menu-panel{border:1px solid var(--red);border-radius:7px;padding:24px}
.menu-panel>.mi-list{max-width:none}
.menu-special{display:block;width:fit-content;max-width:100%;margin:24px 0 0;padding:14px 18px;border:1px solid var(--ink);border-radius:7px;font-size:16px}
.menu-special span{font-weight:400}
.menu-foot{margin-top:48px;text-align:center;font-size:14px;line-height:1.5;color:#4d4647}
.menu-foot p{max-width:760px;margin:0 auto 8px}
.menu-back-wrap{margin:32px 0 0}
.menu-back{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:14px;color:#4d4647;text-decoration:underline;text-underline-offset:5px}

/* Gluten-free marks (POP's GF options list, 2026-10-15) */
.gf{display:inline-block;margin-left:4px;padding:1px 6px;border:1.5px solid var(--red);border-radius:999px;color:var(--red);font-size:11px;font-weight:700;line-height:1.3;letter-spacing:.06em;vertical-align:2px;white-space:nowrap}
.gf-if{font-weight:400;font-size:14px;color:#4d4647;white-space:nowrap}
.gf-key{margin:18px auto 0;text-align:center;font-size:14px;color:#4d4647}
.gf-key .gf{margin:0 4px 0 0}
.gf-foot{font-size:13px}

/* Wine and beer groups */
.mw-group,.mb-group{margin-top:32px}
.mw-group{max-width:720px}
.mw-group h4,.mb-group h4{margin:0 0 12px;font-family:var(--display);font-size:20px;font-weight:400;line-height:1.2;text-transform:uppercase;color:var(--red)}
.mb-group .menu-note{margin:-4px 0 12px}
.mb-group h4{margin-bottom:16px}
.mb-group>.mi-list{margin-inline:0!important;max-width:680px}
.menu-cat .mw-head+.mw-list{margin-top:0}
.menu-extras .mc-list{max-width:360px}
.menu-extras .mc-grid{column-count:1}
.mw-head,.mw-list>li.mw{display:grid;grid-template-columns:minmax(0,1fr) 52px 64px;gap:12px;align-items:baseline}
.mw-head{font-size:14px;line-height:1.4;color:#4d4647;text-align:right;padding-bottom:6px}
.mw{padding-bottom:18px!important}
.mw-name .mi-name{display:block}
.mw-name .mi-desc{display:block;padding-right:0}
.mw-price{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700;font-size:17px}
.menu-cat .mb-group .mi-list{margin-top:0}

/* PDF links: quieter than everything around them */
.pdf-band{background:var(--cream);border-top:1px solid rgba(35,31,32,.22);padding:40px 18px}
.pdf-line{max-width:1180px;margin:auto;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 12px;font-size:14px;line-height:1.4;color:#4d4647}
.pdf-line a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;color:#4d4647;text-decoration:underline;text-underline-offset:5px}
.pdf-dot{color:#4d4647}

@media(min-width:701px){
  .menu-sec .menu-wrap{padding:0 28px}
  .mi-name,.mi-price{font-size:18px}
  .mi-desc{font-size:16px}
  .mi{padding-bottom:22px!important}
  .menu-note,.menu-intro{font-size:16px}
  .menu-cat>h3,.menu-cat>.menu-h3-gap{font-size:clamp(24px,2.3vw,32px)}
}
@media(max-width:700px){
  .menu-wrap{padding:0 18px}
  .menu-sec h2{font-size:clamp(34px,9.5vw,44px)}
}
@media(min-width:901px){
  .mb-group>.mi-list{max-width:none;column-count:2;column-gap:clamp(40px,5vw,72px);column-rule:1px solid rgba(35,31,32,.22)}
  .menu-cat>.mi-list{max-width:none;column-count:2;column-gap:clamp(40px,5vw,72px);column-rule:1px solid rgba(35,31,32,.22)}
}
@media(min-width:1025px){
  .menu-sec{padding:96px 0}
  .menu-wrap{padding:0 40px}
  .menu-cat{margin-top:56px}
  .menu-panel{padding:32px}
}

/* ===== private-dining-demo ===== */
:root:where(.pg-private){--dining-cream:#e3ded6;--dining-ink:#231f20;--dining-red:#b43c2b;--dining-light:#f7f3ed}.private-dining-demo{background:var(--dining-cream);color:var(--dining-ink)}.dining-demo-header{position:absolute;z-index:5;top:60px;left:3%;right:3%;width:auto}.dining-demo-header .nav-left span,
.dining-demo-header .mobile-navigation span{font-family:var(--body);font-size:1.08vw;text-transform:uppercase}.dining-hero{position:relative;min-height:600px;height:min(72vh,780px);isolation:isolate;overflow:hidden;color:#fff}.dining-hero>img,
.dining-hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.dining-hero>img{object-fit:cover;object-position:center 52%}.dining-hero-shade{z-index:-1;background:linear-gradient(180deg,rgba(35,31,32,.35),rgba(35,31,32,.22) 38%,rgba(35,31,32,.88))}.dining-hero-copy{max-width:950px;height:100%;margin:auto;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;text-align:center;padding:180px 24px 84px}.dining-kicker{font-family:var(--display);font-size:13px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 16px;color:var(--dining-red)}.dining-hero .dining-kicker{color:#fff}.dining-hero h1{font-size:clamp(54px,7vw,104px);line-height:.9;letter-spacing:-.04em;margin:0}.dining-hero-copy>p:not(.dining-kicker){font-size:clamp(17px,1.7vw,23px);max-width:570px;line-height:1.4;margin:24px auto 0}.dining-cta{margin-top:30px;background:#fff;color:var(--dining-ink);border-color:#fff;min-height:48px}.dining-section{max-width:1280px;margin:auto;padding:clamp(72px,9vw,128px) max(24px,6vw)}.dining-intro{text-align:center}.dining-intro h2,
.dining-showcase h2,
.dining-details h2,
.dining-enquiry h2,
.dining-form-preview h2{font-size:clamp(40px,5vw,72px);line-height:.98;letter-spacing:-.03em;margin:0}.dining-lede{max-width:630px;font-size:clamp(17px,1.45vw,21px);line-height:1.6;margin:30px auto 22px}.dining-text-link{font-family:var(--display);font-size:14px;text-transform:uppercase;color:var(--dining-ink);text-decoration-thickness:1px;text-underline-offset:5px}.dining-showcase{display:grid;grid-template-columns:1fr 1fr;background:var(--dining-ink);color:var(--dining-light);min-height:570px}.dining-showcase-copy{align-self:center;padding:clamp(56px,9vw,136px);max-width:650px}.dining-showcase .dining-kicker{color:#e9b253}.dining-showcase-copy>p:not(.dining-kicker){font-size:18px;line-height:1.6;margin:27px 0 0;max-width:475px}.dining-showcase figure{margin:0;min-height:460px}.dining-showcase img{display:block;width:100%;height:100%;object-fit:cover}.dining-gallery{display:grid;grid-template-columns:1.1fr .9fr 1fr;gap:18px;padding:18px;background:var(--dining-cream)}.dining-gallery figure{height:430px;margin:0;overflow:hidden}.dining-gallery figure:nth-child(2){transform:none}.dining-gallery img{display:block;width:100%;height:100%;object-fit:cover}.dining-details{padding-top:clamp(110px,13vw,180px)}.dining-details>h2{text-align:center}.dining-details>.dining-kicker{text-align:center}.dining-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:55px;border-top:1px solid #231f2059}.dining-detail-grid article{padding:28px 28px 28px 0;border-bottom:1px solid #231f2059}.dining-detail-grid article+article{padding-left:28px;border-left:1px solid #231f2059}.dining-detail-grid h3{font-family:var(--display);font-size:17px;margin:0}.dining-detail-grid p{max-width:300px;line-height:1.6;margin:16px 0 0}.dining-enquiry{background:var(--dining-red);color:#fff;text-align:center;padding:clamp(76px,10vw,136px) 24px}.dining-enquiry .dining-kicker{color:#f5d797}.dining-enquiry>p:last-child{max-width:590px;margin:26px auto 0;font-size:18px;line-height:1.6}.dining-form-wrap{padding:80px 24px;background:var(--dining-light)}.dining-form-preview{max-width:640px;margin:auto;padding:44px;border:1px solid var(--dining-ink);text-align:center}.dining-form-preview h2{font-size:clamp(27px,3.4vw,42px)}.dining-form-preview>p:not(.dining-kicker){margin:18px 0 0;line-height:1.5}.dining-form-preview fieldset{display:grid;grid-template-columns:1fr 1fr;gap:16px;border:0;padding:28px 0 0;margin:0;text-align:left}.dining-form-preview label{font-size:14px;font-weight:700}.dining-form-preview label:last-child{grid-column:1/-1}.dining-form-preview input{box-sizing:border-box;display:block;width:100%;height:48px;margin-top:7px;border:1px solid #231f204d;background:#e3ded6;color:#231f20}.dining-form-preview fieldset[disabled]{opacity:.74}.private-dining-demo .figma-footer{margin-top:0}@media(max-width:700px){.dining-demo-header{top:38px;left:5%;right:5%}.dining-demo-header .nav-left,
.dining-demo-header .nav-right{display:none}.dining-demo-header .mobile-navigation span{display:block;padding:16px 20px;font-size:16px}.dining-hero{height:520px;min-height:520px}.dining-hero-copy{padding:125px 22px 55px}.dining-hero h1{font-size:55px}.dining-hero-copy>p:not(.dining-kicker){font-size:16px;margin-top:18px}.dining-section{padding:68px 24px}.dining-showcase{display:flex;flex-direction:column}.dining-showcase-copy{padding:68px 24px}.dining-showcase figure{height:380px;min-height:0}.dining-gallery{grid-template-columns:1fr;gap:14px;padding:14px}.dining-gallery figure,
.dining-gallery figure:nth-child(2){height:310px;transform:none}.dining-detail-grid{grid-template-columns:1fr;margin-top:38px}.dining-detail-grid article+article{padding-left:0;border-left:0}.dining-form-wrap{padding:55px 18px}.dining-form-preview{padding:30px 20px}.dining-form-preview fieldset{grid-template-columns:1fr}.dining-form-preview label:last-child{grid-column:auto}}@media(prefers-reduced-motion:reduce){.dining-gallery figure:nth-child(2){transform:none}}

/* Official Tripleseat enquiry form: keep vendor field behavior and validation. */
#event-enquiry-form{scroll-margin-top:150px}
.dining-tripleseat{max-width:640px;margin:auto;color:var(--ink);text-align:left}
.dining-tripleseat>h2{font-size:clamp(28px,4vw,42px);line-height:1.1;margin:0 0 20px}
.dining-tripleseat>p{line-height:1.6;margin:16px 0 24px}
body .dining-tripleseat #tripleseat_embed_form_inline{display:flow-root;font-family:var(--body,Arial,sans-serif);color:var(--ink)}
body .dining-tripleseat #tripleseat_embed_form_inline h2{float:none;clear:both;font-size:22px;line-height:1.3;margin:32px 0 14px}
body .dining-tripleseat #tripleseat_embed_form_inline .tripleseat_field_section{float:none;clear:both;width:100%;margin:0}
body .dining-tripleseat #tripleseat_embed_form_inline .tripleseat_field{float:none;width:100%;margin:0 0 20px;min-width:0}
body .dining-tripleseat #tripleseat_embed_form_inline label{float:none;display:block;font-size:16px;font-weight:700;line-height:1.5;margin-bottom:6px}
body .dining-tripleseat #tripleseat_embed_form_inline label em{display:block;font-weight:400;font-style:normal}
body .dining-tripleseat #tripleseat_embed_form_inline input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]),
body .dining-tripleseat #tripleseat_embed_form_inline select,
body .dining-tripleseat #tripleseat_embed_form_inline textarea{float:none;box-sizing:border-box;width:100%;max-width:100%;min-height:48px;padding:12px;border:1px solid var(--ink);border-radius:0;background:#fff;color:var(--ink);font:16px/1.4 var(--body,Arial,sans-serif)}
body .dining-tripleseat #tripleseat_embed_form_inline input.hasDatepicker,
body .dining-tripleseat #tripleseat_embed_form_inline input.timeselect_input{padding-left:28px!important}
body .dining-tripleseat #tripleseat_embed_form_inline textarea{min-height:120px;resize:vertical}
body .dining-tripleseat #tripleseat_embed_form_inline #lead_submit{float:none;width:100%;min-height:48px;background:var(--red);border:1px solid var(--red);color:#fff7ef;font:16px var(--display);cursor:pointer;padding:14px}
body .dining-tripleseat #tripleseat_embed_form_inline #lead_submit:disabled{opacity:.6;cursor:wait}
.dining-tripleseat :is(input,select,textarea,button,a):focus-visible{outline:3px solid var(--red);outline-offset:3px}
body .dining-tripleseat #tripleseat_embed_form_inline .errorExplanation{box-sizing:border-box;max-width:100%;width:auto}
body .dining-tripleseat #tripleseat_embed_form_inline .ts_powered_by{font-size:13px;margin-top:16px}
.dining-form-help{font-size:15px}.dining-form-help a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:360px){#event-enquiry-form{padding-left:8px;padding-right:8px}}
body .dining-tripleseat #tripleseat_dynamic_embed_form{font-family:var(--body,Arial,sans-serif);color:var(--ink)}
body .dining-tripleseat #tripleseat_dynamic_embed_form h2{font-size:22px;line-height:1.3;margin:32px 0 14px}
body .dining-tripleseat #tripleseat_dynamic_embed_form label{font-size:16px;font-weight:700;line-height:1.5;margin-bottom:6px}
body .dining-tripleseat #tripleseat_dynamic_embed_form .tripleseat-dlf-input:not([type=checkbox]){box-sizing:border-box;max-width:100%;min-height:48px;padding:12px;border:1px solid var(--ink);border-radius:0;background:#fff;color:var(--ink);font:16px/1.4 var(--body,Arial,sans-serif)}
body .dining-tripleseat #tripleseat_dynamic_embed_form .tripleseat-dlf-time{padding-left:28px}
body .dining-tripleseat #tripleseat_dynamic_embed_form .tripleseat-dlf-textarea{min-height:120px;resize:vertical}
body .dining-tripleseat #tripleseat_dynamic_embed_form .tripleseat-dlf-checkbox{width:20px;height:20px;accent-color:var(--red)}
body .dining-tripleseat #tripleseat_dynamic_embed_form .tripleseat-dlf-submit{width:100%;min-height:48px;background:var(--red);border:1px solid var(--red);border-radius:0;color:#fff7ef;font:16px var(--display);cursor:pointer;padding:14px;white-space:nowrap}
body .dining-tripleseat #tripleseat_dynamic_embed_form .tripleseat-dlf-submit:disabled{opacity:.6;cursor:wait}
body .dining-tripleseat #tripleseat_dynamic_embed_form :is(.tripleseat-dlf-date,.tripleseat-dlf-time,.tripleseat-dlf-number){width:100%}
body .dining-tripleseat #tripleseat_dynamic_embed_form .tripleseat-dlf-date-wrapper{width:100%;max-width:100%}

/* ===== private-events/private-events ===== */
.private-events-page{background:var(--cream)}
.events-hero{position:relative;min-height:520px;height:62vh;max-height:620px;color:#fff7ef;isolation:isolate;overflow:hidden}
.events-hero-image,
.events-hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.events-hero-image{object-fit:cover;object-position:center}.events-hero-shade{z-index:-1;background:linear-gradient(180deg,rgba(35,31,32,.22),rgba(35,31,32,.5) 58%,rgba(35,31,32,.83))}
.events-hero-copy{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;text-align:center;padding:150px 24px 70px}.events-kicker,
.events-label{font-family:var(--display);font-size:13px;letter-spacing:.03em;text-transform:uppercase}.events-kicker{margin-bottom:19px}.events-hero h1{font-size:clamp(56px,7vw,96px);line-height:.88;letter-spacing:-.035em}.events-hero-copy>p:not(.events-kicker){max-width:610px;margin:26px auto 0;font-size:clamp(17px,2vw,25px);line-height:1.25}.events-hero-cta{margin-top:32px;background:#fff7ef;color:#231f20;border-color:#fff7ef}.events-hero-cta:hover{background:var(--red);border-color:var(--red);color:#fff7ef}
.events-ticker{overflow:hidden;white-space:nowrap;background:var(--red);color:#fff7ef;font-family:var(--display);font-size:clamp(16px,2.1vw,30px);line-height:1;padding:24px 0}.events-ticker div{display:inline-flex;align-items:center;gap:25px;min-width:max-content;padding-left:25px;animation:events-ticker 40s linear infinite}.events-ticker b{width:12px;height:12px;border-radius:50%;background:#e9b253;display:inline-block;flex:none}@keyframes events-ticker{to{transform:translateX(-35%)}}
.events-section{max-width:1300px;margin:auto;padding:clamp(76px,11vw,150px) 6%;display:grid;grid-template-columns:.67fr 1fr 1fr;gap:48px}.events-label{color:var(--red);margin:0 0 17px}.events-intro h2,
.events-drinks h2,
.events-spaces h2,
.events-food h2,
.events-process h2,
.events-faq h2,
.events-enquiry h2{font-size:clamp(38px,5vw,72px);line-height:.98}.events-lede{max-width:470px;font-size:18px;line-height:1.65}.events-lede p+p{margin-top:22px}
.events-spaces{padding:clamp(70px,9vw,130px) max(6%,calc((100% - 1170px)/2));background:var(--ink);color:#fff7ef}.events-spaces-heading{max-width:650px;margin:0 auto clamp(44px,6vw,80px);text-align:center}.events-spaces-heading .events-label{color:#e9b253}.events-spaces-heading>p:last-child{margin:22px auto 0;max-width:520px;line-height:1.6}.event-space{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:390px}.event-space+.event-space{margin-top:32px}.event-space:nth-of-type(odd) .event-space-copy{order:2}.event-space-visual{position:relative;width:100%;height:100%;min-height:390px;margin:0;overflow:hidden}.event-space-visual img{width:100%;height:100%;min-height:390px;object-fit:cover}.event-space-visual figcaption{position:absolute;left:16px;bottom:16px;padding:5px 9px;background:#231f20d9;color:#fff7ef;font-size:12px}.event-space-copy{background:var(--light);color:var(--ink);padding:clamp(40px,6vw,88px);display:flex;flex-direction:column;justify-content:center}.event-space-copy h3{font-size:clamp(28px,3vw,44px);line-height:1.05}.event-space-copy .event-capacity{margin-top:18px;color:#8e211e;font-family:var(--display);font-size:15px;line-height:1.5;text-transform:uppercase}.event-capacity span{padding:0 8px;color:var(--ink)}.event-space-copy>p:last-child{max-width:390px;margin-top:20px;line-height:1.6}
.events-food{display:grid;grid-template-columns:1fr 1fr;min-height:680px;background:var(--light)}.events-food-image img{width:100%;height:100%;object-fit:cover}.events-food-copy{padding:clamp(65px,9vw,140px) clamp(30px,9vw,150px);display:flex;flex-direction:column;justify-content:center}.events-food-copy>p:not(.events-label){max-width:460px;margin:28px 0;font-size:18px;line-height:1.65}.events-food-copy .button{align-self:flex-start}
.events-process{grid-template-columns:1fr 1fr;gap:100px}.events-process ol{margin:0;padding:0;list-style:none;border-top:1px solid #231f2050}.events-process li{display:grid;grid-template-columns:55px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid #231f2050}.events-process li>span{font-family:var(--display);color:var(--red);font-size:15px}.events-process h3{font-size:23px;line-height:1.2}.events-process p{margin-top:8px;max-width:400px;line-height:1.55}
.events-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;padding:clamp(70px,9vw,130px) max(6%,calc((100% - 1170px)/2));background:var(--red);color:#fff7ef}.events-faq .events-label{color:inherit}.events-faq-list details{border-top:1px solid #fff7ef80;padding:20px 0}.events-faq-list details:last-child{border-bottom:1px solid #fff7ef80}.events-faq-list summary{position:relative;min-height:44px;padding:6px 42px 6px 0;cursor:pointer;list-style:none;font-family:var(--display);font-size:19px;line-height:1.35}.events-faq-list summary::-webkit-details-marker{display:none}.events-faq-list summary:after{content:'+';position:absolute;right:2px;top:2px;font-family:Arial,sans-serif;font-size:30px;font-weight:400}.events-faq-list details[open] summary:after{content:'−'}.events-faq-list p{max-width:570px;margin:10px 0 4px;line-height:1.65}
.events-enquiry{padding:clamp(78px,11vw,130px) max(6%,calc((100% - 1170px)/2));background:var(--red);color:#fff7ef;text-align:center}.events-enquiry .events-label{color:#e9b253}.events-enquiry-copy{max-width:570px;margin:auto}.events-enquiry-copy>p:not(.events-label){margin-top:25px;font-size:18px;line-height:1.6}.events-form-surface{padding:64px 24px;background:var(--cream)}.events-form-placeholder{max-width:640px;min-height:160px;margin:auto;padding:38px;background:var(--light);border:1px solid var(--ink);color:var(--ink);text-align:center;display:flex;flex-direction:column;justify-content:center}.events-form-placeholder span{font-family:var(--display);font-size:16px;text-transform:uppercase}.events-form-placeholder p{margin:10px 0 0;font-size:15px}
@media(max-width:900px){.events-process,
.events-faq{gap:50px}.events-section{grid-template-columns:.5fr 1fr;gap:30px}.events-intro .events-lede{grid-column:2}.events-food{min-height:560px}.events-food-copy{padding:60px 40px}}
@media(max-width:700px){.events-hero{min-height:410px;height:440px;max-height:440px}.events-hero-copy{padding:95px 22px 36px}.events-hero h1{font-size:clamp(42px,12vw,58px)}.events-hero-copy>p:not(.events-kicker){font-size:16px;margin-top:16px}.events-hero-cta{margin-top:20px}.events-section,
.events-spaces,
.events-process,
.events-faq,
.events-enquiry{display:block;padding:65px 24px}.events-intro h2,
.events-drinks h2,
.events-spaces h2,
.events-food h2,
.events-process h2,
.events-faq h2,
.events-enquiry h2{font-size:43px}.events-intro .events-lede,
.events-drinks .events-lede{margin-top:28px}.events-spaces-heading{margin-bottom:38px;text-align:left}.event-space{display:flex;flex-direction:column;min-height:0}.event-space+.event-space{margin-top:24px}.event-space:nth-of-type(odd) .event-space-copy{order:0}.event-space-visual{min-height:260px;height:260px;order:1}.event-space-visual img{min-height:260px;height:260px}.event-space-copy{padding:36px 28px}.events-food{display:block}.events-food-image{height:420px}.events-food-copy{padding:65px 24px}.events-process ol,
.events-faq-list{margin-top:36px}.events-process li{grid-template-columns:42px 1fr}.events-enquiry-copy>p:not(.events-label){margin-bottom:0}.events-ticker{padding:20px 0}.events-ticker div{animation-duration:32s}.events-hero .site-header .nav-left,
.events-hero .site-header .nav-right{display:none}}
@media(prefers-reduced-motion:reduce){.events-ticker div{animation:none}}

/* Food + bar pair (2026-09-24): two equal columns, matching labels and headings, one shared button. */
.events-pair{max-width:1300px;margin:auto;padding:clamp(76px,11vw,150px) 6%}
.events-pair-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,7vw,110px);align-items:start}
.events-pair-col{container-type:inline-size}
/* Each heading is exactly two lines: no wrapping inside a line, and the size scales with the column so the longest line ("The menu does", 8.31em wide in Bungee) always fits. */
.events-pair h2{font-size:clamp(26px,calc(100cqi / 8.7),56px);line-height:.98;white-space:nowrap}
.events-pair-col>p:not(.events-label){margin-top:28px;font-size:18px;line-height:1.65}
.events-pair-action{margin-top:clamp(44px,5vw,64px);text-align:center}
@media(max-width:700px){.events-pair{padding:65px 24px}.events-pair-grid{grid-template-columns:1fr;gap:56px}.events-pair-col>p:not(.events-label){font-size:17px}}
/* Side photos (2026-09-24): small plates left, cocktails right, filling the section top to bottom in the space
   beside the text. The text block keeps exactly its position; the photos only appear where that side space is
   wide enough (text edge = (width - min(width,1300px))/2 + 6% of width; photo ends 48px before it). */
.events-pair-wrap{position:relative;container-type:inline-size}
.events-pair-img{display:none;position:absolute;top:0;bottom:0;margin:0;width:calc((100cqw - min(100cqw,1300px)) / 2 + 6cqw - 48px);overflow:hidden}
.events-pair-img img{width:100%;height:100%;object-fit:cover;display:block}
.events-pair-img-left{left:0}
.events-pair-img-right{right:0}
@container (min-width:1640px){.events-pair-img{display:block}}

/* 2026-09-27: The Sunroom shows both of the owner's photos, crossfading every few seconds. Reduced motion keeps the first photo only. */
.event-space-visual .event-space-fade{position:absolute;inset:0;opacity:0;animation:event-space-fade 12s ease-in-out infinite}
@keyframes event-space-fade{0%,42%{opacity:0}50%,92%{opacity:1}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.event-space-visual .event-space-fade{animation:none}}

/* ===== category-refresh ===== */
/* Shared approved refresh for Cocktail Bar, Italian Flare and Pizza Bar only. */
.category-refresh .hero{width:100%;min-width:0;max-width:100%;aspect-ratio:auto;height:51.5625vw;min-height:620px;max-height:990px}
.category-refresh .hero-shade{background:linear-gradient(180deg,rgba(20,15,10,.42),rgba(20,15,10,.52) 45%,rgba(20,15,10,.58))}
.category-refresh .hero h1{max-width:1400px;font-size:clamp(38px,5.3vw,100px);letter-spacing:-.025em;line-height:1.08}
.category-refresh .hero h1 span{display:block}
.category-refresh .hero-copy{padding:140px 24px 64px}
.category-refresh .hero-actions{display:flex}
.category-refresh .hero-actions .button{width:auto;height:auto;min-height:44px;padding:12px 24px;font-size:14px;border-radius:7px}
.category-refresh .mobile-hero-actions{display:none}
.category-refresh .cocktail-content{padding:0;background:var(--cream)}
.category-refresh .cocktail-intro{display:block;max-width:none;margin:0;padding:96px max(24px,6vw);background:var(--light)}
.category-refresh .refresh-intro-heading{max-width:940px;margin:0 auto 56px;text-align:center}
.category-refresh .refresh-intro-heading h2{max-width:none;margin-bottom:24px}
.category-refresh .refresh-intro-heading p{margin:0}
.category-refresh .refresh-intro-columns{display:grid;grid-template-columns:minmax(0,630fr) minmax(0,450fr);gap:clamp(48px,6vw,112px);align-items:center;max-width:1192px;margin:auto}
.category-refresh .refresh-expect-panel{background:var(--ink);color:var(--light);border-radius:24px;padding:48px}
.category-refresh .refresh-expect-panel h3{font-family:inherit;text-transform:none;font-size:24px;font-weight:700;line-height:1.4;margin-bottom:28px}
.category-refresh .refresh-expect-panel p:last-child,
.category-refresh .refresh-intro-prose p:last-child{margin-bottom:0}
.category-refresh .cocktail-services{max-width:1412px;padding:112px 60px 120px;gap:112px}
.category-refresh .cocktail-service,
.category-refresh .cocktail-service:nth-child(even){display:grid;grid-template-columns:minmax(0,525fr) minmax(0,630fr);gap:clamp(48px,6vw,112px);align-items:center}
.category-refresh .cocktail-service .service-copy{grid-column:2;grid-row:1;min-width:0}
.category-refresh .cocktail-service .refresh-service-photo{grid-column:1;grid-row:1}
.category-refresh .cocktail-service.refresh-image-right{grid-template-columns:minmax(0,630fr) minmax(0,525fr)}
.category-refresh .cocktail-service.refresh-image-right .service-copy{grid-column:1}
.category-refresh .cocktail-service.refresh-image-right .refresh-service-photo{grid-column:2}
.category-refresh .refresh-service-photo{overflow:hidden;border-radius:28px;aspect-ratio:525/620}
.category-refresh .refresh-service-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.category-refresh .cocktail-content h2{font-size:clamp(30px,2.8vw,46px);line-height:1.25;margin-bottom:28px}
.category-refresh .cocktail-content p,
.category-refresh .cocktail-content li{font-size:18px;line-height:1.75}
.category-refresh .cocktail-content li{margin-bottom:14px}
.category-refresh .refresh-service-opening{font-weight:700}
.category-refresh .refresh-service-action{margin-top:28px}
.category-refresh .cocktail-content .button{text-decoration:none;min-height:44px}
.category-refresh .refresh-service-action small{display:block;margin-top:10px;font-size:12px}
.category-refresh #footer-contact{scroll-margin-top:140px}
@media(max-width:850px){
 .category-refresh .hero{height:80svh;min-height:570px;max-height:780px}
 .category-refresh .hero h1{font-size:clamp(32px,6.2vw,60px);max-width:20ch}
 .category-refresh .hero-copy{padding:120px 20px 56px}
 .category-refresh .hero-copy>p{font-size:clamp(14px,2.1vw,18px)}
 .category-refresh .hero-actions{margin-top:28px;gap:12px}
 .category-refresh .hero-actions .button{padding:12px 16px;font-size:12px}
 .category-refresh .cocktail-intro{padding:64px 24px}
 .category-refresh .refresh-intro-heading{margin-bottom:32px}
 .category-refresh .refresh-intro-columns{grid-template-columns:1fr;gap:32px;max-width:600px}
 .category-refresh .refresh-expect-panel{padding:32px 28px;border-radius:20px}
 .category-refresh .cocktail-services{padding:64px 24px;gap:64px;max-width:648px}
 .category-refresh .cocktail-service,
.category-refresh .cocktail-service:nth-child(even),
.category-refresh .cocktail-service.refresh-image-right{display:flex;flex-direction:column;gap:32px;align-items:stretch}
 .category-refresh .refresh-service-photo{aspect-ratio:4/3;border-radius:22px}
 .category-refresh .cocktail-content h2{font-size:30px;margin-bottom:24px}
 .category-refresh .cocktail-content p,
.category-refresh .cocktail-content li{font-size:17px;line-height:1.75}
 .category-refresh #footer-contact{scroll-margin-top:110px}
}
@media(prefers-reduced-motion:reduce){.category-refresh .ingredient-track,
.category-refresh .marquee-track{animation:none}}

/* Keep official flame markers visible on both cream and dark panels. */
.category-refresh .cocktail-content ul{list-style:none;padding-left:0}
.category-refresh .cocktail-content li{position:relative;padding-left:30px}
.category-refresh .cocktail-content li::marker{content:''}
.category-refresh .cocktail-content li::before{content:'';position:absolute;left:0;top:.35em;width:14px;height:21px;background:var(--red);-webkit-mask:url('assets/bravado-flame.svg') center/contain no-repeat;mask:url('assets/bravado-flame.svg') center/contain no-repeat}
.category-refresh .refresh-expect-panel li::before{background:#f47c68}

.category-refresh .refresh-expect-panel>p{font-size:24px;font-weight:700;line-height:1.4}
.category-refresh .refresh-expect-panel ul:last-child{margin-bottom:0}
.category-refresh .refresh-service-action .button{max-width:100%;white-space:normal;text-align:center}
.category-refresh .cocktail-content dd{font-size:18px;line-height:1.75}
@media(max-width:850px){.category-refresh .cocktail-content dd{font-size:17px}}

/* ===== small-plates-restaurant ===== */
/* Small Plates category: approved category layout with original content and images. */
.small-plates-page .hero{width:100%;min-width:0;max-width:100%;aspect-ratio:auto;height:51.5625vw;min-height:620px;max-height:990px}
.small-plates-page .hero-shade{background:linear-gradient(180deg,rgba(20,15,10,.42),rgba(20,15,10,.52) 45%,rgba(20,15,10,.58))}
.small-plates-page .hero h1{max-width:1400px;font-size:clamp(38px,5.3vw,100px);letter-spacing:-.025em;line-height:1.08}
.small-plates-page .hero h1 span{display:block}
.small-plates-page .hero-copy{padding:140px 24px 64px}
.small-plates-page .hero-actions{display:flex}
.small-plates-page .hero-actions .button{width:auto;height:auto;min-height:44px;padding:12px 24px;font-size:14px;border-radius:7px}
.small-plates-page .mobile-hero-actions{display:none}
.small-plates-page .cocktail-content{padding:0;background:var(--cream)}
.small-plates-page .cocktail-intro{display:block;max-width:none;margin:0;padding:96px max(24px,6vw);background:var(--light)}
.small-plates-page .plates-intro-heading{max-width:940px;margin:0 auto 56px;text-align:center}
.small-plates-page .plates-intro-heading h2{max-width:none;margin-bottom:24px}
.small-plates-page .plates-intro-heading p{margin:0}
.small-plates-page .plates-intro-columns{display:grid;grid-template-columns:minmax(0,630fr) minmax(0,450fr);gap:clamp(48px,6vw,112px);align-items:center;max-width:1192px;margin:auto}
.small-plates-page .plates-expect-panel{background:var(--ink);color:var(--light);border-radius:24px;padding:48px}
.small-plates-page .plates-expect-panel h3{font-family:inherit;text-transform:none;font-size:24px;font-weight:700;line-height:1.4;margin-bottom:28px}
.small-plates-page .plates-expect-panel p:last-child,
.small-plates-page .plates-intro-prose p:last-child{margin-bottom:0}
.small-plates-page .cocktail-services{max-width:1412px;padding:112px 60px 120px;gap:112px}
.small-plates-page .cocktail-service,
.small-plates-page .cocktail-service:nth-child(even){display:grid;grid-template-columns:minmax(0,525fr) minmax(0,630fr);gap:clamp(48px,6vw,112px);align-items:center}
.small-plates-page .cocktail-service .service-copy{grid-column:2;grid-row:1;min-width:0}
.small-plates-page .cocktail-service .plates-service-photo{grid-column:1;grid-row:1}
.small-plates-page .cocktail-service.plates-image-right{grid-template-columns:minmax(0,630fr) minmax(0,525fr)}
.small-plates-page .cocktail-service.plates-image-right .service-copy{grid-column:1}
.small-plates-page .cocktail-service.plates-image-right .plates-service-photo{grid-column:2}
.small-plates-page .plates-service-photo{overflow:hidden;border-radius:28px;aspect-ratio:525/620}
.small-plates-page .plates-service-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.small-plates-page .cocktail-content h2{font-size:clamp(30px,2.8vw,46px);line-height:1.25;margin-bottom:28px}
.small-plates-page .cocktail-content p,
.small-plates-page .cocktail-content li{font-size:18px;line-height:1.75}
.small-plates-page .cocktail-content li{margin-bottom:14px}
.small-plates-page .plates-service-opening{font-weight:700}
.small-plates-page .plates-service-action{margin-top:28px}
.small-plates-page .cocktail-content .button{text-decoration:none;min-height:44px}
.small-plates-page .plates-service-action small{display:block;margin-top:10px;font-size:12px}
.small-plates-page #footer-contact{scroll-margin-top:140px}
@media(max-width:850px){
 .small-plates-page .hero{height:80svh;min-height:570px;max-height:780px}
 .small-plates-page .hero h1{font-size:clamp(32px,6.2vw,60px);max-width:20ch}
 .small-plates-page .hero-copy{padding:120px 20px 56px}
 .small-plates-page .hero-copy>p{font-size:clamp(14px,2.1vw,18px)}
 .small-plates-page .hero-actions{margin-top:28px;gap:12px}
 .small-plates-page .hero-actions .button{padding:12px 16px;font-size:12px}
 .small-plates-page .cocktail-intro{padding:64px 24px}
 .small-plates-page .plates-intro-heading{margin-bottom:32px}
 .small-plates-page .plates-intro-columns{grid-template-columns:1fr;gap:32px;max-width:600px}
 .small-plates-page .plates-expect-panel{padding:32px 28px;border-radius:20px}
 .small-plates-page .cocktail-services{padding:64px 24px;gap:64px;max-width:648px}
 .small-plates-page .cocktail-service,
.small-plates-page .cocktail-service:nth-child(even),
.small-plates-page .cocktail-service.plates-image-right{display:flex;flex-direction:column;gap:32px;align-items:stretch}
 .small-plates-page .plates-service-photo{aspect-ratio:4/3;border-radius:22px}
 .small-plates-page .cocktail-content h2{font-size:30px;margin-bottom:24px}
 .small-plates-page .cocktail-content p,
.small-plates-page .cocktail-content li{font-size:17px;line-height:1.75}
 .small-plates-page #footer-contact{scroll-margin-top:110px}
}
@media(prefers-reduced-motion:reduce){.small-plates-page .ingredient-track,
.small-plates-page .marquee-track{animation:none}}

/* Keep official flame markers visible on both cream and dark panels. */
.small-plates-page .cocktail-content ul{list-style:none;padding-left:0}
.small-plates-page .cocktail-content li{position:relative;padding-left:30px}
.small-plates-page .cocktail-content li::marker{content:''}
.small-plates-page .cocktail-content li::before{content:'';position:absolute;left:0;top:.35em;width:14px;height:21px;background:var(--red);-webkit-mask:url('assets/bravado-flame.svg') center/contain no-repeat;mask:url('assets/bravado-flame.svg') center/contain no-repeat}
.small-plates-page .plates-expect-panel li::before{background:#f47c68}

.small-plates-page .plates-intro-heading h3{font-size:clamp(20px,1.8vw,28px);line-height:1.4;margin:0 0 24px}
.small-plates-page .plates-expect-panel>p{font-size:24px;font-weight:700;line-height:1.4}
.small-plates-page .plates-expect-panel ul:last-child{margin-bottom:0}
.small-plates-page .plates-service-action .button{max-width:100%;white-space:normal;text-align:center}
.small-plates-page .related-categories{max-width:1412px;margin:0 auto;padding:0 60px 120px;border:0}
.small-plates-page .related-category-oval{aspect-ratio:525/620;border-radius:24px;transform:none;will-change:auto;isolation:auto;transition:none}
.small-plates-page .related-category-oval img{height:100%;transition:none}
.small-plates-page .related-category-oval::after{z-index:1;background:linear-gradient(180deg,transparent 35%,rgba(20,15,10,.82))}
.small-plates-page .related-category-oval span{z-index:2;font-size:clamp(14px,1.1vw,17px)}
.small-plates-page .related-category-oval:hover,
.small-plates-page .related-category-oval:focus-visible{transform:none}
.small-plates-page .related-category-oval:hover span{text-decoration:underline}
@media(max-width:850px){.small-plates-page .related-categories{padding:0 24px 64px}.small-plates-page .related-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.small-plates-page .related-category-oval{border-radius:20px}.small-plates-page .related-category-oval span{font-size:14px;left:10px;right:10px;bottom:18px}.small-plates-page .plates-intro-heading h3{font-size:21px}}

/* ===== bar-craft-local ===== */
/* Bar category only: Figma body with the current shared site header and footer. */
.bar-craft-page .hero{width:100%;min-width:0;max-width:100%;aspect-ratio:auto;height:51.5625vw;min-height:620px;max-height:990px}
.bar-craft-page .hero-shade{background:linear-gradient(180deg,rgba(20,15,10,.42),rgba(20,15,10,.52) 45%,rgba(20,15,10,.58))}
.bar-craft-page .hero h1{max-width:1400px;font-size:clamp(38px,5.3vw,100px);letter-spacing:-.025em;line-height:1.08}
.bar-craft-page .hero h1 span{display:block}
.bar-craft-page .hero-copy{padding:140px 24px 64px}
.bar-craft-page .hero-actions{display:flex}
.bar-craft-page .hero-actions .button{width:auto;height:auto;min-height:44px;padding:12px 24px;font-size:14px;border-radius:7px}
.bar-craft-page .mobile-hero-actions{display:none}
.bar-craft-page .cocktail-content{padding:0;background:var(--cream)}
.bar-craft-page .cocktail-intro{display:block;max-width:none;margin:0;padding:96px max(24px,6vw);background:var(--light)}
.bar-craft-page .bar-intro-heading{max-width:940px;margin:0 auto 56px;text-align:center}
.bar-craft-page .bar-intro-heading h2{max-width:none;margin-bottom:24px}
.bar-craft-page .bar-intro-heading p{margin:0}
.bar-craft-page .bar-intro-columns{display:grid;grid-template-columns:minmax(0,630fr) minmax(0,450fr);gap:clamp(48px,6vw,112px);align-items:center;max-width:1192px;margin:auto}
.bar-craft-page .bar-expect-panel{background:var(--ink);color:var(--light);border-radius:24px;padding:48px}
.bar-craft-page .bar-expect-panel h3{font-family:inherit;text-transform:none;font-size:24px;font-weight:700;line-height:1.4;margin-bottom:28px}
.bar-craft-page .bar-expect-panel p:last-child,
.bar-craft-page .bar-intro-prose p:last-child{margin-bottom:0}
.bar-craft-page .cocktail-services{max-width:1412px;padding:112px 60px 120px;gap:112px}
.bar-craft-page .cocktail-service,
.bar-craft-page .cocktail-service:nth-child(even){display:grid;grid-template-columns:minmax(0,525fr) minmax(0,630fr);gap:clamp(48px,6vw,112px);align-items:center}
.bar-craft-page .cocktail-service .service-copy{grid-column:2;grid-row:1;min-width:0}
.bar-craft-page .cocktail-service .bar-service-photo{grid-column:1;grid-row:1}
.bar-craft-page .cocktail-service.bar-image-right{grid-template-columns:minmax(0,630fr) minmax(0,525fr)}
.bar-craft-page .cocktail-service.bar-image-right .service-copy{grid-column:1}
.bar-craft-page .cocktail-service.bar-image-right .bar-service-photo{grid-column:2}
.bar-craft-page .bar-service-photo{overflow:hidden;border-radius:28px;aspect-ratio:525/620}
.bar-craft-page .bar-service-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.bar-craft-page .cocktail-content h2{font-size:clamp(30px,2.8vw,46px);line-height:1.25;margin-bottom:28px}
.bar-craft-page .cocktail-content p,
.bar-craft-page .cocktail-content li{font-size:18px;line-height:1.75}
.bar-craft-page .cocktail-content li{margin-bottom:14px}
.bar-craft-page .bar-service-opening{font-weight:700}
.bar-craft-page .bar-service-action{margin-top:28px}
.bar-craft-page .cocktail-content .button{text-decoration:none;min-height:44px}
.bar-craft-page .bar-service-action small{display:block;margin-top:10px;font-size:12px}
.bar-craft-page #footer-contact{scroll-margin-top:140px}
@media(max-width:850px){
 .bar-craft-page .hero{height:80svh;min-height:570px;max-height:780px}
 .bar-craft-page .hero h1{font-size:clamp(32px,6.2vw,60px);max-width:20ch}
 .bar-craft-page .hero-copy{padding:120px 20px 56px}
 .bar-craft-page .hero-copy>p{font-size:clamp(14px,2.1vw,18px)}
 .bar-craft-page .hero-actions{margin-top:28px;gap:12px}
 .bar-craft-page .hero-actions .button{padding:12px 16px;font-size:12px}
 .bar-craft-page .cocktail-intro{padding:64px 24px}
 .bar-craft-page .bar-intro-heading{margin-bottom:32px}
 .bar-craft-page .bar-intro-columns{grid-template-columns:1fr;gap:32px;max-width:600px}
 .bar-craft-page .bar-expect-panel{padding:32px 28px;border-radius:20px}
 .bar-craft-page .cocktail-services{padding:64px 24px;gap:64px;max-width:648px}
 .bar-craft-page .cocktail-service,
.bar-craft-page .cocktail-service:nth-child(even),
.bar-craft-page .cocktail-service.bar-image-right{display:flex;flex-direction:column;gap:32px;align-items:stretch}
 .bar-craft-page .bar-service-photo{aspect-ratio:4/3;border-radius:22px}
 .bar-craft-page .cocktail-content h2{font-size:30px;margin-bottom:24px}
 .bar-craft-page .cocktail-content p,
.bar-craft-page .cocktail-content li{font-size:17px;line-height:1.75}
 .bar-craft-page #footer-contact{scroll-margin-top:110px}
}
@media(prefers-reduced-motion:reduce){.bar-craft-page .ingredient-track,
.bar-craft-page .marquee-track{animation:none}}

/* Keep official flame markers visible on both cream and dark panels. */
.bar-craft-page .cocktail-content ul{list-style:none;padding-left:0}
.bar-craft-page .cocktail-content li{position:relative;padding-left:30px}
.bar-craft-page .cocktail-content li::marker{content:''}
.bar-craft-page .cocktail-content li::before{content:'';position:absolute;left:0;top:.35em;width:14px;height:21px;background:var(--red);-webkit-mask:url('assets/bravado-flame.svg') center/contain no-repeat;mask:url('assets/bravado-flame.svg') center/contain no-repeat}
.bar-craft-page .bar-expect-panel li::before{background:#f47c68}

/* ===== live ===== */
/* LIVE-only tweaks (make-live.py): proof section is press-only once sample reviews are removed */
.proof.press-only{grid-template-columns:1fr}
.proof.press-only .press-column .proof-inner{max-width:470px;margin-left:auto;margin-right:auto}

/* CTA arrow (2026-09-24): one drawn arrow for every call-to-action button, cap-height tall, locked to
   the text baseline and lifted so its middle sits on the middle of the capitals (grid keeps the
   text centred in the button), same gap everywhere. Replaces the text glyph, which the site's
   fonts lack, so each device was substituting a different, low-sitting arrow. */
:root{--cta-arrow-gap:.75em}
:is(a.button,a.opening-button,button[type=submit]):has(>span[aria-hidden="true"]:first-child){display:inline-grid;grid-auto-flow:column;align-items:center;align-content:center;justify-content:center;gap:var(--cta-arrow-gap)}
:is(a.button,a.opening-button,button[type=submit])>span[aria-hidden="true"]:first-child{flex:none;display:block;position:static;font-size:inherit;font-family:inherit;line-height:inherit;text-decoration:none;align-self:center;transform:none;width:1em;height:.7em;margin:0;overflow:hidden;text-indent:200%;white-space:nowrap;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14'%3E%3Cpath d='M1.5 7h16M12 1.5 17.5 7 12 12.5' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14'%3E%3Cpath d='M1.5 7h16M12 1.5 17.5 7 12 12.5' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
/* 2026-09-30 (Richie): the CTA arrow is centred in the button row, not lined up to the text baseline. The empty clipped
   arrow box has no reliable baseline, and Safari and Chrome placed it differently, so the arrow sat off-centre on iPhones. */
/* The old hero-only arrow (style.css .hero-actions .button:before) is switched off wherever the drawn arrow is present, so each button shows exactly one. */
:is(a.button,a.opening-button,button[type=submit]):has(>span[aria-hidden="true"]:first-child)::before{content:none}
/* Buttons never wrap onto two lines (Richie, 2026-09-24). Overrides older white-space:normal rules on service buttons. */
:is(.button,.opening-button,button[type=submit]){white-space:nowrap!important}
/* Category pages show only the current category (set by meal-page.js); hide the others from first paint so they never flash. */
.category-page .brunch-category-links a[data-category]:not(.is-active){display:none}
/* Review cards straighten on hover, the same as the press cards (Brett, 2026-09-25). */
.quote-card{transition:transform .2s}
.quote-card:hover{transform:rotate(0)}
/* Reviews cycle (2026-09-29): only the quote and name fade, so the tilted card itself never moves.
   reviews-feed.js fixes the card height to the tallest review, so swaps never shift the layout. */
.reviews-stack.is-cycling .quote-card blockquote,
.reviews-stack.is-cycling .quote-card .card-footnote{transition:opacity 1s ease}
.reviews-stack.is-cycling .quote-card.is-fading blockquote,
.reviews-stack.is-cycling .quote-card.is-fading .card-footnote{opacity:0}
@media (prefers-reduced-motion:reduce){.reviews-stack.is-cycling .quote-card blockquote,
.reviews-stack.is-cycling .quote-card .card-footnote{transition:none}}

/* ===== social-feed ===== */
/* Follow us — social video feed (TikTok now, Instagram later). One shared
   file for all six pages that carry a .social section. Reuses the site's
   own tokens throughout; see the design spec at
   albert/brain/businesses/yall-digital/clients/pop-hospo/bravado/plans/
   2026-09-25 - Bravado - Social Feed Design Spec.md.

   Phone tile height is 340px (191px wide, 9:16), overruling the spec's
   420px — Albert's call, 2026-09-25, to balance Desiree's spec against
   Ursula's scroll-depth concern. Desktop/tablet sizes are as specced. */

:where(html.pg-category,html.pg-home,html.pg-charity,html.pg-menus) .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.feed-wrap{position:relative;margin-top:0}
.feed-wrap[hidden]{display:none}

/* .social-gallery already sets display:grid, which otherwise beats the
   browser's default [hidden]{display:none} UA rule at equal specificity by
   source order — without this, JS setting .hidden=true on the fallback
   would silently do nothing and both the fallback photos and the feed row
   would show at once. */
.social-gallery[hidden]{display:none}

.feed-row{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x proximity;
  gap:18px;
  scrollbar-width:none;
  scroll-padding-inline:12px;
  /* Room for the keyboard focus ring, which the row's overflow would clip. */
  padding:6px;
  margin-block:-6px;
}
.feed-row::-webkit-scrollbar{display:none}

.feed-tile{
  position:relative;
  flex:0 0 auto;
  width:259px;
  height:460px;
  border-radius:14px;
  overflow:hidden;
  border:0;
  padding:0;
  background:rgba(35,31,32,.35);
  scroll-snap-align:start;
  cursor:pointer;
}
.feed-tile:focus-visible{outline:3px solid var(--light);outline-offset:2px}
.feed-tile img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}

.feed-badge{
  position:absolute;
  top:12px;
  left:12px;
  background:rgba(35,31,32,.6);
  color:var(--light);
  font-size:10px;
  letter-spacing:.5px;
  text-transform:uppercase;
  border-radius:20px;
  padding:4px 9px;
  z-index:2;
}

.feed-play{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:56px;
  height:56px;
  border-radius:50%;
  background:rgba(240,235,229,.92);
  display:grid;
  place-items:center;
  box-shadow:0 4px 14px rgba(0,0,0,.25);
  z-index:2;
}
.feed-play svg{width:20px;height:20px;fill:var(--ink);margin-left:3px}

.feed-caption{
  position:absolute;
  left:0;right:0;bottom:0;
  padding:40px 12px 10px;
  background:linear-gradient(180deg,transparent,rgba(20,15,10,.8) 55%);
  color:var(--light);
  font-size:12px;
  line-height:1.35;
  text-align:left;
  text-shadow:0 1px 2px rgba(0,0,0,.6);
  z-index:1;
}
/* The clamp sits on an inner element so the wrapper's padding never shows a
   sliver of a third line. */
.feed-caption-text{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.feed-tile--skeleton{cursor:default}
.feed-tile--skeleton::after{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);
  background-size:200% 100%;
  animation:feed-shimmer 1.4s linear infinite;
}

@keyframes feed-shimmer{
  from{background-position:200% 0}
  to{background-position:-200% 0}
}

.feed-edge-fade{
  position:absolute;
  top:0;bottom:0;
  width:24px;
  pointer-events:none;
  z-index:3;
  opacity:1;
  transition:opacity .15s;
}
.feed-edge-fade--left{left:0;background:linear-gradient(90deg,var(--red),transparent)}
.feed-edge-fade--right{right:0;background:linear-gradient(270deg,var(--red),transparent)}

/* At scroll position 0 there's nothing to the left, so neither the left
   fade nor the left arrow should show over the first tile — same logic in
   reverse at the end of the row. JS toggles these two classes on the wrap
   as the row scrolls (see wireArrows/updateArrowState in social-feed.js). */
.feed-wrap.is-at-start .feed-edge-fade--left{opacity:0}
.feed-wrap.is-at-end .feed-edge-fade--right{opacity:0}
/* While the placeholder tiles show, there is nothing to scroll. */
.feed-wrap.is-loading .feed-arrow,
.feed-wrap.is-loading .feed-edge-fade{visibility:hidden}

.feed-arrow{
  display:none;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:44px;
  height:44px;
  border-radius:50%;
  border:0;
  background:rgba(35,31,32,.45);
  backdrop-filter:blur(2px);
  color:var(--light);
  z-index:4;
  align-items:center;
  justify-content:center;
  opacity:1;
  transition:opacity .15s;
}
.feed-arrow svg{width:18px;height:18px;fill:currentColor}
.feed-arrow--prev{left:16px}
.feed-arrow--next{right:16px}
.feed-arrow[disabled]{opacity:0;pointer-events:none}

@media(min-width:1000px){
  .feed-arrow{display:flex}
}

/* Lightbox — reuses the site's own <dialog> tokens exactly. */
#feed-dialog{
  width:min(400px,calc(100% - 32px));
}
.feed-dialog-heading{display:flex;justify-content:flex-end;margin-bottom:14px}
.feed-dialog-close{
  width:40px;height:40px;
  display:grid;place-items:center;
  border:0;background:none;color:var(--ink);
  font-size:30px;line-height:1;
  border-radius:50%;
}
.feed-dialog-body iframe{
  aspect-ratio:9/16;
  height:min(calc((min(400px,100vw - 32px) - 68px) * 16 / 9),calc(100vh - 260px));
  height:min(calc((min(400px,100vw - 32px) - 68px) * 16 / 9),calc(100dvh - 260px));
  max-width:100%;
  border:0;
  border-radius:10px;
  display:block;
  margin:0 auto;
}
.feed-dialog-fallback{padding:30px 10px;text-align:center}
.feed-dialog-fallback p{margin-bottom:18px;font-size:15px}
.feed-view-on{
  display:inline-block;
  margin-top:16px;
  font-size:14px;
  padding:10px 15px;
  background:#b932281a;
  border-radius:6px;
  text-decoration:none;
  color:var(--ink);
}
.feed-view-on:hover{background:#b9322833}

/* Desktop-first cascade, matching the site's own max-width breakpoint
   pattern. Each rule below only needs to override tile size; gap and row
   padding already fall in line with the site's existing 1000px/700px
   breakpoints (see the shared .feed-row gap rule above and the phone rule
   below). */
@media(max-width:1199px){
  .feed-tile{width:248px;height:440px}
}

@media(max-width:1000px){
  .feed-row{gap:10px}
}

@media(max-width:999px){
  .feed-tile{width:236px;height:420px}
}

@media(max-width:699px){
  .feed-row{padding:6px 12px}
  .feed-tile{width:191px;height:340px}
  .feed-play{width:44px;height:44px}
}

@media(prefers-reduced-motion:reduce){
  .feed-tile--skeleton::after{animation:none}
  .feed-row{scroll-behavior:auto}
}

/* ===== charity ===== */
/* Charity / community page (/charity). Built from the Figma "Built Around Community" frame, 2026-09-29.
   Sizes are the Figma values at 1920px wide, scaled down with clamp() for smaller screens. */

.charity-page .sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* Hero: two-line title at 120px, sentence-case subtitle at 52px, no buttons. */
.charity-hero .hero-shade{background:linear-gradient(180deg,rgba(0,0,0,.28) 0%,rgba(0,0,0,.28) 26%,rgba(0,0,0,.9) 100%)}
.charity-hero h1{left:50%;width:67.1875vw;transform:translateX(-50%);top:45%;letter-spacing:-.04em;text-transform:uppercase}
.charity-hero .hero-copy>p{top:68.2%;font-size:2.708333vw;line-height:.9;text-transform:none;left:50%;width:67.1875vw;transform:translateX(-50%)}

/* Shared section type */
.charity-intro,
.charity-partners,
.charity-request{text-align:center;padding:clamp(64px,8.33vw,160px) 24px}
.charity-intro h2,
.charity-request h2{font-size:clamp(34px,3.125vw,60px);line-height:.958;max-width:630px;margin:0 auto}
.charity-partners h2{font-size:clamp(28px,2.396vw,46px);line-height:1.25}
.charity-intro>p,
.charity-request-lede{max-width:900px;margin:0 auto;font-size:clamp(17px,1.0417vw,20px);line-height:1.4}
.charity-intro h2+p{margin-top:36px}
.charity-intro>p+p{margin-top:21px}
.charity-tagline{font-size:clamp(19px,1.25vw,24px);line-height:1.3;max-width:900px;margin:0 auto}
.charity-intro .charity-tagline{margin-top:41px}

/* Partners */
.charity-partners{background:var(--light)}
.charity-partners .charity-tagline{margin-top:30px}
.partner-grid{container-type:inline-size;max-width:1290px;margin:clamp(40px,4.2vw,80px) auto 0;display:flex;flex-direction:column;gap:clamp(24px,2.3vw,44px)}
.partner-row{list-style:none;margin:0;padding:0;display:flex;align-items:center;justify-content:space-between}
.partner-row-2{padding:0 5.4cqw 0 3.4cqw}
.partner-row li{display:block}
.partner-row a{display:block;width:calc(var(--w) * 100cqw / 1290);height:calc(var(--h) * 100cqw / 1290);border-radius:6px;transition:transform .2s}
.partner-row a:hover{transform:translateY(-3px)}
.partner-row a:focus-visible{outline:3px solid var(--red);outline-offset:6px}
.partner-row img{width:100%;height:100%;object-fit:contain}

/* Request form */
.charity-request-lede{margin-top:clamp(28px,1.875vw,36px)}
.charity-form{max-width:860px;margin:clamp(24px,1.67vw,32px) auto 0;display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;text-align:left;font-family:Inter,Arial,sans-serif;color:var(--ink)}
.charity-wide{grid-column:1/-1}
.charity-field{display:flex;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;border:0}
.charity-field label,
.charity-field legend{font-size:14px;line-height:1.4;padding:0}
.charity-field legend{margin-bottom:16px}
.charity-field input:not([type=radio]),
.charity-field textarea,
.charity-field select{width:100%;height:52px;padding:14px 16px;background:#fff;border:1px solid var(--ink);border-radius:8px;color:var(--ink);font:14px/1.4 Arimo,Arial,sans-serif}
.charity-field textarea{height:160px;resize:vertical;line-height:1.5}
.charity-field ::placeholder{color:#9ca3af;opacity:1}
.charity-field select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:44px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23231f20' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E") no-repeat right 16px center}
.charity-field select:invalid,
.charity-field select.is-empty{color:#9ca3af}
.charity-field select option{color:var(--ink)}
.charity-field input:focus-visible,
.charity-field textarea:focus-visible,
.charity-field select:focus-visible{outline:2px solid var(--red);outline-offset:1px}
.charity-field [aria-invalid="true"]{border-color:#d02124;box-shadow:0 0 0 1px #d02124}
.charity-choices{display:flex;flex-wrap:wrap;gap:16px}
.charity-field .charity-choice{position:relative;display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fff;border:1px solid var(--ink);border-radius:8px;font-size:15px;line-height:1.2;cursor:pointer;white-space:nowrap}
.charity-choice input{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-height:0;margin:0;padding:0;border:1px solid var(--ink);border-radius:50%;background:#fff;flex:none;cursor:pointer}
.charity-choice input:checked{border-color:#d02124;box-shadow:inset 0 0 0 4px #fff;background:#d02124}
.charity-choice:has(input:checked){border-color:#d02124}
.charity-choice:has(input:focus-visible){outline:2px solid var(--red);outline-offset:2px}
.charity-submit{display:flex;justify-content:center;margin-top:30px}
.charity-submit button{min-height:56px;padding:18px 64px;background:#d02124;color:var(--cream);border:0;border-radius:10px;font-family:var(--display);font-size:20px;line-height:1;text-transform:uppercase;white-space:nowrap;transition:background .2s,transform .2s}
.charity-submit button:hover{background:#a81a1d;transform:translateY(-2px)}
.charity-submit button:disabled{opacity:.6;cursor:wait;transform:none}
.charity-form-error{margin:0;color:#b3141a;font-size:14px;text-align:center}
.charity-form-note{margin:0;font-size:15px;line-height:1.5;text-align:center}

@media(max-width:700px){
  .charity-hero h1{top:50%;width:92vw;font-size:11.5vw}
  .charity-hero .hero-copy>p{top:74%;width:86vw;font-size:5vw;line-height:1.15}
  .charity-intro,
.charity-partners,
.charity-request{padding:56px 20px}
  .charity-intro h2+p{margin-top:24px}
  .charity-intro .charity-tagline{margin-top:28px}
  .partner-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 16px;margin-top:36px}
  .partner-row{display:contents}
  .partner-row li{display:flex;align-items:center;justify-content:center}
  .partner-row a{width:100%;max-width:calc(var(--w) * .5px);height:calc(var(--h) * .5px);min-height:44px}
  .charity-form{grid-template-columns:1fr;gap:16px}
  .charity-choices{gap:10px}
  .charity-field .charity-choice{padding:11px 14px;font-size:14px}
  .charity-submit{margin-top:16px}
  .charity-submit button{width:100%;max-width:314px;padding:18px 24px;font-size:18px}
}

/* ===== footer heading margin ===== */
/* Home, menus and private-events always had the 12px margin from the rewards form rules; every other page the 10px footer rule. */
:where(html.pg-home,html.pg-menus,html.pg-private) .footer-subscribe h3{margin:0 0 12px}

/* Order Now launch badge: approved attached cream tab, 2 October 2026.
   Keep the original arrow first and label unchanged; this tab has no extra focus stop. */
a.order-cta{position:relative;overflow:visible}
a.order-cta>.order-badge{
  position:absolute;left:8px;right:auto;top:auto;bottom:calc(100% - 1px);
  display:block;width:max-content;height:auto;margin:0;padding:1px;
  background:#b93228;color:#b93228;border:0;transform:none;
  clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%);
  font:400 12px/16px var(--display);letter-spacing:0;text-indent:0;
  text-decoration:none;text-transform:uppercase;white-space:nowrap;pointer-events:none;
}
a.order-cta>.order-badge>.order-badge-label{
  position:static;display:block;width:auto;height:auto;margin:0;padding:4px 16px 4px 8px;
  background:#fff7ef;color:#b93228;transform:none;
  clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%);
  font:inherit;letter-spacing:0;text-decoration:none;white-space:nowrap;
}
/* Stack layouts reserve the tab's height so it cannot cover the previous control. */
.opening-actions>.order-cta{margin-top:26px}
.site-header .mobile-navigation>.order-cta{margin-top:26px}
.mobile-hero-actions>.order-cta{margin-top:26px}
/* Safe alignment leaves the close control reachable when the card exceeds the viewport. */
.opening-gate.opening-popup[class]{align-items:safe center}

/* Keep the complete phone booking stack clear of the ingredient ticker. */
@media(max-width:700px){
  :where(html.pg-home) .hero h1{top:calc(50% - 20px)}
  :where(html.pg-home) .hero-copy>p{top:calc(68% - 20px)}
  :where(html.pg-home) .mobile-hero-actions{top:calc(74.5% - 20px)}
}
@media(min-width:701px) and (max-width:1024px){
  .hero-booking-cluster .hero-actions>.order-cta{margin-top:26px}
}


/* ===== 2026-10-11 Dipesh mobile homepage requests: header, phone hero, menu slider, footer hours and map ===== */
:root{--stone:#6f6862;--status-open:#34c77b;--status-soon:#dda544;--status-closed:#e5675c;--bar-h:76px;--hint-ink:#4a4546;--arrow-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14'%3E%3Cpath d='M1.5 7h16M12 1.5 17.5 7 12 12.5' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
/* Own visually-hidden class: the per-page .sr-only rules above do not reach every page. */
.hrs-vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ----- Header: Menu, Private Dining, More Bravado, Contact | Gift Cards, Rewards, Sign in, Order now ----- */
@media(min-width:1025px){
  .site-header.home-header{--logo-w:clamp(120px,11.5625vw,190px);--hl-font:12px;--hl-gap:12px;top:clamp(32px,4vw,58px);left:0;right:0;margin-inline:auto;width:min(1240px,calc(100vw - 48px));height:56px;padding:0 24px;border-radius:12px;display:grid;grid-template-columns:1fr 1fr;column-gap:calc(var(--logo-w) + 48px);align-items:center}
  .site-header .nav-left,.site-header .nav-right{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--hl-gap);height:100%}
  .site-header .nav-left{justify-content:flex-start}
  .site-header .nav-right{justify-content:flex-end}
  .site-header .nav-left>a,.site-header .nav-right>a:not(.button),.site-header .nav-left .more-bravado>summary{font-size:var(--hl-font);line-height:1;white-space:nowrap;padding:0}
  .site-header .nav-left .more-bravado>summary{padding:14px 0}
  .site-header .nav-right .button.small{height:36px;min-height:36px;width:auto;padding:0 14px;border-radius:7px;font-size:var(--hl-font);line-height:1;white-space:nowrap;flex:none}
  .site-header .nav-right .button.small::after{content:'';position:absolute;inset:-4px 0}
  .site-header .wordmark{width:var(--logo-w);height:calc(var(--logo-w) * 330 / 540)}
  .site-header .mobile-menu-toggle{display:none}
}
@media(min-width:1180px){.site-header.home-header{--hl-gap:14px}}
@media(min-width:1280px){.site-header.home-header{--hl-font:13px;--hl-gap:18px}}
@media(min-width:1440px){.site-header.home-header{--hl-font:14px;--hl-gap:22px}}

/* Phone and tablet: hamburger. */
@media(max-width:1024px){
  .site-header.home-header{top:28px;left:24px;right:24px;width:auto;height:56px;padding:0;border-radius:10px;display:block;margin:0}
  .site-header .nav-left,.site-header .nav-right{display:none}
  .site-header .wordmark{width:140px;height:86px}
  .mobile-menu-toggle{display:flex;position:absolute;right:0;top:50%;transform:translateY(-50%);width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:3px;background:none;border:0;padding:12px}
  .mobile-menu-toggle span{display:block;width:16px;height:1px;background:var(--ink)}
  .site-header .mobile-navigation:not([hidden]){position:absolute;right:0;top:calc(100% + 16px);z-index:10;display:flex;flex-direction:column;align-items:stretch;gap:0;height:auto;padding:10px;background:#fff;border:1px solid var(--ink);border-radius:8px;width:min(260px,85vw);max-width:none;max-height:calc(100vh - 120px);max-height:calc(100svh - 120px);overflow-y:auto;overscroll-behavior:contain}
  .site-header .mobile-navigation>a{font-size:14px;display:flex;min-height:44px;align-items:center;padding:8px 12px;text-transform:uppercase}
  .site-header .mobile-navigation .more-bravado summary{display:flex;align-items:center;min-height:44px;padding:8px 12px;font-size:14px}
  .site-header .mobile-navigation .more-bravado-links{position:static;width:auto;margin:0 0 8px 12px;padding:0 0 0 8px;border:0;border-left:2px solid var(--ink);border-radius:0;box-shadow:none}
  .site-header .mobile-navigation>a.order-cta{justify-content:center;margin-top:26px;background:var(--red);color:#fff7ef;border-radius:7px}
}
@media(max-width:700px){
  .site-header.home-header{top:24px;left:5vw;right:5vw;height:48px}
  .site-header .wordmark{width:28.358209vw;height:17.412935vw}
}

/* ----- Phone hero: fills the first screen, hours and open/closed pill, bottom bar ----- */
.hero-status,.hero-hours,.hero-walkins{display:none}
.hero-hours,.hours-list{margin:0}
.hero-hours dt,.hero-hours dd,.hours-list dt,.hours-list dd{margin:0}
@media(max-width:700px){
  html.pg-home{--bar-h:76px}
  html.pg-home .hero{aspect-ratio:auto;height:auto;max-height:none;min-height:560px;min-height:100vh;min-height:max(560px,100svh);display:flex;flex-direction:column;justify-content:flex-end}
  html.pg-home .hero-video{object-position:center}
  html.pg-home .hero-shade{background:linear-gradient(180deg,rgba(20,15,10,.35) 0%,rgba(20,15,10,.30) 30%,rgba(20,15,10,.62) 55%,rgba(20,15,10,.82) 100%)}
  html.pg-home .hero-copy{position:relative;inset:auto;width:100%;height:auto;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;text-align:left;padding:96px 20px calc(var(--bar-h) + env(safe-area-inset-bottom,0px) + 28px)}
  html.pg-home .hero-status:not([hidden]){display:inline-flex;align-items:center;gap:10px;height:36px;max-width:100%;padding:0 16px;border-radius:999px;font-size:clamp(14px,4vw,15px);font-weight:700;line-height:1;white-space:nowrap;color:#fff7ef;background:rgba(35,31,32,.60);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,247,239,.30)}
  html.pg-home .hero-status .status-dot{flex:none;width:10px;height:10px;border-radius:50%;background:var(--status-closed)}
  html.pg-home .hero-status[data-state="open"] .status-dot{background:var(--status-open)}
  html.pg-home .hero-status[data-state="soon"] .status-dot{background:var(--status-soon)}
  html.pg-home .hero-copy h1{position:static;width:auto;max-width:none;margin:16px 0 0;font-size:clamp(30px,10vw,46px);line-height:.95;letter-spacing:0;text-align:left;text-shadow:0 2px 12px #0009}
  html.pg-home .hero-copy>p{position:static;width:auto;max-width:none;margin:8px 0 0;font-size:clamp(14px,4.5vw,19px);line-height:1.2;font-weight:700;text-transform:uppercase;text-align:left;text-shadow:0 2px 12px #0009}
  html.pg-home .hero-hours{display:grid;grid-template-columns:repeat(3,1fr);width:100%;margin:16px 0 0;padding:12px 8px;border-radius:14px;text-align:center;background:rgba(35,31,32,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,247,239,.16)}
  html.pg-home .hero-hours>div{min-width:0}
  html.pg-home .hero-hours dt{position:relative;font-size:12px;font-weight:700;line-height:1.3;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,247,239,.85)}
  html.pg-home .hero-hours dd{position:relative;margin-top:4px;font-family:var(--display);font-size:clamp(13px,4vw,16px);line-height:1.2;white-space:nowrap;color:#fff7ef}
  html.pg-home .hero-walkins{display:block;width:100%;margin:12px 0 0;font-size:13px;line-height:1.4;text-align:center;color:rgba(255,247,239,.92);text-shadow:0 1px 6px #000a}
  html.pg-home .hero-booking-cluster{display:none}
  html.pg-home .mobile-hero-actions{position:fixed;left:0;right:0;top:auto;bottom:0;z-index:90;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:var(--ink);border-top:1px solid rgba(255,247,239,.12);box-shadow:0 -8px 24px rgba(0,0,0,.25);overflow:visible}
  html.pg-home .mobile-hero-actions .button{height:52px;min-height:52px;width:100%;margin:0;padding:0 8px;border-radius:10px;font-size:clamp(13px,4vw,16px);font-weight:700;line-height:1;white-space:nowrap;position:relative;transform:none}
  html.pg-home .mobile-hero-actions .button:hover{transform:none}
  html.pg-home .mobile-hero-actions .button:not(.hero-order){background:var(--red);color:#fff7ef;border-color:var(--red)}
  html.pg-home .mobile-hero-actions .button:not(.hero-order):active{background:#92271f}
  html.pg-home .mobile-hero-actions .hero-order{background:#fff7ef;color:var(--red);border-color:var(--red)}
  html.pg-home .mobile-hero-actions .hero-order:active{background:var(--light)}
  html.pg-home .mobile-hero-actions .button:focus-visible{outline:3px solid #fff7ef;outline-offset:3px}
  html.pg-home .mobile-hero-actions .button::after{content:none}
  html.pg-home .figma-footer{padding-bottom:calc(60px + var(--bar-h) + env(safe-area-inset-bottom,0px))}
}
@media(max-width:700px) and (max-height:450px) and (orientation:landscape){
  html.pg-home{--bar-h:60px}
  html.pg-home .hero-status{display:none!important}
  html.pg-home .mobile-hero-actions{padding:8px 16px calc(8px + env(safe-area-inset-bottom,0px))}
  html.pg-home .mobile-hero-actions .button{height:44px;min-height:44px}
}

/* ----- Menu section: photo slider and four menu tiles (home page) ----- */
.menu-section.menu-v2{display:block;position:relative;max-width:1240px;margin:0 auto;padding:96px 40px 120px;grid-template-columns:none}
.menu-section.menu-v2>h2{margin:0;text-align:center;font-size:clamp(40px,3vw,58px);line-height:1.05}
.menu-section.menu-v2>.brand-seal{position:absolute;top:48px;right:40px;margin:0;width:150px;height:150px}
html.pg-home .menu-section.menu-v2>a.menu-explore{display:flex;width:max-content;max-width:100%;margin:20px auto 0;height:60px;min-height:60px;padding:0 40px;border-radius:10px;background:var(--ink);border-color:var(--ink);color:#fff7ef;font-size:clamp(16px,1.3vw,22px);letter-spacing:.05em;white-space:nowrap;justify-self:auto}
html.pg-home .menu-section.menu-v2>a.menu-explore:hover{background:#3a3536}
.menu-slider-wrap{position:relative;margin-top:44px}
.menu-slider{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.menu-slider::-webkit-scrollbar{display:none}
.menu-slider img{flex:0 0 clamp(180px,16vw,230px);width:clamp(180px,16vw,230px);height:auto;aspect-ratio:2/3;border-radius:999px;object-fit:cover;scroll-snap-align:start}
.menu-slider img:nth-child(1){object-position:50% 42%}
.menu-slider img:nth-child(3){object-position:50% 68%}
.menu-slider img:nth-child(5){object-position:50% 52%}
.menu-slider img:nth-child(7){object-position:50% 54%}
.menu-slider:focus-visible{outline:3px solid var(--ink);outline-offset:4px;border-radius:24px}
.slider-arrow{display:none;position:absolute;top:50%;z-index:2;width:48px;height:48px;margin-top:-24px;padding:0;border:1px solid var(--ink);border-radius:50%;background:#fff7ef;color:var(--ink);align-items:center;justify-content:center}
.slider-arrow::before{content:'';width:18px;height:13px;background:currentColor;-webkit-mask:var(--arrow-mask) center/contain no-repeat;mask:var(--arrow-mask) center/contain no-repeat}
.slider-arrow--prev{left:8px}
.slider-arrow--prev::before{transform:scaleX(-1)}
.slider-arrow--next{right:8px}
.slider-arrow:disabled{opacity:.35;cursor:default}
.slider-arrow:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
@media(hover:hover) and (pointer:fine){.slider-arrow{display:flex}.swipe-hint{display:none!important}}
.swipe-hint{display:flex;align-items:center;gap:8px;margin:14px 0 0;font-size:15px;font-weight:700;line-height:1.2;color:var(--hint-ink)}
.swipe-arrow{display:block;width:16px;height:11px;background:currentColor;-webkit-mask:var(--arrow-mask) center/contain no-repeat;mask:var(--arrow-mask) center/contain no-repeat;animation:swipe-nudge 1.6s ease-in-out 3}
.swipe-hint.is-done .swipe-arrow{display:none}
@keyframes swipe-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}
@media(prefers-reduced-motion:reduce){.swipe-arrow{animation:none}.menu-slider{scroll-behavior:auto}}
.menu-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:960px;margin:40px auto 0}
.menu-tile{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:72px;padding:0 20px;border-radius:14px;font-family:var(--display);font-size:clamp(18px,1.6vw,24px);line-height:1;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background .2s,transform .2s;-webkit-tap-highlight-color:transparent}
.menu-tile:hover,.menu-tile:active{transform:translateY(-2px);filter:brightness(.92)}
.menu-tile:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.menu-tile-arrow{flex:none;width:16px;height:11px;background:currentColor;-webkit-mask:var(--arrow-mask) center/contain no-repeat;mask:var(--arrow-mask) center/contain no-repeat}
.menu-tile--brunch{background:var(--mustard);color:var(--ink)}
.menu-tile--lunch{background:var(--stone);color:#fff7ef}
.menu-tile--dinner{background:var(--red);color:#fff7ef}
.menu-tile--bar{background:var(--ink);color:#fff7ef}
@media(max-width:1024px){
  .menu-section.menu-v2{padding:72px 28px 96px}
  .menu-section.menu-v2>.brand-seal{top:112px;right:28px;width:112px;height:112px}
  .menu-tile{min-height:64px}
}
@media(max-width:700px){
  .menu-section.menu-v2{padding:24px 20px 56px}
  .menu-section.menu-v2>.brand-seal{top:16px;right:20px;width:80px;height:80px}
  .menu-section.menu-v2>h2{text-align:left;max-width:calc(100% - 96px);font-size:clamp(22px,6.9vw,40px);line-height:1.05;text-wrap:balance}
  html.pg-home .menu-section.menu-v2>a.menu-explore{margin:20px 0 0;width:max-content;height:auto;min-height:48px;padding:0 24px;font-size:clamp(14px,4vw,17px)}
  .menu-slider-wrap{margin:28px -20px 0}
  .menu-slider{gap:12px;padding-inline:20px;scroll-padding-inline:20px}
  .menu-slider img{flex:0 0 clamp(128px,38vw,190px);width:clamp(128px,38vw,190px)}
  .swipe-hint{margin:14px 0 0}
  .menu-tiles{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px;max-width:none}
  .menu-tile{min-height:56px;padding:0 14px 0 16px;font-size:clamp(15px,4.8vw,20px)}
}

/* ----- Footer: hours and map (every page) ----- */
.figma-footer .footer-visit{display:grid;grid-template-columns:320px 1fr;gap:60px;width:100%;max-width:1300px;margin:72px auto 0;padding-top:56px;border-top:1px solid rgba(240,235,229,.18)}
.figma-footer .footer-hours{max-width:360px}
.figma-footer .footer-hours h3{margin:0 0 16px}
.figma-footer .hours-list>div{display:grid;grid-template-columns:1fr auto;gap:16px;padding:12px 0;border-bottom:1px solid rgba(240,235,229,.18);font-size:16px;font-variant-numeric:tabular-nums;color:var(--light)}
.figma-footer .footer-map iframe{display:block;width:100%;height:320px;border:1px solid rgba(240,235,229,.25);border-radius:14px;background:#2d2829}
.figma-footer .footer-map-link{display:inline-block;margin-top:12px;padding:12px 0;font-size:14px;line-height:1.4;color:var(--light);text-decoration:underline;text-underline-offset:4px}
@media(max-width:1200px){.figma-footer .footer-visit{grid-template-columns:280px 1fr;gap:36px}.figma-footer .footer-map iframe{height:280px}}
@media(max-width:900px){.figma-footer .footer-visit{grid-template-columns:1fr;gap:40px;max-width:680px}.figma-footer .footer-hours{max-width:none}}
@media(max-width:560px){.figma-footer .footer-visit{gap:36px;margin-top:56px;padding-top:44px}.figma-footer .hours-list>div{font-size:15px}.figma-footer .footer-map iframe{height:240px}}


/* Footer grid used fixed 1240px of columns, which overflowed the page between 1201 and 1320px wide. */
@media(max-width:1320px){.figma-footer .footer-grid{grid-template-columns:1fr 1.2fr 1.7fr 1.2fr;gap:36px}}
/* The phone/tablet menu rows are already 44px tall; the desktop hit-area extension would add a scrollbar. */
@media(max-width:1024px){.site-header .mobile-navigation>a::before{content:none}}

/* Tablet home hero (701 to 1024): taller box so the walk-ins note stays inside the hero. */
@media(min-width:701px) and (max-width:1024px){
html.pg-home .hero{aspect-ratio:3/2}
html.pg-home .hero h1{top:36%}
html.pg-home .hero-copy>p{top:54%}
html.pg-home .hero-booking-cluster{top:64%}
}
