@media (max-width: 620px) {
  html,
  body {
    width: 100%;
    overflow-x: hidden;
  }

  .nav-shell,
  .hero,
  .section,
  .trust-strip,
  footer {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
  }

  main,
  .hero {
    overflow-x: hidden;
  }

  .hero,
  .hero-copy {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
  }

  .hero-copy > *,
  .hero-actions {
    max-width: calc(100vw - 32px);
  }

  .hero h1 {
    font-size: clamp(44px, 13vw, 52px);
    overflow-wrap: anywhere;
  }

  .hero-copy > p {
    max-width: 100%;
    font-size: 15px;
  }

  .hero-actions {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .hero-actions a {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
  }

  .hero-product,
  .phone-main,
  .phone {
    max-width: 100%;
  }

  .section h2 {
    font-size: 36px;
    overflow-wrap: anywhere;
  }

  .section p {
    max-width: 100%;
  }

  .feature-card {
    grid-template-columns: 48px minmax(0, 1fr);
    padding: 16px;
  }

  .feature-icon {
    width: 44px;
    height: 44px;
  }

  .coach-card h2 {
    font-size: 34px;
  }

  .final-cta h2 {
    font-size: 48px;
  }
}
