.ep-page{overflow:hidden}

.ep-hero{position:relative;min-height:80vh;display:flex;align-items:flex-end;justify-content:center}
.ep-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ep-hero-overlay{position:absolute;inset:0;background:linear-gradient(rgba(90,31,46,0.6),rgba(90,31,46,0.7))}
.ep-hero-content{position:relative;max-width:700px;margin-inline:auto;text-align:center;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}

.ep-intro-inner{max-width:650px;margin-inline:auto;text-align:center}

.ep-types-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-4)}
.ep-card{min-width:0}

.ep-espaces-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6);align-items:center}
.ep-espaces-text{min-width:0}
.ep-espaces-media img{width:100%;border-radius:var(--radius-sm)}

.ep-exp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5);margin-top:var(--space-4)}
.ep-exp-block{min-width:0}

.ep-moments-inner{max-width:650px;margin-inline:auto;text-align:center}
.ep-moments-media img{width:100%;margin-top:var(--space-4);border-radius:var(--radius-sm)}

.ep-services .container-editorial{max-width:700px}

.ep-faq-inner{max-width:700px;margin-inline:auto;text-align:center}
.ep-accordion{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}
.ep-acc-item{border:var(--border-soft);border-radius:var(--radius-sm);overflow:hidden}
.ep-acc-trigger{width:100%;text-align:left;padding:var(--space-3);background:var(--color-surface-elevated)}
.ep-acc-content{display:none;padding:var(--space-3);background:var(--color-surface-secondary)}

.ep-cta{background:var(--color-accent-deep-burgundy);color:var(--color-text-on-accent)}
.ep-cta-inner{max-width:600px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:var(--space-3)}

@media(max-width:1000px){
.ep-types-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.ep-exp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:700px){
.ep-types-grid,.ep-exp-grid{grid-template-columns:1fr}
.ep-espaces-grid{grid-template-columns:1fr}
.ep-hero{min-height:70vh}
}
