:root{--paper:#f7f4ec;--white:#fffdf8;--ink:#213128;--deep:#193229;--green:#365346;--red:#aa392d;--darkred:#902f24;--line:#ded8c9;--muted:#566359;--soft:#eeeadf;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 var(--sans)}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);line-height:1.02;font-weight:500}h2{font-size:clamp(2.5rem,5.8vw,4.35rem);letter-spacing:-.06em}h3{font-size:1.65rem;letter-spacing:-.035em}p{overflow-wrap:anywhere}[hidden]{display:none!important}.shell{max-width:1232px;margin-inline:auto;padding-inline:clamp(20px,5.4vw,76px)}.top{border-bottom:1px solid var(--line);background:var(--paper)}.top-inner{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:16px}.brand{display:inline-flex;gap:10px;align-items:center;font-family:var(--serif);font-size:2rem;line-height:.9;letter-spacing:-.07em}.brand:hover{text-decoration:none}.brand-mark{display:grid;place-items:center;background:var(--deep);border-radius:50%;color:var(--white);font-style:italic;width:42px;height:42px;font-size:1.65rem;letter-spacing:0}.brand small{display:block;font:700 .54rem/1.3 var(--sans);letter-spacing:.17em;margin-top:7px;white-space:nowrap}.top nav{display:flex;gap:clamp(15px,4vw,40px);font-size:.92rem;font-weight:650}.button{display:inline-flex;align-items:center;justify-content:center;gap:.75em;border:1px solid transparent;border-radius:4px;min-height:44px;padding:.72em 1.2em;color:var(--white);background:var(--deep);font:700 .9rem/1.2 var(--sans);cursor:pointer;text-align:center}.button:hover{text-decoration:none;background:var(--green)}.button.red{background:var(--red)}.button.red:hover{background:var(--darkred)}.button.outline{background:transparent;border-color:var(--green);color:var(--deep)}.button.outline:hover{background:var(--soft)}.button:disabled{opacity:.55;cursor:wait}.text-link{display:inline-flex;align-items:center;gap:.45em;font-weight:750;font-size:.92rem;text-decoration:underline;text-underline-offset:4px}.skip{position:absolute;left:10px;top:-100px;background:var(--white);padding:10px;z-index:10}.skip:focus{top:10px}:focus-visible{outline:3px solid #b25a38;outline-offset:4px}
.hero{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:clamp(24px,5vw,70px);padding-top:clamp(42px,6vw,82px);padding-bottom:clamp(50px,7vw,98px)}.kicker{display:flex;gap:9px;align-items:center;font-size:.68rem;font-weight:800;letter-spacing:.19em}.kicker i{width:20px;height:2px;background:var(--red);display:inline-block}.hero h1{font-size:clamp(4rem,7.5vw,7.1rem);letter-spacing:-.082em;line-height:.88;margin:21px 0 24px}.hero em{color:var(--red);font-weight:400;white-space:nowrap}.hero p{max-width:370px;color:var(--muted);font-size:1.04rem}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 21px;margin-top:26px}.hero-image{position:relative;isolation:isolate;background:#34362b;border-radius:5px;overflow:hidden;min-height:300px;aspect-ratio:1.23}.hero-image img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.section{padding-block:clamp(38px,5.8vw,72px);scroll-margin-top:14px}.menu-section{background:var(--soft);border-block:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:22px}.section h2{margin-top:8px}.days{display:flex;flex-wrap:wrap;gap:8px;margin:17px 0}.days button,.chip{background:var(--white);border:1px solid var(--line);border-radius:4px;padding:9px 14px;font:700 .86rem/1.2 var(--sans);color:var(--deep)}.days button{cursor:pointer;min-height:42px}.days button[aria-pressed=true]{background:var(--deep);color:white;border-color:var(--deep)}.stack{display:grid;gap:10px}.empty,.item,.contact{padding:20px 23px;border:1px solid var(--line);border-radius:5px;background:var(--white)}.empty,.muted{color:var(--muted)}.item{display:flex;justify-content:space-between;align-items:start;gap:14px}.item p{margin-top:7px;white-space:pre-wrap}.price{white-space:nowrap;color:var(--red);font-weight:800}.item small{display:block;margin-top:8px;color:var(--muted)}.newsletter{display:grid;grid-template-columns:1fr 1fr;gap:25px 36px;background:var(--deep);color:var(--white);border-radius:5px;padding:clamp(23px,4vw,50px)}.newsletter .kicker i{background:#dc8573}.newsletter p{margin-top:12px;color:#e3e7dd}.newsletter input{background:var(--white)}.subscribe-row{display:flex;align-items:stretch;gap:9px;margin-top:6px}.subscribe-row input{min-width:0;flex:1}.check{display:flex!important;gap:9px;align-items:start;font-weight:500!important;font-size:.83rem!important;margin-top:9px}.check input{width:auto;min-height:0;margin-top:4px;accent-color:var(--red)}.honey{position:absolute;left:-10000px;width:1px;height:1px}.hours-section{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(25px,6vw,75px);padding-top:25px}.hours-section h2{margin-bottom:20px}.hours-list{margin:0;padding:0;list-style:none}.hours-list li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.hours-list + h3{margin-top:20px}.contact{align-self:start;display:grid;gap:12px}.profiles{display:flex;flex-wrap:wrap;gap:12px;font-size:.86rem}.footer{border-top:1px solid var(--line);padding-block:23px;font-size:.88rem;color:var(--muted)}.footer .shell{display:flex;justify-content:space-between;gap:15px}.token{padding-top:50px}.token h1,.token p,.token form{margin-bottom:18px}
label{display:block;font-weight:700;font-size:.88rem}input,select,textarea{width:100%;min-height:42px;padding:9px 11px;border:1px solid #c7c6ba;background:var(--white);border-radius:4px;color:var(--ink);font:inherit}textarea{min-height:115px;resize:vertical}button,input,select,textarea{font-size:16px}
.admin-shell{max-width:1232px;margin:auto;padding:32px clamp(16px,4vw,56px) 64px}.admin-body .top{background:var(--deep);color:var(--white);border:0}.admin-body .brand-mark{background:var(--white);color:var(--deep)}.admin-body .top .text-link{white-space:nowrap}.admin-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.admin-heading h1{font-size:clamp(2.7rem,6vw,4.8rem);letter-spacing:-.07em}.admin-heading p{margin-top:9px;color:var(--muted)}.tabs{display:flex;gap:3px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:18px}.tabs button{cursor:pointer;padding:9px 11px;border:0;background:transparent;border-radius:4px;color:var(--ink);font:700 .84rem/1.2 var(--sans);min-height:42px}.tabs button[aria-current=true]{color:white;background:var(--deep)}.tabs button:hover:not([aria-current=true]){background:var(--soft)}.admin-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;align-items:start}.panel{background:var(--white);border:1px solid var(--line);border-radius:6px;padding:clamp(16px,2.5vw,26px);min-width:0}.panel h2{font-size:2.05rem;margin-bottom:16px}.panel h3{margin-bottom:10px}.panel form{display:grid;gap:11px}.panel label input:not([type=checkbox]),.panel label select,.panel label textarea{display:block;margin-top:4px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:8px}.toolbar .button{font-size:.8rem}.entry{padding:13px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.entry:last-child{border-bottom:0}.entry strong{font-size:1.02rem}.entry small{display:block;color:var(--muted);margin-top:4px}.entry p{white-space:pre-wrap;margin-top:4px}.chip{display:inline-block;padding:4px 7px;font-size:.72rem;margin-left:5px}.status{min-height:22px;color:var(--green);font-weight:650;margin-bottom:10px}.status.error{color:var(--darkred)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-bottom:17px}.stat{padding:16px;background:var(--soft);border:1px solid var(--line);border-radius:5px;font-size:.83rem}.stat strong{display:block;font:500 2rem var(--serif);color:var(--deep)}.graph{display:grid;gap:7px;margin:17px 0}.graph-row{display:grid;grid-template-columns:95px 1fr 45px;gap:8px;align-items:center;font-size:.84rem}.graph-row progress{width:100%;accent-color:var(--green)}.panel + .panel-spaced,.panel-spaced{margin-top:14px}.helper{font-size:.84rem;color:var(--muted);margin-bottom:10px}.danger{color:var(--darkred)!important}
@media(max-width:800px){.hero h1{font-size:clamp(3.25rem,8.7vw,5rem)}.hero-image{min-height:245px}.admin-grid{grid-template-columns:1fr}.newsletter{grid-template-columns:1fr}.admin-heading{align-items:start}.top-inner{min-height:70px}}
@media(max-width:585px){.top-inner{flex-wrap:wrap;padding-block:12px;gap:10px}.top nav{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:9px}.hero{grid-template-columns:1fr;gap:25px;padding-top:35px;padding-bottom:30px}.hero h1{font-size:clamp(4rem,12.5vw,5.9rem);margin-block:16px 18px}.hero-image{aspect-ratio:1.45;min-height:0}.section-heading{align-items:start;flex-direction:column;gap:10px}.hours-section{grid-template-columns:1fr}.subscribe-row{flex-direction:column}.button{padding-inline:13px}.admin-heading{display:block}.form-row{grid-template-columns:1fr}.item,.contact{padding:15px}.hero .actions{margin-top:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.public-body {
  --paper: #fffaf0;
  --white: #fffdf7;
  --ink: #231f20;
  --deep: #302323;
  --green: #513731;
  --red: #ad3920;
  --darkred: #8e2c18;
  --line: #e8d8c2;
  --muted: #66534c;
  --soft: #f8edda;
}
.public-body .top {
  background: var(--white);
  border-top: 4px solid #e4b52e;
}
.public-body .top-inner { min-height: 96px; }
.public-brand {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}
.public-brand img {
  display: block;
  width: clamp(140px, 17vw, 198px);
  height: auto;
}
.public-body .hero-image {
  border-radius: 12px;
  box-shadow: 0 14px 28px #54332224;
}
.public-body .hero-copy .kicker i,
.public-body .newsletter .kicker i { background: #e4b52e; }
.public-body .newsletter p { color: #f3e5d9; }
.public-body .button.outline { border-color: var(--red); color: var(--darkred); }
.public-body :focus-visible { outline-color: #ab6225; }

@media (max-width: 585px) {
  .public-body .top-inner { min-height: 0; }
}

.install-button { gap: .45em; }
.install-dialog { width:min(92vw, 470px); padding:24px; color:var(--ink); background:var(--white); border:1px solid var(--line); border-radius:10px; }
.install-dialog::backdrop { background:#14251db3; }
.install-dialog h2 { font-size:2rem; margin-bottom:14px; }
.install-dialog form { margin-top:18px; }
.app-nav { display:none; }
.app-icon-preview { width:72px; height:72px; border:1px solid var(--line); border-radius:14px; display:block; }
@media (max-width:585px) {
  .public-body .hero .install-button { margin-top:2px; }
  .admin-body .install-button { margin-top:12px; }
  .admin-body .tabs { flex-wrap:nowrap; overflow-x:auto; gap:5px; padding:3px 3px 10px; }
  .admin-body .tabs button { white-space:nowrap; }
}
@media (display-mode:standalone) {
  .install-button { display:none; }
  .admin-body .tabs { position:sticky; top:0; z-index:2; background:var(--paper); }
}
@media (display-mode:standalone) and (max-width:720px) {
  .public-body { padding-bottom:calc(54px + env(safe-area-inset-bottom)); }
  .public-body .top nav { display:none; }
  .app-nav { position:fixed; z-index:3; inset:auto 0 0; display:grid; grid-template-columns:repeat(4,1fr); padding:4px 8px calc(4px + env(safe-area-inset-bottom)); background:var(--white); border-top:1px solid var(--line); }
  .app-nav a { display:grid; place-items:center; min-height:44px; padding:2px; font-size:.78rem; font-weight:750; color:var(--darkred); }
}

.delivery-section { background:var(--paper); border-bottom:1px solid var(--line); }
.delivery-section .section-heading p { margin-top:12px; }
.delivery-offers,.delivery-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; align-items:start; }
.delivery-offers { margin-bottom:22px; align-items:stretch; }
.delivery-offer { padding:clamp(18px,3vw,30px); background:var(--white); border:1px solid var(--line); border-radius:8px; }
.delivery-offer p { margin:10px 0 16px; }
.delivery-offer strong,.delivery-price strong { color:var(--darkred); }
#delivery-search { margin:5px 0 13px; }
.delivery-route { border:1px solid var(--line); border-radius:6px; padding:14px; }
.delivery-route h3 { margin-bottom:5px; }
.delivery-route p { margin-bottom:6px; }
.delivery-slot { font-size:.89rem; font-weight:650; }
.delivery-price { font-size:.9rem; }
.delivery-route .button { margin-top:5px; }
.delivery-tabs { margin:0 0 12px; }
#delivery-form textarea { min-height:72px; }
#delivery-form .helper { margin:0; }
#delivery-form-title { scroll-margin-top:20px; }
.delivery-days { display:flex; flex-wrap:wrap; gap:0 12px; border:1px solid var(--line); border-radius:4px; }
.delivery-days legend { font-size:.86rem; font-weight:750; }
@media(max-width:800px) { .delivery-grid { grid-template-columns:1fr; } }
@media(max-width:585px) { .delivery-offers { grid-template-columns:1fr; } }
