.menu-hero{
  background: var(--ink);
  color: var(--cream);
  padding: 64px 0 40px;
}
.menu-hero h1{
  font-size: clamp(2.4rem, 5vw, 3.4rem);
  text-transform: uppercase;
}
.menu-hero p{
  margin-top: 16px;
  color: rgba(243,233,220,0.75);
  max-width: 60ch;
}
.legend-chili{ display: inline-flex; vertical-align: -3px; }
.legend-chili .chili{ color: var(--ember); }

.menu-jump{
  margin-top: 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
}
.menu-jump a{
  font-family: var(--f-display);
  font-size: 0.92rem;
  color: var(--flame);
  border-bottom: 1px solid transparent;
}
.menu-jump a:hover{ border-color: var(--flame); }

.menu-cat{
  padding: 64px 0 8px;
  scroll-margin-top: 96px;
}
.menu-cat h2{ font-size: clamp(1.6rem, 3vw, 2.1rem); }
.cat-note{ color: var(--olive); margin-top: 10px; font-size: 0.94rem; }
.menu-cat .skewer{ margin: 20px 0 30px; }

.menu-list{
  list-style: none;
  margin: 0;
  padding: 0;
}
.menu-list.two-col{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 48px;
}
.menu-item{
  padding: 18px 0;
  border-bottom: 1px solid rgba(28,21,18,0.12);
}
.menu-list.two-col .menu-item{ padding: 14px 0; }
.menu-item:last-child{ border-bottom: none; }

.menu-item-head{
  display: flex;
  align-items: baseline;
  gap: 10px;
}
.menu-item-head h3{
  font-size: 1.15rem;
  font-weight: 600;
  white-space: nowrap;
}
.dots{
  flex: 1;
  border-bottom: 1px dotted var(--olive);
  opacity: 0.5;
  height: 0;
  transform: translateY(-5px);
}
.menu-item .price{
  font-family: var(--f-display);
  color: var(--ember-dark);
  font-size: 1.05rem;
  white-space: nowrap;
}
.menu-item p{
  color: var(--olive);
  margin: 8px 0 8px;
  font-size: 0.96rem;
}
.menu-item .spice{ display: inline-flex; gap: 4px; }
.menu-item .chili.on{ color: var(--ember-dark); }

@media (max-width: 640px){
  .menu-list.two-col{ grid-template-columns: 1fr; }
  .menu-item-head h3{ font-size: 1.05rem; }
}

.menu-cta{
  background: var(--paper);
  border-top: 1px solid rgba(28,21,18,0.1);
  padding: 70px 0 90px;
  text-align: center;
}
.menu-cta-inner{ max-width: 560px; margin: 0 auto; }
.menu-cta h2{ font-size: clamp(1.7rem, 3vw, 2.2rem); margin-bottom: 12px; }
.menu-cta p{ color: var(--olive); margin: 0 auto 26px; }
.menu-cta .hero-actions{ justify-content: center; display: flex; gap: 16px; flex-wrap: wrap; }
