/* Warm, responsive storefront. Edit the colour tokens here to rebrand it. */
:root{--ink:#eff191;--muted:#e0c89b;--paper:#6f1e0ff0;--card:#6f1e0ff0;--accent:#eff191;--accent-dark:#eff191;--line:#4e2828;--green:#347357;--shadow:0 12px 34px rgba(48,37,25,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;padding-bottom:90px}button,a,input{font:inherit}button{cursor:pointer}.splash{position:fixed;inset:0;z-index:20;background:var(--paper);color:#fff9ee;display:grid;place-content:center;text-align:center;transition:opacity .55s ease,visibility .55s ease}.splash.hide{opacity:0;visibility:hidden}.splash-brand{font-family:Georgia,serif;font-size:clamp(2.5rem,8vw,5rem);display:flex;align-items:center;gap:.35em}.splash .brand-mark{color:#f6d69c}.splash p{letter-spacing:.08em;font-size:.9rem}.site-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,20px);background:#6f1e0ff0;border-bottom:1px solid var(--line);position:sticky;top:34px;z-index:5;backdrop-filter:blur(10px)}.brand{text-decoration:none;color:var(--ink);font-family:Georgia,serif;font-size:1.35rem;font-weight:700;display:flex;align-items:center;gap:.45rem}.brand-mark{color:var(--accent);font-size:1.5em;line-height:1}.header-note{color:var(--muted);font-size:.8rem;letter-spacing:.06em}.screen{max-width:1180px;margin:0 auto;padding:50px max(5vw,20px) 70px}.screen[hidden]{display:none}.intro{max-width:620px;margin-bottom:30px}.eyebrow{font-size:.72rem;letter-spacing:.17em;font-weight:800;color:var(--accent);margin:0 0 10px}.intro h1,.cart-heading h1,.detail-copy h1{font-family:Georgia,serif;font-weight:500;letter-spacing:-.04em;margin:0;font-size:clamp(2.2rem,5vw,3.7rem);line-height:1.04}.intro>p:last-child{color:var(--muted);margin:12px 0 0}.menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.food-card{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s}.food-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.food-art{height:clamp(125px,22vw,245px);position:relative;display:grid;place-items:center;background:linear-gradient(135deg,#eadcc6,#d7b992);overflow:hidden}.food-art:before,.gallery-art:before{content:"";position:absolute;width:64%;aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.7);box-shadow:0 10px 24px #5b391529}.food-emoji{z-index:1;font-size:clamp(3rem,9vw,6rem);filter:drop-shadow(0 7px 4px #59391d28)}.availability{position:absolute;z-index:2;top:12px;left:12px;border-radius:99px;padding:6px 10px;font-size:.68rem;font-weight:700;background:#e4f1e8;color:var(--green)}.availability.unavailable{background:#9a2727;color:#a8422c}.food-meta{padding:13px 15px 16px;display:flex;justify-content:space-between;align-items:end;gap:10px}.food-meta h2,.food-meta h3{font-size:1rem;margin:0 0 4px}.food-meta p{font-size:.77rem;color:var(--muted);margin:0}.food-price{font-weight:750;white-space:nowrap;font-size:.88rem}.back-button,.text-button{border:0;background:none;color:var(--ink);padding:0;font-weight:650}.back-button{margin-bottom:28px}.back-button span{margin-left:6px}.detail-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:clamp(28px,6vw,80px);align-items:start}.detail-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.gallery-art{position:relative;min-height:200px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#eadcc6,#d7b992);overflow:hidden}.gallery-art:first-child{grid-column:span 2;min-height:clamp(240px,38vw,440px)}.gallery-art .food-emoji{font-size:clamp(3.5rem,10vw,7rem)}.detail-copy{padding-top:12px}.detail-description{line-height:1.65;color:var(--muted);margin:14px 0}.detail-price{font-weight:750;font-size:1.1rem;border-bottom:1px solid var(--line);padding:0 0 20px}.choice-group{border:0;padding:14px 0 8px;margin:0}.choice-group legend{font-weight:750;margin-bottom:12px}.check-choice{display:flex;align-items:center;gap:10px;padding:9px 0;color:#4c473e}.check-choice input{accent-color:var(--accent);width:18px;height:18px}.quantity-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:18px 0;font-weight:650}.stepper{display:flex;align-items:center;gap:17px}.stepper button,.cart-qty button{border:1px solid var(--line);background:var(--card);height:34px;width:34px;border-radius:50%;font-size:1.2rem}.primary-button{border:0;border-radius:12px;background:var(--accent);color:rgb(87, 18, 18);font-weight:750;padding:15px 20px;transition:background .2s}.primary-button:hover{background:var(--accent-dark)}.full-button{width:100%}.cart-heading{margin:0 0 26px}.cart-items{display:grid;gap:12px}.cart-line{display:grid;grid-template-columns:78px 1fr auto;align-items:center;gap:15px;padding:13px;background:var(--card);border:1px solid var(--line);border-radius:14px}.cart-thumb{height:72px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,#eadcc6,#d7b992);font-size:2.2rem}.cart-line h3{margin:0 0 5px;font-size:.95rem}.cart-line p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.5}.cart-line-price{font-weight:750;white-space:nowrap}.cart-qty{display:flex;align-items:center;gap:8px;margin-top:8px}.cart-qty button{width:27px;height:27px;font-size:1rem}.remove-button{border:0;background:none;color:var(--muted);font-size:.78rem;text-decoration:underline;margin-left:5px}.cart-summary{max-width:650px;margin:24px 0 0 auto;padding:22px;background:var(--card);border:1px solid var(--line);border-radius:16px}.total-row{display:flex;justify-content:space-between;font-size:1.08rem}.delivery-note{background:#f5f0e6;padding:13px;border-radius:10px;color:#625a4f;font-size:.83rem;line-height:1.5}.checkout-hint{text-align:center;color:var(--muted);font-size:.76rem;margin:10px 0 0}.empty-cart{text-align:center;padding:46px 10px;color:var(--muted)}.text-button{color:var(--accent)}.cart-bar{position:fixed;z-index:10;bottom:15px;left:50%;transform:translateX(-50%);width:min(620px,calc(100% - 28px));border:0;border-radius:15px;background:#29271f;color:white;padding:13px 17px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 12px 35px #29271f40;text-align:left}.cart-bar[hidden]{display:none}.cart-bar-label{display:flex;align-items:center;gap:11px}.cart-icon{font-size:1.3rem;color:#f2c798}.cart-bar-label strong,.cart-bar-label small{display:block}.cart-bar-label small{color:#c49d4e;font-size:.72rem;margin-top:2px}.cart-bar-total{margin-left:auto;margin-right:14px;font-weight:750}.site-footer{max-width:1180px;margin:0 auto;padding:22px max(5vw,20px);border-top:1px solid var(--line);color:var(--muted);display:flex;justify-content:space-between;font-size:.75rem}
@media(max-width:700px){.site-header{height:64px}.header-note{font-size:.7rem}.screen{padding-top:32px}.menu-grid{gap:10px}.food-card{border-radius:14px}.food-art{height:clamp(112px,31vw,180px)}.food-meta{padding:10px}.food-meta h2,.food-meta h3{font-size:.88rem}.food-meta p{font-size:.7rem}.food-price{font-size:.78rem}.availability{font-size:.6rem;top:8px;left:8px;padding:5px 7px}.detail-layout{grid-template-columns:1fr}.detail-gallery{gap:8px}.gallery-art{min-height:145px}.gallery-art:first-child{min-height:58vw}.detail-copy{padding-top:0}.cart-summary{margin-top:18px}.cart-line{grid-template-columns:60px 1fr auto;gap:10px}.cart-thumb{height:60px}.cart-line-price{font-size:.86rem}.site-footer{gap:14px;flex-wrap:wrap}.splash-brand{font-size:2.8rem}}

.preference-label{display:block;font-weight:750;margin-bottom:10px}.preference-input{display:block;width:100%;resize:vertical;min-height:86px;padding:12px 13px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);line-height:1.5}.preference-input:focus{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-color:var(--accent)}.field-hint{margin:7px 0 0;color:var(--muted);font-size:.76rem}
.food-photo,.detail-photo,.cart-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}.cart-thumb{position:relative;overflow:hidden}.cart-thumb>span{position:relative;z-index:0}
.weight-select{padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--ink)}.pack-label{font-size:.75rem;color:var(--muted);font-weight:500}
.quantity-row{flex-wrap:wrap;gap:10px}
.announcement-bar{height:34px;overflow:hidden;display:flex;align-items:center;background:#6f1e0f;color:#fff7eb;font-size:.76rem;font-weight:600;letter-spacing:.025em;white-space:nowrap}.announcement-track{display:flex;width:max-content;animation:announcement-scroll 32s linear infinite}.announcement-track span{padding:0 3rem}@keyframes announcement-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.announcement-track{animation:none;width:100%;justify-content:center}.announcement-track span+span{display:none}}

.announcement-bar{position:sticky;top:0;z-index:6}
@media(prefers-reduced-motion:reduce){.announcement-bar{height:auto;min-height:34px;padding:6px 12px;white-space:normal;text-align:center}.announcement-track{animation:none;width:100%;justify-content:center}.announcement-track span{padding:0}.announcement-track span+span{display:none}}


.weight-options{border:0;padding:0;margin:16px 0 8px}.weight-options legend{font-weight:650;margin-bottom:10px}.weight-option-row{display:flex;gap:10px}.weight-option{position:relative;flex:1;cursor:pointer;text-align:center}.weight-option input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}.weight-option span{display:block;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font-weight:650;transition:background .15s,border-color .15s,color .15s}.weight-option input:checked+span{background:var(--accent);border-color:var(--accent);color:var(--paper)}.weight-option input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:2px}@media(max-width:380px){.weight-option-row{gap:6px}.weight-option span{padding:9px 7px;font-size:.9rem}}


.menu-section{margin-top:34px}.menu-section-title{font-family:Georgia,serif;font-size:clamp(1.7rem,3vw,2.35rem);font-weight:500;letter-spacing:-.025em;margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--line)}.category-empty{margin:0;padding:22px 18px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);background:var(--card)}


.menu-tabs{display:flex;gap:16px;margin:28px 0 8px;border:0}.menu-tab{min-width:170px;border:2px solid var(--paper);border-radius:14px;background:var(--ink);color:var(--paper);padding:15px 24px;font-size:1.15rem;font-weight:800;cursor:pointer;transition:transform .15s,box-shadow .15s}.menu-tab:hover{color:var(--paper);transform:translateY(-2px);box-shadow:0 6px 16px rgba(40,20,12,.18)}.menu-tab.active{border-color:var(--paper);background:var(--ink);color:var(--paper);box-shadow:0 4px 12px rgba(40,20,12,.2)}.menu-tab:focus-visible{outline:3px solid var(--paper);outline-offset:3px}@media(max-width:420px){.menu-tabs{gap:10px}.menu-tab{flex:1;min-width:0;padding:13px 9px;font-size:1rem}}
