.event-planning-page { overflow: hidden; }
.event-planning-page .section { position: relative; }
.event-planning-page .lead { margin-block-end: 0; }

.ep-hero__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); column-gap: 8.333%; align-items: center; }
.ep-hero__copy { min-width: 0; max-width: 620px; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.ep-hero__copy h1, .ep-hero__copy p { margin: 0; }
.ep-hero__lead { max-width: 600px; font-size: var(--text-md); line-height: var(--leading-relaxed); }
.ep-hero__rule { width: 72px; height: 1px; background: var(--color-imperial-gold); }
.ep-hero__actions { width: auto; }
.ep-hero__reassurance { font-size: var(--text-sm); }
.ep-hero__media { position: relative; width: 100%; min-width: 0; margin: var(--space-7) 0 0; }
.ep-hero__media img { width: 100%; aspect-ratio: 4 / 5; object-position: 70% center; }
.ep-hero__badge { position: absolute; bottom: var(--space-4); left: var(--space-4); }

.ep-mandate__heading { max-width: 680px; margin-bottom: var(--space-7); }
.ep-mandate__heading > :last-child { margin-bottom: 0; }
.ep-mandate__items { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ep-mandate__item { display: grid; grid-template-columns: 44px minmax(0, 1fr); min-width: 0; gap: var(--space-4); padding: var(--space-5); border-left: var(--border-default); }
.ep-mandate__item:first-child { border-left: 0; padding-left: 0; }
.ep-mandate__item > div { min-width: 0; max-width: 300px; }
.ep-mandate__item h3, .ep-mandate__item p { margin: 0; }
.ep-mandate__item > div { display: flex; flex-direction: column; gap: var(--space-3); }
.ep-number, .ep-step__number { color: var(--color-imperial-gold); font-weight: 700; letter-spacing: var(--tracking-label); }

.ep-method__heading { max-width: 620px; margin-bottom: var(--space-7); }
.ep-method__heading > :last-child { margin-bottom: 0; }
.ep-method__steps { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); position: relative; }
.ep-step { display: grid; grid-template-columns: 54px minmax(0, 1fr); min-width: 0; gap: var(--space-4); padding: var(--space-6); border-left: var(--border-gold); background: var(--color-obsidian-burgundy); }
.ep-step--one, .ep-step--three { grid-column: 1 / span 7; }
.ep-step--two, .ep-step--four { grid-column: 5 / span 8; background: var(--color-dark-mahogany); border-top: var(--border-gold); border-left: 0; }
.ep-step__content { display: flex; min-width: 0; max-width: 500px; flex-direction: column; gap: var(--space-4); }
.ep-step__content h3, .ep-step__content p, .ep-step__content ul { margin: 0; }
.ep-step__content ul { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-4); color: var(--color-muted-ivory); font-size: var(--text-sm); }
.ep-step__content li { min-width: 0; }
.ep-step--four .ep-step__number { color: var(--color-rich-crimson); }

.ep-scenarios__heading { max-width: 620px; margin-bottom: var(--space-7); }
.ep-scenarios__heading > :last-child { margin-bottom: 0; }
.ep-scenarios__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-6); align-items: start; }
.ep-scenario { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding: var(--space-6); border: var(--border-default); background: var(--color-dark-mahogany); }
.ep-scenario > * { margin: 0; }
.ep-scenario a, .ep-framework__card a, .ep-brief-card a { display: inline-flex; min-height: 44px; align-items: center; gap: var(--space-2); }
.ep-scenario--corporate { grid-column: 1 / span 5; }
.ep-scenario--private { grid-column: 6 / span 3; margin-top: var(--space-8); }
.ep-scenario--casino { grid-column: 9 / span 4; border: var(--border-default); box-shadow: var(--shadow-signature); }
.ep-scenario__mark { color: var(--color-rich-crimson); font-size: var(--text-xs); font-weight: 700; letter-spacing: var(--tracking-label); text-transform: uppercase; }
.ep-scenario--casino .ep-scenario__mark { color: var(--color-imperial-gold); }

.ep-gallery__layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-6); align-items: start; }
.ep-gallery__copy { grid-column: 1 / span 5; min-width: 0; max-width: 480px; }
.ep-gallery__copy > :last-child { margin-bottom: 0; }
.ep-gallery__wide { grid-column: 6 / span 7; width: 100%; min-width: 0; }
.ep-gallery__wide img { width: 100%; aspect-ratio: 3 / 2; object-position: center; }
.ep-gallery__detail { grid-column: 4 / span 4; width: 100%; min-width: 0; margin: var(--space-8) 0 0; border-color: var(--color-wine-frame); }
.ep-gallery__detail img { width: 100%; aspect-ratio: 4 / 5; object-position: center top; }
.ep-gallery figcaption span { display: block; margin-bottom: var(--space-1); color: var(--color-imperial-gold); font-size: var(--text-xs); font-weight: 700; letter-spacing: var(--tracking-label); text-transform: uppercase; }

.ep-brief__heading { max-width: 680px; margin-bottom: var(--space-7); }
.ep-brief__heading > :last-child { margin-bottom: 0; }
.ep-brief__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-5); }
.ep-brief-card { min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-5); border: var(--border-default); background: var(--color-obsidian-burgundy); }
.ep-brief-card h3, .ep-brief-card p { margin: 0; }
.ep-brief-card--signature { box-shadow: var(--shadow-signature); }
.ep-brief__note { max-width: 680px; display: flex; flex-direction: column; gap: var(--space-2); margin-top: var(--space-7); padding: var(--space-5); border-top: var(--border-gold); background: var(--color-gold-wash); }
.ep-brief__note p { margin: 0; }

