@media (max-width: 960px) {
  .hero-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .mock { max-width: 520px; }
  .steps { grid-template-columns: repeat(2, 1fr); }
  .steps li::after { display: none; }
  .plans { grid-template-columns: 1fr; max-width: 520px; min-height: 0; }
}

@media (max-width: 760px) {
  .menu-toggle { display: block; }
  .site-nav { position: absolute; top: var(--header-h); left: 0; right: 0; flex-direction: column; align-items: stretch; gap: 0; background: #fff; border-bottom: 1px solid var(--line); padding: .5rem 1.25rem 1.25rem; display: none; }
  .site-nav.is-open { display: flex; }
  .site-nav a:not(.btn) { padding: .9rem 0; border-bottom: 1px solid var(--line); }
  .site-nav .btn { margin-top: 1rem; }
  .benefits { grid-template-columns: 1fr; }
  .hero-actions .btn { width: 100%; }
}

@media (max-width: 520px) {
  .steps { grid-template-columns: 1fr; }
  .final-row .btn { width: 100%; }
  .footer-row { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .js .reveal { opacity: 1; transform: none; }
}
