/* menu */
.menu { background: var(--night-2); color: var(--cream); padding: 4rem 0 4.5rem; border-top: 1px solid rgba(232,168,95,.25); }
.menu h2 { font-size: clamp(2.2rem, 7vw, 3.2rem); }
.menu .note { margin: .5rem 0 1.6rem; color: rgba(251,234,208,.72); }
.tabs {
  display: flex; gap: .5rem; overflow-x: auto; padding: .4rem 1.25rem .9rem;
  margin: 0 -1.25rem 1.2rem;
  scrollbar-width: none;
}
.tabs::-webkit-scrollbar { display: none; }
.tab {
  flex: 0 0 auto; min-height: 2.75rem; padding: .5rem 1.15rem;
  border-radius: 999px; border: 1.5px solid rgba(251,234,208,.35);
  background: transparent; color: var(--cream);
  font: 500 .95rem/1.2 "Be Vietnam Pro", system-ui, sans-serif; cursor: pointer;
  transition: background-color .15s ease, color .15s ease;
}
.tab:hover { border-color: var(--gold); }
.tab[aria-selected="true"] { background: var(--gold); border-color: var(--gold); color: #1a0f0c; font-weight: 600; }
.panel[hidden] { display: none; }
.sub + .sub { margin-top: 2.2rem; }
.sub h3 { font-size: 1.45rem; color: var(--gold); padding-bottom: .5rem; margin-bottom: 1.1rem; border-bottom: 1px solid rgba(232,168,95,.35); }
.sub .aside { margin: -.6rem 0 1.1rem; font-size: .92rem; color: rgba(251,234,208,.7); }
.list { list-style: none; margin: 0; padding: 0; display: grid; gap: 1.05rem 3.5rem; }
@media (min-width: 800px) { .list { grid-template-columns: 1fr 1fr; } }
.row { display: flex; align-items: baseline; gap: .6rem; }
.nm { font-weight: 500; font-size: 1.02rem; }
.lead { flex: 1 1 1rem; min-width: 1rem; border-bottom: 2px dotted rgba(232,168,95,.5); transform: translateY(-.28em); }
.pr { font-variant-numeric: tabular-nums; font-weight: 600; color: var(--gold); white-space: nowrap; }
.vi { font-style: italic; font-size: .9rem; color: rgba(251,234,208,.7); margin-top: .05rem; }
.tag { font-style: normal; font-size: .74rem; border: 1px solid rgba(251,234,208,.4); border-radius: 999px; padding: .05rem .5rem; margin-left: .35rem; white-space: nowrap; }
.menu-foot { margin-top: 2.6rem; padding-top: 1.6rem; border-top: 1px solid rgba(232,168,95,.25); display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.6rem; }
.menu-foot p { margin: 0; color: rgba(251,234,208,.85); }
