:root{--paper:#f3f5f7;--card:#ffffff;--ink:#15202b;--mut:#566474;--line:#d9e0e7;--acc:#2347b0;--acc-ink:#ffffff;--tint:#e4eaf6}
@media (prefers-color-scheme:dark){:root{--paper:#0f1319;--card:#171d26;--ink:#e8edf3;--mut:#9aa7b6;--line:#27303b;--acc:#8fa8ff;--acc-ink:#0d1530;--tint:#1a2338}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:1.0625rem/1.6 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
a{color:inherit}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
header.top{border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;min-height:64px;gap:16px}
.brand{font-weight:700;letter-spacing:-.01em;text-decoration:none;white-space:nowrap}
nav{display:flex;gap:22px;font-size:.9375rem}
nav a{text-decoration:none;color:var(--mut);padding:8px 0;transition:color .2s}
nav a:hover,nav a[aria-current]{color:var(--ink)}
a:focus-visible{outline:2px solid var(--acc);outline-offset:3px;border-radius:4px}
.hero{display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:center;padding:72px 0 56px}
.hero h1{font-size:clamp(2.1rem,4.6vw,3.4rem);line-height:1.08;letter-spacing:-.03em;margin:0 0 18px;font-weight:700}
.hero p{margin:0 0 28px;color:var(--mut);max-width:36ch;font-size:1.125rem}
.btn{display:inline-block;background:var(--acc);color:var(--acc-ink);text-decoration:none;font-weight:600;padding:12px 22px;border-radius:10px;transition:transform .15s,opacity .15s;white-space:nowrap}
.btn:hover{opacity:.92}.btn:active{transform:translateY(1px)}
.plate{aspect-ratio:1;max-width:380px;justify-self:center;width:100%;border-radius:50%;background:
 radial-gradient(circle at 50% 50%,var(--paper) 0 18%,transparent 18.3%),
 radial-gradient(circle at 50% 50%,var(--tint) 0 52%,transparent 52.3%),
 radial-gradient(circle at 50% 50%,var(--card) 0 68%,transparent 68.3%),
 var(--tint);box-shadow:inset 0 0 0 1px var(--line)}
.cats{display:flex;gap:10px;overflow-x:auto;padding:4px 0 28px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.cats a{scroll-snap-align:start;flex:none;text-decoration:none;color:var(--ink);padding:9px 18px;border-radius:999px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);font-size:.9375rem;transition:box-shadow .2s}
.cats a:hover{box-shadow:inset 0 0 0 1px var(--acc)}
.menu{display:grid;grid-template-columns:repeat(12,1fr);gap:56px 40px;padding-bottom:72px}
.cat{scroll-margin-top:24px}
.cat h2{font-size:1.5rem;letter-spacing:-.02em;margin:0 0 4px}
.cat .sub{margin:0 0 18px;color:var(--mut);font-size:.9375rem}
.cat.w7{grid-column:span 7}.cat.w5{grid-column:span 5}
.cat ul{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:18px}
.cat .sub+ul{margin-top:0}
.dish{display:grid;grid-template-columns:1fr auto;gap:2px 20px}
.dish b{font-weight:600}
.dish .p{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}
.dish span.d{grid-column:1;color:var(--mut);font-size:.9375rem}
.info{background:var(--tint);border-radius:14px;padding:28px 28px 24px;margin-bottom:72px;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.info h2{font-size:1.25rem;letter-spacing:-.015em;margin:0 0 6px}
.info p{margin:0;color:var(--mut)}
article.post{padding:56px 0 80px;max-width:66ch}
article.post h1{font-size:clamp(1.9rem,4vw,2.6rem);line-height:1.12;letter-spacing:-.025em;margin:0 0 16px}
article.post .lead{font-size:1.25rem;color:var(--mut);margin:0 0 28px}
article.post p{margin:0 0 18px}
footer{border-top:1px solid var(--line);color:var(--mut);font-size:.9375rem}
footer .wrap{padding:28px 20px 40px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
@media (max-width:767px){
 .hero{grid-template-columns:1fr;gap:28px;padding:44px 0 36px}
 .plate{max-width:200px;justify-self:start}
 .menu{grid-template-columns:1fr;gap:40px}
 .cat.w7,.cat.w5{grid-column:auto}
 .info{grid-template-columns:1fr;padding:22px}
 nav{gap:16px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}html{scroll-behavior:auto}}
