/* Phone headings scale with the screen width (loaded last on every page). Desktop sizes are untouched. */
@media (max-width:600px){
  /* Not inside the app or a question (29 Oct): question text and app titles keep their own sizes (app.css). */
  body:not(.cv-home) h1:not(.qtext):not(.app *):not(#qroot *){font-size:clamp(28px,9.4vw,40px)!important;line-height:1.1!important}
  .cv-shell>div>h2,.cv-shell>h2,.st-shell>div>h2,.st-topics-intro>h2,#weaknessPanel>h2{font-size:clamp(25px,7.6vw,34px)!important;line-height:1.15!important}

  /* Home hero: smaller gaps so "Try 5 questions free" sits on the first screen. */
  body.cv-home .cv-landing-hero .cv-hero-copy{padding-top:76px!important}
  body.cv-home .cv-landing-hero .cv-community{margin-bottom:14px!important}
  body.cv-home .cv-landing-hero h1{font-size:clamp(30px,9.4vw,42px)!important;line-height:1.05!important}
  body.cv-home .cv-landing-hero .cv-landing-subtitle{font-size:16px!important;line-height:1.55!important;margin-top:14px!important}
  body.cv-home .cv-landing-hero .cv-hero-inclusions{margin:14px 0 12px!important}
  body.cv-home .cv-landing-hero .cv-hero-refund{margin-top:0!important;margin-bottom:12px!important}
  body.cv-home .cv-landing-hero .cv-hero-countdown{margin:6px auto 10px!important;text-wrap:balance}
}
/* Comparison table (29 Oct) */
.cv-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.cv-compare{margin-top:56px;background:#fff;border:1px solid #ddd2ea;border-radius:20px;padding:30px;box-shadow:0 10px 30px #4d2b700d;text-align:left}
.cv-compare.st-compare{margin-top:30px}
.cv-compare h3{font-size:clamp(22px,2.4vw,28px);line-height:1.2;color:#2d1f3d;margin:0 0 18px}
.cv-compare table{width:100%;border-collapse:separate;border-spacing:0;font-size:16px;line-height:1.5;table-layout:fixed}
.cv-compare th,.cv-compare td{padding:16px 18px;text-align:left;vertical-align:top;border-top:1px solid #ece6f3}
.cv-compare thead th{border-top:0;font-size:14px;font-weight:600;color:#5f566b;padding-block:12px}
.cv-compare thead th:first-child{width:26%}
.cv-compare thead th.is-us{color:#fff;background:#6938d3;border-radius:12px 12px 0 0}
.cv-compare tbody th{font-weight:600;color:#2d1f3d}
.cv-compare td.is-us{background:#f5effd;color:#2d1f3d;font-weight:600;border-top-color:#e4d8f6}
.cv-compare tbody tr:last-child td.is-us{border-radius:0 0 12px 12px}
.cv-compare td:not(.is-us){color:#5f566b}
.cv-compare-note{font-size:13px;line-height:1.5;color:#6b6178;margin:22px 0 0}
@media (max-width:640px){
.cv-compare{margin-top:40px;padding:22px 16px;border-radius:16px}
.cv-compare.st-compare{margin-top:24px}
.cv-compare table,.cv-compare tbody,.cv-compare tr,.cv-compare th,.cv-compare td{display:block;width:auto}
.cv-compare thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.cv-compare tbody tr{padding:16px 0;border-top:1px solid #ece6f3}
.cv-compare tbody tr:first-child{border-top:0;padding-top:4px}
.cv-compare tbody th{padding:0 0 4px;border:0;font-size:16px}
.cv-compare td{border:0;margin-top:8px;padding:10px 12px;border-radius:10px;font-size:15px}
.cv-compare td.is-us,.cv-compare tbody tr:last-child td.is-us{border-radius:10px}
.cv-compare td:not(.is-us){background:#f7f6f9}
.cv-compare td::before{content:attr(data-label);display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#7a6f86;margin-bottom:2px}
.cv-compare td.is-us::before{color:#6938d3}
}
.cv-home-compare{margin-top:40px}
