:root{
  --bg:#151212; --surface:#221c1a; --surface-2:#2c2422; --text:#f4ede4; --muted:#bcafa2; --chili:#d8452b; --broth:#e9b44c; --scallion:#8fae5a;
  --line:#3a302c; --max:1180px; --r:14px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:17px/1.6 "Inter",system-ui,-apple-system,"Segoe UI",sans-serif}
img{max-width:100%;height:auto;display:block}
a{color:var(--broth)}
h1,h2,h3{font-family:"Bricolage Grotesque",system-ui,sans-serif;line-height:1;letter-spacing:-.02em;font-weight:800}
:focus-visible{outline:3px solid var(--broth);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-999px;top:8px;background:var(--broth);color:#151212;padding:8px 14px;border-radius:8px;z-index:20;font-weight:700}
.skip:focus{left:8px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}

.band{background:var(--chili);color:#fff;font-size:15px;font-weight:600}
.band .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 18px;padding-top:8px;padding-bottom:8px}
.band a{color:#fff}
.band .open::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:#fff;margin-right:8px;vertical-align:1px}
header.site .wrap{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;padding-top:14px;padding-bottom:14px}
.logo{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font:800 24px/1 "Bricolage Grotesque",sans-serif;letter-spacing:-.03em;margin-right:auto;text-transform:lowercase}
nav.main{display:flex;gap:4px;flex-wrap:wrap}
nav.main a{color:var(--text);text-decoration:none;padding:8px 14px;border-radius:999px;font-weight:600;font-size:15px}
nav.main a:hover{background:var(--surface-2)}
nav.main a[aria-current]{box-shadow:inset 0 0 0 2px var(--broth);color:var(--broth)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 26px;border-radius:999px;font:700 17px/1.1 "Inter",sans-serif;text-decoration:none;border:0;cursor:pointer}
.btn-chili{background:var(--chili);color:#fff}
.btn-chili:hover{background:#e65a3f}
.btn-ghost{color:var(--text);box-shadow:inset 0 0 0 2px #6b5d55}
.btn-ghost:hover{box-shadow:inset 0 0 0 2px var(--text)}
.ctas{display:flex;gap:12px;flex-wrap:wrap}

.hero{display:grid;gap:28px;align-items:center;padding-top:20px;padding-bottom:56px}
@media(min-width:900px){.hero{grid-template-columns:1fr 1.1fr;gap:48px}}
.hero h1{font-size:clamp(46px,7.4vw,96px);margin:0 0 18px}
.hero h1 em{font-style:normal;color:var(--chili)}
.hero .lede{font-size:20px;color:var(--muted);max-width:36ch;margin:0 0 26px}
.hero figure{margin:0;position:relative}
.hero figure img{width:100%;aspect-ratio:4/3.4;object-fit:cover;border-radius:24px}
.hero .sticker{position:absolute;left:-10px;bottom:22px;background:var(--broth);color:#151212;font:800 18px/1.15 "Bricolage Grotesque",sans-serif;padding:12px 16px;border-radius:14px;transform:rotate(-4deg);max-width:200px}
.quick{display:flex;flex-wrap:wrap;gap:8px 22px;margin:22px 0 0;padding:0;list-style:none;color:var(--muted);font-size:15px}
.quick b{color:var(--text)}

section{padding:60px 0;border-top:1px solid var(--line)}
h2{font-size:clamp(34px,5vw,56px);margin:0 0 12px}
.sub{color:var(--muted);max-width:56ch;margin:0 0 30px}
.bowls{list-style:none;padding:0;margin:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr))}
.bowl{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px;display:grid;grid-template-columns:auto 1fr auto;gap:2px 14px;align-items:baseline}
.bowl .n{font:800 40px/1 "Bricolage Grotesque",sans-serif;color:var(--chili);grid-row:span 3;min-width:1.4em}
.bowl h3{font-size:22px;margin:0;letter-spacing:-.01em;line-height:1.15}
.bowl .p{font-weight:700;color:var(--broth);font-variant-numeric:tabular-nums}
.bowl p{grid-column:2/4;margin:2px 0 0;color:var(--muted);font-size:15.5px}
.bowl .heat{grid-column:2/4;margin-top:6px}
.heat{display:inline-flex;gap:4px;align-items:center;font-size:13px;color:var(--muted)}
.heat i{width:11px;height:11px;border-radius:50%;background:#4a3d38;display:inline-block}
.heat i.on{background:var(--chili)}
.heat .v{width:auto;height:auto;background:none;color:var(--scallion);font-style:normal;font-weight:700;margin-left:6px}

.key{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));list-style:none;padding:0;margin:0}
.key li{background:var(--surface);border-radius:var(--r);padding:16px 18px}
.key b{display:block;font:800 20px "Bricolage Grotesque",sans-serif;margin:8px 0 2px}
.key span.t{color:var(--muted);font-size:15px}

.photos{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.photos img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:var(--r)}

.find{display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start}
.hours{list-style:none;padding:0;margin:0 0 18px}
.hours li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.map{border-radius:var(--r);overflow:hidden;background:var(--surface)}
.note{color:var(--muted);font-size:15px}

.menu-sec h2{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.menu-sec h2 small{font:500 16px "Inter",sans-serif;color:var(--muted);letter-spacing:0}
.rows{list-style:none;padding:0;margin:0;columns:2 340px;column-gap:40px}
.rows li{break-inside:avoid;display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 14px;padding:14px 0;border-bottom:1px dashed var(--line)}
.rows b{font-size:18px}
.rows .p{color:var(--broth);font-weight:700}
.rows .d{flex-basis:100%;color:var(--muted);font-size:15px}
.allergy{background:var(--surface);border-left:4px solid var(--broth);border-radius:8px;padding:16px 20px;color:var(--muted)}
.allergy strong{color:var(--text)}

footer.site{background:#0e0c0c;padding:44px 0;border-top:1px solid var(--line)}
footer.site h3{font-size:22px;margin:0 0 8px}
footer.site p{margin:0 0 4px;font-size:15.5px;color:var(--muted)}
footer.site a{color:var(--text)}
.cols{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.concept{margin-top:28px;padding-top:18px;border-top:1px solid var(--line);font-size:14px;color:#9c8f84}
.concept strong{color:var(--text)}
