:root{--ink:#143745;--navy:#173d4b;--muted:#7e8889;--gold:#c7a66b;--cream:#fbfaf6;--line:#ecece6;--phone:440px;--ease:cubic-bezier(.2,.75,.25,1)}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:74px;background:#0e2834}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;background:radial-gradient(ellipse at 50% 0,#214756 0,#0e2834 65%);min-height:100svh}button,input,textarea{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{color:inherit}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button{border:0}svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}img{display:block;max-width:100%}[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.app-shell{max-width:var(--phone);margin:auto;background:var(--cream);min-height:100svh;box-shadow:0 0 80px #0002}.header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 17px;background:var(--navy);color:white}.brand{display:flex;gap:11px;align-items:center}.brand-name{display:block;font-family:Georgia,"Times New Roman",serif;font-size:29px;letter-spacing:3px;line-height:1.05}.brand-label{display:block;font-size:8px;letter-spacing:3.6px;margin-bottom:5px;color:#e5d5b8}.table-button{background:#ffffff0c;border:1px solid #ffffff20;border-radius:12px;padding:8px 12px;min-width:83px;text-align:left}.small-label{font-size:8px;letter-spacing:1.1px;color:#cbd5d7;display:block;margin-bottom:1px}.table-button>span:last-child{display:flex;align-items:center;gap:5px;font-size:16px}.table-button b{font-weight:600}.table-button svg{margin-left:9px;color:var(--gold)}
.featured{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;background:var(--navy)}.featured::-webkit-scrollbar{display:none}.feature{position:relative;flex:0 0 100%;height:280px;padding:0;color:white;text-align:left;scroll-snap-align:start;overflow:hidden;background:#1c414d}.feature>img{width:100%;height:100%;object-fit:cover;object-position:center 46%;transition:transform .5s var(--ease)}.feature:active>img{transform:scale(1.025)}.feature::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#092533ca)}.feature-text{position:absolute;left:22px;right:22px;bottom:23px;z-index:1}.eyebrow{font-size:9px;letter-spacing:1.7px;line-height:1.7;font-weight:600;color:var(--gold)}.feature .eyebrow{color:#f0dfbd;display:block;margin-bottom:4px;font-size:8px}.feature h3{font-family:Georgia,"Times New Roman",serif;font-size:30px;font-weight:400;line-height:1.12;max-width:310px}.feature-price{display:block;margin-top:8px;font-size:16px;font-weight:600}.feature-arrow{position:absolute;right:0;bottom:0;width:42px;height:42px;border:1px solid #ffffff50;border-radius:50%;display:grid;place-items:center;background:#ffffff0c;backdrop-filter:blur(6px)}.featured-pagination{display:flex;justify-content:center;gap:0;position:relative;z-index:2;height:0;top:-38px}.featured-pagination button{width:44px;height:44px;padding:0;background:transparent;display:grid;place-items:center}.featured-pagination i{width:4px;height:4px;border-radius:50%;background:#ffffff70;transition:width .25s,background .25s}.featured-pagination .active i{width:16px;border-radius:3px;background:#fff}
.menu-surface{position:relative;padding:8px 18px 116px;border-radius:23px 23px 0 0;background:var(--cream);margin-top:-1px}.welcome-line{display:flex;align-items:center;justify-content:space-between;padding:6px 0 5px;font-size:15px;font-weight:600}.icon-button{display:grid;place-items:center;width:44px;height:44px;background:transparent;color:var(--muted);border-radius:12px}.menu-tools{scroll-margin-top:12px}.search-wrap{display:flex;align-items:center;border:1px solid #e9eae5;background:white;border-radius:13px;padding:0 13px;height:49px;gap:10px;color:#9ba2a1}.search-wrap input{width:100%;min-width:0;border:0;background:none;padding:12px 0;color:var(--ink);font-size:13px;outline:0}.search-wrap input::placeholder{color:#919a99}.search-wrap input::-webkit-search-cancel-button{display:none}.search-wrap .icon-button{width:30px;height:35px;font-size:24px;margin-right:-6px}.mobile-categories{position:sticky;top:0;z-index:10;display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;margin:0 -18px;padding:15px 18px 12px;background:#fbfaf6f5;backdrop-filter:blur(12px);box-shadow:0 6px 8px #fbfaf690}.mobile-categories::-webkit-scrollbar{display:none}.mobile-categories button{flex-shrink:0;min-height:42px;padding:0 15px;border-radius:11px;background:#efefea;color:#667778;font-size:12px;font-weight:500;transition:background .18s,color .18s}.mobile-categories button.active{background:var(--navy);color:white}.menu-result-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:12px 0 22px}.menu-result-head h2{font-size:23px;letter-spacing:-.6px;line-height:1.2;font-weight:650}.menu-result-head>span{font-size:11px;white-space:nowrap;color:#8b9594}.category-section{margin-bottom:30px}.category-title{font-size:17px;font-weight:600;letter-spacing:-.3px;margin-bottom:13px;display:flex;align-items:center;gap:8px}.category-title small{font-size:10px;font-weight:400;color:#a0a7a4;padding-top:2px}.dish-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 13px}.dish{min-width:0;display:flex;flex-direction:column}.dish-photo-button{display:block;width:100%;padding:0;aspect-ratio:1.07;background:#e5e8e3;border-radius:15px;overflow:hidden}.dish-photo-button img{height:100%;width:100%;object-fit:cover;transition:transform .4s var(--ease)}.dish-photo-button:active img{transform:scale(1.035)}.dish-info{padding:10px 1px 0;flex:1;display:flex;flex-direction:column;min-width:0}.dish-title-button{background:none;padding:0;font-size:13px;font-weight:600;line-height:1.3;text-align:left;min-height:34px;display:flex;align-items:flex-start}.dish-meta{color:#919b99;font-size:11px;margin-top:4px}.dish-description{color:#7b8987;font-size:12px;line-height:1.55}.dish .dish-description{display:none}.dish-action{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:9px;min-height:44px}.price{font-size:16px;font-weight:650;letter-spacing:-.4px;white-space:nowrap}.price.unknown{font-size:11px;font-weight:500;white-space:normal;max-width:70px;line-height:1.25;color:#879390}.dish-action [data-actions-for]{flex-shrink:0}.add-button{background:var(--navy);color:white;border-radius:13px;height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:500;padding:0 12px;transition:transform .15s,background .15s}.dish .add-button[data-qty]{font-size:0;padding:0;width:44px}.dish .add-button svg{width:19px;height:19px;stroke-width:1.5}.add-button:active{transform:scale(.94)}.quantity-control{display:flex;align-items:center;justify-content:space-between;background:#e8ede8;border-radius:12px;min-height:44px;overflow:hidden}.quantity-control button{width:35px;min-height:44px;background:transparent;font-size:20px;display:grid;place-items:center}.quantity-control span{min-width:16px;text-align:center;font-size:12px;font-weight:600}.text-only .dish-photo-button{background:#e8ece7}.footer{text-align:center;padding:35px 0 0;border-top:1px solid var(--line);margin-top:40px;font-size:13px}.footer img{margin:auto auto 12px}.footer>span{font-family:Georgia,serif;font-size:19px}.footer p{font-size:11px;color:#8b9693;line-height:1.8;margin-top:12px}.footer .photo-note{font-size:9px;color:#a0a6a1;margin-top:19px}.loading,.no-results{padding:40px 8px;text-align:center}.no-results p{color:var(--muted);margin:10px 0 20px}.no-results button{background:var(--navy);color:white;padding:13px 20px;border-radius:12px}
.bottom-dock{position:fixed;z-index:25;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:var(--phone);display:flex;align-items:center;padding:11px 18px calc(11px + env(safe-area-inset-bottom));gap:10px;background:#fffffffa;border-top:1px solid #e9eae4;box-shadow:0 -9px 28px #173d4b06;backdrop-filter:blur(14px)}.dock-menu,.dock-waiter{width:62px;min-height:49px;display:flex;align-items:center;flex-direction:column;gap:4px;background:transparent;color:#8c9996;font-size:9px}.dock-menu.active{color:var(--navy)}.dock-menu svg{height:23px}.cart-button{flex:1;min-height:49px;background:var(--navy);color:white;border-radius:14px;display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 12px}.cart-icon{position:relative;display:flex}.cart-count{position:absolute;right:-7px;top:-6px;background:var(--gold);color:#173d4b;border:2px solid var(--navy);width:17px;height:17px;display:grid;place-items:center;font-size:8px;font-weight:700;border-radius:50%}.cart-label{font-size:10px;text-align:left;display:flex;flex-direction:column;line-height:1.25}.cart-label strong{font-size:14px;font-weight:600;letter-spacing:.2px;margin-top:3px}
.dialog{border:0;padding:0;width:100%;max-width:var(--phone);max-height:94svh;color:var(--ink);background:var(--cream);border-radius:26px 26px 0 0;position:fixed;inset:auto 0 0;margin:0 auto;overflow:auto;overscroll-behavior:contain;box-shadow:0 -15px 70px #0002}.dialog::backdrop{background:#092a38a1;backdrop-filter:blur(5px)}.dialog[open]{animation:sheet-in .25s var(--ease)}body.dialog-open{overflow:hidden}.sheet-header{display:flex;align-items:center;justify-content:space-between;padding:27px 23px 21px}.sheet-header h2{font-size:27px;letter-spacing:-.8px;font-weight:600}.close-button{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;line-height:1;font-size:27px;background:#edf0e9;color:var(--ink);font-weight:300}.dish-dialog .close-button{position:absolute;right:18px;top:18px;z-index:2;background:#fffffff2;box-shadow:0 3px 16px #18354212}.detail-image{width:100%;height:310px;object-fit:cover}.detail-body{position:relative;padding:27px 25px calc(27px + env(safe-area-inset-bottom));margin-top:-24px;border-radius:25px 25px 0 0;background:var(--cream)}.detail-body h2{font-family:Georgia,"Times New Roman",serif;font-size:32px;font-weight:400;line-height:1.08;margin-top:8px;letter-spacing:-.8px}.detail-body .dish-meta{font-size:12px;margin-top:10px}.detail-description{font-size:14px;line-height:1.7;margin-top:20px;color:#667b7b}.detail-note{font-size:10px;line-height:1.6;padding:15px 0 21px;color:#9aa5a1}.detail-bottom{border-top:1px solid var(--line);padding-top:21px;display:flex;align-items:center;justify-content:space-between;gap:18px}.detail-bottom .price{font-size:23px}.detail-bottom .price.unknown{font-size:14px;max-width:110px}.detail-controls .add-button{min-width:155px;height:51px;font-size:14px;border-radius:14px}.detail-controls .quantity-control{min-width:150px;height:51px}.detail-controls .quantity-control button{min-width:49px;height:51px}.detail-controls .quantity-control span{font-size:16px}.cart-dialog{padding-bottom:calc(22px + env(safe-area-inset-bottom))}#cart-content{padding:0 23px}.cart-row{display:flex;gap:13px;padding:18px 0;border-top:1px solid var(--line)}.cart-row>img{width:82px;height:95px;object-fit:cover;border-radius:12px}.cart-row-main{flex:1;min-width:0}.cart-row-name{font-size:14px;font-weight:600;line-height:1.3}.cart-row-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:8px;gap:10px}.cart-row-bottom strong{font-size:14px;white-space:nowrap}.cart-row .quantity-control{min-width:108px}.cart-comment{margin-top:15px}.cart-comment label,.table-form label{font-size:12px;font-weight:600;display:block;margin-bottom:9px}.cart-comment textarea{display:block;width:100%;border:1px solid #e4e7df;background:white;resize:vertical;min-height:82px;border-radius:13px;padding:13px;color:var(--ink);font-size:13px}.cart-comment textarea::placeholder{color:#a1aaa6}.cart-summary{display:flex;justify-content:space-between;align-items:center;padding:23px 0 20px;margin-top:8px}.cart-summary>span{font-size:13px;color:#84928e}.cart-summary strong{font-size:24px;letter-spacing:-.7px}.primary-button{min-height:51px;border-radius:14px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:center;gap:13px;padding:14px 18px;font-size:14px;font-weight:500;width:100%}.primary-button:active{background:#225565}.secondary-button{min-height:44px;padding:12px;background:transparent;width:100%;font-size:12px;color:#82948c;margin-top:8px}.demo-note{color:#a0aaa3;font-size:10px;text-align:center;margin-top:13px;line-height:1.6}.empty-cart{text-align:center;padding:40px 0 44px}.empty-cart svg{color:var(--gold);margin-bottom:15px}.empty-cart h3{font-family:Georgia,serif;font-size:24px;font-weight:400;line-height:1.25}.empty-cart p{font-size:13px;color:#899990;margin-top:12px;line-height:1.7}.utility-dialog{padding:25px 25px calc(25px + env(safe-area-inset-bottom))}.utility-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.utility-symbol{width:64px;height:64px;border-radius:19px;background:#e8eee6;display:grid;place-items:center;color:var(--navy)}.success-icon{background:#e4eee2;color:#527a57}.utility-dialog h2{font-family:Georgia,serif;font-weight:400;font-size:31px;line-height:1.13;letter-spacing:-.6px;margin-top:8px}.utility-copy{font-size:13px;line-height:1.75;color:#7c9188;margin:16px 0 22px}.waiter-options{display:grid;gap:9px;margin-bottom:22px}.waiter-option{display:flex;align-items:center;gap:10px;background:white;border:1px solid var(--line);border-radius:12px;min-height:51px;padding:12px;font-size:13px}.waiter-option:has(:checked){border-color:#9aada7;background:#edf1e9}.waiter-option input{accent-color:var(--navy);width:17px;height:17px;margin:0}.table-form input{width:100%;border:1px solid #e0e5dc;background:white;border-radius:12px;min-height:49px;padding:12px;margin-bottom:20px}.order-receipt{padding:17px;border:1px solid var(--line);background:white;border-radius:13px;margin-bottom:23px}.receipt-row{display:flex;justify-content:space-between;gap:15px;margin-bottom:12px;font-size:12px}.receipt-row strong{white-space:nowrap}.receipt-total{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px;margin-top:14px;font-size:16px}.order-receipt .dish-description{margin-top:15px}#toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%,8px);width:max-content;max-width:min(370px,calc(100% - 36px));padding:12px 17px;border-radius:13px;background:#143745ed;color:white;font-size:12px;z-index:80;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;box-shadow:0 6px 25px #14374520}#toast.visible{opacity:1;transform:translate(-50%,0)}
@keyframes sheet-in{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
/* Six physical depth planes, with common vanishing point and foreground atmosphere. */
.welcome-motion{display:none;position:fixed;inset:0;max-width:var(--phone);margin:auto;z-index:100;pointer-events:none;overflow:hidden;isolation:isolate;contain:strict}
.intro-play .welcome-motion{display:block}.cinema-backdrop{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 43%,#315762 0,#0e2e3a 46%,#06151e 100%)}
.cinema-space{position:absolute;inset:0;perspective:900px;perspective-origin:50% 42%;transform-style:preserve-3d}
.cinema-portal{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;transform-origin:50% 42%;will-change:transform,opacity;pointer-events:none}
.cinema-portal-far{transform:scale(.68);opacity:.48;filter:brightness(.65)}.cinema-portal-mid{transform:scale(.82);opacity:.65;filter:brightness(.85)}
.cinema-depth{position:absolute;inset:0;transform-origin:50% 42%;transform-style:preserve-3d}
.cinema-doors{position:absolute;inset:0;transform-style:preserve-3d;transform-origin:50% 42%}
.cinema-door{position:absolute;top:0;bottom:0;width:50.15%;background:#153c48 url('assets/intro/door.svg') center/100% 100%;backface-visibility:hidden;will-change:transform;box-shadow:inset 0 0 25px #010d1466}
.cinema-door-left{left:0;transform-origin:0 50%;border-right:1px solid #d0b479}.cinema-door-right{right:0;transform-origin:100% 50%;border-left:1px solid #d0b479}
.cinema-door-right .door-relief{transform:scaleX(-1)}.door-relief{position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,#e7c89515 38%,transparent 54%);border:1px solid #cdb0780a}
.cinema-portal-front{transform:translateZ(28px)}
.cinema-brand{position:absolute;left:0;right:0;top:42%;display:flex;align-items:center;flex-direction:column;transform:translateY(-50%) translateZ(75px);color:#f0dbaf;will-change:transform,opacity;text-shadow:0 2px 0 #040f16,0 6px 15px #041b24}
.cinema-medallion{position:relative;width:138px;height:138px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 32% 22%,#44646a,#123b47 45%,#08212c 74%);box-shadow:0 14px 24px #020e17aa,inset 0 2px 2px #ffffdc22,inset 0 -3px 5px #010e16;overflow:hidden}
.medallion-rim{position:absolute;inset:3px;border-radius:50%;border:1px solid #b39a65;box-shadow:0 1px 0 #eee0b777,0 0 0 2px #051d27,inset 0 0 0 3px #081f2a,inset 0 0 0 4px #b198634d}
.cinema-emblem,.cinema-emblem-relief{position:absolute;width:100px;height:100px;top:17px;left:19px}.cinema-emblem{filter:drop-shadow(0 1px 0 #e3c997) drop-shadow(0 3px 1px #071823)}.cinema-emblem-relief{transform:translate(1px,3px);filter:brightness(.25)}
.medallion-glint{position:absolute;inset:-40%;background:linear-gradient(115deg,transparent 39%,#fff7dbb0 48%,#ffebb84d 51%,transparent 61%);mix-blend-mode:screen;transform:translateX(-100%)}
.cinema-label{font-size:8px;letter-spacing:2px;color:#e2c997;margin-top:20px}.cinema-word{font-family:Georgia,'Times New Roman',serif;font-size:43px;line-height:1.2;letter-spacing:7px;padding-left:7px;margin-top:7px}.cinema-hairline{width:38px;height:1px;margin-top:16px;background:linear-gradient(90deg,transparent,#c9b180,transparent)}
.cinema-door-seam{position:absolute;left:calc(50% - 1px);top:0;width:2px;height:100%;background:linear-gradient(transparent 12%,#ffe5a7 42%,#f7bd58 62%,transparent 93%);opacity:0;box-shadow:0 0 14px 4px #efcb7160;mix-blend-mode:screen;will-change:transform,opacity}
.cinema-light{position:absolute;inset:-15%;background:conic-gradient(from 160deg at 50% 36%,transparent 0deg,#f1c26c25 22deg,transparent 45deg);mix-blend-mode:screen;transform-origin:50% 42%;opacity:.6;pointer-events:none}
.cinema-atmosphere{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;will-change:opacity;transform:translateZ(0)}
.cinema-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 40%,transparent 20%,#03121c35 65%,#020b135e 100%);pointer-events:none}
.motion-bridge{position:fixed;object-fit:cover;z-index:6;pointer-events:none;max-width:none;will-change:transform}.dish-dialog.bridge-active{animation:none;background:transparent;overflow:visible;box-shadow:none}.dish-dialog.bridge-active .detail-image{visibility:hidden}.dish-dialog.bridge-active .close-button{z-index:8}.dish-dialog.bridge-active .detail-body{border-radius:25px 25px 0 0}
@media(min-width:600px){.app-shell{border-left:1px solid #ffffff0d;border-right:1px solid #ffffff0d}.header{padding-top:22px}.bottom-dock{border-left:1px solid #ffffff0d;border-right:1px solid #ffffff0d}.dialog{max-height:min(850px,94svh)}.feature:hover>img,.dish-photo-button:hover img{transform:scale(1.035)}}
@media(max-width:359px){.header{padding-left:17px;padding-right:17px}.brand-name{font-size:26px}.brand{gap:8px}.brand img{width:46px;height:46px}.menu-surface{padding-left:13px;padding-right:13px}.mobile-categories{margin:0 -13px;padding-left:13px;padding-right:13px}.dish-grid{gap:20px 11px}.price{font-size:14px}.quantity-control button{width:30px}.quantity-control span{min-width:14px}.bottom-dock{padding-left:12px;padding-right:12px;gap:5px}.dock-menu,.dock-waiter{width:55px}.detail-body{padding-left:20px;padding-right:20px}.detail-controls .add-button{min-width:136px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.welcome-motion{display:none!important}}

.category-picker{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.category-picker button{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:61px;border-bottom:1px solid var(--line);padding:10px 0;text-align:left;background:transparent;font-size:12px}.category-picker button.active{font-weight:650;color:#173d4b}.category-picker small{color:#a0aaa3;font-size:10px}.category-picker button:first-child{grid-column:1/-1;min-height:53px}

.search-wrap input,.cart-comment textarea,.table-form input{font-size:16px}.dish-action{flex-wrap:wrap}.quantity-control button{width:44px;min-width:44px}.quantity-control span{min-width:20px}.category-picker button{color:#617a75}.category-picker button.active{color:var(--ink)}
:root{--muted:#596d6d}.dish-meta,.price.unknown,.demo-note,.detail-note,.footer p,.footer .photo-note,.category-title small,.category-picker small,.cart-summary>span,.secondary-button,.empty-cart p,.utility-copy,.category-picker button{color:#596d6d}.category-picker button.active{color:var(--ink)}.mobile-categories button{min-height:44px}.mobile-categories button:not(.active){color:#596d6d}.search-wrap input::placeholder,.cart-comment textarea::placeholder{color:#687777}.dock-menu,.dock-waiter{color:#596d6d;font-size:10px}.dock-menu.active{color:var(--navy)}.footer .photo-note,.detail-note,.demo-note{font-size:11px}
