:root{
  --ground:#151B1B;   /* their PDF ground */
  --gold:#B9A07D;     /* their names + prices (sampled #B59A78, lifted a touch for small text) */
  --white:#E4E5E6;    /* their heads */
  --grey:#AAAEAF;     /* their descriptions */
  --rule:rgba(228,234,234,.55);
  --line:rgba(228,229,230,.12);
  --s1:.5rem;--s2:1rem;--s3:1.5rem;--s4:2.5rem;--s5:4rem;--s6:6rem;
  --f:"Poppins",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0}
html{-webkit-text-size-adjust:100%;scroll-padding-top:3.75rem}
body{background:var(--ground);color:var(--white);font:400 1rem/1.5 var(--f);padding-bottom:4.75rem;
  /* their dashed vertical rule, down the right edge */
  background-image:repeating-linear-gradient(to bottom,var(--rule) 0 14px,transparent 14px 30px);
  background-size:1.5px 100%;background-repeat:no-repeat;background-position:calc(100% - .9rem) 0}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.wrap{width:min(100% - 3.5rem, 62rem);margin-left:1.25rem;margin-right:2.25rem}
@media (min-width:760px){.wrap{margin-inline:auto;width:min(100% - 8rem,62rem)} body{background-position:calc(100% - 2.5rem) 0}}
.caps{text-transform:uppercase}
h1,h2{font-weight:300;text-transform:uppercase;line-height:1;letter-spacing:.005em}

