.private-events-page {
  overflow: hidden;
}

.private-events-page .eyebrow::before {
  width: 3rem;
  height: 3px;
  background: var(--color-filament-amber);
  content: "";
}

.private-events-page .button {
  min-height: 3rem;
}

.private-events-hero {
  position: relative;
  background: var(--color-cast-iron);
}

.private-events-hero__media {
  width: 100%;
  height: clamp(37.5rem, 54vw, 42.5rem);
}

.private-events-hero__media img {
  object-position: center center;
}

.private-events-hero__content-wrap {
  position: absolute;
  inset: 0;
  display: flex;
  min-width: 0;
  align-items: flex-end;
  background: linear-gradient(0deg, rgba(18, 21, 26, 0.88) 0%, rgba(18, 21, 26, 0.62) 42%, rgba(18, 21, 26, 0.08) 76%);
}

.private-events-hero__content {
  width: min(100% - (var(--gutter) * 2), var(--container-max));
  padding-bottom: var(--space-8);
}

.private-events-hero__copy {
  display: flex;
  width: min(100%, 35rem);
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.private-events-hero__copy > * {
  margin: 0;
}

.private-events-hero__copy h1 {
  font-size: clamp(2.5rem, 5vw, 3.5rem);
}

.private-events-hero__lead {
  max-width: 34rem;
  color: var(--color-warm-off-white);
  font-size: var(--font-size-lead);
  line-height: var(--line-height-lead);
}

.private-events-hero__actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.private-events-hero__actions > * {
  min-width: 0;
}

.private-events-hero__booking-note {
  max-width: 33rem;
  color: var(--color-warm-off-white);
  font-size: var(--font-size-meta);
  line-height: var(--line-height-meta);
}

.private-events-hero__age-note {
  display: flex;
  width: min(100%, 34rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--border-color);
  border-left: 3px solid var(--color-filament-amber);
  background: rgba(18, 21, 26, 0.9);
}

.private-events-hero__age-note p {
  margin: 0;
  color: var(--color-warm-off-white);
  font-size: var(--font-size-meta);
  line-height: var(--line-height-meta);
}

.private-events-rhythm__layout {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(10rem, 13.75rem) minmax(0, 43.75rem) minmax(0, 1fr);
  column-gap: var(--space-5);
}

.private-events-rhythm__intro {
  grid-column: 1 / 3;
  width: min(100%, 40.625rem);
  min-width: 0;
}

.private-events-rhythm__intro p {
  max-width: 40rem;
}

.private-events-rhythm__blocks {
  display: grid;
  min-width: 0;
  grid-column: 1 / 3;
  grid-template-columns: minmax(0, 1fr);
}

.private-events-rhythm__block {
  display: grid;
  min-width: 0;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  gap: var(--space-4);
  padding-block: var(--space-6);
  border-top: 1px solid var(--border-color);
}

.private-events-rhythm__block:last-child {
  border-bottom: 1px solid var(--border-color);
}

.private-events-rhythm__index {
  min-width: 0;
  color: var(--color-filament-amber);
  font-family: var(--font-heading);
  font-size: var(--font-size-meta);
  font-weight: var(--font-weight-semibold);
  font-variant-numeric: tabular-nums;
}

.private-events-rhythm__block--sage .private-events-rhythm__index {
  color: #86a899;
}

.private-events-rhythm__body {
  min-width: 0;
  max-width: 43.75rem;
}

.private-events-rhythm__body p {
  max-width: 36rem;
}

.private-events-occasions__layout {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-7);
  align-items: start;
}

.private-events-occasions__text,
.private-events-occasions__figure {
  min-width: 0;
  width: 100%;
}

.private-events-occasions__lead {
  max-width: 32.5rem;
  font-size: var(--font-size-lead);
  line-height: var(--line-height-lead);
}

.private-events-occasions__prompts {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}

.private-events-occasion {
  min-width: 0;
}

.private-events-occasion--wide {
  grid-column: 1 / -1;
}

.private-events-occasion__rule,
.private-events-statement__rule {
  display: block;
  width: 3rem;
  height: 3px;
  margin-bottom: var(--space-4);
  background: var(--color-filament-amber);
}

