/* ===================== RESPONSIVE ===================== */
@media (max-width: 1024px) {
    .hamburger { display: block; }
    .main-nav__cta { display: none; }
    .main-nav__list { display: none; }
    .main-nav__inner { padding-left: 16px; padding-right: 16px; }
    .top-bar__left a:last-child { display: none; }

    .hero .container { grid-template-columns: 1fr; text-align: center; }
    .hero__actions, .hero__counters { justify-content: center; }
    .hero__visual { display: none; }

    .about-section .container, .why-choose .container, .coverage .container { grid-template-columns: 1fr; }
    .services-grid { grid-template-columns: repeat(2, 1fr); }
    .stats { grid-template-columns: repeat(2, 1fr); }
    .process-steps { grid-template-columns: repeat(2, 1fr); }
    .process-line { display: none; }
    .blog-grid { grid-template-columns: repeat(2, 1fr); }
    .team-grid { grid-template-columns: repeat(2, 1fr); }
    .gallery-grid { columns: 2 260px; }
    .footer__grid { grid-template-columns: 1fr 1fr; }
    .why-grid { grid-template-columns: 1fr; }
    .about-features { grid-template-columns: 1fr; }
    .mission-grid { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
    section { padding: 70px 0; }
    .services-grid, .stats, .process-steps, .blog-grid, .team-grid, .coverage-list, .footer__grid { grid-template-columns: 1fr; }
    .gallery-grid { columns: 1; }
    .form-row { grid-template-columns: 1fr; }
    .top-bar__badge { display: none; }
    .main-nav__logo img { height: 52px; }
    .cta-banner { padding: 80px 0; }
    .products-scroll { grid-template-columns: repeat(2, 80vw); }
    .page-banner { padding: 170px 0 60px; }

    .footer__col { text-align: center; }
    .footer__col h4::after { left: 50%; transform: translateX(-50%); }
    .footer__social { justify-content: center; }
    .footer__links li a { justify-content: center; }
    .footer__contact li { justify-content: center; }
    .footer__map { display: none; }
    .footer__bottom-inner { justify-content: center; text-align: center; }
}

@media (max-width: 480px) {
    .top-bar__left { gap: 14px; }
    .top-bar__left a span { display: none; }
    .hero__counters { gap: 26px; }
    .hero__counter .num { font-size: 30px; }
}
