/* ==========================================================================
   Responsive breakpoints — 1440 / 1200 / 992 / 768 / 576 / 425 / 375 / 320
   ========================================================================== */

/* ----- ≤1200px ----- */
@media (max-width: 1200px) {
    .stats-grid { grid-template-columns: repeat(3, 1fr); }
    .branch-grid { grid-template-columns: repeat(3, 1fr); }
    .benefit-blocks { grid-template-columns: repeat(2, 1fr); }
}

/* ----- ≤992px : collapse to mobile nav, stack columns ----- */
@media (max-width: 992px) {
    .main-nav { display: none; }
    .hamburger { display: flex; }

    .cards-grid, .cards-grid--6 { grid-template-columns: repeat(2, 1fr); }
    .mv-cards { grid-template-columns: 1fr; }
    .doc-checklist { grid-template-columns: 1fr; }

    .hero-slide.is-active { grid-template-columns: 1fr; text-align: center; }
    .hero-slide__content p { margin-left: auto; margin-right: auto; }
    .hero-slide__actions { justify-content: center; }
    .hero-slide__visual { order: -1; max-width: 480px; margin: 0 auto; }

    .split { grid-template-columns: 1fr; }
    .split__visual { order: -1; }

    .timeline { grid-template-columns: 1fr; gap: 28px; }
    .timeline::before { display: none; }
    .timeline-step { display: flex; align-items: flex-start; gap: 16px; text-align: left; }
    .timeline-step__num { margin: 0; flex-shrink: 0; }

    .footer__grid { grid-template-columns: 1fr 1fr; }
    .contact-info-cards { grid-template-columns: 1fr; }
}

/* ----- ≤768px : single column, mobile sticky bar ----- */
@media (max-width: 768px) {
    :root { --header-h: 76px; }
    .topbar__note { display: none; }
    .brand__tagline { display: none; }
    .brand__logo { width: 44px; height: 44px; }
    .brand__name { font-size: 1rem; }

    .cards-grid, .cards-grid--2, .cards-grid--4, .cards-grid--6 { grid-template-columns: 1fr; }
    .benefit-blocks { grid-template-columns: 1fr 1fr; }
    .mv-cards { grid-template-columns: 1fr; }
    .stats-grid { grid-template-columns: repeat(2, 1fr); }
    .branch-grid { grid-template-columns: repeat(2, 1fr); }
    .form-grid { grid-template-columns: 1fr; }

    section { padding: 44px 0; }
    .final-cta__actions { flex-direction: column; }
    .final-cta__actions .btn { width: 100%; }

    .fab-stack { right: 14px; bottom: 18px; }
    .fab { width: 46px; height: 46px; }

    .contact-info-cards { grid-template-columns: 1fr; }
    .doc-checklist { grid-template-columns: 1fr; }
}

/* ----- ≤576px ----- */
@media (max-width: 576px) {
    .container { padding: 0 16px; }
    .stats-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
    .stat-card { padding: 18px 10px; }
    .stat-card__value { font-size: 1.5rem; }
    .benefit-blocks { grid-template-columns: 1fr; }
    .branch-grid { grid-template-columns: 1fr; }
    .hero-slide__actions { flex-direction: column; width: 100%; }
    .hero-slide__actions .btn { width: 100%; }
    .footer__grid { grid-template-columns: 1fr; padding: 44px 0 24px; }
    .footer__bottom-inner { flex-direction: column; text-align: center; }
    .job-card { flex-direction: column; align-items: flex-start; }
}

/* ----- ≤425px ----- */
@media (max-width: 425px) {
    .btn { padding: 13px 20px; font-size: 0.9rem; }
    h1 { font-size: 2rem; }
    .page-hero { padding: 48px 0; }
}

/* ----- ≤375px ----- */
@media (max-width: 375px) {
    .btn { padding: 12px 18px; font-size: 0.88rem; }
    .brand__name { font-size: 0.92rem; }
    h1 { font-size: 1.9rem; }
}

/* ----- ≤320px : smallest phones ----- */
@media (max-width: 320px) {
    .container { padding: 0 12px; }
    .topbar__contact { gap: 12px; }
    .brand__logo { width: 38px; height: 38px; }
}

/* ----- Large desktops ----- */
@media (min-width: 1440px) {
    .container { max-width: 1320px; }
}
