@media (max-width: 640px) {

  /* HERO */
  .h-wrap {
    grid-template-columns: 1fr !important;
    padding: 32px 20px 24px !important;
    gap: 28px !important;
  }
  .h-title { font-size: 32px !important; }
  .h-sub { font-size: 16px !important; }
  .h-right { width: 100% !important; }
  .h-stats {
    grid-template-columns: 1fr !important;
    padding: 0 20px !important;
  }
  .h-stat + .h-stat {
    border-left: none !important;
    border-top: 1px solid rgba(255,255,255,0.06) !important;
    padding-left: 0 !important;
    padding-top: 20px !important;
    margin-top: 20px !important;
  }
  .h-sn { font-size: 36px !important; }
  .h-ctas { flex-direction: column !important; }
  .h-btn1, .h-btn2 { width: 100% !important; text-align: center !important; }

  /* PAIN */
  .p-wrap { padding: 48px 20px !important; }
  .p-h2 { font-size: 30px !important; }
  .p-lead { font-size: 16px !important; }
  .p-flow { flex-direction: column !important; }
  .p-step {
    border-radius: 8px !important;
    border: 1px solid rgba(255,255,255,0.07) !important;
    min-width: unset !important;
  }
  .p-step-arrow { display: none !important; }
  .p-cards { grid-template-columns: 1fr !important; }
  .p-bar {
    flex-direction: column !important;
    padding: 24px 20px !important;
    gap: 16px !important;
  }
  .p-bar-num { font-size: 40px !important; }

  /* HOW IT WORKS */
  .hw-wrap { padding: 48px 20px !important; }
  .hw-h2 { font-size: 30px !important; }
  .hw-lead { font-size: 16px !important; }
  .hw-head { padding: 20px 16px !important; }
  .hw-title { font-size: 20px !important; }
  .hw-short { font-size: 15px !important; }
  .hw-body-inner {
    padding: 0 16px 24px !important;
    margin: 0 16px !important;
  }
  .hw-details { grid-template-columns: 1fr !important; }
  .hw-detail { font-size: 15px !important; }
  .hw-bottom {
    flex-direction: column !important;
    padding: 24px 20px !important;
  }
  .hw-cta { width: 100% !important; text-align: center !important; }

  /* DIAGNOSTICS */
  .dg-wrap { padding: 48px 20px !important; }
  .dg-top {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }
  .dg-h2 { font-size: 30px !important; }
  .dg-sub { font-size: 16px !important; }
  .dg-card { padding: 28px 20px !important; }
  .dg-btn { font-size: 16px !important; padding: 18px !important; }
  .dg-get-title { font-size: 17px !important; }
  .dg-get-desc { font-size: 15px !important; }
  .dg-nfy {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    padding: 24px 20px !important;
  }
  .dg-final { padding: 36px 20px !important; }
  .dg-final-title { font-size: 28px !important; }
  .dg-final-sub { font-size: 16px !important; }
  .dg-final-ctas { flex-direction: column !important; }
  .dg-final-btn1, .dg-final-btn2 {
    width: 100% !important;
    text-align: center !important;
    font-size: 16px !important;
  }

}