@media (max-width: 1023px) {
  /* Problem */
  .problem__gaps { grid-template-columns: 1fr 1fr; }
  /* Reasons */
  .reasons__cards { grid-template-columns: 1fr 1fr; }
  .reasons__cards .card:last-child { grid-column: 1 / -1; max-width: 480px; margin: 0 auto; }
  /* Steps */
  .steps__grid { grid-template-columns: repeat(2, 1fr); }
  .steps__item { border-right: none; border-bottom: 1px solid var(--c-card-light-border); }
  /* Cases */
  .cases__grid { grid-template-columns: 1fr 1fr; }
  .cases__grid .case-card:last-child { grid-column: 1 / -1; max-width: 480px; margin: 0 auto; }
  /* Pricing */
  .pricing__grid { grid-template-columns: 1fr; max-width: 420px; margin-left: auto; margin-right: auto; }
  /* Flow */
  .flow__steps { grid-template-columns: repeat(2, 1fr); gap: 32px; }
  .flow__steps::before { display: none; }
  /* Profile */
  .profile__inner { flex-direction: column; align-items: center; text-align: center; }
  .profile__message { text-align: left; }
  /* Footer */
  .footer__top { flex-direction: column; gap: 32px; }
  /* Header nav */
  .site-header__nav { display: none; }
}

@media (max-width: 767px) {
  :root { --hero-scroll-h: 250vh; }
  /* Stats */
  .stats__row { flex-direction: column; gap: 20px; }
  /* Problem */
  .problem__gaps { grid-template-columns: 1fr; }
  .problem__concept-bar { gap: 16px; padding: 16px; }
  .problem__concept-en { font-size: 20px; }
  /* Reasons */
  .reasons__cards { grid-template-columns: 1fr; }
  .reasons__cards .card:last-child { max-width: none; }
  /* Steps */
  .steps__grid { grid-template-columns: 1fr; }
  .steps__item { border-right: none; border-bottom: 1px solid var(--c-card-light-border); }
  /* Cases */
  .cases__grid { grid-template-columns: 1fr; }
  .cases__grid .case-card:last-child { max-width: none; }
  /* Flow */
  .flow__steps { grid-template-columns: 1fr; gap: 24px; text-align: left; }
  .flow__step { display: grid; grid-template-columns: 48px 1fr; gap: 0 16px; text-align: left; }
  .flow__number { margin: 0; grid-row: 1 / 3; }
  .flow__step-title { align-self: end; margin-bottom: 4px; }
  /* Comparison */
  .comparison__table { font-size: 13px; }
  .comparison__table th,
  .comparison__table td { padding: 12px 14px; }
  /* Footer */
  .footer__links { flex-direction: column; gap: 24px; }
  .footer__bottom { flex-direction: column; gap: 12px; text-align: center; }
  /* Mobile CTA */
  .mobile-cta { display: block; }
  .footer { padding-bottom: 80px; }
}
