/* Menu text is served in HTML. Native details controls need no JavaScript. */
.restaurant-menu { padding-block: 58px; }
.menu-intro { max-width: 760px; margin-bottom: 28px; }
.menu-intro h2 { margin-bottom: 18px; }
.menu-intro .menu-hours { font-weight: 500; margin-bottom: 12px; }
.menu-intro .menu-tax-note { font-size: 14px; margin-bottom: 4px; }
.menu-intro .menu-help { margin: 16px 0 0; font-size: 14px; color: var(--muted); }
.menu-categories { max-width: 960px; }
.menu-category { border-top: 1px solid var(--line); }
.menu-category:last-child { border-bottom: 1px solid var(--line); }
.menu-category summary { padding: 19px 0; min-height: 58px; font-size: 21px; line-height: 1.45; font-weight: 500; cursor: pointer; }
.menu-category summary::marker { color: var(--gold); font-size: 15px; }
.menu-category-note { margin: 0 0 20px; font-size: 14px; color: var(--muted); }
.menu-items { list-style: none; padding: 0; margin: 0 0 24px; }
.menu-item { padding: 16px 0; border-top: 1px solid var(--line); }
.menu-item:first-child { border-top: 0; padding-top: 0; }
.menu-item-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; font-size: 16px; line-height: 1.5; }
.menu-item-heading strong { font-weight: 500; overflow-wrap: anywhere; }
.menu-price { flex-shrink: 0; font-variant-numeric: tabular-nums; }
.menu-item .menu-description { color: var(--muted); font-size: 14px; margin: 5px 0 0; line-height: 1.65; overflow-wrap: anywhere; }
.menu-variants { margin: 9px 0 0; font-size: 14px; font-variant-numeric: tabular-nums; }
.menu-variants div { display: flex; justify-content: space-between; gap: 20px; margin-top: 5px; }
.menu-variants dt { color: var(--muted); }
.menu-variants dd { margin: 0; flex-shrink: 0; }
.menu-intro .service-text-link { overflow-wrap: anywhere; }
@media (max-width: 620px) {
  .restaurant-menu { padding-block: 38px; }
  .menu-category summary { font-size: 19px; padding-block: 17px; }
  .menu-item-heading { font-size: 15px; gap: 14px; }
  .menu-item .menu-description, .menu-variants { font-size: 13px; }
  .menu-item { padding-block: 14px; }
}
@media (max-width: 360px) {
  .menu-item-heading { font-size: 14px; gap: 10px; }
  .menu-variants div { gap: 10px; }
}
