#private-events-page { background: var(--color-black); }
#private-events-page .pe-section-marker { display: flex; align-items: center; gap: var(--space-3); margin-bottom: var(--space-4); color: var(--color-ash-muted); font: 600 var(--text-label)/var(--leading-label) var(--font-body); letter-spacing: .12em; }
#private-events-page .pe-section-marker i { display: block; width: 72px; height: 1px; background: var(--color-border); position: relative; }
#private-events-page .pe-section-marker i::after { content: ''; position: absolute; left: 0; top: -1px; width: 18px; height: 3px; background: var(--color-red); }
#private-events-page .pe-hero { padding-block: clamp(var(--space-8), 9vw, var(--space-10)); }
#private-events-page .pe-hero__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: center; min-height: 680px; }
#private-events-page .pe-hero__copy { grid-column: 1 / span 5; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
#private-events-page .pe-hero__copy > * { min-width: 0; margin: 0; }
#private-events-page .pe-hero__copy .eyebrow { margin: 0; }
#private-events-page .pe-hero__copy h1 { max-width: 8.5ch; }
#private-events-page .pe-hero__lead { max-width: 44ch; color: var(--color-white); font-size: var(--text-lead); font-weight: 500; line-height: var(--leading-lead); }
#private-events-page .pe-hero__actions { width: 100%; }
#private-events-page .pe-hero__actions > * { width: auto; min-width: 0; }
#private-events-page .pe-hero__image { grid-column: 7 / span 6; width: 100%; min-width: 0; margin: 0; aspect-ratio: 4 / 3; position: relative; }
#private-events-page .pe-hero__image::after { content: ''; position: absolute; inset: 12% 0 auto; height: 2px; background: var(--color-red); }
#private-events-page .pe-hero__image img, #private-events-page .pe-zones__image img, #private-events-page .pe-kitchen__image img, #private-events-page .pe-gallery-card img { width: 100%; height: 100%; filter: grayscale(.72) contrast(1.12); }
#private-events-page .pe-rhythm__intro { width: 50%; min-width: 0; }
#private-events-page .pe-rhythm__intro .lead { max-width: 54ch; }
#private-events-page .pe-rhythm__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
#private-events-page .pe-rhythm-card { min-width: 0; min-height: 100%; padding: var(--space-5); border-top: var(--border-default); border-right: var(--border-default); border-bottom: var(--border-default); border-left: var(--border-default); background: var(--color-graphite); }
#private-events-page .pe-rhythm-card--accent { border-bottom-color: var(--color-red); border-bottom-width: 3px; }
#private-events-page .pe-card-number, #private-events-page .pe-format-code { display: block; margin-bottom: var(--space-5); color: var(--color-red); font: 800 1.5rem/1 var(--font-heading); }
#private-events-page .pe-rhythm-card p { max-width: 40ch; margin-bottom: 0; }
#private-events-page .pe-formats__heading { display: grid; grid-template-columns: 7fr 4fr; gap: 8.333%; align-items: end; }
#private-events-page .pe-formats__heading > * { min-width: 0; }
#private-events-page .pe-formats__heading p { max-width: 52ch; margin-bottom: 0; }
#private-events-page .pe-format-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
#private-events-page .pe-format-card { grid-column: span 4; min-width: 0; min-height: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding: var(--space-5); border: var(--border-default); background: var(--color-near-black); text-decoration: none; transition: border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast); }
#private-events-page .pe-format-card > * { min-width: 0; margin: 0; }
#private-events-page .pe-format-card .technical-label { margin: 0; }
#private-events-page .pe-format-card h3 { max-width: 14ch; }
#private-events-page .pe-format-card p { max-width: 38ch; }
#private-events-page .pe-format-card:hover { border-color: var(--color-red); background: var(--color-graphite); box-shadow: -2px 0 0 var(--color-red), 2px 0 0 var(--color-ash); }
#private-events-page .pe-format-card--corner { position: relative; }
#private-events-page .pe-format-card--corner::after { content: ''; position: absolute; right: 0; top: 0; width: 22px; height: 22px; border-top: 2px solid var(--color-red); border-right: 2px solid var(--color-red); }
#private-events-page .pe-format-card--tables { grid-column: 7 / span 6; border-color: var(--color-red); }
#private-events-page .pe-zones__intro { width: 50%; min-width: 0; }
#private-events-page .pe-zones__intro .lead { max-width: 52ch; }
#private-events-page .pe-zones__layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); align-items: start; }
#private-events-page .pe-zones__image { grid-column: 1 / span 7; width: 100%; min-width: 0; margin: 0; aspect-ratio: 3 / 2; }
#private-events-page .pe-zone-list { grid-column: 9 / span 4; min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
#private-events-page .pe-zone { min-width: 0; padding-bottom: var(--space-4); border-bottom: var(--border-default); }
#private-events-page .pe-zone > * { min-width: 0; }
#private-events-page .pe-zone p { max-width: 39ch; margin-bottom: 0; }
#private-events-page .pe-zone--tables { padding: var(--space-4); border: var(--border-default); background: var(--color-graphite); }
#private-events-page .pe-zone--tables h3::before { content: ''; display: inline-block; width: 8px; height: 8px; margin-right: var(--space-2); background: var(--color-red); }
#private-events-page .pe-tables__intro { width: 58%; min-width: 0; }
#private-events-page .pe-tables__intro .lead { max-width: 60ch; }
#private-events-page .pe-table-modules { display: flex; flex-direction: column; gap: 0; margin-top: var(--space-7); border-top: var(--border-default); }
#private-events-page .pe-table-module { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); padding-block: var(--space-6); border-bottom: var(--border-default); }
#private-events-page .pe-table-module__copy { grid-column: 1 / span 6; min-width: 0; }
#private-events-page .pe-table-module__copy p { max-width: 55ch; margin-bottom: 0; }
#private-events-page .pe-diagram { grid-column: 8 / span 5; min-width: 0; min-height: 160px; display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; border: var(--border-default); background: var(--color-near-black); }
#private-events-page .pe-diagram span { position: absolute; width: 65%; aspect-ratio: 1; border: 1px solid var(--color-border); transform: rotate(45deg); }
#private-events-page .pe-diagram b { z-index: 1; padding: var(--space-2); background: var(--color-near-black); color: var(--color-ash); font-size: var(--text-label); letter-spacing: .12em; }
#private-events-page .pe-diagram--red::before { content: ''; position: absolute; left: 50%; width: 2px; height: 100%; background: var(--color-red); }
#private-events-page .pe-diagram--dark { background: var(--color-graphite); }
#private-events-page .pe-diagram--dark span { border-color: var(--color-red); }
#private-events-page .pe-kitchen__layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: start; }
#private-events-page .pe-kitchen__image { grid-column: 1 / span 6; width: 100%; min-width: 0; margin: 0; aspect-ratio: 4 / 3; position: sticky; top: 104px; }
#private-events-page .pe-kitchen__copy { grid-column: 8 / span 5; min-width: 0; }
#private-events-page .pe-kitchen__copy > .lead { max-width: 54ch; }
#private-events-page .pe-kitchen-note { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: var(--space-3); padding-block: var(--space-5); border-top: var(--border-default); }
#private-events-page .pe-kitchen-note > * { min-width: 0; }
#private-events-page .pe-kitchen-note > span { color: var(--color-red); font: 800 1.25rem/1 var(--font-heading); }
#private-events-page .pe-kitchen-note p { max-width: 55ch; margin-bottom: 0; }
#private-events-page .pe-kitchen-note--surface { margin-inline: calc(var(--space-5) * -1); padding: var(--space-5); background: var(--color-near-black); }
#private-events-page .pe-kitchen-note .technical-label { margin: 0 0 var(--space-3); }
#private-events-page .pe-gallery__intro { width: 50%; min-width: 0; }
#private-events-page .pe-gallery__intro .lead { max-width: 50ch; }
#private-events-page .pe-gallery__track { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: end; margin-top: var(--space-7); }
#private-events-page .pe-gallery-card { min-width: 0; margin: 0; }
#private-events-page .pe-gallery-card .image-frame { margin: 0; }
#private-events-page .pe-gallery-card--dinner { grid-column: span 6; }
#private-events-page .pe-gallery-card--dinner .image-frame { aspect-ratio: 4 / 3; }
#private-events-page .pe-gallery-card--lounge { grid-column: span 3; }
#private-events-page .pe-gallery-card--lounge .image-frame { aspect-ratio: 3 / 4; }
#private-events-page .pe-gallery-card--table { grid-column: span 3; }
#private-events-page .pe-gallery-card--table .image-frame { aspect-ratio: 1; }
#private-events-page .pe-gallery-card figcaption { max-width: 36ch; }
#private-events-page .pe-gallery-card figcaption span { display: block; margin-bottom: var(--space-2); color: var(--color-red); font-size: var(--text-label); font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
#private-events-page .pe-checklist__intro { width: 42%; min-width: 0; }
#private-events-page .pe-checklist__intro .lead { max-width: 55ch; }
#private-events-page .pe-checklist__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
#private-events-page .pe-check-item { min-width: 0; padding: var(--space-5); border: var(--border-default); background: var(--color-near-black); }
#private-events-page .pe-check-item > span { display: block; margin-bottom: var(--space-4); color: var(--color-red); font: 800 1.25rem/1 var(--font-heading); }
#private-events-page .pe-check-item p { max-width: 44ch; margin-bottom: 0; }
#private-events-page .pe-check-item--accent { border-color: var(--color-red-dark); background: var(--color-red-dark); }
#private-events-page .pe-checklist__action { margin-top: var(--space-5); }
#private-events-page .pe-checklist__action > * { width: auto; min-width: 0; }
#private-events-page .pe-faq__intro { width: 50%; min-width: 0; }
#private-events-page .pe-faq__intro .lead { max-width: 55ch; }
#private-events-page .pe-faq__list { width: 75%; min-width: 0; margin-top: var(--space-7); border-top: var(--border-default); }
#private-events-page .pe-faq-item { min-width: 0; border-bottom: var(--border-default); }
#private-events-page .pe-faq-item h3 { margin: 0; font-size: var(--text-lead); }
#private-events-page .pe-faq-item button { width: 100%; min-width: 0; min-height: 64px; display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-4) 0; border: 0; background: transparent; color: var(--color-white); font: 800 var(--text-lead)/var(--leading-lead) var(--font-heading); text-align: left; }
#private-events-page .pe-faq-item button span { flex: 0 0 auto; color: var(--color-red); font-size: 1.75rem; }
#private-events-page .pe-faq-answer { padding: 0 0 var(--space-5); }
#private-events-page .pe-faq-answer p { max-width: 62ch; margin: 0; }
#private-events-page .pe-contact { border-top: 1px solid var(--color-border); }
#private-events-page .pe-contact__heading { width: 42%; min-width: 0; }
#private-events-page .pe-contact__heading .eyebrow { color: var(--color-red); }
#private-events-page .pe-contact__heading .lead { max-width: 52ch; }
#private-events-page .pe-contact__layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: start; margin-top: var(--space-7); }
#private-events-page .pe-event-form { grid-column: 1 / span 7; min-width: 0; display: flex; flex-direction: column; gap: var(--space-5); }
#private-events-page .pe-event-form > * { min-width: 0; margin: 0; }
#private-events-page .pe-form-note { color: var(--color-ash-muted); font-size: var(--text-meta); }
#private-events-page .pe-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
#private-events-page .pe-field { min-width: 0; }
#private-events-page .pe-field--wide { grid-column: 1 / -1; }
#private-events-page .pe-error { min-height: 1.45em; margin: var(--space-2) 0 0; color: var(--color-red); font-size: var(--text-meta); }
#private-events-page .pe-field [aria-invalid="true"] { border-color: var(--color-red); }
#private-events-page .pe-form-status { min-height: 1.55em; color: var(--color-ash); }
#private-events-page .pe-direct-contact { grid-column: 9 / span 4; min-width: 0; padding: var(--space-5); border: var(--border-default); background: var(--color-graphite); }
#private-events-page .pe-direct-contact p { max-width: 36ch; }
#private-events-page .pe-direct-contact dl { margin: var(--space-5) 0 0; }
#private-events-page .pe-direct-contact dl > div { padding-block: var(--space-3); border-top: var(--border-default); }
#private-events-page .pe-direct-contact dt { margin-bottom: var(--space-1); color: var(--color-ash-muted); font-size: var(--text-label); font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
#private-events-page .pe-direct-contact dd { margin: 0; color: var(--color-white); }
@media (max-width: 60rem) { #private-events-page .pe-formats__heading { grid-template-columns: 1fr; gap: var(--space-4); } #private-events-page .pe-format-card { grid-column: span 6; } #private-events-page .pe-format-card--tables { grid-column: span 6; } #private-events-page .pe-gallery__track { grid-template-columns: repeat(8, minmax(0, 1fr)); } #private-events-page .pe-gallery-card--dinner { grid-column: span 8; } #private-events-page .pe-gallery-card--lounge, #private-events-page .pe-gallery-card--table { grid-column: span 4; } }
@media (max-width: 56.25rem) { #private-events-page .pe-hero__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); min-height: 0; } #private-events-page .pe-hero__copy, #private-events-page .pe-hero__image { grid-column: 1 / -1; } #private-events-page .pe-hero__image { aspect-ratio: 3 / 2; } #private-events-page .pe-zones__intro, #private-events-page .pe-tables__intro, #private-events-page .pe-kitchen__copy, #private-events-page .pe-gallery__intro, #private-events-page .pe-faq__intro, #private-events-page .pe-contact__heading { width: 100%; } #private-events-page .pe-zones__layout, #private-events-page .pe-kitchen__layout, #private-events-page .pe-contact__layout { grid-template-columns: repeat(8, minmax(0, 1fr)); } #private-events-page .pe-zones__image, #private-events-page .pe-kitchen__image, #private-events-page .pe-kitchen__copy, #private-events-page .pe-event-form, #private-events-page .pe-direct-contact { grid-column: 1 / -1; } #private-events-page .pe-kitchen__image { position: static; order: 2; } #private-events-page .pe-kitchen__copy { order: 1; } #private-events-page .pe-faq__list { width: 100%; } }
@media (max-width: 53.75rem) { #private-events-page .pe-rhythm__intro { width: 100%; } #private-events-page .pe-rhythm__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } #private-events-page .pe-rhythm-card:nth-child(3) { grid-column: 1 / -1; } }
@media (max-width: 51.25rem) { #private-events-page .pe-table-module { grid-template-columns: repeat(8, minmax(0, 1fr)); } #private-events-page .pe-table-module__copy, #private-events-page .pe-diagram { grid-column: 1 / -1; } #private-events-page .pe-diagram { min-height: 120px; } }
@media (max-width: 47.5rem) { #private-events-page .pe-checklist__intro { width: 100%; } #private-events-page .pe-checklist__grid { grid-template-columns: 1fr; } }
@media (max-width: 43.75rem) { #private-events-page .pe-hero__grid, #private-events-page .pe-zones__layout, #private-events-page .pe-kitchen__layout, #private-events-page .pe-contact__layout { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); } #private-events-page .pe-hero__copy h1 { max-width: 10ch; } #private-events-page .pe-hero__actions > * { width: 100%; } #private-events-page .pe-rhythm__cards { grid-template-columns: 1fr; gap: var(--space-4); } #private-events-page .pe-rhythm-card:nth-child(3) { grid-column: auto; } #private-events-page .pe-format-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); } #private-events-page .pe-format-card, #private-events-page .pe-format-card--tables { grid-column: 1 / -1; } #private-events-page .pe-zones__image { aspect-ratio: 4 / 3; } #private-events-page .pe-zone-list { grid-column: 1 / -1; } #private-events-page .pe-kitchen__image { aspect-ratio: 3 / 2; } #private-events-page .pe-kitchen-note { grid-template-columns: 1fr; gap: var(--space-2); } #private-events-page .pe-kitchen-note--surface { margin-inline: 0; } #private-events-page .pe-gallery__track { display: flex; width: 100%; margin-inline: 0; padding-inline: var(--space-4); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; } #private-events-page .pe-gallery-card { flex: 0 0 min(84vw, 420px); scroll-snap-align: start; } #private-events-page .pe-gallery-card--dinner .image-frame, #private-events-page .pe-gallery-card--lounge .image-frame, #private-events-page .pe-gallery-card--table .image-frame { aspect-ratio: 4 / 3; } #private-events-page .pe-faq-item button { min-height: 68px; font-size: 1.125rem; } #private-events-page .pe-form-grid { grid-template-columns: 1fr; } #private-events-page .pe-field--wide { grid-column: auto; } #private-events-page .pe-section-marker i { width: 48px; } }
@media (prefers-reduced-motion: reduce) { #private-events-page .pe-format-card { transition: none; } #private-events-page .pe-gallery__track { scroll-behavior: auto; } }