/* ── RESPONSIVE ── */
@media (max-width: 900px) {

    .philo-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .philo-img::before {
        display: none;
    }

    .carte-grid {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .infos-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .infos-left {
        grid-template-columns: 1fr;
    }

    .infos-map {
        max-width: 100%;
    }

    .galerie-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 560px) {
    section {
        padding: 72px 20px;
    }

    .galerie-grid {
        grid-template-columns: 1fr;
    }
}