/* ===== Menu — dark, typographic, printed-carte feel ===== */

body{background:var(--ink);color:var(--sand)}
.foot{border-top:1px solid var(--line-dark)}

.menu-intro{text-align:center;padding-block:clamp(3.5rem,7vw,6rem) 0}
.menu-intro h2{color:var(--paper)}
.menu-intro .lede{color:rgba(246,240,231,.68)}
.menu-intro .eyebrow{color:var(--gold)}

/* course switcher */
.courses{
  position:sticky;top:var(--nav-h);z-index:40;background:rgba(21,18,16,.94);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border-block:1px solid var(--line-dark);margin-top:clamp(2.5rem,5vw,4rem)
}
.courses__row{display:flex;gap:.4rem;overflow-x:auto;padding:.9rem 0;scrollbar-width:none}
.courses__row::-webkit-scrollbar{display:none}
.courses button{
  flex:0 0 auto;background:none;border:1px solid transparent;border-radius:999px;
  padding:.6rem 1.4rem;cursor:pointer;color:rgba(246,240,231,.6);
  font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;transition:.3s var(--ease)
}
.courses button:hover{color:var(--paper)}
.courses button.is-on{background:var(--clay);border-color:var(--clay);color:var(--paper)}

/* panels */
[data-panel]{animation:fade .5s var(--ease)}
@keyframes fade{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

.course{padding-block:clamp(3rem,6vw,5rem)}
.course + .course{border-top:1px solid var(--line-dark)}
.course__head{display:flex;align-items:baseline;justify-content:space-between;gap:2rem;margin-bottom:2.8rem;flex-wrap:wrap}
.course__head h3{font-size:clamp(1.9rem,3.6vw,2.8rem);color:var(--paper)}
.course__head span{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}

.items{display:grid;grid-template-columns:1fr 1fr;gap:2.6rem 4rem}
.item{display:grid;gap:.45rem}
.item__top{display:flex;align-items:baseline;gap:.9rem}
.item__top h4{font-family:var(--display);font-size:1.45rem;color:var(--paper);font-weight:500;white-space:nowrap}
.item__dots{flex:1;border-bottom:1px dotted rgba(246,240,231,.28);transform:translateY(-.3rem)}
.item__price{font-family:var(--display);font-size:1.35rem;color:var(--gold)}
.item p{margin:0;font-size:.92rem;color:rgba(246,240,231,.6);max-width:46ch}
.item__marks{display:flex;gap:.45rem;margin-top:.3rem}
.mark{
  font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(246,240,231,.55);
  border:1px solid var(--line-dark);border-radius:999px;padding:.22rem .6rem
}
.mark--v{color:#9fb388;border-color:rgba(159,179,136,.4)}
.mark--s{color:var(--clay);border-color:rgba(180,83,42,.5)}

/* tasting menu feature */
.tasting{background:var(--clay);color:var(--paper)}
.tasting__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.tasting h2{color:var(--paper)}
.tasting ol{list-style:none;counter-reset:c;margin:2rem 0 0;padding:0;display:grid;gap:1rem}
.tasting li{counter-increment:c;display:flex;gap:1.2rem;align-items:baseline;
  border-bottom:1px solid rgba(255,253,249,.22);padding-bottom:1rem}
.tasting li::before{content:counter(c,decimal-leading-zero);font-family:var(--display);
  font-size:.9rem;opacity:.7;min-width:2ch}
.tasting li b{font-family:var(--display);font-size:1.3rem;font-weight:500}
.tasting li span{opacity:.78;font-size:.9rem;display:block}
.tasting__price{font-family:var(--display);font-size:clamp(3rem,7vw,5rem);line-height:1}
.tasting__price small{display:block;font-family:var(--body);font-size:.72rem;
  letter-spacing:.24em;text-transform:uppercase;opacity:.8;margin-top:.8rem}

/* wine */
.wine{background:#100e0c}
.wine__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-top:3rem}
.wine__col h4{font-size:1.5rem;color:var(--paper);margin-bottom:1.4rem;
  padding-bottom:.8rem;border-bottom:1px solid var(--line-dark)}
.wine__row{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0;font-size:.9rem;
  color:rgba(246,240,231,.66)}
.wine__row b{font-weight:400;color:var(--sand)}
.wine__row em{font-style:normal;color:var(--gold);font-family:var(--display);font-size:1.05rem}

/* notes */
.notes{border-top:1px solid var(--line-dark);padding-block:3rem;
  display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;
  font-size:.85rem;color:rgba(246,240,231,.55)}
.notes b{color:var(--gold);display:block;font-size:.72rem;letter-spacing:.24em;
  text-transform:uppercase;margin-bottom:.5rem;font-weight:400}

@media (max-width:900px){
  .items,.tasting__grid,.wine__cols,.notes{grid-template-columns:1fr}
  .item__top h4{white-space:normal}
}