/* ---------- hero ---------- */
.hero{position:relative;padding:var(--s3) 0 var(--s5)}
.top{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s2)}
.mark{font-weight:400;letter-spacing:.42em;font-size:1.05rem;text-decoration:none}
.where{color:var(--gold);font-size:.875rem;text-align:right}
h1{font-size:clamp(2.6rem,11.5vw,5.75rem);margin:var(--s5) 0 var(--s3);max-width:12ch}
.lede{color:var(--grey);max-width:32ch;font-size:1.0625rem}
.status{display:flex;align-items:center;gap:.55rem;margin:var(--s3) 0 var(--s2);font-weight:600;font-size:.95rem}
.status i{width:.6rem;height:.6rem;border-radius:50%;background:var(--grey);flex:none}
.status.open i{background:#4FB06D}
.actions{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:center}
.btn{display:inline-flex;align-items:center;gap:.6rem;font:600 1rem/1 var(--f);text-decoration:none;border-radius:999px;padding:1rem 1.35rem;min-height:3.25rem;background:var(--gold);color:var(--ground)}
.btn svg{width:1.2rem;height:1.2rem;flex:none}
.tlink{font-weight:600;font-size:.95rem;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:1.5px;text-underline-offset:5px;padding:.5rem 0}
.frame{border:1.5px solid var(--gold);border-radius:1.25rem;padding:.5rem;width:min(100%,20rem)}
.frame img{border-radius:.8rem}
.frame figcaption{color:var(--grey);font-size:.8125rem;padding:.55rem .35rem .15rem}
.hero .frame{margin-top:var(--s4)}
.spine{position:absolute;right:1.3rem;bottom:var(--s4);writing-mode:vertical-rl;transform:rotate(180deg);font-size:.6875rem;letter-spacing:.24em;color:var(--white);white-space:nowrap;background:var(--ground);padding:.35rem 0}

/* ---------- menu nav ---------- */
.mnav{position:sticky;top:0;z-index:5;background:var(--ground);border-bottom:1px solid var(--line)}
.mnav ul{list-style:none;padding:0;display:flex;gap:1.35rem;overflow-x:auto;white-space:nowrap;scrollbar-width:none}
.mnav ul::-webkit-scrollbar{display:none}
.mnav a{display:block;padding:.95rem 0;font-size:.875rem;font-weight:600;text-decoration:none;color:var(--grey)}
.mnav a:hover{color:var(--white)}

/* ---------- menu ---------- */
.sec{padding-top:var(--s5);scroll-margin-top:3.5rem}
.note{color:var(--grey);font-size:.875rem;padding-top:var(--s3)}
h2{font-size:clamp(2.4rem,10vw,4rem);margin-bottom:var(--s3)}
.kicker{display:block;color:var(--gold);font-weight:600;font-size:.8125rem;letter-spacing:.3em;margin-bottom:.35rem}
.list{list-style:none;padding:0;font-variant-numeric:tabular-nums}
.list li{display:grid;grid-template-columns:1fr auto;gap:.25rem 1rem;padding:.6rem 0;border-bottom:1px solid var(--line)}
.list .p{color:var(--gold);text-align:right;min-width:3.2ch}
.list small{grid-column:1/-1;color:var(--gold);font-size:.8125rem;margin-top:-.2rem}
.fries .list li{font-size:1.0625rem}

.extras{border:1.5px solid var(--gold);border-radius:1.25rem;padding:var(--s3);margin-top:var(--s4)}
.extras h3{font-weight:600;font-size:.9375rem;letter-spacing:.3em;text-transform:uppercase;margin-bottom:var(--s2)}
.extras .list li{border-bottom-color:transparent;padding:.4rem 0}

.dishes{list-style:none;padding:0;font-variant-numeric:tabular-nums}
.dishes li{display:grid;grid-template-columns:1fr auto;gap:.15rem 1.25rem;padding:.9rem 0;border-bottom:1px solid var(--line)}
.dishes b{color:var(--gold);font-weight:700;text-transform:uppercase;font-size:.9875rem;letter-spacing:.01em}
.dishes .p{color:var(--gold);text-align:right}
.dishes p{grid-column:1;color:var(--grey);font-size:.9375rem;max-width:46ch}

.platter{display:grid;gap:var(--s3);margin-bottom:var(--s4)}
.platter .frame{width:min(100%,22rem)}
.platter h3{color:var(--gold);font-weight:400;font-size:clamp(1.9rem,8vw,2.75rem);line-height:1.05;text-transform:uppercase;display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.platter h3 span{font-size:.7em}
.platter p{color:var(--white);font-size:1.0625rem;margin-top:var(--s2);max-width:34ch}
.deals .dishes b{font-weight:400;letter-spacing:.02em;font-size:1.0625rem}
.alacarte{margin-top:var(--s4)}
.alacarte li{color:var(--gold);text-transform:uppercase;letter-spacing:.02em}

.kids{display:grid;gap:var(--s2)}
.kids .per{color:var(--gold);font-weight:700;font-size:1.25rem}
.kids ul{padding-left:1.1rem;color:var(--gold);font-weight:600;font-size:1.0625rem;line-height:1.9}
.kids p{color:var(--grey);font-size:.9375rem}
.drinks{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--line);color:var(--grey)}
.drinks a{color:var(--white);font-weight:600}

/* ---------- jazz ---------- */
.jazz{padding:var(--s6) 0 var(--s5)}
.jazz .wrap{display:grid;gap:var(--s4);align-items:center}
.jazz p{font-size:1.125rem;max-width:30ch;margin:0 0 var(--s3);color:var(--white)}
.jazz .frame{width:min(100%,21rem)}

.origin{padding:var(--s5) 0;border-top:1px solid var(--line)}
.origin blockquote{font-weight:300;font-size:clamp(1.35rem,5.4vw,2rem);line-height:1.35;max-width:32ch}
.origin cite{display:block;font-style:normal;color:var(--gold);font-size:.875rem;margin-top:var(--s2)}

/* ---------- visit ---------- */
.visit{padding:var(--s5) 0;border-top:1px solid var(--line)}
.visit .wrap{display:grid;gap:var(--s4)}
.visit .frame{width:min(100%,22rem)}
.facts{display:grid;gap:var(--s3)}
.facts h3{font-weight:600;font-size:.8125rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:.25rem}
.facts p{font-size:1.0625rem}
.visit .actions{margin-top:var(--s4)}
.map{margin-top:var(--s3);border:1.5px solid var(--line);border-radius:1.25rem;overflow:hidden;aspect-ratio:4/3;background:#1d2424}
.map iframe{width:100%;height:100%;border:0}

footer{color:#7d8384;font-size:.8125rem;padding:var(--s3) 0 var(--s4)}

/* ---------- thumb bar ---------- */
.bar{position:fixed;left:0;right:0;bottom:0;z-index:10;display:grid;grid-template-columns:1fr auto auto;gap:.5rem;padding:.6rem .75rem calc(.6rem + env(safe-area-inset-bottom));background:var(--ground);border-top:1px solid var(--line)}
.bar a{display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:3.1rem;border-radius:999px;font:600 .9375rem/1 var(--f);text-decoration:none;color:var(--white);padding:0 1rem;border:1.5px solid rgba(228,229,230,.3)}
.bar a.wa{background:var(--gold);color:var(--ground);border-color:var(--gold)}
.bar svg{width:1.15rem;height:1.15rem}

@media (min-width:760px){
  body{padding-bottom:0}
  .bar{display:none}
  .hero .wrap{display:grid;grid-template-columns:1fr 20rem;column-gap:var(--s5);align-items:end}
  .hero .frame{margin-top:0}
  .top{grid-column:1/-1}
  .spine{right:3.1rem;bottom:var(--s5)}
  .fries .wrap{display:grid;grid-template-columns:1fr 20rem;column-gap:var(--s5);align-items:start}
  .fries h2,.fries .kicker{grid-column:1/-1}
  .extras{margin-top:0}
  .dishes,.deals .dishes{max-width:46rem}
  .platter{grid-template-columns:22rem 1fr;gap:var(--s5);align-items:center}
  .alacarte{max-width:30rem}
  .sides .list{max-width:36rem}
  .kids{grid-template-columns:1fr auto;align-items:start;max-width:46rem}
  .jazz .wrap{grid-template-columns:1fr 21rem}
  .visit .wrap{grid-template-columns:22rem 1fr;gap:var(--s5);align-items:start}
}

/* ---------- homepage: curated + links ---------- */
.more{display:inline-flex;align-items:center;min-height:3rem;margin-top:var(--s3);padding:.8rem 1.3rem;border:1.5px solid var(--gold);border-radius:999px;color:var(--gold);font-weight:600;font-size:.9375rem;text-decoration:none}
.more:hover{background:var(--gold);color:var(--ground)}
.start-intro{color:var(--grey);max-width:36ch;margin:-.75rem 0 var(--s4)}
.block{padding-top:var(--s4);margin-top:var(--s4);border-top:1px solid var(--line)}
.block:first-of-type{border-top:0;margin-top:0;padding-top:0}
h3.sub{font-weight:300;text-transform:uppercase;font-size:clamp(1.6rem,6.5vw,2.25rem);line-height:1.05;margin-bottom:var(--s2)}
.tree{border:1.5px solid var(--gold);border-radius:1.25rem;padding:var(--s3)}
.tree p.lead{color:var(--white);font-size:1.0625rem;margin-bottom:var(--s2);max-width:36ch}
.tree .fine{color:var(--gold);font-size:.875rem;margin-top:var(--s2)}
.tree .fine a{color:var(--white);font-weight:600}

/* nyama by weight table */
.weights{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.weights caption{text-align:left;color:var(--grey);font-size:.875rem;padding-bottom:.5rem}
.weights th,.weights td{padding:.6rem 0;border-bottom:1px solid var(--line);text-align:right;font-weight:400}
.weights thead th{color:var(--grey);font-size:.8125rem;font-weight:600}
.weights th[scope=row]{text-align:left;color:var(--white)}
.weights td{color:var(--gold);padding-left:.75rem;white-space:nowrap}
.weights td.na{color:var(--grey)}
.with{color:var(--grey);font-size:.9375rem;margin-top:var(--s2)}

/* menu page header */
.mhead{padding:var(--s3) 0 var(--s4)}
.mhead h1{font-size:clamp(2.6rem,11vw,5rem);margin:var(--s4) 0 var(--s2)}
.mhead p{color:var(--grey);max-width:36ch}
.back{color:var(--gold);font-size:.875rem;font-weight:600;text-decoration:none}
.back:hover{text-decoration:underline}
.endnote{color:var(--grey);padding:var(--s5) 0 var(--s4)}
.endnote a{color:var(--white);font-weight:600}
@media (min-width:760px){
  .start-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--s5);align-items:start}
  .weights{max-width:40rem}
}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.bar a.wa svg{margin-right:.1rem}
.more{margin-bottom:var(--s2)}
.list small.d{color:var(--grey)}
.cols{display:grid;gap:var(--s4);margin-top:var(--s4)}
.gh{font-weight:600;font-size:.875rem;letter-spacing:.3em;text-transform:uppercase;margin-bottom:.5rem}
.note2{color:var(--grey);font-size:.9375rem;max-width:44ch}
.juicebox h3{letter-spacing:.02em;text-transform:none;font-weight:300;font-size:1.5rem;line-height:1.2}
.juicebox p{margin-top:.5rem}
.juicebox small{display:block;color:var(--gold);font-size:.8125rem;margin-top:.5rem}
.tree{margin-top:var(--s2)}
@media (min-width:760px){.cols{grid-template-columns:1fr 1fr;column-gap:var(--s5)} .juicebox{max-width:30rem}}
