*{box-sizing:border-box}
:root{
  --canvas:#eeece4; --board-ink:#2d322b; --board-sub:#575d52; --board-rule:#c8c7ba;
  --head:Georgia,'Times New Roman',serif; --sans:Arial,Helvetica,sans-serif; --mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace;
  --paper:#f7f2e6; --ink:#133f37; --muted:#496258; --accent:#a64933; --line:#c6c5b1; --spot:#18554c; --spot-ink:#f6e9ca; --chart:#4d8372; --panel:#edebdf;
}
body{margin:0;background:var(--canvas);color:var(--board-ink);font:14px/1.5 var(--sans)}
a{color:inherit;text-underline-offset:3px} a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:3px}
svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;flex:none;vertical-align:middle}
.tiny{font:600 10px/1.35 var(--mono);letter-spacing:.075em}
.studio-nav{max-width:1256px;margin:0 auto;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.studio-brand{font:700 11px/1.4 var(--mono);letter-spacing:.085em;white-space:nowrap}
.studio-brand span{color:#74776e;margin:0 5px}
.studio-nav nav{display:flex;gap:4px;flex-wrap:wrap}
.studio-nav a{padding:6px 11px;border:1px solid transparent;text-decoration:none;line-height:1.3;font-size:12px;white-space:nowrap}
.studio-nav a:hover{border-color:var(--board-rule)}
.studio-nav a b{font:700 11px var(--mono);margin-right:3px}
.studio-nav [aria-current]{background:#313831;color:#fffdf2}
#review{max-width:1256px;margin:0 auto;padding:0 28px 24px}
.board-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,355px);align-items:end;gap:28px;border-block:1px solid var(--board-rule);padding:26px 0 27px}
.board-head h1{font:400 clamp(37px,4.7vw,66px)/1.01 Georgia,serif;letter-spacing:-.06em;margin:8px 0 0}
.board-kicker{display:flex;align-items:center;gap:9px;margin:0;color:var(--board-sub);text-transform:uppercase}
.board-kicker span{display:inline-block;width:20px;height:1px;background:var(--board-sub)}
.premise{max-width:350px;margin:0;color:var(--board-sub);font-size:14px;line-height:1.48;padding-bottom:3px}
.board{display:grid;grid-template-columns:minmax(290px,349px) minmax(0,1fr);gap:28px;padding-top:19px;align-items:start}
.menu-panel,.dash-panel{min-width:0}
.screen-label{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--board-sub);padding:0 1px 8px}
.screen-label .tiny{letter-spacing:.08em}.screen-label .tiny span{color:var(--board-ink);margin-left:5px}.screen-label a{font-size:11px;text-decoration:none}.screen-label a:hover{text-decoration:underline}
.board-foot{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--board-rule);padding-top:10px;margin-top:19px;font:10px/1.45 var(--mono);color:var(--board-sub)}
.phone,.dashboard{color:var(--ink);background:var(--paper);border:1px solid var(--line);box-shadow:0 6px 16px #272b2310;overflow:hidden}
.phone{border-radius:20px}
.menu-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 19px 7px;min-height:61px}
.wordmark{display:block;width:109px;height:auto;max-width:100%}
.menu-header a,.menu-caption a{font-size:11px;font-weight:700;color:var(--muted);white-space:nowrap;text-decoration:none}.menu-header a:hover,.menu-caption a:hover{text-decoration:underline}
.menu-hero{margin:0 14px}
.menu-art{width:100%;height:auto;display:block}
.menu-titling{padding:14px 5px 12px}
.menu-titling .tiny{margin:0 0 8px;color:var(--muted)}
.menu-titling h2{font:600 clamp(38px,4vw,52px)/.93 var(--head);letter-spacing:-.07em;margin:0}
.menu-titling em{font-weight:400;color:var(--accent);letter-spacing:-.075em}
.menu-body{padding:0 19px 14px}
.stories{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:13px}
.story + .story{border-top:1px solid var(--line)}
summary{cursor:pointer;list-style:none}
summary::-webkit-details-marker{display:none}
.story summary{display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:38px;font-size:12px;font-weight:700}
.story summary svg,.dish summary svg{color:var(--accent)}
.story p,.dish p{margin:0;padding:0 12px 10px 0;font-size:12px;color:var(--muted)}
details[open]>summary svg{transform:rotate(45deg)}
.menu-caption{display:flex;justify-content:space-between;align-items:baseline;gap:6px;margin-bottom:7px}
.menu-caption h3{font:600 26px/1.1 var(--head);letter-spacing:-.055em;margin:0}
.market-note{margin:0 0 10px;color:var(--muted);font-size:12px;line-height:1.4}
.search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);min-height:37px;padding:0 9px;color:var(--muted)}
.search:focus-within{outline:2px solid var(--ink);outline-offset:2px}
.search input{border:0;outline:none;min-width:0;flex:1;background:transparent;color:var(--ink);font:13px var(--sans);padding:8px 0}
.search input::placeholder{color:var(--muted);opacity:1}
.menu-tabs{display:flex;align-items:stretch;justify-content:space-between;gap:4px;border-bottom:1px solid var(--line)}
.menu-tabs button{color:var(--muted);border:0;border-bottom:2px solid transparent;background:transparent;padding:10px 0 7px;font:600 11px/1.1 var(--sans);cursor:pointer;white-space:nowrap}
.menu-tabs button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--accent)}
.dishes{min-height:82px}
.dish{border-bottom:1px solid var(--line)}
.dish summary{display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:8px;min-height:40px;font-size:12px}
.dish strong{white-space:nowrap;font-weight:700;font-variant-numeric:tabular-nums}
.empty{font-size:12px;color:var(--muted)}
.feedback-preview{margin-top:10px;display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px}
.feedback-preview>span{font-weight:700;padding:6px 0;color:var(--muted);border-bottom:1px solid var(--line)}
.feedback-preview b{background:var(--ink);color:var(--paper);padding:7px 9px;font-weight:600}.feedback-preview b span{margin-left:5px}
.dashboard{border-radius:12px;display:grid;grid-template-columns:129px minmax(0,1fr);min-height:609px}
.dash-side{border-right:1px solid var(--line);padding:19px 12px;background:var(--panel)}
.dash-side .wordmark{width:105px}
.dash-side-label{color:var(--muted);margin:25px 0 14px;font-size:8px;letter-spacing:.09em}
.dash-side ul{list-style:none;margin:0;padding:0;display:grid;justify-items:start;gap:12px}
.dash-side li{padding:0 1px 4px;font-size:12px;color:var(--muted)}
.dash-side li.selected{font-weight:700;color:var(--ink);border-bottom:1px solid var(--accent)}
.dash-main{min-width:0;padding:17px 22px 11px}
.dash-top{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:0 0 12px;color:var(--muted)}
.demo-tag{border:1px solid var(--line);color:var(--muted);padding:3px 6px;font-size:10px;white-space:nowrap}
.dash-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:center;min-height:155px;background:var(--spot);color:var(--spot-ink);overflow:hidden}
.dash-title{padding:17px 14px 17px 20px;position:relative;z-index:1}
.dash-title p{margin:0 0 8px;opacity:.86}
.dash-title h2{font:500 clamp(27px,3.6vw,46px)/.94 var(--head);letter-spacing:-.065em;margin:0}
.dash-art{position:relative;align-self:stretch;min-height:100%;display:flex;align-items:end;justify-content:end;overflow:hidden}
.dash-art img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:54% center}
.dash-art span{position:relative;z-index:1;font-size:8px;padding:4px 5px;background:var(--spot);margin:0 7px 7px}
.dash-section{border-top:1px solid var(--line);margin-top:18px;padding-top:10px}
.section-head{display:flex;justify-content:space-between;gap:9px;align-items:center}
.section-head h3{margin:0;font:600 22px/1.06 var(--head);letter-spacing:-.045em}
.period{display:inline-flex;align-items:center;gap:3px;white-space:nowrap;color:var(--muted);font-size:11px}
.period svg{width:13px;height:13px}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:13px}
.metric{border-top:1px solid var(--line);padding-top:7px;line-height:1}
.metric>span{display:block;margin-bottom:7px;color:var(--muted);font-size:12px}
.metric strong{font:500 clamp(24px,3.3vw,39px)/1 var(--head);letter-spacing:-.055em;color:var(--accent)}
.metric small{font-size:11px;color:var(--muted);margin-left:4px}
.chart-label{font-size:11px;color:var(--muted);margin:10px 0 0}
.chart{height:151px;display:grid;grid-template-columns:19px repeat(4,minmax(0,1fr));padding:14px 0 0;position:relative;margin:0 0 4px}
.chart::before{content:"";position:absolute;inset:14px 0 22px 19px;background:repeating-linear-gradient(to top,var(--line) 0 1px,transparent 1px 20%);border-top:1px solid var(--line)}
.axis{color:var(--muted);display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;font-size:10px;position:relative;transform:translateY(-6px);height:calc(100% - 12px)}
.bar-group{min-width:0;position:relative;display:grid;grid-template-rows:1fr 22px;text-align:center;align-items:end}
.bar-well{height:100%;display:flex;align-items:end;justify-content:center}
.bar{width:50%;max-width:58px;height:var(--height);background:var(--chart);position:relative}
.bar span{position:absolute;top:4px;left:0;right:0;color:#fffdf3;font:700 10px/1.3 var(--mono)}
.bar-name{font-size:10px;color:var(--ink);overflow-wrap:anywhere;line-height:1.05;padding-bottom:3px}
.dash-foot{padding-top:12px;text-align:right;color:var(--muted);font:9px/1.4 var(--mono)}
.single{max-width:1010px;margin:0 auto;padding:12px 14px 24px}
.single.menu{max-width:410px}
.single-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin:0 0 10px;color:var(--board-sub);font-size:11px}
.single-head span{text-align:right}
.single .menu-titling h2{font-size:53px}
@media(max-width:1000px){
  .studio-nav,#review{padding-inline:19px}
  .board{grid-template-columns:minmax(262px,320px) minmax(0,1fr);gap:15px}
  .dashboard{grid-template-columns:108px minmax(0,1fr)}
  .dash-main{padding-inline:13px}
  .dash-title{padding-left:12px}
}
@media(max-width:780px){
  .studio-nav{flex-wrap:wrap;gap:10px}
  .studio-nav a{font-size:11px;padding:6px 7px}
  .board-head{grid-template-columns:1fr;gap:10px;padding-block:19px}
  .board-head .premise{max-width:495px}
  .board{grid-template-columns:1fr;gap:19px}
  .menu-panel{max-width:390px;width:100%;margin:auto}
  .menu-titling h2{font-size:50px}
}
@media(max-width:530px){
  .studio-nav,#review{padding-inline:12px}
  .studio-nav nav{gap:3px;width:100%;flex-wrap:nowrap}
  .studio-nav nav a{flex:1;white-space:normal;font-size:10px;padding:4px 5px}
  .studio-nav nav b{display:block}
  .dashboard{grid-template-columns:1fr;min-height:0}
  .dash-side{border-right:0;border-bottom:1px solid var(--line);padding:9px 11px}
  .dash-side .wordmark{width:75px;margin-bottom:5px}
  .dash-side-label{display:none}
  .dash-side ul{display:flex;flex-wrap:wrap;gap:4px 11px}
  .dash-side li{font-size:10px}
  .dash-top .tiny{font-size:9px}
  .dash-hero{min-height:125px}
  .dash-title h2{font-size:32px}
  .section-head h3{font-size:19px}
  .chart{height:135px}
  .dash-foot{text-align:left}
}
@media(max-width:345px){
 .menu-header,.menu-body{padding-inline:12px}
 .menu-titling h2,.single .menu-titling h2{font-size:45px}
 .menu-tabs button{font-size:10px}
 .dish summary{gap:6px}
 .section-head h3{font-size:16px}
}

.story-sources{display:flex;flex-wrap:wrap;gap:4px 12px;padding:0 0 9px;color:var(--accent);font-size:11px}
.dash-art img{object-position:left center}
.dash-art--complete img{object-fit:contain;object-position:center}
.art-note{display:grid;grid-template-columns:112px minmax(0,1fr);gap:18px;align-items:center;border-block:1px solid var(--board-rule);margin:15px 0 0;padding:10px 0}
.art-note img{display:block;width:100%;height:112px;object-fit:cover;object-position:center 42%}
.art-note h2{color:var(--ink);font:600 22px/1.06 var(--head);letter-spacing:-.04em;margin:4px 0 5px}
.art-note figcaption>.tiny{margin:0;color:var(--muted)}
.art-note blockquote{margin:0;color:var(--ink);font:italic 16px/1.25 var(--head)}
.art-note-source{color:var(--board-sub);font-size:10px;margin:6px 0 0}
@media(max-width:400px){
  .art-note{grid-template-columns:88px minmax(0,1fr);gap:10px}
  .art-note img{height:110px}
  .art-note h2{font-size:18px}
  .art-note blockquote{font-size:14px}
}
