@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--bg:#f4efe6;--paper:#fffdf8;--ink:#1b1b19;--muted:#77736b;--gold:#b97a18;--gold2:#e4b44f;--dark:#171713;--line:#e4d8c6;--shadow:0 22px 60px #59401c14}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--ink);overflow-x:hidden}button{font:inherit;cursor:pointer;color:inherit}img{max-width:100%}body[data-theme=dark]{--bg:#121210;--paper:#1c1c19;--ink:#f2eadc;--muted:#a8a39a;--line:#39352e;--shadow:0 25px 70px #0006;background:radial-gradient(circle at 70% 0,#282319,#111)}
.site{min-height:100vh;background:radial-gradient(circle at 50% -20%,#fffaf1 0,#f4efe6 42%,#eee6d9 100%)}body[data-theme=dark] .site{background:radial-gradient(circle at 50% -20%,#2b261d,#121210 58%)}
.topbar{height:78px;position:sticky;top:0;z-index:60;display:grid;grid-template-columns:180px 1fr 280px;align-items:center;padding:8px 4vw;background:#fffaf0d9;border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}body[data-theme=dark] .topbar{background:#151512dd}
.brandMini{border:0;background:transparent;height:60px}.brandMini img{height:58px;width:80px;object-fit:contain}.topbar nav{display:flex;justify-content:center;gap:5px}.topbar nav button{border:0;background:transparent;padding:11px 18px;border-radius:13px;font-weight:600;color:var(--muted)}.topbar nav button.active,.topbar nav button:hover{background:#f2e1bd;color:#875a12}.headerRight{display:flex;justify-content:flex-end;gap:8px}.themeBtn,.orderTop{border:1px solid var(--line);background:var(--paper);padding:11px 14px;border-radius:13px}.orderTop{background:var(--dark);color:#f7d37d;border-color:#3a352a;font-weight:700}.orderTop b{background:var(--gold2);color:#35250c;padding:3px 7px;border-radius:50%;margin-left:5px}.mobileMenu{display:none;border:0;background:transparent;font-size:24px}
main{max-width:1440px;margin:auto}.home{padding:25px 4vw 45px}.homeHero{min-height:620px;border-radius:34px;position:relative;overflow:hidden;background:linear-gradient(112deg,#fffaf0 0%,#f3e5cc 47%,#292319 47.2%,#131310 100%);display:grid;grid-template-columns:52% 48%;box-shadow:var(--shadow);border:1px solid #d9c8ad}.heroCopy{padding:95px 7%;position:relative;z-index:2}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2.5px;color:var(--gold)}.heroCopy h1{font:600 clamp(48px,6vw,84px)/.98 'Playfair Display',Georgia,serif;margin:22px 0}.heroCopy h1 em,.pageHead h1 em{color:var(--gold);font-style:italic}.heroCopy p{max-width:530px;color:var(--muted);font-size:16px;line-height:1.75}.primaryCTA{margin-top:18px;border:0;border-radius:15px;background:linear-gradient(135deg,#d7a23e,#a96c0c);color:white;padding:16px 21px;font-weight:800;box-shadow:0 16px 30px #9d681d3d}.primaryCTA span{margin-left:28px;font-size:18px}.heroTrust{display:flex;gap:16px;flex-wrap:wrap;margin-top:55px;color:#8a7046;font-size:10px;font-weight:700}.heroVisual{position:relative;display:flex;align-items:center;justify-content:center}.halo{position:absolute;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,#e5b45255,transparent 68%);filter:blur(4px)}.plate{width:min(440px,80%);aspect-ratio:1;border-radius:50%;padding:15px;background:linear-gradient(145deg,#f4d27b,#7e5315 55%,#1d1810);box-shadow:30px 35px 55px #0009, inset 0 0 0 7px #d6a23d55;transform:perspective(900px) rotateX(8deg) rotateZ(-8deg);z-index:2}.plate img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:8px solid #1d1812}.dishTag{position:absolute;right:7%;bottom:9%;z-index:4;background:#fffaf0ef;color:#211b12;border-radius:17px;padding:15px 20px;box-shadow:0 20px 45px #0006;min-width:170px}.dishTag small{display:block;font-size:8px;letter-spacing:1.5px;color:var(--gold)}.dishTag strong{display:block;font:600 22px Georgia,serif;margin:5px 0}.dishTag b{color:#a86d12}.floatingSpice{position:absolute;color:#d5a139;z-index:1;font-size:28px}.s1{left:10%;top:18%}.s2{right:10%;top:16%;font-size:16px}.s3{left:18%;bottom:18%;font-size:18px}.homeIntro{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:25px 0}.homeIntro>div{background:var(--paper);border:1px solid var(--line);border-radius:19px;padding:25px;box-shadow:var(--shadow)}.homeIntro span{color:var(--gold);font-size:11px;font-weight:800}.homeIntro h2{font:600 23px Georgia,serif;margin:13px 0 8px}.homeIntro p{color:var(--muted);font-size:12px;line-height:1.6;margin:0}.homeCTA{display:flex;align-items:center;justify-content:space-between;padding:28px 32px;border-radius:22px;background:linear-gradient(120deg,#191814,#302718);color:white;box-shadow:var(--shadow)}.homeCTA small{color:#e3b75c;letter-spacing:1.8px;font-size:9px}.homeCTA h2{font:600 28px Georgia,serif;margin:6px 0}.homeCTA button{border:1px solid #cda34e;background:#f3c35e;color:#4b330d;border-radius:12px;padding:13px 18px;font-weight:800}
.page{padding:45px 4vw 80px}.pageHead{display:flex;justify-content:space-between;align-items:end;margin-bottom:32px}.pageHead h1{font:600 clamp(42px,5vw,65px) 'Playfair Display',Georgia,serif;margin:10px 0 7px}.pageHead p{color:var(--muted);margin:0}.step{border:1px solid var(--line);background:var(--paper);padding:12px 16px;border-radius:14px;text-align:right}.step b{color:var(--gold);font-size:20px}.step span{display:block;font-size:8px;letter-spacing:1.3px;color:var(--muted)}.categoryGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.categoryCard{border:1px solid var(--line);background:var(--paper);border-radius:22px;overflow:hidden;text-align:left;padding:0;box-shadow:0 10px 30px #00000008;transition:.3s}.categoryCard:hover{transform:translateY(-8px) rotateX(1deg);box-shadow:0 25px 45px #5d421d1c}.catImage{height:210px;position:relative;overflow:hidden}.catImage:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#17150fd9,transparent 55%)}.catImage img{width:100%;height:100%;object-fit:cover;transition:.4s}.categoryCard:hover .catImage img{transform:scale(1.08)}.catImage>span{position:absolute;right:13px;top:13px;z-index:2;background:#fffdf0e8;border-radius:50%;width:38px;height:38px;display:grid;place-items:center}.catInfo{display:flex;justify-content:space-between;align-items:center;padding:16px}.catInfo small{color:var(--gold);font-size:9px}.catInfo h2{font:600 20px Georgia,serif;margin:4px 0}.catInfo p{font-size:10px;color:var(--muted);margin:0}.catInfo i{font-style:normal;border:1px solid var(--line);width:35px;height:35px;border-radius:50%;display:grid;place-items:center;color:var(--gold)}
.menuHead{padding-bottom:22px;border-bottom:1px solid var(--line)}.crumb{display:flex;gap:9px;align-items:center;font-size:11px;margin-bottom:24px;color:var(--muted)}.crumb button{border:0;background:transparent;color:var(--gold)}.menuTitle{display:flex;justify-content:space-between;align-items:end}.menuTitle h1{font:600 46px 'Playfair Display',Georgia,serif;margin:6px 0}.menuTitle p{margin:0;color:var(--muted);font-size:12px}.searchDish{width:280px;border:1px solid var(--line);background:var(--paper);border-radius:13px;padding:12px;display:flex;gap:8px}.searchDish input{border:0;background:transparent;outline:0;width:100%;color:var(--ink)}.menuLayout{display:grid;grid-template-columns:minmax(190px,220px) minmax(0,1fr);gap:28px;padding-top:25px;min-width:0}.menuLayout>*{min-width:0}.itemArea{min-width:0;width:100%}.subnav{position:sticky;top:105px;height:max-content;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:12px}.subnav strong{display:block;color:var(--gold);font-size:9px;letter-spacing:2px;padding:10px}.subnav button{width:100%;text-align:left;border:0;background:transparent;border-radius:11px;padding:11px;font-size:11px}.subnav button.active,.subnav button:hover{background:#f1dfb8;color:#80530d;font-weight:700}.subnav button span{float:right;color:var(--muted);font-size:9px}.itemToolbar{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-bottom:12px}.itemToolbar b{color:var(--gold)}.itemGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;min-width:0;width:100%}.itemGrid>*{min-width:0}.menuItem{background:var(--paper);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 8px 25px #00000007;transition:.25s}.menuItem:hover{transform:translateY(-6px);box-shadow:0 18px 35px #0002}.itemImage{position:relative;width:100%;padding:0;border:0;background:transparent;display:block}.itemImage img{width:100%;aspect-ratio:1.28;object-fit:cover;display:block}.diet,.best{position:absolute;top:9px;border-radius:7px;padding:5px 7px;font-size:8px;font-weight:800}.diet{left:9px;background:#dff6e7;color:#087440}.diet.non{background:#ffe1e1;color:#a42e2e}.best{right:9px;background:#f5cf72;color:#6e490b}.itemContent{padding:13px}.itemTitle{border:0;background:transparent;padding:0;text-align:left;font-size:14px;font-weight:800;min-height:35px}.ingredientLine{display:flex;gap:3px;margin:3px 0}.ingredientLine span{font-size:12px}.itemContent p{color:var(--muted);font-size:10px;line-height:1.5;min-height:31px;margin:4px 0 8px}.itemBottom{display:flex;align-items:center;justify-content:space-between}.itemBottom strong{font-size:15px;color:#a86d0c}.itemBottom button{border:0;border-radius:10px;background:#e7b450;color:#4d3309;padding:7px 11px;font-size:10px;font-weight:800}.itemBottom button b{font-size:15px;margin-left:4px}.suggested{margin-top:35px;padding-top:24px;border-top:1px solid var(--line)}.suggestHead{display:flex;justify-content:space-between;align-items:end}.suggestHead h2{font:600 25px Georgia,serif;margin:5px 0}.suggestHead p{font-size:10px;color:var(--muted);margin:0}.suggestHead button{border:0;background:transparent;color:var(--gold)}.suggestRow{display:flex;gap:11px;overflow:auto;padding:12px 2px 8px}.suggestRow>button{min-width:205px;border:1px solid var(--line);background:var(--paper);border-radius:15px;padding:8px;display:flex;align-items:center;gap:9px;text-align:left}.suggestRow img{width:52px;height:52px;object-fit:cover;border-radius:10px}.suggestRow span{flex:1}.suggestRow b,.suggestRow small{display:block}.suggestRow b{font-size:11px}.suggestRow small{font-size:8px;color:var(--muted);margin-top:3px}.suggestRow i{width:26px;height:26px;border-radius:50%;background:#f0ddb5;color:#81550f;display:grid;place-items:center;font-style:normal}.noItems{text-align:center;grid-column:1/-1;padding:80px;color:var(--muted)}.noItems button{border:0;background:#e5b350;border-radius:10px;padding:10px;margin-top:10px}
.floatingOrder{position:fixed;right:28px;bottom:24px;z-index:55;border:1px solid #c89331;background:#171714;color:#fff;border-radius:18px;padding:9px 13px;display:flex;align-items:center;gap:10px;box-shadow:0 18px 40px #0005}.cartIcon{width:38px;height:38px;border-radius:12px;background:#e6b450;display:grid;place-items:center}.floatingOrder span:nth-child(2){text-align:left}.floatingOrder small,.floatingOrder b{display:block}.floatingOrder small{font-size:8px;color:#d7b466;letter-spacing:1px}.floatingOrder b{font-size:11px;margin-top:3px}.floatingOrder i{font-style:normal;font-size:18px;color:#e4b44f;margin-left:8px}
.orderCount{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:12px 16px;color:var(--gold);font-weight:800}.orderLayout{display:grid;grid-template-columns:1.5fr .8fr;gap:22px}.orderItems,.orderSummary{background:var(--paper);border:1px solid var(--line);border-radius:20px}.orderLine{display:grid;grid-template-columns:82px 1fr auto 25px;gap:15px;align-items:center;padding:16px;border-bottom:1px solid var(--line)}.orderLine:last-child{border-bottom:0}.orderLine img{width:82px;height:72px;object-fit:cover;border-radius:12px}.orderLine strong{font-size:13px}.orderLine small{display:block;color:var(--muted);font-size:9px;margin:5px 0}.qty{display:flex;gap:7px;align-items:center}.qty button{width:23px;height:23px;border:1px solid var(--line);background:transparent;border-radius:7px}.qty b{font-size:10px}.remove{border:0;background:transparent;color:#a5a09a;font-size:20px}.orderSummary{padding:22px;height:max-content;position:sticky;top:100px}.summaryTop{display:flex;justify-content:space-between;color:var(--gold);font-size:10px;letter-spacing:1.3px;padding-bottom:15px;border-bottom:1px solid var(--line)}.orderSummary>div:not(.summaryTop){display:flex;justify-content:space-between;padding:8px 0;font-size:12px}.orderSummary hr{border:0;border-top:1px dashed var(--line)}.grand{font-size:19px!important}.grand b{color:#0c9654}.waBig{width:100%;border:0;background:#11995a;color:#fff;border-radius:13px;padding:14px;font-weight:800;margin-top:10px}.safe{display:block;text-align:center;color:var(--muted);font-size:9px;margin-top:8px}.emptyOrder{text-align:center;padding:100px;color:var(--muted)}.emptyOrder button{border:0;background:#e4b34e;padding:11px 16px;border-radius:11px;margin-top:12px}
.modalBg{position:fixed;inset:0;background:#0008;z-index:100;display:grid;place-items:center;padding:20px}.itemModal{width:min(700px,100%);background:var(--paper);border-radius:25px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;position:relative;box-shadow:0 30px 90px #0008}.itemModal>img{width:100%;height:100%;min-height:390px;object-fit:cover}.modalInfo{padding:35px}.closeModal{position:absolute;right:12px;top:12px;z-index:2;border:0;background:#0009;color:#fff;width:34px;height:34px;border-radius:50%;font-size:22px}.modalInfo h2{font:600 33px Georgia,serif;margin:15px 0}.modalIngredients{display:flex;flex-wrap:wrap;gap:6px}.modalIngredients span{background:#f2e5c7;border-radius:8px;padding:6px 8px;font-size:9px}.modalInfo p{color:var(--muted);font-size:12px;line-height:1.7;margin:20px 0}.modalInfo>strong{display:block;color:var(--gold);font-size:22px}.modalAdd{width:100%;margin-top:17px;border:0;background:#e4b34f;color:#51370c;padding:14px;border-radius:12px;font-weight:800}.modalAdd span{float:right;font-size:18px}
footer{border-top:1px solid var(--line);padding:18px 4vw;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:9px}footer img{height:42px;width:55px;object-fit:contain}
.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,20px);opacity:0;z-index:150;background:#171714;color:#fff;padding:12px 17px;border-radius:12px;font-size:11px;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1050px){.topbar{grid-template-columns:100px 1fr 250px}.categoryGrid{grid-template-columns:repeat(3,1fr)}.itemGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.topbar{height:68px;grid-template-columns:38px 55px 1fr 130px;padding:6px 12px}.mobileMenu{display:block}.brandMini img{height:47px;width:55px}.topbar nav{position:absolute;left:12px;right:12px;top:62px;background:var(--paper);border:1px solid var(--line);border-radius:13px;display:none;padding:7px}.topbar nav.mobileOpen{display:flex}.topbar nav button{flex:1}.themeBtn span{display:none}.themeBtn{padding:10px}.orderTop{padding:10px;font-size:10px}.orderTop b{font-size:9px}.home{padding:12px}.homeHero{min-height:690px;display:block;background:linear-gradient(180deg,#fffaf0 0%,#f3e5cc 55%,#252016 55.2%,#14130f 100%)}.heroCopy{padding:40px 25px 15px}.heroCopy h1{font-size:49px}.heroCopy p{font-size:13px}.heroTrust{margin-top:25px;gap:8px}.heroVisual{height:300px}.halo{width:290px;height:290px}.plate{width:260px}.dishTag{right:7%;bottom:2%;padding:10px 14px}.dishTag strong{font-size:16px}.homeIntro{grid-template-columns:1fr;margin:15px 0}.homeIntro>div{padding:18px}.homeCTA{display:block;padding:23px}.homeCTA button{margin-top:12px;width:100%}.page{padding:30px 13px 80px}.pageHead{align-items:start}.pageHead h1{font-size:42px}.step{display:none}.categoryGrid{grid-template-columns:repeat(2,1fr);gap:10px}.catImage{height:145px}.catInfo{padding:11px}.catInfo h2{font-size:15px}.menuTitle{display:block}.menuTitle h1{font-size:39px}.searchDish{width:100%;margin-top:15px}.menuLayout{display:block}.subnav{position:static;display:flex;overflow:auto;gap:6px;padding:7px;margin-bottom:15px}.subnav strong{display:none}.subnav button{width:auto;white-space:nowrap}.itemGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;width:100%}.itemContent{padding:9px}.itemTitle{font-size:12px}.itemContent p{font-size:9px;min-height:28px}.itemBottom strong{font-size:12px}.itemBottom button{padding:7px 8px}.suggestHead{display:block}.suggestHead>button{margin-top:7px}.suggestRow>button{min-width:190px}.floatingOrder{right:12px;left:12px;bottom:12px;justify-content:center}.orderLayout{grid-template-columns:1fr}.orderSummary{position:static}.orderLine{grid-template-columns:60px 1fr auto 18px;gap:8px;padding:11px}.orderLine img{width:60px;height:58px}.orderLine strong{font-size:11px}.itemModal{grid-template-columns:1fr;max-height:90vh;overflow:auto}.itemModal>img{min-height:220px;height:220px}.modalInfo{padding:22px}.modalInfo h2{font-size:27px}footer{padding:15px;gap:8px}footer span:last-child{display:none}}
/* =========================================================
   MOTI MAHAL — ROYAL THEME ENGINE + NEW HOME V3
   Theme is deliberately semantic: no text relies on a
   fixed black/white colour, so Light and Dark both stay
   readable and visually intentional.
   ========================================================= */
:root{
 --bg:#f3ede2; --paper:#fffaf1; --paper2:#f7f0e4; --ink:#211e19;
 --muted:#6f6a61; --line:#d9c9af; --line2:#eadfcd;
 --gold:#b77a16; --gold2:#d8a640; --gold3:#f0cb78;
 --goldText:#6e470c; --nav:#fffaf2; --navActive:#f3dfb3;
 --heroLeft:#f7efdf; --heroRight:#171510; --heroText:#211e19;
 --heroMuted:#6d675e; --heroCard:#181713; --heroCardText:#f8f0e4;
 --success:#0c8b52; --danger:#a13a3a; --input:#fffdf8;
 --shadow:0 25px 70px rgba(63,43,14,.14);
}
body[data-theme="dark"]{
 --bg:#0d0d0b; --paper:#171713; --paper2:#1c1b17; --ink:#f4eee4;
 --muted:#aaa398; --line:#3b352a; --line2:#302c25;
 --gold:#d8a23b; --gold2:#e5b858; --gold3:#f4d27f;
 --goldText:#f3d17b; --nav:#11110f; --navActive:#3a2d18;
 --heroLeft:#11110f; --heroRight:#0a0a08; --heroText:#f6efe4;
 --heroMuted:#b5aea2; --heroCard:#12120f; --heroCardText:#f7f0e6;
 --success:#27b975; --danger:#e66b6b; --input:#11110f;
 --shadow:0 30px 80px rgba(0,0,0,.48);
}
html,body{background:var(--bg)!important;color:var(--ink)!important}
.site{background:radial-gradient(circle at 65% -10%,var(--paper) 0,var(--bg) 55%,var(--bg) 100%)!important;color:var(--ink)}
body[data-theme="dark"] .site{background:radial-gradient(circle at 70% -10%,#2a2114 0,#10100d 45%,#090908 100%)!important}
.topbar{background:color-mix(in srgb,var(--nav) 92%,transparent)!important;border-bottom-color:var(--line)!important;color:var(--ink)!important}
.topbar nav button,.themeBtn{color:var(--ink)!important}
.topbar nav button.active,.topbar nav button:hover{background:var(--navActive)!important;color:var(--goldText)!important}
.themeBtn{background:var(--paper)!important;border-color:var(--line)!important}
.orderTop{background:var(--gold)!important;color:#21180b!important;border-color:var(--gold)!important;box-shadow:0 8px 22px rgba(183,122,22,.2)}
.orderTop b{background:var(--gold3)!important;color:#3c2809!important}
/* New home */
.home{padding:0 4vw 45px}
.homeHero{
 position:relative;min-height:650px;overflow:hidden;border-radius:0 0 30px 30px;
 background:linear-gradient(108deg,var(--heroLeft) 0%,var(--heroLeft) 47%,var(--heroRight) 47.2%,#0a0907 100%)!important;
 border:1px solid var(--line);border-top:0;box-shadow:var(--shadow);isolation:isolate;
 display:grid;grid-template-columns:50% 50%;
}
body[data-theme="dark"] .homeHero{background:linear-gradient(108deg,#11110f 0%,#11110f 47%,#1a150e 47.2%,#090907 100%)!important}
.homeHero:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:linear-gradient(90deg,transparent 0 44%,rgba(212,163,59,.07) 44.5%,transparent 46%)}
.heroCopy{padding:125px 8% 60px;position:relative;z-index:4;color:var(--heroText)!important}
.heroCopy h1{color:var(--heroText)!important;font:600 clamp(48px,5.5vw,78px)/.98 'Playfair Display',Georgia,serif;letter-spacing:-2px;margin:20px 0 16px}
.heroCopy h1 em{color:var(--gold)!important;font-style:italic}
.heroCopy p{color:var(--heroMuted)!important;max-width:560px;font-size:15px;line-height:1.7}
.goldDivider{display:flex;align-items:center;width:70px;height:13px;margin:6px 0 15px}.goldDivider:before,.goldDivider:after{content:"";height:1px;background:var(--gold);width:22px}.goldDivider span{width:7px;height:7px;border:1px solid var(--gold);transform:rotate(45deg);margin:0 5px}
.heroActions{display:flex;align-items:center;gap:25px;margin-top:26px}
.primaryCTA{border:0!important;background:linear-gradient(135deg,var(--gold2),var(--gold))!important;color:#211709!important;padding:16px 20px!important;border-radius:13px!important;box-shadow:0 16px 30px rgba(183,122,22,.24)!important;font-weight:800}
.primaryCTA span{margin-left:28px}
.storyBtn{border:0!important;background:transparent!important;color:var(--heroText)!important;padding:12px 0!important;font-weight:700}
.storyBtn i{display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid var(--gold);border-radius:50%;font-size:9px;color:var(--gold);font-style:normal;margin-right:8px}
.heroTrust{display:flex;gap:16px;flex-wrap:wrap;margin-top:44px;color:var(--gold)!important;font-size:9px;letter-spacing:.2px;font-weight:700}
.heroVisual{position:relative;min-height:650px;z-index:2;overflow:hidden}
.heroVisual:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 58% 48%,rgba(210,155,42,.16),transparent 40%),linear-gradient(120deg,transparent,#0005);z-index:0}
.heroDecor{position:absolute;color:var(--gold2);z-index:3;font-size:18px;filter:drop-shadow(0 0 8px rgba(216,162,59,.4))}
.heroDecor1{left:9%;top:15%}.heroDecor2{left:46%;top:22%;font-size:12px}.heroDecor3{left:18%;bottom:13%;font-size:13px}
.heroPhoto{position:absolute;inset:30px -70px -70px 30px;z-index:1;clip-path:polygon(18% 0,100% 0,100% 100%,0 100%);overflow:hidden}
.heroPhoto:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 35%,rgba(0,0,0,.45))}
.heroPhoto img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.08) contrast(1.03)}
.heroPhotoRing{position:absolute;width:455px;height:455px;border-radius:50%;left:25%;top:28%;border:10px solid #d7a53eaa;box-shadow:0 0 0 8px #1b150a99,0 20px 70px #0009;z-index:2;pointer-events:none}
.legacyBadge{position:absolute;right:5%;top:10%;z-index:5;width:120px;height:120px;border-radius:50%;border:1px solid var(--gold2);background:#0c0c0add;color:#fff3dc;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 12px 35px #0008}
.legacyBadge:before{content:"♛";position:absolute;top:-17px;color:var(--gold3);font-size:24px}
.legacyBadge small{font-size:7px;letter-spacing:2px;color:var(--gold3)}.legacyBadge b{font:600 31px Georgia,serif;color:var(--gold3);line-height:1.1}.legacyBadge span{font-size:7px;letter-spacing:1.4px;line-height:1.5}
.dishTag{position:absolute!important;right:5%;bottom:9%;z-index:6;background:rgba(16,15,12,.82)!important;color:#fff3df!important;border:1px solid rgba(218,165,60,.35)!important;backdrop-filter:blur(14px);min-width:225px!important;border-radius:18px!important;padding:18px 22px!important}
.dishTag small{color:var(--gold3)!important}.dishTag strong{font:600 21px Georgia,serif!important;color:#fff3df!important}.dishTag p{font-size:9px!important;color:#c4baaa!important;margin:6px 0 0!important}.dishTag i{position:absolute;right:14px;bottom:14px;width:29px;height:29px;border:1px solid var(--gold2);border-radius:50%;display:grid;place-items:center;font-style:normal;color:var(--gold3)}
.experienceGrid{display:grid;grid-template-columns:repeat(4,1fr) 2fr;gap:10px;margin-top:12px}
.experienceCard{min-height:137px;background:var(--heroCard)!important;color:var(--heroCardText)!important;border:1px solid var(--line)!important;border-radius:16px;padding:20px;box-shadow:var(--shadow)}
.experienceCard b{display:block;color:var(--gold3);font-size:25px;margin-bottom:14px}.experienceCard strong{display:block;font:600 14px Georgia,serif}.experienceCard span{display:block;font-size:9px;line-height:1.5;color:#a9a094;margin-top:7px}
.experienceFeature{display:grid;grid-template-columns:42% 58%;overflow:hidden;border-radius:16px;background:var(--paper)!important;border:1px solid var(--line)!important;color:var(--ink)!important;box-shadow:var(--shadow)}
.featureImage{min-height:137px;background:url('https://images.unsplash.com/photo-1517248135467-4c7edcad34c4?auto=format&fit=crop&w=900&q=85') center/cover}
.featureCopy{padding:17px 20px}.featureCopy small{font-size:7px;letter-spacing:1.6px;color:var(--gold);font-weight:800}.featureCopy h2{font:600 21px Georgia,serif;margin:8px 0;color:var(--ink)}.featureCopy h2 em{color:var(--gold);font-style:italic}.featureCopy p{font-size:9px;color:var(--muted);line-height:1.5}.featureCopy button{border:0;background:transparent;color:var(--gold);font-weight:800;font-size:10px;padding:0}
.homeBottom{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin-top:10px}
.homeStats{display:grid;grid-template-columns:repeat(4,1fr);background:var(--heroCard);border:1px solid var(--line);border-radius:17px;overflow:hidden}
.homeStats div{padding:18px 22px;border-right:1px solid #4a4030}.homeStats div:last-child{border-right:0}.homeStats b{display:block;font:600 23px Georgia,serif;color:var(--gold3)}.homeStats span{font-size:9px;color:#aaa095}
.homeOrderPreview{border:1px solid var(--line);background:var(--paper);border-radius:17px;padding:12px 15px;display:flex;align-items:center;gap:12px;text-align:left;color:var(--ink);box-shadow:var(--shadow)}.homeOrderPreview>span{width:48px;height:48px;border-radius:50%;background:#ead4a3;display:grid;place-items:center}.homeOrderPreview div{flex:1}.homeOrderPreview small,.homeOrderPreview b{display:block}.homeOrderPreview small{font-size:7px;letter-spacing:1.3px;color:var(--gold)}.homeOrderPreview b{font-size:12px}.homeOrderPreview>strong{background:var(--gold2);color:#251908;padding:10px 12px;border-radius:11px;font-size:10px}.homeOrderPreview i{font-style:normal;margin-left:8px}
/* Global theme-safe components */
.pageHead h1,.menuTitle h1,.catInfo h2,.itemTitle,.orderLine strong,.modalInfo h2,.suggestHead h2,.homeCTA h2{color:var(--ink)!important}
.pageHead p,.menuTitle p,.itemContent p,.itemToolbar,.crumb,.orderLine small,.safe,.modalInfo p,.suggestHead p,footer{color:var(--muted)!important}
.categoryCard,.menuItem,.orderItems,.orderSummary,.searchDish,.subnav,.suggestRow>button,.orderCount{background:var(--paper)!important;border-color:var(--line)!important;color:var(--ink)!important}
.subnav button{color:var(--ink)!important}.subnav button.active,.subnav button:hover{background:var(--navActive)!important;color:var(--goldText)!important}
.itemBottom button,.modalAdd,.emptyOrder button{background:linear-gradient(135deg,var(--gold2),var(--gold))!important;color:#241807!important}
.itemBottom strong,.modalInfo>strong,.grand b,.eyebrow,.goldDivider{color:var(--gold)!important}
.modalIngredients span{background:var(--paper2)!important;color:var(--ink)!important;border:1px solid var(--line2)}
.orderSummary{color:var(--ink)!important}.waBig{background:var(--success)!important;color:#fff!important}
footer{border-color:var(--line)!important}
.floatingOrder{background:var(--heroCard)!important;color:var(--heroCardText)!important;border-color:var(--line)!important}.cartIcon{background:var(--gold2)!important}
.toast{background:var(--heroCard)!important;color:var(--heroCardText)!important}
/* Modal / mobile */
@media(max-width:1050px){.experienceGrid{grid-template-columns:repeat(2,1fr)}.experienceFeature{grid-column:1/-1}}
@media(max-width:760px){
 .home{padding:0 10px 75px}.homeHero{min-height:820px;display:block;border-radius:0 0 24px 24px;background:linear-gradient(180deg,var(--heroLeft) 0%,var(--heroLeft) 50%,var(--heroRight) 50.2%,#0a0907 100%)!important}
 .heroCopy{padding:48px 22px 15px}.heroCopy h1{font-size:48px;letter-spacing:-1.2px}.heroCopy p{font-size:13px}.heroActions{gap:16px;flex-wrap:wrap}.heroTrust{margin-top:27px}.heroVisual{height:355px;min-height:355px}.heroPhoto{inset:20px -20px -10px 10px;clip-path:polygon(13% 0,100% 0,100% 100%,0 100%)}.heroPhotoRing{width:280px;height:280px;left:18%;top:15%;border-width:7px}.legacyBadge{width:88px;height:88px;right:6%;top:7%}.legacyBadge b{font-size:22px}.legacyBadge small,.legacyBadge span{font-size:5px}.dishTag{right:3%;bottom:0;min-width:190px!important;padding:12px 15px!important}.dishTag strong{font-size:17px!important}.experienceGrid{display:flex;overflow:auto;gap:8px;padding-bottom:3px}.experienceCard{min-width:170px}.experienceFeature{min-width:360px;display:grid}.homeBottom{display:block}.homeStats{grid-template-columns:repeat(2,1fr);margin-top:9px}.homeStats div{border-bottom:1px solid #4a4030}.homeOrderPreview{margin-top:9px;width:100%}
 .topbar nav{background:var(--paper)!important;color:var(--ink)!important}
}
/* =========================================================
   V4 — WHITE / CHARCOAL THEME + DAY SPECIAL + SLIDER
   No yellow UI. Copper is used only as a restrained accent.
   ========================================================= */
:root{
 --bg:#f7f8f9;--paper:#ffffff;--paper2:#f2f4f5;--ink:#17191b;--muted:#687078;
 --line:#dfe3e6;--line2:#edf0f2;--gold:#9a6035;--gold2:#b97845;--gold3:#d6a178;--goldText:#7c492a;
 --nav:#ffffff;--navActive:#f1f3f4;--heroLeft:#ffffff;--heroRight:#17191b;--heroText:#17191b;--heroMuted:#657079;
 --heroCard:#17191b;--heroCardText:#f5f6f7;--success:#16875a;--input:#ffffff;--shadow:0 24px 70px rgba(23,29,34,.10);
}
body[data-theme="dark"]{
 --bg:#101315;--paper:#191d20;--paper2:#202529;--ink:#f3f5f6;--muted:#aab2b8;
 --line:#343b40;--line2:#293034;--gold:#c47b48;--gold2:#d89562;--gold3:#efb98d;--goldText:#f0b98e;
 --nav:#14181a;--navActive:#252b2f;--heroLeft:#121618;--heroRight:#202529;--heroText:#f4f5f5;--heroMuted:#aeb6bb;
 --heroCard:#171b1e;--heroCardText:#f3f5f6;--success:#26a874;--input:#14181a;--shadow:0 30px 85px rgba(0,0,0,.42);
}
html,body{background:var(--bg)!important;color:var(--ink)!important}
.site{background:radial-gradient(circle at 50% -10%,#fff 0,var(--bg) 60%)!important;color:var(--ink)!important}
body[data-theme="dark"] .site{background:radial-gradient(circle at 70% -10%,#273036 0,#101315 52%,#0c0f10 100%)!important}
.topbar{background:color-mix(in srgb,var(--nav) 94%,transparent)!important;border-bottom:1px solid var(--line)!important}
.topbar nav button.active,.topbar nav button:hover{background:var(--navActive)!important;color:var(--goldText)!important}
.themeBtn{background:var(--paper)!important;color:var(--ink)!important;border-color:var(--line)!important}
.orderTop{background:var(--ink)!important;color:var(--paper)!important;border-color:var(--ink)!important;box-shadow:0 10px 25px #0002}
.orderTop b{background:var(--gold3)!important;color:#302016!important}
.homeHero{background:linear-gradient(108deg,var(--heroLeft) 0%,var(--heroLeft) 47%,var(--heroRight) 47.2%,#101214 100%)!important;border-color:var(--line)!important}
body[data-theme="dark"] .homeHero{background:linear-gradient(108deg,#121618 0%,#121618 47%,#202529 47.2%,#161a1c 100%)!important}
.heroCopy h1,.heroCopy{color:var(--heroText)!important}.heroCopy h1 em{color:var(--gold)!important}.heroCopy p{color:var(--heroMuted)!important}.heroTrust{color:var(--gold)!important}
.primaryCTA{background:var(--ink)!important;color:var(--paper)!important;box-shadow:0 14px 30px #0002!important}.primaryCTA:hover{background:var(--gold)!important;color:#fff!important}
.heroPhoto:after{background:linear-gradient(135deg,transparent 35%,rgba(0,0,0,.12))!important}.heroPhoto img{filter:saturate(1.03) contrast(1.02)!important}
body[data-theme="dark"] .heroPhoto:after{background:linear-gradient(135deg,rgba(0,0,0,.08),rgba(0,0,0,.34))!important}
.heroPhotoRing{border-color:#b9784588!important;box-shadow:0 0 0 8px #17191b55,0 20px 70px #0005!important}
.legacyBadge{background:#17191be8!important;border-color:var(--gold3)!important}.legacyBadge small,.legacyBadge b{color:var(--gold3)!important}
.dishTag{background:color-mix(in srgb,var(--heroCard) 90%,transparent)!important;color:var(--heroCardText)!important;border-color:var(--gold)55!important}.dishTag small{color:var(--gold3)!important}.dishTag strong{color:var(--heroCardText)!important}.dishTag p{color:var(--heroMuted)!important}.dishTag button{border:0;background:transparent;color:var(--gold3);font-size:9px;font-weight:800;padding:8px 0 0}
.experienceGrid{grid-template-columns:repeat(4,1fr) 2fr}.experienceCard{background:var(--heroCard)!important;color:var(--heroCardText)!important;border-color:var(--line)!important}.experienceCard b{color:var(--gold3)!important}.experienceCard span{color:#aab2b8!important}
.experienceSlider{position:relative;min-height:137px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--paper);box-shadow:var(--shadow)}
.experienceSlide{position:absolute;inset:0;display:grid;grid-template-columns:42% 58%;opacity:0;transform:translateX(18px);transition:opacity .6s ease,transform .6s ease;pointer-events:none}.experienceSlide.active{opacity:1;transform:none;pointer-events:auto}.experienceSlide .featureImage{min-height:137px;background-position:center;background-size:cover}.experienceSlide .featureCopy{padding:17px 20px;color:var(--ink)}.experienceSlide .featureCopy small{font-size:7px;letter-spacing:1.6px;color:var(--gold);font-weight:800}.experienceSlide .featureCopy h2{font:600 21px Georgia,serif;margin:8px 0;color:var(--ink)}.experienceSlide .featureCopy h2 em{color:var(--gold);font-style:italic}.experienceSlide .featureCopy p{font-size:9px;color:var(--muted);line-height:1.5}.experienceSlide .featureCopy button{border:0;background:transparent;color:var(--gold);font-weight:800;font-size:10px;padding:0}.sliderDots{position:absolute;right:12px;bottom:10px;display:flex;gap:5px;z-index:4}.sliderDots button{width:5px;height:5px;padding:0;border:0;border-radius:50%;background:#c8cdd0}.sliderDots button.active{width:18px;border-radius:5px;background:var(--gold)}
.homeJourney{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:14px}.homeJourney article{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow);transition:.25s}.homeJourney article:hover{transform:translateY(-4px)}.homeJourney span{color:var(--gold);font-weight:800}.homeJourney h2{font:600 25px Georgia,serif;color:var(--ink);margin:14px 0 8px}.homeJourney p{color:var(--muted);font-size:12px;line-height:1.6;margin:0}.homeCTA{background:var(--ink)!important;color:var(--paper)!important}.homeCTA small{color:var(--gold3)!important}.homeCTA button{background:var(--paper)!important;color:var(--ink)!important;border:1px solid var(--line)!important}.homeOrderPreview{background:var(--paper)!important;color:var(--ink)!important;border-color:var(--line)!important}.homeOrderPreview>strong{background:var(--ink)!important;color:var(--paper)!important}
.categoryCard,.menuItem,.orderItems,.orderSummary,.searchDish,.subnav,.suggestRow>button,.orderCount{background:var(--paper)!important;border-color:var(--line)!important;color:var(--ink)!important}.subnav button.active,.subnav button:hover{background:var(--navActive)!important;color:var(--goldText)!important}.itemBottom button,.modalAdd,.emptyOrder button{background:var(--ink)!important;color:var(--paper)!important}.itemBottom button:hover,.modalAdd:hover{background:var(--gold)!important}.itemBottom strong,.modalInfo>strong,.grand b,.eyebrow,.goldDivider{color:var(--gold)!important}
footer{border-color:var(--line)!important;color:var(--muted)!important}
@media(max-width:1050px){.experienceGrid{grid-template-columns:repeat(2,1fr)}.experienceSlider{grid-column:1/-1}}
@media(max-width:760px){.homeHero{background:linear-gradient(180deg,var(--heroLeft) 0%,var(--heroLeft) 50%,var(--heroRight) 50.2%,#101214 100%)!important}.experienceGrid{display:flex;overflow:auto}.experienceSlider{min-width:360px}.homeJourney{grid-template-columns:1fr}.homeCTA{margin-top:14px}.topbar{grid-template-columns:50px 1fr auto}.brandMini{grid-column:2}.topbar nav{position:absolute;left:0;right:0;top:70px;display:none;padding:10px;background:var(--paper);border-bottom:1px solid var(--line)}.topbar nav.mobileOpen{display:flex}.topbar nav button{color:var(--ink)!important}}
/* Light theme is genuinely light; Dark theme is genuinely dark. */
:root{--heroRight:#eef1f2}
.homeHero{background:linear-gradient(108deg,var(--heroLeft) 0%,var(--heroLeft) 47%,var(--heroRight) 47.2%,#e4e8ea 100%)!important}
.heroVisual:before{background:radial-gradient(circle at 58% 48%,rgba(154,96,53,.08),transparent 42%)!important}
.legacyBadge{background:#ffffffed!important;color:var(--ink)!important;box-shadow:0 12px 35px #0002!important}.legacyBadge span{color:var(--muted)!important}.dishTag{background:#ffffffed!important;color:var(--ink)!important;box-shadow:0 20px 45px #0002!important}.dishTag strong{color:var(--ink)!important}.dishTag p{color:var(--muted)!important}
body[data-theme="dark"] .homeHero{background:linear-gradient(108deg,#121618 0%,#121618 47%,#202529 47.2%,#161a1c 100%)!important}
body[data-theme="dark"] .heroVisual:before{background:radial-gradient(circle at 58% 48%,rgba(216,149,98,.12),transparent 42%)!important}
body[data-theme="dark"] .legacyBadge{background:#171b1ee8!important;color:#f4f5f5!important}.legacyBadge span{color:#aab2b8!important}body[data-theme="dark"] .dishTag{background:#171b1eea!important;color:#f4f5f5!important}body[data-theme="dark"] .dishTag strong{color:#f4f5f5!important}body[data-theme="dark"] .dishTag p{color:#aab2b8!important}
@media(max-width:760px){.homeHero{background:linear-gradient(180deg,var(--heroLeft) 0%,var(--heroLeft) 50%,var(--heroRight) 50.2%,#e4e8ea 100%)!important}body[data-theme="dark"] .homeHero{background:linear-gradient(180deg,#121618 0%,#121618 50%,#202529 50.2%,#161a1c 100%)!important}}
/* V4.1 fixes */
.homeCTA{margin-top:26px!important}.experienceSlider,.experienceSlide .featureImage{min-height:180px!important}.sliderDots button{cursor:pointer!important}@media(max-width:760px){.homeCTA{margin-top:26px!important}.experienceSlider,.experienceSlide .featureImage{min-height:170px!important}}
.siteCredit{
  display:inline-flex; align-items:center; gap:5px;
  font-size:10px; letter-spacing:.15px; color:var(--muted,#777);
  margin-left:10px;
}
.siteCredit a{
  color:inherit; font-weight:700; text-decoration:none;
  transition:opacity .2s ease;
}
.siteCredit a:hover{opacity:.7; text-decoration:underline}
/* =========================================================
   V4.3 — MOBILE DRAWER + DAY SPECIAL + 3D POLISH
   ========================================================= */
.drawerBackdrop{display:none}
.specialItems{display:flex;gap:18px;margin:8px 0 4px}.specialItem{flex:1;min-width:0}.specialItem + .specialItem{border-left:1px solid color-mix(in srgb,var(--gold3) 28%,transparent);padding-left:18px}.specialItem strong{display:block}.specialItem p{margin:5px 0 0!important;font-size:9px!important;line-height:1.4!important}
.dishTag{transform:perspective(900px) rotateX(0deg) translateZ(0);transition:transform .28s ease,box-shadow .28s ease}.dishTag:hover{transform:perspective(900px) translateY(-4px) rotateX(1deg);box-shadow:0 28px 55px #0005!important}
.experienceCard,.homeJourney article,.categoryCard,.menuItem,.orderItems,.orderSummary,.suggestRow>button,.homeCTA,.homeOrderPreview,.searchDish,.subnav{box-shadow:0 12px 30px rgba(25,31,35,.09),0 2px 5px rgba(25,31,35,.05)!important;transform:translateZ(0);transition:transform .25s ease,box-shadow .25s ease}
.experienceCard:hover,.homeJourney article:hover,.categoryCard:hover,.menuItem:hover,.suggestRow>button:hover,.homeOrderPreview:hover{transform:translateY(-5px) perspective(900px) rotateX(.5deg);box-shadow:0 22px 45px rgba(25,31,35,.15),0 5px 12px rgba(25,31,35,.06)!important}
.homeCTA{position:relative;overflow:hidden}.homeCTA:after{content:"";position:absolute;inset:-40% auto -40% 55%;width:35%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.07),transparent);transform:rotate(18deg);pointer-events:none}
@media(max-width:760px){
 .topbar{grid-template-columns:54px 1fr auto!important;height:70px!important;padding:7px 10px!important;position:relative;z-index:1000}
 .mobileMenu{display:grid!important;place-items:center;width:48px;height:48px;border:1px solid var(--line)!important;border-radius:14px!important;background:var(--paper)!important;color:var(--ink)!important;font-size:26px!important;box-shadow:0 8px 20px rgba(0,0,0,.08)!important;z-index:1002}
 .brandMini{grid-column:auto!important;justify-self:center}.brandMini img{height:50px!important;width:58px!important}
 .topbar .mainNav{position:fixed!important;left:0!important;top:0!important;bottom:0!important;right:auto!important;width:min(82vw,300px)!important;height:100dvh!important;padding:86px 16px 24px!important;margin:0!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;background:var(--paper)!important;border:0!important;border-right:1px solid var(--line)!important;border-radius:0 22px 22px 0!important;box-shadow:24px 0 60px rgba(0,0,0,.22)!important;transform:translateX(-105%)!important;transition:transform .3s cubic-bezier(.22,.8,.25,1)!important;z-index:1001!important;overflow-y:auto!important}
 .topbar .mainNav.mobileOpen{transform:translateX(0)!important}
 .drawerBrand{display:none}
 .topbar .mainNav button{flex:none!important;width:100%!important;text-align:left!important;padding:15px 16px!important;border-radius:14px!important;color:var(--ink)!important;font-size:15px!important;background:transparent!important}
 .topbar .mainNav .drawerBrand{display:flex!important;align-items:center!important;gap:12px!important;padding:4px 12px 18px!important;margin-bottom:6px!important;border-bottom:1px solid var(--line)!important}
 .topbar .mainNav .drawerBrand img{width:54px!important;height:58px!important;object-fit:contain!important;display:block!important}
 .topbar .mainNav .drawerBrand strong{font:700 18px Georgia,serif!important;color:var(--ink)!important;letter-spacing:.2px!important}
 .topbar .mainNav button.active{background:var(--navActive)!important;color:var(--goldText)!important;font-weight:800!important}
 .drawerBackdrop{display:block;position:fixed;inset:0;background:rgba(12,15,17,.42);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .25s ease;z-index:999}
 .drawerBackdrop.open{opacity:1;pointer-events:auto}
 .headerRight{gap:6px!important}.themeBtn{width:48px;height:48px!important;padding:0!important;border-radius:14px!important}.themeBtn span{display:none!important}.orderTop{height:48px!important;padding:0 12px!important;border-radius:14px!important}
 .heroVisual{height:370px!important;min-height:370px!important;position:relative!important;overflow:visible!important}
 .heroPhoto{inset:22px -18px -5px 8px!important;z-index:1!important}
 .heroPhotoRing{width:250px!important;height:250px!important;left:20%!important;top:17%!important;z-index:2!important}
 .legacyBadge{width:78px!important;height:78px!important;right:10px!important;top:8px!important;z-index:8!important;margin:0!important}.legacyBadge:before{top:-12px!important;font-size:18px!important}.legacyBadge b{font-size:20px!important}.legacyBadge small,.legacyBadge span{font-size:5px!important}
 .dishTag{left:5%!important;right:5%!important;bottom:2px!important;min-width:0!important;width:auto!important;padding:14px 16px 13px!important;border-radius:20px!important;z-index:9!important}
 .dishTag small{font-size:7px!important;letter-spacing:1.6px!important}.specialItems{gap:10px!important;margin:7px 0 4px!important}.specialItem + .specialItem{padding-left:10px!important}.specialItem strong{font-size:16px!important;line-height:1.12!important}.specialItem p{font-size:8px!important;line-height:1.35!important;margin-top:4px!important}.dishTag button{font-size:9px!important;padding:6px 0 0!important}
 .experienceGrid{gap:9px!important}.experienceCard{min-width:174px!important;min-height:130px!important}.experienceSlider{min-width:350px!important}
 .homeJourney article{padding:20px!important}.homeCTA{padding:22px!important}
}
/* =========================================================
   V4.4 — MOBILE HERO FIX + AUTO EXPERIENCE CAROUSEL + 3D GRADIENT POLISH
   ========================================================= */
:root{
 --accentGrad:linear-gradient(135deg,#e7b17f 0%,#b87345 48%,#8e4e2f 100%);
 --softGrad:linear-gradient(135deg,#ffffff 0%,#f7f9fa 52%,#eef1f3 100%);
 --cardDepth:0 18px 45px rgba(27,31,34,.12),0 4px 12px rgba(27,31,34,.07);
}
body[data-theme="dark"]{
 --accentGrad:linear-gradient(135deg,#f0c07f 0%,#c77b48 45%,#8d4d31 100%);
 --softGrad:linear-gradient(145deg,#202327 0%,#15181b 60%,#101214 100%);
 --cardDepth:0 22px 55px rgba(0,0,0,.42),0 5px 15px rgba(0,0,0,.28);
}
/* Keep the legacy seal completely inside the hero image area on mobile. */
@media(max-width:760px){
 .heroVisual{overflow:hidden!important;height:390px!important;min-height:390px!important}
 .heroPhoto{inset:22px -18px -8px 8px!important}
 .legacyBadge{
   width:76px!important;height:76px!important;
   right:20px!important;top:48px!important;
   z-index:8!important;
   box-shadow:0 12px 28px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.55)!important;
 }
 .legacyBadge:before{top:-10px!important;font-size:17px!important}
 .heroDecor3{display:none!important}
 .dishTag{
   bottom:5px!important;
   background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(247,243,238,.96))!important;
   box-shadow:0 22px 50px rgba(23,27,30,.18),0 3px 10px rgba(23,27,30,.10)!important;
   border:1px solid rgba(183,115,69,.42)!important;
 }
 body[data-theme="dark"] .dishTag{
   background:linear-gradient(145deg,rgba(31,35,38,.98),rgba(18,21,23,.98))!important;
   border-color:rgba(224,157,103,.38)!important;
   box-shadow:0 24px 55px rgba(0,0,0,.48)!important;
 }
}
/* Modern 3D cards and gradient accents. */
.experienceCard,
.homeJourney article,
.homeCTA,
.categoryCard,
.menuItem,
.orderItems,
.orderSummary,
.searchDish,
.subnav,
.homeOrderPreview{
 box-shadow:var(--cardDepth)!important;
}
.experienceCard{
 background:var(--softGrad)!important;
 border:1px solid color-mix(in srgb,var(--gold2) 22%,var(--line))!important;
 position:relative;overflow:hidden;
 transform:translateZ(0);
}
.experienceCard:after{
 content:"";position:absolute;inset:0;pointer-events:none;
 background:linear-gradient(125deg,rgba(255,255,255,.13),transparent 38%,rgba(183,115,69,.05));
}
.experienceCard b{background:var(--accentGrad);-webkit-background-clip:text;background-clip:text;color:transparent!important;filter:drop-shadow(0 2px 2px rgba(126,74,43,.14));}
.primaryCTA,.homeCTA button,.itemBottom button,.modalAdd,.emptyOrder button{
 background:var(--accentGrad)!important;
 box-shadow:0 12px 25px rgba(156,88,48,.24),inset 0 1px 0 rgba(255,255,255,.28)!important;
 border:1px solid rgba(255,255,255,.18)!important;
 transform:translateZ(0);
}
.primaryCTA:hover,.homeCTA button:hover,.itemBottom button:hover,.modalAdd:hover{transform:translateY(-2px)!important;box-shadow:0 17px 32px rgba(156,88,48,.30),inset 0 1px 0 rgba(255,255,255,.30)!important}
.homeJourney article,.categoryCard,.menuItem,.orderItems,.orderSummary,.searchDish,.subnav,.homeOrderPreview{
 background:var(--softGrad)!important;
 border-color:color-mix(in srgb,var(--gold2) 18%,var(--line))!important;
}
/* On phones the four experience cards become an automatic horizontal carousel. */
@media(max-width:760px){
 .experienceGrid{
   display:flex!important;
   overflow-x:auto!important;overflow-y:hidden!important;
   scroll-snap-type:x mandatory!important;
   scroll-behavior:smooth!important;
   scrollbar-width:none!important;
   padding:5px 4px 13px!important;
   gap:12px!important;
 }
 .experienceGrid::-webkit-scrollbar{display:none}
 .experienceCard{
   flex:0 0 calc(100vw - 62px)!important;
   min-width:calc(100vw - 62px)!important;
   min-height:142px!important;
   scroll-snap-align:center!important;
   border-radius:20px!important;
   padding:22px!important;
 }
 .experienceCard strong{font-size:18px!important;letter-spacing:-.2px}
 .experienceCard span{font-size:11px!important;line-height:1.55!important}
 .experienceCard b{font-size:27px!important;margin-bottom:16px!important}
 .experienceSlider{flex:0 0 calc(100vw - 62px)!important;min-width:calc(100vw - 62px)!important;scroll-snap-align:center!important;border-radius:20px!important}
}
/* Keep the hero legacy seal and its depth stable at every small viewport. */
@media(max-width:420px){
 .legacyBadge{right:14px!important;top:44px!important;width:70px!important;height:70px!important}
 .legacyBadge b{font-size:18px!important}
 .legacyBadge:before{font-size:15px!important;top:-9px!important}
 .dishTag{left:4%!important;right:4%!important}
}
/* =========================================================
   V4.5 — MOBILE AUTO CAROUSEL + LIGHT THEME TEXT FIX
   ========================================================= */
.experienceCard strong{color:var(--ink)!important;text-shadow:none!important}
.experienceCard span{color:var(--muted)!important;text-shadow:none!important}
.experienceCard b{color:var(--gold)!important}
body[data-theme="dark"] .experienceCard strong{color:var(--ink)!important}
body[data-theme="dark"] .experienceCard span{color:var(--muted)!important}
body[data-theme="dark"] .experienceCard b{color:var(--gold3)!important}
@media(max-width:760px){
 .experienceGrid{
   display:flex!important;
   flex-wrap:nowrap!important;
   overflow-x:auto!important;
   overflow-y:hidden!important;
   scroll-snap-type:x mandatory!important;
   scroll-behavior:smooth!important;
   -webkit-overflow-scrolling:touch!important;
   scrollbar-width:none!important;
   touch-action:pan-x!important;
   overscroll-behavior-x:contain!important;
 }
 .experienceGrid::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
 .experienceCard{
   flex:0 0 calc(100vw - 62px)!important;
   width:calc(100vw - 62px)!important;
   min-width:calc(100vw - 62px)!important;
   scroll-snap-align:start!important;
   scroll-snap-stop:always!important;
   background:var(--softGrad)!important;
 }
 .experienceCard strong{color:var(--ink)!important;font-weight:700!important}
 .experienceCard span{color:var(--muted)!important}
}
.ingredientLine span{display:inline-flex;align-items:center;justify-content:center}
.ingredientLine span img{width:22px;height:22px;object-fit:contain;display:block}
.modalIngredients span{display:inline-flex;align-items:center;gap:5px}
.modalIngredients span img{width:20px;height:20px;object-fit:contain;display:block}
/* =========================================================
   V4.8 — HEADER LOGO ALIGNMENT + MOBILE FOOTER
   ========================================================= */
/* Desktop/tablet: logo is anchored cleanly to the left side. */
@media(min-width:761px){
  .topbar .brandMini{
    justify-self:start!important;
    align-self:center!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    padding:0!important;
    margin:0!important;
  }
  .topbar .brandMini img{
    display:block!important;
    width:80px!important;
    height:58px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
}
/* Mobile: logo is mathematically centered in the viewport, independent of
   hamburger/theme/order widths, just like a native app header. */
@media(max-width:760px){
  .topbar{position:sticky!important;height:70px!important;padding:7px 10px!important;overflow:visible!important}
  .topbar .brandMini{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    width:58px!important;
    height:54px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
    padding:0!important;
    z-index:1003!important;
  }
  .topbar .brandMini img{
    width:58px!important;
    height:50px!important;
    object-fit:contain!important;
    object-position:center!important;
    display:block!important;
  }
  .mobileMenu{position:relative!important;z-index:1004!important}
  .headerRight{position:relative!important;z-index:1004!important}
  /* Full mobile footer: no hidden credit, no clipped content. */
  footer{
    width:100%!important;
    min-height:170px!important;
    padding:28px 18px 30px!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
    gap:12px!important;
    text-align:center!important;
    font-size:11px!important;
    line-height:1.45!important;
    overflow:visible!important;
  }
  footer img{
    width:58px!important;
    height:50px!important;
    object-fit:contain!important;
    flex:0 0 auto!important;
  }
  footer span{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  footer .siteCredit{margin:0!important;font-size:10px!important}
  footer .siteCredit a{font-weight:800!important}
}
@media(min-width:761px){
  footer{min-height:82px!important;padding-left:4vw!important;padding-right:4vw!important}
  footer .siteCredit{margin-left:auto!important}
}
/* =========================================================
   V4.10 — DESKTOP DRAWER LOGO FIX + MOBILE DRAWER BRAND
   ========================================================= */
/* Drawer branding must NEVER render in the desktop header. */
.drawerBrand{display:none!important}
@media(min-width:761px){
  .topbar .drawerBrand{display:none!important}
  .topbar .brandMini{display:flex!important;visibility:visible!important;opacity:1!important}
}
@media(max-width:760px){
  /* Main header logo stays centered normally, but disappears while
     the app-style drawer is open so it doesn't duplicate the drawer logo. */
  .topbar:has(.mainNav.mobileOpen) .brandMini{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  /* Large, centered restaurant logo inside the opened drawer. */
  .topbar .mainNav .drawerBrand{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    padding:18px 8px 22px!important;
    margin:0 0 10px!important;
    min-height:205px!important;
    border-bottom:1px solid var(--line)!important;
    text-align:center!important;
  }
  .topbar .mainNav .drawerBrand img{
    width:145px!important;
    height:155px!important;
    max-width:145px!important;
    object-fit:contain!important;
    object-position:center!important;
    display:block!important;
    filter:drop-shadow(0 12px 18px rgba(0,0,0,.12))!important;
  }
  .topbar .mainNav .drawerBrand strong{
    font:700 19px/1.15 Georgia,serif!important;
    color:var(--ink)!important;
    letter-spacing:.3px!important;
  }
}
/* =========================================================
   MOTI MAHAL — CINEMATIC HERO FINAL
   In-place hero upgrade. Existing data/functionality preserved.
   ========================================================= */
.home{padding:0 4vw 45px!important}
.heroCinema{
  min-height:calc(100svh - 78px)!important;
  height:min(900px,calc(100svh - 78px))!important;
  max-width:1500px!important;
  margin:0 auto!important;
  border-radius:0 0 32px 32px!important;
  overflow:hidden!important;
  position:relative!important;
  display:block!important;
  background:#090908!important;
  color:#fff!important;
  isolation:isolate!important;
  border:0!important;
  box-shadow:0 35px 90px rgba(20,14,6,.25)!important;
}
.heroCinemaBackdrop,.heroCinemaSlide,.heroCinemaImage,.heroCinemaVignette,.heroCinemaGrain,.heroCinemaLight{position:absolute;inset:0}
.heroCinemaBackdrop{z-index:0;overflow:hidden;background:#090908}
.heroCinemaSlide{opacity:0;visibility:hidden;transition:opacity 1.45s cubic-bezier(.22,.61,.36,1),visibility 1.45s;overflow:hidden}
.heroCinemaSlide.isActive{opacity:1;visibility:visible}
.heroCinemaImage{
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  transform:scale(1.085) translate3d(var(--hero-mx,0px),var(--hero-my,0px),0)!important;
  filter:saturate(.9) contrast(1.08) brightness(.88)!important;
  transition:transform 8.2s cubic-bezier(.12,.72,.2,1),filter 1.2s ease!important;
}
.heroCinemaSlide.isActive .heroCinemaImage{transform:scale(1.01) translate3d(var(--hero-mx,0px),var(--hero-my,0px),0)!important;filter:saturate(1.02) contrast(1.08) brightness(.92)!important}
.heroCinemaSlide:after{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(5,5,4,.96) 0%,rgba(7,7,6,.82) 20%,rgba(7,7,6,.47) 44%,rgba(7,7,6,.16) 72%,rgba(7,7,6,.38) 100%),
    linear-gradient(180deg,rgba(0,0,0,.35) 0%,transparent 28%,transparent 66%,rgba(0,0,0,.72) 100%);
}
.heroCinemaVignette{z-index:2;pointer-events:none;background:radial-gradient(circle at 60% 48%,transparent 0 25%,rgba(0,0,0,.12) 52%,rgba(0,0,0,.62) 100%)}
.heroCinemaGrain{z-index:3;opacity:.08;mix-blend-mode:soft-light;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E");animation:heroFilmGrain .28s steps(2) infinite}
.heroCinemaLight{z-index:4;inset:auto;width:58%;height:150%;top:-28%;background:linear-gradient(90deg,transparent,rgba(226,177,82,.10),rgba(255,241,193,.05),transparent);filter:blur(24px);transform:rotate(17deg);pointer-events:none}
.heroLightOne{left:42%;animation:heroLightMove 9s ease-in-out infinite}
.heroLightTwo{left:15%;opacity:.35;animation:heroLightMove2 13s ease-in-out infinite}
.heroCinemaContent{
  position:relative!important;z-index:8!important;height:100%!important;width:min(66%,900px)!important;
  display:flex!important;flex-direction:column!important;justify-content:space-between!important;
  padding:clamp(48px,7vh,86px) clamp(28px,6vw,92px) 30px!important;
  max-width:none!important;color:#fff!important;
}
.heroCinemaMeta{display:flex;align-items:center;gap:11px;font-size:9px;letter-spacing:2.5px;font-weight:800;color:rgba(255,255,255,.72);text-transform:uppercase}
.heroCinemaMeta i{height:1px;width:36px;background:rgba(225,178,86,.75)}
.heroLiveDot{width:6px;height:6px;border-radius:50%;background:#e9bd69;box-shadow:0 0 0 5px rgba(233,189,105,.12);animation:heroLivePulse 2.2s ease-in-out infinite}
.heroCinemaCopy{max-width:730px;margin-top:auto;margin-bottom:clamp(32px,7vh,74px);transform:translateZ(0)}
.heroCinemaCopy.heroTextOut{opacity:0;transform:translateY(24px);filter:blur(5px);transition:opacity .28s ease,transform .38s ease,filter .38s ease}
.heroCinemaCopy.heroTextIn{animation:heroCopyIn .95s cubic-bezier(.22,1,.36,1) both}
.heroCinemaCopy .eyebrow{color:#e6b75c!important;font-size:10px;letter-spacing:3px;font-weight:800}
.heroCinemaCopy h1{color:#fff!important;font:600 clamp(50px,6.2vw,94px)/.91 'Playfair Display',Georgia,serif;letter-spacing:-2.7px;text-shadow:0 10px 45px rgba(0,0,0,.42);margin:18px 0 23px!important}
.heroCinemaCopy h1 em{color:#f0c875!important;font-style:italic}
.heroCinemaCopy .goldDivider{display:flex!important;align-items:center;width:74px;height:13px;margin:0 0 18px!important}
.heroCinemaCopy .goldDivider:before,.heroCinemaCopy .goldDivider:after{content:"";height:1px;background:rgba(232,190,105,.72);width:23px}
.heroCinemaCopy .goldDivider span{width:7px;height:7px;border:1px solid #e8bd68;transform:rotate(45deg);margin:0 5px;background:transparent}
.heroCinemaCopy p{max-width:575px;color:rgba(255,255,255,.75)!important;font-size:15px;line-height:1.75;margin:0!important}
.heroActions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:25px!important}
.heroCinemaCopy .primaryCTA{margin-top:0!important;border:1px solid rgba(255,226,153,.3)!important;background:linear-gradient(135deg,#e3b45b,#a96d17)!important;color:#fff!important;padding:15px 19px!important;border-radius:13px!important;box-shadow:0 18px 45px rgba(0,0,0,.28),0 0 35px rgba(213,163,62,.13)!important;position:relative;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease!important}
.heroCinemaCopy .primaryCTA:after{content:"";position:absolute;inset:-70% -35%;background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.42) 50%,transparent 58%);transform:translateX(-85%);transition:transform .8s ease}
.heroCinemaCopy .primaryCTA:hover{transform:translateY(-3px);box-shadow:0 22px 50px rgba(0,0,0,.34),0 0 42px rgba(213,163,62,.2)!important}
.heroCinemaCopy .primaryCTA:hover:after{transform:translateX(85%)}
.heroWatch{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.23)!important;background:rgba(255,255,255,.065)!important;backdrop-filter:blur(14px);color:#fff!important;padding:13px 16px;border-radius:13px;font-size:10px;font-weight:700;transition:.35s ease}
.heroWatch:hover{background:rgba(255,255,255,.12)!important;transform:translateY(-2px);border-color:rgba(232,192,104,.55)!important}
.watchIcon{width:27px;height:27px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.4);border-radius:50%;font-size:8px;padding-left:1px}
.heroCinemaBottom{display:flex;align-items:flex-end;justify-content:space-between;gap:25px}
.heroCinema .heroTrust{margin:0!important;color:rgba(255,255,255,.57)!important;gap:14px}
.heroCinema .heroTrust span{font-size:8px;letter-spacing:.3px}
.heroProgress{display:flex;align-items:center;gap:12px;min-width:185px}
.heroProgressTrack{width:140px;height:1px;background:rgba(255,255,255,.22);overflow:hidden}
.heroProgressTrack span{display:block;width:0;height:100%;background:#e8bc65}
.heroProgressNumbers{font-size:9px;color:rgba(255,255,255,.5);letter-spacing:1px}.heroProgressNumbers b{color:#fff;margin-right:4px}
.heroCinema .heroProgress{position:absolute;z-index:12;right:28px;bottom:28px;min-width:0;margin:0;pointer-events:none}
.heroCinema .heroProgressTrack{width:135px;height:2px;border-radius:99px}
.heroCinema .heroProgressTrack span{border-radius:99px}
.heroCinema .heroProgressNumbers{white-space:nowrap;font-size:10px;line-height:1}

.heroCinemaForeground{position:absolute!important;z-index:7!important;right:2.5%!important;top:52%!important;width:min(39vw,545px)!important;height:min(39vw,545px)!important;transform:translateY(-50%)!important;pointer-events:none!important}
.heroHalo{position:absolute;inset:5%;border-radius:50%;background:radial-gradient(circle,rgba(238,190,92,.17),rgba(238,190,92,.05) 44%,transparent 70%);filter:blur(8px);animation:heroHaloPulse 5.5s ease-in-out infinite}
.heroOrb{position:absolute;border-radius:50%;border:1px solid rgba(236,193,103,.22)}
.heroOrbA{width:72%;height:72%;left:14%;top:14%;animation:heroOrbit 18s linear infinite}
.heroOrbB{width:88%;height:88%;left:6%;top:6%;border-color:rgba(255,255,255,.08);animation:heroOrbit 25s linear infinite reverse}
.heroDishFrame{position:absolute;inset:13%;border-radius:50%;padding:11px;background:linear-gradient(145deg,rgba(245,214,139,.92),rgba(93,56,13,.72) 48%,rgba(10,9,7,.96));box-shadow:0 45px 90px rgba(0,0,0,.58),inset 0 0 0 1px rgba(255,232,174,.35);transform:perspective(1200px) rotateX(9deg) rotateZ(-7deg);animation:heroDishFloat 6.5s ease-in-out infinite}
.heroDishFrame img{width:100%;height:100%;display:block;border-radius:50%;object-fit:cover;border:7px solid #14120e;filter:saturate(1.08) contrast(1.05)}
.heroDishShadow{position:absolute;z-index:-1;left:8%;right:-8%;bottom:-7%;height:25%;background:rgba(0,0,0,.66);filter:blur(25px);border-radius:50%}
.heroFloatingCard{position:absolute;right:-1%;bottom:7%;min-width:205px;padding:14px 16px;border:1px solid rgba(255,255,255,.21);border-radius:15px;background:rgba(22,19,13,.68);backdrop-filter:blur(18px);box-shadow:0 24px 60px rgba(0,0,0,.36);animation:heroCardFloat 5.2s ease-in-out infinite}
.heroFloatingCard small{display:block;color:#e8bd68;font-size:7px;letter-spacing:1.7px}.heroFloatingCard strong{display:block;font:600 19px Georgia,serif;color:#fff;margin:5px 0}.heroFloatingCard span{font-size:8px;color:rgba(255,255,255,.58)}.heroFloatingCard b{color:#e7bc67;font-size:13px;margin-left:4px}

.heroSceneLabel{position:absolute;z-index:10;right:31px;top:50%;transform:rotate(90deg) translateX(50%);transform-origin:right center;display:flex;align-items:center;gap:9px;color:rgba(255,255,255,.45);font-size:7px;letter-spacing:2.2px}.heroSceneLabel b{color:#fff;font-size:10px;letter-spacing:1px}.heroSceneLabel i{width:35px;height:1px;background:rgba(255,255,255,.22)}
.heroScrollCue{position:absolute;z-index:10;left:50%;bottom:23px;transform:translateX(-50%);border:0;background:transparent;color:rgba(255,255,255,.54);display:flex;flex-direction:column;align-items:center;gap:7px;font-size:7px;letter-spacing:2px;cursor:pointer}.heroScrollCue i{display:block;width:1px;height:28px;background:linear-gradient(#e8bd68,transparent);position:relative}.heroScrollCue i:after{content:"";position:absolute;left:-2px;bottom:6px;width:5px;height:5px;border-right:1px solid #e8bd68;border-bottom:1px solid #e8bd68;transform:rotate(45deg);animation:heroScrollDot 1.6s ease-in-out infinite}
@keyframes heroCopyIn{from{opacity:0;transform:translateY(34px);filter:blur(7px)}to{opacity:1;transform:none;filter:none}}
@keyframes heroDishFloat{0%,100%{transform:perspective(1200px) rotateX(9deg) rotateZ(-7deg) translate3d(0,0,0)}50%{transform:perspective(1200px) rotateX(7deg) rotateZ(-5deg) translate3d(6px,-12px,0)}}
@keyframes heroCardFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-8px,0)}}
@keyframes heroHaloPulse{0%,100%{transform:scale(.96);opacity:.68}50%{transform:scale(1.04);opacity:1}}
@keyframes heroOrbit{to{transform:rotate(360deg)}}
@keyframes heroLightMove{0%,100%{opacity:.16;transform:translateX(-18%) rotate(17deg)}50%{opacity:.72;transform:translateX(22%) rotate(17deg)}}
@keyframes heroLightMove2{0%,100%{opacity:.12;transform:translateX(25%) rotate(17deg)}50%{opacity:.38;transform:translateX(-15%) rotate(17deg)}}
@keyframes heroLivePulse{0%,100%{box-shadow:0 0 0 4px rgba(230,185,92,.1)}50%{box-shadow:0 0 0 7px rgba(230,185,92,.18)}}
@keyframes heroFilmGrain{0%{transform:translate(0,0)}25%{transform:translate(-2%,1%)}50%{transform:translate(1%,-2%)}75%{transform:translate(2%,2%)}100%{transform:translate(-1%,-1%)}}
@keyframes heroScrollDot{0%,100%{transform:translateY(0) rotate(45deg);opacity:.45}50%{transform:translateY(7px) rotate(45deg);opacity:1}}
@media(max-width:1050px){
 .heroCinemaContent{width:70%!important;padding-left:5vw!important}
 .heroCinemaForeground{width:min(41vw,470px)!important;height:min(41vw,470px)!important;right:-2%!important;opacity:.82}
 .heroCinemaCopy h1{font-size:clamp(46px,6.8vw,74px)}
 .heroSceneLabel{display:none}
}
@media(max-width:760px){
 .home{padding:0 12px 35px!important}
 .heroCinema{min-height:calc(100svh - 68px)!important;height:auto!important;max-height:none!important;border-radius:0 0 24px 24px!important}
 .heroCinemaSlide:after{background:linear-gradient(180deg,rgba(6,6,5,.48),rgba(6,6,5,.45) 28%,rgba(6,6,5,.7) 58%,rgba(6,6,5,.96) 100%)}
 .heroCinemaContent{width:100%!important;min-height:calc(100svh - 68px);padding:32px 20px 22px!important}
 .heroCinemaMeta{font-size:7px;letter-spacing:1.8px;max-width:100%}.heroCinemaMeta i{width:20px}
 .heroCinemaCopy{margin-top:auto;margin-bottom:25px;max-width:100%}
 .heroCinemaCopy .eyebrow{font-size:8px;letter-spacing:2px}
 .heroCinemaCopy h1{font-size:clamp(42px,12vw,60px);letter-spacing:-1.5px;margin:13px 0 17px!important}
 .heroCinemaCopy p{font-size:12px;line-height:1.65;max-width:360px}
 .heroActions{gap:8px;margin-top:18px!important}.heroCinemaCopy .primaryCTA{padding:13px 15px!important}.heroWatch{padding:10px 12px;font-size:9px}.watchIcon{width:23px;height:23px}
 .heroCinemaForeground{width:72vw!important;height:72vw!important;right:-22%!important;top:38%!important;opacity:.36!important}
 .heroFloatingCard{right:5%;bottom:16%;min-width:150px;padding:9px 11px}.heroFloatingCard strong{font-size:14px}.heroFloatingCard span{font-size:7px}
 .heroCinemaBottom{align-items:flex-start;flex-direction:column;gap:13px}.heroCinema .heroTrust{gap:7px}.heroCinema .heroTrust span{font-size:7px}.heroProgress{min-width:0}.heroProgressTrack{width:90px}
 .heroScrollCue{display:none}
}
@media(prefers-reduced-motion:reduce){
 .heroCinemaSlide,.heroCinemaImage,.heroCinemaCopy.heroTextOut{transition:none!important}
 .heroCinemaGrain,.heroCinemaLight,.heroHalo,.heroOrbA,.heroOrbB,.heroDishFrame,.heroFloatingCard,.heroLiveDot,.heroScrollCue i:after{animation:none!important}
 .heroCinemaCopy.heroTextIn{animation:none!important}
}
/* ---------- CINEMATIC HERO VIDEO / NO ROUND DISH ---------- */
.heroCinemaVideo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;opacity:0;transform:scale(1.04);filter:saturate(.92) contrast(1.06) brightness(.78);transition:opacity 1.2s ease,transform 10s cubic-bezier(.12,.72,.2,1),filter 1.2s ease;pointer-events:none;background:#090908}
.heroCinemaVideo.isConfigured{opacity:1;animation:heroVideoCamera 12s cubic-bezier(.12,.72,.2,1) both infinite alternate}
.heroCinemaVideoShade{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(4,4,3,.84) 0%,rgba(5,5,4,.60) 28%,rgba(5,5,4,.18) 66%,rgba(5,5,4,.36) 100%),linear-gradient(180deg,rgba(0,0,0,.25),transparent 32%,rgba(0,0,0,.72) 100%)}
.heroCinemaVideo.isConfigured + .heroCinemaVideoShade{background:linear-gradient(90deg,rgba(4,4,3,.88) 0%,rgba(5,5,4,.64) 30%,rgba(5,5,4,.20) 68%,rgba(5,5,4,.34) 100%),linear-gradient(180deg,rgba(0,0,0,.28),transparent 30%,rgba(0,0,0,.78) 100%)}
.heroCinemaVideo + .heroCinemaVignette{z-index:3}
.heroCinemaVideo + .heroCinemaVideoShade + .heroCinemaVignette{z-index:3}
.heroCinemaVideo + .heroCinemaVideoShade + .heroCinemaVignette + .heroCinemaGrain{z-index:4}
.heroCinemaVideo + .heroCinemaVideoShade + .heroCinemaVignette + .heroCinemaGrain + .heroCinemaLight{z-index:5}
.heroCinemaVideo + .heroCinemaVideoShade + .heroCinemaVignette + .heroCinemaGrain + .heroCinemaLight + .heroCinemaLight{z-index:5}
.heroFloatingCardStandalone{z-index:9!important;right:3%!important;bottom:15%!important;pointer-events:auto!important}
@keyframes heroVideoCamera{0%{transform:scale(1.04) translate3d(-.4%,0,0)}100%{transform:scale(1.09) translate3d(.6%,-.5%,0)}}
.heroVideoAdmin{margin-top:15px;padding:20px;border:1px solid #dfe3e6;border-radius:18px;background:linear-gradient(135deg,#fff,#fbf8f3);box-shadow:0 15px 40px #00000008}
.heroVideoAdmin h3{margin:5px 0 6px;font:600 22px Georgia,serif;color:#17191b}
.heroVideoAdmin p{margin:0;color:#687078;font-size:10px;line-height:1.65;max-width:760px}
.videoAdminGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}
.videoAdminGrid label{display:grid;gap:6px;font-size:10px;font-weight:800;color:#30353a}
.videoAdminGrid input{width:100%;box-sizing:border-box}
.videoAdminActions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}
.videoToggle{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:800;color:#252a2e}.videoToggle input{accent-color:#9a6035}
#heroVideoStatus{font-size:9px;color:#9a6035}
body[data-theme="dark"] .heroVideoAdmin{background:#191d20;border-color:#343b40}.heroVideoAdmin .note{margin-bottom:0}
@media(max-width:760px){
 .heroCinemaVideo{object-position:center center;transform:scale(1.08)}
 .heroCinemaVideo.isConfigured{animation:none;transform:scale(1.07)}
 .heroFloatingCardStandalone{right:5%!important;bottom:18%!important;min-width:150px!important}
 .videoAdminGrid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.heroCinemaVideo,.heroCinemaVideo.isConfigured{animation:none!important;transition:none!important;transform:none!important}.heroCinemaVideoShade{transition:none!important}}
.videoHero .heroSceneLabel{display:none!important}
.videoHero .heroCinemaCopy{max-width:820px}
.videoHero .heroFloatingCardStandalone{animation:heroCardFloat 6s ease-in-out infinite}
/* =========================================================
   FINAL MOBILE DAY-SPECIAL POSITION
   Desktop remains unchanged.
   ========================================================= */
@media (max-width:760px){
  .heroCinema .heroFloatingCardStandalone{
    /* Move Day Special to the upper-right corner on mobile,
       without changing its desktop placement. */
    top: 92px !important;
    right: 16px !important;
    bottom: auto !important;
    left: auto !important;
    width: min(158px, 44vw) !important;
    min-width: 0 !important;
    max-width: 158px !important;
    padding: 10px 12px !important;
    border-radius: 15px !important;
    z-index: 12 !important;
    transform: translateZ(0) !important;
  }
  .heroCinema .heroFloatingCardStandalone small{
    font-size: 6.5px !important;
    letter-spacing: 1.35px !important;
    line-height: 1.3 !important;
  }
  .heroCinema .heroFloatingCardStandalone strong{
    display: block !important;
    font-size: 14px !important;
    line-height: 1.12 !important;
    margin-top: 4px !important;
  }
  .heroCinema .heroFloatingCardStandalone span{
    display: block !important;
    font-size: 7px !important;
    line-height: 1.35 !important;
    margin-top: 5px !important;
  }
  /* Keep the cinematic hero copy clear of the top-right card. */
  .heroCinema .heroCinemaCopy{
    position:relative;
    z-index:8;
  }
}
/* Short mobile screens: keep the card safely below the navbar. */
@media (max-width:760px) and (max-height:720px){
  .heroCinema .heroFloatingCardStandalone{
    top: 82px !important;
    right: 12px !important;
    width: min(150px, 43vw) !important;
    padding: 8px 10px !important;
  }
  .heroCinema .heroFloatingCardStandalone strong{font-size:13px !important;}
}
/* =========================================================
   MOTI MAHAL — IMMERSIVE MOTION LAYER
   Inspired by premium interactive/editorial sites.
   Additive only: existing layout, content and admin controls remain intact.
   ========================================================= */
.heroCinema{
  perspective:1400px!important;
  transform-style:preserve-3d!important;
  --igloo-rx:0deg;--igloo-ry:0deg;--igloo-mx:0px;--igloo-my:0px;
  transition:box-shadow .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)!important;
  box-shadow:0 40px 110px rgba(15,18,20,.20),0 0 0 1px rgba(255,255,255,.08) inset!important;
}
.heroCinema.motion-ready:hover{box-shadow:0 48px 125px rgba(15,18,20,.27),0 0 0 1px rgba(255,255,255,.10) inset!important}
.heroCinemaBackdrop{transform-style:preserve-3d!important}
.heroCinemaBackdrop:before{
  content:"";position:absolute;inset:-12%;z-index:6;pointer-events:none;opacity:.22;
  background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
  background-size:72px 72px;
  transform:translate3d(calc(var(--igloo-mx) * -.22),calc(var(--igloo-my) * -.18),18px) rotateX(var(--igloo-rx)) rotateY(var(--igloo-ry));
  mask-image:radial-gradient(circle at 72% 45%,black 0,rgba(0,0,0,.8) 28%,transparent 70%);
  animation:iglooGridDrift 18s linear infinite;
}
.heroCinemaBackdrop:after{
  content:"";position:absolute;inset:-20%;z-index:6;pointer-events:none;
  background:radial-gradient(circle at 76% 34%,rgba(225,178,86,.20),transparent 17%),radial-gradient(circle at 83% 73%,rgba(225,178,86,.10),transparent 22%),radial-gradient(circle at 48% 12%,rgba(255,255,255,.07),transparent 20%);
  filter:blur(22px);
  transform:translate3d(calc(var(--igloo-mx) * .55),calc(var(--igloo-my) * .45),22px);
  transition:transform .25s ease-out;
}
.heroCinemaSlide .heroCinemaImage{
  transform:scale(1.085) translate3d(calc(var(--hero-mx,0px) + var(--igloo-mx) * .32),calc(var(--hero-my,0px) + var(--igloo-my) * .28),0))!important;
  will-change:transform,filter;
}
.heroCinemaSlide.isActive .heroCinemaImage{
  transform:scale(1.025) translate3d(calc(var(--hero-mx,0px) + var(--igloo-mx) * .32),calc(var(--hero-my,0px) + var(--igloo-my) * .28),0))!important;
}
.heroCinemaContent{
  transform:translate3d(calc(var(--igloo-mx) * .12),calc(var(--igloo-my) * .10),38px) rotateX(var(--igloo-rx)) rotateY(var(--igloo-ry));
  transform-style:preserve-3d;
  transition:transform .28s cubic-bezier(.2,.8,.2,1);
}
.heroCinemaMeta,.heroCinemaCopy,.heroCinemaBottom{transform:translateZ(18px)}
.heroCinemaCopy h1{text-wrap:balance!important}
.heroCinemaCopy h1 span,.heroCinemaCopy h1 em{display:inline-block;transform:translateZ(26px)}
.heroCinemaCopy h1 em{filter:drop-shadow(0 10px 25px rgba(226,180,88,.10))}
.heroCinemaMeta{transform:translateZ(30px)}
.heroCinemaBottom{transform:translateZ(22px)}
.heroFloatingCardStandalone{
  transform:translate3d(calc(var(--igloo-mx) * .52),calc(var(--igloo-my) * .42),70px)!important;
  transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease!important;
  box-shadow:0 24px 60px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.05) inset!important;
}

.heroSceneLabel{transform:translate3d(calc(var(--igloo-mx) * .18),calc(var(--igloo-my) * .15),35px)}
.heroCinema:before{
  content:"";position:absolute;inset:0;z-index:7;pointer-events:none;border-radius:inherit;
  background:linear-gradient(115deg,transparent 0 38%,rgba(255,255,255,.045) 46%,transparent 54%);
  background-size:240% 100%;mix-blend-mode:screen;animation:iglooSheen 9s cubic-bezier(.4,0,.2,1) infinite;
}
.heroCinema:after{
  content:"";position:absolute;width:38vw;height:38vw;max-width:620px;max-height:620px;right:-10%;top:4%;z-index:5;pointer-events:none;border-radius:50%;
  border:1px solid rgba(226,180,92,.13);box-shadow:0 0 90px rgba(226,180,92,.08),inset 0 0 70px rgba(226,180,92,.04);
  transform:translate3d(calc(var(--igloo-mx) * .42),calc(var(--igloo-my) * .38),20px) rotateX(var(--igloo-rx)) rotateY(var(--igloo-ry));
  animation:iglooOrbit 24s linear infinite;
}
.heroCinemaVideo.isConfigured{will-change:transform;}
.heroCinemaVideo.isConfigured{animation:heroVideoCamera 12s cubic-bezier(.12,.72,.2,1) both infinite alternate,iglooVideoDrift 18s ease-in-out infinite alternate!important}
.motion-reveal{opacity:0;transform:translate3d(0,34px,0) scale(.985);filter:blur(5px);transition:opacity .8s cubic-bezier(.22,1,.36,1) var(--motion-delay,0ms),transform .9s cubic-bezier(.22,1,.36,1) var(--motion-delay,0ms),filter .9s ease var(--motion-delay,0ms)}
.motion-reveal.is-visible{opacity:1;transform:none;filter:none}
.experienceCard,.experienceSlider,.homeJourney article,.homeCTA,.categoryCard,.menuItem,.suggested,.orderItems,.orderSummary{will-change:transform}
@media (pointer:fine) and (prefers-reduced-motion:no-preference){
 .experienceCard,.homeJourney article,.homeCTA,.categoryCard,.menuItem{transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease,border-color .45s ease!important}
 .experienceCard:hover,.homeJourney article:hover,.homeCTA:hover,.categoryCard:hover,.menuItem:hover{transform:translateY(-7px) perspective(900px) rotateX(1deg)!important;box-shadow:0 28px 60px rgba(20,24,27,.13)!important}
 .categoryCard:hover img,.menuItem:hover img{transform:scale(1.045)!important}
}
body[data-theme="dark"] .heroCinema:after{border-color:rgba(216,149,98,.15);box-shadow:0 0 110px rgba(216,149,98,.10),inset 0 0 80px rgba(216,149,98,.05)}
body[data-theme="dark"] .heroCinemaBackdrop:before{opacity:.28}
body[data-theme="dark"] .site{background:radial-gradient(circle at 70% -10%,#30383b 0,#111517 42%,#0a0d0e 100%)!important}
body:not([data-theme="dark"]) .site{background:radial-gradient(circle at 15% -10%,#fff 0,rgba(255,255,255,.7) 24%,transparent 42%),radial-gradient(circle at 90% 30%,rgba(215,171,113,.13),transparent 30%),linear-gradient(135deg,#f9fafb,#eef1f2 55%,#f8f8f7)!important}
@keyframes iglooGridDrift{0%{background-position:0 0,0 0}100%{background-position:72px 72px,-72px 72px}}
@keyframes iglooSheen{0%,55%{background-position:200% 0;opacity:0}68%{opacity:.7}82%,100%{background-position:-20% 0;opacity:0}}
@keyframes iglooOrbit{to{transform:translate3d(calc(var(--igloo-mx) * .42),calc(var(--igloo-my) * .38),20px) rotateX(var(--igloo-rx)) rotateY(var(--igloo-ry)) rotate(360deg)}}
@keyframes iglooVideoDrift{0%{filter:saturate(.92) contrast(1.06) brightness(.78)}50%{filter:saturate(1.02) contrast(1.08) brightness(.82)}100%{filter:saturate(.95) contrast(1.07) brightness(.78)}}
@media(max-width:760px){
 .heroCinema{perspective:none!important}
 .heroCinemaContent{transform:none!important}
 .heroCinema:after{width:90vw;height:90vw;right:-42%;top:3%;opacity:.55}
 .heroCinemaBackdrop:before{background-size:54px 54px;opacity:.13;animation-duration:26s}
 .heroCinemaBackdrop:after{filter:blur(28px);opacity:.7}
 .heroFloatingCardStandalone,.heroSceneLabel{transform:none!important}
 .heroCinemaVideo.isConfigured{animation:heroVideoCamera 14s ease-in-out infinite alternate!important}
 .motion-reveal{transform:translate3d(0,22px,0) scale(.99);filter:blur(3px)}
}
@media(prefers-reduced-motion:reduce){
 .heroCinema,.heroCinemaContent,.heroCinemaBackdrop:before,.heroCinemaBackdrop:after,.heroCinema:before,.heroCinema:after,.heroCinemaVideo.isConfigured,.heroFloatingCardStandalone,.motion-reveal{animation:none!important;transition:none!important;transform:none!important}
 .motion-reveal{opacity:1!important;filter:none!important}
}
/* =========================================================
   V5 — IMMERSIVE GUEST EXPERIENCE INSPIRED BY THE FOUR REFERENCES
   Customer-facing additions only: flow, live order, feedback, help.
   ========================================================= */
.guestActions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 26px}
.guestActions button{border:1px solid var(--line);background:var(--paper);border-radius:18px;padding:16px;text-align:left;display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;column-gap:12px;transition:.3s;box-shadow:0 10px 30px #00000009}
.guestActions button:hover{transform:translateY(-4px);box-shadow:0 18px 40px #0002}.guestActions span{grid-row:1/3;width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--gold2) 18%,var(--paper));color:var(--gold);font-size:18px}.guestActions b{font-size:13px}.guestActions small{color:var(--muted);font-size:9px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.orderContext{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:12px 15px;border:1px solid var(--line);background:var(--paper);border-radius:14px}.orderContext span{font-size:8px;letter-spacing:1.6px;color:var(--gold);font-weight:800}.orderContext b{font-size:12px}.orderContext small{color:var(--muted);font-size:10px;margin-left:auto}
.guestModalBg{position:fixed;inset:0;background:#090a0be0;backdrop-filter:blur(12px);z-index:500;display:grid;place-items:center;padding:20px;opacity:0;visibility:hidden;transition:.25s}.guestModalBg.open{opacity:1;visibility:visible}.guestModal{width:min(560px,100%);max-height:min(86vh,760px);overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:0 35px 100px #0008;position:relative}.guestClose{position:absolute;right:16px;top:14px;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:transparent;font-size:23px}.guestModal h2{font:600 35px/1.05 'Playfair Display',Georgia,serif;margin:8px 0 10px}.guestLead{color:var(--muted);font-size:12px;line-height:1.6}.guestModal form{display:grid;gap:11px}.guestModal input,.guestModal textarea{width:100%;border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 90%,var(--bg));color:var(--ink);border-radius:13px;padding:13px;outline:none}.guestModal textarea{min-height:110px;resize:vertical}.guestOfferActions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:14px}.guestSubmit{border:0;background:linear-gradient(135deg,#e4b44f,#a96d16);color:#fff;border-radius:13px;padding:14px 18px;font-weight:800;min-height:48px;box-shadow:0 10px 24px rgba(169,109,22,.18);transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.guestSubmit:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(169,109,22,.24)}.guestSubmit:disabled{cursor:wait;opacity:.7;transform:none}.guestSubmit.isLoading{opacity:.72}.textBtn{border:1px solid var(--line);background:var(--paper);color:var(--muted);border-radius:13px;padding:13px 17px;min-height:48px;font-weight:700;white-space:nowrap;transition:.2s ease}.textBtn:hover{background:var(--paper2);border-color:var(--gold);color:var(--ink);transform:translateY(-1px)}.ratingRow{display:flex;gap:7px;margin:14px 0}.ratingRow button{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:12px;padding:10px 12px}.ratingRow button.active,.ratingRow button:hover{background:var(--gold);border-color:var(--gold);color:#fff}.guestMsg{font-size:11px;color:var(--gold);min-height:16px}.guestPushBenefit{display:flex;align-items:center;gap:12px;padding:12px 14px;margin:8px 0;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--gold) 5%,var(--paper));}.guestPushBenefit>span:first-child{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--gold) 16%,transparent);color:var(--gold);font-weight:900}.guestPushBenefit div{flex:1}.guestPushBenefit b{display:block;font-size:12px;color:var(--ink)}.guestPushBenefit small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.guestPushBenefit>span:last-child{color:var(--gold);font-weight:900}.guestLoader,.guestEmpty{padding:22px;border:1px dashed var(--line);border-radius:15px;color:var(--muted);text-align:center}.trackCode{display:flex;justify-content:space-between;gap:10px;padding:14px;background:var(--ink);color:var(--paper);border-radius:15px;font-weight:800}.trackCode span{color:var(--gold2);font-size:10px}.trackRail{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:25px 0}.trackStep{text-align:center;color:var(--muted);font-size:8px}.trackStep i{display:block;width:16px;height:16px;border-radius:50%;border:2px solid var(--line);margin:0 auto 8px;background:var(--paper)}.trackStep.done i{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 5px color-mix(in srgb,var(--gold) 13%,transparent)}.trackStep.current b{color:var(--gold)}.trackTotal{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px}.trackTotal b{color:var(--gold)}
@media(max-width:1050px){.guestActions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.guestActions{grid-template-columns:1fr;gap:9px}.guestActions button{padding:13px}.orderContext{align-items:flex-start;flex-wrap:wrap}.orderContext small{width:100%;margin-left:0}.guestModal{padding:24px;border-radius:22px}.guestOfferActions{grid-template-columns:1fr;gap:8px}.textBtn{width:100%}.trackRail{gap:2px}.trackStep b{font-size:7px}}
@media(prefers-reduced-motion:reduce){.guestActions button{transition:none!important}.guestActions button:hover{transform:none}}
@media print{.topbar,.floatingOrder,.guestActions,.homeHero,.homeCTA,footer{display:none!important}.home{padding:0}.homeJourney{margin-top:0}}
.rewardBig{margin:22px 0;padding:28px;border:1px solid rgba(201,143,63,.35);border-radius:24px;background:linear-gradient(145deg,rgba(201,143,63,.18),rgba(255,255,255,.02));text-align:center}.rewardBig strong{display:block;font-size:56px;line-height:1}.rewardBig span{display:block;margin-top:8px;letter-spacing:.18em;text-transform:uppercase;font-size:11px;opacity:.7}

/* =========================================================
   V5 — FINAL HERO / KPI CLEANUP
   - Four highlights only: one row on desktop, 2x2 on mobile.
   - Hero remains the only visual story slider.
   - Scene label/arrows/scroll cue are intentionally removed.
   ========================================================= */
.experienceGrid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  overflow:visible!important;
  padding:0!important;
}
.experienceCard{
  min-width:0!important;
  width:auto!important;
  min-height:142px!important;
  scroll-snap-align:none!important;
}
.heroLegacyLine{
  color:#e8bd68!important;
  font-weight:800!important;
  letter-spacing:2.2px!important;
  white-space:nowrap!important;
}@media(max-width:1050px){
  .experienceGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  .experienceGrid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-flow:row!important;
    overflow:visible!important;
    gap:9px!important;
    padding:5px 0 12px!important;
    scroll-snap-type:none!important;
    touch-action:auto!important;
  }
  .experienceCard{
    flex:none!important;
    width:auto!important;
    min-width:0!important;
    min-height:132px!important;
    padding:18px!important;
    border-radius:18px!important;
    scroll-snap-align:none!important;
  }
  .experienceCard b{font-size:23px!important;margin-bottom:12px!important}
  .experienceCard strong{font-size:15px!important;line-height:1.15!important}
  .experienceCard span{font-size:10px!important;line-height:1.45!important}
  .heroLegacyLine{font-size:6.5px!important;letter-spacing:1.35px!important}
  .heroCinemaMeta{gap:7px!important;letter-spacing:1.6px!important}
  .heroCinemaMeta i{width:14px!important;flex:0 0 14px!important}
  .heroCinema{touch-action:pan-y!important}
}

/* V7 guest onboarding + persistent My Order history */
.guestProfileGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.guestProfileGrid label{display:grid;gap:6px;font-size:10px;font-weight:800;color:var(--muted);letter-spacing:.3px}.guestProfileGrid input{margin:0!important}.recentOrders{margin-top:26px;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 12px 30px rgba(25,31,35,.07)}.recentOrdersHead{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:15px}.recentOrdersHead h2{font:600 26px Georgia,serif;margin:6px 0 0;color:var(--ink)}.outlineOrderBtn,.trackOrderBtn,.reorderBtn{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:11px;padding:10px 13px;font-size:10px;font-weight:800}.outlineOrderBtn:hover,.trackOrderBtn:hover,.reorderBtn:hover{border-color:var(--gold);color:var(--goldText);background:var(--paper2)}.recentOrderList{display:grid;gap:10px}.recentOrderCard{border:1px solid var(--line);border-radius:17px;padding:14px;background:color-mix(in srgb,var(--paper) 92%,var(--bg));}.recentOrderTop{display:flex;justify-content:space-between;align-items:start;gap:12px}.recentOrderCode{display:block;font-weight:900;font-size:12px;color:var(--ink)}.recentOrderTop small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.orderStatus{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:8px;font-weight:900;white-space:nowrap;background:#efe3cb;color:#76500f}.orderStatus.new{background:#e5f2eb;color:#087440}.orderStatus.accepted,.orderStatus.preparing{background:#fff0d1;color:#8b5b0c}.orderStatus.ready{background:#e3f3ff;color:#17628d}.orderStatus.completed{background:#e5f6eb;color:#087440}.orderStatus.cancelled{background:#ffe5e5;color:#a12f2f}.recentOrderBody{display:flex;align-items:center;gap:12px;margin:13px 0}.recentOrderBody img{width:58px;height:48px;object-fit:cover;border-radius:10px}.recentOrderBody strong{display:block;font-size:11px;line-height:1.45;color:var(--ink)}.recentOrderBody small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.recentOrderActions{display:flex;justify-content:flex-end;gap:8px}.trackOrderBtn{background:var(--ink);color:var(--paper);border-color:var(--ink)}.trackOrderBtn:hover{background:var(--gold);color:#fff;border-color:var(--gold)}
@media(max-width:760px){.guestProfileGrid{grid-template-columns:1fr}.recentOrders{padding:15px;border-radius:18px}.recentOrdersHead{align-items:start}.recentOrdersHead h2{font-size:22px}.outlineOrderBtn{padding:9px 10px}.recentOrderCard{padding:12px}.recentOrderActions{justify-content:stretch}.recentOrderActions button{flex:1}.recentOrderBody img{width:52px;height:45px}}
.trackItems{display:grid;gap:7px;margin:14px 0}.trackItem{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--paper) 92%,var(--bg));font-size:10px;color:var(--muted)}.trackItem b{color:var(--ink);white-space:nowrap}

/* =========================================================
   V20 — LIVE FLICKER / LIGHT-BLINK FIX
   The production page was showing an apparent screen-light blink.
   Root cause: multiple infinite ambient animations layered over the
   hero (film grain, moving light beams, grid drift, sheen, orbit,
   live-dot pulse and video brightness drift). These are visual-only
   effects and were too aggressive on mobile/Chrome, especially while
   the browser was compositing the hero.

   Keep the premium hero, but make the ambient layer stable. The actual
   hero slide transition remains enabled and the normal controls continue
   to work.
   ========================================================= */
.heroCinemaGrain{
  animation:none!important;
  transform:none!important;
  opacity:.045!important;
}
.heroCinemaLight,
.heroLightOne,
.heroLightTwo{
  animation:none!important;
  transform:rotate(17deg)!important;
}
.heroLightOne{left:42%!important;opacity:.075!important}
.heroLightTwo{left:15%!important;opacity:.028!important}
.heroCinemaBackdrop:before{
  animation:none!important;
  transform:none!important;
  opacity:.10!important;
}
.heroCinemaBackdrop:after{
  animation:none!important;
  transform:none!important;
  transition:none!important;
}
.heroCinema:before{
  animation:none!important;
  background:none!important;
}
.heroCinema:after{
  animation:none!important;
  transform:none!important;
}
.heroLiveDot{
  animation:none!important;
  box-shadow:0 0 0 5px rgba(233,189,105,.12)!important;
}
.heroCinemaVideo.isConfigured{
  animation:heroVideoCamera 18s cubic-bezier(.12,.72,.2,1) both infinite alternate!important;
}
@media(max-width:760px){
  .heroCinemaGrain{opacity:.025!important}
  .heroCinemaBackdrop:before{opacity:.055!important}
  .heroCinemaBackdrop:after{opacity:.45!important;filter:blur(28px)!important}
  .heroCinemaLight{opacity:.018!important}
  .heroCinema:after{opacity:.22!important}
}
@media(prefers-reduced-motion:reduce){
  .heroCinemaVideo.isConfigured{animation:none!important}
}
/* V22 — customer item-level live readiness */
.trackItemReady{border-color:#cfe7d7!important;background:#f0f8f3!important}
.trackItemReady b{color:#16804a!important}


/* V29 guest reply feedback/help */
.guestReplyCard{margin:0 0 16px;padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,rgba(242,225,189,.52),rgba(255,255,255,.72));box-shadow:0 12px 28px rgba(0,0,0,.06)}
.guestReplyCard .eyebrow{margin-bottom:6px}.guestReplyCard strong{display:block;font-size:16px;margin-bottom:5px}.guestReplyCard p{margin:0;color:var(--muted);line-height:1.55}
.brandMini{display:flex;align-items:center;justify-content:center;text-decoration:none!important;color:inherit!important;cursor:pointer}

.motiOfferNotice{position:fixed;z-index:99999;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;width:min(520px,calc(100vw - 28px));padding:16px 18px;border:1px solid rgba(184,125,44,.35);border-radius:18px;background:#17191a;color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.28);display:grid;grid-template-columns:1fr auto;gap:4px 12px;transition:.28s ease}.motiOfferNotice.show{transform:translate(-50%,0);opacity:1}.motiOfferNotice b{font-size:15px}.motiOfferNotice span{font-size:13px;opacity:.82;line-height:1.45}.motiOfferNotice button{grid-row:1/3;grid-column:2;border:0;background:transparent;color:#fff;font-size:24px;cursor:pointer}

.guestReplyLinkCard{margin-top:12px;padding:13px 14px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,rgba(184,125,44,.07),rgba(255,255,255,.55));box-shadow:0 10px 24px rgba(0,0,0,.04)}.guestReplyLinkCard>div:first-child{display:grid;gap:3px}.guestReplyLinkCard strong{font-size:13px;line-height:1.4}.guestReplyLinkCard small{font-size:10px;color:var(--muted);line-height:1.45}.guestReplyLinkActions{display:grid;grid-template-columns:auto 1fr;gap:8px;margin-top:9px}.guestShareReply{padding:10px 12px;min-height:42px}.guestReplyLinkCard .textBtn{min-height:42px;padding:10px 12px}
.feedbackIdentityGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}
.feedbackIdentityGrid input{width:100%;box-sizing:border-box}
@media(max-width:620px){.feedbackIdentityGrid{grid-template-columns:1fr}}

/* V33 guest feedback/help: keep reply area visible without exposing customer link UI. */
.guestReplyCard{margin:18px 0 8px;padding:18px 20px;border:1px solid rgba(183,126,54,.25);border-radius:18px;background:linear-gradient(180deg,rgba(250,245,235,.95),rgba(255,255,255,.98));box-shadow:0 12px 32px rgba(28,24,18,.06)}
.guestReplyCard .eyebrow{display:block;margin-bottom:6px}
.guestReplyCard strong{display:block;font-size:18px;margin-bottom:6px}
.guestReplyCard p{margin:0;color:#667085;line-height:1.55}

/* V36 guest inbox / wallet polish */
.guestReplyButton{width:100%;border:1px solid var(--line);background:var(--ink);color:var(--paper);border-radius:15px;padding:14px 18px;min-height:52px;font-weight:850;letter-spacing:.01em;cursor:pointer;box-shadow:0 10px 24px rgba(0,0,0,.08);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,opacity .18s ease;margin:8px 0 12px}.guestReplyButton:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 30px rgba(0,0,0,.12);border-color:var(--gold)}.guestReplyButton.hasReply{background:linear-gradient(135deg,#16191b,#2b2f31);border-color:rgba(201,143,63,.6);color:#fff}.guestReplyButton:disabled{opacity:.65;cursor:not-allowed;box-shadow:none}.guestReplyWaiting{margin:0 0 14px;padding:16px 18px;border:1px dashed rgba(183,126,54,.35);border-radius:18px;background:linear-gradient(135deg,rgba(242,225,189,.28),rgba(255,255,255,.74))}.guestReplyWaiting .eyebrow{display:block;margin-bottom:5px}.guestReplyWaiting strong{display:block;font-size:16px;margin-bottom:5px}.guestReplyWaiting p{margin:0;color:var(--muted);line-height:1.5}.ratingSummary{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 12px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--gold) 5%,var(--paper));color:var(--muted);font-size:11px}.ratingSummary strong{color:var(--gold);font-size:20px;letter-spacing:.08em}.rewardCashRule{margin:18px 0;padding:16px 18px;border:1px solid rgba(183,126,54,.3);border-radius:18px;background:linear-gradient(135deg,rgba(246,232,207,.7),rgba(255,255,255,.95));box-shadow:0 10px 24px rgba(50,35,15,.05)}.rewardCashRule b{display:block;color:var(--ink);font-size:13px}.rewardCashRule p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.55}.recentOrderHeadActions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
@media(max-width:620px){.recentOrderHeadActions{width:100%}.recentOrderHeadActions button{flex:1}.ratingSummary{align-items:flex-start;flex-direction:column}.guestReplyButton{min-height:50px}}
.helpChatThread{display:grid;gap:9px;margin:12px 0 10px;max-height:300px;overflow:auto;padding:3px 2px}.helpChatBubble{max-width:88%;padding:11px 13px;border:1px solid var(--line);border-radius:15px;background:var(--paper2);box-shadow:0 5px 14px rgba(0,0,0,.035)}.helpChatBubble.guest{justify-self:end;background:linear-gradient(135deg,rgba(184,125,44,.08),rgba(255,255,255,.8));border-color:rgba(184,125,44,.22)}.helpChatBubble.staff{justify-self:start;background:linear-gradient(135deg,rgba(22,25,27,.05),rgba(255,255,255,.8))}.helpChatBubble span{display:block;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}.helpChatBubble p{margin:0;color:var(--ink);font-size:12px;line-height:1.5;white-space:pre-wrap}.helpChatBubble small{display:block;margin-top:6px;color:var(--muted);font-size:8px}.helpChatForm{display:grid!important;gap:8px!important}.helpChatForm textarea{min-height:74px!important}.helpChatForm .guestSubmit{min-height:44px;padding:11px 14px}

/* =========================================================
   V50.4 — MOBILE STABILITY + CONTROL POLISH
   Targeted customer-facing fixes only.
   ========================================================= */
.uiArrow{
  display:inline-flex;
  width:18px;
  height:18px;
  flex:0 0 18px;
  align-items:center;
  justify-content:center;
  vertical-align:middle;
  margin-left:7px;
  color:currentColor;
}
.uiArrow svg{
  width:15px;
  height:15px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.uiArrowExternal{
  width:28px;
  height:28px;
  flex-basis:28px;
  margin:0 0 0 10px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:10px;
  background:rgba(255,255,255,.12);
}
.uiArrowExternal svg{width:16px;height:16px}
.uiArrowRefresh{
  margin:0 6px 0 0;
  width:14px;
  height:14px;
  flex-basis:14px;
}
.floatingOrder,
.floatingOrder > *,
.orderTop,
.orderTop > *{
  -webkit-tap-highlight-color:transparent;
}
.floatingOrder > *,
.orderTop > *{pointer-events:none}
.floatingOrder,
.orderTop{cursor:pointer}
.floatingOrder .uiArrow{margin-left:8px}
.orderButtonUpdated{border-color:var(--gold2)!important}
@media (max-width:760px){
  .motion-reveal,
  .motion-reveal.is-visible{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    transition:none!important;
  }
  .heroCinemaCopy.heroTextIn{
    animation:none!important;
    opacity:1!important;
    transform:none!important;
    filter:none!important;
  }
  .heroCinemaGrain,
  .heroCinemaLight,
  .heroCinemaBackdrop:before,
  .heroCinemaBackdrop:after{
    animation:none!important;
  }
  .heroCinemaVideo.isConfigured{
    animation:none!important;
    transform:scale(1.02)!important;
  }
  .experienceCard,.homeJourney article,.homeCTA,.categoryCard,.menuItem,.suggested,.orderItems,.orderSummary{
    will-change:auto!important;
  }
  .floatingOrder{
    padding:10px 14px!important;
    min-height:58px!important;
  }
  .floatingOrder .uiArrow{
    width:30px;
    height:30px;
    flex-basis:30px;
    border:1px solid var(--line);
    border-radius:10px;
    background:var(--paper2);
    margin-left:8px;
  }
  .floatingOrder .uiArrow svg{width:16px;height:16px}
}


/* =========================================================
   V50.5 — Premium hospitality UI system
   Visual-only polish. Business logic/data flows unchanged.
   ========================================================= */
:root{
  --bg:#f4efe7;
  --paper:#fffdfa;
  --paper2:#f8f2e9;
  --ink:#17191c;
  --muted:#6e7479;
  --gold:#b7772b;
  --gold2:#e6b763;
  --goldSoft:#f3e4ca;
  --line:#e4d8c8;
  --shadow:0 18px 50px rgba(34,27,17,.08);
  --shadowLg:0 28px 90px rgba(23,25,27,.13);
}
html{scroll-behavior:smooth}
body{background:linear-gradient(180deg,#faf7f1 0,#f2ece3 100%);color:var(--ink)}
body::selection{background:rgba(205,153,74,.22)}
.site{background:
  radial-gradient(circle at 9% 3%,rgba(219,184,120,.13),transparent 24%),
  radial-gradient(circle at 90% 12%,rgba(218,194,159,.14),transparent 25%),
  linear-gradient(180deg,#faf8f3 0,#f2ece3 100%)!important}

/* Top bar */
.topbar{
  height:82px!important;
  padding:9px clamp(14px,4vw,56px)!important;
  grid-template-columns:150px 1fr 240px!important;
  background:rgba(255,253,249,.82)!important;
  border-bottom:1px solid rgba(222,211,194,.82)!important;
  box-shadow:0 8px 28px rgba(41,35,28,.04);
  backdrop-filter:blur(20px) saturate(135%);
  -webkit-backdrop-filter:blur(20px) saturate(135%);
}
.brandMini{height:60px!important;border-radius:18px!important}
.brandMini img{height:54px!important;width:74px!important}
.topbar nav{gap:8px!important}
.topbar nav button{
  padding:10px 16px!important;
  border-radius:999px!important;
  font-size:11px!important;
  letter-spacing:.1px;
  transition:background .18s ease,color .18s ease,box-shadow .18s ease;
}
.topbar nav button.active,
.topbar nav button:hover{
  background:#f2e5d0!important;
  color:#7e531b!important;
  box-shadow:inset 0 1px rgba(255,255,255,.8);
}
.headerRight{gap:9px!important}
.themeBtn,.orderTop{
  min-height:46px!important;
  border-radius:15px!important;
  padding:10px 14px!important;
  box-shadow:0 8px 22px rgba(31,28,24,.045);
}
.themeBtn{background:rgba(255,255,255,.72)!important}
.orderTop{
  min-width:128px;
  background:#181a1c!important;
  color:#fff!important;
  border-color:#181a1c!important;
  box-shadow:0 12px 28px rgba(22,24,26,.17)!important;
}
.orderTop b{background:#e6b763!important;color:#2b2114!important}

/* Hero */
.home{padding:24px clamp(12px,4vw,56px) 46px!important}
.heroCinema,
.homeHero{
  border-radius:30px!important;
  box-shadow:var(--shadowLg)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  overflow:hidden!important;
}
.heroCinema{
  min-height:min(760px,calc(100svh - 112px))!important;
  isolation:isolate;
}
.heroCinemaSlide:after{background:linear-gradient(180deg,rgba(5,6,6,.18),rgba(5,6,6,.22) 26%,rgba(5,6,6,.55) 67%,rgba(5,6,6,.86) 100%)!important}
.heroCinemaVignette{background:radial-gradient(circle at 58% 40%,transparent 0 22%,rgba(0,0,0,.08) 48%,rgba(0,0,0,.52) 100%)!important}
.heroCinemaContent{padding:clamp(26px,4vw,52px)!important;width:100%!important}
.heroCinemaMeta{letter-spacing:2.1px!important;color:rgba(255,255,255,.68)!important}
.heroCinemaCopy{max-width:770px!important;margin-bottom:clamp(30px,6vh,58px)!important}
.heroCinemaCopy h1{
  font-size:clamp(52px,6.5vw,92px)!important;
  line-height:.93!important;
  letter-spacing:-2.9px!important;
  text-wrap:balance;
}
.heroCinemaCopy p{font-size:15px!important;max-width:590px!important;color:rgba(255,255,255,.78)!important}
.heroCinemaCopy .primaryCTA{
  border-radius:16px!important;
  min-height:52px;
  padding:14px 18px!important;
  box-shadow:0 18px 35px rgba(0,0,0,.24)!important;
}
.heroCinemaCopy .primaryCTA .uiArrowExternal{margin-left:12px!important}
.heroFloatingCardStandalone{
  border-radius:22px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:rgba(248,243,235,.86)!important;
  backdrop-filter:blur(18px) saturate(115%);
  -webkit-backdrop-filter:blur(18px) saturate(115%);
  box-shadow:0 24px 65px rgba(0,0,0,.22)!important;
}
/* Trust/experience strip */
.experienceGrid{gap:12px!important}
.experienceCard{
  border-radius:20px!important;
  background:rgba(255,253,249,.86)!important;
  border:1px solid rgba(226,214,197,.95)!important;
  box-shadow:0 14px 35px rgba(39,31,21,.055)!important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.experienceCard b{color:#a86d29!important}
.experienceCard strong{font-family:'Playfair Display',Georgia,serif!important;letter-spacing:-.2px}

/* Category page */
.page{padding:42px clamp(13px,4vw,56px) 92px!important}
.pageHead{margin-bottom:28px!important}
.pageHead h1,.menuTitle h1{letter-spacing:-1.8px!important}
.categoryGrid{gap:16px!important}
.categoryCard{
  border-radius:24px!important;
  background:rgba(255,253,249,.93)!important;
  border-color:#e3d7c7!important;
  box-shadow:0 14px 35px rgba(35,29,22,.07)!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
.categoryCard:hover{
  transform:translateY(-4px)!important;
  border-color:#dbc5a7!important;
  box-shadow:0 24px 48px rgba(35,29,22,.11)!important;
}
.catImage{height:235px!important}
.catImage img{transition:transform .45s cubic-bezier(.2,.75,.25,1)!important}
.catImage>span{
  width:42px!important;height:42px!important;border-radius:14px!important;
  box-shadow:0 10px 22px rgba(0,0,0,.13)!important;
}
.catInfo{padding:17px!important}
.catInfo h2{font-size:22px!important;letter-spacing:-.35px}
.catInfo i{width:40px!important;height:40px!important;border-radius:13px!important;background:#fbf4e7!important}

/* Menu / search */
.menuHead{padding-bottom:26px!important}
.searchDish{
  width:min(360px,100%)!important;
  min-height:48px;
  border-radius:999px!important;
  background:rgba(255,255,255,.75)!important;
  border-color:#dfd2c0!important;
  box-shadow:0 8px 22px rgba(37,31,25,.045);
}
.searchDish:focus-within{border-color:#cfa56e!important;box-shadow:0 0 0 4px rgba(207,165,110,.12)!important}
.subnav{
  border-radius:20px!important;
  box-shadow:0 12px 28px rgba(28,25,21,.055)!important;
}
.subnav button{border-radius:12px!important}
.itemGrid{gap:16px!important}
.menuItem{
  border-radius:22px!important;
  border-color:#e2d5c4!important;
  box-shadow:0 14px 32px rgba(34,29,23,.058)!important;
  overflow:hidden;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
.menuItem:hover{transform:translateY(-4px)!important;box-shadow:0 22px 42px rgba(34,29,23,.10)!important;border-color:#d8c4a9!important}
.itemImage img{aspect-ratio:1.22!important}
.diet,.best{border-radius:999px!important;backdrop-filter:blur(8px)}
.itemContent{padding:15px!important}
.itemTitle{font-size:15px!important;letter-spacing:-.15px}
.itemContent p{font-size:10.5px!important;line-height:1.55!important}
.itemBottom button{border-radius:12px!important;min-height:38px;padding:8px 12px!important;box-shadow:0 8px 16px rgba(171,116,43,.14)}

/* Bottom order CTA */
.floatingOrder{
  right:28px!important;left:auto!important;bottom:24px!important;
  min-width:290px!important;min-height:66px!important;
  border-radius:22px!important;
  padding:10px 12px!important;
  gap:11px!important;
  background:rgba(22,24,26,.95)!important;
  border:1px solid rgba(239,207,149,.38)!important;
  box-shadow:0 22px 55px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(16px) saturate(115%);
  -webkit-backdrop-filter:blur(16px) saturate(115%);
}
.floatingOrder .cartIcon{
  width:46px!important;height:46px!important;border-radius:15px!important;
  background:linear-gradient(145deg,#eab96c,#c98432)!important;
  box-shadow:0 8px 18px rgba(200,134,48,.27);
}
.floatingOrderInfo small{font-size:8px!important;letter-spacing:1.8px!important;color:#d9ad63!important}
.floatingOrderInfo b{font-size:12px!important;color:#fff!important}
.floatingOrder .uiArrow{margin-left:auto!important}
.floatingOrder .uiArrowExternal,
.floatingOrder .uiArrow{
  width:38px!important;height:38px!important;flex-basis:38px!important;
  border-radius:13px!important;background:rgba(255,255,255,.09)!important;
  border:1px solid rgba(255,255,255,.14)!important;
}
.floatingOrder .uiArrow svg{stroke:#f0c47b!important}

/* Panels / modals */
.modalBg,.guestModalBg{background:rgba(18,20,21,.54)!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.itemModal,.guestModal{border-radius:28px!important;border-color:#e5d8c6!important;box-shadow:0 35px 100px rgba(16,18,19,.26)!important}
.closeModal{border-radius:50%!important;background:rgba(255,255,255,.88)!important;border:1px solid var(--line)!important}

/* Keep motion premium but stable */
@media (hover:hover) and (pointer:fine){
  .categoryCard,.menuItem,.experienceCard{will-change:auto!important}
}

/* Mobile: app-like luxury layout */
@media(max-width:760px){
  html,body{min-width:0}
  .topbar{
    height:72px!important;
    grid-template-columns:44px 1fr auto!important;
    padding:7px 12px!important;
    border-radius:0 0 18px 18px;
  }
  .mobileMenu{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;border-radius:14px!important;background:rgba(255,255,255,.8)!important;box-shadow:0 8px 18px rgba(28,25,21,.07)!important}
  .brandMini{grid-column:2;justify-self:center}
  .brandMini img{width:58px!important;height:47px!important}
  .headerRight{gap:6px!important}
  .themeBtn{width:42px!important;min-width:42px!important;padding:9px!important;border-radius:14px!important}
  .orderTop{min-width:92px!important;font-size:10px!important;border-radius:14px!important;padding:9px 10px!important}
  .topbar nav{left:12px!important;right:12px!important;top:68px!important;border-radius:18px!important;padding:7px!important;box-shadow:0 18px 35px rgba(24,22,19,.1)!important}
  .topbar nav button{padding:10px 7px!important;font-size:10px!important}

  .home{padding:12px 12px 70px!important}
  .heroCinema{
    min-height:calc(100svh - 92px)!important;
    height:auto!important;
    border-radius:25px!important;
  }
  .heroCinemaContent{min-height:calc(100svh - 92px)!important;padding:25px 20px 18px!important}
  .heroCinemaCopy{margin-bottom:22px!important}
  .heroCinemaCopy h1{font-size:clamp(43px,12.6vw,59px)!important;letter-spacing:-1.8px!important}
  .heroCinemaCopy p{font-size:12.2px!important;line-height:1.68!important}
  .heroCinemaCopy .primaryCTA{min-height:50px!important;padding:13px 15px!important;border-radius:15px!important}
  .heroFloatingCardStandalone{right:14px!important;top:78px!important;width:min(170px,45vw)!important;border-radius:18px!important}
  .heroCinemaBottom{gap:12px!important}

  .experienceGrid{gap:9px!important;padding-top:8px!important}
  .experienceCard{min-height:145px!important;padding:16px!important;border-radius:18px!important}
  .experienceCard b{font-size:20px!important}
  .experienceCard strong{font-size:14px!important}
  .experienceCard span{font-size:9.5px!important}

  .page{padding:30px 13px 92px!important}
  .pageHead{margin-bottom:20px!important}
  .pageHead h1{font-size:41px!important;line-height:.98!important}
  .categoryGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}
  .categoryCard{border-radius:20px!important}
  .catImage{height:155px!important}
  .catInfo{padding:12px!important;align-items:center!important}
  .catInfo h2{font-size:16px!important;line-height:1.1!important}
  .catInfo p{font-size:9px!important}
  .catInfo i{width:34px!important;height:34px!important;border-radius:11px!important}

  .menuHead{padding-bottom:20px!important}
  .menuTitle h1{font-size:39px!important}
  .searchDish{min-height:50px!important;margin-top:12px!important}
  .subnav{border-radius:15px!important;background:rgba(255,255,255,.72)!important;box-shadow:none!important}
  .itemGrid{gap:9px!important}
  .menuItem{border-radius:18px!important}
  .itemImage img{aspect-ratio:1.06!important}
  .itemContent{padding:10px!important}
  .itemTitle{font-size:12px!important;min-height:34px!important}
  .itemContent p{font-size:9px!important;line-height:1.46!important}
  .itemBottom{gap:5px!important}
  .itemBottom strong{font-size:12px!important}
  .itemBottom button{min-height:36px!important;padding:7px 8px!important;font-size:9px!important}

  .floatingOrder{
    left:12px!important;right:12px!important;bottom:12px!important;
    min-width:0!important;width:auto!important;min-height:60px!important;
    border-radius:19px!important;justify-content:flex-start!important;
    padding:8px 10px!important;
  }
  .floatingOrder .cartIcon{width:44px!important;height:44px!important;border-radius:14px!important}
  .floatingOrder .uiArrow{width:36px!important;height:36px!important;flex-basis:36px!important}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important}
}

/* V50.5 cart icon */
.cartIcon svg{width:22px;height:22px;display:block;fill:none;stroke:#241b10;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* =========================================================
   V50.6 — FINAL LUXURY HOSPITALITY UI
   Visual-only layer. Existing markup, data flow and interactions are kept.
   Light: warm ivory / forest / bronze. Dark: deep forest / amber / cream.
   ========================================================= */
:root{
  --lux-bg:#f4f0e8;
  --lux-bg-2:#ede7dc;
  --lux-surface:#fffdf9;
  --lux-surface-2:#f8f4ed;
  --lux-ink:#18201c;
  --lux-muted:#74766f;
  --lux-line:rgba(35,43,38,.11);
  --lux-accent:#a86f3c;
  --lux-accent-2:#d5a263;
  --lux-forest:#22392d;
  --lux-forest-2:#2d4a3a;
  --lux-shadow:0 24px 70px rgba(43,34,22,.10),0 4px 14px rgba(43,34,22,.05);
  --lux-soft-shadow:0 12px 34px rgba(39,33,24,.08),0 2px 7px rgba(39,33,24,.04);
  --lux-radius:28px;
}
html{scroll-behavior:smooth;background:var(--lux-bg);}
body{background:var(--lux-bg)!important;color:var(--lux-ink)!important;color-scheme:light;}
body[data-theme="dark"]{
  --lux-bg:#0d1410;
  --lux-bg-2:#111b16;
  --lux-surface:#15211b;
  --lux-surface-2:#19271f;
  --lux-ink:#f1eadf;
  --lux-muted:#a4aaa3;
  --lux-line:rgba(239,231,218,.11);
  --lux-accent:#d19a62;
  --lux-accent-2:#e0b47e;
  --lux-forest:#6f8f76;
  --lux-forest-2:#90ad95;
  --lux-shadow:0 28px 90px rgba(0,0,0,.42),0 5px 16px rgba(0,0,0,.22);
  --lux-soft-shadow:0 18px 45px rgba(0,0,0,.30),0 3px 12px rgba(0,0,0,.16);
  color-scheme:dark;
  background:var(--lux-bg)!important;
}
body[data-theme="dark"] .site{background:radial-gradient(circle at 50% -12%,#24342b 0,#111a15 42%,#0d1410 100%)!important;}
.site{background:radial-gradient(circle at 50% -12%,#fffdf8 0,#f5f1e9 48%,#ede6d9 100%)!important;}

/* Global surfaces */
.topbar{
  width:min(1440px,100%);margin:0 auto;height:84px!important;padding:10px clamp(18px,3vw,46px)!important;
  grid-template-columns:180px 1fr 320px!important;
  background:rgba(255,253,249,.82)!important;border:0!important;border-bottom:1px solid var(--lux-line)!important;
  box-shadow:0 8px 32px rgba(27,30,28,.045)!important;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
}
body[data-theme="dark"] .topbar{background:rgba(13,20,16,.82)!important;box-shadow:0 8px 32px rgba(0,0,0,.22)!important;}
.brandMini{height:62px!important;display:grid;place-items:center;}
.brandMini img{height:56px!important;width:74px!important;filter:drop-shadow(0 7px 12px rgba(0,0,0,.10));}
.topbar nav{gap:4px!important;}
.topbar nav button{
  min-height:42px;padding:10px 16px!important;border-radius:999px!important;color:var(--lux-muted)!important;
  font-size:12px!important;font-weight:800!important;letter-spacing:.2px;border:1px solid transparent!important;background:transparent!important;
}
.topbar nav button.active{background:var(--lux-forest)!important;color:#fff!important;box-shadow:0 8px 22px rgba(34,57,45,.18)!important;}
body[data-theme="dark"] .topbar nav button.active{background:#314a3a!important;}
.topbar nav button:hover{background:var(--lux-surface-2)!important;color:var(--lux-ink)!important;}
.headerRight{gap:8px!important;}
.themeBtn,.orderTop{
  min-height:46px;padding:10px 14px!important;border-radius:999px!important;border:1px solid var(--lux-line)!important;
  background:var(--lux-surface)!important;color:var(--lux-ink)!important;box-shadow:var(--lux-soft-shadow)!important;
}
.themeBtn{font-weight:800!important;}
.orderTop{background:var(--lux-forest)!important;color:#fff!important;border-color:transparent!important;padding-inline:16px!important;box-shadow:0 12px 28px rgba(34,57,45,.20)!important;}
.orderTop b{background:var(--lux-accent-2)!important;color:#2b2117!important;min-width:25px;height:25px;display:inline-grid;place-items:center;margin-left:7px;border-radius:999px!important;}
body[data-theme="dark"] .orderTop b{color:#172018!important;background:#ddb27d!important;}
.mobileMenu{border:1px solid var(--lux-line)!important;background:var(--lux-surface)!important;color:var(--lux-ink)!important;border-radius:15px!important;box-shadow:var(--lux-soft-shadow)!important;}

main{max-width:1480px!important;}
.home{padding:28px clamp(14px,3.5vw,46px) 80px!important;}
.page{padding:44px clamp(14px,3.5vw,46px) 86px!important;}

/* Hero */
.homeHero.heroCinema{
  min-height:700px!important;border-radius:36px!important;overflow:hidden!important;
  background:#121812!important;border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 28px 80px rgba(33,28,19,.18)!important;
}
.heroCinemaBackdrop{inset:0!important;}
.heroCinemaSlide,.heroCinemaImage{inset:0!important;}
.heroCinemaImage{background-position:center!important;background-size:cover!important;transform:scale(1.03)!important;}
.heroCinemaSlide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,14,11,.78) 0%,rgba(8,14,11,.48) 48%,rgba(8,14,11,.24) 100%),linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.50));}
.heroCinemaVignette{background:radial-gradient(circle at 48% 42%,transparent 22%,rgba(0,0,0,.08) 58%,rgba(0,0,0,.48) 100%)!important;}
.heroCinemaGrain{opacity:.045!important;}
.heroCinemaLight{opacity:.20!important;filter:blur(42px)!important;}
.heroCinemaContent{padding:60px clamp(22px,6vw,82px) 42px!important;display:flex;flex-direction:column;justify-content:space-between;}
.heroCinemaMeta{gap:10px!important;color:#f2e7d8!important;}
.heroLiveDot{width:7px!important;height:7px!important;background:var(--lux-accent-2)!important;box-shadow:0 0 0 5px rgba(213,162,99,.12)!important;}
.heroKicker{font-size:10px!important;letter-spacing:2.8px!important;color:#f2e7d8!important;}
.heroLegacyLine{color:rgba(244,237,226,.62)!important;}
.heroCinemaCopy{max-width:760px!important;}
.heroCinemaCopy h1{font-size:clamp(54px,7vw,102px)!important;line-height:.93!important;letter-spacing:-2.4px!important;text-wrap:balance;}
.heroCinemaCopy h1 em{color:#e7bd84!important;text-shadow:0 8px 25px rgba(0,0,0,.16);}
.goldDivider{margin:24px 0 18px!important;}
.goldDivider span{background:linear-gradient(90deg,var(--lux-accent-2),rgba(213,162,99,0))!important;}
.heroCinemaCopy p{max-width:590px!important;font-size:15px!important;line-height:1.8!important;color:rgba(247,241,231,.78)!important;}
.heroActions{gap:12px!important;}
.primaryCTA{
  display:inline-flex!important;align-items:center!important;justify-content:space-between!important;min-width:218px;
  border-radius:18px!important;padding:15px 16px 15px 18px!important;background:linear-gradient(135deg,#d8a260,#ad713d)!important;
  box-shadow:0 15px 34px rgba(40,26,14,.25)!important;font-size:12px!important;letter-spacing:.1px;
}
.primaryCTA:hover{transform:translateY(-2px)!important;filter:brightness(1.03);}
.heroWatch{border:1px solid rgba(255,255,255,.20)!important;background:rgba(9,15,11,.34)!important;color:#fff!important;border-radius:18px!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
.heroWatch .watchIcon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.25);font-size:9px;background:rgba(255,255,255,.08);}
.heroCinemaBottom{gap:20px!important;}
.heroTrust{gap:8px!important;margin-top:35px!important;}
.heroTrust span{padding:8px 10px;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(12,18,14,.24);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:rgba(247,240,229,.84)!important;font-size:9px!important;}
.heroProgressTrack{background:rgba(255,255,255,.18)!important;height:2px!important;}
.heroProgressTrack span{background:var(--lux-accent-2)!important;}
.heroProgressNumbers{color:#fff!important;}
.heroFloatingCardStandalone{right:26px!important;bottom:26px!important;max-width:265px!important;background:rgba(255,252,246,.94)!important;border:1px solid rgba(217,169,106,.35)!important;border-radius:20px!important;box-shadow:0 18px 42px rgba(0,0,0,.22)!important;padding:15px 17px!important;}
.heroFloatingCardStandalone small{color:var(--lux-accent)!important;letter-spacing:1.4px!important;}
.heroFloatingCardStandalone strong{font:700 21px/1.08 'Playfair Display',Georgia,serif!important;color:#19211c!important;}
.heroFloatingCardStandalone span{color:#6f706a!important;font-size:10px!important;}
body[data-theme="dark"] .heroFloatingCardStandalone{background:rgba(20,31,25,.92)!important;border-color:rgba(218,168,103,.24)!important;}
body[data-theme="dark"] .heroFloatingCardStandalone strong{color:#f2eadf!important;}
body[data-theme="dark"] .heroFloatingCardStandalone span{color:#abb2ac!important;}

/* Feature cards */
.experienceGrid{gap:14px!important;margin-top:16px!important;}
.experienceCard{
  min-height:150px!important;padding:21px!important;border-radius:22px!important;
  background:linear-gradient(145deg,var(--lux-surface),var(--lux-surface-2))!important;border:1px solid var(--lux-line)!important;
  box-shadow:var(--lux-soft-shadow)!important;position:relative;overflow:hidden;
}
.experienceCard:after{content:"";position:absolute;inset:auto -8% -45% 42%;height:90px;background:radial-gradient(circle,rgba(171,113,60,.13),transparent 66%);pointer-events:none;}
.experienceCard b{width:38px;height:38px;border-radius:13px!important;display:grid;place-items:center;background:rgba(168,111,60,.10)!important;color:var(--lux-accent)!important;font-size:20px!important;}
.experienceCard strong{font:700 18px/1.12 'Playfair Display',Georgia,serif!important;margin-top:16px!important;letter-spacing:-.2px;}
.experienceCard span{font-size:10px!important;line-height:1.6!important;color:var(--lux-muted)!important;}

/* Home journey / CTA */
.homeJourney{gap:12px!important;margin-top:34px!important;}
.homeJourney article{background:var(--lux-surface)!important;border:1px solid var(--lux-line)!important;border-radius:22px!important;padding:22px!important;box-shadow:var(--lux-soft-shadow)!important;}
.homeJourney article span{color:var(--lux-accent)!important;font-size:10px!important;font-weight:900;letter-spacing:1.6px;}
.homeJourney article h2{font:700 24px/1.08 'Playfair Display',Georgia,serif!important;color:var(--lux-ink)!important;letter-spacing:-.4px;}
.homeJourney article p{color:var(--lux-muted)!important;font-size:11px!important;line-height:1.7!important;}
.homeCTA{margin-top:18px!important;padding:24px 26px!important;border-radius:24px!important;background:linear-gradient(135deg,var(--lux-forest),#18271f)!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:var(--lux-shadow)!important;}
.homeCTA small{color:#e2b782!important;}
.homeCTA h2{font:700 30px/1.05 'Playfair Display',Georgia,serif!important;color:#fff!important;}
.homeCTA button{border-radius:16px!important;padding:12px 15px!important;background:#ead0a6!important;color:#263528!important;border:0!important;}

/* Categories */
.pageHead{margin-bottom:30px!important;}
.pageHead h1{font-size:clamp(46px,6vw,74px)!important;line-height:.94!important;letter-spacing:-1.8px!important;}
.pageHead h1 em{color:var(--lux-accent)!important;}
.pageHead p{max-width:610px;font-size:13px!important;line-height:1.7!important;color:var(--lux-muted)!important;}
.step{border-radius:999px!important;background:var(--lux-surface)!important;border-color:var(--lux-line)!important;box-shadow:var(--lux-soft-shadow)!important;padding:11px 14px!important;}
.categoryGrid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;}
.categoryCard{border-radius:24px!important;border:1px solid var(--lux-line)!important;background:var(--lux-surface)!important;box-shadow:var(--lux-soft-shadow)!important;}
.categoryCard:hover{transform:translateY(-5px)!important;box-shadow:var(--lux-shadow)!important;}
.catImage{height:235px!important;}
.catImage:after{background:linear-gradient(0deg,rgba(11,15,12,.72),transparent 58%)!important;}
.catImage img{transition:transform .5s cubic-bezier(.2,.7,.2,1)!important;}
.catImage>span{right:14px!important;top:14px!important;width:42px!important;height:42px!important;border:1px solid rgba(255,255,255,.38);box-shadow:0 10px 22px rgba(0,0,0,.12);backdrop-filter:blur(9px);}
.catInfo{padding:17px!important;}
.catInfo small{color:var(--lux-accent)!important;letter-spacing:1.8px;}
.catInfo h2{font:700 21px/1.05 'Playfair Display',Georgia,serif!important;color:var(--lux-ink)!important;}
.catInfo p{font-size:10px!important;color:var(--lux-muted)!important;}
.catInfo .uiArrowExternal{width:39px!important;height:39px!important;background:var(--lux-surface-2)!important;border-color:var(--lux-line)!important;color:var(--lux-accent)!important;}

/* Menu */
.menuHead{padding-bottom:24px!important;border-bottom:1px solid var(--lux-line)!important;}
.crumb button{font-weight:800!important;color:var(--lux-accent)!important;}
.menuTitle h1{font:700 clamp(46px,5vw,68px)/.95 'Playfair Display',Georgia,serif!important;letter-spacing:-1.2px;}
.menuTitle p{font-size:12px!important;color:var(--lux-muted)!important;}
.searchDish{width:min(340px,45vw)!important;border-radius:999px!important;background:var(--lux-surface)!important;border-color:var(--lux-line)!important;box-shadow:var(--lux-soft-shadow)!important;padding:13px 15px!important;}
.searchDish span{color:var(--lux-accent)!important;}
.menuLayout{grid-template-columns:minmax(180px,215px) minmax(0,1fr)!important;gap:24px!important;}
.subnav{border-radius:22px!important;background:var(--lux-surface)!important;border-color:var(--lux-line)!important;box-shadow:var(--lux-soft-shadow)!important;padding:10px!important;}
.subnav strong{color:var(--lux-accent)!important;letter-spacing:1.9px!important;}
.subnav button{border-radius:12px!important;padding:11px 12px!important;color:var(--lux-muted)!important;font-weight:700!important;}
.subnav button.active{background:var(--lux-forest)!important;color:#fff!important;box-shadow:0 8px 18px rgba(34,57,45,.14)!important;}
.itemToolbar{margin-bottom:13px!important;color:var(--lux-muted)!important;}
.itemGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;}
.menuItem{border-radius:22px!important;background:var(--lux-surface)!important;border-color:var(--lux-line)!important;box-shadow:var(--lux-soft-shadow)!important;}
.menuItem:hover{transform:translateY(-5px)!important;box-shadow:var(--lux-shadow)!important;}
.itemImage img{aspect-ratio:1.13!important;}
.diet,.best{top:11px!important;border-radius:999px!important;padding:6px 8px!important;letter-spacing:.5px;backdrop-filter:blur(7px);}
.diet{background:rgba(244,252,247,.94)!important;color:#2d6d4d!important;}
.best{background:rgba(234,208,166,.94)!important;color:#6f4b25!important;}
.itemContent{padding:15px!important;}
.itemTitle{font-size:15px!important;color:var(--lux-ink)!important;font-weight:900!important;}
.ingredientLine span{opacity:.82;}
.itemContent p{font-size:10px!important;line-height:1.6!important;color:var(--lux-muted)!important;}
.itemBottom strong{color:var(--lux-accent)!important;font-size:17px!important;}
.itemBottom button{min-height:38px;border-radius:999px!important;padding:8px 13px!important;background:var(--lux-forest)!important;color:#fff!important;box-shadow:0 8px 18px rgba(34,57,45,.14)!important;}
.itemBottom button b{font-size:17px!important;}
.suggested{border-top-color:var(--lux-line)!important;}
.suggestHead h2{font:700 27px/1.05 'Playfair Display',Georgia,serif!important;}
.suggestHead p{color:var(--lux-muted)!important;}

/* Order drawer */
.orderPage .orderHeader,.orderSummary,.orderItems{background:var(--lux-surface)!important;border-color:var(--lux-line)!important;box-shadow:var(--lux-soft-shadow)!important;border-radius:24px!important;}
.floatingOrder{
  border:1px solid rgba(255,255,255,.08)!important;background:rgba(19,27,23,.92)!important;box-shadow:0 20px 44px rgba(14,20,17,.26)!important;
  border-radius:20px!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
}
body[data-theme="dark"] .floatingOrder{background:rgba(18,29,23,.93)!important;}

/* Existing SVG action icon system */
.uiArrow{width:32px!important;height:32px!important;border-radius:50%!important;background:rgba(255,255,255,.10)!important;border:1px solid currentColor!important;display:inline-grid!important;place-items:center!important;color:currentColor!important;flex:0 0 auto!important;}
.uiArrow svg{width:15px!important;height:15px!important;stroke:currentColor!important;stroke-width:1.9!important;fill:none!important;}
.primaryCTA .uiArrow,.homeCTA .uiArrow{background:rgba(255,255,255,.15)!important;border-color:rgba(255,255,255,.28)!important;}
.catInfo .uiArrow,.suggestHead .uiArrow,.itemBottom .uiArrow{background:var(--lux-surface-2)!important;border-color:var(--lux-line)!important;}

/* Floating My Order — one premium pill */
.floatingOrder,
#floatOrder{border-radius:22px!important;}
#floatOrder{background:linear-gradient(135deg,var(--lux-forest),#17271f)!important;color:#fff!important;border:1px solid rgba(255,255,255,.10)!important;box-shadow:0 16px 36px rgba(25,40,31,.22)!important;}

/* Toast: quiet status, never a large black slab */
.toast{max-width:min(360px,calc(100vw - 24px))!important;border-radius:999px!important;padding:11px 15px!important;background:rgba(25,31,28,.90)!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:0 16px 34px rgba(0,0,0,.16)!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;font-size:10px!important;}

/* Dark mode surfaces */
body[data-theme="dark"] .experienceCard,
body[data-theme="dark"] .homeJourney article,
body[data-theme="dark"] .categoryCard,
body[data-theme="dark"] .menuItem,
body[data-theme="dark"] .subnav,
body[data-theme="dark"] .searchDish,
body[data-theme="dark"] .step,
body[data-theme="dark"] .themeBtn{background:linear-gradient(145deg,#18241e,#121c17)!important;border-color:var(--lux-line)!important;}
body[data-theme="dark"] .catInfo h2,
body[data-theme="dark"] .itemTitle,
body[data-theme="dark"] .menuTitle h1,
body[data-theme="dark"] .pageHead h1{color:var(--lux-ink)!important;}
body[data-theme="dark"] .subnav button{color:#adb5af!important;}
body[data-theme="dark"] .subnav button.active{background:#6f8e75!important;color:#102016!important;}
body[data-theme="dark"] .itemBottom button{background:#6f8f76!important;color:#122016!important;}
body[data-theme="dark"] .diet{background:rgba(55,91,70,.85)!important;color:#e3f1e8!important;}
body[data-theme="dark"] .best{background:rgba(225,177,118,.90)!important;color:#2d2012!important;}

/* Subtle motion only — no page flashing / bloom */
.homeHero,.experienceCard,.categoryCard,.menuItem,.homeCTA,.homeJourney article,.searchDish,.subnav,.floatingOrder{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease!important;}
.heroCinemaLight,.heroCinemaGrain{animation:none!important;}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important;}}

/* Mobile — app-like premium shell */
@media(max-width:760px){
  body{background:var(--lux-bg)!important;}
  .site{background:linear-gradient(180deg,var(--lux-bg) 0%,var(--lux-bg-2) 100%)!important;}
  .topbar{width:100%!important;height:68px!important;padding:7px 10px!important;grid-template-columns:50px 1fr auto!important;background:rgba(250,247,241,.90)!important;border-bottom:1px solid var(--lux-line)!important;}
  body[data-theme="dark"] .topbar{background:rgba(12,20,15,.90)!important;}
  .brandMini img{height:48px!important;width:56px!important;}
  .mobileMenu{width:44px!important;height:44px!important;border-radius:14px!important;font-size:0!important;}
  .mobileMenu:before{content:"";width:19px;height:13px;border-top:2px solid currentColor;border-bottom:2px solid currentColor;position:relative;}
  .mobileMenu:after{content:"";position:absolute;width:19px;height:2px;background:currentColor;border-radius:2px;}
  .headerRight{gap:6px!important;}
  .themeBtn{width:44px!important;height:44px!important;padding:0!important;display:grid!important;place-items:center!important;font-size:0!important;}
  .themeBtn:before{content:"";width:15px;height:15px;border:1.7px solid currentColor;border-radius:50%;box-shadow:5px -5px 0 -4px currentColor;}
  .themeBtn span{display:none!important;}
  .orderTop{height:44px!important;padding:0 13px!important;border-radius:999px!important;font-size:0!important;gap:7px!important;}
  .orderTop:before{content:"My Order";font-size:11px!important;font-weight:900;letter-spacing:.2px;}
  .orderTop b{font-size:10px!important;min-width:23px!important;height:23px!important;margin:0!important;}
  .home,.page{padding:12px 12px 80px!important;}
  .homeHero.heroCinema{min-height:650px!important;border-radius:30px!important;}
  .heroCinemaContent{padding:28px 22px 22px!important;}
  .heroCinemaCopy{margin-top:auto!important;padding-top:150px!important;}
  .heroCinemaCopy h1{font-size:clamp(42px,13vw,64px)!important;line-height:.92!important;letter-spacing:-1.5px!important;}
  .heroCinemaCopy p{font-size:12px!important;line-height:1.65!important;max-width:100%!important;}
  .heroActions{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;}
  .primaryCTA,.heroWatch{min-height:50px!important;width:100%!important;justify-content:space-between!important;border-radius:17px!important;}
  .heroFloatingCardStandalone{left:18px!important;right:18px!important;bottom:18px!important;max-width:none!important;}
  .heroTrust{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;margin-top:22px!important;}
  .heroTrust span{font-size:7px!important;text-align:center!important;padding:7px 6px!important;line-height:1.3!important;}
  .heroCinemaBottom{padding-top:10px!important;}
  .heroProgressNumbers{font-size:9px!important;}
  .experienceGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
  .experienceCard{min-height:160px!important;padding:17px!important;border-radius:20px!important;}
  .experienceCard strong{font-size:16px!important;margin-top:12px!important;}
  .experienceCard span{font-size:9px!important;line-height:1.5!important;}
  .homeJourney{grid-template-columns:1fr!important;}
  .homeJourney article{padding:18px!important;border-radius:20px!important;}
  .homeCTA{display:grid!important;gap:14px!important;padding:19px!important;border-radius:21px!important;}
  .homeCTA h2{font-size:25px!important;}
  .homeCTA button{width:100%!important;}
  .pageHead{display:block!important;margin-bottom:22px!important;}
  .pageHead h1{font-size:52px!important;}
  .pageHead p{font-size:12px!important;}
  .step{display:none!important;}
  .categoryGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
  .categoryCard{border-radius:20px!important;}
  .catImage{height:190px!important;}
  .catImage>span{width:36px!important;height:36px!important;}
  .catInfo{padding:13px!important;gap:7px!important;}
  .catInfo h2{font-size:18px!important;line-height:1.02!important;}
  .catInfo .uiArrow{width:34px!important;height:34px!important;}
  .menuHead{padding-bottom:18px!important;}
  .crumb{margin-bottom:15px!important;}
  .menuTitle{display:block!important;}
  .menuTitle h1{font-size:50px!important;}
  .menuTitle p{font-size:11px!important;margin-bottom:14px!important;}
  .searchDish{width:100%!important;min-height:48px!important;}
  .menuLayout{display:block!important;padding-top:15px!important;}
  .subnav{position:static!important;display:flex!important;gap:6px!important;overflow:auto!important;white-space:nowrap!important;margin-bottom:13px!important;border-radius:999px!important;padding:6px!important;}
  .subnav strong{display:none!important;}
  .subnav button{width:auto!important;flex:0 0 auto!important;border-radius:999px!important;padding:9px 12px!important;font-size:9px!important;}
  .subnav button span{display:none!important;}
  .itemToolbar{font-size:9px!important;margin-bottom:9px!important;}
  .itemGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;}
  .menuItem{border-radius:18px!important;}
  .itemImage img{aspect-ratio:1.02!important;}
  .itemContent{padding:11px!important;}
  .itemTitle{font-size:12px!important;min-height:30px!important;}
  .itemContent p{font-size:9px!important;min-height:48px!important;line-height:1.48!important;}
  .itemBottom strong{font-size:13px!important;}
  .itemBottom button{min-height:34px!important;padding:7px 10px!important;font-size:8px!important;}
  .itemBottom button b{font-size:13px!important;}
  .floatingOrder{left:12px!important;right:12px!important;bottom:12px!important;width:auto!important;}
}

/* iPhone safe-area spacing */
@supports(padding:max(0px)){
  @media(max-width:760px){
    .topbar{padding-top:max(7px,env(safe-area-inset-top))!important;}
    .floatingOrder{bottom:max(12px,calc(env(safe-area-inset-bottom) + 10px))!important;}
  }
}

/* V50.6.6 — final hero composition.
   Desktop: Day Special sits in the hero's lower-right corner.
   The single automatic 01 / 03 progress control sits independently at
   the visual center of the hero footer, so the two elements never compete. */
@media (min-width:1201px){
  .heroCinema .heroFloatingCardStandalone{
    right:28px!important;
    bottom:28px!important;
    max-width:270px!important;
  }
}
@media (min-width:761px) and (max-width:1200px){
  .heroCinema .heroFloatingCardStandalone{
    right:22px!important;
    bottom:22px!important;
    max-width:250px!important;
  }
}

.heroCinema .heroProgress{
  position:absolute!important;
  z-index:12!important;
  min-width:0!important;
  margin:0!important;
  pointer-events:none!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}

@media (min-width:761px){
  .heroCinema .heroProgress{
    left:50%!important;
    right:auto!important;
    top:auto!important;
    bottom:24px!important;
    transform:translateX(-50%)!important;
    justify-content:center!important;
    width:max-content!important;
  }
}

@media(max-width:760px){
  .heroCinema .heroProgress{
    left:50%!important;
    right:auto!important;
    top:510px!important;
    bottom:auto!important;
    transform:translateX(-50%)!important;
    gap:9px!important;
    justify-content:center!important;
    width:max-content!important;
  }
  .heroCinema .heroProgressTrack{width:92px!important;height:2px!important}
  .heroCinema .heroProgressNumbers{font-size:9px!important}
}

/* V50.6.7 — mobile header stability polish. Header-only change. */
.headerIcon{width:20px;height:20px;display:block;flex:0 0 auto}
.orderTop .headerIcon{width:18px;height:18px}
@media(max-width:760px){
  .topbar{
    height:72px!important;
    min-height:72px!important;
    padding:8px 14px!important;
    grid-template-columns:48px 1fr auto!important;
    align-items:center!important;
    gap:8px!important;
    overflow:visible!important;
  }
  .topbar .brandMini{
    left:50%!important;
    top:50%!important;
    width:54px!important;
    height:54px!important;
    transform:translate(-50%,-50%)!important;
    z-index:1005!important;
  }
  .topbar .brandMini img{width:54px!important;height:48px!important}
  .mobileMenu,
  .themeBtn{
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
    min-height:46px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:16px!important;
    border:1px solid var(--lux-line)!important;
    background:var(--lux-surface)!important;
    color:var(--lux-ink)!important;
    box-shadow:0 8px 22px rgba(24,28,25,.08)!important;
    font-size:0!important;
  }
  .mobileMenu:before,.mobileMenu:after,.themeBtn:before{display:none!important;content:none!important}
  .mobileMenu .headerIcon{width:22px!important;height:22px!important}
  .themeBtn .headerIcon{width:21px!important;height:21px!important}
  .headerRight{gap:8px!important;align-items:center!important}
  .orderTop{
    height:46px!important;
    min-height:46px!important;
    min-width:126px!important;
    padding:0 10px 0 13px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    border-radius:999px!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .orderTop .orderLabel{display:inline!important;line-height:1!important}
  .orderTop .headerIcon{width:18px!important;height:18px!important}
  .orderTop b{font-size:10px!important;min-width:24px!important;height:24px!important;margin:0!important;line-height:24px!important;text-align:center!important}
}
@media(max-width:390px){
  .topbar{padding-left:10px!important;padding-right:10px!important;grid-template-columns:46px 1fr auto!important;gap:6px!important}
  .mobileMenu,.themeBtn{width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;border-radius:15px!important}
  .orderTop{min-width:116px!important;height:44px!important;min-height:44px!important;padding-left:11px!important;padding-right:9px!important;gap:6px!important;font-size:11px!important}
  .orderTop b{min-width:23px!important;height:23px!important;line-height:23px!important}
  .topbar .brandMini{width:50px!important;height:50px!important}
  .topbar .brandMini img{width:50px!important;height:45px!important}
}
@media(prefers-reduced-motion:reduce){.topbar,.mobileMenu,.themeBtn,.orderTop{transition:none!important}}

/* =========================================================
   V50.6.8 — HEADER FINAL STABILITY / DESKTOP + MOBILE
   Header-only UI fix. No business logic or data behavior changes.
   ========================================================= */
.topbar{
  position:sticky!important;
  top:0!important;
  z-index:1100!important;
  width:100%!important;
  min-height:80px!important;
  height:80px!important;
  padding:8px clamp(18px,3.2vw,48px)!important;
  display:grid!important;
  grid-template-columns:minmax(120px,1fr) auto minmax(230px,1fr)!important;
  align-items:center!important;
  gap:18px!important;
  background:rgba(255,253,249,.94)!important;
  border:0!important;
  border-bottom:1px solid var(--lux-line)!important;
  box-shadow:0 8px 28px rgba(25,30,27,.045)!important;
  backdrop-filter:blur(18px) saturate(120%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(120%)!important;
}
body[data-theme="dark"] .topbar{
  background:rgba(13,20,16,.95)!important;
  box-shadow:0 8px 28px rgba(0,0,0,.25)!important;
}
.topbar > .brandMini{
  grid-column:1!important;
  justify-self:start!important;
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  width:auto!important;
  height:60px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  opacity:1!important;
  visibility:visible!important;
}
.topbar > .brandMini img{
  width:68px!important;
  height:54px!important;
  object-fit:contain!important;
  display:block!important;
}
.topbar > .mainNav{
  grid-column:2!important;
  justify-self:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:static!important;
  width:auto!important;
  height:auto!important;
  transform:none!important;
  padding:0!important;
  margin:0!important;
  gap:4px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.topbar > .mainNav button{
  width:auto!important;
  min-width:92px!important;
  min-height:42px!important;
  padding:10px 16px!important;
  border-radius:999px!important;
  border:0!important;
  background:transparent!important;
  color:var(--lux-muted)!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1!important;
  text-align:center!important;
}
.topbar > .mainNav button.active{
  background:var(--lux-forest)!important;
  color:#fff!important;
}
body[data-theme="dark"] .topbar > .mainNav button.active{
  background:#304938!important;
}
.topbar > .headerRight{
  grid-column:3!important;
  justify-self:end!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:9px!important;
  min-width:0!important;
}
.mobileMenu{
  display:none!important;
}
.themeBtn,
.orderTop{
  appearance:none!important;
  -webkit-appearance:none!important;
  outline:none!important;
  -webkit-tap-highlight-color:transparent!important;
  position:relative!important;
}
.themeBtn:before,
.themeBtn:after,
.orderTop:before,
.orderTop:after{
  content:none!important;
  display:none!important;
}
.themeBtn .headerIcon,
.orderTop .headerIcon{
  display:block!important;
  flex:0 0 auto!important;
  width:20px!important;
  height:20px!important;
}
.orderTop{
  min-width:128px!important;
  height:46px!important;
  min-height:46px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:0 12px 0 14px!important;
  border-radius:999px!important;
  font-size:12px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.orderTop .orderLabel{
  display:inline!important;
  line-height:1!important;
}
.orderTop b{
  display:inline-grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  min-width:25px!important;
  height:25px!important;
  margin:0!important;
  padding:0!important;
  border-radius:999px!important;
  line-height:1!important;
  font-size:10px!important;
}
.mobileMenu:focus,
.themeBtn:focus,
.orderTop:focus{outline:none!important}
.mobileMenu:focus-visible,
.themeBtn:focus-visible,
.orderTop:focus-visible{
  box-shadow:0 0 0 3px rgba(213,162,99,.28),var(--lux-soft-shadow)!important;
}

@media(max-width:760px){
  .topbar{
    position:sticky!important;
    top:0!important;
    z-index:1100!important;
    width:100%!important;
    min-height:72px!important;
    height:72px!important;
    padding:7px max(12px,env(safe-area-inset-left)) 7px max(12px,env(safe-area-inset-right))!important;
    padding-left:max(12px,env(safe-area-inset-left))!important;
    padding-right:max(12px,env(safe-area-inset-right))!important;
    grid-template-columns:46px 1fr auto!important;
    gap:8px!important;
    overflow:visible!important;
    border-radius:0 0 18px 18px!important;
  }
  .topbar > .mobileMenu{
    grid-column:1!important;
    display:grid!important;
    place-items:center!important;
    justify-self:start!important;
    align-self:center!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    min-height:46px!important;
    margin:0!important;
    padding:0!important;
    border-radius:15px!important;
    border:1px solid var(--lux-line)!important;
    background:var(--lux-surface)!important;
    color:var(--lux-ink)!important;
    box-shadow:var(--lux-soft-shadow)!important;
    font-size:0!important;
    z-index:1102!important;
  }
  .topbar > .mobileMenu .headerIcon{
    width:23px!important;
    height:23px!important;
    display:block!important;
  }
  .topbar > .brandMini{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    grid-column:auto!important;
    justify-self:auto!important;
    width:56px!important;
    height:56px!important;
    transform:translate(-50%,-50%)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:1101!important;
    pointer-events:auto!important;
  }
  .topbar > .brandMini img{
    width:56px!important;
    height:50px!important;
    object-fit:contain!important;
  }
  .topbar > .headerRight{
    grid-column:3!important;
    justify-self:end!important;
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    min-width:0!important;
    z-index:1102!important;
  }
  .themeBtn{
    width:44px!important;
    min-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:15px!important;
    font-size:0!important;
    background:var(--lux-surface)!important;
    color:var(--lux-ink)!important;
    box-shadow:var(--lux-soft-shadow)!important;
  }
  .themeBtn .headerIcon{
    width:21px!important;
    height:21px!important;
  }
  .themeBtn span{display:none!important}
  .orderTop{
    min-width:116px!important;
    width:auto!important;
    height:44px!important;
    min-height:44px!important;
    padding:0 9px 0 12px!important;
    gap:7px!important;
    border-radius:999px!important;
    font-size:11px!important;
    font-weight:900!important;
  }
  .orderTop .headerIcon{width:18px!important;height:18px!important}
  .orderTop .orderLabel{display:inline!important}
  .orderTop b{
    min-width:23px!important;
    width:23px!important;
    height:23px!important;
    font-size:10px!important;
  }
  .topbar > .mainNav{
    position:fixed!important;
    left:0!important;
    top:0!important;
    bottom:0!important;
    right:auto!important;
    width:min(82vw,320px)!important;
    height:100dvh!important;
    margin:0!important;
    padding:88px 16px 24px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:7px!important;
    background:var(--lux-surface)!important;
    border:0!important;
    border-right:1px solid var(--lux-line)!important;
    border-radius:0 22px 22px 0!important;
    box-shadow:24px 0 60px rgba(0,0,0,.22)!important;
    transform:translateX(-105%)!important;
    transition:transform .28s cubic-bezier(.22,.8,.25,1)!important;
    z-index:1200!important;
    overflow-y:auto!important;
  }
  .topbar > .mainNav.mobileOpen{transform:translateX(0)!important}
  .topbar > .mainNav button{
    flex:none!important;
    width:100%!important;
    min-width:0!important;
    min-height:48px!important;
    padding:13px 15px!important;
    border-radius:14px!important;
    font-size:14px!important;
    text-align:left!important;
    background:transparent!important;
    color:var(--lux-ink)!important;
  }
  .topbar > .mainNav button.active{
    background:color-mix(in srgb,var(--lux-forest) 12%,var(--lux-surface))!important;
    color:var(--lux-forest)!important;
  }
  body[data-theme="dark"] .topbar > .mainNav button.active{
    background:rgba(111,143,118,.16)!important;
    color:#d8e6da!important;
  }
  .topbar > .mainNav .drawerBrand{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    padding:10px 8px 20px!important;
    margin:0 0 5px!important;
    min-height:150px!important;
    border-bottom:1px solid var(--lux-line)!important;
    text-align:center!important;
  }
  .topbar > .mainNav .drawerBrand img{
    width:100px!important;
    height:108px!important;
    max-width:100px!important;
    object-fit:contain!important;
  }
  .topbar > .mainNav .drawerBrand strong{
    font:700 17px/1.15 Georgia,serif!important;
    color:var(--lux-ink)!important;
  }
  .drawerBackdrop{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    z-index:1190!important;
    background:rgba(10,14,12,.42)!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:opacity .2s ease!important;
  }
  .drawerBackdrop.open{opacity:1!important;pointer-events:auto!important}
}

@media(max-width:390px){
  .topbar{grid-template-columns:44px 1fr auto!important;gap:6px!important}
  .topbar > .mobileMenu{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
  .topbar > .brandMini{width:52px!important;height:52px!important}
  .topbar > .brandMini img{width:52px!important;height:47px!important}
  .orderTop{min-width:112px!important;height:43px!important;min-height:43px!important;font-size:10.5px!important}
  .themeBtn{width:43px!important;min-width:43px!important;height:43px!important;min-height:43px!important}
}

/* V50.6.9 — mobile header final cleanup.
   Scope: mobile header only. Prevent closed drawer bleed and give the theme toggle a premium control treatment. */
@media (max-width:760px){
  .topbar > .mainNav{
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(-110%,0,0)!important;
    will-change:transform!important;
  }
  .topbar > .mainNav.mobileOpen{
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0)!important;
  }
  .topbar > .headerRight{gap:8px!important}
  .themeBtn{
    width:64px!important;
    min-width:64px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0 10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    border-radius:999px!important;
    border:1px solid color-mix(in srgb,var(--lux-line) 88%,transparent)!important;
    background:linear-gradient(145deg,var(--lux-surface),color-mix(in srgb,var(--lux-surface) 82%,var(--lux-gold)))!important;
    color:var(--lux-ink)!important;
    box-shadow:0 8px 24px rgba(18,28,23,.10),inset 0 1px 0 rgba(255,255,255,.7)!important;
    font-size:10px!important;
    font-weight:900!important;
    letter-spacing:.2px!important;
  }
  .themeBtn .headerIcon{width:18px!important;height:18px!important;flex:0 0 auto!important}
  .themeBtn span{display:inline!important;line-height:1!important}
  body[data-theme="dark"] .themeBtn{
    background:linear-gradient(145deg,#1b2820,#132019)!important;
    color:#f0eadf!important;
    border-color:rgba(220,188,135,.28)!important;
    box-shadow:0 8px 24px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.05)!important;
  }
  .orderTop{
    min-width:116px!important;
    width:116px!important;
    height:44px!important;
    min-height:44px!important;
  }
}
@media (max-width:390px){
  .themeBtn{width:60px!important;min-width:60px!important;padding:0 8px!important;gap:6px!important;font-size:9.5px!important}
  .orderTop{min-width:112px!important;width:112px!important}
}

/* V50.6.10 — premium theme toggle
   Reference-inspired glass pill with a raised icon capsule.
   Theme-aware, compact, touch-safe, and stable on iPhone/Android. */
.themeBtn{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  width:104px!important;
  min-width:104px!important;
  height:48px!important;
  min-height:48px!important;
  padding:0 14px 0 42px!important;
  border-radius:999px!important;
  border:1px solid rgba(170,125,63,.22)!important;
  background:
    radial-gradient(circle at 22% 30%,rgba(255,255,255,.95),transparent 30%),
    linear-gradient(145deg,#fffdf8,#efe8dc)!important;
  color:#23352c!important;
  box-shadow:
    0 10px 24px rgba(35,53,44,.10),
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 -1px 0 rgba(145,111,67,.08)!important;
  overflow:visible!important;
  isolation:isolate!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease!important;
}
.themeBtn::before{
  content:""!important;
  position:absolute!important;
  left:5px!important;
  top:50%!important;
  width:38px!important;
  height:38px!important;
  transform:translateY(-50%)!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,#f8f2e8,#d7c3a3)!important;
  border:1px solid rgba(255,255,255,.95)!important;
  box-shadow:
    0 6px 14px rgba(54,44,30,.13),
    inset 0 1px 0 rgba(255,255,255,.95)!important;
  z-index:0!important;
}
.themeBtn .headerIcon{
  position:relative!important;
  z-index:2!important;
  width:19px!important;
  height:19px!important;
  flex:0 0 auto!important;
  margin-right:7px!important;
  color:#70552e!important;
}
.themeBtn span{
  position:relative!important;
  z-index:2!important;
  display:inline!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.1px!important;
  line-height:1!important;
  color:#23352c!important;
}
.themeBtn:hover{
  transform:translateY(-1px)!important;
  box-shadow:
    0 12px 28px rgba(35,53,44,.13),
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 -1px 0 rgba(145,111,67,.08)!important;
}
.themeBtn:active{transform:translateY(0)!important}
body[data-theme="dark"] .themeBtn{
  border-color:rgba(221,176,112,.24)!important;
  background:
    radial-gradient(circle at 18% 28%,rgba(116,145,121,.18),transparent 28%),
    linear-gradient(145deg,#1f3429,#14221b)!important;
  color:#f4ecdf!important;
  box-shadow:
    0 10px 26px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.06),
    inset 0 -1px 0 rgba(0,0,0,.18)!important;
}
body[data-theme="dark"] .themeBtn::before{
  background:linear-gradient(145deg,#dfb77b,#9b6d35)!important;
  border-color:rgba(255,244,222,.34)!important;
  box-shadow:
    0 7px 16px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.20)!important;
}
body[data-theme="dark"] .themeBtn .headerIcon{color:#18251d!important}
body[data-theme="dark"] .themeBtn span{color:#f4ecdf!important}
@media(max-width:760px){
  .themeBtn{
    width:88px!important;
    min-width:88px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 12px 0 38px!important;
    border-radius:999px!important;
    gap:0!important;
  }
  .themeBtn::before{
    left:4px!important;
    width:32px!important;
    height:32px!important;
  }
  .themeBtn .headerIcon{
    width:16px!important;
    height:16px!important;
    margin-right:6px!important;
  }
  .themeBtn span{
    font-size:11px!important;
  }
}
@media(max-width:390px){
  .themeBtn{
    width:82px!important;
    min-width:82px!important;
    height:42px!important;
    min-height:42px!important;
    padding-right:10px!important;
  }
}


/* V50.6.11 — restore the original premium app-style mobile drawer.
   Scope: mobile navigation drawer only. All app logic remains unchanged. */
@media (max-width:760px){
  html,body{overflow-x:hidden!important}

  /* The drawer starts flush from the left edge and uses the same
     proportional width as the reference layout. */
  .topbar > .mainNav{
    position:fixed!important;
    inset:0 auto 0 0!important;
    width:min(63vw,600px)!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-width:600px!important;
    margin:0!important;
    padding:0 28px 30px!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:8px!important;
    background:var(--lux-surface)!important;
    border:0!important;
    border-right:1px solid var(--lux-line)!important;
    border-radius:0 28px 28px 0!important;
    box-shadow:22px 0 55px rgba(18,24,20,.20)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(-106%,0,0)!important;
    transition:transform .28s cubic-bezier(.22,.8,.25,1),visibility 0s linear .28s!important;
    z-index:1200!important;
  }
  .topbar > .mainNav.mobileOpen{
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0)!important;
    transition:transform .28s cubic-bezier(.22,.8,.25,1),visibility 0s linear 0s!important;
  }

  /* Keep the hamburger above the drawer, exactly like the reference. */
  .topbar:has(.mainNav.mobileOpen) > .mobileMenu{
    position:fixed!important;
    top:max(16px,env(safe-area-inset-top))!important;
    left:max(16px,env(safe-area-inset-left))!important;
    z-index:1305!important;
  }

  /* The opened drawer owns the visual logo; hide the header logo behind it. */
  .topbar:has(.mainNav.mobileOpen) > .brandMini{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  /* Large centered brand block, vertically balanced like the old drawer. */
  .topbar > .mainNav .drawerBrand{
    display:flex!important;
    flex:0 0 auto!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:clamp(220px,29vh,360px) 0 24px!important;
    border-bottom:1px solid var(--lux-line)!important;
    text-align:center!important;
    box-sizing:border-box!important;
  }
  .topbar > .mainNav .drawerBrand img{
    display:block!important;
    width:180px!important;
    height:300px!important;
    max-width:180px!important;
    object-fit:contain!important;
    object-position:center!important;
    filter:drop-shadow(0 12px 18px rgba(25,24,20,.12))!important;
  }
  .topbar > .mainNav .drawerBrand strong{
    display:block!important;
    margin:0!important;
    font:700 19px/1.15 Georgia,serif!important;
    letter-spacing:.2px!important;
    color:var(--lux-ink)!important;
  }

  .topbar > .mainNav > button{
    flex:0 0 auto!important;
    width:100%!important;
    min-height:54px!important;
    margin:0!important;
    padding:15px 22px!important;
    border:0!important;
    border-radius:16px!important;
    text-align:left!important;
    font-size:15px!important;
    font-weight:800!important;
    line-height:1.2!important;
    color:var(--lux-ink)!important;
    background:transparent!important;
  }
  .topbar > .mainNav > button.active{
    background:color-mix(in srgb,var(--lux-forest) 10%,var(--lux-surface))!important;
    color:var(--lux-forest)!important;
  }
  body[data-theme="dark"] .topbar > .mainNav > button.active{
    background:rgba(111,143,118,.16)!important;
    color:#e0ebe2!important;
  }

  /* Backdrop stays outside the drawer and does not create any side strip. */
  .drawerBackdrop{
    position:fixed!important;
    inset:0!important;
    z-index:1190!important;
    display:block!important;
    background:rgba(10,14,12,.38)!important;
    backdrop-filter:blur(2px)!important;
    -webkit-backdrop-filter:blur(2px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .2s ease,visibility 0s linear .2s!important;
  }
  .drawerBackdrop.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transition:opacity .2s ease,visibility 0s linear 0s!important;
  }
}

@media (max-width:390px){
  .topbar > .mainNav{
    width:82vw!important;
    max-width:330px!important;
    padding-left:20px!important;
    padding-right:20px!important;
  }
  .topbar > .mainNav .drawerBrand{
    padding-top:clamp(170px,25vh,280px)!important;
  }
  .topbar > .mainNav .drawerBrand img{
    width:125px!important;
    height:190px!important;
  }
}

/* V50.6.12 — final mobile drawer + theme toggle polish.
   Scope: mobile navigation drawer and theme button only. */
@media (max-width:760px){
  /* The drawer is a true viewport overlay; it never participates in page flow. */
  body:has(.topbar > .mainNav.mobileOpen){
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }
  .topbar > .mainNav{
    left:0!important;
    right:auto!important;
    top:0!important;
    bottom:0!important;
    width:min(82vw,330px)!important;
    max-width:calc(100vw - 24px)!important;
    height:100dvh!important;
    max-height:100dvh!important;
    padding:84px 18px 24px!important;
    margin:0!important;
    box-sizing:border-box!important;
    border-radius:0 24px 24px 0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    transform:translate3d(-110%,0,0)!important;
    visibility:hidden!important;
    pointer-events:none!important;
    will-change:transform!important;
  }
  .topbar > .mainNav.mobileOpen{
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  .topbar > .mainNav .drawerBrand{
    padding:18px 0 20px!important;
    margin:0 0 4px!important;
    min-height:0!important;
  }
  .topbar > .mainNav .drawerBrand img{
    width:118px!important;
    height:132px!important;
    max-width:118px!important;
  }
  .topbar > .mainNav .drawerBrand strong{
    font-size:18px!important;
  }
  .topbar > .mainNav > button{
    min-height:50px!important;
    border-radius:15px!important;
    padding:14px 16px!important;
  }
  .drawerBackdrop{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    max-width:none!important;
    max-height:none!important;
  }

  /* Premium compact theme pill: raised circular icon + state label. */
  .themeBtn{
    position:relative!important;
    width:76px!important;
    min-width:76px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0 10px 0 33px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:0!important;
    border-radius:999px!important;
    border:1px solid rgba(171,133,81,.24)!important;
    background:linear-gradient(145deg,#fffdfa,#eee7da)!important;
    color:#27372f!important;
    box-shadow:0 8px 22px rgba(31,43,36,.10),inset 0 1px 0 rgba(255,255,255,.96)!important;
    overflow:visible!important;
  }
  .themeBtn::before{
    content:""!important;
    position:absolute!important;
    left:4px!important;
    top:50%!important;
    width:32px!important;
    height:32px!important;
    transform:translateY(-50%)!important;
    border-radius:50%!important;
    background:linear-gradient(145deg,#f3eadb,#d4b987)!important;
    border:1px solid rgba(255,255,255,.98)!important;
    box-shadow:0 5px 12px rgba(49,40,28,.14),inset 0 1px 0 rgba(255,255,255,.92)!important;
  }
  .themeBtn .headerIcon{
    position:relative!important;
    z-index:2!important;
    width:15px!important;
    height:15px!important;
    margin:0 6px 0 0!important;
    flex:0 0 auto!important;
    color:#5f482b!important;
  }
  .themeBtn.is-light .headerIcon circle,
  .themeBtn.is-light .headerIcon path{
    stroke:currentColor!important;
  }
  .themeBtn.is-dark .headerIcon path{
    fill:currentColor!important;
    stroke:none!important;
  }
  .themeBtn span{
    position:relative!important;
    z-index:2!important;
    display:inline!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:.1px!important;
    color:#27372f!important;
  }
  body[data-theme="dark"] .themeBtn{
    border-color:rgba(224,183,122,.28)!important;
    background:linear-gradient(145deg,#1d3026,#122019)!important;
    color:#f3ecdf!important;
    box-shadow:0 8px 22px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.06)!important;
  }
  body[data-theme="dark"] .themeBtn::before{
    background:linear-gradient(145deg,#e0b879,#9d7038)!important;
    border-color:rgba(255,244,224,.30)!important;
    box-shadow:0 5px 12px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.18)!important;
  }
  body[data-theme="dark"] .themeBtn .headerIcon{color:#17251d!important;}
  body[data-theme="dark"] .themeBtn span{color:#f3ecdf!important;}
}
@media (max-width:390px){
  .topbar > .mainNav{width:min(82vw,315px)!important;max-width:calc(100vw - 18px)!important;}
  .themeBtn{width:72px!important;min-width:72px!important;padding-left:30px!important;padding-right:9px!important;}
  .themeBtn .headerIcon{width:14px!important;height:14px!important;margin-right:5px!important;}
  .themeBtn span{font-size:10.5px!important;}
}

/* V50.6.13 — final mobile polish: drawer, theme toggle, day-special action, CTA width.
   Scope: mobile presentation only. No business logic or data behavior changes. */
@media (max-width:760px){
  /* 1) Mobile drawer: keep it compact, flush to the viewport and fully hidden when closed. */
  .topbar > .mainNav{
    position:fixed!important;
    left:0!important;
    top:0!important;
    bottom:0!important;
    right:auto!important;
    width:min(78vw,300px)!important;
    max-width:calc(100vw - 16px)!important;
    height:100dvh!important;
    max-height:100dvh!important;
    margin:0!important;
    box-sizing:border-box!important;
    padding:84px 18px 24px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    transform:translate3d(-115%,0,0)!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:transform .24s cubic-bezier(.22,.8,.25,1),opacity .16s ease,visibility 0s linear .24s!important;
    z-index:1200!important;
  }
  .topbar > .mainNav.mobileOpen{
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    transition:transform .24s cubic-bezier(.22,.8,.25,1),opacity .16s ease,visibility 0s linear 0s!important;
  }
  .drawerBackdrop{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    z-index:1190!important;
  }
  .drawerBackdrop.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  /* 2) Premium theme toggle: icon first, no dead space before it. */
  .themeBtn{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:86px!important;
    min-width:86px!important;
    height:42px!important;
    min-height:42px!important;
    padding:4px 10px 4px 4px!important;
    gap:0!important;
    border-radius:999px!important;
    overflow:visible!important;
    font-size:0!important;
  }
  .themeBtn::before{
    left:4px!important;
    top:4px!important;
    width:32px!important;
    height:32px!important;
    transform:none!important;
  }
  .themeBtn .headerIcon{
    position:relative!important;
    z-index:3!important;
    display:block!important;
    flex:0 0 32px!important;
    width:32px!important;
    height:32px!important;
    margin:0!important;
    padding:8px!important;
    box-sizing:border-box!important;
    color:#4b3b27!important;
  }
  .themeBtn span{
    position:relative!important;
    z-index:3!important;
    display:block!important;
    margin:0 0 0 5px!important;
    padding:0!important;
    line-height:1!important;
    font-size:11px!important;
    font-weight:900!important;
    letter-spacing:.1px!important;
    color:#26372f!important;
  }
  body[data-theme="dark"] .themeBtn .headerIcon{color:#1a241e!important;}

  /* 3) Day Special: compact mobile action; desktop remains unchanged. */
  .heroCinema .heroFloatingCardStandalone{
    left:auto!important;
    right:16px!important;
    top:auto!important;
    bottom:86px!important;
    width:min(286px,calc(100% - 32px))!important;
    max-width:286px!important;
    min-width:0!important;
    padding:13px 14px!important;
    border-radius:20px!important;
  }
  .heroCinema .heroFloatingCardStandalone span{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    width:100%!important;
    margin-top:5px!important;
    font-size:10px!important;
    line-height:1.3!important;
  }
  .heroCinema .heroFloatingCardStandalone .uiArrowExternal{
    flex:0 0 34px!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    margin:0!important;
    background:rgba(255,255,255,.50)!important;
    color:#806f57!important;
    border-color:rgba(85,78,68,.28)!important;
  }
  .heroCinema .heroFloatingCardStandalone .uiArrowExternal svg{width:15px!important;height:15px!important;}

  /* 4) Full-width final CTA: no unexplained right-side gap on phones. */
  .home{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
  }
  .homeCTA{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
    justify-self:stretch!important;
    overflow:hidden!important;
  }
}

@media (max-width:390px){
  .topbar > .mainNav{width:min(76vw,292px)!important;max-width:calc(100vw - 14px)!important;}
  .themeBtn{width:82px!important;min-width:82px!important;}
  .themeBtn span{font-size:10.5px!important;margin-left:4px!important;}
  .heroCinema .heroFloatingCardStandalone{right:12px!important;bottom:84px!important;width:min(270px,calc(100% - 24px))!important;}
}

/* V50.6.14 — desktop/general Day Special refinement. */
.heroCinema .heroFloatingCardStandalone{
  width:250px!important;
  min-width:250px!important;
  padding:16px 18px 15px!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,rgba(255,252,245,.98),rgba(240,233,222,.98))!important;
  border:1px solid rgba(183,137,73,.30)!important;
  box-shadow:0 18px 38px rgba(20,25,22,.18),inset 0 1px 0 rgba(255,255,255,.95)!important;
  color:#1e2a24!important;
}
.heroCinema .heroFloatingCardStandalone small{
  display:block!important;
  font-size:7px!important;
  line-height:1.3!important;
  letter-spacing:1.55px!important;
  color:#a57438!important;
}
.heroCinema .heroFloatingCardStandalone strong{
  display:block!important;
  margin-top:6px!important;
  font:600 18px/1.14 Georgia,serif!important;
  color:#1e2a24!important;
}
.heroCinema .heroFloatingCardStandalone .daySpecialAccent{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  width:42px!important;
  height:10px!important;
  margin-top:10px!important;
}
.heroCinema .heroFloatingCardStandalone .daySpecialAccent::before{
  content:""!important;
  width:25px!important;
  height:1px!important;
  background:#b9853e!important;
  opacity:.75!important;
}
.heroCinema .heroFloatingCardStandalone .daySpecialAccent i{
  display:block!important;
  width:6px!important;
  height:6px!important;
  border:1px solid #b9853e!important;
  transform:rotate(45deg)!important;
  background:transparent!important;
}
.heroCinema .heroFloatingCardStandalone .uiArrowExternal{display:none!important}

/* V50.6.14 — mobile header overlap + day special refinement.
   Scope: mobile drawer/header and day-special presentation only. */
@media (max-width:760px){
  /* When the drawer opens, only the menu trigger stays above it. This prevents
     the theme/order controls from visually colliding with the drawer surface. */
  .topbar:has(.mainNav.mobileOpen) > .headerRight,
  .topbar:has(.mainNav.mobileOpen) > .brandMini{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .topbar:has(.mainNav.mobileOpen) > .mobileMenu{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  /* Day Special becomes a cleaner editorial card: no arrow and no extra line. */
  .heroCinema .heroFloatingCardStandalone{
    width:min(250px,58vw)!important;
    max-width:250px!important;
    min-width:0!important;
    padding:14px 16px 15px!important;
    border-radius:20px!important;
    background:linear-gradient(145deg,rgba(255,252,245,.98),rgba(240,233,222,.98))!important;
    border:1px solid rgba(183,137,73,.30)!important;
    box-shadow:0 18px 38px rgba(20,25,22,.18),inset 0 1px 0 rgba(255,255,255,.95)!important;
    backdrop-filter:blur(12px)!important;
    -webkit-backdrop-filter:blur(12px)!important;
  }
  .heroCinema .heroFloatingCardStandalone small{
    font-size:7px!important;
    letter-spacing:1.55px!important;
    color:#a57438!important;
  }
  .heroCinema .heroFloatingCardStandalone strong{
    font:600 17px/1.14 Georgia,serif!important;
    color:#1e2a24!important;
    margin-top:6px!important;
    display:block!important;
  }
  .heroCinema .heroFloatingCardStandalone .daySpecialAccent{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    width:42px!important;
    height:10px!important;
    margin-top:10px!important;
  }
  .heroCinema .heroFloatingCardStandalone .daySpecialAccent::before{
    content:""!important;
    width:24px!important;
    height:1px!important;
    background:#b9853e!important;
    opacity:.75!important;
  }
  .heroCinema .heroFloatingCardStandalone .daySpecialAccent i{
    display:block!important;
    width:6px!important;
    height:6px!important;
    border:1px solid #b9853e!important;
    transform:rotate(45deg)!important;
    background:transparent!important;
  }
  .heroCinema .heroFloatingCardStandalone .uiArrowExternal{display:none!important}
}
@media (max-width:390px){
  .heroCinema .heroFloatingCardStandalone{
    width:min(232px,56vw)!important;
    max-width:232px!important;
    right:10px!important;
    padding:12px 14px 13px!important;
  }
  .heroCinema .heroFloatingCardStandalone strong{font-size:15px!important}
}

/* V50.6.15 — hide hero 01/03 progress UI on desktop + mobile. */
.heroCinema .heroProgress{display:none!important;}


/* V50.6.16 — mobile drawer containment fix.
   The header backdrop filter created a containing block for position:fixed,
   so the drawer could appear attached to/scaled by the header instead of the viewport.
   Keep this patch scoped to the drawer only. */
@media (max-width:760px){
  .topbar{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
  .topbar > .mainNav{
    width:min(82vw,300px)!important;
    max-width:calc(100vw - 18px)!important;
    right:auto!important;
    box-sizing:border-box!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    contain:paint!important;
    overscroll-behavior:contain!important;
  }
  .topbar > .mainNav.mobileOpen{
    transform:translate3d(0,0,0)!important;
  }
  .topbar:has(.mainNav.mobileOpen){
    overflow:visible!important;
  }
  .topbar:has(.mainNav.mobileOpen) > .mobileMenu{
    position:fixed!important;
    top:max(14px,env(safe-area-inset-top))!important;
    left:max(14px,env(safe-area-inset-left))!important;
    z-index:1305!important;
  }
}
@media (max-width:390px){
  .topbar > .mainNav{
    width:min(84vw,300px)!important;
    max-width:calc(100vw - 16px)!important;
  }
}

/* V50.6.17 — requested website-only polish.
   Theme control: icon-only on desktop and mobile.
   Day Special: restore mobile top-right placement; desktop untouched. */
.themeBtn{
  display:grid!important;
  place-items:center!important;
  width:52px!important;
  min-width:52px!important;
  height:52px!important;
  min-height:52px!important;
  padding:0!important;
  gap:0!important;
  border-radius:999px!important;
  font-size:0!important;
}
.themeBtn span{display:none!important;}
.themeBtn .headerIcon{
  width:22px!important;
  height:22px!important;
  margin:0!important;
  padding:0!important;
  flex:none!important;
}
@media(max-width:760px){
  .themeBtn{
    width:48px!important;
    min-width:48px!important;
    height:48px!important;
    min-height:48px!important;
    border-radius:50%!important;
  }
  .themeBtn .headerIcon{width:21px!important;height:21px!important;}

  /* Mobile Day Special stays at the hero's top-right, not at the bottom. */
  .heroCinema .heroFloatingCardStandalone{
    left:auto!important;
    right:14px!important;
    top:78px!important;
    bottom:auto!important;
    width:min(246px,58vw)!important;
    min-width:0!important;
    max-width:246px!important;
    padding:12px 14px 13px!important;
    border-radius:20px!important;
  }
  .heroCinema .heroFloatingCardStandalone small{font-size:7px!important;letter-spacing:1.55px!important;}
  .heroCinema .heroFloatingCardStandalone strong{font-size:17px!important;line-height:1.14!important;margin-top:6px!important;}
  .heroCinema .heroFloatingCardStandalone .daySpecialAccent{display:flex!important;margin-top:9px!important;}
}
@media(max-width:390px){
  .themeBtn{width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;}
  .themeBtn .headerIcon{width:19px!important;height:19px!important;}
  .heroCinema .heroFloatingCardStandalone{
    right:10px!important;
    top:74px!important;
    width:min(232px,60vw)!important;
    max-width:232px!important;
  }
}


/* V50.6.18 — premium circular theme toggle.
   Final override only: centered sun/moon icon, no label, no off-center padding. */
.themeBtn{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  width:54px!important;
  min-width:54px!important;
  height:54px!important;
  min-height:54px!important;
  padding:0!important;
  margin:0!important;
  gap:0!important;
  border-radius:50%!important;
  overflow:hidden!important;
  font-size:0!important;
  line-height:0!important;
  box-sizing:border-box!important;
  border:1px solid rgba(183,137,73,.28)!important;
  background:linear-gradient(145deg,#fffdf8,#eee7db)!important;
  color:#72532c!important;
  box-shadow:0 10px 24px rgba(34,42,37,.12),inset 0 1px 0 rgba(255,255,255,.98)!important;
  -webkit-tap-highlight-color:transparent!important;
}
.themeBtn::before,
.themeBtn::after{
  content:none!important;
  display:none!important;
}
.themeBtn .headerIcon{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  width:25px!important;
  height:25px!important;
  min-width:25px!important;
  min-height:25px!important;
  margin:0!important;
  padding:0!important;
  flex:0 0 25px!important;
  transform:none!important;
  color:currentColor!important;
  box-sizing:border-box!important;
}
.themeBtn .headerIcon circle,
.themeBtn .headerIcon path{
  vector-effect:non-scaling-stroke!important;
}
.themeBtn.is-light .headerIcon circle,
.themeBtn.is-light .headerIcon path{
  fill:none!important;
  stroke:currentColor!important;
}
.themeBtn.is-dark .headerIcon path{
  fill:none!important;
  stroke:currentColor!important;
}
.themeBtn span{display:none!important;}

body[data-theme="dark"] .themeBtn{
  border-color:rgba(220,177,112,.36)!important;
  background:linear-gradient(145deg,#20352b,#13221b)!important;
  color:#d9b16e!important;
  box-shadow:0 10px 24px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.06)!important;
}

@media(max-width:760px){
  .themeBtn{
    width:48px!important;
    min-width:48px!important;
    height:48px!important;
    min-height:48px!important;
  }
  .themeBtn .headerIcon{
    width:22px!important;
    height:22px!important;
    min-width:22px!important;
    min-height:22px!important;
    flex-basis:22px!important;
  }
}

@media(max-width:390px){
  .themeBtn{
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
    min-height:46px!important;
  }
  .themeBtn .headerIcon{
    width:21px!important;
    height:21px!important;
    min-width:21px!important;
    min-height:21px!important;
    flex-basis:21px!important;
  }
}


/* V50.6.19 — final premium circular theme control. Theme labels are removed from the DOM. */
html body .site .topbar .headerRight .themeBtn{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  align-items:center!important;
  justify-content:center!important;
  width:58px!important;
  height:58px!important;
  min-width:58px!important;
  min-height:58px!important;
  padding:0!important;
  margin:0!important;
  gap:0!important;
  box-sizing:border-box!important;
  border-radius:50%!important;
  overflow:hidden!important;
  font-size:0!important;
  line-height:0!important;
  border:1px solid rgba(183,137,73,.34)!important;
  background:radial-gradient(circle at 50% 42%,#fffdf9 0 54%,#f0e9de 100%)!important;
  color:#6d532f!important;
  box-shadow:0 12px 28px rgba(25,34,29,.10),inset 0 1px 0 rgba(255,255,255,.98),inset 0 -1px 0 rgba(145,111,67,.10)!important;
  -webkit-tap-highlight-color:transparent!important;
  transform:none!important;
}
html body .site .topbar .headerRight .themeBtn::before{
  content:""!important;
  position:absolute!important;
  inset:6px!important;
  border-radius:50%!important;
  border:1px solid rgba(183,137,73,.19)!important;
  background:rgba(255,255,255,.22)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82)!important;
  pointer-events:none!important;
  z-index:0!important;
}
html body .site .topbar .headerRight .themeBtn::after{content:none!important;display:none!important;}
html body .site .topbar .headerRight .themeBtn .themeGlyph{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  width:25px!important;
  height:25px!important;
  min-width:25px!important;
  min-height:25px!important;
  margin:0!important;
  padding:0!important;
  flex:0 0 25px!important;
  transform:none!important;
  color:currentColor!important;
}
html body .site .topbar .headerRight .themeBtn .themeGlyph *{vector-effect:non-scaling-stroke!important;}
html body .site .topbar .headerRight .themeBtn span{display:none!important;width:0!important;height:0!important;margin:0!important;padding:0!important;}
html body .site .topbar .headerRight .themeBtn:hover{transform:translateY(-1px)!important;}
html body .site .topbar .headerRight .themeBtn:active{transform:translateY(0)!important;}
html body[data-theme="dark"] .site .topbar .headerRight .themeBtn{
  border-color:rgba(223,182,117,.34)!important;
  background:radial-gradient(circle at 50% 42%,#23392d 0 54%,#15251d 100%)!important;
  color:#e0b678!important;
  box-shadow:0 12px 30px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.06),inset 0 -1px 0 rgba(0,0,0,.20)!important;
}
html body[data-theme="dark"] .site .topbar .headerRight .themeBtn::before{
  border-color:rgba(224,183,122,.20)!important;
  background:rgba(255,255,255,.03)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
@media(max-width:760px){
  html body .site .topbar .headerRight .themeBtn{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;
  }
  html body .site .topbar .headerRight .themeBtn::before{inset:5px!important;}
  html body .site .topbar .headerRight .themeBtn .themeGlyph{
    width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;flex-basis:22px!important;
  }
}
@media(max-width:390px){
  html body .site .topbar .headerRight .themeBtn{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;}
  html body .site .topbar .headerRight .themeBtn .themeGlyph{width:21px!important;height:21px!important;min-width:21px!important;min-height:21px!important;flex-basis:21px!important;}
}
