.menu-page { background: var(--color-black); }
.menu-page .container { max-width: var(--container-max); }
.menu-page .menu-hero__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-4); align-items: stretch; }
.menu-page .menu-hero__content { grid-column: 1 / span 6; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); padding-block: var(--space-5); }
.menu-page .menu-hero__content > * { margin: 0; min-width: 0; }
.menu-page .menu-hero__lead { max-width: 50ch; }
.menu-page .menu-hero__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); min-width: 0; }
.menu-page .menu-hero__actions > * { min-width: 0; max-width: 100%; }
.menu-page .menu-hero__media { grid-column: 7 / span 6; min-width: 0; width: 100%; min-height: 38.75rem; position: relative; overflow: visible; }
.menu-page .menu-hero__media img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(0.55) contrast(1.08); }
.menu-page .menu-hero__status { position: absolute; left: 16%; bottom: var(--space-5); z-index: 2; width: min(70%, 25rem); min-width: 0; display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-5); border: var(--border-strong-acid); background: var(--color-black); box-shadow: var(--shadow-hard-acid); }
.menu-page .menu-hero__status > * { margin: 0; }
.menu-page .menu-hero__status p { max-width: 38ch; font-size: 0.875rem; color: var(--color-muted); }
.menu-page .menu-layout__intro { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-4); align-items: start; margin-bottom: var(--space-7); }
.menu-page .menu-layout__copy { grid-column: 1 / span 4; min-width: 0; }
.menu-page .menu-layout__copy p { max-width: 60ch; }
.menu-page .menu-layout__index { grid-column: 5 / span 2; min-width: 0; display: flex; flex-direction: column; gap: var(--space-2); border-left: var(--border-acid); padding-left: var(--space-4); }
.menu-page .menu-layout__index a { font-size: var(--font-size-label); font-weight: 700; letter-spacing: 0.06em; text-decoration: none; text-transform: uppercase; }
.menu-page .menu-layout__cards { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-4); align-items: start; }
.menu-page .menu-card { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--space-5); border: var(--border-default); background: var(--color-surface); transition: border-color var(--transition-fast); }
.menu-page .menu-card > * { margin: 0; min-width: 0; }
.menu-page .menu-card:hover { border-color: var(--color-acid); }
.menu-page .menu-card p { max-width: 52ch; }
.menu-page .menu-card__number { color: var(--color-acid); font-size: clamp(2rem, 3vw, 3rem); font-family: var(--font-heading); font-weight: 800; line-height: 1; }
.menu-page .menu-card--start { grid-column: 1 / span 3; }
.menu-page .menu-card--shared { grid-column: 4 / span 5; margin-top: var(--space-6); border-color: var(--color-white); }
.menu-page .menu-card--shared::after { width: 4rem; height: 2px; background: var(--color-acid); content: ""; }
.menu-page .menu-card--main { grid-column: 9 / span 4; background: var(--color-black); border-color: var(--color-white); }
.menu-page .menu-card--sweet { grid-column: 1 / span 3; margin-top: calc(var(--space-6) * -1); }
.menu-page .shared-table__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-4); align-items: start; }
.menu-page .shared-table__content { grid-column: 1 / span 5; min-width: 0; }
.menu-page .shared-table__lead { max-width: 58ch; }
.menu-page .shared-table__media { grid-column: 8 / span 4; min-width: 0; width: 100%; margin: 0; border-color: var(--color-white); }
.menu-page .shared-table__media img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; filter: grayscale(0.55) contrast(1.08); }
.menu-page .shared-table__steps { display: flex; flex-direction: column; gap: var(--space-4); min-width: 0; margin-top: var(--space-6); }
.menu-page .shared-table__step { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: var(--space-3); min-width: 0; padding-top: var(--space-4); border-top: var(--border-default); }
.menu-page .shared-table__step > * { min-width: 0; }
.menu-page .shared-table__step > span { color: var(--color-acid); font-family: var(--font-heading); font-weight: 800; }
.menu-page .shared-table__step h3 { margin-bottom: var(--space-2); }
.menu-page .shared-table__step p { max-width: 48ch; margin-bottom: 0; }
.menu-page .bar-lounge__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-4); align-items: start; }
.menu-page .bar-lounge__media { grid-column: 1 / span 7; min-width: 0; width: 100%; margin: 0; }
.menu-page .bar-lounge__media img { width: 100%; height: 27.5rem; object-fit: cover; filter: grayscale(0.55) contrast(1.08); }
.menu-page .bar-lounge__content { grid-column: 8 / span 5; min-width: 0; display: flex; flex-direction: column; gap: var(--space-5); }
.menu-page .bar-lounge__content > * { margin: 0; }
.menu-page .bar-lounge__lead { max-width: 56ch; }
.menu-page .bar-lounge__lounge, .menu-page .bar-lounge__boundary { display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-4); min-width: 0; }
.menu-page .bar-lounge__lounge > *, .menu-page .bar-lounge__boundary > * { margin: 0; }
.menu-page .bar-lounge__lounge p { max-width: 50ch; }
.menu-page .bar-lounge__boundary p { max-width: 46ch; }
.menu-page .menu-rules-toggle { align-self: flex-start; min-height: 2.5rem; padding: var(--space-2) var(--space-3); }
.menu-page .menu-rules-detail[hidden] { display: none; }
.menu-page .menu-rules-detail p { color: var(--color-muted); }
.menu-page .visit-rhythm__heading { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-4); align-items: start; margin-bottom: var(--space-7); }
.menu-page .visit-rhythm__heading > div { grid-column: 1 / span 5; min-width: 0; }
.menu-page .visit-rhythm__heading > p { grid-column: 8 / span 4; min-width: 0; max-width: 60ch; }
.menu-page .visit-rhythm__cards { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-4); align-items: start; }
.menu-page .visit-card { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--space-5); border: var(--border-default); background: var(--color-surface); transition: border-color var(--transition-fast); }
.menu-page .visit-card > * { margin: 0; min-width: 0; }
.menu-page .visit-card:hover { border-color: var(--color-acid); }
.menu-page .visit-card > span:first-child { color: var(--color-acid); font-family: var(--font-heading); font-size: 2.5rem; font-weight: 800; line-height: 1; }
.menu-page .visit-card p { max-width: 52ch; }
.menu-page .visit-card:nth-child(1) { grid-column: 1 / span 3; }
.menu-page .visit-card:nth-child(2) { grid-column: 4 / span 6; margin-top: var(--space-5); border-color: var(--color-white); }
.menu-page .visit-card:nth-child(3) { grid-column: 10 / span 3; }
.menu-page .format-rules__heading { width: calc((100% - 11 * var(--space-4)) / 12 * 8 + 7 * var(--space-4)); min-width: 0; margin-inline: auto; text-align: center; }
.menu-page .format-rules__heading p { max-width: 56ch; margin-inline: auto; }
.menu-page .format-rules__panels { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-4); align-items: start; margin-top: var(--space-7); }
.menu-page .format-rules__exclusions, .menu-page .format-rules__explain { min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-5); }
.menu-page .format-rules__exclusions > *, .menu-page .format-rules__explain > * { margin: 0; }
.menu-page .format-rules__exclusions { grid-column: 1 / span 5; }
.menu-page .format-rules__exclusions p { max-width: 42ch; color: var(--color-white); font-size: clamp(1rem, 0.5vw + 0.9rem, 1.25rem); font-weight: 700; }
.menu-page .format-rules__explain { grid-column: 8 / span 5; }
.menu-page .format-rules__explain p { max-width: 54ch; }
.menu-page .format-rules__explain .button { align-self: flex-start; }
.menu-page .group-events__heading { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-4); align-items: start; margin-bottom: var(--space-7); }
.menu-page .group-events__heading > div { grid-column: 1 / span 5; min-width: 0; }
.menu-page .group-events__heading > p { grid-column: 8 / span 4; min-width: 0; max-width: 60ch; }
.menu-page .group-events__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); align-items: start; }
.menu-page .group-card { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--space-5); border: var(--border-default); background: var(--color-surface); }
.menu-page .group-card > * { margin: 0; }
.menu-page .group-card > span { color: var(--color-acid); font-family: var(--font-heading); font-size: 2.5rem; font-weight: 800; line-height: 1; }
.menu-page .group-card p { max-width: 50ch; }
.menu-page .group-card--raised { margin-top: calc(var(--space-5) * -1); border-color: var(--color-white); }
.menu-page .group-events__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-4); margin-top: var(--space-6); }
.menu-page .group-events__actions > * { min-width: 0; max-width: 100%; }
.menu-page .contact-brief__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-4); align-items: start; }
.menu-page .contact-brief__intro { grid-column: 1 / span 5; min-width: 0; }
.menu-page .contact-brief__intro p { max-width: 58ch; }
.menu-page .contact-brief__checklist { grid-column: 6 / span 4; min-width: 0; display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-5); }
.menu-page .contact-brief__checklist > * { margin: 0; }
.menu-page .contact-brief__checklist p { padding-top: var(--space-3); border-top: var(--border-default); max-width: 46ch; }
.menu-page .contact-brief__format { grid-column: 10 / span 3; min-width: 0; display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-4); }
.menu-page .contact-brief__format > * { margin: 0; }
.menu-page .contact-brief__format p { max-width: 46ch; }
.menu-page .contact-brief__action { grid-column: 10 / span 3; min-width: 0; width: 100%; }
.menu-page .contact-brief__action .button { width: 100%; }
.menu-page .reservation__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-4); align-items: stretch; }
.menu-page .reservation__intro { grid-column: 1 / span 7; min-width: 0; padding-block: var(--space-5); }
.menu-page .reservation__intro p { max-width: 56ch; }
.menu-page .reservation__panel { grid-column: 8 / span 5; min-width: 0; display: flex; flex-direction: column; align-items: stretch; gap: var(--space-4); padding: var(--space-5); border: var(--border-strong-acid); background: var(--color-surface); box-shadow: var(--shadow-hard-acid); }
.menu-page .reservation__panel > * { margin: 0; min-width: 0; }
.menu-page .reservation__panel .button { width: 100%; }
.menu-page .reservation__email { overflow-wrap: anywhere; color: var(--color-acid); font-weight: 700; }
.menu-page .reservation__address { padding-top: var(--space-4); border-top: var(--border-default); color: var(--color-muted); }
.menu-page .menu-closing__content { width: calc((100% - 11 * var(--space-4)) / 12 * 8 + 7 * var(--space-4)); min-width: 0; display: flex; flex-direction: column; align-items: center; gap: var(--space-5); margin-inline: auto; text-align: center; }
.menu-page .menu-closing__content > * { margin: 0; }
.menu-page .menu-closing__content > span { width: 4rem; height: 2px; background: var(--color-acid); }
.menu-page .menu-closing__content p { max-width: 48ch; }
.menu-page .menu-closing__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-3); min-width: 0; }
.menu-page .menu-closing__actions > * { min-width: 13.75rem; max-width: 18.75rem; }

