.event-concepts-page { overflow: hidden; }
.event-concepts-page [data-ec-reveal] { opacity: 0; transform: translateY(18px); transition: opacity 360ms ease, transform 360ms ease; }
.event-concepts-page [data-ec-reveal].is-visible { opacity: 1; transform: translateY(0); }
.event-concepts-page .ec-hero { padding: 5.5rem 0 7.5rem; }
.event-concepts-page .ec-hero__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(430px, 6fr); align-items: center; min-width: 0; gap: 1.25rem; min-height: 45rem; }
.event-concepts-page .ec-hero__copy { grid-column: 1 / 2; width: 100%; max-width: 35rem; min-width: 0; }
.event-concepts-page .ec-hero__copy h1 { max-width: 10.5ch; }
.event-concepts-page .ec-hero__copy .lead { max-width: 35rem; }
.event-concepts-page .ec-hero__media { grid-column: 3 / 4; width: 100%; min-width: 0; aspect-ratio: 16 / 10; }
.event-concepts-page .ec-hero__media img { object-position: 68% center; }
.event-concepts-page .ec-occasions__intro { width: 100%; max-width: 37.5rem; min-width: 0; }
.event-concepts-page .ec-occasions__intro .lead { max-width: 35rem; }
.event-concepts-page .ec-occasions__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; min-width: 0; gap: 1.25rem; margin-top: 3rem; }
.event-concepts-page .ec-occasion { width: 100%; min-width: 0; padding: 2rem; border: var(--border-default); background: rgba(19, 27, 36, .44); transition: border-color var(--transition-border); }
.event-concepts-page .ec-occasion:hover { border-color: var(--color-divider-strong); }
.event-concepts-page .ec-occasion--offset { margin-top: 2.5rem; }
.event-concepts-page .ec-occasion__label, .event-concepts-page .ec-block__note, .event-concepts-page .ec-scene__category, .event-concepts-page .ec-audience__label { display: block; margin-bottom: .75rem; color: var(--color-champagne); font-size: var(--text-label); font-weight: 600; letter-spacing: var(--tracking-label); line-height: 1.2; text-transform: uppercase; }
.event-concepts-page .ec-occasion .rule { width: 3rem; margin-bottom: 1.5rem; }
.event-concepts-page .ec-atmosphere__grid { display: grid; grid-template-columns: minmax(390px, 7fr) minmax(0, 1fr) minmax(0, 4fr); align-items: center; min-width: 0; gap: 1.25rem; }
.event-concepts-page .ec-atmosphere__media { grid-column: 1 / 2; width: 100%; min-width: 0; aspect-ratio: 4 / 5; }
.event-concepts-page .ec-atmosphere__media img { object-position: center; }
.event-concepts-page .ec-atmosphere__copy { grid-column: 3 / 4; width: 100%; max-width: 30rem; min-width: 0; }
.event-concepts-page .ec-atmosphere__copy .lead { max-width: 30rem; }
.event-concepts-page .ec-layers { display: flex; flex-direction: column; min-width: 0; gap: 1rem; margin: 2rem 0; }
.event-concepts-page .ec-layers > div { display: grid; grid-template-columns: 5.5rem minmax(0, 1fr); min-width: 0; gap: .75rem; padding-top: .75rem; border-top: var(--border-default); }
.event-concepts-page .ec-layers strong { font-size: var(--text-small); letter-spacing: .04em; }
.event-concepts-page .ec-layers span { color: var(--color-muted); font-size: var(--text-small); line-height: var(--leading-small); }
.event-concepts-page .ec-offline-note { display: flex; flex-direction: column; min-width: 0; gap: .75rem; max-width: 35rem; padding: 1.5rem; border-top: 1px solid var(--color-copper); background: rgba(19, 27, 36, .7); }
.event-concepts-page .ec-offline-note .eyebrow, .event-concepts-page .ec-offline-note p { margin: 0; }
.event-concepts-page .ec-offline-note p { color: var(--color-muted); font-size: var(--text-small); line-height: var(--leading-small); }
.event-concepts-page .ec-blocks__header { width: 100%; max-width: 42.5rem; min-width: 0; }
.event-concepts-page .ec-blocks__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); align-items: start; min-width: 0; gap: 2rem 1.25rem; margin-top: 3rem; }
.event-concepts-page .ec-block { display: grid; grid-template-columns: 3.5rem minmax(0, 1fr); width: 100%; min-width: 0; gap: 1rem; padding: 2rem; border: var(--border-default); background: rgba(9, 12, 16, .34); transition: border-color var(--transition-border); }
.event-concepts-page .ec-block:hover { border-color: var(--color-divider-strong); }
.event-concepts-page .ec-block__number { color: var(--color-copper); font-family: var(--font-heading); font-size: 2.5rem; line-height: 1; }
.event-concepts-page .ec-block--one { grid-column: 1 / span 6; }
.event-concepts-page .ec-block--two { grid-column: 8 / span 5; margin-top: 2rem; background: var(--color-deep-mulberry); }
.event-concepts-page .ec-block--three { grid-column: 1 / span 5; }
.event-concepts-page .ec-block--four { grid-column: 7 / span 6; border-bottom-color: var(--color-copper); }
.event-concepts-page .ec-block__note { color: var(--color-muted); }
.event-concepts-page .ec-scenes__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 1fr) minmax(0, 7fr); align-items: start; min-width: 0; gap: 1.25rem; }
.event-concepts-page .ec-scenes__intro { grid-column: 1 / 2; width: 100%; max-width: 26.875rem; min-width: 0; }
.event-concepts-page .ec-scenes__list { grid-column: 3 / 4; display: flex; flex-direction: column; min-width: 0; gap: 1.25rem; }
.event-concepts-page .ec-scene { width: 100%; max-width: 35rem; min-width: 0; padding: 2rem; border: var(--border-default); background: rgba(19, 27, 36, .48); }
.event-concepts-page .ec-scene--inset { width: calc(100% - 8.33%); margin-left: 8.33%; }
.event-concepts-page .ec-scene--mulberry { background: var(--color-deep-mulberry); }
.event-concepts-page .ec-scene__meta { display: flex; flex-wrap: wrap; min-width: 0; gap: .5rem 1rem; padding-top: 1rem; border-top: var(--border-default); color: var(--color-muted); font-size: var(--text-small); line-height: var(--leading-small); }
.event-concepts-page .ec-hosted { padding-block: 5.5rem; }
.event-concepts-page .ec-hosted__media { width: 66.666%; max-width: 48.75rem; min-width: 0; margin-left: 8.333%; aspect-ratio: 3 / 2; }
.event-concepts-page .ec-hosted__media img { object-position: center; }
.event-concepts-page .ec-hosted__copy { width: 50%; max-width: 42.5rem; min-width: 0; margin: 3rem 0 0 8.333%; }
.event-concepts-page .ec-hosted__copy p { max-width: 35rem; color: var(--color-muted); }
.event-concepts-page .ec-hosted__copy .rule { margin-top: 2rem; }
.event-concepts-page .ec-process__intro { width: 100%; max-width: 38.75rem; min-width: 0; }
.event-concepts-page .ec-process__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; min-width: 0; margin-top: 3rem; }
.event-concepts-page .ec-process__grid > article { width: 100%; min-width: 0; padding: 0 1.5rem; border-left: var(--border-default); }
.event-concepts-page .ec-process__grid > article:first-child { padding-left: 0; border-left: 0; }
.event-concepts-page .ec-process__grid span { display: block; margin-bottom: .75rem; color: var(--color-copper); font-size: var(--text-label); font-weight: 600; letter-spacing: var(--tracking-label); text-transform: uppercase; }
.event-concepts-page .ec-process__grid p { color: var(--color-muted); font-size: var(--text-small); line-height: var(--leading-small); }
.event-concepts-page .ec-audiences > h2 { max-width: 42.5rem; }
.event-concepts-page .ec-audiences__grid { display: grid; grid-template-columns: minmax(430px, 5fr) minmax(0, 1fr) minmax(430px, 5fr); align-items: start; min-width: 0; gap: 1.25rem; margin-top: 3rem; }
.event-concepts-page .ec-audience { grid-column: 1 / 2; display: flex; flex-direction: column; width: 100%; min-width: 0; gap: 1rem; padding: 2rem; border: var(--border-default); background: rgba(26, 39, 54, .56); }
.event-concepts-page .ec-audience--corporate { grid-column: 3 / 4; margin-top: 1.75rem; background: var(--color-smoked-plum); }
.event-concepts-page .ec-audience > h3, .event-concepts-page .ec-audience > p, .event-concepts-page .ec-audience__label { margin: 0; }
.event-concepts-page .ec-audience > p { max-width: 31.25rem; }
.event-concepts-page .ec-audience > div { display: flex; flex-wrap: wrap; min-width: 0; gap: .5rem 1rem; padding-top: 1rem; border-top: var(--border-default); color: var(--color-muted); font-size: var(--text-small); }
.event-concepts-page .ec-guidance__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 1fr) minmax(0, 6fr) minmax(0, 1fr); align-items: start; min-width: 0; gap: 1.25rem; }
.event-concepts-page .ec-guidance__intro { grid-column: 1 / 2; width: 100%; max-width: 26.875rem; min-width: 0; }
.event-concepts-page .ec-guidance__list { grid-column: 3 / 4; display: flex; flex-direction: column; width: 100%; max-width: 41.25rem; min-width: 0; gap: 0; padding: 2rem; }
.event-concepts-page .ec-guidance__list > h3 { margin-bottom: 1.5rem; }
.event-concepts-page .ec-guidance__list > div { display: grid; grid-template-columns: 10rem minmax(0, 1fr); min-width: 0; gap: 1rem; padding: 1rem 0; border-top: var(--border-default); }
.event-concepts-page .ec-guidance__list strong { font-size: var(--text-small); }
.event-concepts-page .ec-guidance__list span { color: var(--color-muted); font-size: var(--text-small); line-height: var(--leading-small); }
.event-concepts-page .ec-inquiry__panel { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 1fr) minmax(0, 7fr); align-items: start; min-width: 0; gap: 1.25rem; padding: 3rem; border: var(--border-default); background: var(--color-smoked-plum); box-shadow: var(--shadow-surface); }
.event-concepts-page .ec-inquiry__copy { grid-column: 1 / 2; width: 100%; max-width: 27.5rem; min-width: 0; }
.event-concepts-page .ec-inquiry__copy .lead { max-width: 27.5rem; }
.event-concepts-page .ec-inquiry__offline { color: var(--color-muted); font-size: var(--text-small); line-height: var(--leading-small); }
.event-concepts-page .ec-form { grid-column: 3 / 4; display: flex; flex-direction: column; width: 100%; min-width: 0; gap: 1rem; }
.event-concepts-page .ec-form__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-width: 0; gap: 1rem; }
.event-concepts-page .ec-form__field { width: 100%; min-width: 0; }
.event-concepts-page .ec-form__field--full { grid-column: 1 / -1; }
.event-concepts-page .ec-form__error { display: block; min-height: 1.2rem; margin-top: .375rem; color: var(--color-champagne); font-size: var(--text-small); line-height: 1.2; }
.event-concepts-page .ec-form__hint, .event-concepts-page .ec-form__status { margin: 0; color: var(--color-muted); font-size: var(--text-small); line-height: var(--leading-small); }
.event-concepts-page .ec-form__status:not(:empty) { padding-top: .5rem; color: var(--color-champagne); }
.event-concepts-page .ec-form .button { align-self: flex-start; }
.event-concepts-page .ec-closing { padding: 7.5rem 0 5.5rem; background: var(--color-obsidian); }
.event-concepts-page .ec-closing__statement { width: 50%; max-width: 42.5rem; min-width: 0; margin-left: 25%; }
.event-concepts-page .ec-closing__statement .rule { margin-bottom: 2rem; }
.event-concepts-page em { font-style: italic; }

