@media (max-width: 1024px) {
  .container, .nav__inner { padding-inline: var(--pad-x-tablet); }
  .section { padding-block: var(--section-pad-y-m); }

  .hero { padding-top: calc(var(--nav-h) + 32px); padding-bottom: 56px; }
  .hero__inner { grid-template-columns: 1fr; gap: 48px; }

  .services__grid { grid-template-columns: repeat(2, 1fr); }
  .services__grid .card:last-child { grid-column: auto; }

  .why__grid { grid-template-columns: repeat(2, 1fr); }

  .pipeline__steps { grid-template-columns: repeat(2, 1fr); row-gap: 40px; }
  .pipeline__track { display: none; }

  .work__grid { grid-template-columns: repeat(2, 1fr); }

  .faq__layout { grid-template-columns: 1fr; gap: 32px; }
  .contact__inner { grid-template-columns: 1fr; }

  .nav__links { display: none; }
  .nav__burger { display: block; }
}

@media (max-width: 640px) {
  .container, .nav__inner { padding-inline: var(--pad-x-mobile); }
  .section { padding-block: var(--section-pad-y-m); }

  .hero__copy { text-align: center; }
  .hero__eyebrow { justify-content: center; }
  .hero__ctas { flex-direction: column; align-items: stretch; }
  .hero__ctas .btn { width: 100%; }
  .hero__sub { margin-inline: auto; }
  .hero__proof { justify-content: center; flex-wrap: wrap; row-gap: 20px; text-align: center; }
  .hero__proof-item { text-align: center; }

  .services__grid { grid-template-columns: 1fr; }
  .services__grid .card:last-child { grid-column: auto; }

  .why__grid { grid-template-columns: repeat(2, 1fr); }
  .stat { padding: 24px 4px; }

  .pipeline__steps { grid-template-columns: 1fr; row-gap: 40px; }

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

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

  .footer__top { flex-direction: column; gap: 32px; }
  .footer__links { gap: 40px; }
  .footer__bottom { flex-direction: column; gap: 16px; align-items: flex-start; }

  .testimonial { min-width: 86vw; max-width: 86vw; }
}

@media (max-width: 400px) {
  .section { padding-block: var(--section-pad-y-s); }
  .hero { padding-top: calc(var(--nav-h) + 24px); padding-bottom: 40px; }

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

  .btn { --btn-pad-y: 14px; --btn-pad-x: 22px; font-size: 0.875rem; }

  .footer__links { gap: 28px; row-gap: 32px; }
  .card { padding: 28px; }
  .contact__panel { padding: 28px 24px; }
}