@media (max-width: 63.9375rem) {
.menu-page .menu-hero__grid, .menu-page .menu-layout__intro, .menu-page .menu-layout__cards, .menu-page .shared-table__grid, .menu-page .bar-lounge__grid, .menu-page .visit-rhythm__heading, .menu-page .visit-rhythm__cards, .menu-page .format-rules__panels, .menu-page .group-events__heading, .menu-page .contact-brief__grid, .menu-page .reservation__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
.menu-page .menu-hero__content { grid-column: 1 / span 8; padding-block: 0; }
.menu-page .menu-hero__media { grid-column: 1 / span 8; min-height: 30rem; }
.menu-page .menu-hero__status { left: var(--space-5); bottom: var(--space-5); width: min(55%, 25rem); }
.menu-page .menu-layout__copy { grid-column: 1 / span 5; }
.menu-page .menu-layout__index { grid-column: 6 / span 3; }
.menu-page .menu-card--start { grid-column: 1 / span 4; }
.menu-page .menu-card--shared { grid-column: 1 / span 8; margin-top: 0; }
.menu-page .menu-card--main { grid-column: 5 / span 4; }
.menu-page .menu-card--sweet { grid-column: 1 / span 4; margin-top: 0; }
.menu-page .shared-table__media { grid-column: 1 / span 8; grid-row: 1; max-width: 32rem; }
.menu-page .shared-table__content { grid-column: 1 / span 8; grid-row: 2; }
.menu-page .bar-lounge__media { grid-column: 1 / span 8; }
.menu-page .bar-lounge__content { grid-column: 1 / span 8; }
.menu-page .bar-lounge__lounge { width: calc((100% - var(--space-4)) / 8 * 5 + var(--space-4) * 4); }
.menu-page .visit-rhythm__heading > div { grid-column: 1 / span 5; }
.menu-page .visit-rhythm__heading > p { grid-column: 6 / span 3; }
.menu-page .visit-card:nth-child(1) { grid-column: 1 / span 4; }
.menu-page .visit-card:nth-child(2) { grid-column: 5 / span 4; margin-top: 0; }
.menu-page .visit-card:nth-child(3) { grid-column: 1 / span 8; }
.menu-page .format-rules__heading, .menu-page .menu-closing__content { width: 100%; }
.menu-page .format-rules__exclusions { grid-column: 1 / span 4; }
.menu-page .format-rules__explain { grid-column: 5 / span 4; }
.menu-page .group-events__heading > div, .menu-page .group-events__heading > p { grid-column: 1 / span 8; }
.menu-page .group-events__cards { grid-template-columns: repeat(8, minmax(0, 1fr)); }
.menu-page .group-card:nth-child(1), .menu-page .group-card:nth-child(2) { grid-column: span 4; }
.menu-page .group-card:nth-child(3) { grid-column: 1 / span 8; }
.menu-page .group-card--raised { margin-top: 0; }
.menu-page .contact-brief__intro { grid-column: 1 / span 8; }
.menu-page .contact-brief__checklist { grid-column: 1 / span 5; }
.menu-page .contact-brief__format, .menu-page .contact-brief__action { grid-column: 6 / span 3; }
.menu-page .reservation__intro, .menu-page .reservation__panel { grid-column: 1 / span 8; }
}

@media (max-width: 47.9375rem) {
.menu-page .menu-hero__grid, .menu-page .menu-layout__intro, .menu-page .menu-layout__cards, .menu-page .shared-table__grid, .menu-page .bar-lounge__grid, .menu-page .visit-rhythm__heading, .menu-page .visit-rhythm__cards, .menu-page .format-rules__panels, .menu-page .group-events__heading, .menu-page .contact-brief__grid, .menu-page .reservation__grid, .menu-page .group-events__cards { grid-template-columns: minmax(0, 1fr); }
.menu-page .menu-hero__content, .menu-page .menu-hero__media, .menu-page .menu-layout__copy, .menu-page .menu-layout__index, .menu-page .menu-card--start, .menu-page .menu-card--shared, .menu-page .menu-card--main, .menu-page .menu-card--sweet, .menu-page .shared-table__content, .menu-page .shared-table__media, .menu-page .bar-lounge__media, .menu-page .bar-lounge__content, .menu-page .visit-rhythm__heading > div, .menu-page .visit-rhythm__heading > p, .menu-page .visit-card:nth-child(1), .menu-page .visit-card:nth-child(2), .menu-page .visit-card:nth-child(3), .menu-page .format-rules__exclusions, .menu-page .format-rules__explain, .menu-page .group-events__heading > div, .menu-page .group-events__heading > p, .menu-page .group-card:nth-child(1), .menu-page .group-card:nth-child(2), .menu-page .group-card:nth-child(3), .menu-page .contact-brief__intro, .menu-page .contact-brief__checklist, .menu-page .contact-brief__format, .menu-page .contact-brief__action, .menu-page .reservation__intro, .menu-page .reservation__panel { grid-column: 1; }
.menu-page .menu-hero__content { gap: var(--space-4); }
.menu-page .menu-hero__lead { max-width: 50ch; }
.menu-page .menu-hero__actions { width: 100%; flex-direction: column; }
.menu-page .menu-hero__actions .button { width: 100%; }
.menu-page .menu-hero__media { min-height: 0; overflow: hidden; }
.menu-page .menu-hero__media img { aspect-ratio: 4 / 3; height: auto; }
.menu-page .menu-hero__status { position: static; width: 100%; box-shadow: none; }
.menu-page .menu-layout__intro { margin-bottom: var(--space-6); }
.menu-page .menu-layout__index { border-left: 0; border-top: var(--border-acid); padding: var(--space-4) 0 0; }
.menu-page .menu-card { min-height: 11.25rem; }
.menu-page .shared-table__media { grid-row: auto; max-width: none; order: 0; }
.menu-page .shared-table__content { grid-row: auto; order: 1; }
.menu-page .shared-table__media img { aspect-ratio: 4 / 5; }
.menu-page .bar-lounge__media img { height: auto; aspect-ratio: 4 / 3; }
.menu-page .bar-lounge__lounge { width: 100%; }
.menu-page .visit-rhythm__heading, .menu-page .group-events__heading { margin-bottom: var(--space-6); }
.menu-page .format-rules__panels { margin-top: var(--space-6); }
.menu-page .format-rules__heading h2, .menu-page .menu-closing__content h2 { text-wrap: balance; }
.menu-page .format-rules__exclusions, .menu-page .format-rules__explain, .menu-page .group-card, .menu-page .contact-brief__checklist, .menu-page .contact-brief__format, .menu-page .reservation__panel { padding: var(--space-5); }
.menu-page .group-events__actions, .menu-page .menu-closing__actions { width: 100%; flex-direction: column; align-items: stretch; }
.menu-page .group-events__actions .button, .menu-page .menu-closing__actions .button { width: 100%; max-width: none; }
.menu-page .contact-brief__action { width: 100%; }
.menu-page .menu-closing__content { gap: var(--space-4); }
.menu-page .menu-closing__actions > * { min-width: 0; }
}