.private-events-occasion p {
  max-width: 28rem;
}

.private-events-occasions__media {
  width: 100%;
  aspect-ratio: 4 / 3;
}

.private-events-occasions__media img {
  object-position: left center;
}

.private-events-occasions__figure {
  margin: 0;
}

.private-events-occasions__figure figcaption,
.private-events-arrival__figure figcaption {
  margin-top: var(--space-3);
  color: var(--color-warm-off-white);
  font-size: var(--font-size-meta);
  line-height: var(--line-height-meta);
}

.private-events-practical__intro {
  width: min(100%, 37.5rem);
  min-width: 0;
}

.private-events-practical__intro p {
  max-width: 37.5rem;
}

.private-events-practical__grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-4);
}

.private-events-fact {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.private-events-fact > * {
  margin: 0;
}

.private-events-fact address,
.private-events-fact__hours {
  color: var(--color-soft-warm-white);
  font-family: var(--font-heading);
  font-size: var(--font-size-lead);
  font-weight: var(--font-weight-medium);
  font-variant-numeric: tabular-nums;
  line-height: var(--line-height-lead);
}

.private-events-fact p {
  max-width: 26rem;
}

.private-events-fact--casino {
  background: var(--color-slate-raised);
}

.private-events-fact--concierge {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: minmax(0, 2fr) minmax(13rem, 1fr);
  gap: var(--space-5);
  align-items: end;
}

.private-events-fact--concierge > .status-label {
  grid-column: 1 / -1;
}

.private-events-fact__concierge-copy {
  min-width: 0;
}

.private-events-fact__concierge-copy > *:last-child {
  margin-bottom: 0;
}

.private-events-fact__contact-actions {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.private-events-fact__contact-actions a {
  overflow-wrap: anywhere;
}

.private-events-setting__intro {
  width: min(100%, 38.75rem);
  min-width: 0;
}

.private-events-setting__intro p {
  max-width: 38.75rem;
}

.private-events-setting__statements {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  align-items: start;
}

.private-events-statement {
  min-width: 0;
  padding: var(--space-5);
  border: 1px solid var(--border-color);
}

.private-events-statement > *:last-child {
  margin-bottom: 0;
}

.private-events-statement--first {
  background: var(--color-cast-iron);
}

.private-events-statement--second {
  margin-top: var(--space-7);
  background: var(--color-smoked-slate);
}

.private-events-statement--third {
  margin-top: var(--space-4);
  border-left: 3px solid var(--color-sage);
  background: var(--color-slate-raised);
}

.private-events-statement p {
  max-width: 28rem;
}

.private-events-responsible {
  background: var(--color-sage-tint);
}

.private-events-responsible__eyebrow::before {
  background: var(--color-sage);
}

.private-events-responsible__intro {
  width: min(100%, 37.5rem);
  min-width: 0;
}

.private-events-responsible__intro p {
  max-width: 37.5rem;
}

.private-events-responsible__grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}

.private-events-responsible__panel,
.private-events-responsible__optional,
.private-events-responsible__support {
  min-width: 0;
}

.private-events-responsible__panel {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.private-events-responsible__panel > * {
  margin: 0;
}

.private-events-responsible__marker {
  color: var(--color-soft-warm-white);
  font-family: var(--font-heading);
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: var(--font-weight-semibold);
  line-height: 1;
}

.private-events-responsible__optional {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-6);
  border: 1px solid var(--border-color);
  border-left: 3px solid var(--color-sage);
  background: var(--color-slate-raised);
}

.private-events-responsible__optional > * {
  margin: 0;
}

.private-events-responsible__optional p,
.private-events-responsible__support p {
  max-width: 36rem;
}

.private-events-responsible__support {
  display: flex;
  grid-column: 1 / -1;
  flex-direction: column;
  gap: var(--space-3);
}

.private-events-responsible__support > * {
  margin: 0;
}

.private-events-arrival__layout {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 55fr) minmax(0, 45fr);
  gap: var(--space-7);
  align-items: start;
}

.private-events-arrival__content,
.private-events-arrival__figure {
  min-width: 0;
  width: 100%;
}

