@page { margin: 13mm; }

body { background: white; color: #23160f; }
.skip-link { display: none !important; }
.full-menu-page { max-width: none; }
.full-menu-page .wrap { width: 100%; max-width: none; }
.full-menu-page .print-menu-heading {
  display: block;
  padding-bottom: 8pt;
  border-bottom: 1pt solid #493023;
}
.print-menu-heading strong { font-size: 16pt; }
.print-menu-heading p { font-size: 10pt; }
.full-menu-page .page-heading { display: block; min-height: 0; padding: 8pt 0; }
.full-menu-page .page-heading h1 { font-size: 23pt; }
.full-menu-page .page-heading .eyebrow,
.full-menu-page .page-heading .page-intro,
.full-menu-page .page-illustration,
.full-menu-page .menu-build-lala { display: none; }
.full-menu-page .full-menu-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4pt 15pt;
  padding: 0;
}
.full-menu-page .text-menu-card {
  display: block;
  break-inside: avoid;
  padding: 6pt 0;
  border-top: 0.5pt solid #aa998d;
}
.full-menu-page .text-menu-photo,
.full-menu-page .broth-illustration { display: none; }
.full-menu-page .text-menu-copy h2 { margin: 0; font-size: 13pt; line-height: 1.15; }
.full-menu-page .text-menu-copy p,
.full-menu-page .menu-build-panel p { margin: 3pt 0; font-size: 9pt; line-height: 1.35; }
.full-menu-page .card-prices { display: flex; gap: 12pt; margin: 4pt 0; }
.full-menu-page .card-prices div { display: flex; align-items: baseline; gap: 4pt; }
.full-menu-page .card-prices dt, .full-menu-page .card-prices dd { margin: 0; font-size: 10pt; }
.full-menu-page .spice-text, .full-menu-page .menu-footnote,
.full-menu-page .allergy-short { display: block !important; font-size: 9.5pt; line-height: 1.4; }
.full-menu-page .allergy-short, .full-menu-page .menu-footnote { margin: 6pt 0 0; }
.full-menu-page .allergy-short a { display: none; }
.full-menu-page .menu-build-panel {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas:
    "heading heading"
    "sizes prices"
    "notes notes"
    "broths broths";
  gap: 6pt 18pt;
  break-before: page;
  padding: 0 0 4pt;
  align-items: start;
}
.menu-build-panel > .section-heading { grid-area: heading; }
.menu-build-panel > .portion-comparison { grid-area: sizes; }
.menu-build-panel > .menu-byo-options { grid-area: broths; margin: 0; }
.menu-build-panel > .protein-prices { grid-area: prices; }
.menu-build-panel > p { grid-area: notes; }
.full-menu-page .portion-comparison { display: flex; gap: 8pt; margin: 0; }
.full-menu-page .portion-comparison article { flex: 1; padding: 4pt; }
.full-menu-page .portion-comparison h3 { margin: 0; font-size: 13pt; }
.full-menu-page .portion-comparison dl { margin: 5pt 0 0; }
.full-menu-page .portion-comparison dl div { min-height: 0; padding: 2pt 0; font-size: 9pt; line-height: 1.25; }
.full-menu-page .portion-comparison dd { font-size: 10pt; line-height: 1.25; }
.full-menu-page .section-heading, .full-menu-page .protein-prices { margin: 4pt 0; }
.full-menu-page .section-heading .eyebrow { display: none; }
.full-menu-page .section-heading h2 { margin: 0; font-size: 17pt; }
.full-menu-page details::details-content { display: block; content-visibility: visible; }
.full-menu-page summary { padding: 2pt 0; font-size: 12pt; }
.full-menu-page .broth-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 3pt 6pt; margin: 4pt 0; }
.full-menu-page .broth-stamp { display: block; min-height: 0; padding: 2pt 0; break-inside: avoid; }
.full-menu-page .broth-stamp h3 { min-height: 0; margin: 0; font-size: 10pt; }
.full-menu-page .broth-stamp p { min-height: 0; margin: 2pt 0 0; line-height: 1.2; }
.full-menu-page .menu-byo-options .broth-grid + p { display: none; }
.full-menu-page .protein-prices h3 { margin: 0 0 4pt; font-size: 13pt; }
.full-menu-page .protein-prices table { font-size: 10pt; line-height: 1.3; }
.full-menu-page .protein-prices th, .full-menu-page .protein-prices td { padding: 1pt 4pt; }
.full-menu-page .ingredient-section { padding: 8pt 0 0; break-inside: avoid; }
.full-menu-page .ingredient-section .eyebrow { display: none; }
.full-menu-page .ingredient-section h2 { margin: 0 0 5pt; font-size: 16pt; }
.full-menu-page .ingredient-groups { display: grid; grid-template-columns: repeat(2,1fr); gap: 5pt 14pt; margin: 0; }
.full-menu-page .ingredient-groups details { padding: 4pt 0; }
.full-menu-page .ingredient-groups summary { min-height: 0; margin: 0; padding: 1pt 0; }
.full-menu-page .ingredient-groups summary > span { border: none; width: auto; height: auto; font-size: 9pt; }
.full-menu-page .ingredient-groups ul { columns: 2; font-size: 9pt; margin: 3pt 0 0; padding-left: 10pt; }
.full-menu-page .ingredient-groups li { padding: 0; margin: 0; line-height: 1.28; }
