.private-events-page { overflow: hidden; }
.private-events-page .section--generous { padding-block: var(--space-10); }
.private-events-page h1, .private-events-page h2, .private-events-page h3 { margin-bottom: 0; }
.pe-hero { background: var(--color-alabaster); }
.pe-hero__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-7); align-items: center; }
.pe-hero__copy { min-width: 0; max-width: 38.75rem; display: flex; flex-direction: column; gap: var(--space-5); align-items: flex-start; }
.pe-hero__copy > * { min-width: 0; margin: 0; }
.pe-hero h1 { font-size: clamp(3.5rem, 6vw, 4.75rem); line-height: 1.02; }
.pe-hero__lead { max-width: 38.75rem; font-size: var(--text-lead); }
.pe-hero__actions { display: flex; width: 100%; min-width: 0; flex-wrap: wrap; gap: var(--space-3); }
.pe-hero__actions > * { min-width: 0; flex: 1 1 14rem; }
.pe-hero__note { max-width: 32rem; font-size: var(--text-meta); }
.pe-hero__media { width: 100%; min-width: 0; margin: 0; }
.pe-hero__media img { width: 100%; height: 38rem; object-fit: cover; object-position: 58% center; border-radius: var(--radius-card); }
.pe-place__intro { max-width: 43.75rem; display: flex; flex-direction: column; gap: var(--space-4); }
.pe-place__intro > * { margin: 0; }
.pe-principles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
.pe-principles > * { min-width: 0; }
.pe-principle { display: flex; min-width: 0; flex-direction: column; gap: var(--space-4); }
.pe-principle > * { margin: 0; }
.pe-principle__number { color: var(--color-champagne); font-size: var(--text-utility); font-weight: 700; letter-spacing: .12em; }
.pe-principle--eligible { box-shadow: inset 0 3px 0 var(--color-celadon); }
.pe-principle .status { margin-left: var(--space-2); }
.pe-occasions__intro { max-width: 38.75rem; display: flex; flex-direction: column; gap: var(--space-4); }
.pe-occasions__intro > * { margin: 0; }
.pe-occasion-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
.pe-occasion-grid > * { min-width: 0; }
.pe-occasion { display: flex; min-width: 0; flex-direction: column; gap: var(--space-4); }
.pe-occasion > * { margin: 0; }
.pe-occasion a { margin-top: auto; font-size: var(--text-meta); font-weight: 700; }
.pe-occasion--warm { background: var(--color-travertine); }
.pe-occasion__compliance { color: var(--color-espresso); font-size: var(--text-meta); font-weight: 700; }
.pe-dining__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(25rem, 5fr); gap: var(--space-6); align-items: stretch; }
.pe-dining__grid > * { min-width: 0; }
.pe-dining__media { width: 100%; min-width: 0; margin: 0; }
.pe-dining__media img { width: 100%; height: 100%; min-height: 38rem; object-fit: cover; object-position: 48% center; border-radius: var(--radius-card); }
.pe-dining__panel { display: flex; min-width: 0; flex-direction: column; gap: var(--space-5); padding: var(--space-7); background: var(--color-travertine); border: 1px solid var(--color-border); border-radius: var(--radius-panel); }
.pe-dining__panel > * { margin: 0; }
.pe-dining__lead { max-width: 38.75rem; }
.pe-dining__details { display: grid; grid-template-columns: 1fr; gap: var(--space-4); }
.pe-dining__details > div { min-width: 0; display: flex; flex-direction: column; gap: var(--space-3); padding-top: var(--space-4); border-top: 1px solid var(--color-border); }
.pe-dining__details p, .pe-dining__details h3 { margin: 0; }
.pe-detail__number { color: var(--color-action); font-size: var(--text-meta); font-weight: 700; }
.pe-access { padding-block: var(--space-10); }
.pe-access__eyebrow { color: var(--color-champagne); }
.pe-access h2 { max-width: 45rem; color: var(--color-pearl); margin-top: var(--space-3); }
.pe-access__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-7); margin-top: var(--space-7); }
.pe-access__grid > * { min-width: 0; }
.pe-access__explanation, .pe-access__planning { display: flex; flex-direction: column; gap: var(--space-4); }
.pe-access__explanation > *, .pe-access__planning > * { margin: 0; }
.pe-access__explanation { max-width: 44rem; }
.pe-access__planning { max-width: 34rem; }
.pe-access__planning ul { margin: 0; padding-left: 1.25rem; }
.pe-access__planning li + li { margin-top: var(--space-2); }
.pe-access__list-title { color: var(--color-pearl); font-size: var(--text-meta); font-weight: 700; }
.pe-access a { color: var(--color-pearl); }
.pe-support { max-width: none; display: flex; flex-direction: column; gap: var(--space-3); margin-top: var(--space-7); padding: var(--space-6); border-radius: var(--radius-panel); background: var(--color-celadon); color: var(--color-espresso); }
.pe-support > * { margin: 0; }
.pe-support h3, .pe-support p, .pe-support a { color: var(--color-espresso); }
.pe-support p { max-width: 50rem; }
.pe-process__lead { max-width: 40rem; display: flex; flex-direction: column; gap: var(--space-4); }
.pe-process__lead > * { margin: 0; }
.pe-process__steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); margin-top: var(--space-7); }
.pe-process__steps > * { min-width: 0; }
.pe-process__steps article { display: flex; min-width: 0; flex-direction: column; gap: var(--space-4); }
.pe-process__steps article > * { margin: 0; }
.pe-process__steps article + article { border-left: 1px solid var(--color-champagne); padding-left: var(--space-6); }
.pe-process__number { color: var(--color-action); font-family: var(--font-heading); font-size: 3rem; font-weight: 600; line-height: 1; }
.pe-evening { position: relative; min-width: 0; }
.pe-evening__media { width: 100%; min-width: 0; }
.pe-evening__media img { width: 100%; height: min(46vw, 43rem); min-height: 34rem; object-fit: cover; object-position: center; }
.pe-evening__container { position: absolute; inset: 0; display: flex; align-items: flex-end; padding-block: var(--space-8); pointer-events: none; }
.pe-evening__statement { max-width: 32.5rem; display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-6); background: rgba(30,28,26,.9); color: var(--color-pearl); pointer-events: auto; }
.pe-evening__statement > * { margin: 0; }
.pe-evening__statement h2, .pe-evening__statement p, .pe-evening__statement a { color: var(--color-pearl); }
.pe-evening__caption { font-size: var(--text-meta); }
.pe-visit__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr); gap: var(--space-5); align-items: start; }
.pe-visit__grid > * { min-width: 0; }
.pe-visit__overview { display: flex; flex-direction: column; gap: var(--space-4); }
.pe-visit__overview > * { margin: 0; }
.pe-address, .pe-hours { display: flex; flex-direction: column; gap: var(--space-4); }
.pe-address > *, .pe-hours > * { margin: 0; }
.pe-address address { color: var(--color-espresso); font-family: var(--font-heading); font-size: 1.35rem; font-style: normal; font-weight: 600; line-height: 1.3; }
.pe-hours dl { display: grid; grid-template-columns: 1fr; gap: var(--space-2); }
.pe-hours dt { color: var(--color-espresso); }
.pe-hours dd { margin: 0 0 var(--space-3); font-variant-numeric: tabular-nums; }
.pe-hours p { font-size: var(--text-meta); }
.pe-enquiry__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-7); align-items: start; }
.pe-enquiry__grid > * { min-width: 0; }
.pe-enquiry__intro { max-width: 42.5rem; display: flex; flex-direction: column; gap: var(--space-4); }
.pe-enquiry__intro > * { margin: 0; }
.pe-form-card { padding: var(--space-7); border-radius: var(--radius-panel); }
.pe-form__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); }
.pe-form__fields > * { min-width: 0; }
.pe-form__full { grid-column: 1 / -1; }
.pe-form__checks { display: flex; flex-direction: column; gap: var(--space-3); margin-top: var(--space-6); }
.pe-check { display: flex; min-width: 0; align-items: flex-start; gap: var(--space-3); color: var(--color-text); font-size: var(--text-meta); line-height: 1.5; }
.pe-check input { flex: 0 0 1.125rem; margin-top: .18rem; }
.pe-casino-helper { max-width: 36rem; margin: 0 0 0 1.875rem; padding: var(--space-3); border-left: 2px solid var(--color-celadon); background: rgba(124,157,142,.12); font-size: var(--text-meta); }
.pe-form__note { margin: var(--space-6) 0 var(--space-4); font-size: var(--text-meta); }
.pe-form__status { margin-top: var(--space-5); }
.pe-form__status p { margin: 0; }
.pe-form__status--success { padding: var(--space-5); border: 1px solid var(--color-celadon); background: rgba(124,157,142,.14); }
.pe-field-invalid input, .pe-field-invalid select, .pe-field-invalid textarea { border-color: var(--color-action); border-width: 2px; }
.pe-form-card .form-error:not(:empty) { margin-top: var(--space-1); }
.pe-closing { padding-block: var(--space-8); }
.pe-closing__content { max-width: 38.75rem; display: flex; flex-direction: column; align-items: center; gap: var(--space-6); text-align: center; }
.pe-closing__content > * { min-width: 0; }
.pe-closing__content > div:first-child { display: flex; flex-direction: column; align-items: center; gap: var(--space-4); }
.pe-closing__content h2, .pe-closing__content p { margin: 0; color: var(--color-pearl); }
.pe-closing__content p { max-width: 35rem; }
.pe-closing__eyebrow { color: var(--color-champagne) !important; }
.pe-closing__actions { display: flex; min-width: 0; justify-content: center; gap: var(--space-3); }
.pe-closing__actions > * { min-width: 0; }
@media (max-width: 65.61rem) { .pe-hero__grid { grid-template-columns: 1fr; } .pe-hero__copy { max-width: 38.75rem; } .pe-hero__media img { height: auto; aspect-ratio: 4 / 5; object-position: center; } .pe-dining__grid { grid-template-columns: 1fr; } .pe-dining__media img { min-height: 0; aspect-ratio: 4 / 5; } .pe-dining__panel { padding: var(--space-6); } }
@media (max-width: 61.24rem) { .pe-principles { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pe-visit__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pe-visit__overview { grid-column: 1 / -1; max-width: 42rem; } .pe-enquiry__grid { grid-template-columns: 1fr; } }
@media (max-width: 56.24rem) { .pe-access__grid { grid-template-columns: 1fr; gap: var(--space-6); } .pe-access__planning { max-width: 44rem; } .pe-process__steps { grid-template-columns: 1fr; gap: var(--space-5); } .pe-process__steps article + article { padding-top: var(--space-5); padding-left: 0; border-top: 1px solid var(--color-champagne); border-left: 0; } .pe-evening { display: flex; flex-direction: column; } .pe-evening__media img { height: auto; min-height: 0; aspect-ratio: 4 / 5; object-position: 62% center; } .pe-evening__container { position: static; display: block; width: 100%; padding: 0; } .pe-evening__container.container { width: 100%; margin: 0; } .pe-evening__statement { max-width: none; padding: var(--space-6) var(--container-padding); } }
@media (max-width: 43.74rem) { .private-events-page .section--generous { padding-block: var(--space-9); } .pe-hero h1 { font-size: clamp(2.9rem, 14vw, 3.5rem); } .pe-principles, .pe-occasion-grid, .pe-visit__grid, .pe-form__fields { grid-template-columns: 1fr; } .pe-visit__overview { grid-column: auto; } .pe-principles { gap: var(--space-4); } .pe-occasion-grid { gap: var(--space-4); } .pe-hero__actions { flex-direction: column; } .pe-hero__actions > * { width: 100%; flex-basis: auto; } .pe-dining__panel, .pe-form-card { padding: var(--space-5); } .pe-closing__actions { width: 100%; flex-direction: column; } .pe-closing__actions > * { width: 100%; } }
@media (prefers-reduced-motion: reduce) { .private-events-page * { scroll-behavior: auto; } }