.private-events-arrival__content {
  max-width: 38.75rem;
}

.private-events-arrival__lead {
  max-width: 33.75rem;
  font-size: var(--font-size-lead);
  line-height: var(--line-height-lead);
}

.private-events-arrival__prompts {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
}

.private-events-arrival__prompt {
  display: grid;
  min-width: 0;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  gap: var(--space-3);
  padding-block: var(--space-5);
  border-top: 1px solid var(--border-color);
}

.private-events-arrival__prompt:last-child {
  border-bottom: 1px solid var(--border-color);
}

.private-events-arrival__number {
  color: var(--color-filament-amber);
  font-family: var(--font-heading);
  font-size: var(--font-size-meta);
  font-weight: var(--font-weight-semibold);
  font-variant-numeric: tabular-nums;
}

.private-events-arrival__prompt > div {
  min-width: 0;
}

.private-events-arrival__prompt blockquote {
  max-width: 33.75rem;
}

.private-events-arrival__contact-links {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-4);
}

.private-events-arrival__contact-links > * {
  min-width: 0;
}

.private-events-arrival__figure {
  margin: 0;
}

.private-events-arrival__media {
  width: 100%;
  aspect-ratio: 3 / 4;
}

.private-events-arrival__media img {
  object-position: center center;
}

.private-events-faq__intro {
  width: min(100%, 47.5rem);
  min-width: 0;
  margin-inline: auto;
}

.private-events-faq__intro p {
  max-width: 42.5rem;
}

.private-events-faq__list {
  display: grid;
  width: min(100%, 47.5rem);
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
  margin-inline: auto;
  border-top: 1px solid var(--border-color);
}

.private-events-faq__item {
  min-width: 0;
  border-bottom: 1px solid var(--border-color);
}

.private-events-faq__item h3 {
  margin: 0;
}

.private-events-faq__button {
  display: grid;
  width: 100%;
  min-width: 0;
  min-height: 3.5rem;
  grid-template-columns: minmax(0, 1fr) 1.5rem;
  gap: var(--space-4);
  padding: var(--space-4) var(--space-5);
  border: 0;
  background: transparent;
  color: var(--color-soft-warm-white);
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-lead);
  text-align: left;
}

.private-events-faq__button:hover {
  background: var(--color-slate-raised);
}

.private-events-faq__indicator {
  width: 1.5rem;
  min-width: 1.5rem;
  color: var(--color-filament-amber);
  font-size: 1.5rem;
  line-height: 1;
  text-align: center;
  transition: transform var(--transition-standard);
}

.private-events-faq__button[aria-expanded="true"] .private-events-faq__indicator {
  transform: rotate(180deg);
}

.private-events-faq__answer {
  padding: 0 var(--space-5) var(--space-5);
}

.private-events-faq__answer p {
  max-width: 42.5rem;
  margin: 0;
}

.private-events-faq__item--critical {
  border-left: 3px solid var(--color-sage);
  background: var(--color-sage-tint);
}

.private-events-faq__item--critical .private-events-faq__indicator {
  color: #a8c2b6;
}

.private-events-close__intro {
  width: min(100%, 42.5rem);
  min-width: 0;
  margin-inline: auto;
  text-align: center;
}

.private-events-close__intro .eyebrow {
  justify-content: center;
}

.private-events-close__intro p {
  max-width: 32.5rem;
  margin-right: auto;
  margin-left: auto;
}

.private-events-close__actions {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}

.private-events-close__panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-6);
  border: 1px solid var(--border-color);
}

.private-events-close__panel > * {
  margin: 0;
}

.private-events-close__panel--booking {
  border-top: 3px solid var(--color-filament-amber);
  background: var(--color-amber-tint);
}

.private-events-close__panel--concierge {
  background: var(--color-smoked-slate);
}

.private-events-close__panel p {
  max-width: 28rem;
}

.private-events-close__contact-actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.private-events-close__contact-actions > * {
  min-width: 0;
}

.private-events-close__responsibility {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin-top: var(--space-5);
}

.private-events-close__responsibility > * {
  margin: 0;
}

.private-events-close__responsibility p {
  max-width: 47.5rem;
}

