:root{--bg: #0b1a14;--bg-deep: #0f271d;--bg-top: #163a2c;--bg-bottom: #07120d;--surface: rgba(237, 228, 210, .045);--surface-2: rgba(237, 228, 210, .07);--surface-card: #102a20;--gold: #d9b98a;--gold-soft: #ead7b8;--gold-dim: rgba(217, 185, 138, .45);--gold-ghost: rgba(217, 185, 138, .12);--ink: #0b1a14;--text: #ede4d2;--text-strong: #ffffff;--text-dim: #8fa499;--text-faint: #5d6e64;--line: rgba(237, 228, 210, .14);--line-soft: rgba(237, 228, 210, .08);--line-strong: rgba(237, 228, 210, .24);--green: #9ad3a2;--blue: #7fb8d9;--danger: #d98a8a;--font-display: "Bodoni Moda", Georgia, serif;--font-grotesk: "Space Grotesk", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--r-xs: 6px;--r-sm: 10px;--r-md: 14px;--r-lg: 18px;--r-pill: 999px;--pad: 22px;--nav-h: 68px;--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--ease: cubic-bezier(.22, .61, .36, 1);--ease-out: cubic-bezier(.16, 1, .3, 1)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;background:var(--bg-bottom)}body{font-family:var(--font-body);color:var(--text);font-size:15px;line-height:1.5;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}button{font-family:inherit;color:inherit;cursor:pointer;background:none;border:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}input,select,textarea{font-family:inherit}img{display:block;max-width:100%}::selection{background:var(--gold-dim);color:var(--text-strong)}.app{position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;max-height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(120% 72% at 50% -8%,var(--bg-top) 0%,var(--bg-deep) 42%,var(--bg) 76%,var(--bg-bottom) 100%)}.app__scroll{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--nav-h) + var(--safe-b) + 28px)}.page{animation:page-in .4s var(--ease-out) both}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.section{padding:0 var(--pad);margin-top:30px}.section--end{margin-bottom:8px}.section__title{font-family:var(--font-display);font-weight:500;font-size:26px;line-height:1.1;color:var(--text-strong);letter-spacing:.2px}.section__lead{margin-top:8px;color:var(--text-dim);font-size:13.5px;line-height:1.6;max-width:320px}.kicker{font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:2.6px;text-transform:uppercase;color:var(--gold-soft)}.page-head{padding:60px var(--pad) 0}.page-head__eyebrow{display:block;font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:2.6px;text-transform:uppercase;color:var(--gold-soft)}.page-head__title{margin-top:12px;font-family:var(--font-display);font-weight:500;font-size:40px;line-height:1.02;color:var(--text-strong);letter-spacing:.3px}.page-head__subtitle{margin-top:12px;color:var(--text-dim);font-size:14px;line-height:1.6;max-width:330px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--font-grotesk);font-weight:600;font-size:12.5px;letter-spacing:2px;text-transform:uppercase;padding:15px 22px;border-radius:var(--r-xs);transition:transform .18s var(--ease),opacity .18s var(--ease),background .2s var(--ease);white-space:nowrap}.btn:active{transform:scale(.97)}.btn--gold{background:var(--gold);color:var(--ink)}.btn--gold:active{background:var(--gold-soft)}.btn--outline{border:1px solid var(--line-strong);color:var(--text)}.btn--outline:active{background:var(--surface)}.btn--quiet{color:var(--gold-soft);letter-spacing:1px;text-transform:none;font-size:14px;padding:12px 4px}.btn--lg{padding:17px 26px;font-size:13px}.btn--full{width:100%}.btn--sm{padding:10px 16px;font-size:13px}.hero{position:relative;min-height:560px;display:flex;align-items:flex-end;overflow:hidden}.hero__photo{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;filter:saturate(.92) brightness(.78);animation:hero-zoom 18s var(--ease) infinite alternate}@keyframes hero-zoom{0%{transform:scale(1.04)}to{transform:scale(1.16)}}.hero__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,var(--bg) 4%,rgba(11,26,20,.55) 36%,rgba(11,26,20,.2) 64%,rgba(11,26,20,.62) 100%)}.hero__glow{position:absolute;top:-10%;left:50%;width:360px;height:360px;transform:translate(-50%);background:radial-gradient(circle,rgba(217,185,138,.22),transparent 68%);pointer-events:none}.hero__fade{position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(0deg,var(--bg),transparent)}.hero__content{position:relative;z-index:2;width:100%;padding:0 var(--pad) 40px;text-align:center}.hero__kicker{font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--gold-soft)}.hero__title{margin-top:14px;font-family:var(--font-display);font-weight:500;font-size:88px;line-height:.92;color:var(--text-strong);letter-spacing:1px}.hero__rule{margin:16px 0 14px;color:var(--gold);font-size:13px;letter-spacing:8px}.hero__tagline{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:20px;line-height:1.4;color:var(--gold-soft);max-width:300px;margin:0 auto}.hero__status{margin-top:18px;display:inline-flex;align-items:center;gap:8px;font-family:var(--font-grotesk);font-size:11px;letter-spacing:.4px;color:var(--text-dim)}.hero__dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px #9ad3a22e}.hero__dot--closed{background:var(--danger);box-shadow:0 0 0 3px #d98a8a2e}.hero__cta{margin-top:26px;display:flex;flex-direction:column;align-items:center;gap:6px}.hero__cta .btn--gold{width:100%}.about{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--surface)}.about__photo{height:190px;background-size:cover;background-position:center}.about__body{padding:20px}.about__text{margin-top:12px;color:var(--text);font-size:14.5px;line-height:1.65}.advantages{display:grid;grid-template-columns:1fr 1fr;gap:12px}.adv-card{border:1px solid var(--line);border-radius:var(--r-md);padding:18px;background:var(--surface)}.adv-card__icon{font-size:22px;line-height:1;filter:saturate(.5)}.adv-card__title{margin-top:12px;font-family:var(--font-display);font-weight:500;font-size:17px;color:var(--text-strong)}.adv-card__text{margin-top:6px;font-size:12.5px;line-height:1.55;color:var(--text-dim)}.quick{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quick__tile{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;padding:20px 18px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--gold);transition:border-color .2s var(--ease),transform .18s var(--ease)}.quick__tile:active{transform:scale(.98);border-color:var(--gold-dim)}.quick__tile b{margin-top:8px;font-family:var(--font-display);font-weight:500;font-size:18px;color:var(--text-strong)}.quick__tile small{font-size:11.5px;line-height:1.45;color:var(--text-dim)}.events{margin-top:16px;border-top:1px solid var(--line)}.event{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.event__num{font-family:var(--font-grotesk);font-weight:500;font-size:14px;color:var(--gold);flex:none;padding-top:3px;min-width:28px}.event__title{font-family:var(--font-display);font-weight:500;font-size:18px;color:var(--text-strong)}.event__text{margin-top:5px;font-size:13px;line-height:1.55;color:var(--text-dim)}.halls-scroll{margin:18px calc(-1 * var(--pad)) 0;padding:4px var(--pad) 6px;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.halls-scroll::-webkit-scrollbar{display:none}.hall-card{flex:0 0 246px;scroll-snap-align:start;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--line);background:var(--surface-card)}.hall-card--clickable{cursor:pointer}.hall-card--clickable:active{opacity:.92}.hall-card.is-active{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold-ghost)}.hall-card--compact{flex:0 0 200px}.hall-card__photo--any{background:linear-gradient(135deg,var(--surface-deep),var(--surface));display:flex;align-items:center;justify-content:center}.hall-card__photo{position:relative;height:150px;background-size:cover;background-position:center}.hall-card__photo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,rgba(7,18,13,.55),transparent 55%)}.hall-card__vibe{position:absolute;z-index:2;top:12px;left:12px;font-family:var(--font-grotesk);font-size:9.5px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink);background:var(--gold);padding:5px 10px;border-radius:var(--r-pill)}.hall-card__body{padding:16px}.hall-card__name{font-family:var(--font-display);font-weight:500;font-size:20px;color:var(--text-strong)}.hall-card__cap{margin-top:4px;font-family:var(--font-grotesk);font-size:11.5px;letter-spacing:.5px;color:var(--gold-soft)}.hall-card__desc{margin-top:8px;font-size:12.5px;line-height:1.5;color:var(--text-dim)}.halls-scroll+.btn{margin-top:18px}.delivery-card{border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;background:var(--surface)}.delivery-card__head{display:flex;align-items:center;gap:12px;color:var(--gold)}.delivery-card__head h2{font-family:var(--font-display);font-weight:500;font-size:22px;color:var(--text-strong)}.delivery-card__list{list-style:none;margin:16px 0 20px;display:flex;flex-direction:column;gap:12px}.delivery-card__list li{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--text)}.delivery-card__list svg{color:var(--gold);flex:none}.link-row{width:100%;display:flex;align-items:center;gap:12px;padding:18px 20px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--text);font-size:14px;transition:border-color .2s var(--ease)}.link-row:active{border-color:var(--gold-dim)}.link-row span{flex:1;text-align:left}.link-row svg:first-child{color:var(--gold)}.link-row svg:last-child{color:var(--text-dim)}.seg{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface)}.seg__btn{flex:1;padding:11px 0;border-radius:var(--r-pill);font-family:var(--font-grotesk);font-weight:600;font-size:12.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dim);transition:color .2s var(--ease),background .2s var(--ease)}.seg__btn.is-active{background:var(--gold);color:var(--ink)}.delivery-strip{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--gold-dim);border-radius:var(--r-md);background:var(--gold-ghost)}.delivery-strip__tag{font-family:var(--font-grotesk);font-weight:700;font-size:14px;color:var(--ink);background:var(--gold);padding:6px 11px;border-radius:var(--r-xs);flex:none}.delivery-strip p{font-size:12.5px;line-height:1.45;color:var(--gold-soft)}.cat-tabs{position:sticky;top:0;z-index:5;margin-top:24px;padding:12px var(--pad);display:flex;gap:9px;overflow-x:auto;scrollbar-width:none;background:linear-gradient(180deg,var(--bg) 70%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.cat-tabs::-webkit-scrollbar{display:none}.cat-tab{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:9px 15px;border:1px solid var(--line);border-radius:var(--r-pill);font-family:var(--font-grotesk);font-size:12.5px;font-weight:500;color:var(--text-dim);transition:all .2s var(--ease)}.cat-tab.is-active{background:var(--gold);border-color:var(--gold);color:var(--ink)}.cat-tab__icon{font-size:13px}.dishes{margin-top:16px;display:flex;flex-direction:column}.dish{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.dish__thumb{flex:none;width:66px;height:66px;border-radius:var(--r-sm);object-fit:cover;object-position:center;background-color:var(--surface-2)}.menu-category{content-visibility:auto;contain-intrinsic-size:auto 600px}.day-picker-custom{margin-top:14px;display:flex;flex-direction:column;gap:8px}.day-picker-custom__btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 16px;border:1px solid var(--gold-dim);border-radius:var(--r-md);background:linear-gradient(180deg,#d9b98a14,#d9b98a05);color:var(--gold-soft);font-family:var(--font-grotesk);font-size:14px;font-weight:500;text-align:left;transition:border-color .2s var(--ease),background .2s var(--ease)}.day-picker-custom__btn:active{border-color:var(--gold);background:#d9b98a1f}.day-picker-custom__text{flex:1}.day-picker-custom__input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.day-picker-custom__hint{margin:0;text-align:center;font-size:12px}.day-chip--custom .day-chip__day{letter-spacing:2px}.picker-label--spaced{margin-bottom:10px}.dish__info{flex:1;min-width:0}.dish__head{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.dish__name{flex:1;min-width:0;font-family:var(--font-display);font-weight:500;font-size:17px;line-height:1.15;color:var(--text)}.dish__tag{font-family:var(--font-grotesk);font-size:9px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--gold-soft);border:1px solid var(--gold-dim);padding:3px 7px;border-radius:var(--r-pill)}.dish__desc{margin-top:5px;font-size:12px;line-height:1.45;color:var(--text-dim)}.dish__meta{margin-top:8px;display:flex;align-items:baseline;gap:10px}.dish__price{font-family:var(--font-grotesk);font-weight:600;font-size:15px;color:var(--gold-soft)}.dish__weight{font-size:11.5px;color:var(--text-faint)}.dish__add{flex:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--gold-dim);color:var(--gold);font-size:22px;font-weight:300;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .18s var(--ease)}.dish__add:active{background:var(--gold);color:var(--ink);transform:scale(.92)}.stepper{flex:none;display:flex;align-items:center;gap:4px;border:1px solid var(--gold-dim);border-radius:var(--r-pill);padding:3px}.stepper button{width:30px;height:30px;border-radius:50%;color:var(--gold);font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center}.stepper button:active{background:var(--gold-ghost)}.stepper b{font-family:var(--font-grotesk);font-weight:600;font-size:14px;min-width:18px;text-align:center;color:var(--text)}.cart-bar{position:fixed;left:0;right:0;bottom:calc(var(--nav-h) + var(--safe-b));z-index:45;padding:14px var(--pad) 16px;background:#0b1a14eb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);animation:cart-in .3s var(--ease-out) both}@keyframes cart-in{0%{transform:translateY(100%)}to{transform:none}}.cart-bar__mode{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--r-pill);margin-bottom:12px}.cart-bar__mode button{flex:1;padding:9px 0;border-radius:var(--r-pill);font-family:var(--font-grotesk);font-size:12px;font-weight:500;letter-spacing:.5px;color:var(--text-dim);transition:all .2s var(--ease)}.cart-bar__mode button.is-active{background:var(--gold);color:var(--ink)}.cart-bar__summary{display:flex;align-items:center;justify-content:space-between;gap:14px}.cart-bar__totals{display:flex;flex-direction:column;gap:2px}.cart-bar__totals>span:first-child{font-size:13px;color:var(--text)}.cart-bar__discount{font-family:var(--font-grotesk);font-size:11.5px;color:var(--gold-soft)}.cart-bar .btn{flex:none}.picker-label{display:flex;align-items:center;gap:8px;font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:2.4px;text-transform:uppercase;color:var(--text-dim);margin-bottom:14px}.picker-label svg{color:var(--gold)}.day-scroll{margin:0 calc(-1 * var(--pad));padding:2px var(--pad);display:flex;gap:9px;overflow-x:auto;scrollbar-width:none}.day-scroll::-webkit-scrollbar{display:none}.day-chip{flex:0 0 auto;min-width:62px;text-align:center;padding:12px 10px;border:1px solid var(--line);border-radius:var(--r-md);transition:all .2s var(--ease)}.day-chip__wd{display:block;font-family:var(--font-grotesk);font-size:9.5px;font-weight:500;letter-spacing:1px;text-transform:uppercase;color:var(--text-dim)}.day-chip__day{display:block;font-family:var(--font-display);font-weight:500;font-size:22px;margin-top:4px;color:var(--text)}.day-chip__mo{display:block;font-size:10px;color:var(--text-faint);margin-top:2px}.day-chip.is-active{background:var(--gold);border-color:var(--gold)}.day-chip.is-active .day-chip__wd,.day-chip.is-active .day-chip__day,.day-chip.is-active .day-chip__mo{color:var(--ink)}.time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.time-chip{padding:12px 0;border:1px solid var(--line);border-radius:var(--r-pill);font-family:var(--font-grotesk);font-size:14px;color:var(--text);transition:all .2s var(--ease)}.time-chip.is-active{background:var(--gold);border-color:var(--gold);color:var(--ink);font-weight:500}.guest-stepper{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:var(--r-md);padding:12px 18px}.guest-stepper__btn{width:42px;height:42px;border-radius:50%;border:1px solid var(--gold-dim);color:var(--gold);display:flex;align-items:center;justify-content:center;transition:all .18s var(--ease)}.guest-stepper__btn:active{background:var(--gold-ghost);transform:scale(.92)}.guest-stepper__btn:disabled{opacity:.3;pointer-events:none}.guest-stepper__value{text-align:center}.guest-stepper__value b{display:block;font-family:var(--font-display);font-weight:500;font-size:30px;line-height:1;color:var(--text-strong)}.guest-stepper__value span{font-family:var(--font-grotesk);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dim)}.chips{display:flex;flex-wrap:wrap;gap:9px}.chip{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid var(--line);border-radius:var(--r-pill);font-size:13px;color:var(--text);transition:all .2s var(--ease);touch-action:manipulation}.chip.is-active{background:var(--gold);border-color:var(--gold);color:var(--ink);font-weight:500}.form-card{border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;background:var(--surface);display:flex;flex-direction:column;gap:16px}.form-note{font-size:13px;line-height:1.55;color:var(--text-dim)}.form-note--center{text-align:center}.field{display:flex;flex-direction:column;gap:8px}.field__label{font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;color:var(--text-dim)}.field__req{color:var(--gold);font-style:normal;margin-left:2px}.field__control{width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-sm);background:#07120d66;color:var(--text);font-size:16px;line-height:1.35;transition:border-color .2s var(--ease)}.field__control::placeholder{color:var(--text-faint)}.field__control:focus{outline:none;border-color:var(--gold-dim)}.field__control--area{resize:none;line-height:1.5}.field__select-wrap{position:relative}.field__control--select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:42px}.field__chevron{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--gold);pointer-events:none}.field__hint{font-size:12px;color:var(--danger)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.booking-summary{border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 20px 20px;background:var(--surface)}.booking-summary__row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--line)}.booking-summary__row span{font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--text-dim)}.booking-summary__row b{font-family:var(--font-display);font-weight:500;font-size:16px;color:var(--text-strong);text-align:right}.photo-banner{position:relative;border-radius:var(--r-lg);overflow:hidden;min-height:280px;display:flex;align-items:flex-end;background-size:cover;background-position:center}.photo-banner__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,#07120df5 6%,#07120d59 55%,#07120d8c)}.photo-banner__content{position:relative;z-index:2;padding:22px}.banner__icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--gold-dim);color:var(--gold);background:#07120d66}.banner__heading{margin-top:14px;font-family:var(--font-display);font-weight:500;font-size:28px;line-height:1.05;color:var(--text-strong)}.banner__desc{margin-top:10px;font-size:13px;line-height:1.55;color:#cdd6cf;max-width:320px}.banner__chips{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px}.banner__chips span{font-family:var(--font-grotesk);font-size:11px;letter-spacing:.5px;color:var(--gold-soft);border:1px solid var(--gold-dim);padding:6px 12px;border-radius:var(--r-pill);background:#07120d59}.steps{margin-top:16px;border-top:1px solid var(--line)}.step{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.step__num{font-family:var(--font-grotesk);font-weight:600;font-size:14px;color:var(--gold);flex:none;min-width:28px;padding-top:2px}.step__title{font-family:var(--font-display);font-weight:500;font-size:18px;color:var(--text-strong)}.step__text{margin-top:5px;font-size:13px;line-height:1.55;color:var(--text-dim)}.check-list{list-style:none;display:flex;flex-direction:column;gap:14px;margin-top:16px}.check-list li{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.45;color:var(--text)}.check-list svg{color:var(--gold);flex:none;margin-top:2px}.loyalty-card{position:relative;overflow:hidden;border-radius:var(--r-lg);padding:24px;border:1px solid var(--gold-dim);background:linear-gradient(135deg,#1c4233,#0e261c 55%,#0a1d15)}.loyalty-card:before{content:"";position:absolute;top:-70px;right:-50px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(217,185,138,.22),transparent 70%)}.loyalty-card__monogram{position:absolute;right:18px;bottom:-16px;font-family:var(--font-display);font-size:140px;line-height:1;color:#d9b98a12;pointer-events:none}.loyalty-card__top{position:relative;display:flex;align-items:flex-start;justify-content:space-between}.loyalty-card__brand{font-family:var(--font-display);font-weight:500;font-size:22px;color:var(--text-strong);letter-spacing:1px}.loyalty-card__tier{font-family:var(--font-grotesk);font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--gold-soft);border:1px solid var(--gold-dim);padding:5px 10px;border-radius:var(--r-pill)}.loyalty-card__balance{position:relative;margin-top:26px}.loyalty-card__balance span{display:block;font-family:var(--font-grotesk);font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--text-dim)}.loyalty-card__balance b{display:block;font-family:var(--font-grotesk);font-weight:700;font-size:46px;line-height:1.05;color:var(--gold);margin-top:4px}.loyalty-card__bottom{position:relative;margin-top:24px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.loyalty-card__number{font-family:var(--font-grotesk);font-size:14px;letter-spacing:2px;color:var(--text)}.loyalty-card__name{font-family:var(--font-grotesk);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--text-dim)}.progress{border:1px solid var(--line);border-radius:var(--r-md);padding:18px;background:var(--surface)}.progress__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.progress__head span{font-size:12.5px;color:var(--text-dim)}.progress__head b{font-family:var(--font-grotesk);font-weight:600;font-size:14px;color:var(--gold-soft);white-space:nowrap}.progress__bar{height:6px;border-radius:var(--r-pill);background:#ede4d21a;overflow:hidden}.progress__fill{height:100%;background:var(--gold);border-radius:var(--r-pill);transition:width .6s var(--ease-out)}.perks{margin-top:16px;display:flex;flex-direction:column}.perk{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.perk:first-child{border-top:1px solid var(--line)}.perk__icon{flex:none;width:42px;height:42px;border-radius:50%;border:1px solid var(--gold-dim);color:var(--gold);display:flex;align-items:center;justify-content:center}.perk h3{font-family:var(--font-display);font-weight:500;font-size:17px;color:var(--text-strong)}.perk p{margin-top:5px;font-size:12.5px;line-height:1.5;color:var(--text-dim)}.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.tier{border:1px solid var(--line);border-radius:var(--r-md);padding:16px 12px;text-align:center;background:var(--surface)}.tier.is-active{border-color:var(--gold);background:var(--gold-ghost)}.tier b{font-family:var(--font-display);font-weight:500;font-size:17px;color:var(--text-strong)}.tier span{display:block;margin-top:6px;font-family:var(--font-grotesk);font-size:12px;color:var(--gold-soft)}.tier small{display:block;margin-top:6px;font-size:10.5px;line-height:1.35;color:var(--text-dim)}.profile-card{display:flex;align-items:center;gap:16px;padding-bottom:22px;border-bottom:1px solid var(--line)}.profile-card__avatar{flex:none;width:64px;height:64px;border-radius:50%;border:1px solid var(--gold-dim);overflow:hidden;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:26px;color:var(--gold)}.profile-card__avatar img{width:100%;height:100%;object-fit:cover}.profile-card__info{flex:1;min-width:0}.profile-card__info h2{font-family:var(--font-display);font-weight:500;font-size:24px;color:var(--text-strong)}.profile-card__info p{margin-top:4px;font-size:12.5px;color:var(--text-dim)}.profile-card__loyalty{flex:none;display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:var(--r-pill);border:1px solid var(--gold-dim);color:var(--gold);font-family:var(--font-grotesk);font-size:12px;font-weight:500;letter-spacing:.5px}.profile-card__loyalty:active{background:var(--gold-ghost)}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.profile-stats>div{border:1px solid var(--line);border-radius:var(--r-md);padding:16px 8px;text-align:center;background:var(--surface)}.profile-stats b{font-family:var(--font-grotesk);font-weight:600;font-size:24px;color:var(--gold)}.profile-stats span{display:block;margin-top:6px;font-family:var(--font-grotesk);font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--text-dim)}.menu-list{border-top:1px solid var(--line)}.menu-list__row{width:100%;display:flex;align-items:center;gap:14px;padding:16px 2px;border-bottom:1px solid var(--line);color:var(--text);font-size:14px;transition:padding .2s var(--ease)}.menu-list__row span{flex:1;text-align:left}.menu-list__row svg:first-child{color:var(--gold)}.menu-list__row svg:last-child{color:var(--text-dim)}.menu-list__row:active{padding-left:8px}.history{border-top:1px solid var(--line)}.history__row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.history__date{font-family:var(--font-grotesk);font-size:11px;letter-spacing:.5px;color:var(--text-dim)}.history__title{font-size:13.5px;color:var(--text)}.history__value{font-family:var(--font-grotesk);font-size:12.5px;font-weight:500;color:var(--gold-soft)}.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-actions .btn{width:100%}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.qa{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:18px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);transition:border-color .2s var(--ease),transform .18s var(--ease)}.qa:active{transform:scale(.98);border-color:var(--gold-dim)}.qa__ic{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:var(--ink)}.qa--brass .qa__ic{background:var(--gold)}.qa--blue .qa__ic{background:var(--blue)}.qa--green .qa__ic{background:var(--green)}.qa--neutral .qa__ic{background:var(--gold-soft)}.qa__label{font-family:var(--font-display);font-weight:500;font-size:18px;color:var(--text-strong)}.map-card{position:relative;width:100%;height:168px;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);background:radial-gradient(120% 120% at 30% 20%,#14342889 0%,transparent 60%),var(--surface-card)}.map-card__grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);background-size:28px 28px;opacity:.7}.map-card__pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--gold)}.map-card__hint{position:absolute;left:50%;bottom:16px;transform:translate(-50%);font-family:var(--font-grotesk);font-size:11px;font-weight:500;letter-spacing:1px;color:var(--ink);background:var(--gold);padding:7px 14px;border-radius:var(--r-pill)}.info-list{border:1px solid var(--line);border-radius:var(--r-lg);padding:6px 18px;background:var(--surface)}.info-list__row{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.info-list__row:last-child{border-bottom:none}.info-list__ic{flex:none;color:var(--gold);padding-top:2px}.info-list__row b{font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dim)}.info-list__row p{margin-top:6px;font-size:14px;color:var(--text)}.info-list__row small{display:block;margin-top:4px;font-size:12px;color:var(--text-dim)}.info-list__link{margin-top:6px;font-size:14px;color:var(--gold-soft);text-decoration:underline;text-underline-offset:3px}.phones{margin-top:14px;display:flex;flex-direction:column;gap:10px}.phone-row{width:100%;display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);transition:border-color .2s var(--ease)}.phone-row:active{border-color:var(--gold-dim)}.phone-row__ic{flex:none;color:var(--gold)}.phone-row>div{flex:1;text-align:left}.phone-row b{font-family:var(--font-grotesk);font-size:15px;color:var(--text)}.phone-row small{display:block;margin-top:3px;font-size:12px;color:var(--text-dim)}.phone-row>svg{color:var(--text-dim)}.route-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px}.route-buttons .btn{width:100%}.bottom-nav{position:absolute;left:0;right:0;bottom:0;z-index:40;height:calc(var(--nav-h) + var(--safe-b));padding-bottom:var(--safe-b);display:flex;align-items:stretch;background:#091610db;-webkit-backdrop-filter:blur(18px) saturate(1.1);backdrop-filter:blur(18px) saturate(1.1);border-top:1px solid var(--line)}.bottom-nav__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--text-dim);font-family:var(--font-grotesk);font-size:9.5px;font-weight:500;letter-spacing:1px;text-transform:uppercase;transition:color .2s var(--ease)}.bottom-nav__ico{display:flex;align-items:center;justify-content:center;height:24px;transition:transform .2s var(--ease)}.bottom-nav__item.is-active{color:var(--gold)}.bottom-nav__item.is-active .bottom-nav__ico{transform:translateY(-1px)}.bottom-nav__item.is-active:before{content:"";position:absolute;top:-1px;width:26px;height:2px;border-radius:2px;background:var(--gold)}.bottom-nav__item{position:relative}.sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:flex-end;justify-content:center;background:#050e0ab8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in .25s var(--ease) both;padding:max(12px,var(--safe-t)) 16px max(16px,var(--safe-b))}.sheet-overlay--center{align-items:center;padding-top:max(16px,var(--safe-t));padding-bottom:calc(var(--nav-h) + var(--safe-b) + 16px)}.sheet-overlay--center .cart-sheet{margin-bottom:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.sheet{width:100%;max-width:440px;background:var(--surface-card);border:1px solid var(--line);border-radius:var(--r-lg);padding:30px 24px 24px;text-align:center;animation:sheet-up .34s var(--ease-out) both;margin-bottom:calc(var(--nav-h) + var(--safe-b) + 8px)}@keyframes sheet-up{0%{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}.sheet__badge{width:64px;height:64px;border-radius:50%;margin:0 auto;display:flex;align-items:center;justify-content:center;color:var(--ink);background:var(--gold)}.sheet__title{margin-top:18px;font-family:var(--font-display);font-weight:500;font-size:24px;color:var(--text-strong)}.sheet__text{margin-top:10px;font-size:14px;line-height:1.6;color:var(--text-dim)}.sheet__btn{margin-top:24px;width:100%}.sheet--success{text-align:center;max-height:min(88dvh,calc(100dvh - var(--nav-h) - var(--safe-b) - 32px));overflow-y:auto}.sheet__details{list-style:none;margin:20px 0 0;padding:16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);text-align:left;display:flex;flex-direction:column;gap:12px}.sheet__details li{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;font-size:13px;line-height:1.45}.sheet__details span{color:var(--text-dim);flex:none}.sheet__details strong{color:var(--text);font-weight:500;text-align:right}.sheet__actions{margin-top:20px;display:flex;flex-direction:column;gap:10px}.sheet--active-order{text-align:left}.sheet--active-order .sheet__badge{margin-bottom:0}.sheet__status-pill{display:inline-block;margin-top:10px;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:500;color:var(--gold);background:#c9a9621f;border:1px solid rgba(201,169,98,.25)}.order-tracker{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:0;position:relative}.order-tracker:before{content:"";position:absolute;left:15px;top:16px;bottom:16px;width:2px;background:var(--line)}.order-tracker__step{display:flex;align-items:center;gap:12px;padding:8px 0;position:relative;z-index:1}.order-tracker__dot{width:32px;height:32px;flex:none;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:var(--text-dim);background:var(--surface);border:2px solid var(--line)}.order-tracker__step--done .order-tracker__dot{color:var(--ink);background:var(--gold);border-color:var(--gold)}.order-tracker__step--active .order-tracker__dot{color:var(--gold);border-color:var(--gold);box-shadow:0 0 0 3px #c9a96226}.order-tracker__label{font-size:14px;color:var(--text-dim)}.order-tracker__step--done .order-tracker__label,.order-tracker__step--active .order-tracker__label{color:var(--text);font-weight:500}.order-tracker--failed{margin-top:20px;padding:14px 16px;border-radius:var(--r-md);border:1px solid rgba(255,90,90,.35);background:#ff5a5a14;display:flex;align-items:center;gap:10px;color:#ff8a8a;font-weight:500}.bot-hint{margin-top:16px;padding:14px 16px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);display:flex;gap:12px;align-items:flex-start;text-align:left}.bot-hint__body b{display:block;font-size:14px;color:var(--text-strong);margin-bottom:4px}.bot-hint__body p{margin:0;font-size:13px;line-height:1.5;color:var(--text-dim)}.bot-hint__link{padding:0;border:none;background:none;color:var(--gold);font:inherit;cursor:pointer;text-decoration:underline}.active-order-card{padding:18px 16px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-card)}.active-order-card__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.active-order-card__kicker{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim)}.active-order-card__pill{font-size:12px;font-weight:500;color:var(--gold)}.active-order-card__hint{margin:10px 0 0;font-size:14px;line-height:1.5;color:var(--text-dim)}.active-order-card__meta{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:14px;color:var(--text-dim)}.active-order-card__meta b{color:var(--text-strong);font-size:16px}.active-order-card .btn{margin-top:14px}.checkout__hint{margin:0}.checkout-review{padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.checkout-review__label{display:block;font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;color:var(--text-dim)}.checkout-review__text{margin:8px 0 0;font-size:13px;line-height:1.5;color:var(--text)}.pickup-block{padding:16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.pickup-block__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.pickup-block__label{font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;color:var(--text-dim)}.pickup-block__metro{font-family:var(--font-grotesk);font-size:11px;color:var(--gold-soft)}.pickup-block__address{margin:10px 0 0;font-size:15px;line-height:1.45;color:var(--text-strong)}.pickup-block__hours{margin:6px 0 0;font-size:13px;color:var(--text-dim)}.pickup-block__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.delivery-zone{--zone-map-fill: #ff5a5a;--zone-map-stroke: #ff3333;padding:14px 16px 16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.delivery-zone__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.delivery-zone__label{font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;color:var(--text-dim)}.delivery-zone__tag{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-grotesk);font-size:11px;font-weight:700;letter-spacing:.2px;color:#fff;padding:5px 10px 5px 8px;border-radius:var(--r-pill);border:1px solid var(--zone-map-stroke);background:var(--zone-map-fill);box-shadow:0 0 0 3px #ff333329}.delivery-zone__tag-dot{flex:none;width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #b4141433}.delivery-zone__note{margin:10px 0 0;font-size:12.5px;line-height:1.45;color:var(--text-dim)}.delivery-zone__map{margin-top:12px;height:140px;border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--line-soft)}.delivery-zone__map iframe{display:block;width:100%;height:100%;border:0}.search{display:flex;align-items:center;gap:10px;padding:0 16px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface)}.search svg{color:var(--text-dim);flex:none}.search__input{flex:1;min-width:0;padding:13px 0;background:none;border:none;color:var(--text);font-size:15px}.search__input:focus{outline:none}.search__input::placeholder{color:var(--text-faint)}.search__clear{display:flex;align-items:center;justify-content:center;color:var(--text-dim);padding:6px;flex:none}.section__badge{margin-left:10px;font-family:var(--font-grotesk);font-size:9.5px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--text-dim);border:1px solid var(--line);padding:4px 9px;border-radius:var(--r-pill);vertical-align:middle;white-space:nowrap}.dish--alc .dish__thumb{filter:saturate(.82) brightness(.82)}.dish__hall{flex:none;width:74px;font-family:var(--font-grotesk);font-size:9.5px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--text-dim);border:1px solid var(--line);padding:8px 6px;border-radius:var(--r-sm);text-align:center;line-height:1.35}.delivery-strip--info{border-color:var(--line);background:var(--surface)}.delivery-strip--info p{color:var(--text-dim)}.delivery-strip__tag--ghost{background:transparent;color:var(--gold-soft);border:1px solid var(--gold-dim)}.wallet-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wallet-btn{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--r-md);background:#0a0f0d;border:1px solid var(--line-strong);color:#fff;text-align:left;transition:transform .18s var(--ease)}.wallet-btn:active{transform:scale(.97)}.wallet-btn>span:last-child{display:flex;flex-direction:column;line-height:1.15}.wallet-btn small{font-size:9px;letter-spacing:.5px;text-transform:uppercase;color:#b9c2bd}.wallet-btn b{font-family:var(--font-grotesk);font-size:13.5px;font-weight:600}.wallet-btn__logo{flex:none;width:28px;height:28px;border-radius:7px;background:#fff;color:#000;font-family:var(--font-grotesk);font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center}.wallet-btn__logo:before{content:""}.wallet-btn__logo--g{color:#4285f4}.wallet-btn__logo--g:before{content:none}.promo-card{width:100%;display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--gold-dim);border-radius:var(--r-md);background:var(--gold-ghost);text-align:left;transition:transform .18s var(--ease)}.promo-card:active{transform:scale(.99)}.promo-card__badge{flex:none;font-family:var(--font-grotesk);font-weight:700;font-size:17px;color:var(--ink);background:var(--gold);padding:9px 12px;border-radius:var(--r-sm)}.promo-card__body{flex:1;min-width:0}.promo-card__body b{display:block;font-family:var(--font-display);font-weight:500;font-size:17px;color:var(--text-strong)}.promo-card__body small{font-size:12px;line-height:1.4;color:var(--text-dim)}.promo-card>svg{color:var(--gold);flex:none}@media (min-width: 600px){body{background:var(--bg-bottom)}.app{max-width:430px;margin-inline:auto;box-shadow:0 0 0 1px var(--line-soft)}.cart-bar{left:50%;right:auto;width:100%;max-width:430px;transform:translate(-50%);animation:none}.sheet-overlay{padding-inline:max(16px,calc((100% - 430px)/2))}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.dish-modal{width:100%;max-width:440px;background:var(--surface-card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;position:relative;animation:sheet-up .34s var(--ease-out) both;margin-bottom:calc(var(--nav-h) + var(--safe-b) + 8px);max-height:86vh;display:flex;flex-direction:column}.dish-modal__close{position:absolute;top:12px;right:12px;z-index:2;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;color:var(--text-strong);background:#07120d8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line)}.dish-modal__photo{position:relative;width:100%;aspect-ratio:16 / 11;background-size:cover;background-position:center;flex:none}.dish-modal__alc{position:absolute;left:14px;bottom:14px;font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--text-strong);background:#07120d99;border:1px solid var(--line);padding:6px 11px;border-radius:var(--r-pill);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dish-modal__body{padding:20px 22px 22px;overflow-y:auto}.hall-modal__vibe{display:block;font-family:var(--font-grotesk);font-size:11px;font-weight:500;letter-spacing:1.4px;text-transform:uppercase;color:var(--gold);margin-bottom:6px}.dish-modal__name{font-family:var(--font-display);font-weight:500;font-size:24px;line-height:1.15;color:var(--text-strong)}.dish-modal__desc{margin-top:10px;font-size:14px;line-height:1.6;color:var(--text-dim)}.dish-modal__meta{display:flex;align-items:baseline;gap:12px;margin-top:14px}.dish-modal__price{font-family:var(--font-display);font-size:22px;color:var(--gold-soft)}.dish-modal__weight{font-family:var(--font-grotesk);font-size:12.5px;color:var(--text-faint)}.dish-modal__hallnote{margin-top:16px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);font-size:13px;line-height:1.6;color:var(--text-dim)}.dish-modal__cta{margin-top:18px}.dish-modal__stepper{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--gold-dim);border-radius:var(--r-pill);padding:6px}.dish-modal__stepper b{font-family:var(--font-grotesk);font-size:14px;color:var(--text)}.dish-modal__stepper button{width:44px;height:44px;border-radius:50%;font-size:22px;color:var(--ink);background:var(--gold)}.dish-modal__stepper button:active{background:var(--gold-soft)}.cart-sheet{width:100%;max-width:440px;background:var(--surface-card);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px 22px 22px;animation:sheet-up .34s var(--ease-out) both;margin-bottom:calc(var(--nav-h) + var(--safe-b) + 8px);max-height:86vh;display:flex;flex-direction:column}.cart-sheet__head{display:flex;align-items:center;justify-content:space-between;position:relative}.cart-sheet__head .dish-modal__close{position:static;background:var(--surface)}.cart-sheet__title{font-family:var(--font-display);font-weight:500;font-size:24px;color:var(--text-strong)}.cart-sheet__list{margin-top:16px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.cart-line{display:flex;align-items:center;gap:12px}.cart-line__thumb{width:52px;height:52px;flex:none;border-radius:var(--r-sm);background-size:cover;background-position:center;border:1px solid var(--line)}.cart-line__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.cart-line__name{font-size:14px;color:var(--text);line-height:1.3}.cart-line__price{font-family:var(--font-grotesk);font-size:12.5px;color:var(--text-dim)}.cart-sheet__totals{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.cart-sheet__row{display:flex;align-items:baseline;justify-content:space-between;font-size:14px;color:var(--text-dim)}.cart-sheet__row--discount{color:var(--gold-soft);font-family:var(--font-grotesk);font-size:12.5px}.cart-sheet__row--total{font-family:var(--font-display);font-size:19px;color:var(--text-strong)}.cart-sheet .btn--full{margin-top:18px}.checkout{margin-top:16px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.checkout__mode{margin-bottom:2px}.checkout__error{display:block;margin-top:10px}.qr-card{display:flex;align-items:center;gap:18px;padding:16px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.qr{flex:none;border-radius:var(--r-md);background:#ede4d2;padding:8px;display:flex;align-items:center;justify-content:center}.qr img{display:block;border-radius:4px}.qr-card__text b{font-family:var(--font-display);font-size:17px;color:var(--text-strong)}.qr-card__text p{margin-top:6px;font-size:13px;line-height:1.55;color:var(--text-dim)}.verify-card{text-align:center;padding:28px 22px 24px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-card)}.verify-card__badge{width:64px;height:64px;border-radius:50%;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;color:var(--ink);background:var(--gold)}.verify-card__badge--bad{background:var(--danger);color:var(--bg)}.verify-card h3{font-family:var(--font-display);font-weight:500;font-size:23px;color:var(--text-strong)}.verify-card--bad p{margin-top:8px;font-size:14px;line-height:1.6;color:var(--text-dim)}.verify-card__rows{margin-top:18px;display:flex;flex-direction:column;gap:10px;text-align:left}.verify-card__row{display:flex;align-items:baseline;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid var(--line-soft);font-size:14px;color:var(--text-dim)}.verify-card__row b{font-family:var(--font-grotesk);font-size:15px;color:var(--text)}.verify-card__status{color:var(--green)!important}.verify-card__hint{margin-top:16px;font-size:13px;line-height:1.55;color:var(--text-dim)}.dish-modal__fav{position:absolute;top:12px;right:56px;z-index:2;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:#0b1a148c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--text);font-size:19px;line-height:1;cursor:pointer;transition:transform .12s ease,color .12s ease}.dish-modal__fav.is-active{color:var(--danger)}.dish-modal__fav:active{transform:scale(.9)}.dish__fav{flex:none;background:none;border:none;padding:0 0 0 8px;font-size:18px;line-height:1;color:var(--text-dim);cursor:pointer}.dish__fav.is-active{color:var(--danger)}.rate-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line-soft)}.rate-row__label{font-size:15px;color:var(--text)}.stars{display:flex;gap:4px}.star{background:none;border:none;padding:2px;font-size:24px;line-height:1;color:var(--line);cursor:pointer;transition:color .1s ease,transform .1s ease}.star.is-active{color:var(--gold)}.star:active{transform:scale(1.15)}.fav-list{display:flex;flex-direction:column;gap:10px}.fav-row{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.fav-row__thumb{flex:none;width:48px;height:48px;border-radius:10px;background-color:var(--surface-card);background-size:cover;background-position:center}.fav-row__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.fav-row__name{font-size:14px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fav-row__price{font-family:var(--font-grotesk);font-size:13px;color:var(--text-dim)}.fav-row__add{flex:none;width:36px;height:36px;border-radius:50%;border:none;background:var(--gold);color:var(--ink);font-size:22px;line-height:1;cursor:pointer}.fav-row__add:active{transform:scale(.92)}.order-list{display:flex;flex-direction:column;gap:12px}.order-row{padding:14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.order-row__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.order-row__date{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}.order-row__status{font-size:12px;color:var(--gold)}.order-row__body{display:flex;align-items:baseline;justify-content:space-between;font-size:14px;color:var(--text)}.order-row__body b{font-family:var(--font-grotesk)}.order-row__repeat{margin-top:12px}.sheet-overlay--fullscreen{z-index:120;align-items:stretch;justify-content:stretch;padding:0}.dish-modal--fullscreen{max-width:none;width:100%;max-height:none;height:100dvh;min-height:100dvh;margin-bottom:0;border-radius:0;border:none}.dish-modal--fullscreen .dish-modal__body{flex:none;max-height:38vh;overflow-y:auto}.gallery{position:relative;flex:none}.gallery--card{height:220px}.gallery--full{height:min(42vh,320px);min-height:200px}.dish-modal__photo-wrap{position:relative;flex:none}.dish-modal__photo-wrap .dish-modal__alc{position:absolute;left:14px;bottom:14px;z-index:2}.gallery--modal{width:100%;aspect-ratio:16 / 11;height:auto;flex:none;background:var(--surface-deep)}.gallery--modal .gallery__slide{background-size:contain;background-repeat:no-repeat;background-color:var(--surface-deep)}.gallery--hero{flex:1;min-height:52vh;height:auto;max-height:none}.gallery__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;height:100%;scrollbar-width:none}.gallery__track::-webkit-scrollbar{display:none}.gallery__slide{flex:0 0 100%;scroll-snap-align:start;background-size:cover;background-position:center;background-color:var(--surface-deep);border:none;padding:0;margin:0;cursor:zoom-in;width:100%}.gallery__zoom-hint{position:absolute;right:12px;bottom:12px;z-index:2;font-size:14px;color:#ffffffbf;background:#07120d73;border-radius:var(--r-pill);padding:4px 8px;pointer-events:none}.photo-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000000f5;display:flex;flex-direction:column}.photo-lightbox__close{position:absolute;top:calc(env(safe-area-inset-top,0px) + 12px);right:16px;z-index:3;width:40px;height:40px;border-radius:50%;background:#ffffff1f;color:#fff;font-size:18px}.photo-lightbox__track{flex:1;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.photo-lightbox__slide{flex:0 0 100%;scroll-snap-align:start;display:flex;align-items:center;justify-content:center;padding:48px 12px 64px}.photo-lightbox__slide img{max-width:100%;max-height:100%;object-fit:contain}.photo-lightbox--standard{align-items:center;justify-content:center;padding:20px var(--pad) calc(var(--nav-h) + var(--safe-b) + 16px);background:#050e0ae0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.photo-lightbox__card{width:100%;max-width:440px;position:relative}.photo-lightbox--standard .photo-lightbox__track{flex:none;width:100%;aspect-ratio:16 / 11;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);background:var(--surface-deep)}.photo-lightbox__frame{flex:0 0 100%;scroll-snap-align:start;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--surface-deep)}.photo-lightbox__frame img{width:100%;height:100%;object-fit:contain}.photo-lightbox--standard .photo-lightbox__dots{position:static;margin-top:12px}.photo-lightbox__dots{position:absolute;bottom:calc(var(--safe-b) + 20px);left:0;right:0;display:flex;justify-content:center;gap:6px}.checkout-sheet{max-height:min(88dvh,calc(100dvh - var(--nav-h) - var(--safe-b) - var(--safe-t) - 32px));overflow:hidden}.checkout-sheet .checkout{flex:1;min-height:0;overscroll-behavior:contain;scroll-padding-bottom:24px}.checkout-sheet .cart-sheet__totals{flex:none;margin-top:12px}.checkout-sheet .btn--full{flex:none}.check-row{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.45;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none}.check-row input{flex:none;width:18px;height:18px;margin-top:2px;accent-color:var(--gold)}.check-row+.check-row,.check-row+.field,.field+.check-row{margin-top:4px}.menu-head{position:relative;padding-right:calc(var(--pad) + 48px)}.menu-cart-btn{position:absolute;top:18px;right:var(--pad);width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--surface-card);color:var(--text);display:flex;align-items:center;justify-content:center}.menu-cart-btn.has-items{border-color:var(--gold);color:var(--gold-soft)}.menu-cart-btn__badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-pill);background:var(--gold);color:var(--ink);font-family:var(--font-grotesk);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.page--menu{padding-bottom:calc(var(--nav-h) + var(--safe-b) + 120px)}.halls-open-gallery{margin-top:12px;margin-bottom:0}.chips--halls{margin-top:18px}.section--tight{padding-top:0;margin-top:12px}.gallery__dots{position:absolute;bottom:10px;left:0;right:0;display:flex;justify-content:center;gap:6px}.gallery__dot{width:6px;height:6px;border-radius:50%;background:#ffffff59}.gallery__dot.is-active{background:var(--gold)}.hall-gallery__meta{margin:8px 0 4px;font-size:13px;color:var(--text-dim)}.hall-gallery .dish-modal__body{flex:1;overflow-y:auto}.hall-gallery .dish-modal__cta+.dish-modal__cta{margin-top:10px}.address-map{display:flex;flex-direction:column;gap:14px}.address-map__panel{border:1px solid var(--line);border-radius:var(--r-lg);background:radial-gradient(120% 80% at 50% -20%,rgba(22,58,44,.35),transparent 55%),var(--surface);overflow:hidden}.address-map__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px 12px;border-bottom:1px solid var(--line-soft)}.address-map__label{font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;color:var(--text-dim)}.address-map__status{font-family:var(--font-grotesk);font-size:10.5px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--gold-soft);padding:5px 10px;border-radius:var(--r-pill);border:1px solid var(--line);background:#07120d59;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:58%}.address-map__status.is-busy{color:var(--text);border-color:var(--gold-dim);animation:map-status-pulse 1.4s var(--ease) infinite}.address-map__status.is-ok{color:var(--green);border-color:#9ad3a259;background:#9ad3a214}.address-map__status.is-warn{color:var(--danger);border-color:#d98a8a59;background:#d98a8a14}@keyframes map-status-pulse{0%,to{opacity:1}50%{opacity:.72}}.address-map__viewport{position:relative;min-height:260px;background:#ece8e0}.address-map__canvas{width:100%;height:260px}.address-map__veil{display:none}.address-map__pin{position:absolute;left:50%;top:50%;z-index:2;width:40px;height:52px;pointer-events:none;transform:translate(-50%,-100%)}.address-map__pin-icon{display:block;width:40px;height:52px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.35))}.address-map__pin-shadow{position:absolute;left:50%;bottom:-2px;width:14px;height:4px;border-radius:50%;background:#00000038;transform:translate(-50%);filter:blur(1px)}.address-map__anchor{position:absolute;left:50%;top:50%;z-index:2;width:8px;height:8px;pointer-events:none;border-radius:50%;background:#102a20;border:2px solid #ffffff;box-shadow:0 0 0 1px #0003;transform:translate(-50%,-50%)}.address-map__tools{position:absolute;right:12px;bottom:12px;z-index:3;display:flex;flex-direction:column;gap:6px}.address-map__tool{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(0,0,0,.12);border-radius:var(--r-sm);background:#fffffff0;box-shadow:0 2px 10px #00000024;color:#1c1c1c;font-family:var(--font-grotesk);font-size:18px;font-weight:600;line-height:1;transition:border-color .2s var(--ease),background .2s var(--ease),color .2s var(--ease)}.address-map__tool:active{background:#fff;border-color:var(--gold);color:var(--ink)}.address-map__tool--loc{font-size:14px;letter-spacing:0}.address-map__loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#0b1a14d1;color:var(--text-dim);font-family:var(--font-grotesk);font-size:11px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase}.address-map__loading-bar{width:120px;height:2px;border-radius:2px;background:var(--line-soft);overflow:hidden;position:relative}.address-map__loading-bar:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;width:40%;background:linear-gradient(90deg,transparent,var(--gold),transparent);animation:map-loading-sweep 1.2s var(--ease) infinite}@keyframes map-loading-sweep{0%{transform:translate(-120%)}to{transform:translate(320%)}}.address-map__overlay-note{position:absolute;left:14px;right:14px;bottom:14px;z-index:4;margin:0;padding:10px 12px;border-radius:var(--r-sm);border:1px solid rgba(217,138,138,.35);background:#0b1a14e6;color:var(--danger);font-size:12px;line-height:1.4}.address-map__note{margin:0}.address-map__viewport [class*=copyrights-promo],.address-map__viewport [class*=map-copyrights-promo]{display:none!important}.cart-sheet__hint{font-size:12px;color:var(--text-dim);line-height:1.45;margin-top:6px}@media (max-width: 360px){:root{--pad: 16px}.section__title{font-size:24px}.cart-sheet__title{font-size:22px}.checkout .field-row{gap:12px}}@media (max-width: 340px){.checkout .field-row{grid-template-columns:1fr}}@media (max-height: 520px) and (orientation: landscape){.sheet-overlay{align-items:flex-start;overflow-y:auto;-webkit-overflow-scrolling:touch}.sheet-overlay--center{padding-bottom:max(12px,var(--safe-b))}.checkout-sheet,.cart-sheet,.dish-modal,.sheet{max-height:none;margin-bottom:0}.checkout-sheet .checkout{flex:none;overflow:visible}}@media (min-width: 768px) and (min-height: 700px){.sheet-overlay--center .checkout-sheet{max-height:min(720px,88dvh)}}
