.private-dining-page { background: var(--color-ink-950); }
.private-dining-page .button { text-decoration: none; }
.private-dining-page .pd-hero { position: relative; min-height: 45rem; isolation: isolate; display: grid; grid-template-columns: minmax(0, 1fr); align-items: end; overflow: hidden; }
.private-dining-page .pd-hero__media { position: absolute; inset: 0; z-index: -2; width: 100%; max-width: none; height: 100%; border-radius: 0; }
.private-dining-page .pd-hero__media img { object-position: 68% center; }
.private-dining-page .pd-hero__scrim { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(16,12,18,.96) 0%, rgba(16,12,18,.75) 37%, rgba(16,12,18,.16) 72%), linear-gradient(0deg, rgba(16,12,18,.66), transparent 54%); }
.private-dining-page .pd-hero__container { width: min(100% - 4rem, var(--container-max)); padding-bottom: 5.5rem; }
.private-dining-page .pd-hero__copy { width: min(100%, 33.75rem); display: flex; flex-direction: column; min-width: 0; gap: var(--space-6); }
.private-dining-page .pd-hero__copy > * { margin: 0; }
.private-dining-page .pd-hero__copy p:not(.eyebrow) { color: var(--color-ivory-50); }
.private-dining-page .pd-hero__copy .button { align-self: flex-start; }
.private-dining-page .pd-value__grid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 1fr) minmax(0, 3fr) minmax(0, 2fr); align-items: start; }
.private-dining-page .pd-value__copy { grid-column: 1 / span 1; min-width: 0; width: min(100%, 40.625rem); }
.private-dining-page .pd-value__rail { grid-column: 3 / span 1; min-width: 0; width: 100%; padding-left: var(--space-6); border-left: var(--border-light); }
.private-dining-page .pd-rail__item { display: flex; flex-direction: column; min-width: 0; gap: var(--space-2); padding-block: var(--space-4); border-bottom: var(--border-light); font-size: var(--text-caption); }
.private-dining-page .pd-rail__item strong { font-size: var(--text-eyebrow); letter-spacing: .12em; text-transform: uppercase; }
.private-dining-page .pd-occasions { background: var(--color-ink-950); }
.private-dining-page .pd-occasions__intro { width: min(100%, 35rem); display: flex; flex-direction: column; min-width: 0; gap: var(--space-4); margin-bottom: var(--space-12); }
.private-dining-page .pd-occasions__intro > * { margin: 0; }
.private-dining-page .pd-occasions__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-6); }
.private-dining-page .pd-occasion { min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-8); border: var(--border-light); }
.private-dining-page .pd-occasion > * { margin: 0; }
.private-dining-page .pd-occasion h3 { font-size: var(--text-feature); line-height: var(--line-feature); }
.private-dining-page .pd-occasion p:not(.meta) { width: min(100%, 26.875rem); }
.private-dining-page .pd-occasion--celebration { grid-column: 1; background: var(--color-charcoal-800); }
.private-dining-page .pd-occasion--team { grid-column: 2; background-color: var(--color-plum-700); background-image: var(--surface-reflection); border-top-color: var(--color-rose-200); }
.private-dining-page .pd-occasion--late { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 6fr) minmax(0, 2fr); align-items: start; background: var(--color-charcoal-900); }
.private-dining-page .pd-occasion--late > div { min-width: 0; width: 100%; }
.private-dining-page .pd-occasion--late > div:last-child { grid-column: 2; display: flex; flex-direction: column; gap: var(--space-4); }
.private-dining-page .pd-occasion--late .button { align-self: flex-start; }
.private-dining-page .pd-service__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 2fr) minmax(0, 5fr); align-items: center; }
.private-dining-page .pd-service__figure { grid-column: 1; min-width: 0; width: 100%; aspect-ratio: 2 / 3; margin: 0; }
.private-dining-page .pd-service__figure img { object-position: center; }
.private-dining-page .pd-service__copy { grid-column: 3; min-width: 0; width: min(100%, 38.75rem); display: flex; flex-direction: column; gap: var(--space-4); }
.private-dining-page .pd-service__copy > * { margin: 0; }
.private-dining-page .pd-service__lead { font-size: var(--text-body-lg); }
.private-dining-page .pd-steps { display: flex; flex-direction: column; min-width: 0; gap: var(--space-4); margin-top: var(--space-4); }
.private-dining-page .pd-step { min-width: 0; width: 100%; padding-bottom: var(--space-4); border-bottom: var(--border-light); }
.private-dining-page .pd-step:last-child { border-bottom: 0; padding-bottom: 0; }
.private-dining-page .pd-step > * { margin: 0; }
.private-dining-page .pd-step > * + * { margin-top: var(--space-2); }
.private-dining-page .pd-step h3 { font-size: clamp(1.625rem, 2vw, 1.875rem); }
.private-dining-page .pd-kitchen__grid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 4fr) minmax(0, 2fr); align-items: start; }
.private-dining-page .pd-kitchen__figure { grid-column: 1; width: 100%; min-width: 0; margin: 0; }
.private-dining-page .pd-kitchen__figure .media-frame { aspect-ratio: 4 / 3; }
.private-dining-page .pd-kitchen__figure img { object-position: center; }
.private-dining-page .pd-kitchen__figure figcaption { padding-top: var(--space-3); border-top: var(--border-light); }
.private-dining-page .pd-kitchen__copy { grid-column: 2; width: min(100%, 31.25rem); min-width: 0; margin-left: var(--space-8); display: flex; flex-direction: column; gap: var(--space-4); }
.private-dining-page .pd-kitchen__copy > * { margin: 0; }
.private-dining-page .pd-kitchen__copy .button { align-self: flex-start; margin-top: var(--space-2); }
.private-dining-page .pd-planning__intro { width: min(100%, 38.75rem); margin-inline: auto; text-align: center; display: flex; flex-direction: column; min-width: 0; gap: var(--space-4); }
.private-dining-page .pd-planning__intro > * { margin: 0; }
.private-dining-page .pd-planning__rows { display: flex; flex-direction: column; min-width: 0; margin-top: var(--space-12); border-top: var(--border-light); }
.private-dining-page .pd-planning__row { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 6fr) minmax(0, 3fr); min-width: 0; padding-block: var(--space-6); border-bottom: var(--border-light); }
.private-dining-page .pd-planning__row > * { min-width: 0; margin: 0; }
.private-dining-page .pd-planning__row > div { grid-column: 2; width: min(100%, 38.75rem); }
.private-dining-page .pd-planning__row h3 { font-size: var(--text-feature); }
.private-dining-page .pd-planning__closing { width: min(100%, 38.75rem); margin-top: var(--space-8); margin-left: 25%; padding-top: var(--space-4); border-top: 1px solid var(--color-rose-200); display: flex; flex-direction: column; min-width: 0; gap: var(--space-3); }
.private-dining-page .pd-planning__closing > * { margin: 0; }
.private-dining-page .pd-planning__closing .button { align-self: flex-start; }
.private-dining-page .pd-clarity__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr); align-items: start; }
.private-dining-page .pd-clarity__intro { grid-column: 1; min-width: 0; width: min(100%, 31.25rem); display: flex; flex-direction: column; gap: var(--space-4); }
.private-dining-page .pd-clarity__intro > * { margin: 0; }
.private-dining-page .pd-clarity__answers { grid-column: 3; min-width: 0; width: min(100%, 40rem); display: flex; flex-direction: column; gap: var(--space-6); }
.private-dining-page .pd-clarity__answers article { min-width: 0; width: 100%; padding-bottom: var(--space-6); border-bottom: var(--border-light); }
.private-dining-page .pd-clarity__answers article:last-child { border-bottom: 0; }
.private-dining-page .pd-clarity__answers h3 { font-size: var(--text-feature); }
.private-dining-page .pd-clarity__answers article:last-child h3 { padding-left: var(--space-4); border-left: 1px solid var(--color-rose-200); }
.private-dining-page .pd-request { background-color: var(--color-plum-700); background-image: var(--surface-reflection); }
.private-dining-page .pd-request__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 2fr) minmax(0, 6fr); align-items: start; }
.private-dining-page .pd-request__copy { grid-column: 1; width: min(100%, 27.5rem); min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.private-dining-page .pd-request__copy > * { margin: 0; }
.private-dining-page .pd-request__form { grid-column: 3; width: min(100%, 40rem); min-width: 0; padding: var(--space-8); border: var(--border-light); border-radius: var(--radius-md); background: var(--color-charcoal-900); display: flex; flex-direction: column; gap: var(--space-4); }
.private-dining-page .pd-request__form > * { margin: 0; }
.private-dining-page .pd-form__row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-width: 0; gap: var(--space-4); }
.private-dining-page .pd-form__row > * { min-width: 0; width: 100%; }
.private-dining-page .pd-field { display: flex; flex-direction: column; min-width: 0; gap: var(--space-2); }
.private-dining-page .pd-field label { margin: 0; }
.private-dining-page .pd-field input, .private-dining-page .pd-field select, .private-dining-page .pd-field textarea { min-width: 0; }
.private-dining-page .pd-field__hint { margin: 0; font-size: var(--text-caption); }
.private-dining-page .pd-field__error { min-height: 1.45em; margin: 0; color: var(--color-rose-200); font-size: var(--text-caption); line-height: var(--line-caption); }
.private-dining-page .pd-consent { display: grid; grid-template-columns: 1.125rem minmax(0, 1fr); align-items: start; min-width: 0; gap: var(--space-3); }
.private-dining-page .pd-consent input { margin-top: .2rem; }
.private-dining-page .pd-consent label { margin: 0; font-size: var(--text-caption); font-weight: 500; letter-spacing: 0; line-height: var(--line-caption); text-transform: none; }
.private-dining-page .pd-request__form .button { align-self: flex-start; }
.private-dining-page .pd-form__status { min-height: 1.6em; color: var(--color-ivory-50); font-weight: 700; }
.private-dining-page [aria-invalid="true"] { border-color: var(--color-rose-400); }
@media (max-width: 1079px) { .private-dining-page .pd-hero { min-height: auto; display: flex; flex-direction: column; } .private-dining-page .pd-hero__media { position: relative; inset: auto; z-index: auto; width: 100%; height: auto; aspect-ratio: 16 / 9; } .private-dining-page .pd-hero__scrim { display: none; } .private-dining-page .pd-hero__container { width: min(100% - 3rem, var(--container-max)); padding: var(--space-8) 0; background: var(--color-charcoal-900); } .private-dining-page .pd-hero__copy { width: min(100%, 37.5rem); } .private-dining-page .pd-hero__copy p:not(.eyebrow) { color: var(--color-mist-300); } }
@media (max-width: 1019px) { .private-dining-page .pd-service__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); } .private-dining-page .pd-service__figure, .private-dining-page .pd-service__copy { grid-column: 1; } .private-dining-page .pd-service__figure { aspect-ratio: 4 / 3; } .private-dining-page .pd-service__copy { width: min(100%, 38.75rem); } }
@media (max-width: 999px) { .private-dining-page .pd-value__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); } .private-dining-page .pd-value__copy, .private-dining-page .pd-value__rail { grid-column: 1; } .private-dining-page .pd-value__rail { padding-top: var(--space-6); padding-left: 0; border-top: var(--border-light); border-left: 0; } }
@media (max-width: 980px) { .private-dining-page .pd-occasions__grid, .private-dining-page .pd-kitchen__grid, .private-dining-page .pd-request__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); } .private-dining-page .pd-occasion--celebration, .private-dining-page .pd-occasion--team, .private-dining-page .pd-occasion--late, .private-dining-page .pd-kitchen__figure, .private-dining-page .pd-kitchen__copy, .private-dining-page .pd-request__copy, .private-dining-page .pd-request__form { grid-column: 1; } .private-dining-page .pd-occasion--late { display: flex; } .private-dining-page .pd-occasion--late > div:last-child { display: flex; } .private-dining-page .pd-kitchen__copy { margin-left: 0; } .private-dining-page .pd-request__form { width: min(100%, 38.75rem); } }
@media (max-width: 959px) { .private-dining-page .pd-clarity__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); } .private-dining-page .pd-clarity__intro, .private-dining-page .pd-clarity__answers { grid-column: 1; } }
@media (max-width: 899px) { .private-dining-page .pd-planning__row { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); } .private-dining-page .pd-planning__row > div { grid-column: 1; } .private-dining-page .pd-planning__closing { margin-left: 0; } }
@media (max-width: 599px) { .private-dining-page .pd-hero__media { aspect-ratio: 4 / 3; } .private-dining-page .pd-hero__media img { object-position: 62% center; } .private-dining-page .pd-hero__container { width: min(100% - 2.5rem, var(--container-max)); padding-top: var(--space-6); padding-bottom: var(--space-8); } .private-dining-page .pd-hero__copy { gap: var(--space-4); } .private-dining-page .pd-hero__copy h1 { font-size: clamp(3rem, 13vw, 3.25rem); line-height: .98; } .private-dining-page .pd-hero__copy .button { width: 100%; min-height: 3rem; } .private-dining-page .pd-occasion { padding: var(--space-6); } .private-dining-page .pd-occasion--late { gap: var(--space-4); } .private-dining-page .pd-occasion--late > div:last-child { gap: var(--space-3); } .private-dining-page .pd-service__grid, .private-dining-page .pd-kitchen__grid, .private-dining-page .pd-request__grid { gap: var(--space-6); } .private-dining-page .pd-service__copy, .private-dining-page .pd-kitchen__copy { width: 100%; } .private-dining-page .pd-planning__intro { text-align: left; margin-inline: 0; } .private-dining-page .pd-planning__rows { margin-top: var(--space-8); } .private-dining-page .pd-clarity__answers { gap: var(--space-4); } .private-dining-page .pd-request { margin-inline: var(--space-4); border-radius: var(--radius-md); } .private-dining-page .pd-request__form { padding: var(--space-6); } .private-dining-page .pd-form__row { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); } .private-dining-page .pd-request__form .button { width: 100%; min-height: 3rem; } }
