@media (max-width: 900px) {
    .srv-grid { grid-template-columns: repeat(2, 1fr); }
    .contact-grid { grid-template-columns: 1fr; gap: 48px; }
    .footer-inner { grid-template-columns: 1fr; text-align: center; }
    .footer-copy { text-align: center; }
    .hero-overlay { width: 60%; opacity: .5; }
}

@media (max-width: 640px) {
    .main-nav { display: none; }
    .nav-toggle { display: flex; }
    .main-nav.open {
        display: flex;
        flex-direction: column;
        position: fixed;
        inset: 64px 0 0 0;
        background: var(--black);
        z-index: 200;
        padding: 40px 28px;
        gap: 24px;
    }
    .main-nav.open a {
        font-size: 1rem;
    }
    .hero-overlay { display: none; }
    .hero-title { font-size: clamp(3.5rem, 16vw, 6rem); }
    .srv-grid { grid-template-columns: 1fr; }
    .tarif-left { flex-direction: column; align-items: flex-start; gap: 4px; }
}
