/* ==========================================================================
   Breakpoint adaptations — 1920px down to 320px
   ========================================================================== */

@media (max-width: 1200px) {
  .reasons-grid { grid-template-columns: repeat(2, 1fr); }
  .service-row { grid-template-columns: 70px 1fr 280px; }
}

@media (max-width: 980px) {
  .nav-primary { display: none; }
  .nav-phone { display: none; }
  .nav-toggle { display: flex; }

  .footer-top { grid-template-columns: 1fr 1fr; row-gap: var(--space-lg); }
}

@media (max-width: 860px) {
  .split { grid-template-columns: 1fr; }
  .split.reverse .split-media { order: 1; }
  .split.reverse .split-content { order: 2; }
  .split-media { aspect-ratio: 16 / 11; }

  .service-row {
    grid-template-columns: 1fr;
    gap: var(--space-sm);
  }
  .service-index { font-size: 1.2rem; }
  .service-media { order: -1; aspect-ratio: 16 / 10; }

  .process-track .rail { left: 23px; }
  .process-num { width: 46px; height: 46px; font-size: 1.1rem; }
  .process-step { grid-template-columns: 46px 1fr; }

  .audience-list { grid-template-columns: 1fr; }

  .feature-break { min-height: 60vh; }
}

@media (max-width: 760px) {
  .form-grid { grid-template-columns: 1fr; }
  .footer-top { grid-template-columns: 1fr; }
  .footer-brand { grid-column: 1; }
}

@media (max-width: 640px) {
  :root {
    --header-h: 76px;
    --header-h-scrolled: 64px;
  }

  .brand img { height: 40px; }
  .site-header.is-scrolled .brand img { height: 34px; }

  .hero-content { padding-top: calc(var(--header-h) + var(--space-sm)); }
  .hero-title { max-width: 14ch; }
  .hero-actions { flex-direction: column; align-items: flex-start; }
  .hero-actions .btn { width: 100%; justify-content: center; }
  .hero-contact { flex-direction: column; gap: 0.9rem; }
  .hero-scroll-cue { display: none; }

  .page-hero { padding-top: calc(var(--header-h) + var(--space-lg)); }
  .page-hero h1 { max-width: 100%; }

  .reasons-grid { grid-template-columns: 1fr; }

  .cta-cinematic h2 { max-width: 100%; }
  .cta-cinematic .cta-actions { flex-direction: column; width: 100%; }
  .cta-cinematic .cta-actions .btn { width: 100%; }

  .footer-bottom { flex-direction: column; align-items: flex-start; gap: 0.8rem; }

  .feature-break-content { padding: var(--space-lg) var(--space-sm); }
}

@media (max-width: 400px) {
  .hero-title { font-size: clamp(2.4rem, 11vw, 3rem); }
  .page-hero h1 { font-size: clamp(2rem, 9vw, 2.6rem); }
  .tag-row { gap: 0.5rem; }
  .tag-chip { padding: 0.5em 0.9em; font-size: var(--fs-micro); }
}

@media (min-width: 1920px) {
  :root { --container-max: 1560px; }
}