@media (max-width: 65.624rem) {
  .private-events-rhythm__layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .private-events-rhythm__intro,
  .private-events-rhythm__blocks {
    grid-column: 1;
  }

  .private-events-setting__statements {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .private-events-statement--second,
  .private-events-statement--third {
    margin-top: 0;
  }

  .private-events-statement--third {
    grid-column: 1 / -1;
  }
}

@media (max-width: 63.999rem) {
  .private-events-occasions__layout,
  .private-events-arrival__layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .private-events-occasions__text,
  .private-events-arrival__content {
    max-width: none;
  }

  .private-events-occasions__figure {
    grid-row: 2;
  }

  .private-events-arrival__figure {
    grid-row: 2;
  }

  .private-events-arrival__content {
    grid-row: 1;
  }

  .private-events-arrival__figure {
    order: -1;
  }

  .private-events-arrival__layout {
    display: flex;
    flex-direction: column;
    gap: var(--space-6);
  }

  .private-events-arrival__figure {
    width: 100%;
  }

  .private-events-arrival__media {
    aspect-ratio: 4 / 5;
  }
}

@media (max-width: 59.999rem) {
  .private-events-practical__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .private-events-fact--casino,
  .private-events-fact--concierge {
    grid-column: 1 / -1;
  }

  .private-events-responsible__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .private-events-responsible__support {
    grid-column: 1;
  }
}

@media (max-width: 51.249rem) {
  .private-events-close__actions {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 47.499rem) {
  .private-events-hero {
    display: flex;
    flex-direction: column;
  }

  .private-events-hero__media {
    height: auto;
    aspect-ratio: 4 / 5;
  }

  .private-events-hero__media img {
    object-position: center center;
  }

  .private-events-hero__content-wrap {
    position: static;
    display: block;
    background: var(--color-cast-iron);
  }

  .private-events-hero__content {
    padding-block: var(--space-6);
  }

  .private-events-hero__copy {
    width: 100%;
    gap: var(--space-4);
  }

  .private-events-hero__copy h1 {
    font-size: 2.25rem;
    line-height: 1.111;
  }

  .private-events-hero__lead,
  .private-events-hero__booking-note,
  .private-events-hero__age-note {
    max-width: none;
    width: 100%;
  }

  .private-events-hero__actions {
    width: 100%;
    flex-direction: column;
  }

  .private-events-hero__actions .button {
    width: 100%;
  }

  .private-events-rhythm__block {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
  }

  .private-events-rhythm__body,
  .private-events-rhythm__body p {
    max-width: none;
  }

  .private-events-occasions__prompts,
  .private-events-practical__grid,
  .private-events-setting__statements {
    grid-template-columns: minmax(0, 1fr);
  }

  .private-events-occasion--wide,
  .private-events-statement--third {
    grid-column: 1;
  }

  .private-events-occasion p,
  .private-events-setting__intro,
  .private-events-setting__intro p,
  .private-events-statement p {
    max-width: none;
  }

  .private-events-practical__grid {
    gap: var(--space-4);
  }

  .private-events-fact--casino,
  .private-events-fact--concierge {
    grid-column: 1;
  }

  .private-events-fact--concierge {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }

  .private-events-fact--concierge > .status-label {
    grid-column: 1;
  }

  .private-events-statement {
    padding: var(--space-5);
  }

  .private-events-responsible__optional {
    padding: var(--space-5);
  }

  .private-events-arrival__contact-links {
    flex-direction: column;
    align-items: flex-start;
  }

  .private-events-faq__button {
    padding: var(--space-4);
    font-size: var(--font-size-body);
  }

  .private-events-faq__answer {
    padding: 0 var(--space-4) var(--space-4);
  }

  .private-events-close__panel {
    padding: var(--space-5);
  }

  .private-events-close__contact-actions {
    width: 100%;
    flex-direction: column;
  }

  .private-events-close__contact-actions .button,
  .private-events-close__panel--booking .button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .private-events-occasions__media img,
  .private-events-arrival__media img {
    transition: transform var(--transition-standard);
  }

  .private-events-occasions__figure:hover img,
  .private-events-arrival__figure:hover img {
    transform: scale(1.015);
  }
}
