@media (max-width: 980px) {
    .hero-grid, .split, .contact-grid, .review-grid, .footer-content { grid-template-columns: 1fr; }
    .hero-side { border-left: 0; border-top: 1px solid rgba(255,255,255,.16); padding: 18px 0 0; grid-template-columns: 1fr 1fr; }
    .hero-dock, .service-row { grid-template-columns: 1fr; }
    .dock-item + .dock-item { border-left: 0; padding-left: 0; border-top: 1px solid rgba(255,255,255,.12); }
    .nav {
        display: none;
        position: absolute;
        top: calc(var(--header) + 8px);
        left: 16px;
        right: 16px;
        background: #fff;
        color: #111;
        flex-direction: column;
        padding: 16px;
        gap: 12px;
        z-index: 50;
    }
    .nav .nav-link { color: #111; }
    .nav.active { display: flex; }
    .mobile-menu-toggle { display: flex; }
    .header-content { position: relative; }
    .nav-cta .link-text { display: none; }
    .contact-info, .contact-form { padding: 32px 20px; }
    .footer-bottom { flex-direction: column; }
}

@media (max-width: 640px) {
    .wrap { width: min(1180px, calc(100% - 28px)); }
    .hero-actions, .hero-actions .btn { width: 100%; }
    .logo-img { height: 52px; }
    .band { padding: 64px 0; }
    .review-grid { grid-template-columns: 1fr; }
}
