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

.private-events-page .eyebrow {
  text-transform: none;
}

.private-hero__grid,
.private-casino__grid,
.private-contact__grid,
.private-manifest__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 20px;
}

.private-hero__copy {
  grid-column: 1 / span 6;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.private-hero__copy > * { margin: 0; }
.private-hero__copy h1 { max-width: 720px; font-size: clamp(3.5rem, 7vw, 7.5rem); line-height: .9; }
.private-hero__lead { max-width: 520px; font-size: var(--font-size-18); }
.private-hero__actions { width: auto; min-width: 0; }
.private-hero__scope {
  display: grid;
  width: 100%;
  max-width: 570px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  margin: var(--space-2) 0 0;
  padding: 0;
  list-style: none;
  border-top: var(--border-subtle);
}
.private-hero__scope li { min-width: 0; padding: var(--space-3) var(--space-2) 0 0; font-size: var(--font-size-12); font-weight: var(--font-weight-semibold); line-height: var(--line-height-small); }
.private-hero__scope li::marker { content: ''; }
.private-hero__visual { grid-column: 8 / span 5; min-width: 0; position: relative; padding: 0 0 var(--space-6) var(--space-5); align-self: end; }
.private-hero__burgundy { position: absolute; inset: var(--space-6) var(--space-6) 0 0; background: var(--color-burgundy); }
.private-hero__media { position: relative; z-index: 1; width: 100%; aspect-ratio: 4 / 5; margin: 0; border-radius: 0; }

.private-occasions__intro,
.private-atmosphere__intro,
.private-setting__intro,
.private-process__intro,
.private-brief-guide__intro { max-width: 600px; }
.private-occasions__intro { margin-bottom: var(--space-7); }
.private-occasions__grid { display: grid; grid-template-columns: 5fr 7fr; gap: 20px; }
.private-occasions__grid > * { min-width: 0; }
.occasion-card { min-width: 0; min-height: 300px; padding: clamp(var(--space-5), 3vw, var(--space-7)); display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.occasion-card > * { margin: 0; }
.occasion-card span,
.atmosphere-card span,
.setting-detail span,
.process-step span { font-family: var(--font-heading); font-size: var(--font-size-14); font-weight: var(--font-weight-semibold); letter-spacing: var(--tracking-label); }
.occasion-card--terracotta { background: var(--color-terracotta); }
.occasion-card--burgundy { background: var(--color-burgundy); color: var(--color-ivory); }
.occasion-card--pistachio { background: var(--color-pistachio); }
.occasion-card--cobalt { background: var(--color-cobalt); color: var(--color-white); }
.occasion-card--burgundy h3,
.occasion-card--cobalt h3 { color: currentColor; }
.occasion-card a { font-weight: var(--font-weight-semibold); text-decoration-thickness: 3px; }
.occasion-card--cobalt a:hover { color: var(--color-ivory); }

.private-atmosphere__intro { max-width: 520px; margin-bottom: var(--space-7); }
.private-atmosphere__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.private-atmosphere__grid > * { min-width: 0; }
.atmosphere-card { min-height: 350px; padding: var(--space-6); display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.atmosphere-card > * { margin: 0; }
.atmosphere-card--stone { background: var(--color-stone); }
.atmosphere-card--terracotta { background: var(--color-terracotta); margin-top: var(--space-7); }
.atmosphere-card--ivory { border: var(--border-subtle); background: var(--color-ivory); }
.private-atmosphere__note { width: calc((100% - 40px) / 3); min-width: 0; margin: var(--space-6) 0 0 auto; padding: var(--space-5); border-left: 3px solid var(--color-cobalt); }
.private-atmosphere__note > *:last-child { margin-bottom: 0; }

.private-setting__intro { max-width: 560px; margin-bottom: var(--space-7); }
.private-setting__media-wrap { position: relative; padding-bottom: var(--space-9); }
.private-setting__media { width: 100%; aspect-ratio: 3 / 2; margin: 0; position: relative; }
.private-setting__media figcaption { position: absolute; right: var(--space-4); bottom: var(--space-4); margin: 0; background: rgb(244 239 230 / .88); padding: var(--space-2) var(--space-3); color: var(--color-ink); opacity: 0; transition: opacity var(--transition-base); }
.private-setting__media:hover figcaption { opacity: 1; }
.private-setting__panel { position: absolute; z-index: 1; bottom: 0; left: var(--space-6); width: min(42%, 500px); min-width: 0; padding: var(--space-6); border: var(--border-subtle); background: var(--color-ivory); box-shadow: var(--shadow-subtle); }
.private-setting__panel > *:last-child { margin-bottom: 0; }
.private-setting__details { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.private-setting__details > * { min-width: 0; }
.setting-detail { min-height: 250px; padding: var(--space-5); display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.setting-detail > * { margin: 0; }
.setting-detail--stone { background: var(--color-stone); }
.setting-detail--pistachio { background: var(--color-pistachio); }
.setting-detail--terracotta { background: var(--color-terracotta); }

.private-casino { padding-block: var(--section-space); background: var(--color-pistachio); }
.private-casino__intro { grid-column: 1 / span 6; min-width: 0; max-width: 560px; }
.private-casino__media { grid-column: 8 / span 5; min-width: 0; width: 100%; aspect-ratio: 4 / 5; margin: 0; align-self: end; }
.private-casino__cards { grid-column: 1 / -1; min-width: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: var(--space-6); }
.private-casino__cards > * { min-width: 0; }
.casino-card { min-height: 250px; padding: var(--space-5); border: var(--border-subtle); display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); transition: border-color var(--transition-base), transform var(--transition-base); }
.casino-card > * { margin: 0; }
.casino-card:hover { border-color: var(--color-ink); transform: translateY(-3px); }
.casino-card--ivory { background: var(--color-ivory); }
.casino-card--cobalt { border-color: var(--color-cobalt); background: var(--color-cobalt); color: var(--color-white); }
.casino-card--cobalt h3,
.casino-card--burgundy h3 { color: currentColor; }
.casino-card--burgundy { border-color: var(--color-burgundy); background: var(--color-burgundy); color: var(--color-ivory); }

.private-process__intro { max-width: 540px; margin-bottom: var(--space-7); }
.private-process__steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; }
.private-process__steps > * { min-width: 0; }
.process-step { min-height: 360px; padding: var(--space-5); border-right: var(--border-subtle); display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.process-step > * { margin: 0; }
.process-step:last-child { border-right: 0; }
.process-step span { font-size: var(--font-size-32); line-height: 1; }
.process-step--ivory { background: var(--color-ivory); }
.process-step--stone { background: var(--color-stone); }
.process-step--pistachio { background: var(--color-pistachio); }
.process-step--cobalt { background: var(--color-cobalt); color: var(--color-white); }
.process-step--cobalt h3 { color: currentColor; }

.private-brief-guide__intro { max-width: 620px; margin-bottom: var(--space-7); }
.private-brief-guide__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.private-brief-guide__grid > * { min-width: 0; }
.guide-card { min-height: 270px; padding: var(--space-5); display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.guide-card > * { margin: 0; }
.guide-card h3 { font-size: clamp(2rem, 4vw, 3.5rem); line-height: .92; }
.guide-card--ivory { border: var(--border-subtle); background: var(--color-ivory); }
.guide-card--stone { background: var(--color-stone); }
.guide-card--terracotta { background: var(--color-terracotta); }
.private-brief-guide__callout { width: calc((100% - 40px) / 12 * 7 + 120px); min-width: 0; margin: var(--space-6) 0 0 auto; padding: var(--space-6); background: var(--color-cobalt); color: var(--color-white); display: flex; align-items: end; justify-content: space-between; gap: var(--space-5); }
.private-brief-guide__callout > * { min-width: 0; }
.private-brief-guide__callout h3 { color: currentColor; }
.private-brief-guide__callout p { max-width: 520px; margin-bottom: 0; }
.private-brief-guide__callout .button { flex: 0 0 auto; }

.private-manifest__copy { grid-column: 1 / span 7; min-width: 0; max-width: 650px; }
.private-manifest__copy > *:last-child { margin-bottom: 0; }
.private-manifest__accent { color: var(--color-burgundy); font-family: var(--font-heading); font-size: var(--font-size-24); font-weight: var(--font-weight-semibold); line-height: 1.2; }
.private-manifest__link { display: inline-block; margin-top: var(--space-5); border-bottom: 3px solid var(--color-cobalt); font-family: var(--font-heading); font-weight: var(--font-weight-semibold); text-decoration: none; }
.private-manifest__context { grid-column: 9 / span 4; min-width: 0; align-self: end; padding: var(--space-5); border-left: 3px solid var(--color-burgundy); }
.private-manifest__context > * { display: block; }
.private-manifest__context > *:last-child { margin-bottom: 0; }
.private-manifest__context a { margin-top: var(--space-2); font-weight: var(--font-weight-semibold); text-decoration-thickness: 3px; }

.private-contact { padding-block: var(--section-space); }
.private-contact__copy { grid-column: 1 / span 6; min-width: 0; max-width: 600px; color: var(--color-white); }
.private-contact__copy h2,
.private-contact__list h3 { color: currentColor; }
.private-contact__action { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); margin-top: var(--space-5); }
.private-contact__action > * { margin: 0; }
.private-contact__action p { max-width: 420px; color: rgb(255 255 255 / .82); font-size: var(--font-size-14); }
.private-contact__list { grid-column: 8 / span 5; min-width: 0; align-self: center; padding: var(--space-5); border: 1px solid rgb(255 255 255 / .45); color: var(--color-white); }
.private-contact__list > *:last-child { margin-bottom: 0; }
.private-contact__list ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3) var(--space-5); margin: var(--space-5) 0; padding-left: 1.1em; }
.private-contact__list li { min-width: 0; }
.private-contact__list li::marker { color: var(--color-ivory); }

@media (max-width: 68.74rem) {
  .private-hero__grid,
  .private-casino__grid,
  .private-contact__grid,
  .private-manifest__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 16px; }
  .private-hero__copy { grid-column: 1 / span 5; }
  .private-hero__visual { grid-column: 6 / span 3; padding-left: var(--space-3); }
  .private-hero__copy h1 { font-size: clamp(3.25rem, 7vw, 5.5rem); }
  .private-occasions__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .private-atmosphere__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .atmosphere-card--terracotta { margin-top: 0; }
  .private-atmosphere__grid .atmosphere-card--ivory { grid-column: 1 / -1; }
  .private-atmosphere__note { width: 62.5%; }
  .private-setting__media-wrap { padding-bottom: 0; display: flex; flex-direction: column; gap: var(--space-5); }
  .private-setting__panel { position: static; width: 62.5%; }
  .private-setting__details { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .private-setting__details > :last-child { grid-column: 1 / -1; }
  .private-casino__intro { grid-column: 1 / -1; }
  .private-casino__media { grid-column: 2 / span 6; }
  .private-casino__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .private-casino__cards > :last-child { grid-column: 1 / -1; }
  .private-process__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .process-step { min-height: 290px; border-right: 0; border-bottom: var(--border-subtle); }
  .private-brief-guide__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .private-brief-guide__grid > :last-child { grid-column: 1 / -1; }
  .private-brief-guide__callout { width: 100%; }
  .private-manifest__copy { grid-column: 1 / span 6; }
  .private-manifest__context { grid-column: 1 / span 5; margin-top: var(--space-6); }
  .private-contact__copy { grid-column: 1 / -1; }
  .private-contact__list { grid-column: 1 / span 7; margin-top: var(--space-3); }
}

@media (max-width: 47.99rem) {
  .private-hero__grid,
  .private-casino__grid,
  .private-contact__grid,
  .private-manifest__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
  .private-hero { padding-top: var(--space-8); }
  .private-hero__copy,
  .private-hero__visual,
  .private-casino__intro,
  .private-casino__media,
  .private-casino__cards,
  .private-manifest__copy,
  .private-manifest__context,
  .private-contact__copy,
  .private-contact__list { grid-column: 1; width: 100%; }
  .private-hero__copy h1 { max-width: none; font-size: clamp(2.75rem, 13vw, 4rem); }
  .private-hero__lead { max-width: none; }
  .private-hero__scope { grid-template-columns: 1fr; gap: 0; }
  .private-hero__scope li { padding: var(--space-2) 0; border-bottom: var(--border-subtle); }
  .private-hero__visual { padding: 0 0 12px; }
  .private-hero__burgundy { inset: auto 0 0; height: 12px; }
  .private-hero__media { border-radius: var(--radius-card); }
  .private-occasions__intro,
  .private-atmosphere__intro,
  .private-setting__intro,
  .private-process__intro,
  .private-brief-guide__intro { margin-bottom: var(--space-6); }
  .private-occasions__grid,
  .private-atmosphere__grid,
  .private-setting__details,
  .private-casino__cards,
  .private-process__steps,
  .private-brief-guide__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); }
  .private-atmosphere__grid .atmosphere-card--ivory,
  .private-setting__details > :last-child,
  .private-casino__cards > :last-child,
  .private-brief-guide__grid > :last-child { grid-column: 1; }
  .occasion-card { min-height: 220px; padding: var(--space-5); }
  .atmosphere-card { min-height: 200px; padding: var(--space-5); }
  .private-atmosphere__note { width: 100%; margin-top: var(--space-5); padding: var(--space-4); }
  .private-setting__media-wrap { gap: var(--space-4); }
  .private-setting__panel { width: 100%; padding: var(--space-5); box-shadow: none; }
  .private-setting__media figcaption { position: static; margin-top: var(--space-2); opacity: 1; background: transparent; padding: 0; }
  .setting-detail { min-height: 0; padding: var(--space-5); }
  .private-casino { margin-inline: calc(var(--container-padding) * -1); padding-inline: var(--container-padding); }
  .private-casino__media { aspect-ratio: 4 / 5; }
  .casino-card { min-height: 0; }
  .process-step { min-height: 170px; padding: var(--space-5); border-right: 0; border-bottom: 0; border-left: 3px solid var(--color-ink); }
  .process-step--cobalt { border-left-color: var(--color-ivory); }
  .guide-card { min-height: 180px; }
  .private-brief-guide__callout { flex-direction: column; align-items: stretch; padding: var(--space-5); gap: var(--space-5); }
  .private-manifest__context { margin-top: 0; }
  .private-contact { margin-inline: calc(var(--container-padding) * -1); padding-inline: var(--container-padding); }
  .private-contact__list { margin-top: 0; }
  .private-contact__list ul { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
}

@media (max-width: 26.24rem) {
  .private-brief-guide__callout .button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .private-setting__media figcaption { opacity: 1; }
  .casino-card:hover { transform: none; }
}
