:root{--red:#d51f27;--red-dark:#a60f17;--ink:#151313;--paper:#f4f3ef;--white:#fff;--muted:#686261;--line:#d8d4cf;--max:1320px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif;line-height:1.5}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}:focus-visible{outline:3px solid #ffbd21;outline-offset:4px}
.site-header{position:sticky;top:0;z-index:50;height:78px;padding:0 clamp(18px,4vw,64px);display:grid;grid-template-columns:minmax(150px,230px) 1fr auto;align-items:center;gap:28px;background:rgba(255,255,255,.96);border-bottom:1px solid #ddd;backdrop-filter:blur(16px)}.brand{height:68px;display:flex;align-items:center;overflow:hidden}.brand img{width:170px;height:90px;object-fit:contain}.desktop-nav{justify-self:center;display:flex;gap:clamp(14px,2.3vw,34px);font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.desktop-nav a{padding:10px 2px;border-bottom:2px solid transparent}.desktop-nav a:hover{color:var(--red);border-color:var(--red)}.header-actions{display:flex;align-items:center;gap:8px}.order-button,.button{min-height:48px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;border:2px solid transparent;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:.2s}.order-button,.button-primary{background:var(--red);color:#fff}.order-button:hover,.button-primary:hover{background:var(--red-dark)}.order-button:active,.button:active{transform:scale(.98)}.menu-toggle{display:none;min-height:44px;padding:0 13px;border:1px solid var(--line);background:#fff;font-size:.66rem;font-weight:900;text-transform:uppercase}.mobile-menu{display:none}
.hero{position:relative;height:min(760px,calc(100dvh - 78px));min-height:590px;overflow:hidden;color:#fff}.hero-photo{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,7,7,.91) 0%,rgba(9,7,7,.65) 37%,rgba(9,7,7,.08) 75%),linear-gradient(0deg,rgba(0,0,0,.26),transparent 45%)}.hero-content{position:absolute;left:clamp(24px,7vw,112px);top:50%;width:min(680px,calc(100% - 48px));transform:translateY(-50%)}.eyebrow{margin:0 0 18px;color:inherit;font-size:.7rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.eyebrow.red{color:var(--red)}h1,h2,h3{margin:0;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-weight:900;letter-spacing:-.03em;line-height:.94;text-transform:uppercase}.hero h1{font-size:clamp(3.9rem,7.6vw,7.5rem)}.hero-content>p:not(.eyebrow){max-width:520px;margin:24px 0 0;color:#ffffffe6;font-size:clamp(1rem,1.7vw,1.32rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button-secondary{color:#fff;border-color:#ffffffbf;background:#0005;backdrop-filter:blur(8px)}.button-secondary:hover{background:#fff;color:var(--ink)}
.quick-info{position:relative;z-index:2;width:min(calc(100% - 48px),1080px);margin:-36px auto 0;display:grid;grid-template-columns:repeat(3,1fr);background:#fff;box-shadow:0 22px 60px #28140f2e}.quick-info a{min-height:112px;padding:25px 30px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line)}.quick-info a:last-child{border:0}.quick-info span{color:var(--red);font-size:.66rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.quick-info strong{margin-top:5px;font-size:1.04rem}
.favorites,.price-section,.coupons{max-width:var(--max);margin:auto;padding:125px clamp(20px,4vw,56px)}.section-heading{max-width:820px}.section-heading.center{text-align:center;margin:auto}.section-heading h2{font-size:clamp(2.8rem,6vw,6rem)}.section-heading>p:last-child{margin:22px 0 0;color:var(--muted);font-size:1.05rem}.gallery-row{margin-top:72px}.gallery-row-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px}.gallery-row-head strong{display:block;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:clamp(4rem,8.5vw,6.4rem);line-height:.86;color:var(--ink);text-transform:uppercase}.gallery-row-head small{display:block;margin-top:12px;color:var(--muted);font-size:1.1rem}.gallery-nav{display:flex;gap:8px;flex:0 0 auto}.gallery-nav button{width:46px;height:46px;border:1.5px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s}.gallery-nav button:hover{border-color:var(--red);color:var(--red)}.gallery-nav button:active{transform:scale(.94)}.gallery-nav button:disabled{opacity:.3;cursor:default}.gallery-nav button:disabled:hover{border-color:var(--line);color:var(--ink)}.gallery-nav svg{width:20px;height:20px}.gallery-strip-frame{position:relative}.gallery-strip-frame::before,.gallery-strip-frame::after{content:"";position:absolute;top:0;bottom:20px;width:56px;z-index:2;pointer-events:none}.gallery-strip-frame::before{left:0;background:linear-gradient(90deg,var(--paper),transparent)}.gallery-strip-frame::after{right:0;background:linear-gradient(270deg,var(--paper),transparent)}.gallery-strip{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 4px 20px;margin:0 -4px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.gallery-strip::-webkit-scrollbar{height:7px}.gallery-strip::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}.gallery-strip::-webkit-scrollbar-track{background:transparent}.gallery-strip figure{flex:0 0 auto;width:min(80vw,360px);margin:0;scroll-snap-align:start;background:var(--panel);border:1px solid var(--line)}.gallery-strip figure img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.2,.8,.2,1)}.gallery-strip figure:hover img{transform:scale(1.035)}.gallery-strip figcaption{padding:16px 18px;font-size:1.05rem;color:var(--muted)}.gallery-dots{display:flex;gap:7px;margin-top:16px}.gallery-dots span{width:7px;height:7px;border-radius:50%;background:var(--line);transition:.2s}.gallery-dots span.active{background:var(--red);width:22px;border-radius:4px}
.price-section{padding-top:40px;text-align:center}.price-section>img{width:auto;max-width:min(100%,1120px);max-height:82vh;margin:50px auto 22px;box-shadow:0 24px 60px #27151521}.price-section>p{color:var(--muted);font-size:.82rem}.coupons{padding-top:110px}.coupon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:58px}.coupon-grid a{background:#fff;box-shadow:0 14px 34px #28140f18;transition:.2s}.coupon-grid a:hover{transform:translateY(-5px)}.coupon-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.coupon-grid strong{display:block;padding:18px;font-size:.9rem}.terms{margin-top:26px;color:var(--muted);font-size:.8rem}
.promotions{padding:125px max(24px,calc((100vw - var(--max))/2 + 56px));color:#fff;background:var(--ink)}.promotions .section-heading>p:last-child{color:#bbb}.promo-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;margin-top:60px}.promo-grid figure{margin:0;background:#242020}.promo-grid figure img{width:100%;height:460px;object-fit:cover}.promo-grid figcaption{padding:22px;display:grid;gap:6px}.promo-grid figcaption strong{font-size:1.15rem}.promo-grid figcaption span{color:#bbb}.gift-card{padding:clamp(36px,6vw,80px);background:var(--red)}.gift-card h3{font-size:clamp(3rem,5vw,5.6rem)}.gift-card ul{padding:0;margin:35px 0;list-style:none}.gift-card li{padding:16px 0;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #ffffff4d}.gift-card>p:last-child{color:#ffffffc7;font-size:.83rem}
.location{display:grid;grid-template-columns:1.2fr .8fr;background:#fff}.map-panel{min-height:690px}.map-panel iframe{width:100%;height:100%;min-height:690px;border:0}.location-card{padding:clamp(55px,7vw,110px)}.location-card h2{font-size:clamp(3rem,5.5vw,5.7rem)}.location-card address{margin-top:32px;font-style:normal;font-size:1.1rem;line-height:1.7}.phone-link{display:block;width:max-content;margin:15px 0 28px;color:var(--red);font-size:1.4rem;font-weight:900}.hours{margin-top:28px;border-top:1px solid var(--line);padding-top:24px}.hours h3{font-size:1.7rem}.hours dl div{padding:12px 0;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.hours dd{margin:0;color:var(--muted);text-align:right}.location-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#333}
footer{padding:60px clamp(24px,6vw,90px);color:#fff;background:var(--ink);display:grid;grid-template-columns:1fr auto;gap:10px 40px;align-items:center}footer img{width:165px}footer p,footer small{margin:0}footer p:first-of-type{text-align:right;font-weight:800}footer small{color:#ffffff8c}
/* Existing order page */.order-page{background:var(--paper);color:var(--ink)}.back-link{color:var(--red);font-size:.72rem;font-weight:900;text-transform:uppercase}.order-main{max-width:1180px;margin:auto;padding:70px 24px 100px}.order-header{max-width:760px;margin-bottom:48px}.order-header h1{margin:8px 0 16px;font-size:clamp(3rem,7vw,6rem)}.order-header>p{color:var(--muted)}.order-meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:24px;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.order-meta a{color:var(--red)}.order-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px}.order-categories{position:sticky;top:98px;padding:14px;display:flex;flex-direction:column;border:1px solid var(--line);background:#fff}.order-categories a{padding:10px;color:var(--ink);font-size:.7rem;font-weight:800;text-transform:uppercase}.order-categories a:hover{background:var(--red);color:#fff}.order-section{scroll-margin-top:98px;margin-bottom:30px;padding:26px;border:1px solid var(--line);background:#fff}.order-section h2{margin-bottom:16px;color:var(--red);font-size:2rem}.order-items{display:grid;gap:8px}.order-item{padding:16px 0;display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line)}.order-item h3{font-family:inherit;font-size:1rem;letter-spacing:0;line-height:1.35;text-transform:none}.order-item p{max-width:680px;margin:5px 0 0;color:var(--muted);font-size:.88rem}.order-item strong{flex:0 0 auto;color:var(--red)}.compact-items{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}
@media(max-width:1000px){.site-header{grid-template-columns:1fr auto;height:72px;padding:0 16px}.brand{height:64px}.brand img{width:135px}.desktop-nav{display:none}.order-button{min-height:42px;padding:0 14px}.menu-toggle{display:inline-flex;align-items:center}.mobile-menu{position:absolute;top:72px;left:0;right:0;padding:16px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 20px 30px #0002}.mobile-menu.is-open{display:grid}.mobile-menu a{padding:14px 8px;border-bottom:1px solid var(--line);font-size:.76rem;font-weight:900;text-transform:uppercase}.hero{height:min(760px,calc(100dvh - 72px));min-height:610px}.gallery-nav{display:none}.coupon-grid{grid-template-columns:repeat(2,1fr)}.location{grid-template-columns:1fr}.map-panel,.map-panel iframe{min-height:480px}}
@media(max-width:640px){.site-header{grid-template-columns:minmax(108px,1fr) auto}.header-actions{gap:5px}.menu-toggle{padding:0 9px}.hero-content{left:20px;width:calc(100% - 40px)}.hero h1{font-size:clamp(3.5rem,17vw,5.2rem)}.hero-actions{flex-direction:column;max-width:290px}.quick-info{width:100%;margin:0;grid-template-columns:1fr}.quick-info a{min-height:82px;padding:17px 22px;border-right:0;border-bottom:1px solid var(--line)}.favorites,.price-section,.coupons{padding-top:90px;padding-bottom:95px}.gallery-row{margin-top:48px}.coupon-grid{grid-template-columns:1fr}.promotions{padding:90px 20px}.promo-grid{grid-template-columns:1fr}.promo-grid figure img{height:auto}.location-card{padding:75px 22px}.hours dl div{display:grid;gap:3px}.hours dd{text-align:left}.location-actions{display:grid}.location-actions .button{width:100%}footer{grid-template-columns:1fr}footer p:first-of-type{text-align:left}.order-layout{grid-template-columns:1fr}.order-categories{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.compact-items{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* 2026 dark cinematic redesign */
:root{--red:#ff3b30;--red-dark:#d52720;--ink:#1c1a1a;--paper:#ffffff;--panel:#f7f3f1;--white:#ffffff;--muted:#726b69;--line:#e7e2de}
body{background:radial-gradient(circle at 15% 12%,#ff3b301a,transparent 26%),radial-gradient(circle at 88% 40%,#ff3b3010,transparent 28%),var(--paper);color:var(--ink)}
.site-header{height:88px;grid-template-columns:minmax(180px,250px) 1fr auto;background:#ffffffed;border-bottom:1px solid #00000014;box-shadow:0 8px 24px #00000010;backdrop-filter:blur(20px) saturate(130%)}
.brand{height:88px;overflow:visible}.brand img{width:186px;height:76px;object-fit:contain;object-position:left center}
.desktop-nav a{color:var(--ink)}.desktop-nav a:hover{color:var(--red)}
.order-button,.button{transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.order-button,.button-primary{box-shadow:0 12px 34px #ff3b3038}.order-button{overflow:hidden}.order-button::after{content:"";position:absolute;inset:-60% -30%;background:linear-gradient(110deg,transparent 38%,#ffffff42 49%,transparent 60%);transform:translateX(-80%);animation:order-shine 4.8s ease-in-out infinite}.order-button:hover,.button-primary:hover{box-shadow:0 15px 42px #ff3b304d}.menu-toggle{color:var(--ink);border-color:var(--line);background:#fff}
@keyframes order-shine{0%,65%{transform:translateX(-80%)}85%,100%{transform:translateX(80%)}}
.hero{height:min(790px,calc(100dvh - 88px));min-height:610px;background:#f4f3ef}.hero::after{content:"";position:absolute;left:clamp(24px,4vw,64px);top:9%;bottom:9%;width:1px;background:linear-gradient(transparent,var(--red),transparent);opacity:.9}.hero-photo{animation:hero-breathe 16s cubic-bezier(.3,.6,.3,1) infinite alternate}
@keyframes hero-breathe{from{transform:scale(1.02)}to{transform:scale(1.1)}}
.quick-info{margin-top:-42px;background:#ffffffe8;border:1px solid #00000014;box-shadow:0 20px 50px #00000014;backdrop-filter:blur(18px)}.quick-info a{transition:background .2s ease}.quick-info a:hover{background:#f4f3ef}
.favorites{position:relative}.favorites::before{content:"BUFFET";position:absolute;right:1%;top:58px;color:#0000000a;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:clamp(7rem,18vw,17rem);line-height:1;pointer-events:none}.section-heading{position:relative;z-index:1}
.price-section>img{border:1px solid var(--line);box-shadow:0 20px 50px #00000014}
.coupon-grid a{background:var(--panel);border:1px solid var(--line);box-shadow:0 12px 28px #00000012}.coupon-grid a:hover{box-shadow:0 20px 40px #0000001a}
.promotions{position:relative;background:linear-gradient(135deg,#181b1f,#0b0c0e)}.promotions::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 18%,#ff3b302e,transparent 28%);pointer-events:none}.promotions>*{position:relative}.promo-grid figure{background:#20252a;border:1px solid #ffffff17}.gift-card{background:linear-gradient(145deg,#ff3b30,#8f1118);box-shadow:inset 0 1px #ffffff3d}
.location{background:#fff;border-top:1px solid var(--line)}.location-card{background:radial-gradient(circle at 90% 0,#ff3b3012,transparent 32%)}
.reveal-on-scroll{opacity:0;transform:translateY(42px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.reveal-on-scroll.is-visible{opacity:1;transform:none}.gallery-row:nth-of-type(3){transition-delay:.08s}.gallery-row:nth-of-type(4){transition-delay:.16s}.gallery-row:nth-of-type(5){transition-delay:.24s}
@media(max-width:1000px){.site-header{height:76px}.brand{height:76px}.brand img{width:150px;height:70px}.mobile-menu{top:76px}.hero{height:min(760px,calc(100dvh - 76px))}}
@media(max-width:640px){.brand img{width:126px;height:66px}.favorites::before{top:72px}.hero::after{display:none}}
@media(prefers-reduced-motion:reduce){.hero-photo{animation:none}.order-button::after{animation:none}.reveal-on-scroll{opacity:1;transform:none;transition:none}}
