/* McFly American Food — Redesign
   Vanilla CSS / no framework.
*/
:root{
  --night:#0D0B10;
  --night-2:#151118;
  --panel:#201923;
  --red:#FF2E63;
  --red-dark:#9E173C;
  --blue:#2EE6FF;
  --cream:#F5EFE2;
  --white:#FFFFFF;
  --muted:#B7A9BB;
  --chrome:#C9C9C9;
  --line:rgba(245,239,226,.14);
  --black:#0a090c;
  --display:"Anton", Impact, sans-serif;
  --heavy:"Archivo Black", Impact, sans-serif;
  --script:"Pacifico", cursive;
  --body:"Manrope", Arial, sans-serif;
  --serif:"Cormorant Garamond", Georgia, serif;
  --container:min(1240px, calc(100% - 48px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;background:var(--night);color:var(--cream);font-family:var(--body);overflow-x:hidden}
body.menu-open{overflow:hidden}
img{display:block;width:100%;max-width:100%;object-fit:cover}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{cursor:pointer}
::selection{background:var(--red);color:var(--cream)}
:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.site-noise{position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.65'/%3E%3C/svg%3E")}
.scroll-progress{position:fixed;top:0;left:0;width:0;height:3px;background:var(--red);z-index:120;box-shadow:0 0 16px rgba(255,46,99,.55)}
.site-header{position:fixed;z-index:110;top:0;left:0;right:0;height:82px;display:flex;align-items:center;gap:36px;padding:0 32px;transition:.35s ease;border-bottom:1px solid transparent}
.site-header.scrolled{background:rgba(13,11,16,.84);backdrop-filter:blur(16px);border-color:var(--line)}
.brand{display:flex;flex-direction:column;line-height:.85;min-width:132px}
.brand-main{font-family:var(--display);font-size:2rem;letter-spacing:.02em;color:var(--cream)}
.brand-sub{font-size:.48rem;letter-spacing:.23em;text-transform:uppercase;color:var(--red);margin-top:8px}
.desktop-nav{display:flex;align-items:center;gap:30px;margin-left:auto;font-size:.7rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.desktop-nav a{position:relative}
.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--blue);transition:.25s}
.desktop-nav a:hover:after{right:0}
.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:0 23px;border:1px solid transparent;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;transition:.25s ease}
.button-primary{background:var(--red);color:var(--white)}
.button-primary:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(255,46,99,.25)}
.button-outline{border-color:var(--cream);color:var(--cream);background:transparent}
.button-outline:hover{background:var(--cream);color:var(--night)}
.button-light{background:var(--cream);color:var(--night)}
.button-light:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(245,239,226,.2)}
.header-order{margin-left:0}
.menu-toggle{display:none;margin-left:auto;width:44px;height:44px;border:1px solid var(--line);background:transparent;color:var(--cream);align-items:center;justify-content:center;flex-direction:column;gap:6px}
.menu-toggle span{display:block;width:18px;height:1px;background:currentColor;transition:.25s}
.mobile-menu{position:fixed;inset:0;background:var(--night);z-index:105;display:none;padding:110px 28px 40px}
.mobile-menu.open{display:block}
.mobile-menu-inner{height:100%;display:flex;flex-direction:column}
.mobile-menu nav{display:flex;flex-direction:column}
.mobile-menu nav a{font-family:var(--display);font-size:clamp(3rem,12vw,6rem);line-height:.95;border-bottom:1px solid var(--line);padding:10px 0}
.mobile-menu nav span{float:right;font-family:var(--body);font-size:.7rem;letter-spacing:.2em;color:var(--blue);padding-top:16px}
.mobile-order{margin-top:auto;width:100%}
.eyebrow{font-size:.62rem;line-height:1.3;font-weight:800;letter-spacing:.22em;text-transform:uppercase;margin:0;color:var(--blue)}
.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;overflow:hidden;padding:150px 0 90px}
.hero-media,.hero-overlay,.hero-grid{position:absolute;inset:0}
.hero-media{transform:scale(1.08);z-index:-4}
.hero-media img{height:100%;filter:saturate(.9) contrast(1.08)}
.hero-overlay{z-index:-3;background:linear-gradient(90deg,rgba(13,11,16,.92) 0%,rgba(13,11,16,.55) 48%,rgba(13,11,16,.18) 100%),linear-gradient(0deg,var(--night) 0%,transparent 35%,rgba(13,11,16,.35) 100%)}
.hero-grid{z-index:-2;opacity:.13;background-image:linear-gradient(rgba(245,239,226,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(245,239,226,.2) 1px,transparent 1px);background-size:90px 90px;mask-image:linear-gradient(to right,black,transparent)}
.hero-content{width:var(--container);margin:auto}
.hero h1{margin:18px 0 18px;display:flex;flex-direction:column;font-family:var(--heavy);font-size:clamp(4rem,10.8vw,10rem);line-height:.78;letter-spacing:-.055em;text-transform:uppercase}
.hero h1 span{font-family:var(--display);font-size:.46em;letter-spacing:.03em;color:var(--red);text-shadow:0 0 22px rgba(255,46,99,.3)}
.hero h1 strong:nth-of-type(2){margin-left:.55em}
.hero-line{font-family:var(--display);font-size:clamp(1.1rem,2.2vw,2rem);letter-spacing:.12em;margin:24px 0 14px}
.hero-line i{font-family:var(--script);font-style:normal;color:var(--blue);text-transform:none;letter-spacing:0}
.hero-copy{max-width:560px;color:var(--muted);font-size:clamp(.95rem,1.3vw,1.15rem);line-height:1.75;margin:0 0 28px}
.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.text-link{font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--red);padding-bottom:6px}
.hero-side-stamp{position:absolute;right:5%;bottom:14%;display:flex;flex-direction:column;align-items:center;gap:4px;border:1px solid var(--cream);width:130px;height:130px;border-radius:50%;justify-content:center;transform:rotate(9deg);text-transform:uppercase}
.hero-side-stamp span{font-family:var(--script);font-size:1.2rem;color:var(--red)}
.hero-side-stamp b{font-size:.6rem;letter-spacing:.15em}
.hero-side-stamp small{font-size:.48rem;letter-spacing:.13em}
.scroll-cue{position:absolute;right:32px;bottom:34px;display:flex;align-items:center;gap:10px;font-size:.55rem;text-transform:uppercase;letter-spacing:.2em;writing-mode:vertical-rl;color:var(--muted)}
.scroll-cue span{width:1px;height:55px;background:var(--red)}
.road-strip{overflow:hidden;background:var(--red);color:var(--night);border-block:1px solid var(--night);white-space:nowrap}
.road-strip-track{display:flex;width:max-content;align-items:center;gap:28px;padding:12px 0;animation:road 25s linear infinite;font-family:var(--display);font-size:1.3rem;letter-spacing:.08em;text-transform:uppercase}
.road-strip b{font-family:var(--body);font-size:.7rem}
@keyframes road{to{transform:translateX(-50%)}}
.section-light{background:var(--cream);color:var(--night)}
.section-dark{background:var(--night)}
.statement{display:grid;grid-template-columns:80px minmax(0, .9fr) minmax(0,1.25fr);gap:40px;padding:140px max(24px,calc((100% - 1240px)/2))}
.section-number{font-family:var(--display);font-size:1rem;color:var(--red)}
.statement-copy h2,.menu-header h2,.reservation-head h2,.location h2{font-family:var(--heavy);font-size:clamp(3.3rem,6.7vw,7rem);line-height:.84;letter-spacing:-.05em;margin:18px 0 30px}
.statement-copy h2 em,.menu-header h2 em,.reservation-head h2 em,.location h2 em{font-family:var(--script);font-style:normal;color:var(--red);letter-spacing:0}
.statement-copy>p:not(.eyebrow){max-width:530px;color:#5d5560;line-height:1.8}
.ticket{display:grid;grid-template-columns:1fr auto;gap:7px 20px;max-width:360px;margin-top:45px;padding:18px;border-top:1px dashed rgba(13,11,16,.3);border-bottom:1px dashed rgba(13,11,16,.3);font-size:.62rem;text-transform:uppercase;letter-spacing:.12em}
.ticket b{color:var(--red)}
.ticket small{grid-column:1/-1;color:#777}
.statement-image{margin:0;position:relative}
.statement-image img{height:100%;min-height:520px}
.statement-image figcaption{position:absolute;bottom:15px;left:15px;background:var(--cream);color:var(--night);padding:8px 10px;font-size:.55rem;font-weight:800;letter-spacing:.15em}
.why{padding:130px max(24px,calc((100% - 1240px)/2))}
.section-heading h2,.reviews-header h2,.gallery-head h2,.promo-board h2,.feature-copy h2,.shake-copy h2,.experience-copy h2,.delivery-copy h2{font-family:var(--heavy);font-size:clamp(4rem,8vw,9rem);line-height:.78;letter-spacing:-.06em;margin:20px 0 70px}
.section-heading h2 em,.reviews-header h2 em,.gallery-head h2 em,.promo-board h2 em,.feature-copy h2 span,.shake-copy h2 em,.experience-copy h2 em,.delivery-copy h2 em{font-family:var(--script);font-style:normal;color:var(--red);letter-spacing:0}
.why-list{border-top:1px solid var(--line)}
.why-item{position:relative;display:grid;grid-template-columns:100px 1fr 60px;align-items:center;min-height:180px;border-bottom:1px solid var(--line);overflow:hidden;transition:.35s;padding:0 12px}
.why-item img{position:absolute;right:10%;width:220px;height:145px;opacity:0;transform:translateX(35px) rotate(4deg);transition:.4s;pointer-events:none}
.why-item:hover img,.why-item:focus-within img{opacity:.9;transform:none}
.why-item:hover{padding-left:25px;background:rgba(255,46,99,.045)}
.why-number{font-family:var(--display);font-size:1rem;color:var(--red)}
.why-item h3{font-family:var(--display);font-size:clamp(2rem,4vw,4rem);margin:0;letter-spacing:.02em}
.why-item p{max-width:560px;color:var(--muted);font-size:.85rem;line-height:1.6;margin:8px 0 0}
.why-arrow{font-size:1.5rem;color:var(--blue);justify-self:end}
.menu-section{padding:140px max(24px,calc((100% - 1240px)/2));background:var(--cream);color:var(--night)}
.menu-header{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}
.order-mini{border:1px solid rgba(13,11,16,.22);padding:14px 16px;min-width:170px;display:flex;flex-direction:column;gap:5px}
.order-mini span{font-size:.55rem;font-weight:800;letter-spacing:.18em}
.order-mini strong{font-family:var(--display);font-size:1.35rem;color:var(--red)}
.filter-row{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid rgba(13,11,16,.16);padding-bottom:20px;margin-bottom:30px}
.filter{border:1px solid rgba(13,11,16,.2);background:transparent;color:var(--night);padding:9px 15px;font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;transition:.25s}
.filter.active,.filter:hover{background:var(--night);color:var(--cream)}
.product-list{display:flex;flex-direction:column}
.product-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);min-height:520px;border-bottom:1px solid rgba(13,11,16,.15)}
.product-row-reverse{grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr)}
.product-row-reverse .product-image{order:2}
.product-row-reverse .product-info{order:1}
.product-image{overflow:hidden;min-height:420px}
.product-image img{height:100%;transition:transform .8s cubic-bezier(.2,.7,.2,1);filter:saturate(.95)}
.product-row:hover .product-image img{transform:scale(1.045)}
.product-info{padding:55px 45px;display:flex;flex-direction:column;justify-content:center}
.product-index{font-size:.58rem;font-weight:800;letter-spacing:.2em;color:#777}
.product-info h3{font-family:var(--display);font-size:clamp(3rem,5.4vw,6rem);line-height:.85;margin:20px 0}
.product-info p{max-width:430px;color:#655e66;line-height:1.7}
.product-action{align-self:flex-start;margin-top:28px;background:none;border:0;border-bottom:1px solid var(--red);padding:0 0 8px;color:var(--night);font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.burger-feature{display:grid;grid-template-columns:.75fr 1.25fr;min-height:760px;background:var(--red);color:var(--night)}
.feature-copy{padding:110px max(24px,calc((100vw - 1240px)/2)) 90px max(24px,calc((100vw - 1240px)/2));display:flex;flex-direction:column;align-items:flex-start}
.feature-copy h2{font-size:clamp(4.5rem,8vw,9rem);margin-bottom:35px}
.feature-copy h2 span{color:var(--cream)}
.feature-copy p{max-width:420px;line-height:1.75;margin-bottom:30px}
.feature-image{position:relative;overflow:hidden}
.feature-image img{height:100%;filter:contrast(1.08)}
.feature-image span{position:absolute;bottom:22px;right:22px;background:var(--cream);color:var(--night);padding:8px 12px;font-size:.55rem;font-weight:800;letter-spacing:.15em}
.shake-section{display:grid;grid-template-columns:1.05fr .95fr;min-height:700px;background:#e8c5cc;color:var(--night)}
.shake-image{min-height:600px;overflow:hidden}
.shake-image img{height:100%}
.shake-copy{padding:100px max(24px,calc((100vw - 1240px)/2)) 90px 70px;display:flex;flex-direction:column;align-items:flex-start}
.shake-copy h2{color:var(--night);margin-bottom:30px}
.shake-copy h2 em{color:var(--red)}
.shake-copy p:not(.eyebrow){max-width:470px;line-height:1.75;color:#5d4850}
.promo-stamp{margin-top:38px;width:170px;height:170px;border:2px solid var(--night);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(-7deg)}
.promo-stamp span{font-family:var(--display);font-size:1.3rem}
.promo-stamp b{font-size:.6rem;letter-spacing:.15em;margin-top:8px}
.promo-stamp small{font-size:.55rem;margin-top:5px}
.experience{display:grid;grid-template-columns:1.2fr .8fr;min-height:700px}
.experience-image{overflow:hidden}
.experience-image img{height:100%;filter:saturate(.7) contrast(1.15)}
.experience-copy{padding:110px 7vw 80px 7vw;display:flex;flex-direction:column;align-items:flex-start}
.experience-copy h2{margin-bottom:30px}
.experience-copy p:not(.eyebrow){max-width:500px;color:var(--muted);line-height:1.8}
.experience-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px}
.experience-tags span{border:1px solid var(--line);padding:8px 10px;font-size:.52rem;letter-spacing:.15em;color:var(--cream)}
.reservation{padding:130px max(24px,calc((100% - 1240px)/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.reservation-head h2{margin-bottom:0}
.reservation-form{display:grid;grid-template-columns:1fr 1fr;gap:26px 20px;align-content:start}
.reservation-form label{display:flex;flex-direction:column;gap:9px}
.reservation-form label span{font-size:.55rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#746b73}
.reservation-form input{border:0;border-bottom:1px solid rgba(13,11,16,.25);background:transparent;border-radius:0;padding:13px 0;color:var(--night);outline:0}
.reservation-form input:focus{border-color:var(--red)}
.reservation-submit{grid-column:1/-1;margin-top:10px;border:0}
.form-status{grid-column:1/-1;min-height:20px;color:var(--red);font-size:.75rem;font-weight:700}
.delivery{display:grid;grid-template-columns:1fr 1fr;min-height:620px;background:var(--red);color:var(--night);padding:120px max(24px,calc((100% - 1240px)/2))}
.delivery-copy h2{margin-bottom:30px}
.delivery-copy p:not(.eyebrow){max-width:500px;line-height:1.8}
.delivery-actions{align-self:center}
.delivery-link{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(13,11,16,.35);padding:23px 0;font-family:var(--display);font-size:clamp(2rem,4vw,4rem)}
.delivery-link b{font-family:var(--body);font-size:1.2rem}
.delivery-link:hover{color:var(--cream)}
.delivery-link.is-config{opacity:.55}
.config-note{font-size:.62rem;line-height:1.6;margin-top:22px;max-width:430px}
.reviews{padding:130px max(24px,calc((100% - 1240px)/2));background:var(--night)}
.review-stage{position:relative;min-height:440px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:50px 0 80px}
.review{display:none;max-width:930px}
.review.active{display:block;animation:reviewIn .45s ease}
@keyframes reviewIn{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}
.stars{color:var(--blue);letter-spacing:.25em;font-size:.85rem}
.review blockquote{font-family:var(--serif);font-size:clamp(2.5rem,5vw,5.5rem);line-height:.95;margin:28px 0;color:var(--cream)}
.review p{color:var(--muted);font-size:.7rem;letter-spacing:.1em}
.review-controls{position:absolute;bottom:22px;right:0;display:flex;align-items:center;gap:18px}
.review-controls button{border:0;background:none;color:var(--cream);font-size:1.3rem}
.review-controls span{font-size:.58rem;letter-spacing:.15em;color:var(--muted)}
.gallery-section{padding:130px max(24px,calc((100% - 1240px)/2));background:var(--cream);color:var(--night)}
.gallery-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}
.gallery-head h2{color:var(--night);margin-bottom:0}
.gallery-head p:last-child{max-width:330px;color:#6d656d;font-size:.75rem;line-height:1.7}
.gallery-grid{display:grid;grid-template-columns:1.1fr .75fr .9fr;grid-auto-rows:230px;gap:14px;margin-top:60px}
.gallery-item{border:0;padding:0;overflow:hidden;background:#ddd;position:relative}
.gallery-item img{height:100%;transition:transform .6s}
.gallery-item:hover img{transform:scale(1.05)}
.gallery-item:after{content:"VIEW";position:absolute;left:15px;bottom:15px;background:var(--cream);padding:7px 9px;font-size:.5rem;font-weight:800;letter-spacing:.15em}
.gallery-tall{grid-row:span 2}
.gallery-wide{grid-column:span 1}
.promo-board{padding:120px 24px}
.promo-board-inner{max-width:900px;margin:auto;text-align:center;border:1px solid var(--line);padding:70px 30px;position:relative}
.promo-board h2{margin-bottom:25px}
.promo-big{font-family:var(--display);font-size:clamp(5rem,15vw,13rem);line-height:.72;color:var(--red);letter-spacing:.01em}
.promo-board p:last-child{color:var(--muted);font-size:.75rem;letter-spacing:.1em;margin-top:30px}
.location{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;padding:130px max(24px,calc((100% - 1240px)/2))}
.location h2{margin-bottom:35px}
.contact-data{margin:0 0 35px}
.contact-data div{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid rgba(13,11,16,.16)}
.contact-data dt{font-size:.55rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:#7b7379}
.contact-data dd{margin:0;font-size:.82rem}
.map-placeholder{min-height:500px;background:#d8d2c5;display:flex;align-items:flex-end;padding:28px;position:relative;overflow:hidden}
.map-placeholder:before{content:"";position:absolute;inset:0;background-image:linear-gradient(25deg,transparent 48%,rgba(13,11,16,.1) 49%,rgba(13,11,16,.1) 51%,transparent 52%),linear-gradient(105deg,transparent 48%,rgba(13,11,16,.08) 49%,rgba(13,11,16,.08) 51%,transparent 52%);background-size:130px 90px;transform:scale(1.3)}
.map-placeholder>div{position:relative;background:var(--cream);padding:18px;max-width:360px}
.map-label{display:block;color:var(--red);font-size:.52rem;font-weight:800;letter-spacing:.16em;margin-bottom:8px}
.map-placeholder strong{font-family:var(--display);font-size:1.6rem}
.map-placeholder p{font-size:.65rem;line-height:1.5;color:#6b636a}
.final-cta{min-height:760px;position:relative;display:flex;align-items:center;overflow:hidden}
.final-bg,.final-overlay{position:absolute;inset:0}
.final-bg img{height:100%;filter:saturate(.75) contrast(1.1)}
.final-overlay{background:linear-gradient(90deg,rgba(13,11,16,.88),rgba(13,11,16,.25)),linear-gradient(0deg,rgba(13,11,16,.45),transparent)}
.final-content{position:relative;width:var(--container);margin:auto}
.final-content h2{font-family:var(--heavy);font-size:clamp(5rem,11vw,12rem);line-height:.75;letter-spacing:-.06em;margin:22px 0 45px}
.final-content h2 em{font-family:var(--script);font-style:normal;color:var(--red);letter-spacing:0}
.footer{background:var(--night-2);border-top:1px solid var(--line)}
.footer-top{width:var(--container);margin:auto;padding:80px 0;display:grid;grid-template-columns:1.5fr .75fr .75fr;gap:50px}
.footer-brand{margin-bottom:25px}
.footer-top>div>p:not(.eyebrow){max-width:360px;color:var(--muted);font-size:.75rem;line-height:1.7}
.footer-top .eyebrow{margin-bottom:18px}
.footer-top>div>a:not(.brand){display:block;color:var(--muted);font-size:.7rem;margin:0 0 11px}
.footer-top>div>a:not(.brand):hover{color:var(--cream)}
.footer-bottom{border-top:1px solid var(--line);text-align:center;padding:22px 24px;color:#756b77;font-size:.52rem;letter-spacing:.15em;text-transform:uppercase}
.mobile-cta{display:none}
.lightbox{border:0;padding:0;background:rgba(13,11,16,.97);color:var(--cream);width:min(100vw,1200px);height:min(100vh,900px);max-width:100%;max-height:100%;align-items:center;justify-content:center}
.lightbox::backdrop{background:rgba(0,0,0,.78)}
.lightbox figure{margin:0;width:80%;height:80%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px}
.lightbox img{height:100%;width:100%;object-fit:contain}
.lightbox figcaption{font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.lightbox-close,.lightbox-nav{position:absolute;border:0;background:none;color:var(--cream);font-size:2rem}
.lightbox-close{top:22px;right:28px}
.lightbox-prev{left:25px;top:50%;transform:translateY(-50%)}
.lightbox-next{right:25px;top:50%;transform:translateY(-50%)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.is-hidden{display:none!important}

@media (max-width:980px){
  :root{--container:min(100% - 36px,760px)}
  .desktop-nav,.header-order{display:none}
  .menu-toggle{display:flex}
  .statement,.reservation,.location{grid-template-columns:1fr}
  .statement{padding-top:100px;padding-bottom:100px}
  .statement-image img{min-height:420px}
  .burger-feature,.shake-section,.experience,.delivery{grid-template-columns:1fr}
  .feature-copy,.shake-copy,.experience-copy{padding:90px max(24px,calc((100% - 760px)/2))}
  .feature-image{min-height:560px}
  .shake-image,.experience-image{min-height:520px}
  .delivery{gap:60px}
  .gallery-head{display:block}
  .gallery-head p:last-child{margin-top:25px}
  .product-row,.product-row-reverse{grid-template-columns:1fr}
  .product-row-reverse .product-image{order:0}
  .product-row-reverse .product-info{order:0}
  .product-image{min-height:420px}
  .product-info{padding:42px 10px 55px}
}
@media (max-width:700px){
  :root{--container:calc(100% - 32px)}
  .site-header{height:70px;padding:0 16px}
  .brand-main{font-size:1.7rem}
  .hero{padding:110px 0 80px;min-height:100svh}
  .hero h1{font-size:clamp(3.7rem,17vw,6rem)}
  .hero-copy{font-size:.88rem}
  .hero-actions .text-link{width:100%;margin-top:6px}
  .hero-side-stamp,.scroll-cue{display:none}
  .statement{padding:85px 16px}
  .section-number{display:none}
  .statement-copy h2,.menu-header h2,.reservation-head h2,.location h2{font-size:clamp(3.4rem,17vw,5.6rem)}
  .statement-image img{min-height:330px}
  .why{padding:85px 16px}
  .section-heading h2,.reviews-header h2,.gallery-head h2,.promo-board h2,.feature-copy h2,.shake-copy h2,.experience-copy h2,.delivery-copy h2{font-size:clamp(3.9rem,18vw,6rem);margin-bottom:45px}
  .why-item{grid-template-columns:48px 1fr 30px;min-height:145px}
  .why-item p{font-size:.72rem}
  .why-item img{display:none}
  .menu-section{padding:85px 16px}
  .menu-header{display:block}
  .order-mini{margin-top:25px}
  .filter-row{overflow-x:auto;flex-wrap:nowrap;padding-bottom:14px}
  .filter{white-space:nowrap}
  .product-image{min-height:330px}
  .product-info h3{font-size:clamp(3rem,16vw,5rem)}
  .burger-feature{min-height:auto}
  .feature-copy,.shake-copy,.experience-copy{padding:85px 16px}
  .feature-image,.shake-image,.experience-image{min-height:400px}
  .reservation{padding:85px 16px;gap:50px}
  .reservation-form{grid-template-columns:1fr}
  .reservation-submit,.form-status{grid-column:auto}
  .delivery{padding:85px 16px}
  .review-stage{min-height:430px}
  .review blockquote{font-size:2.6rem}
  .gallery-section{padding:85px 16px}
  .gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:180px;gap:8px;margin-top:40px}
  .gallery-tall{grid-row:span 2}
  .gallery-wide{grid-column:span 2}
  .promo-board{padding:85px 16px}
  .promo-board-inner{padding:55px 15px}
  .promo-big{font-size:clamp(4rem,20vw,7rem)}
  .location{padding:85px 16px;gap:45px}
  .map-placeholder{min-height:360px}
  .final-cta{min-height:650px}
  .final-content h2{font-size:clamp(4.8rem,21vw,7.5rem)}
  .footer-top{grid-template-columns:1fr 1fr;padding:60px 0;gap:35px}
  .footer-top>div:first-child{grid-column:1/-1}
  .mobile-cta{position:fixed;z-index:108;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1fr;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:rgba(13,11,16,.94);backdrop-filter:blur(14px);border-top:1px solid var(--line)}
  .mobile-cta a{min-height:44px;display:flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
  .mobile-cta a:last-child{background:var(--red);color:var(--white)}
  .lightbox figure{width:92%;height:75%}
  .lightbox-prev{left:8px}.lightbox-next{right:8px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .hero-media{transform:none!important}
}
