@media (max-width: 68rem) {
  .desktop-nav { display: none; }
  .header-cta { margin-left: auto; }
  .menu-toggle { display: block; }
  .hero-grid { gap: 2.6rem; }
  .service-featured,
  .service-secondary { grid-template-columns: .16fr 1fr; }
  .service-list { grid-column: 2; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .service-featured .button-light,
  .service-secondary .button-accent { grid-column: 2; }
  .pillar-grid { grid-template-columns: repeat(2, 1fr); gap: 2rem 1.4rem; }
}

@media (max-width: 48rem) {
  .container { width: min(calc(100% - 2.25rem), var(--container)); }
  .section { padding: 3.9rem 0; }
  .hero-grid,
  .about-grid,
  .online-grid,
  .impact-inner,
  .faq-grid,
  .final-grid { grid-template-columns: minmax(0, 1fr); }
  .hero-copy { display: grid; min-width: 0; justify-items: stretch; gap: 1.2rem; }
  .hero--centered { padding: 3.9rem 0 2.3rem; background: var(--color-primary); }
  .hero--centered .hero-copy { justify-items: center; text-align: center; }
  .hero--centered h1 { max-width: 15ch; }
  .hero--centered .button-row { justify-content: center; }
  .hero-copy > * { min-width: 0; max-width: 100%; }
  .hero-copy .eyebrow { flex-wrap: wrap; }
  .button-row { width: 100%; min-width: 0; }
  .button-row .button { min-width: 0; }
  .quickfacts { grid-template-columns: 1fr; gap: .85rem; }
  .about-portrait { min-height: 22rem; }
  .service-featured,
  .service-secondary { grid-template-columns: 1fr; gap: 1.35rem; padding: 2rem 1.4rem; }
  .service-list,
  .service-featured .button-light,
  .service-secondary .button-accent { grid-column: auto; }
  .service-list { grid-template-columns: 1fr; padding-top: 0; }
  .situation-grid { grid-template-columns: repeat(2, 1fr); }





  .online-map { min-height: 18rem; }
  .online-map img { width: min(100%, 18rem); }

  .footer-top { grid-template-columns: 1fr 1fr; }
  .footer-contact { grid-column: 1 / -1; }
}

@media (max-width: 30rem) {
  .header-inner { min-height: 4.5rem; gap: .6rem; }
  .brand { flex-basis: 7.6rem; height: 2.55rem; }
  .header-cta { display: none; }
  .menu-toggle { margin-left: auto; }
  .mobile-menu { inset: 4.5rem 0 0; }
  h1 { font-size: clamp(2.1rem, 11vw, 2.7rem); }
  h2 { font-size: clamp(1.8rem, 9vw, 2.35rem); }
  .button-row { align-items: stretch; width: 100%; }
  .button-row .button { width: 100%; }
  .situation-grid { grid-template-columns: 1fr; }
  .situation-grid article { min-height: 12rem; }
  .check-list { grid-template-columns: 1fr; }
  .impact { padding-bottom: 2.7rem; }
  .online-care { padding-bottom: 2.7rem; }
  .pillar-grid { grid-template-columns: 1fr; }
  .footer-top { grid-template-columns: 1fr; }
  .footer-contact { grid-column: auto; }
  .footer-bottom { flex-direction: column; }
  .footer-actions { flex-wrap: wrap; gap: .55rem 1rem; }
  .footer-credit { white-space: normal; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}
