:root{color-scheme:dark;--k-ink: #0e0d0c;--k-ink-2: #1a1816;--k-ink-3: #24211e;--k-paper: #f4e9d8;--k-tomato: #e2462f;--k-tomato-hover: #f05a41;--k-olive: #8a9a4b;--bg-page: var(--k-ink);--bg-main: var(--k-ink);--bg-card: var(--k-ink-2);--bg-card-hover: #201d1a;--bg-muted: var(--k-ink-3);--bg-glass: var(--k-ink-2);--bg-input: rgba(255, 255, 255, .04);--ink: var(--k-tomato);--ink-hover: var(--k-tomato-hover);--primary: var(--k-tomato);--primary-hover: var(--k-tomato-hover);--primary-dark: #b8341f;--primary-ink: #ff7a63;--primary-soft: rgba(226, 70, 47, .14);--primary-soft-hover: rgba(226, 70, 47, .22);--primary-border: rgba(226, 70, 47, .5);--primary-glow: var(--primary-soft);--accent-gold: var(--k-paper);--accent-green: #b3c46a;--accent-green-bg: rgba(138, 154, 75, .16);--accent-green-border: rgba(138, 154, 75, .45);--danger: #ff7a63;--danger-bg: rgba(226, 70, 47, .12);--danger-border: rgba(226, 70, 47, .45);--warning: #f0c27a;--warning-bg: rgba(240, 194, 122, .1);--warning-border: rgba(240, 194, 122, .38);--text-primary: #ffffff;--text-heading: var(--k-paper);--text-secondary: rgba(255, 255, 255, .72);--text-muted: rgba(255, 255, 255, .5);--text-on-paper: var(--k-ink);--border-color: rgba(255, 255, 255, .16);--border-subtle: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .32);--border-focus: rgba(226, 70, 47, .7);--radius-sm: 2px;--radius-md: 3px;--radius-lg: 4px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 10px 28px rgba(0, 0, 0, .45);--shadow-lg: 0 24px 64px rgba(0, 0, 0, .6);--shadow-stamp: 4px 4px 0 var(--k-paper);--font-family: "Work Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "Nunito", "Arial Rounded MT Bold", system-ui, sans-serif;--hat-shape: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 60' preserveAspectRatio='none'%3E%3Cpath d='M12 9C40 1 70 11 98 5s68-6 90 4c9 9 7 30 2 42-28 9-58-1-90 4S34 61 9 52C1 41 3 18 12 9z'/%3E%3C/svg%3E");--hat-line: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 60' preserveAspectRatio='none'%3E%3Cpath d='M12 9C40 1 70 11 98 5s68-6 90 4c9 9 7 30 2 42-28 9-58-1-90 4S34 61 9 52C1 41 3 18 12 9z' fill='none' stroke='%23FFFFFF' stroke-width='2.6' vector-effect='non-scaling-stroke' stroke-linejoin='round'/%3E%3C/svg%3E");--hat-line-paper: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 60' preserveAspectRatio='none'%3E%3Cpath d='M12 9C40 1 70 11 98 5s68-6 90 4c9 9 7 30 2 42-28 9-58-1-90 4S34 61 9 52C1 41 3 18 12 9z' fill='none' stroke='%23F4E9D8' stroke-width='2.4' vector-effect='non-scaling-stroke' stroke-linejoin='round'/%3E%3C/svg%3E");--card-shape: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 200' preserveAspectRatio='none'%3E%3Cpath d='M6 14C50 2 96 20 150 9s104-6 144 6c-5 28 3 54-2 86 4 30-2 58 4 88-48 10-98-8-146 2S46 196 4 188c4-30-4-56 1-86-5-30 2-58 1-88z'/%3E%3C/svg%3E");--squiggle: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 8'%3E%3Cpath d='M0 5 C5 1 8 1 10 4 S15 7 20 3' fill='none' stroke='%23E2462F' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E");--squiggle-w: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 8'%3E%3Cpath d='M0 5 C5 1 8 1 10 4 S15 7 20 3' fill='none' stroke='%23F4E9D8' stroke-opacity='.55' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E")}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}body{background:var(--bg-page);color:var(--text-primary);font-family:var(--font-family);line-height:1.5;letter-spacing:-.005em;overflow-x:hidden;-webkit-font-smoothing:antialiased}button{cursor:pointer;border:none;background:none;font-family:inherit;transition:color .16s ease,background-color .16s ease,border-color .16s ease,transform .16s ease}input,textarea,select{font-family:inherit;color:inherit}h1,h2,h3{font-family:var(--font-display);font-weight:900}::selection{background:var(--k-tomato);color:#fff}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app-container{position:relative;max-width:1180px;min-height:100vh;margin:0 auto;padding:22px 24px 120px;background:var(--bg-main)}.access-lock-button{position:fixed;top:14px;left:14px;z-index:9999;display:flex;align-items:center;gap:5px;padding:7px 9px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-secondary);font-size:.68rem;font-weight:600;opacity:.8}.access-lock-button:hover{border-color:var(--border-strong);color:var(--text-primary);opacity:1}.access-gate{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:var(--bg-page)}.access-gate__card{width:min(100%,460px);padding:36px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-md);text-align:center}.access-gate__logo{display:block;width:112px;height:112px;margin:0 auto 14px;object-fit:contain}.access-gate__brand{color:var(--text-primary);font-size:1.02rem;font-weight:800;letter-spacing:-.02em}.access-gate__eyebrow{display:inline-flex;align-items:center;gap:7px;margin-top:18px;padding:7px 11px;border:1px solid var(--border-color);border-radius:var(--radius-full);background:var(--bg-muted);color:var(--text-secondary);font-size:.76rem;font-weight:700}.access-gate__title{margin-top:18px;color:var(--text-primary);font-size:clamp(1.55rem,5vw,1.9rem);font-weight:800;letter-spacing:-.035em;line-height:1.15}.access-gate__description{max-width:340px;margin:10px auto 0;color:var(--text-secondary);font-size:.9rem;line-height:1.6}.access-gate__notice{display:flex;align-items:flex-start;gap:9px;margin-top:22px;padding:11px 12px;border:1px solid;border-radius:var(--radius-sm);font-size:.82rem;font-weight:650;line-height:1.45;text-align:left}.access-gate__notice svg{flex:0 0 auto;margin-top:1px}.access-gate__notice--error{border-color:var(--danger-border);background:var(--danger-bg);color:var(--danger)}.access-gate__notice--success{border-color:var(--accent-green-border);background:var(--accent-green-bg);color:var(--accent-green)}.access-gate__form{display:grid;gap:10px;margin-top:24px;text-align:left}.access-gate__label{color:var(--text-primary);font-size:.79rem;font-weight:700}.access-gate__field{position:relative}.access-gate__input{width:100%;min-height:50px;padding:0 48px 0 15px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-primary);font-size:.94rem;font-weight:600;outline:none;transition:border-color .16s ease,box-shadow .16s ease}.access-gate__input::placeholder{color:var(--text-muted);font-weight:500}.access-gate__input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #e2462f38}.access-gate__input--error,.access-gate__input--error:focus{border-color:var(--danger);box-shadow:none}.access-gate__visibility{position:absolute;top:50%;right:10px;display:grid;place-items:center;width:34px;height:34px;transform:translateY(-50%);border-radius:var(--radius-md);color:var(--text-secondary)}.access-gate__visibility:hover{background:var(--bg-muted);color:var(--text-primary)}.access-gate__submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:50px;margin-top:4px;padding:0 18px;border-radius:var(--radius-sm);background:var(--primary);color:#fff;font-size:.91rem;font-weight:800}.access-gate__submit:hover:not(:disabled){background:var(--primary-hover)}.access-gate__submit:disabled{cursor:not-allowed;opacity:.48}.access-gate__submit--success,.access-gate__submit--success:hover{background:var(--accent-green)}.access-gate__address{margin-top:22px;color:var(--text-muted);font-size:.76rem;font-weight:600}@media (max-width: 520px){.access-gate{align-items:start;padding:20px 14px}.access-gate__card{padding:28px 20px}.access-gate__logo{width:98px;height:98px}}.hero{position:relative}.hero__topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 16px;border-bottom:1px solid var(--border-color)}.hero__brand{display:flex;align-items:center;gap:14px;min-width:0}.hero__brand-logo{display:block;width:56px;height:56px;object-fit:contain}.hero__brand-name{overflow:hidden;color:var(--text-primary);font-family:var(--font-display);font-size:1rem;font-weight:900;letter-spacing:.02em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.hero__monogram{display:grid;place-items:center;width:48px;height:48px;background:var(--k-paper);color:var(--k-ink);font-family:var(--font-display);font-size:1.2rem;font-weight:900}.hero__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:48px;padding:56px 0 44px}.hero__content{min-width:0}.hero__stache{display:block;width:82px;aspect-ratio:324 / 112;margin-bottom:26px;background:var(--k-tomato);-webkit-mask:url(/images/deco-stache.svg) center / contain no-repeat;mask:url(/images/deco-stache.svg) center / contain no-repeat}.hero__eyebrow{color:var(--text-secondary);font-family:var(--font-display);font-size:.82rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.hero__title{margin:14px 0 22px;color:var(--text-heading);font-family:var(--font-display);font-size:clamp(2.8rem,6.6vw,5.6rem);font-weight:900;line-height:.95;letter-spacing:-.035em;text-transform:lowercase}.hero__lead{max-width:48ch;color:var(--text-secondary);font-size:1.08rem;line-height:1.6}.hero__status{display:inline-flex;align-items:center;gap:9px;margin:22px 0 28px;padding:9px 20px 10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 60' preserveAspectRatio='none'%3E%3Cpath d='M12 9C40 1 70 11 98 5s68-6 90 4c9 9 7 30 2 42-28 9-58-1-90 4S34 61 9 52C1 41 3 18 12 9z' fill='none' stroke='%23B3C46A' stroke-width='2.4' vector-effect='non-scaling-stroke' stroke-linejoin='round'/%3E%3C/svg%3E") center / 100% 100% no-repeat;color:var(--accent-green);font-family:var(--font-display);font-size:.92rem;font-weight:800;text-transform:lowercase}.hero__status--closed{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 60' preserveAspectRatio='none'%3E%3Cpath d='M12 9C40 1 70 11 98 5s68-6 90 4c9 9 7 30 2 42-28 9-58-1-90 4S34 61 9 52C1 41 3 18 12 9z' fill='none' stroke='%23FF7A63' stroke-width='2.4' vector-effect='non-scaling-stroke' stroke-linejoin='round'/%3E%3C/svg%3E");color:var(--danger)}.hero__status--scheduled{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 60' preserveAspectRatio='none'%3E%3Cpath d='M12 9C40 1 70 11 98 5s68-6 90 4c9 9 7 30 2 42-28 9-58-1-90 4S34 61 9 52C1 41 3 18 12 9z' fill='none' stroke='%23F0C27A' stroke-width='2.4' vector-effect='non-scaling-stroke' stroke-linejoin='round'/%3E%3C/svg%3E");color:var(--warning)}.hero__status-dot{width:8px;height:8px;border-radius:50%;background:currentColor}.hero__status--open .hero__status-dot{animation:liveDotPulse 1.6s infinite ease-in-out}.hero__tagline{margin-bottom:18px;color:var(--text-primary);font-family:var(--font-display);font-size:clamp(1.15rem,2vw,1.4rem);font-weight:800;line-height:1.35}.hero__delivery{display:inline-grid;grid-template-columns:auto auto;align-items:center;column-gap:12px;margin-bottom:22px;padding:14px 26px 15px 22px;background:var(--k-paper);color:var(--k-ink);font-size:.95rem;font-weight:600;-webkit-mask:var(--card-shape) center / 100% 100% no-repeat;mask:var(--card-shape) center / 100% 100% no-repeat;transform:rotate(-1deg)}.hero__delivery svg{color:var(--k-tomato)}.hero__delivery-text{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px}.hero__delivery-main{display:inline-flex;align-items:baseline;gap:10px;white-space:nowrap}.hero__delivery strong{font-family:var(--font-display);font-size:1.05rem;font-weight:900;text-transform:lowercase}.hero__delivery-sep,.hero__delivery-min:before{color:var(--k-tomato);font-weight:900}.hero__delivery-min{white-space:nowrap}.hero__delivery-min:before{content:"·";margin-right:10px}.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.hero-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:54px;padding:0 28px;background:var(--hat-line) center / 100% 100% no-repeat;color:var(--text-primary);font-family:var(--font-display);font-size:1rem;font-weight:800;text-transform:lowercase;transition:transform .22s cubic-bezier(.3,1.6,.5,1),color .2s ease,background-color .2s ease}.hero-btn:hover{color:var(--k-tomato);transform:translateY(-2px) rotate(-1deg)}.hero-btn--primary{background:var(--k-tomato);color:#fff;-webkit-mask:var(--hat-shape) center / 100% 100% no-repeat;mask:var(--hat-shape) center / 100% 100% no-repeat}.hero-btn--primary:hover{background:var(--k-paper);color:var(--k-ink)}.hero__visual{position:relative;display:grid;place-items:center;justify-self:center;width:min(100%,400px);aspect-ratio:1}.hero__visual:before{content:"";position:absolute;top:12%;right:6%;bottom:6%;left:12%;background:var(--k-ink-2);box-shadow:10px 10px 0 var(--k-tomato);transform:rotate(3deg)}.hero__visual img{position:relative;z-index:1;width:82%;height:auto;filter:drop-shadow(0 18px 30px rgba(0,0,0,.55));transform:rotate(-5deg)}.hero__info{display:flex;flex-wrap:wrap;gap:10px 30px;padding:18px 0 0;border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.84rem;list-style:none}.hero__info li,.hero__info a{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none}.hero__info a:hover{color:var(--text-primary)}.hero__info svg{flex:0 0 auto;color:var(--k-tomato)}.language-selector{position:relative;z-index:100;display:inline-block}.language-selector-trigger{display:flex;align-items:center;gap:8px;padding:9px 16px;background:var(--hat-line) center / 100% 100% no-repeat;color:var(--text-primary);font-family:var(--font-display);font-size:.86rem;font-weight:800}.language-selector-trigger:hover{color:var(--k-tomato)}.language-selector-chevron{opacity:.7;transition:transform .2s ease}.language-selector-chevron.is-open{transform:rotate(180deg)}.language-selector-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:1000;display:flex;flex-direction:column;gap:2px;min-width:190px;padding:16px 12px;background:var(--k-paper);color:var(--k-ink);filter:drop-shadow(0 10px 18px rgba(0,0,0,.5));-webkit-mask:var(--card-shape) center / 100% 100% no-repeat;mask:var(--card-shape) center / 100% 100% no-repeat;animation:fadeIn .15s ease}.language-selector-option{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;color:var(--k-ink);font-family:var(--font-display);font-size:.95rem;font-weight:800;text-align:left;text-transform:lowercase}.language-selector-option:hover{background:#0e0d0c14}.language-selector-option.is-selected{background:var(--k-tomato);color:#fff;-webkit-mask:var(--hat-shape) center / 100% 100% no-repeat;mask:var(--hat-shape) center / 100% 100% no-repeat}.language-selector-option__label{display:flex;align-items:center;gap:10px}.active-order-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0 0;padding:16px 20px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card);cursor:pointer}.active-order-summary:hover{border-color:var(--border-strong)}.active-order-summary__main{display:flex;align-items:center;gap:12px;min-width:0}.active-order-summary__icon{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border-radius:var(--radius-md);background:var(--primary-soft);color:var(--primary-ink)}.active-order-summary__copy{min-width:0}.active-order-summary__heading{display:flex;align-items:center;gap:8px;color:var(--text-primary);font-size:.88rem;font-weight:700}.active-order-summary__status{display:inline-flex;align-items:center;gap:5px;color:var(--primary-ink);font-size:.72rem;font-weight:650}.active-order-summary__status:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--primary);animation:liveDotPulse 1.4s infinite ease-in-out}.active-order-summary__copy p{margin:3px 0 0;overflow:hidden;color:var(--text-secondary);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.active-order-summary__action{display:flex;align-items:center;gap:6px;flex:0 0 auto;padding:8px 12px;border-radius:var(--radius-md);background:var(--ink);color:#fff;font-size:.78rem;font-weight:700}.category-nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:8px;margin-top:30px;padding:12px 0;overflow-x:auto;border-bottom:1px solid var(--border-color);background:var(--bg-main);scrollbar-width:none}.category-nav::-webkit-scrollbar{display:none}.category-tab{flex:none;padding:9px 18px;border:2px solid var(--border-color);border-radius:var(--radius-full);color:var(--text-heading);font-family:var(--font-display);font-size:.95rem;font-weight:800;text-transform:lowercase;white-space:nowrap}.category-tab:hover{border-color:var(--border-strong);background:#ffffff0d}.category-tab.active{border-color:var(--k-tomato);background:var(--k-tomato);color:#fff}.menu-section{margin-top:34px;border:1px solid var(--border-color);background:#ffffff04;scroll-margin-top:80px}.menu-section__head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;min-height:132px;border-bottom:1px solid var(--border-color);background:var(--k-ink-2)}.menu-section__titles{align-self:center;padding:24px 30px}.section-title{color:var(--text-heading);font-family:var(--font-display);font-size:clamp(1.9rem,3.6vw,2.8rem);font-weight:900;line-height:1.05;letter-spacing:-.02em;text-transform:lowercase}.section-count{margin-top:6px;color:var(--text-muted);font-size:.92rem}.section-desc{max-width:640px;margin-top:8px;color:var(--text-heading);font-size:.9rem;font-style:italic;line-height:1.5;opacity:.85}.menu-section__badge{display:grid;place-items:center;width:140px}.menu-section__badge--tomato{background:var(--k-tomato);color:#fff}.menu-section__badge--paper{background:var(--k-paper);color:var(--k-ink)}.menu-section__badge--olive{background:var(--k-olive);color:var(--k-ink)}.products-grid{display:grid;grid-template-columns:minmax(0,1fr);padding:4px 30px 14px}.desktop-products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:0 32px}.product-card{position:relative;display:flex;align-items:center;gap:18px;padding:18px 0;border-top:1px solid var(--border-color);cursor:pointer}.products-grid>.product-card:first-child{border-top:0}.product-info{flex:1;min-width:0}.product-row{display:flex;align-items:baseline;gap:12px}.product-name{min-width:0;color:var(--text-heading);font-family:var(--font-display);font-size:1.2rem;font-weight:900;line-height:1.25;transition:color .18s ease}.product-card:hover .product-name,.product-card.is-in-cart .product-name{color:#fff}.product-dots{flex:1 1 24px;min-width:24px;border-bottom:2px dotted var(--border-strong);transform:translateY(-5px)}.product-price{flex:none;color:var(--text-primary);font-size:1.02rem;font-weight:700;white-space:nowrap}.product-desc{display:-webkit-box;margin-top:4px;overflow:hidden;color:var(--text-muted);font-size:.92rem;font-style:italic;line-height:1.5;-webkit-line-clamp:2;-webkit-box-orient:vertical}.product-price-note{margin-top:3px;color:var(--text-muted);line-height:1.25}.product-image-container{flex:none;width:84px;height:84px;overflow:hidden;background:var(--bg-muted)}.product-img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s cubic-bezier(.16,1,.3,1)}.product-card:hover .product-img{transform:scale(1.05)}.product-action{flex:none}.add-btn{display:grid;place-items:center;width:40px;height:40px;border:2px solid var(--k-tomato);border-radius:50%;color:var(--k-tomato)}.add-btn:hover,.product-card:hover .add-btn{background:var(--k-tomato);color:#fff;transform:rotate(-8deg) scale(1.06)}.add-btn--active{background:var(--k-tomato);color:#fff}.add-btn--active:hover,.product-card:hover .add-btn--active{border-color:var(--k-tomato-hover);background:var(--k-tomato-hover)}.add-btn__count{font-family:var(--font-display);font-size:.95rem;font-weight:900}.counter-group{display:inline-flex;align-items:center;padding:3px;border:2px solid var(--k-tomato);border-radius:var(--radius-full);color:var(--text-primary)}.counter-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;color:var(--text-primary)}.counter-btn:hover{background:var(--k-tomato);color:#fff}.counter-val{min-width:22px;color:var(--text-primary);font-family:var(--font-display);font-size:.95rem;font-weight:900;text-align:center}.cart-bar-wrapper{position:fixed;right:0;bottom:0;left:0;z-index:50;padding:18px 18px max(14px,env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,rgba(14,13,12,.94) 48%,var(--bg-main));pointer-events:none}.cart-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;max-width:760px;margin:0 auto;padding:16px 26px;background:var(--k-tomato);color:#fff;filter:drop-shadow(0 10px 22px rgba(0,0,0,.55));pointer-events:auto;-webkit-mask:var(--hat-shape) center / 100% 100% no-repeat;mask:var(--hat-shape) center / 100% 100% no-repeat}.cart-bar:hover{background:var(--k-tomato-hover)}.cart-bar--closed,.cart-bar--closed:hover{background:var(--k-paper);color:var(--k-ink)}.cart-bar-left{display:flex;align-items:center;flex-shrink:0;gap:12px}.cart-badge-count{padding:4px 10px;background:#0000002e;font-size:.82rem;font-weight:700;white-space:nowrap}.cart-bar-subtotal{font-family:var(--font-display);font-size:1.2rem;font-weight:900;white-space:nowrap}.cart-bar-right{display:flex;align-items:center;gap:8px;min-width:0;margin-left:auto;font-family:var(--font-display);font-size:1rem;font-weight:800;text-transform:lowercase;white-space:nowrap}.cart-bar-right span{overflow:hidden;text-overflow:ellipsis}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;flex-direction:column;justify-content:flex-end;background:#000000b8;animation:fadeIn .2s ease-out}.sheet-container{display:flex;flex-direction:column;max-height:94vh;max-height:94dvh;border-top:1px solid var(--border-color);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--bg-card);color:var(--text-primary);animation:slideUp .25s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes zoomInModal{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}@media (min-width: 640px){.modal-backdrop{align-items:center;justify-content:center;padding:24px}.sheet-container{width:100%;max-width:520px;margin:0 auto;border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:zoomInModal .2s cubic-bezier(.16,1,.3,1)}}.sheet-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border-color)}.sheet-title{color:var(--text-heading);font-family:var(--font-display);font-size:1.35rem;font-weight:900;text-transform:lowercase}.close-icon-btn{padding:6px;border-radius:var(--radius-full);color:var(--text-secondary)}.close-icon-btn:hover{background:var(--bg-muted);color:var(--text-primary)}.sheet-body{flex:1;padding:14px 16px;overflow-y:auto;-webkit-overflow-scrolling:touch}@media (min-width: 640px){.sheet-body{padding:20px}}.notice-dialog{width:calc(100% - 32px);max-width:440px;margin:auto;padding:24px;border-radius:var(--radius-lg)}.notice-dialog__head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.notice-dialog__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--bg-muted);color:var(--text-primary)}.notice-dialog__icon--danger{background:var(--danger-bg);color:var(--danger)}.notice-dialog__title{margin-bottom:8px;color:var(--text-heading);font-size:1.45rem;font-weight:900;line-height:1.15}.notice-dialog__text{margin-bottom:10px;color:var(--text-secondary);font-size:.9rem;line-height:1.55}.notice-dialog__subtext{margin-bottom:22px;color:var(--text-muted);font-size:.84rem;line-height:1.45}.notice-dialog__actions{display:flex;flex-direction:column;gap:10px}.btn-secondary-action{width:100%;padding:15px;background:var(--hat-line-paper) center / 100% 100% no-repeat;color:var(--text-heading);font-family:var(--font-display);font-size:.98rem;font-weight:800;text-transform:lowercase}.btn-secondary-action:hover{color:var(--k-tomato)}.segmented{display:flex;gap:4px;padding:6px;background:var(--hat-line-paper) center / 100% 100% no-repeat}.segmented__option{display:inline-flex;flex:1 1 0;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:7px 12px;border-radius:var(--radius-md);color:var(--text-secondary);font-size:.84rem;font-weight:650;text-align:center;line-height:1.25}.segmented__option:hover{color:var(--text-primary)}.segmented__option.is-active{background:var(--k-tomato);color:#fff;-webkit-mask:var(--hat-shape) center / 100% 100% no-repeat;mask:var(--hat-shape) center / 100% 100% no-repeat}.segmented__count{min-width:20px;padding:1px 6px;border-radius:var(--radius-md);background:var(--border-subtle);color:var(--text-muted);font-size:.7rem;font-weight:700}.segmented__option.is-active .segmented__count{background:#0003;color:#fff}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-muted);color:var(--text-secondary);font-size:.68rem;font-weight:700;white-space:nowrap}.tag--accent{border-color:var(--primary-border);background:var(--primary-soft);color:var(--primary-ink)}.tag--success{border-color:var(--accent-green-border);background:var(--accent-green-bg);color:var(--accent-green)}.upsell-backdrop{z-index:1050}.upsell{display:flex;flex-direction:column;width:100%;max-height:92vh;max-height:92dvh;overflow:hidden;border-top:1px solid var(--border-color);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--bg-card);color:var(--text-primary);animation:slideUp .25s cubic-bezier(.16,1,.3,1)}@media (min-width: 640px){.upsell{max-width:560px;margin:0 auto;border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:zoomInModal .2s cubic-bezier(.16,1,.3,1)}}.upsell__header{padding:18px 22px;border-bottom:1px solid var(--border-color)}.upsell__header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.upsell__eyebrow{color:var(--primary-ink);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.upsell__title{margin-bottom:6px;font-size:1.3rem;font-weight:780;line-height:1.25;letter-spacing:-.025em}.upsell__subtitle{color:var(--text-secondary);font-size:.86rem;line-height:1.5}.upsell__header .segmented{margin-top:16px}.upsell__list{display:flex;flex:1;flex-direction:column;min-height:0;padding:8px 22px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.upsell-item{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--border-subtle)}.upsell-item:last-child{border-bottom:0}.upsell-item.is-clickable{cursor:pointer}.upsell-item__media{flex:0 0 auto;width:60px;height:60px;overflow:hidden;border-radius:var(--radius-md);background:var(--bg-muted)}.upsell-item__media img{display:block;width:100%;height:100%;object-fit:cover}.upsell-item__info{flex:1;min-width:0}.upsell-item__name-row{display:flex;align-items:center;gap:6px;min-width:0}.upsell-item__name{overflow:hidden;font-size:.94rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.upsell-item__desc{margin-top:2px;overflow:hidden;color:var(--text-secondary);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.upsell-item__chosen{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.upsell-item__price{margin-top:4px;font-size:.9rem;font-weight:760}.upsell-item__action{flex:0 0 auto}.upsell-item.is-in-cart .upsell-item__price{color:var(--primary-ink)}.upsell__footer{display:flex;gap:10px;padding:14px 22px max(14px,env(safe-area-inset-bottom));border-top:1px solid var(--border-color)}.upsell__footer .btn-secondary-action{flex:0 1 auto;width:auto;padding:13px 18px}.upsell__footer .btn-primary-action{flex:1;padding:13px 18px;font-size:.94rem}.form-group{margin-bottom:16px}.form-label{display:block;margin-bottom:2px;color:var(--text-muted);font-size:.82rem;font-weight:600;letter-spacing:.02em}.form-input,.form-textarea{width:100%;padding:10px 2px 14px;border:0;border-radius:0;background:var(--squiggle-w) repeat-x left bottom / 16px 7px;color:var(--text-primary);font-size:1rem;outline:none;transition:background-color .16s ease}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-input:focus,.form-textarea:focus{background-image:var(--squiggle)}.btn-primary-action{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:18px 16px;background:var(--k-tomato);color:#fff;font-family:var(--font-display);font-size:1.05rem;font-weight:900;text-transform:lowercase;-webkit-mask:var(--hat-shape) center / 100% 100% no-repeat;mask:var(--hat-shape) center / 100% 100% no-repeat}.btn-primary-action:hover:not(:disabled){background:var(--k-tomato-hover)}.btn-primary-action:disabled{opacity:.5;cursor:not-allowed}.spin{animation:spin .8s linear infinite}.checkout{max-width:600px}.checkout__header{flex-shrink:0;padding:16px 20px}.checkout__subtitle{color:var(--text-muted);font-size:.76rem;font-weight:550}.checkout__notice{display:flex;flex-shrink:0;align-items:center;gap:8px;padding:8px 20px;border-bottom:1px solid var(--border-subtle);background:var(--bg-card-hover);color:var(--text-secondary);font-size:.76rem}.checkout__body{padding:20px}.checkout__form{display:flex;flex-direction:column;gap:16px}.checkout__form .form-group{margin-bottom:0}.checkout-steps{display:flex;flex-shrink:0;align-items:center;gap:8px;padding:12px 20px;border-bottom:1px solid var(--border-color);list-style:none}.checkout-steps__item{display:flex;align-items:center;flex:0 1 auto;gap:8px;min-width:0;color:var(--text-muted);font-size:.76rem;font-weight:600}.checkout-steps__badge{display:grid;place-items:center;flex:0 0 auto;width:22px;height:22px;border:1px solid var(--border-strong);border-radius:50%;background:var(--bg-card);color:var(--text-muted);font-size:.7rem;font-weight:750}.checkout-steps__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checkout-steps__item.is-active{color:var(--text-primary);font-weight:700}.checkout-steps__item.is-active .checkout-steps__badge{border-color:var(--primary);background:var(--primary);color:#fff}.checkout-steps__item.is-done{color:var(--text-secondary)}.checkout-steps__item.is-done .checkout-steps__badge{border-color:var(--ink);background:var(--ink);color:#fff}.checkout-steps__item.is-skipped{opacity:.45}.checkout-steps__item.is-skipped .checkout-steps__label{text-decoration:line-through}.checkout-steps__line{flex:1 1 12px;min-width:12px;height:1px;background:var(--border-strong)}.checkout-steps__line.is-done{background:var(--ink)}@media (max-width: 520px){.checkout-steps__item:not(.is-active) .checkout-steps__label{display:none}}.inline-alert{display:flex;flex-shrink:0;align-items:center;gap:8px;padding:10px 20px;font-size:.84rem;font-weight:600}.inline-alert svg{flex-shrink:0}.inline-alert--danger{border-bottom:1px solid var(--danger-border);background:var(--danger-bg);color:var(--danger)}.form-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.form-hint{display:flex;align-items:flex-start;gap:6px;margin-bottom:8px;color:var(--text-secondary);font-size:.76rem;line-height:1.45}.form-hint svg{flex-shrink:0;margin-top:2px;color:var(--accent-green)}.input-with-icon{position:relative}.input-with-icon .form-input{padding-right:40px}.input-with-icon__icon{position:absolute;top:50%;right:14px;margin-top:-8px;color:var(--text-muted)}select.form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238f8e87' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;font-weight:600;cursor:pointer}.text-link{padding:0;color:var(--text-primary);font-size:inherit;font-weight:650;text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:2px}.text-link:hover{text-decoration-color:currentColor}.info-card{padding:16px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card-hover)}.info-card__head{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.info-card__icon{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary)}.info-card__title{color:var(--text-primary);font-size:.92rem;font-weight:720}.info-card__meta{display:flex;align-items:center;gap:5px;margin-top:3px;color:var(--text-secondary);font-size:.82rem}.info-card__text{margin-top:6px;color:var(--text-secondary);font-size:.8rem;line-height:1.5}.loyalty-note{margin-top:10px;padding:12px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card-hover);font-size:.82rem;line-height:1.45}.loyalty-note--reward{border-color:var(--accent-green-border);background:var(--accent-green-bg)}.loyalty-note__title{display:flex;align-items:center;gap:6px;margin-bottom:2px;color:var(--text-primary);font-weight:700}.loyalty-note--reward .loyalty-note__title{color:var(--accent-green)}.loyalty-note__reward{display:flex;align-items:center;gap:6px;color:var(--text-primary);font-weight:700}.loyalty-note__meta{margin-top:2px;color:var(--text-secondary);font-size:.76rem}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice-card{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-secondary);text-align:left}.choice-card:hover{border-color:var(--border-strong)}.choice-card.is-selected{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);color:var(--text-primary)}.choice-card__head{display:flex;align-items:center;gap:8px}.choice-card__label{flex:1;color:var(--text-primary);font-size:.9rem;font-weight:700}.choice-card__radio{width:18px;height:18px;border:1.5px solid var(--border-strong);border-radius:50%;background:var(--bg-card)}.choice-card.is-selected .choice-card__radio{border:5px solid var(--ink)}.choice-card__desc{color:var(--text-muted);font-size:.74rem;line-height:1.4}.review-card{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card)}.review-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border-subtle)}.review-card__title{display:flex;align-items:center;gap:8px;font-size:.92rem;font-weight:720}.review-card__facts{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border-bottom:1px solid var(--border-subtle);font-size:.84rem}.review-card__facts>div{display:grid;grid-template-columns:72px 1fr;gap:10px}.review-card__facts dt{color:var(--text-muted)}.review-card__facts dd{color:var(--text-primary);font-weight:600}.review-card__facts small{display:block;color:var(--text-muted);font-size:.76rem;font-weight:500}.review-card__items{display:flex;flex-direction:column;gap:10px;padding:14px 16px;list-style:none}.review-card__items li{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;font-size:.84rem}.review-card__item-name{display:block;color:var(--text-primary);font-weight:650}.review-card__item-extra{display:block;margin-top:1px;color:var(--text-muted);font-size:.76rem}.review-card__item-price{color:var(--text-primary);font-weight:700;white-space:nowrap}.price-summary{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card-hover)}.price-summary__row{display:flex;justify-content:space-between;gap:12px;color:var(--text-secondary);font-size:.86rem}.price-summary__free,.price-summary__row--positive{color:var(--accent-green);font-weight:650}.price-summary__total{display:flex;justify-content:space-between;margin-top:6px;padding-top:10px;border-top:1px solid var(--border-color);color:var(--text-primary);font-size:1.08rem;font-weight:800}.legal-note{display:flex;flex-direction:column;gap:6px;color:var(--text-muted);font-size:.76rem;line-height:1.5}.legal-note__title{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-weight:700}.checkout-actions{display:flex;gap:10px}.checkout-actions .btn-secondary-action{display:flex;flex:1;align-items:center;justify-content:center;gap:6px;width:auto}.checkout-actions .btn-primary-action{flex:2;padding:14px 16px;font-size:.94rem}.checkout-actions--end{margin-top:4px}.checkout__body .checkout-actions{position:sticky;bottom:-20px;z-index:5;margin:0 -20px -20px;padding:12px 20px max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--border-color);background:var(--bg-card)}.checkout__body .checkout__form{min-height:100%}.checkout__body .checkout-actions{margin-top:auto}.checkout-actions .btn-primary-action{white-space:nowrap}@media (max-width: 520px){.checkout-actions .btn-secondary-action{flex:0 0 52px;padding:0}.checkout-actions .btn-secondary-action span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}.checkout-location__search{flex-shrink:0;padding:12px 16px 10px}.checkout-location__footer{display:flex;flex-direction:column;flex-shrink:0;gap:10px;padding:12px 16px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--border-color);background:var(--bg-card)}.checkout-location__footer .form-input{padding:10px 14px;font-size:.86rem}.address-field{position:relative;width:100%}.address-field__control{display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-input);transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.address-field__control:focus-within{border-color:var(--primary);background:var(--bg-card);box-shadow:0 0 0 3px #e2462f38}.address-field__control.is-valid{border-color:var(--accent-green);background:var(--bg-card)}.address-field__control.is-invalid{border-color:var(--danger);background:var(--bg-card)}.address-field__icon{flex-shrink:0;color:var(--text-muted)}.address-field__control.is-valid .address-field__icon{color:var(--accent-green)}.address-field__input{flex:1;min-width:0;padding:11px 0;border:none;outline:none;background:transparent;color:var(--text-primary);font-size:.92rem}.address-field__input::placeholder{color:var(--text-muted)}.address-field__clear{display:flex;align-items:center;padding:4px;border-radius:50%;color:var(--text-muted)}.address-field__clear:hover{background:var(--bg-muted);color:var(--text-primary)}.address-field__towns{display:flex;align-items:center;gap:6px;margin-top:8px;padding-bottom:2px;overflow-x:auto;white-space:nowrap;scrollbar-width:none;-webkit-overflow-scrolling:touch}.address-field__towns::-webkit-scrollbar{display:none}.address-field__towns-label{flex-shrink:0;margin-right:2px;color:var(--text-muted);font-size:.74rem}.chip{flex-shrink:0;padding:5px 11px;border:1px solid var(--border-color);border-radius:var(--radius-full);background:var(--bg-card);color:var(--text-secondary);font-size:.76rem;font-weight:600;touch-action:manipulation}.chip:hover{border-color:var(--border-strong);color:var(--text-primary)}.address-field__menu{position:absolute;top:48px;right:0;left:0;z-index:1500;max-height:260px;overflow-y:auto;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);box-shadow:var(--shadow-md)}.address-field__option{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border-subtle);cursor:pointer}.address-field__option:last-child{border-bottom:0}.address-field__option.is-active{background:var(--bg-muted)}.address-field__option-icon{flex-shrink:0;color:var(--text-muted)}.address-field__option-text{flex:1;min-width:0}.address-field__option-title{overflow:hidden;color:var(--text-primary);font-size:.88rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.address-field__option-meta{color:var(--text-muted);font-size:.74rem}.address-field__empty{padding:14px;color:var(--text-secondary);font-size:.78rem;text-align:center}.address-field__empty-title{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:4px;color:var(--danger);font-size:.86rem;font-weight:650}.zone-map{position:relative;overflow:hidden;border:1px solid var(--border-color);background:var(--bg-muted)}.zone-map.is-valid{border-color:var(--accent-green)}.zone-map.is-invalid{border-color:var(--danger)}.zone-map--inline{width:100%;height:clamp(320px,48vh,480px);border-radius:var(--radius-md)}.zone-map--fill{flex:1;width:100%;height:100%;min-height:0;border-radius:var(--radius-md)}.zone-map--expanded{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:flex;flex-direction:column;width:100vw;height:100vh;border:0}.zone-map__topbar{position:absolute;top:0;right:0;left:0;z-index:3100;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-color);background:var(--bg-card)}.zone-map__topbar-title{color:var(--text-primary);font-size:.94rem;font-weight:750}.zone-map__topbar-text{color:var(--text-secondary);font-size:.76rem}.zone-map__controls{position:absolute;right:12px;z-index:1000;display:flex;flex-direction:column;gap:6px}.map-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);box-shadow:var(--shadow-md);color:var(--text-primary);font-size:.8rem;font-weight:650}.map-btn:hover{border-color:var(--border-strong);background:var(--bg-card-hover)}.map-btn:disabled{opacity:.6;cursor:wait}.map-btn--dark{border-color:var(--ink);background:var(--ink);color:#fff;box-shadow:none}.map-btn--dark:hover{border-color:var(--ink-hover);background:var(--ink-hover)}.zone-map__footer{position:absolute;right:12px;bottom:12px;left:12px;z-index:1000;display:flex;flex-direction:column;gap:8px}.zone-map__confirm{box-shadow:var(--shadow-md)}.map-status{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);box-shadow:var(--shadow-md);color:var(--text-secondary);font-size:.78rem;font-weight:550;line-height:1.4}.map-status svg{flex-shrink:0}.map-status--success{border-color:var(--accent-green-border);color:var(--accent-green);font-weight:650}.map-status--danger{border-color:var(--danger-border);color:var(--danger);font-weight:650}.map-pin{display:flex;flex-direction:column;align-items:center;cursor:grab;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 4px 6px rgba(0,0,0,.25))}.map-pin__head{display:grid;place-items:center;width:34px;height:34px;border:3px solid #fff;border-radius:50%;background:var(--k-olive)}.map-pin--invalid .map-pin__head{background:var(--danger)}.map-pin__dot{width:10px;height:10px;border-radius:50%;background:#fff}.map-pin__tail{width:3px;height:10px;margin-top:-1px;border-radius:0 0 2px 2px;background:#fff}.leaflet-container .leaflet-control-zoom{overflow:hidden;border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.leaflet-container .leaflet-control-zoom a{border-color:var(--border-subtle);background:var(--bg-card);color:var(--text-primary)}.leaflet-container .leaflet-control-zoom a:hover{background:var(--k-tomato);color:#fff}.status-page{display:flex;flex-direction:column;gap:16px;max-width:720px;min-height:100vh;margin:0 auto;padding:20px 20px 48px}.status-page--center{align-items:center;justify-content:center;gap:14px;text-align:center}.status-page__muted{color:var(--text-secondary);font-size:.9rem}.status-page__bar{display:flex;align-items:center;justify-content:space-between;gap:12px}.status-back{display:inline-flex;align-items:center;gap:6px;padding:8px 12px 8px 8px;border-radius:var(--radius-md);color:var(--text-secondary);font-size:.86rem;font-weight:650}.status-back:hover{background:var(--bg-card);color:var(--text-primary)}.status-card{padding:24px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card);color:var(--text-primary)}.status-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}.status-card__eyebrow{margin-bottom:4px;color:var(--text-muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.status-card__order{font-size:1.6rem;font-weight:800;line-height:1.15;letter-spacing:-.03em}.status-card__title{font-size:1.25rem;font-weight:780}.status-card__section-title{margin-bottom:12px;font-size:1rem;font-weight:750;letter-spacing:-.01em}.status-card__section-title:not(:first-child){margin-top:24px}.status-now{padding:18px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card-hover)}.status-now__label{font-size:1.2rem;font-weight:780;letter-spacing:-.02em}.status-now__desc{margin-top:2px;color:var(--text-secondary);font-size:.88rem}.status-now__meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.status-now__meta:empty{display:none}.status-progress{display:flex;gap:4px;margin-top:16px}.status-progress__seg{flex:1;height:4px;border-radius:2px;background:var(--border-color)}.status-progress__seg.is-done{background:var(--ink)}.status-progress__seg.is-active{background:var(--primary)}.status-callout{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--danger-border);border-radius:var(--radius-md);background:var(--danger-bg);color:var(--danger)}.status-callout>svg{flex-shrink:0;margin-top:1px}.status-callout__title{font-size:.98rem;font-weight:750}.status-callout p{margin-top:4px;color:var(--text-secondary);font-size:.86rem;line-height:1.5}.status-callout__action{display:inline-flex;align-items:center;gap:6px;width:auto;margin-top:12px;padding:9px 14px;text-decoration:none}.status-thanks{padding:32px 24px;text-align:center}.status-thanks__title{margin-top:14px;font-size:1.5rem;font-weight:800;letter-spacing:-.03em}.status-thanks__subtitle{margin-top:2px;color:var(--primary-ink);font-size:1rem;font-weight:700}.status-thanks__text{max-width:460px;margin:12px auto 0;color:var(--text-secondary);font-size:.9rem;line-height:1.6}.status-thanks__signature{margin-top:10px;color:var(--text-muted);font-size:.84rem;font-style:italic}.status-thanks__action{width:auto;margin:22px auto 0;padding:13px 24px;font-size:.94rem}.status-link{color:inherit;text-decoration:none}.status-link:hover{color:var(--text-primary)}.status-details{display:flex;flex-direction:column;gap:8px;font-size:.88rem}.status-details>div{display:grid;grid-template-columns:140px 1fr;gap:12px}.status-details dt{color:var(--text-muted)}.status-details dd{color:var(--text-primary);font-weight:600}.status-items{margin-bottom:14px;padding:0}.status-items li{padding-bottom:10px;border-bottom:1px solid var(--border-subtle)}.status-page__credits{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 0;color:var(--text-muted);font-size:.74rem;text-align:center}.status-page__credits strong{color:var(--text-secondary);font-weight:650}.status-map-toggle{display:flex;flex-direction:column;align-items:center;gap:12px}.status-map-toggle .chip{display:inline-flex;align-items:center;gap:6px}.status-map-toggle>.tracking-map{width:100%}.status-map-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:280px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card);color:var(--text-muted);font-size:.85rem}.tracking-map{overflow:hidden;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card)}.tracking-map__head{display:flex;flex-direction:column;gap:8px;padding:16px 20px;border-bottom:1px solid var(--border-color)}.tracking-map__status{display:flex;align-items:center;gap:10px;font-size:.92rem}.tracking-map__dot{flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--border-strong)}.tracking-map__dot.is-live{background:var(--accent-green);animation:liveDotPulse 1.4s infinite ease-in-out}.tracking-map__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.tracking-map__reading{color:var(--text-muted);font-size:.76rem}.tracking-map__warning{color:var(--danger);font-size:.8rem}.tracking-map__note{margin-top:4px}.tracking-map__canvas{position:relative;width:100%;height:360px}.tracking-map__controls{position:absolute;top:12px;right:12px;z-index:1000;display:flex;flex-direction:column;gap:6px}@media (max-width: 520px){.status-page{padding:14px 12px 40px;gap:12px}.status-card{padding:18px 16px}.status-card__order{font-size:1.35rem}.status-details>div{grid-template-columns:1fr;gap:0}.tracking-map__head{padding:14px 16px}.tracking-map__canvas{height:320px}}.stepper{position:relative;display:flex;flex-direction:column;gap:18px;margin:24px 0 0;list-style:none}.step-item{position:relative;display:flex;align-items:flex-start;gap:14px}.step-item:after{content:"";position:absolute;top:34px;bottom:-18px;left:15px;width:2px;background:var(--border-subtle)}.step-item:last-child:after{display:none}.step-item.completed:after{background:var(--ink)}.step-indicator{z-index:2;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;border:1.5px solid var(--border-color);border-radius:50%;background:var(--bg-card);color:var(--text-muted);transition:background .3s ease,border-color .3s ease}.step-item.completed .step-indicator{border-color:var(--ink);background:var(--ink);color:#fff}.step-item.active .step-indicator{position:relative;z-index:3;border-color:var(--primary);background:var(--primary);color:#fff}.step-item.active .step-indicator:before{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;z-index:-1;border:2px solid var(--primary);border-radius:50%;opacity:0;animation:stepPulseRadar 2.2s cubic-bezier(.2,.8,.25,1) infinite;pointer-events:none}@keyframes stepPulseRadar{0%{transform:scale(.85);opacity:.5}70%,to{transform:scale(1.4);opacity:0}}.step-live-dot{display:inline-block;flex-shrink:0;width:7px;height:7px;border-radius:50%;background:var(--primary);animation:liveDotPulse 1.4s infinite ease-in-out}@keyframes liveDotPulse{0%,to{opacity:.4}50%{opacity:1}}.step-item.rejected .step-indicator{border-color:var(--danger);background:var(--danger);color:#fff}.step-item.rejected .step-content h4{color:var(--danger)}.step-content{padding-top:5px}.step-content h4{display:flex;align-items:center;gap:8px;margin-bottom:1px;color:var(--text-muted);font-size:.92rem;font-weight:650}.step-content p{color:var(--text-muted);font-size:.78rem}.step-item.completed .step-content h4{color:var(--text-primary)}.step-item.active .step-content h4{color:var(--text-primary);font-weight:750}.step-item.active .step-content p,.step-item.rejected .step-content p{color:var(--text-secondary)}@keyframes pulseCourier{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.checkout-modal-backdrop-step2{align-items:stretch!important;justify-content:stretch!important;padding:0!important}.checkout-sheet-step2{display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;height:100vh!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;overflow:hidden!important;border:none!important;border-radius:0!important}@media (min-width: 640px){.checkout-modal-backdrop-step2{align-items:center!important;justify-content:center!important;padding:20px!important}.checkout-sheet-step2{max-width:640px!important;height:92vh!important;height:92dvh!important;max-height:880px!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-lg)!important}}.checkout-step2-layout{display:flex;flex:1;flex-direction:column;height:100%;min-height:0;overflow:hidden!important}.checkout-step2-map-wrapper{position:relative;display:flex;flex:1 1 0%;height:100%;min-height:0;padding:0 14px 6px;overflow:hidden}@media (max-width: 639px){.checkout-step2-map-wrapper{padding:0 10px 4px}}.test-mode-banner{position:relative;z-index:100;display:flex;align-items:center;justify-content:center;min-height:38px;padding:7px 42px 7px 14px;background:#252520;color:#c9c8c2;font-size:.72rem}.test-mode-content{display:flex;align-items:center;justify-content:center;gap:10px;max-width:1100px;text-align:center}.test-mode-label{display:inline-flex;align-items:center;flex:0 0 auto;gap:5px;color:#ff9a6f;font-size:.64rem;font-weight:700;letter-spacing:.08em}.test-mode-message{line-height:1.35}.test-mode-close{position:absolute;top:50%;right:10px;display:grid;place-items:center;width:24px;height:24px;padding:0;border-radius:4px;color:var(--text-muted);transform:translateY(-50%)}.test-mode-close:hover{background:#ffffff14;color:#e4e3dd}.test-mode-minimized{position:fixed;bottom:76px;left:14px;z-index:9999;display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);box-shadow:var(--shadow-md);color:var(--primary-ink);font-size:.66rem;font-weight:700;letter-spacing:.05em;cursor:pointer}footer{position:relative;margin:64px -24px -120px!important;border-top:0!important;background:var(--k-ink-2)!important;color:var(--text-muted)!important}footer:before{content:"";position:absolute;top:-4px;right:0;left:0;height:8px;background:var(--squiggle) repeat-x left center / 18px 8px}.product-customize-backdrop{background:#000000b8!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.product-customize-panel{max-width:600px!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-lg)!important;background:var(--bg-card)!important;box-shadow:var(--shadow-lg)!important;color:var(--text-primary)!important}.product-customize-close{width:38px!important;height:38px!important;border:1px solid var(--border-color)!important;background:var(--bg-card)!important;box-shadow:var(--shadow-sm)!important;color:var(--text-primary)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.product-customize-image-mask{background:none!important}.product-customize-body{gap:18px!important;background:var(--bg-card);scrollbar-color:var(--border-strong) transparent!important}.product-customize-title{color:var(--text-primary)!important;font-size:1.45rem!important;font-weight:780!important;letter-spacing:-.025em}.product-customize-description{color:var(--text-secondary)!important}.product-customize-price{color:var(--text-primary)!important;font-weight:780!important}.product-customize-section{border:1px solid var(--border-color)!important;border-radius:var(--radius-lg)!important;background:var(--bg-card-hover)!important}.product-customize-section div,.product-customize-body>div>div>div{color:inherit}.product-customize-body .interactive-addon-row{border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;background:var(--bg-card)!important;box-shadow:none!important;transform:none!important}.product-customize-body .interactive-addon-row:hover{border-color:var(--border-strong)!important;background:var(--bg-card-hover)!important}.product-customize-body .interactive-addon-row.is-selected{border-color:var(--primary)!important;background:var(--primary-soft)!important}.product-customize-body .interactive-addon-row span{color:var(--text-primary)!important}.product-customize-body .interactive-addon-row.is-selected span{color:var(--primary-ink)!important}.product-customize-footer{padding:15px 22px!important;border-top:1px solid var(--border-color)!important;background:var(--bg-card)!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.product-customize-quantity{border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;background:var(--bg-muted)!important}.product-customize-quantity button{background:transparent!important;color:var(--text-primary)!important}.product-customize-quantity span{color:var(--text-primary)!important}.product-customize-submit{border-radius:var(--radius-md)!important;background:var(--ink)!important;box-shadow:none!important;color:#fff!important;font-family:var(--font-display)!important;font-weight:900!important;text-transform:lowercase;-webkit-mask:var(--hat-shape) center / 100% 100% no-repeat;mask:var(--hat-shape) center / 100% 100% no-repeat}.product-customize-submit:hover{background:var(--ink-hover)!important;box-shadow:none!important;transform:none!important}.cart-drawer-backdrop{background:#000000b8}.cart-drawer{border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-lg);color:var(--text-primary)}.cart-drawer .sheet-header{padding:20px 22px}.cart-drawer .sheet-title{font-size:1.1rem}.cart-drawer .sheet-body{padding:18px 20px 22px}.cart-items{display:flex;flex-direction:column}.cart-item{padding:14px 0!important;border-bottom:1px solid var(--border-subtle)!important}.cart-item:first-child{padding-top:4px!important}.cart-item .counter-group{box-shadow:none}.cart-note-card{margin-top:20px!important;padding:15px!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;background:var(--bg-card-hover)!important;box-shadow:none!important}.cart-note-label{color:var(--text-primary)!important;font-size:.82rem!important;font-weight:680!important}.cart-note-input{min-height:76px;border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;background:var(--bg-card)!important;box-shadow:none!important;color:var(--text-primary)!important}.cart-note-input::placeholder{color:var(--text-muted)!important}.cart-summary{margin-top:14px!important;padding:16px!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;background:var(--bg-card-hover)!important;box-shadow:none!important;color:var(--text-secondary)!important}.cart-summary-row{display:flex;justify-content:space-between;color:var(--text-secondary);font-size:.86rem;font-weight:560}.cart-summary-row strong{color:var(--text-primary);font-weight:700}.cart-summary-row .cart-summary-free{color:var(--accent-green);font-size:.75rem;letter-spacing:.03em}.cart-summary-total{border-color:var(--border-color)!important;color:var(--text-primary)!important}.cart-drawer .btn-primary-action{min-height:52px;border-radius:var(--radius-md)}.opentable-modal-card{display:flex;flex-direction:column;width:100%;max-height:94vh;max-height:94dvh;overflow:hidden;border-top:1px solid var(--border-color);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--bg-card);color:var(--text-primary);animation:slideUp .25s cubic-bezier(.16,1,.3,1)}@media (min-width: 640px){.opentable-modal-card{max-width:620px;margin:0 auto;border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:zoomInModal .2s cubic-bezier(.16,1,.3,1)}}.reservation-modal-header{padding:24px 26px 20px!important;border-color:var(--border-color)!important;background:var(--bg-card)}.reservation-modal-header h2{color:var(--text-primary)!important;font-size:1.3rem!important;font-weight:780!important}.reservation-modal-close{border:1px solid var(--border-color)!important;background:var(--bg-muted)!important;color:var(--text-secondary)!important}.reservation-stepper{justify-content:flex-start!important;gap:10px!important;padding-right:42px}.reservation-step{color:var(--text-muted)!important;font-size:.76rem!important;font-weight:650!important}.reservation-step>span:first-child{border:1px solid var(--border-color);background:var(--bg-muted)!important;color:var(--text-muted)!important}.reservation-step.is-active{color:var(--primary-ink)!important}.reservation-step.is-active>span:first-child{border-color:var(--primary);background:var(--primary)!important;color:#fff!important}.reservation-stepper>svg{color:var(--text-muted)}.reservation-step-body,.reservation-form,.reservation-confirmation{background:var(--bg-card);color:var(--text-primary)}.reservation-search-card{padding:16px!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-lg)!important;background:var(--bg-card-hover)!important}.opentable-modal-card label{color:var(--text-secondary)!important;font-size:.74rem!important;font-weight:680!important}.opentable-modal-card label svg{color:var(--primary-ink)!important}.reservation-input{width:100%;border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;background:var(--bg-card)!important;box-shadow:none!important;color:var(--text-primary)!important}.reservation-input:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px #e2462f38!important}.reservation-input::placeholder{color:var(--text-muted)}.reservation-primary-action{min-height:48px;border:0!important;border-radius:var(--radius-md)!important;background:var(--ink)!important;box-shadow:none!important;color:#fff!important}.reservation-primary-action:hover{background:var(--ink-hover)!important;box-shadow:none!important;transform:none!important}.reservation-primary-action svg{color:currentColor}.reservation-secondary-action{border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;background:var(--bg-muted)!important;box-shadow:none!important;color:var(--text-secondary)!important}.reservation-slots-header{border-color:var(--border-color)!important}.reservation-slots-header>div>div:first-child{color:var(--text-primary)!important}.reservation-change-action{border:1px solid var(--border-color)!important;background:var(--bg-card)!important;color:var(--text-secondary)!important;font-weight:650!important}.reservation-change-action:hover{border-color:var(--primary)!important;color:var(--primary-ink)!important}.reservation-error-alert,.reservation-empty-state{border:1px solid var(--danger-border)!important;background:var(--danger-bg)!important;color:var(--danger)!important}.reservation-empty-state svg{color:var(--danger)!important}.reservation-empty-state p{color:var(--danger)!important;opacity:1!important}.reservation-guests-label{display:flex;align-items:center;gap:5px;color:var(--primary-ink)!important}.reservation-slot{border:1px solid var(--primary-border)!important;border-radius:var(--radius-md)!important;background:var(--primary-soft)!important;box-shadow:none!important;color:var(--primary-ink)!important}.reservation-slot:hover:not(:disabled){border-color:var(--primary)!important;background:var(--primary)!important;color:#fff!important;transform:none!important}.reservation-slot.is-disabled{border:1px dashed var(--border-color)!important;background:var(--bg-main)!important;color:var(--text-muted)!important}.reservation-slot-help{color:var(--text-muted)!important}.reservation-policy-note{display:flex;align-items:flex-start;gap:8px;border:1px solid var(--border-color)!important;background:var(--bg-card-hover)!important;color:var(--text-muted)!important}.reservation-policy-note svg{flex:0 0 auto;margin-top:1px;color:var(--text-muted)}.reservation-selection-summary{border:1px solid var(--primary-border)!important;background:var(--primary-soft)!important}.reservation-selection-summary>div>div:first-child{background:var(--primary)!important;color:#fff!important}.reservation-selection-summary div[style*="color: rgb(255, 255, 255)"],.reservation-selection-summary div[style*="color: #ffffff"]{color:var(--text-primary)!important}.reservation-form label+input,.reservation-form label+textarea{margin-top:1px}.reservation-confirmation h3{color:var(--text-primary)!important}.reservation-confirmation p{color:var(--text-secondary)!important}.reservation-details-box{border:1px solid var(--border-color)!important;background:var(--bg-card-hover)!important;color:var(--text-muted)!important}.reservation-details-box strong{color:var(--text-primary)!important}@media (max-width: 620px){.reservation-stepper{overflow-x:auto}}.closure-status-loading{display:grid;place-items:center;min-height:100vh;background:var(--bg-main);color:var(--primary)}.closure-page{display:grid;place-items:center;min-height:100vh;padding:32px 22px;background:var(--bg-page);color:var(--text-primary)}.closure-page__panel{width:min(100%,620px);padding:clamp(34px,7vw,58px);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card);text-align:left}.closure-page__brand{margin-bottom:34px;color:var(--text-primary);font-size:1rem;font-weight:700}.closure-page__eyebrow,.restaurant-closure-notice__eyebrow{margin-bottom:10px;color:var(--primary-ink);font-size:.72rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.closure-page__title,.restaurant-closure-notice__title{color:var(--text-primary);font-weight:800;letter-spacing:-.04em}.closure-page__title{margin:0 0 20px;font-size:clamp(2.25rem,7vw,3.6rem);line-height:1.02}.closure-page__message{margin:0;color:var(--text-secondary);font-size:clamp(1rem,2.5vw,1.12rem);line-height:1.7;white-space:pre-line}.restaurant-closure-notice{width:min(1132px,calc(100% - 36px));margin:20px auto;padding:24px 26px;border:1px solid var(--border-color);border-left:3px solid var(--primary);border-radius:var(--radius-md);background:var(--bg-card);text-align:left}.restaurant-closure-notice__title{margin:0 0 10px;font-size:clamp(1.55rem,4vw,2rem);line-height:1.15}.restaurant-closure-notice__message{margin:0;color:var(--text-secondary);font-size:.98rem;line-height:1.65;white-space:pre-line}.restaurant-closure-notice__meta{margin:14px 0 0;padding-top:14px;border-top:1px solid var(--border-subtle);color:var(--text-muted);font-size:.78rem}@media (max-width: 860px){.app-container{padding:14px 16px 110px}.hero__brand-logo{width:46px;height:46px}.hero__brand-name{font-size:.86rem}.hero__grid{grid-template-columns:1fr;gap:0;padding:34px 0 30px}.hero__brand-logo{display:none}.hero__visual{order:-1;width:min(72%,260px);margin:0 auto 30px}.hero__stache{width:64px;margin-bottom:18px}.hero__eyebrow{font-size:.72rem}.hero__info{flex-direction:column;gap:9px}.category-nav{margin-inline:-16px;padding-inline:16px}.active-order-summary{margin:14px 0 0}.menu-section{margin-top:26px}.menu-section__head{min-height:0}.menu-section__titles{padding:20px 18px}.menu-section__badge{width:84px}.menu-section__badge svg{width:32px;height:32px}.products-grid{padding:0 18px 8px}footer{margin:54px -16px -110px!important}}@media (max-width: 520px){.language-selector-trigger>span{display:none}.cart-bar{gap:12px;padding:15px 22px}.cart-bar-subtotal{font-size:1.05rem}.cart-bar-right{font-size:.9rem}.hero__title{font-size:2.9rem}.hero__lead{font-size:.98rem}.hero__delivery{padding:12px 22px 13px 18px;font-size:.88rem}.hero__delivery-text{flex-direction:column;flex-wrap:nowrap;align-items:flex-start}.hero__delivery-min:before{content:none}.hero__actions{flex-direction:column;align-items:stretch}.hero-btn{width:100%}.active-order-summary{padding-inline:16px}.active-order-summary__copy p{max-width:190px}.active-order-summary__action span{display:none}.product-card{gap:12px;padding:16px 0}.product-name{font-size:1.05rem}.product-price{font-size:.95rem}.product-image-container{width:64px;height:64px}.test-mode-content{align-items:flex-start;flex-direction:column;gap:3px;text-align:left}.closure-page__panel{padding:34px 26px}.restaurant-closure-notice{width:calc(100% - 28px);margin:14px auto;padding:20px}}
