@media (min-width: 40rem) {
  .stat-strip { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .press-item { grid-template-columns: 16rem minmax(0, 1fr) auto; align-items: center; }
  .service-row { grid-template-columns: 3rem minmax(0, 1fr); }
  .contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .site-footer__meta { grid-template-columns: 1fr auto; align-items: start; }
  .timeline li { grid-template-columns: 7rem minmax(0, 1fr); }
  .capabilities-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .capability-card:last-child { grid-column: 1 / -1; }
}

@media (min-width: 60rem) {
  ul.site-nav__links { display: inline-flex; }
  .site-nav__menu-button,
  .site-menu { display: none; }
  .split-proof { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(3rem, 7vw, 6rem); }
  .split-proof--reverse .split-proof__copy { order: 2; }
  .split-proof--reverse .split-proof__proof { order: 1; }
  .contact-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .capabilities-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .capability-card:last-child { grid-column: auto; }
}

@media (max-width: 40rem) {
  :root { --page-gutter: 0.9rem; --space-nav-offset: 5.5rem; }
  .site-nav { inset-block-start: 0.65rem; }
  .site-nav__inner { width: calc(100% - 1.2rem); min-height: 3.65rem; padding-left: 0.8rem; border-radius: 1rem; }
  .wordmark__copy small { display: none; }
  .main-content { padding-block-start: 6.8rem; }
  .hero-primary { min-height: calc(100svh - 6.8rem); padding-block: 3.25rem 5.5rem; }
  .hero-primary__content { gap: 1.25rem; }
  .hero-primary h1 { max-width: 11ch; font-size: clamp(3rem, 14.5vw, 4.7rem); line-height: 0.92; }
  .hero-media h1 { max-width: 100%; overflow-wrap: anywhere; font-size: clamp(2.6rem, 12.5vw, 4.3rem); word-break: normal; }
  .hero-primary .lede { font-size: 1rem; }
  .hero-primary::before { width: 115vw; height: 18rem; }
  .hero-primary::after { width: 82vw; bottom: 6%; }
  h1 { font-size: clamp(3rem, 14.5vw, 4.7rem); }
  h2 { font-size: clamp(2.45rem, 12vw, 3.9rem); }
  .actions { display: grid; grid-template-columns: 1fr; }
  .actions .button { width: 100%; }
  .section,
  .section--roomy { padding-block: 5.5rem; }
  .section--tight { padding-block: 3.5rem; }
  .section-head { margin-bottom: 2.5rem; }
  .stat-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stat { padding: 1.2rem; }
  .press-item { padding-block: 1.25rem; }
  .press-item .icon { justify-self: start; }
  .service-row { padding: 1.4rem; }
  .faq-item summary { gap: var(--space-sm); font-size: 1.05rem; }
  .capability-card { min-height: 29rem; }
  .press-wall { min-height: auto; margin-top: 1.5rem; padding-block: 1rem; }
  .callout { padding: 2.2rem 1.4rem; }
  .contact-card { min-height: 10rem; }
  .site-footer { padding-top: 6rem; }
}

@media (max-width: 22rem) {
  .wordmark__copy strong { font-size: 0.78rem; }
}

@media (pointer: coarse) {
  .button,
  .site-nav__link,
  .site-menu__link,
  .site-footer__links a { min-height: 3rem; }
}