@media (max-width: 1020px) {
  .event-concepts-page .ec-hero { padding-top: 4rem; }
  .event-concepts-page .ec-hero__grid { grid-template-columns: 1fr; min-height: 0; gap: 1.5rem; }
  .event-concepts-page .ec-hero__copy, .event-concepts-page .ec-hero__media { grid-column: 1; max-width: none; }
  .event-concepts-page .ec-hero__media { aspect-ratio: 16 / 10; }
  .event-concepts-page .ec-atmosphere__grid { grid-template-columns: 1fr; gap: 2rem; }
  .event-concepts-page .ec-atmosphere__media, .event-concepts-page .ec-atmosphere__copy { grid-column: 1; max-width: none; }
  .event-concepts-page .ec-atmosphere__media { max-width: 38rem; }
  .event-concepts-page .ec-atmosphere__copy { max-width: 35rem; }
  .event-concepts-page .ec-hosted__media { width: 100%; max-width: none; margin-left: 0; }
  .event-concepts-page .ec-hosted__copy { width: 66.666%; margin-left: 0; }
  .event-concepts-page .ec-audiences__grid { grid-template-columns: 1fr; gap: 1rem; }
  .event-concepts-page .ec-audience, .event-concepts-page .ec-audience--corporate { grid-column: 1; margin-top: 0; }
  .event-concepts-page .ec-guidance__grid { grid-template-columns: 1fr; gap: 2rem; }
  .event-concepts-page .ec-guidance__intro, .event-concepts-page .ec-guidance__list { grid-column: 1; max-width: 41.25rem; }
}
@media (max-width: 959px) {
  .event-concepts-page .ec-occasions__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .event-concepts-page .ec-occasion--offset { margin-top: 0; }
  .event-concepts-page .ec-occasions__grid > :nth-child(3) { grid-column: 1 / -1; max-width: calc(50% - .625rem); }
  .event-concepts-page .ec-blocks__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .event-concepts-page .ec-block--one, .event-concepts-page .ec-block--two, .event-concepts-page .ec-block--three, .event-concepts-page .ec-block--four { grid-column: auto; margin-top: 0; }
  .event-concepts-page .ec-scenes__grid { grid-template-columns: 1fr; gap: 2rem; }
  .event-concepts-page .ec-scenes__intro, .event-concepts-page .ec-scenes__list { grid-column: 1; max-width: none; }
  .event-concepts-page .ec-scenes__list { display: grid; grid-template-columns: 1fr; }
  .event-concepts-page .ec-scene, .event-concepts-page .ec-scene--inset { width: 100%; max-width: none; margin-left: 0; }
  .event-concepts-page .ec-process__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; }
  .event-concepts-page .ec-process__grid > article { padding: 1.5rem; border-left: 0; border-top: var(--border-default); }
  .event-concepts-page .ec-process__grid > article:first-child { padding-left: 1.5rem; }
  .event-concepts-page .ec-process__grid > article:nth-child(-n+2) { border-top: 0; }
  .event-concepts-page .ec-inquiry__panel { grid-template-columns: 1fr; gap: 2rem; }
  .event-concepts-page .ec-inquiry__copy, .event-concepts-page .ec-form { grid-column: 1; max-width: none; }
}
@media (max-width: 767px) {
  .event-concepts-page .ec-hero { padding: 2.5rem 0 4rem; }
  .event-concepts-page .ec-hero__copy h1 { max-width: 12ch; }
  .event-concepts-page .ec-hero__media { aspect-ratio: 4 / 5; }
  .event-concepts-page .ec-hero__media img { object-position: 64% center; }
  .event-concepts-page .ec-occasions__grid, .event-concepts-page .ec-blocks__grid, .event-concepts-page .ec-process__grid { grid-template-columns: 1fr; gap: 1rem; }
  .event-concepts-page .ec-occasions__grid > :nth-child(3) { grid-column: 1; max-width: none; }
  .event-concepts-page .ec-occasion, .event-concepts-page .ec-block { padding: 1.5rem; }
  .event-concepts-page .ec-block--one, .event-concepts-page .ec-block--two, .event-concepts-page .ec-block--three, .event-concepts-page .ec-block--four { grid-column: 1; }
  .event-concepts-page .ec-block { grid-template-columns: 1fr; gap: .75rem; }
  .event-concepts-page .ec-block__number { font-size: 1.5rem; }
  .event-concepts-page .ec-atmosphere__media { max-width: none; }
  .event-concepts-page .ec-layers > div { grid-template-columns: 1fr; gap: .25rem; }
  .event-concepts-page .ec-hosted { padding-block: 4rem; }
  .event-concepts-page .ec-hosted__copy { width: 100%; margin-top: 2rem; }
  .event-concepts-page .ec-process__grid > article, .event-concepts-page .ec-process__grid > article:first-child, .event-concepts-page .ec-process__grid > article:nth-child(-n+2) { padding: 1.5rem 0; border-top: var(--border-default); }
  .event-concepts-page .ec-process__grid > article:first-child { border-top: 0; padding-top: 0; }
  .event-concepts-page .ec-guidance__list { padding: 1.5rem; }
  .event-concepts-page .ec-guidance__list > div { grid-template-columns: 1fr; gap: .25rem; }
  .event-concepts-page .ec-inquiry__panel { padding: 1.5rem; }
  .event-concepts-page .ec-form__fields { grid-template-columns: 1fr; }
  .event-concepts-page .ec-form__field--full { grid-column: 1; }
  .event-concepts-page .ec-form .button { align-self: stretch; width: 100%; }
  .event-concepts-page .ec-closing { padding: 4rem 0; }
  .event-concepts-page .ec-closing__statement { width: 100%; margin-left: 0; }
}
@media (prefers-reduced-motion: reduce) { .event-concepts-page [data-ec-reveal] { opacity: 1; transform: none; } }