.ep-value__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); column-gap: 8.333%; align-items: start; }
.ep-value__copy { min-width: 0; max-width: 480px; }
.ep-value__copy > :last-child { margin-bottom: 0; }
.ep-value__steps { display: grid; gap: var(--space-5); min-width: 0; margin: 0; padding: 0; }
.ep-value__steps li { display: grid; grid-template-columns: 44px minmax(0, 1fr); min-width: 0; gap: var(--space-4); padding-bottom: var(--space-5); border-bottom: var(--border-default); }
.ep-value__steps li > span { color: var(--color-imperial-gold); font-weight: 700; letter-spacing: var(--tracking-label); }
.ep-value__steps li div { min-width: 0; max-width: 360px; }
.ep-value__steps h3, .ep-value__steps p { margin: 0; }
.ep-value__steps li div { display: flex; flex-direction: column; gap: var(--space-2); }

.ep-framework__heading { max-width: 620px; margin-bottom: var(--space-7); }
.ep-framework__heading > :last-child { margin-bottom: 0; }
.ep-framework__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6); }
.ep-framework__card { min-width: 0; max-width: 500px; display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-6); border: var(--border-default); background: var(--color-dark-mahogany); }
.ep-framework__card h3, .ep-framework__card p { margin: 0; }
.ep-framework__card--gold { border-color: var(--color-imperial-gold); }

.ep-invitation__block { width: min(100%, 600px); margin-inline: auto; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.ep-invitation__block > * { margin: 0; }
.ep-invitation__block h2 { font-size: clamp(2.5rem, 5vw, 3.5rem); }
.ep-invitation__rule { width: 100%; height: 1px; background: var(--color-imperial-gold); }
.ep-invitation__block a { display: inline-flex; min-height: 44px; align-items: center; gap: var(--space-2); font-weight: 700; }

.ep-contact__grid { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 7fr); column-gap: 8.333%; align-items: start; }
.ep-contact__copy { min-width: 0; max-width: 460px; }
.ep-contact__copy > :last-child { margin-bottom: 0; }
.ep-form-panel { min-width: 0; margin: 0; }
.ep-form__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4) var(--space-5); }
.ep-form__fields > * { min-width: 0; }
.ep-form .form-group { margin: 0; }
.ep-form__message { grid-column: 1 / -1; }
.ep-form__error { min-height: 1.35em; margin: 0; color: #fda4af; font-size: var(--text-sm); line-height: 1.4; }
.ep-form [aria-invalid="true"] { border-color: var(--color-rich-crimson); }
.ep-form__actions { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); margin-top: var(--space-5); }
.ep-form__privacy { max-width: 520px; margin: 0; font-size: var(--text-sm); }
.ep-form__success { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.ep-form__success h3, .ep-form__success p { margin: 0; }

@media (max-width: 980px) {
.ep-scenarios__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ep-scenario--corporate, .ep-scenario--casino { grid-column: auto; }
.ep-scenario--private { grid-column: 1 / -1; margin-top: 0; }
}
@media (max-width: 900px) {
.ep-hero__grid, .ep-contact__grid { grid-template-columns: minmax(0, 1fr); row-gap: var(--space-6); }
.ep-hero__media { max-width: 720px; margin: 0; }
.ep-hero__media img { aspect-ratio: 3 / 2; object-position: 70% center; }
.ep-method__steps { grid-template-columns: minmax(0, 1fr); }
.ep-step--one, .ep-step--two, .ep-step--three, .ep-step--four { grid-column: 1; }
.ep-step--two, .ep-step--four { border-left: var(--border-gold); border-top: 0; }
.ep-gallery__layout { grid-template-columns: minmax(0, 1fr); }
.ep-gallery__copy, .ep-gallery__wide, .ep-gallery__detail { grid-column: 1; }
.ep-gallery__detail { max-width: 460px; margin: 0; }
.ep-brief__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
.ep-mandate__items { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
.ep-mandate__item, .ep-mandate__item:first-child { padding: var(--space-4) 0; border-left: 0; border-top: var(--border-default); }
.ep-mandate__item:first-child { border-top: 0; }
.ep-mandate__item > div { max-width: 100%; }
.ep-value__grid { grid-template-columns: minmax(0, 1fr); row-gap: var(--space-7); }
.ep-framework__grid { grid-template-columns: minmax(0, 1fr); }
.ep-framework__card { max-width: 100%; }
}
@media (max-width: 760px) {
.ep-hero__copy { gap: var(--space-4); }
.ep-hero__copy h1 { font-size: clamp(3rem, 12vw, 4.5rem); }
.ep-scenarios__grid, .ep-brief__grid, .ep-form__fields { grid-template-columns: minmax(0, 1fr); }
.ep-scenario--private { grid-column: auto; }
.ep-form__message { grid-column: 1; }
}
@media (max-width: 700px) {
.ep-step { grid-template-columns: minmax(0, 1fr); padding: var(--space-5); }
.ep-step__content { max-width: 100%; }
.ep-gallery__detail { width: calc(100% + 16px); max-width: none; }
.ep-invitation__block { width: 100%; }
}
@media (max-width: 620px) {
.ep-hero__actions, .ep-hero__actions .button { width: 100%; }
.ep-hero__media { width: calc(100% + 16px); }
.ep-brief__grid { gap: var(--space-4); }
.ep-form-panel { padding: var(--space-5); }
.ep-form__actions, .ep-form__actions .button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .event-planning-page * { scroll-behavior: auto; } }
ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }