.dining-page { background: var(--surface-base); }
.dining-page .content-group > :last-child { margin-block-end: 0; }
.dining-hero { position: relative; min-height: 82vh; display: grid; isolation: isolate; overflow: hidden; background: var(--surface-base); }
.dining-hero__media { position: absolute; inset: 0; z-index: -3; width: 100%; min-width: 0; }
.dining-hero__media::after { position: absolute; inset: 0; content: ""; background: linear-gradient(90deg, rgba(22,11,18,.9) 0%, rgba(22,11,18,.62) 38%, rgba(22,11,18,.14) 72%); }
.dining-hero__media::before { position: absolute; inset: 0; z-index: 1; content: ""; opacity: .03; pointer-events: none; background-image: radial-gradient(rgba(244,235,221,.9) .6px, transparent .7px); background-size: 4px 4px; }
.dining-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: 62% center; }
.dining-hero__curtain { position: absolute; z-index: -1; top: 0; bottom: 0; width: clamp(18px, 4vw, 68px); background: var(--color-velvet-plum); opacity: .88; box-shadow: inset -12px 0 24px rgba(0,0,0,.28); }
.dining-hero__curtain--left { left: 0; }
.dining-hero__curtain--right { right: 0; transform: scaleX(-1); }
.dining-hero__content { align-self: end; display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-6); padding-block: clamp(6rem, 12vh, 10rem) var(--space-7); }
.dining-hero__copy { grid-column: 1; width: min(100%, 33.125rem); min-width: 0; }
.dining-hero__caption { grid-column: 2; align-self: end; justify-self: end; width: min(100%, 20rem); margin: 0; color: var(--color-pearl-muted); font-size: var(--text-utility); letter-spacing: .04em; text-align: right; }
.dining-hero__actions { margin-top: var(--space-6); }
.dining-philosophy__grid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 2fr) minmax(0, 4fr); column-gap: var(--space-6); row-gap: var(--space-7); align-items: start; }
.dining-philosophy__intro { grid-column: 1 / span 2; width: min(100%, 40rem); }
.dining-philosophy__plane { grid-column: 3; grid-row: 1 / span 2; min-height: 21rem; background: var(--color-velvet-plum); box-shadow: inset 12px 0 30px rgba(0,0,0,.18); }
.dining-principles { grid-column: 1 / span 2; display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-5); margin: 0; padding: 0; list-style: none; }
.dining-principles__item { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: var(--space-4); width: 100%; min-width: 0; padding-top: var(--space-5); border-top: var(--border-subtle); }
.dining-principles__item > div { width: min(100%, 30rem); min-width: 0; }
.dining-principles__item h3 { margin-bottom: var(--space-3); }
.dining-principles__item p { margin-bottom: 0; }
.dining-principles__number, .dining-pathway span, .dining-recap__number { color: var(--color-pearl-muted); font-family: var(--font-heading); font-size: 2rem; line-height: 1; }
.dining-plates__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: var(--space-7); align-items: center; }
.dining-plates__copy { grid-column: 1; width: min(100%, 31.25rem); }
.dining-plates__button { margin-top: var(--space-2); }
.dining-plates__figure { grid-column: 2; width: 100%; min-width: 0; margin: 0; }
.dining-plates__figure img { aspect-ratio: 4 / 3; object-position: 50% 48%; }
.dining-plates__transition { grid-column: 2; width: min(100%, 31.25rem); padding-top: var(--space-5); border-top: var(--border-subtle); }
.dining-plates__transition h3 { margin-bottom: var(--space-3); }
.dining-plates__transition p { margin-bottom: 0; }
.dining-room__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-7); align-items: end; }
.dining-room__narrative { grid-column: 1; width: min(100%, 37.5rem); }
.dining-room__materials { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-5); min-width: 0; }
.dining-room__materials span { min-width: 0; padding-top: var(--space-3); border-top: var(--border-subtle); color: var(--color-pearl-muted); font-size: var(--text-utility); letter-spacing: var(--tracking-label); text-transform: uppercase; }
.dining-room__details { grid-column: 2; display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-6); min-width: 0; }
.dining-room__detail { width: min(100%, 28.75rem); min-width: 0; padding-top: var(--space-5); border-top: var(--border-subtle); }
.dining-room__detail h3 { margin-bottom: var(--space-3); }
.dining-room__detail p { margin-bottom: 0; }
.dining-room__dot { display: block; width: .5rem; height: .5rem; margin-bottom: var(--space-3); background: var(--color-table-light); border-radius: 50%; }
.dining-room__doorway { width: 100%; min-width: 0; }
.dining-cocktails__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-7); align-items: start; }
.dining-cocktails__intro { grid-column: 1; width: min(100%, 27.5rem); }
.dining-cocktails__figure { grid-column: 2; width: 100%; min-width: 0; margin: 0; }
.dining-cocktails__figure img { aspect-ratio: 3 / 4; object-position: 55% 42%; }
.dining-cocktails__moments { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-7); width: 100%; min-width: 0; }
.dining-cocktails__moment { width: min(100%, 32.5rem); min-width: 0; padding-top: var(--space-5); border-top: var(--border-subtle); }
.dining-cocktails__moment h3 { margin-bottom: var(--space-3); }
.dining-cocktails__moment p { margin-bottom: 0; }
.dining-transition { border-top: var(--border-subtle); border-bottom: var(--border-subtle); }
.dining-transition__terms { margin-bottom: var(--space-7); }
.dining-transition__narrative { width: min(100%, 38.75rem); }
.dining-transition__narrative h3 { margin-top: var(--space-6); margin-bottom: var(--space-3); }
.dining-pathway { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); margin: var(--space-8) 0 var(--space-6); padding: 0; list-style: none; }
.dining-pathway li { min-width: 0; padding-top: var(--space-4); border-top: var(--border-subtle); }
.dining-pathway h3 { margin: var(--space-3) 0; }
.dining-pathway p { width: min(100%, 20rem); margin-bottom: 0; }
.dining-transition__cta { display: grid; grid-template-columns: minmax(0, 34rem); gap: var(--space-4); width: 100%; min-width: 0; }
.dining-transition__cta p { margin: 0; }
.dining-transition__cta .button { justify-self: start; }
.dining-lounge__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-7); align-items: start; }
.dining-lounge__intro { grid-column: 1; width: min(100%, 35rem); }
.dining-lounge__figure { grid-column: 2; width: 100%; min-width: 0; margin: 0; }
.dining-lounge__figure img { aspect-ratio: 16 / 10; object-position: 50% 35%; }
.dining-lounge__quote { grid-column: 1 / -1; width: min(100%, 38rem); margin: var(--space-2) 0 0; }
.dining-lounge__quote cite { display: block; }
.dining-lounge__qualities { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); width: 100%; min-width: 0; }
.dining-lounge__qualities article { min-width: 0; padding-left: var(--space-5); border-left: var(--border-subtle); }
.dining-lounge__qualities h3 { margin-bottom: var(--space-3); }
.dining-lounge__qualities p { width: min(100%, 19.7rem); margin-bottom: var(--space-5); }
.dining-holdem__shell { position: relative; padding-inline: clamp(var(--space-5), 5vw, var(--space-8)); background: var(--color-velvet-plum); }
.dining-holdem__shell::before, .dining-holdem__shell::after { position: absolute; top: 0; bottom: 0; width: 8%; content: ""; background: var(--color-black-cherry); opacity: .62; }
.dining-holdem__shell::before { left: 0; }
.dining-holdem__shell::after { right: 0; }
.dining-holdem__inset { position: relative; z-index: 1; width: 100%; padding: var(--space-8); background: var(--surface-lounge); box-shadow: var(--shadow-inset); }
.dining-holdem__inset > * { width: min(100%, 34.375rem); }
.dining-holdem__actions { margin-top: var(--space-6); }
.dining-recap h2 { width: min(100%, 38rem); }
.dining-recap__items { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; width: 100%; min-width: 0; margin-top: var(--space-7); }
.dining-recap__items article { min-width: 0; padding: 0 var(--space-6); border-left: var(--border-subtle); }
.dining-recap__items article:first-child { padding-left: 0; border-left: 0; }
.dining-recap__items article:last-child { padding-right: 0; }
.dining-recap__items h3 { margin: var(--space-3) 0; }
.dining-recap__items p { width: min(100%, 22.5rem); }
.dining-recap__items .button { margin-bottom: var(--space-4); }
.dining-recap__email { margin-bottom: 0; overflow-wrap: anywhere; }
.dining-note { padding-block: var(--space-7); border-top: var(--border-subtle); }
.dining-note__copy { width: min(100%, 38.75rem); margin-inline: auto; }
.dining-note__copy p { margin-bottom: 0; }
@media (max-width: 1050px) { .dining-lounge__grid { grid-template-columns: minmax(0, 1fr); } .dining-lounge__intro, .dining-lounge__figure, .dining-lounge__quote, .dining-lounge__qualities { grid-column: 1; } .dining-lounge__figure { order: -1; } .dining-lounge__figure img { aspect-ratio: 16 / 10; } }
@media (max-width: 1023px) { .dining-hero { min-height: 72vh; } .dining-hero__content { padding-block-end: var(--space-6); } .dining-holdem__inset { padding: var(--space-7); } }
@media (max-width: 940px) { .dining-plates__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); } .dining-plates__copy, .dining-plates__figure, .dining-plates__transition { grid-column: 1; } .dining-plates__figure { order: -1; } .dining-plates__figure img { aspect-ratio: 4 / 5; object-position: 50% 45%; } .dining-cocktails__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); } .dining-cocktails__intro, .dining-cocktails__figure, .dining-cocktails__moments { grid-column: 1; } .dining-cocktails__figure { order: -1; max-width: 34rem; } .dining-cocktails__moments { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); } .dining-room__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); } .dining-room__narrative, .dining-room__details { grid-column: 1; } }
@media (max-width: 900px) { .dining-recap__items { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); } .dining-recap__items article, .dining-recap__items article:first-child, .dining-recap__items article:last-child { padding: var(--space-5) 0 0; border-top: var(--border-subtle); border-left: 0; } }
@media (max-width: 767px) { .dining-hero { min-height: 0; display: block; padding-top: 0; } .dining-hero__media { position: relative; height: auto; aspect-ratio: 4 / 5; } .dining-hero__media::after { background: linear-gradient(180deg, rgba(22,11,18,.05), rgba(22,11,18,.3)); } .dining-hero__media img { object-position: 52% 36%; } .dining-hero__curtain { top: auto; bottom: 0; width: 100%; height: 16px; } .dining-hero__curtain--left { left: 0; } .dining-hero__curtain--right { display: none; } .dining-hero__content { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-5); padding-block: var(--space-6) var(--space-7); } .dining-hero__copy, .dining-hero__caption { grid-column: 1; width: 100%; } .dining-hero__caption { justify-self: start; text-align: left; } .dining-hero__actions { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-3); } .dining-hero__actions .button { width: 100%; } .dining-philosophy__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); } .dining-philosophy__intro, .dining-principles { grid-column: 1; } .dining-philosophy__plane { display: none; } .dining-principles__item { grid-template-columns: 2.125rem minmax(0, 1fr); } .dining-principles__number { font-size: 1.5rem; } .dining-room__materials { display: grid; grid-template-columns: minmax(0, 1fr); } .dining-cocktails__figure { max-width: none; } .dining-cocktails__figure img, .dining-lounge__figure img { aspect-ratio: 4 / 5; object-position: 55% 42%; } .dining-lounge__figure img { object-position: 50% 35%; } .dining-pathway { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); margin-block: var(--space-7) var(--space-5); } .dining-pathway p { width: 100%; } .dining-transition__cta { grid-template-columns: minmax(0, 1fr); } .dining-transition__cta .button { justify-self: stretch; width: 100%; } .dining-lounge__qualities { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); } .dining-lounge__qualities article { padding: var(--space-5) 0 0; border-top: var(--border-subtle); border-left: 0; } .dining-lounge__qualities p { width: 100%; } .dining-holdem__shell { padding-inline: var(--space-4); } .dining-holdem__inset { padding: var(--space-5); } .dining-holdem__actions { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-3); } .dining-holdem__actions .button { width: 100%; } .dining-note { padding-block: var(--space-6); } }
@media (max-width: 680px) { .dining-transition__terms { margin-bottom: var(--space-6); } }
@media (max-width: 420px) { .dining-hero__actions .button { font-size: .68rem; letter-spacing: .11em; } }
