/* =========================================
   ABMV - Responsive
   ========================================= */

@media (max-width: 1024px) {
    .presentation__inner { grid-template-columns: 1fr; gap: 48px; }
    .footer__inner { grid-template-columns: 1fr 1fr; gap: 36px; }
    .missions__grid { grid-template-columns: 1fr; max-width: 480px; margin: 0 auto; }
    .actu__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 768px) {
    /* Header */
    .menu-toggle { display: flex; }
    .navbar {
        position: absolute;
        top: 72px; left: 0;
        width: 100%;
        background: var(--white);
        border-top: 1px solid var(--border);
        box-shadow: var(--shadow);
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.4s ease;
    }
    .navbar.active { max-height: 600px; }
    .navbar ul { flex-direction: column; padding: 12px 0; gap: 0; }
    .navbar li { border-bottom: 1px solid var(--border); }
    .nav-link { display: block; padding: 14px 24px; border-radius: 0; }
    .btn-nav { margin: 12px 24px; display: inline-block; border-radius: 30px; }

    /* Hero */
    .hero { min-height: 85vh; }
    .hero__title {
        font-size: 1.7rem;
        white-space: normal;
    }
    .hero__quote { font-size: 1.1rem; }
    .hero__desc { font-size: 0.95rem; }
    .hero__actions { flex-direction: column; align-items: center; }
    .btn { width: 100%; justify-content: center; }

    /* Stats */
    .stats-band__inner { gap: 0; }
    .stat-divider { display: none; }
    .stat-item { min-width: 50%; }

    /* Grilles */
    .actu__grid { grid-template-columns: 1fr; }
    .footer__inner { grid-template-columns: 1fr; }
    .contact-grid { grid-template-columns: 1fr; }
    .missions__grid { max-width: 100%; }

    /* CTA */
    .cta__actions { flex-direction: column; }

    /* Form */
    .form-box { padding: 28px 20px; }

    /* Section */
    .section { padding: 64px 0; }
    .section-page { padding: 56px 0; }
    .page-hero { padding: 56px 0 48px; }
}

@media (max-width: 480px) {
    .hero__title { font-size: 1.7rem; }
    .stat-item { min-width: 100%; }
    .stat-divider { display: none; }
    .doc-list li { flex-direction: column; align-items: flex-start; }
    .timeline { padding-left: 28px; }
}