/* --- HERO --- */
.events-hero { 
    position: fixed; 
    top:0; 
    left:0; 
    width:100%; 
    height:60vh; 
    background-image: url('../images/banniere.png'); 
    background-size: cover; 
    background-position:center; 
    z-index:-1; 
    display:flex; 
    align-items:center; 
    justify-content:center; 
    pointer-events:none; 
}

.events-hero:after { 
    content:''; 
    position:absolute; 
    top:0; 
    left:0; 
    width:100%; 
    height:100%; 
    background-color: rgba(0,0,0,0.3); 
    z-index:1; 
}

.events-hero-content { 
    position:relative; 
    text-align:center; 
    color:white; 
    z-index:2; 
    max-width:800px; 
    padding:0 2rem; 
}

.events-hero-content h1 { 
    font-size:3.5rem; 
    margin-bottom:1rem; 
    font-family:'Playfair Display', serif; 
}

.events-hero-content p { 
    font-size:1.2rem; 
    margin-bottom:2rem; 
}

/* --- CONTENU DE LA PAGE --- */
.events-page { 
    margin-top:61vh !important; 
    background-color:white; 
    max-width:var(--container-width); 
    margin:0 auto; 
    padding:4rem 2rem; 
    border:4px solid var(--orange-primary);
    border-radius:10px; 
    box-sizing:border-box; 
}

/* --- SECTION INTRODUCTION --- */
.intro-section { 
    padding:6rem 2rem 4rem; 
    background-color:white; 
    text-align:center; 
}

.intro-container { 
    max-width:var(--container-width); 
    margin:0 auto; 
}

.intro-container h2 { 
    font-size:2.5rem; 
    margin-bottom:1.5rem; 
    color:var(--primary-color); 
    font-family:'Playfair Display', serif; 
}

.intro-container h2 { 
    font-size:2.5rem; 
    margin-bottom:1.5rem; 
    color:#0f0e0e; 
    font-family:'Playfair Display', serif; 
}

.intro-container p { 
    font-size:1.1rem; 
    line-height:1.6; 
    max-width:800px; 
    margin:0 auto; 
}

/* --- TYPES D'ÉVÈNEMENTS --- */
.event-types { 
    display:grid; 
    grid-template-columns: repeat(2,1fr); 
    gap:3rem; 
    margin:4rem 0; 
}

.event-type { 
    text-align:left; 
    padding:2.5rem; 
    border-radius:12px; 
    box-shadow:0 10px 30px rgba(0,0,0,0.1); 
    transition: all 0.3s ease; 
    background:white; 
}

.event-type:hover { 
    transform: translateY(-10px); 
    box-shadow: 0 20px 40px rgba(0,0,0,0.15); 
}

.event-icon { 
    font-size:3rem; 
    color:var(--orange-primary); 
    margin-bottom:1.5rem; 
}

.event-type h3 { 
    font-size:1.8rem; 
    margin-bottom:1rem; 
    color:var(--dark-color); 
}
.event-type h3 { 
    font-size:1.8rem; 
    margin-bottom:1rem; 
    color:#0f0e0e; 
}

.event-type p { 
    font-size:1rem; 
    line-height:1.6; 
    color:#666; 
}

.event-type ul { 
    margin-top:1rem; 
    padding-left:1.5rem; 
}

.event-type li { 
    margin-bottom:0.5rem; 
    color:#666; 
}

/* --- SECTION MISE EN AVANT (HIGHLIGHT) --- */
.highlight-section { 
    background-color: var(--light-color); 
    padding:4rem 2rem; 
    margin:4rem 0; 
    border-radius:12px; 
}

.highlight-container { 
    max-width:var(--container-width); 
    margin:0 auto; 
    text-align:center; 
}

.highlight-container h2 { 
    font-size:2.2rem; 
    margin-bottom:1.5rem; 
    color:var(--primary-color); 
}
.highlight-container h2 { 
    font-size:2.2rem; 
    margin-bottom:1.5rem; 
    color:#0f0e0e; 
}

.highlight-container p { 
    font-size:1.1rem; 
    line-height:1.6; 
    max-width:700px; 
    margin:0 auto 2rem; 
}

.highlight-features { 
    display:grid; 
    grid-template-columns: repeat(auto-fit,minmax(280px,1fr)); 
    gap:2rem; 
    margin-top:3rem; 
}

.highlight-feature { 
    text-align:left; 
    padding:1.5rem; 
    background:white; 
    border-radius:8px; 
}

.highlight-feature h4 { 
    color:var(--primary-color); 
    margin-bottom:0.5rem; 
    font-size:1.1rem; 
}
.highlight-feature h4 { 
    color:#0f0e0e; 
    margin-bottom:0.5rem; 
    font-size:1.1rem; 
}

/* --- SECTION SERVICE --- */
.service-section { 
    padding:4rem 2rem; 
    background-color:white; 
}

.service-container { 
    max-width:var(--container-width); 
    margin:0 auto; 
}

.service-grid { 
    display:grid; 
    grid-template-columns: repeat(auto-fit,minmax(300px,1fr)); 
    gap:3rem; 
    margin-top:3rem; 
}

.service-item { 
    padding:2rem; 
    border-radius:12px; 
    box-shadow: 0 5px 20px rgba(0,0,0,0.08); 
    transition: all 0.3s ease; 
}


.service-item h3 { 
    color: var(--primary-color); 
    margin-bottom:1rem; 
    font-size:1.5rem; 
}
.service-item h3 { 
    color: #0f0e0e; 
    margin-bottom:1rem; 
    font-size:1.5rem; 
}

.service-item p { 
    line-height:1.6; 
    color:#666; 
}

.service-item i {
    color: var(--orange-primary); 
}

/* --- SECTION CTA (APPEL À L'ACTION) --- */
.cta-section {
    border:4px solid var(--primary-color);
    border-radius:10px; 
    box-sizing:border-box;
    padding:5rem 2rem; 
    text-align:center; 
}

.cta-container {
    max-width:var(--container-width); 
    margin:0 auto; 
}

.cta-container h2 { 
    font-size:2.2rem; 
    margin-bottom:1.5rem; 
}

.cta-container p { 
    font-size:1.1rem; 
    margin-bottom:2rem; 
    max-width:700px; 
    margin-left:auto; 
    margin-right:auto; 
}

.contact-info { 
    background-color: rgba(255,255,255,0.1); 
    padding:2rem; 
    border-radius:8px; 
    margin-top:2rem; 
}

.contact-info p { 
    margin-bottom:0.5rem; 
    font-size:1rem; 
}

/* --- MEDIA QUERIES (RESPONSIVE) --- */
@media (max-width:992px) { 
    .event-types { 
        grid-template-columns:1fr; 
        gap:2rem; 
    } 
    
    .events-hero-content h1 { 
        font-size:2.8rem; 
    } 
}

@media (max-width:768px) { 
    .events-hero { 
        height:50vh; 
    } 
    
    .events-page { 
        margin-top:50vh !important; 
    } 
    
    .events-hero-content h1 { 
        font-size:2.5rem; 
    } 
    
    .event-type { 
        padding:2rem; 
    } 
    
    .intro-section, 
    .service-section, 
    .cta-section { 
        padding:3rem 1rem; 
    } 
}