:root{--bg:#101011;--off:#f5f1e8;--ink:#1b1918;--red:#df3028;--muted:#77746e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--off);font-family:'DM Sans',sans-serif;color:var(--ink)}a{text-decoration:none;color:inherit}button{font:inherit}.header{height:82px;background:#101011;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,90px);position:sticky;top:0;z-index:10;color:white;border-bottom:1px solid #ffffff17}.brand{display:flex;align-items:center;gap:13px;font:800 20px 'Outfit',sans-serif;letter-spacing:-.7px;white-space:nowrap}.brand img{height:55px;width:55px;object-fit:contain;border-radius:6px}.brand b{color:#f2483e}nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:700}nav>a:hover{color:#ff6458}.nav-order{background:var(--red);padding:14px 22px;border-radius:3px;color:white!important}.nav-order span{margin-left:12px}.nav-toggle{display:none;background:none;color:white;border:0;font-size:27px}.hero{height:min(840px,calc(100svh - 82px));min-height:620px;position:relative;background:#15120f;overflow:hidden;color:white}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.73) saturate(1.12)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,7,7,.92),rgba(10,7,7,.55) 52%,rgba(10,7,7,.15)),linear-gradient(0deg,rgba(0,0,0,.8),transparent 40%)}.hero-content{position:relative;z-index:1;max-width:1320px;margin:auto;padding:clamp(100px,13vh,175px) 6vw 80px}.eyebrow,.kicker{color:var(--red);font-weight:800;letter-spacing:2.8px;font-size:12px}.eyebrow{color:#fff}.dot{display:inline-block;width:8px;height:8px;background:#f44e43;border-radius:50%;margin-right:12px}.hero h1,h2{font-family:'Outfit',sans-serif;font-weight:800;letter-spacing:-.055em;line-height:.99}.hero h1{font-size:clamp(52px,7.4vw,112px);margin:28px 0}.hero h1 em,h2 em{color:var(--red);font-style:normal}.hero-content>p{font-size:clamp(16px,1.5vw,19px);color:#ece5df;max-width:490px;line-height:1.75}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:17px 24px;font-weight:800;font-size:13px;border-radius:3px;transition:transform .15s}.btn:hover{transform:translateY(-2px)}.btn.red{background:var(--red);color:white}.btn.ghost{border:1px solid #ffffff70;color:white}.hero-bottom{position:absolute;bottom:0;width:100%;background:#0e0c0bc9;color:#c7bdb6;font-size:10px;letter-spacing:3px;text-align:center;padding:19px 12px}.hero-bottom span{color:#f14a40;padding:0 22px}.intro{display:grid;grid-template-columns:1fr 1fr;min-height:560px}.intro-text{padding:clamp(55px,8vw,130px);align-self:center}.intro h2,.section-top h2,.feature-copy h2,.rewards h2,.location h2{font-size:clamp(48px,5vw,80px);margin:20px 0 22px}.intro p,.feature-copy p,.rewards p,.location p{font-size:16px;line-height:1.85;color:#65615d;max-width:520px}.text-link{display:inline-block;margin-top:15px;padding-bottom:9px;border-bottom:2px solid var(--red);font-weight:800;font-size:13px}.text-link span{margin-left:30px}.intro-photo{position:relative;min-height:500px}.intro-photo img,.feature-image img,.location-image img{position:absolute;width:100%;height:100%;object-fit:cover}.stamp{position:absolute;bottom:30px;right:30px;background:var(--red);color:white;border-radius:50%;width:112px;height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(12deg);font:800 17px/1.2 'Outfit',sans-serif;text-align:center}.menu-section{padding:100px clamp(22px,6vw,100px) 85px;background:#efebe3}.section-top{display:flex;justify-content:space-between;align-items:end;gap:25px}.section-top h2{margin-bottom:16px}.section-top p{color:#6c6863}.menu-label{font-size:11px;font-weight:800;letter-spacing:2px;white-space:nowrap}.filters{display:flex;gap:10px;overflow-x:auto;padding:24px 0 32px}.filter{border:1px solid #d0c8bf;border-radius:3px;background:transparent;padding:12px 19px;white-space:nowrap;cursor:pointer;font-weight:700;font-size:12px}.filter.active,.filter:hover{background:#151414;border-color:#151414;color:#fff}.food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.food-card{background:#faf8f3;min-width:0}.food-img{aspect-ratio:1.34;overflow:hidden;background:#30251d}.food-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.food-card:hover img{transform:scale(1.05)}.food-info{padding:24px}.food-category{font-size:10px;color:var(--red);font-weight:800;letter-spacing:1.8px}.food-info h3{font:800 25px 'Outfit',sans-serif;letter-spacing:-.7px;margin:11px 0}.food-info p{font-size:13px;color:#706b65;line-height:1.65;margin:0}.menu-notice{font-size:12px;color:#7e766c;margin-top:30px}.feature-section{display:grid;grid-template-columns:1.05fr .95fr;background:#181616;color:white;min-height:560px}.feature-image{position:relative;min-height:440px}.feature-copy{align-self:center;padding:80px clamp(32px,7vw,120px)}.feature-copy p{color:#b1aaa5}.feature-copy .btn{margin-top:18px}.rewards{background:#d72d25;color:white;padding:105px clamp(25px,10vw,170px);display:flex;justify-content:space-between;align-items:center;gap:35px}.rewards .kicker,.rewards h2 em{color:#ffd3b7}.rewards p{color:#f7d6d1}.rewards-symbol{border:4px solid #ffffff9c;border-radius:50%;width:190px;height:190px;flex-shrink:0;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:110px;transform:rotate(12deg)}.rewards-symbol span{font-size:14px;font-weight:800;letter-spacing:3px;margin-top:-16px}.location{display:grid;grid-template-columns:1fr 1fr;min-height:560px}.location>div:first-child{padding:95px clamp(30px,8vw,135px)}.location p a{font-weight:700}.location-image{position:relative;min-height:390px}.location .btn{margin-top:14px}.location .footnote{font-size:12px;color:#837c75}footer{background:#111;color:white;padding:40px clamp(22px,6vw,100px);display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:11px;color:#b2a9a4}footer p{letter-spacing:2px;font-weight:800}@media(max-width:900px){nav{gap:14px}nav>a{font-size:11px}.brand{font-size:17px}.intro-text{padding:65px 35px}.food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-copy{padding:55px 35px}.rewards{padding:80px 50px}}@media(max-width:680px){.header{height:72px}.brand img{width:48px;height:48px}.nav-toggle{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;background:#111;padding:20px;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav>a{font-size:15px;padding:15px}.hero{height:700px;min-height:590px}.hero-video{object-position:center}.hero-content{padding:145px 24px 80px}.hero h1{font-size:clamp(48px,11vw,73px)}.hero-bottom{letter-spacing:1px;font-size:9px}.hero-bottom span{padding:0 6px}.intro,.feature-section,.location{grid-template-columns:1fr}.intro-photo{min-height:350px}.intro-text{padding:65px 26px}.menu-section{padding:70px 20px}.section-top{display:block}.menu-label{display:none}.food-grid{gap:13px}.food-info{padding:15px}.food-info h3{font-size:20px}.food-img{aspect-ratio:1.05}.feature-image{min-height:320px}.feature-copy{padding:60px 25px}.rewards{padding:70px 25px}.rewards-symbol{display:none}.location>div:first-child{padding:70px 25px}.location-image{min-height:310px}footer{flex-direction:column;align-items:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-video{display:none}*{transition:none!important}}

/* v2 homepage refinements */
html{scroll-padding-top:86px}
.brand img{width:53px;height:60px;object-fit:contain;border-radius:0}
.hero{height:clamp(630px,calc(100svh - 82px),820px)}
.hero-video{filter:brightness(.89) saturate(1.05)}
.hero-shade{background:linear-gradient(90deg,rgba(11,8,8,.88),rgba(11,8,8,.48) 52%,rgba(11,8,8,.14)),linear-gradient(0deg,rgba(0,0,0,.64),transparent 38%)}
.hero-content{padding-top:clamp(115px,17vh,178px)}
.hero h1{font-size:clamp(51px,5.5vw,83px);max-width:860px;line-height:1.03;margin:25px 0}
.hero-content>p{max-width:450px}
.food-grid{max-width:1500px;margin:0 auto}
.food-info{min-height:166px}
.food-name-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.food-name-line h3{font-size:clamp(19px,1.6vw,24px)}
.food-price{font:800 17px 'Outfit',sans-serif;white-space:nowrap;color:#242120}
.feature-image img{object-position:center}
.rewards{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(35px,7vw,105px);padding-top:95px;padding-bottom:95px}
.rewards-copy{max-width:660px}
.rewards-footnote{display:block;font-size:12px;color:#ffe7db;margin-top:16px}
.reward-steps{display:grid;gap:0;border-top:1px solid #ffffff80}
.reward-steps>div{display:flex;align-items:center;gap:24px;padding:24px 8px;border-bottom:1px solid #ffffff80;font-size:16px;font-weight:700}
.reward-steps strong{font:800 32px 'Outfit',sans-serif;color:#ffd7c0}
@media(max-width:900px){.hero h1{font-size:clamp(48px,7vw,69px)}.rewards{grid-template-columns:1fr;gap:22px}.reward-steps{max-width:650px}}
@media(max-width:680px){.hero{height:650px;min-height:570px}.hero-content{padding:125px 24px 80px}.hero h1{font-size:clamp(45px,10vw,59px);max-width:550px}.food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.food-name-line{display:block}.food-price{display:block;margin:2px 0 8px}.food-info{min-height:0}.rewards{padding:66px 25px}.reward-steps>div{padding:18px 0}}
@media(max-width:440px){.food-grid{grid-template-columns:1fr}.food-img{aspect-ratio:1.45}.hero-bottom{font-size:8px;letter-spacing:.3px}}


/* v3 location refresh */
.location-hero{position:relative;min-height:640px;display:flex;align-items:center;overflow:hidden;background:#0d0b0a;color:#fff}
.location-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.location-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,8,8,.83) 0%,rgba(10,8,8,.62) 36%,rgba(10,8,8,.32) 60%,rgba(10,8,8,.18) 100%),linear-gradient(0deg,rgba(0,0,0,.28),rgba(0,0,0,.28))}
.location-panel{position:relative;z-index:1;max-width:620px;margin-left:clamp(24px,8vw,118px);margin-right:24px;padding:clamp(34px,4vw,44px);background:rgba(14,12,12,.32);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.12);border-radius:6px;box-shadow:0 16px 45px rgba(0,0,0,.22)}
.location-hero h2{font-size:clamp(50px,5.8vw,88px);margin:12px 0 18px;line-height:.98;color:#fff}
.location-hero h2 em{font-style:normal;color:var(--red)}
.location-copy{font-size:17px;line-height:1.8;color:#f0e9e2;max-width:520px;margin:0 0 20px}
.location-details{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px;margin:24px 0 10px}
.location-details p{margin:0;color:#fff;font-size:16px;line-height:1.8}
.location-details a{color:#fff;font-weight:700}
.location-hero .footnote{margin-top:18px;font-size:12px;color:#ddd1c8}
.location-hero .btn.ghost{border-color:#ffffff5a;background:rgba(255,255,255,.04)}
@media(max-width:900px){.location-hero{min-height:580px}.location-panel{max-width:560px}}
@media(max-width:680px){.location-hero{min-height:560px;padding:22px 0}.location-panel{margin:0 18px;padding:28px 22px;background:rgba(14,12,12,.52)}.location-hero h2{font-size:clamp(42px,12vw,60px)}.location-copy{font-size:15px}.location-details{grid-template-columns:1fr;gap:12px}.location-hero .actions{gap:10px}}


/* v4 logo + location refinement */
.brand.wordmark-only{gap:0;font-size:22px}
.hero-logo{display:block;width:132px;max-width:30vw;height:auto;margin:0 0 16px -4px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.35))}
.hero-content .eyebrow{margin-top:2px}
.location-hero{position:relative;min-height:600px;display:flex;align-items:center;background:#0d0b0a;color:#fff;overflow:hidden}
.location-content{position:relative;z-index:1;max-width:720px;padding:90px clamp(24px,8vw,120px)}
.location-hero h2{font-size:clamp(54px,6vw,92px);margin:14px 0 18px;line-height:.98;color:#fff;text-shadow:0 8px 30px rgba(0,0,0,.35)}
.location-copy{font-size:18px;line-height:1.75;color:#f2ece6;max-width:620px;margin:0 0 24px;text-shadow:0 4px 20px rgba(0,0,0,.35)}
.location-details{display:grid;grid-template-columns:1fr 1fr;gap:16px 34px;margin:20px 0 10px;max-width:620px}
.location-details p{margin:0;color:#fff;font-size:17px;line-height:1.8;text-shadow:0 4px 20px rgba(0,0,0,.35)}
.location-details a{color:#fff;font-weight:700}
.location-hero .footnote{font-size:12px;color:#e7dad1;margin-top:18px;text-shadow:0 4px 20px rgba(0,0,0,.35)}
.location-hero .btn.ghost{border-color:#ffffff6a;background:rgba(255,255,255,.04);color:#fff}
@media(max-width:900px){.hero-logo{width:118px}.location-content{padding:80px 48px}.location-details{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.brand.wordmark-only{font-size:18px}.hero-logo{width:108px;margin-bottom:14px}.location-hero{min-height:560px}.location-content{padding:70px 24px}.location-hero h2{font-size:clamp(44px,12vw,62px)}.location-copy{font-size:15px}.location-details{grid-template-columns:1fr;gap:10px}.location-details p{font-size:15px}}


/* v5 logo treatment */
.header .brand.wordmark-only{font-size:0;line-height:0}
.header .brand.wordmark-only span{font:800 22px/1 'Outfit',sans-serif;letter-spacing:-.7px;color:#fff}
.header .brand.wordmark-only b{color:var(--red)}
.hero-brand{display:inline-flex;align-items:center;gap:18px;background:rgba(8,7,7,.72);border:1px solid rgba(255,255,255,.08);padding:12px 18px 12px 12px;border-radius:2px;box-shadow:0 10px 35px rgba(0,0,0,.22);margin:0 0 18px}
.hero-brand-logo,.footer-brand img{width:86px !important;height:86px !important;object-fit:contain;border-radius:0;flex:0 0 86px}
.hero-brand-wordmark{font:800 24px/1 'Outfit',sans-serif;letter-spacing:-.7px;color:#fff;white-space:nowrap}
.hero-brand-wordmark b,.footer-brand b{color:var(--red)}
.hero .eyebrow{margin-top:10px}
.footer-brand{gap:16px;font-size:22px}
.footer-brand span{font:800 22px/1 'Outfit',sans-serif;letter-spacing:-.7px;color:#fff;white-space:nowrap}
@media(max-width:680px){.header .brand.wordmark-only span{font-size:18px}.hero-brand{gap:12px;padding:10px 14px 10px 10px;margin-bottom:14px}.hero-brand-logo,.footer-brand img{width:68px !important;height:68px !important;flex-basis:68px}.hero-brand-wordmark,.footer-brand span{font-size:18px}.footer-brand{gap:12px}}


/* v6 ribbon logo update */
.header{position:sticky;top:0;z-index:30;overflow:visible;height:98px;padding:0 40px 0 280px;background:#090909;border-bottom:1px solid #ffffff0d}
.ribbon-brand{position:absolute;left:44px;top:12px;display:flex;align-items:flex-start;gap:18px;z-index:31}
.site-logo{width:118px;height:118px;object-fit:contain;display:block;filter:drop-shadow(0 10px 18px rgba(0,0,0,.28))}
.ribbon-brand span{display:block;padding-top:27px;font:800 24px/1 'Outfit',sans-serif;letter-spacing:-.7px;white-space:nowrap;color:#fff}
.ribbon-brand b,.footer-brand b{color:var(--red)}
.header nav{margin-left:auto}
.hero{height:clamp(640px,calc(100svh - 98px),835px)}
.hero-content{padding-top:clamp(135px,19vh,200px)}
.footer-brand{gap:16px;font-size:22px;align-items:center}
.footer-brand span{font:800 24px/1 'Outfit',sans-serif;letter-spacing:-.7px;color:#fff;white-space:nowrap}
.footer-brand .site-logo{width:118px;height:118px;flex:0 0 118px}
/* neutralize previous hero brand/header overrides */
.hero-brand,.hero-logo,.hero-brand-logo,.hero-brand-wordmark{display:none !important}
.header .brand.wordmark-only{display:none}
@media(max-width:1100px){.header{padding-left:248px}.ribbon-brand{left:28px}.site-logo{width:104px;height:104px}.ribbon-brand span{padding-top:24px;font-size:21px}.footer-brand .site-logo{width:104px;height:104px;flex-basis:104px}.footer-brand span{font-size:21px}}
@media(max-width:680px){.header{height:84px;padding:0 18px 0 118px}.ribbon-brand{left:12px;top:8px;gap:10px}.site-logo{width:74px;height:74px}.ribbon-brand span{padding-top:16px;font-size:16px}.header nav{top:84px}.hero{height:700px;min-height:590px}.hero-content{padding-top:128px}.footer-brand .site-logo{width:74px;height:74px;flex-basis:74px}.footer-brand span{font-size:16px}}


/* v7 large hanging ribbon logo */
.header{height:108px;padding:0 38px 0 320px;overflow:visible;position:sticky;top:0;z-index:40;background:#080808;border-bottom:1px solid rgba(255,255,255,.08)}
.ribbon-brand{position:absolute;left:28px;top:10px;display:flex;align-items:flex-start;gap:20px;z-index:45;text-decoration:none}
.site-logo{width:165px !important;height:165px !important;object-fit:contain;display:block;filter:drop-shadow(0 14px 22px rgba(0,0,0,.34))}
.ribbon-brand span{display:block;padding-top:28px;font:800 24px/1 'Outfit',sans-serif;letter-spacing:-.8px;color:#fff;white-space:nowrap}
.header nav{margin-left:auto;padding-top:2px}
.hero{height:clamp(660px,calc(100svh - 108px),860px)}
.hero-content{padding-top:clamp(150px,21vh,220px)}
.footer-brand .site-logo{width:165px !important;height:165px !important;flex:0 0 165px}
.footer-brand span{font-size:24px}
@media(max-width:1200px){.header{padding-left:290px}.site-logo{width:148px !important;height:148px !important}.footer-brand .site-logo{width:148px !important;height:148px !important;flex-basis:148px}}
@media(max-width:900px){.header{padding-left:250px}.ribbon-brand{left:18px;gap:14px}.site-logo{width:128px !important;height:128px !important}.ribbon-brand span{padding-top:24px;font-size:21px}.footer-brand .site-logo{width:128px !important;height:128px !important;flex-basis:128px}.footer-brand span{font-size:21px}}
@media(max-width:680px){.header{height:86px;padding:0 14px 0 112px}.ribbon-brand{left:10px;top:8px;gap:10px}.site-logo{width:96px !important;height:96px !important}.ribbon-brand span{padding-top:16px;font-size:16px}.header nav{top:86px}.hero{height:700px;min-height:590px}.hero-content{padding-top:120px}.footer-brand .site-logo{width:96px !important;height:96px !important;flex-basis:96px}.footer-brand span{font-size:16px}}


/* v8 spacing refinement */
.header{height:100px;padding-left:320px}
.ribbon-brand{top:-2px;left:24px}
.ribbon-brand span{padding-top:32px}
.hero{height:clamp(640px,calc(100svh - 100px),820px)}
.hero-content{padding-top:clamp(98px,15vh,138px)}
@media(max-width:1200px){.header{height:98px;padding-left:286px}.ribbon-brand{left:20px;top:0}.hero{height:clamp(620px,calc(100svh - 98px),800px)}.hero-content{padding-top:110px}}
@media(max-width:900px){.header{height:94px;padding-left:246px}.ribbon-brand{left:16px;top:2px}.hero-content{padding-top:108px}}
@media(max-width:680px){.header{height:86px;padding:0 14px 0 112px}.ribbon-brand{left:10px;top:8px}.hero-content{padding-top:118px}}


/* v9: reduce gap between hanging logo and hero text. Logo/header unchanged. */
@media (min-width: 901px) {
  .hero-content { padding-top: 56px; }
}
@media (min-width: 681px) and (max-width: 900px) {
  .hero-content { padding-top: 65px; }
}


/* v10: align wordmark to the exact vertical centre of the hanging logo */
.header .ribbon-brand{display:flex;align-items:center;gap:4px;}
.header .ribbon-brand > span{padding:0 !important;margin:0;line-height:1;align-self:center;}
footer .footer-brand{display:flex;align-items:center;gap:4px;}
footer .footer-brand > span{padding:0;margin:0;line-height:1;}
@media(max-width:900px){.header .ribbon-brand{gap:4px;}footer .footer-brand{gap:4px;}}


/* v11 tighten logo-to-wordmark spacing */
.header .ribbon-brand{gap:0 !important;}
.header .ribbon-brand > span{margin-left:-18px !important;}
footer .footer-brand{gap:0 !important;}
footer .footer-brand > span{margin-left:-18px !important;}
@media(max-width:900px){.header .ribbon-brand > span{margin-left:-14px !important;}footer .footer-brand > span{margin-left:-14px !important;}}
@media(max-width:680px){.header .ribbon-brand > span{margin-left:-10px !important;}footer .footer-brand > span{margin-left:-10px !important;}}

/* Official menu and mobile layout */
.food-grid{display:block;max-width:1300px;margin:0 auto}
.menu-group{margin:0 0 44px;scroll-margin-top:110px}
.menu-group h3{font:800 clamp(25px,3vw,37px)/1.1 'Outfit',sans-serif;letter-spacing:-.03em;margin:0 0 17px;padding:0 0 14px;border-bottom:2px solid #ded5ca;display:flex;align-items:baseline;justify-content:space-between;gap:15px}
.menu-group h3 span{font:600 12px 'DM Sans',sans-serif;color:#817b75;letter-spacing:0;white-space:nowrap}
.menu-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}
.menu-item{display:flex;align-items:center;gap:16px;min-width:0;background:#faf8f3;border:1px solid #e8e1d8;border-radius:8px;padding:13px;min-height:80px}
.menu-item img{height:76px;width:100px;flex:0 0 100px;object-fit:cover;border-radius:6px}
.menu-item-details{display:flex;align-items:center;justify-content:space-between;gap:15px;flex:1;min-width:0}
.menu-item h4{font:700 16px/1.35 'Outfit',sans-serif;margin:0;overflow-wrap:anywhere}
.menu-item-price{font:800 15px 'Outfit',sans-serif;white-space:nowrap;color:#d72d25}
.filters{scrollbar-width:thin;position:relative}
.filter{flex-shrink:0}
.header .ribbon-brand{position:absolute}
@media(max-width:900px){
 .header{padding-right:20px}
 .header nav{gap:8px}
 .header nav>a{font-size:11px}
 .header .nav-order{padding:12px 14px}
 .intro-text,.feature-copy{padding:55px 30px}
}
@media(max-width:680px){
 html,body{max-width:100%;overflow-x:clip}
 .header{height:82px!important;padding:0 14px 0 14px!important}
 .header .ribbon-brand{left:8px!important;top:0!important;gap:0!important;max-width:calc(100% - 65px)}
 .header .ribbon-brand .site-logo{width:92px!important;height:92px!important;flex:0 0 92px!important}
 .header .ribbon-brand>span{margin-left:-10px!important;font-size:15px!important;line-height:1.1!important;padding:0!important;align-self:center}
 .nav-toggle{position:relative;margin-left:auto;z-index:2}
 #nav{top:82px;max-height:calc(100dvh - 82px);overflow:auto;box-shadow:0 20px 30px #0005}
 #nav a{font-size:15px}
 .hero{height:auto!important;min-height:610px!important}
 .hero-content{padding:125px 22px 86px!important}
 .hero h1{font-size:clamp(43px,10.5vw,58px)!important;overflow-wrap:break-word}
 .hero-content>p{font-size:15px;line-height:1.65}
 .hero-bottom{font-size:8px;line-height:1.7;padding:11px 8px}
 .actions{gap:10px}
 .actions .btn{padding:14px 15px;font-size:12px}
 .intro,.feature-section,.location{grid-template-columns:minmax(0,1fr)}
 .intro-photo,.feature-image{min-height:320px}
 .intro-text,.feature-copy{padding:55px 22px}
 .menu-section{padding:60px 16px}
 .menu-items{grid-template-columns:minmax(0,1fr);gap:9px}
 .menu-group{margin-bottom:32px}
 .menu-item{gap:10px;padding:10px;min-height:66px}
 .menu-item img{height:64px;width:76px;flex-basis:76px}
 .menu-item h4{font-size:14px}
 .menu-item-price{font-size:14px}
 .menu-group h3{font-size:27px}
 .rewards{grid-template-columns:minmax(0,1fr);padding:60px 22px}
 .rewards h2,.intro h2,.section-top h2,.feature-copy h2{font-size:clamp(38px,10vw,56px)}
 .location-hero{min-height:610px}
 .location-content{max-width:100%;padding:80px 22px 45px}
 .location-details{grid-template-columns:1fr}
 footer{padding:28px 20px}
 footer .footer-brand .site-logo{width:92px!important;height:92px!important;flex-basis:92px!important}
 footer .footer-brand>span{font-size:16px!important}
}


/* v12 mobile review fixes */
.filters{-ms-overflow-style:none;scrollbar-width:none}
.filters::-webkit-scrollbar{display:none}
.menu-notice{font-size:12px;line-height:1.7}

@media(max-width:680px){
  html{scroll-padding-top:82px}
  body{overflow-x:hidden}

  /* header + ribbon brand */
  .header{height:82px !important;padding:0 14px !important}
  .header .ribbon-brand{
    left:8px !important;
    top:3px !important;
    gap:0 !important;
    max-width:calc(100% - 60px);
    align-items:center !important;
  }
  .header .ribbon-brand .site-logo{
    width:90px !important;
    height:90px !important;
    flex:0 0 90px !important;
  }
  .header .ribbon-brand > span{
    margin-left:-12px !important;
    font-size:15px !important;
    line-height:1 !important;
  }
  .nav-toggle{font-size:25px;line-height:1;padding:8px 4px}
  #nav{top:82px;padding:12px 0 18px}
  #nav a{padding:14px 18px}

  /* hero */
  .hero{min-height:600px !important;height:auto !important}
  .hero-content{padding:124px 22px 78px !important}
  .hero-content > p{max-width:330px}
  .hero-bottom{padding:11px 8px;font-size:8px;letter-spacing:.35px;line-height:1.7}
  .hero-bottom span{padding:0 4px}

  /* intro */
  .intro-text,.feature-copy{padding:52px 22px}
  .intro-photo{min-height:300px}
  .stamp{width:86px;height:86px;font-size:14px;bottom:18px;right:18px}

  /* menu */
  .menu-section{padding:56px 16px}
  .section-top p{max-width:unset}
  .filters{padding:18px 0 20px;margin:0 -2px}
  .filter{padding:11px 15px;font-size:12px}
  .menu-group{scroll-margin-top:92px;margin-bottom:30px}
  .menu-group h3{font-size:26px;padding-bottom:12px;margin-bottom:14px}
  .menu-items{gap:10px}
  .menu-item{gap:10px;padding:10px 11px;min-height:72px;border-radius:10px}
  .menu-item img{width:80px;height:64px;flex-basis:80px;border-radius:7px}
  .menu-item h4{font-size:14px;line-height:1.28}
  .menu-item-price{font-size:14px}

  /* rewards */
  .rewards{padding:56px 22px}
  .reward-steps > div{padding:16px 0;gap:18px}
  .reward-steps strong{font-size:28px}

  /* location */
  .location-hero{min-height:620px;padding:0}
  .location-overlay{
    background:linear-gradient(180deg,rgba(10,8,8,.44) 0%,rgba(10,8,8,.58) 22%,rgba(10,8,8,.78) 52%,rgba(10,8,8,.9) 100%);
  }
  .location-bg{object-position:38% center}
  .location-content{max-width:100%;padding:78px 22px 34px !important}
  .location-hero h2{font-size:clamp(42px,11vw,58px)}
  .location-copy{font-size:15px;line-height:1.7;max-width:100%;margin-bottom:18px}
  .location-details{grid-template-columns:1fr;gap:10px;margin:18px 0 8px;max-width:100%}
  .location-details p{font-size:15px;line-height:1.65}
  .location-hero .actions{display:grid;grid-template-columns:1fr;gap:10px}
  .location-hero .actions .btn{width:100%}
  .location-hero .footnote{margin-top:14px}

  /* footer */
  footer{padding:24px 20px 28px;gap:12px}
  footer .footer-brand{gap:0 !important;align-items:center}
  footer .footer-brand .site-logo{width:90px !important;height:90px !important;flex-basis:90px !important}
  footer .footer-brand > span{margin-left:-12px !important;font-size:15px !important;line-height:1}
  footer p{font-size:10px;letter-spacing:1.6px}
}

/* Phase 2: preview cart — matches Tandoor Bros black/red design */
.add-cart{border:0;border-radius:7px;background:#dd2c25;color:#fff;padding:9px 16px;font:inherit;font-size:13px;font-weight:750;cursor:pointer;margin-top:9px;display:block;width:max-content}
.add-cart:hover{background:#b71c1c}
.cart-fab{position:fixed;bottom:20px;right:20px;z-index:90;border:1px solid #f35a4e;background:#d92321;color:#fff;border-radius:999px;padding:15px 22px;box-shadow:0 9px 35px #0007;font:inherit;font-weight:800;cursor:pointer}
.cart-fab span{display:inline-grid;place-items:center;background:#fff;color:#151515;width:25px;height:25px;border-radius:50%;margin-left:8px}
.cart-backdrop{position:fixed;inset:0;background:#090909b9;z-index:98}
.cart-panel{position:fixed;inset:0 0 0 auto;width:min(100%,440px);background:#151515;color:#f7f3ee;z-index:99;display:flex;flex-direction:column;padding:25px;box-sizing:border-box;overflow:auto;box-shadow:-5px 0 40px #0006}
.cart-panel[hidden],.cart-backdrop[hidden],.cart-fab[hidden]{display:none!important}
body.cart-open{overflow:hidden}
.cart-heading{display:flex;justify-content:space-between;align-items:start;gap:18px}
.cart-heading h2{font-size:32px;line-height:1;margin:8px 0}
.cart-close{background:#2b2b2b;color:#fff;border:1px solid #4c4c4c;border-radius:9px;padding:9px 14px;cursor:pointer}
.cart-preview-warning{font-size:13px;color:#f6c8c5;background:#5b201d;padding:13px;border-radius:9px;margin:18px 0}
.cart-lines{flex:1;min-height:70px}
.cart-line{display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid #ffffff26;padding:16px 0}
.cart-line>div:first-child{display:flex;flex-direction:column;gap:6px}
.cart-line strong{font-size:15px}.cart-line span{font-size:13px;color:#c5c5c5}
.cart-line-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}
.cart-line-actions button{border:1px solid #616161;background:#292929;color:#fff;border-radius:7px;width:32px;height:32px;cursor:pointer;font-size:21px}
.cart-empty{color:#bbb;font-size:14px}
.cart-bottom{border-top:1px solid #ffffff2d;padding-top:18px}
.cart-total{display:flex;justify-content:space-between;font-size:18px}
.cart-bottom p{color:#adadad;font-size:12px;line-height:1.5}
.cart-disabled{background:#393939;border:1px solid #666;color:#eee;border-radius:8px;width:100%;padding:14px;font:inherit;font-weight:700;cursor:not-allowed}
@media(max-width:600px){.cart-fab{bottom:13px;right:13px}.cart-panel{padding:20px}}

/* Owner-only test checkout: intentionally unavailable to public visitors */
.test-checkout{margin-top:18px;padding:17px;border:2px dashed #d63729;background:#fff9f2;border-radius:12px;color:#241b17}
.test-checkout strong{color:#bf2623;letter-spacing:.07em}.test-checkout p{font-size:13px}.test-checkout form{display:grid;gap:10px}.test-checkout label{display:grid;gap:4px;font-size:13px;font-weight:700}.test-checkout input{width:100%;min-height:42px;padding:10px;border:1px solid #d7c3b7;border-radius:8px;background:#fff;color:#1e1c1b}.test-checkout button{background:#d72f27;border:0;border-radius:8px;padding:13px;color:white;font-weight:800}.test-checkout button:disabled{opacity:.5}.test-checkout #testCheckoutMessage,.test-checkout #testReceipt{font-size:13px;line-height:1.5;overflow-wrap:anywhere}

/* Private checkout & status tracking: existing brand colours/typography retained */
.test-checkout .checkout-eyebrow{display:block;color:#c83425;font-size:11px;font-weight:800;letter-spacing:.16em;margin-bottom:8px}
.test-checkout h3{font-family:Outfit,inherit;font-size:25px;line-height:1.2;margin:0 0 6px;color:#1e1714}
.test-checkout .checkout-summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;border-bottom:1px solid #e6d3c2;font-size:14px}
.test-checkout .checkout-summary strong{color:#261813;font-size:16px}
.test-checkout form{margin-top:17px}
.test-checkout textarea{width:100%;resize:vertical;min-height:70px;padding:10px;border:1px solid #d7c3b7;border-radius:8px;font:inherit;background:#fff;color:#1e1c1b;box-sizing:border-box}
.test-checkout .checkout-pickup-note{padding:13px;border-radius:9px;background:#f1e6d9;border:1px solid #e9d1bd;display:grid;gap:4px}
.test-checkout .checkout-pickup-note strong{font-size:14px;letter-spacing:0;color:#231a18}
.test-checkout .checkout-pickup-note span{font-size:12px;color:#584942;line-height:1.45}
.test-checkout .tracking-heading{display:flex;justify-content:space-between;align-items:center;margin-top:15px;font-size:11px;letter-spacing:.12em;color:#a82c25;font-weight:800}
.test-checkout .tracking-heading strong{color:#181515;font-size:19px;letter-spacing:0}
.test-checkout .tracking-total{font-size:14px;color:#24201d;font-weight:750}
.test-checkout .tracking-progress{list-style:none;display:flex;gap:3px;justify-content:space-between;padding:0;margin:15px 0;flex-wrap:wrap}
.test-checkout .tracking-progress li{flex:1;min-width:48px;padding:9px 2px;border-radius:6px;background:#ecddd0;color:#675751;text-align:center;font-size:10px;font-weight:700}
.test-checkout .tracking-progress li.done{background:#e23c2a;color:white}
.test-checkout .tracking-progress li.current{outline:2px solid #271a17;outline-offset:2px}
.test-checkout .tracking-footnote{color:#6e554b!important;line-height:1.55}
.test-checkout .track-refresh{width:100%;margin-top:8px;background:#191515;color:#fff;font-family:inherit}
.test-checkout #testCheckoutMessage{font-weight:700;color:#aa2922;margin-top:12px}

/* Scheduled test pickup control; inherits approved customer site design. */
#testPickupSlot{display:block;width:100%;min-height:46px;margin-top:8px;padding:10px 12px;border:1px solid #dbc8b7;border-radius:9px;background:#fff;color:#211816;font:inherit}
#testRefreshSlots{margin-top:12px;min-height:40px;width:100%}
#testPickupInfo{display:block;margin-top:10px;font-size:.85rem}

/* Read-only owner test link; customer-site theme remains unchanged. */
.test-private-tracking{margin-top:1rem;padding:1rem;border:1px solid rgba(163,67,38,.25);border-radius:12px;background:#fff8f0;display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}
.test-private-tracking strong,.test-private-tracking p{flex-basis:100%;margin:0}
.test-private-tracking p{font-size:.88rem;color:#65594f}
.test-private-tracking a,.test-copy-track{font:inherit;font-weight:700;border-radius:8px;padding:.6rem .85rem;min-height:42px}
.test-private-tracking a{background:#d52f24;color:#fff;text-decoration:none}
.test-copy-track{border:1px solid #bb9f8c;background:#fff;cursor:pointer;color:#221a18}

/* Release 1B: customer checkout preview link, no change to approved site layout. */
.checkout-preview-link{display:block;text-align:center;background:#df3025;color:white;border-radius:9px;text-decoration:none;font-weight:800;padding:15px;margin-top:14px;font-family:Outfit,sans-serif}
.checkout-preview-link:hover{background:#b92b22}.checkout-launch-note{font-size:.78rem;color:#695a50}
