body {
  overflow-x: clip;
}

@media (min-width: 720px) {
  .grid-2,
  .grid-4,
  .stat-row,
  .hero-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hero-metrics,
  .stat-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .form-grid .full {
    grid-column: 1 / -1;
  }

  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .contact-layout {
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
    align-items: start;
  }
}

@media (min-width: 960px) {
  .split {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .split.reverse > :first-child {
    order: 2;
  }

  .grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .hero-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    align-items: center;
  }

  .footer-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1179px) {
  .header-cta {
    display: none;
  }
}

@media (min-width: 1180px) {
  .primary-nav {
    display: block;
    margin-left: auto;
  }

  .mobile-nav {
    display: none;
  }

  .header-cta {
    display: inline-flex;
    margin-left: 0.4rem;
  }

  .grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .footer-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .nav-drop:hover > .dropdown,
  .nav-drop:focus-within > .dropdown,
  .nav-drop[open] > .dropdown {
    display: grid;
  }
}

@media (min-width: 1180px) and (max-width: 1360px) {
  .primary-nav a,
  .nav-drop > summary {
    padding-inline: 0.45rem;
    font-size: 0.88rem;
  }
}

@media (max-width: 959px) {
  .home-hero h1 {
    max-width: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
  }
}
