/* =============================================================================
   10. ZONE D'INTERVENTION & CONTACT
   ============================================================================= */

/* 10.1 - Grilles et Structures (Shared patterns) */
.intervention-grid,
.contact-grid {
    display: grid;
    align-items: center;
    gap: 2rem;
}
.intervention-grid {
    grid-template-columns: 1fr 1fr;
}
.contact-grid {
    grid-template-columns: 1fr 2fr;
}

.contact-grid > :nth-child(n+3) {
    grid-column: 1 / -1;
}

/* 10.2 - Corps de contenu */
.intervention-body,
.contact-body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.8em;
    margin: 0 auto;
    padding: 2em 1.5em;
    font-size: var(--font-base);
}
.intervention-body h2,
.contact-body h2 {
    margin-top: 0;
}

.body-contact .intervention-body h2:not(:first-of-type) {
    margin-top: 2rem;
}
.contact-body address p span.intitule {
    font-weight: 700;
}

/* 10.3 - Cartes & Médias */
.intervention-media,
.contact-media {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.intervention-media iframe,
.contact-media iframe {
    width: 100%;
    height: 100%;
}

/* 10.4 - Spécificités Intervention */
.intervention ul {
    column-count: 2;
    width: 100%;
    margin: 2rem 0 0;
}

/* 10.5 - Spécificités Contact */

.contact-body h2 {
    margin: 0;
    text-transform: uppercase;
}

.contact-body h2:before {
    bottom: -0.4em;
    left: 0;
    transform: translateX(0);
}
.contact-description {
    padding: 0 0 0.5rem;
}

.contact-body p.horaires {
    display: none !important;
}

.contact-form,
.contact-footer {
    position: relative;
    padding: 5rem 28%;
    background: var(--fond-page-alt);
    border-radius: var(--radius-default);
}

/* 10.6 - Overrides (Maintenabilité) */
.pageseo .formulaire .form-group input[name=captcha] {
    width: 100% !important;
    margin-right: 0 !important;
    text-align: left !important;
}
.pageseo .formulaire .form-group input[name=captcha] + a {
    position: absolute;
    top: 0;
    right: 0;
    width: 140px;
    margin-right: 0 !important;
}

/* 10.7 - Media Queries (Consolidées) */
@media (max-width: 1199px) {
    .intervention-body,
    .contact-body {
        padding: 0;
    }
}

@media (max-width: 991px) {
    .intervention-grid,
    .contact-grid {
        grid-template-columns: 1fr;
    }
    .intervention-body,
    .contact-body {
        padding: 3rem 7% 2rem;
    }
    .intervention ul {
        column-count: 1;
        width: 100%;
    }
    .intervention-media,
    .contact-media {
        height: 250px;
    }
    .intervention-media iframe,
    .contact-media iframe {
        position: relative;
    }
    .contact .plan .block #googlemapapi,
    .contact .plan iframe {
        height: 250px !important;
    }
    .contact-form,
    .contact-footer {
        padding: 5rem 8%;
    }
    .body-contact .fluid-contenu .corps,
    .body-gallery-4 .fluid-contenu .corps {
        padding: 2rem 0 0;
    }
}