@media (max-width:640px){
  body{font-size:16px}
  .wrap{padding:0 20px}
  .nav .wrap{height:64px;gap:12px}.nav ul{display:none}.nav .logo img{height:28px}
  .nav .btn{margin-left:auto;height:40px;padding:0 16px;font-size:14px}
  .hero{padding:40px 0 0}
  .badge-top{font-size:12px;padding:6px 12px 6px 6px;gap:8px}.badge-top .stars{font-size:10px;padding:4px 7px}
  .hero h1{font-size:44px;line-height:1.04;margin-top:20px}.hero h1 br{display:none}
  .hero .sub{font-size:17px;margin-top:18px}
  .hero .ctas{flex-direction:column;margin-top:28px}.hero .ctas .btn{width:100%}
  .trustrow{margin-top:24px;gap:10px}.avs img{width:30px;height:30px}.tr-txt{font-size:12.5px}
  .vsl{margin-top:36px;margin-left:-8px;margin-right:-8px}
  .vsl-frame{padding:6px;border-radius:20px 20px 0 0}
  .vsl-video{border-radius:14px 14px 0 0}
  .vsl-over{left:18px;top:18px;gap:8px}.vsl-over b{font-size:19px}.vsl-over small{font-size:11px}.vsl-over .chip{height:24px;font-size:11px}
  .vsl .play,.vsl-video .play{left:18px;bottom:16px;width:52px;height:52px;box-shadow:0 0 0 6px rgba(31,91,255,.25)}
  .vsl .play:after{border-left-width:15px;border-top-width:10px;border-bottom-width:10px;margin-left:4px}
  .f-cal,.f-booked{display:none}
  .f-offer{left:auto;right:12px;bottom:16px;padding:8px 12px;gap:8px}.f-offer .gift{width:28px;height:28px}.f-offer b{font-size:12.5px}.f-offer span{font-size:11px}
  .qstrip{padding-top:56px}
  /* qcard width now set by carousel JS */
}
@media (max-width:640px){
  .badge-top{font-size:11px;white-space:nowrap;gap:6px}.badge-top .stars{font-size:9px;letter-spacing:1px;padding:4px 6px}
  .avs{flex:none}
  .trustrow{max-width:100%}
}

@media (max-width:640px){
  .badge-top{font-size:14px;padding:10px 16px;white-space:normal;max-width:100%;line-height:1.3;text-align:center}
  .hero{padding:28px 0 36px}
  .hero h1{font-size:40px;margin-top:16px}
  .hero .sub{font-size:16px;margin-top:12px}
  .hero .ctas{margin-top:20px}
  .hero .ctas .btn{white-space:normal;height:auto;min-height:48px;padding:12px 16px;line-height:1.25}
  .nav .btn{font-size:12px;padding:0 10px;height:40px;white-space:nowrap;letter-spacing:-.02em}
  .hero-quotes{margin-top:18px}
  .hq-stars{margin-bottom:10px}
  .hq-row{grid-template-columns:1fr;gap:8px}
  .hq{padding:12px 14px}
  .statband{grid-template-columns:1fr;border-radius:0 0 20px 20px;padding:8px 16px 16px;margin-left:-8px;margin-right:-8px}
  .statband div{padding:14px 8px}
  .statband div+div{border-left:0;border-top:1px solid var(--mist)}
  .statband b{font-size:28px}
  .vsl{margin-top:24px}
}

@media (max-width:640px){
  .pp{grid-template-columns:1fr;margin-top:40px;gap:16px}
  .pp .card{padding:24px}
  .you .last{font-size:20px}
  .inds{justify-content:center}
}

@media (max-width:640px){
  .hero h1{font-size:36px;margin-top:14px;line-height:1.08}
  .hero h1 br{display:block}
}

@media (max-width:640px){
  .hero h1{font-size:34px;margin-top:14px;line-height:1.08}
  .hero h1 br{display:block}
  .hero-proof{margin-top:12px}
}


/* Round 7 hero */
@media (max-width:640px){
  .hero{padding:24px 0 0}
  .hero h1{font-size:34px;margin-top:14px;line-height:1.08}
  .hero h1 br{display:block}
  .hero .sub{font-size:16px;margin-top:12px;max-width:100%;line-height:1.45}
  .hero .ctas{margin-top:18px;flex-direction:column}
  .hero .ctas .btn{width:100%;white-space:normal;height:auto;min-height:48px;padding:12px 16px;line-height:1.25}
  .hero-quotes{margin-top:18px}
  .hq-stars{flex-direction:column;gap:6px;margin-bottom:14px}
  .hq-trust{font-size:13.5px;max-width:280px}
  .hq-row{grid-template-columns:1fr;gap:14px}
  .hq{padding:0;background:transparent;border:0;box-shadow:none}
  .hq blockquote{white-space:normal;font-size:14.5px;line-height:1.4}
  .hq figcaption{white-space:nowrap}
  .vsl{margin-top:22px}
}


/* Round 8: under-VSL quotes on mobile */
@media (max-width:640px){
  .hero-quotes{margin-top:16px;max-width:100%}
  .hq-stars{flex-direction:column;gap:6px;margin-bottom:0}
  .hq-trust{font-size:13.5px;max-width:280px;text-align:center}
  .hq-row{display:none}
  .vsl{margin-top:20px}
  .vsl-quotes{grid-template-columns:1fr;padding:4px 16px 8px;margin-left:-8px;margin-right:-8px}
  .vq{padding:14px 2px;gap:10px}
  .vq + .vq{border-left:0;border-top:1px solid #E6ECF6}
  .vq .av{width:32px;height:32px}
  .vq blockquote{font-size:14px;line-height:1.4;white-space:normal}
  .vq figcaption{white-space:normal;font-size:12.5px}
  .statband{margin-left:-8px;margin-right:-8px}
}


@media (max-width:640px){
  .cases{grid-template-columns:1fr;gap:16px;margin-top:32px}
  .case-media .play{width:48px;height:48px}
  .nostrip h2{font-size:26px;max-width:100%}
}


/* Round 10: VSL frame is complete again; under-VSL reviews are star quotes */
@media (max-width:640px){
  .vsl-frame{border-radius:20px;padding:6px}
  .vsl-video{border-radius:14px}
  .vsl-quotes{grid-template-columns:1fr;padding:0 8px;margin-left:0;margin-right:0;background:transparent;border:0}
  .vq{padding:14px 4px;align-items:center;text-align:center;gap:6px}
  .vq + .vq{border-left:0;border-top:1px solid #E6ECF6}
  .vq .stars{font-size:14px}
  .vq blockquote{font-size:14px;font-weight:600}
  .vsl-over b{font-size:18px;max-width:260px}
}


/* VSL attaches to the stats band on mobile; no quote row */
@media (max-width:640px){
  .hero{padding-bottom:36px}
  .vsl-quotes,.vq{display:none}
  .vsl-frame{border-radius:20px 20px 0 0;padding:6px;border-bottom:0}
  .vsl-video{border-radius:14px 14px 0 0}
  .statband{
    grid-template-columns:1fr;
    border-radius:0 0 20px 20px;
    padding:8px 16px 16px;
    margin-left:-8px;
    margin-right:-8px
  }
  .statband div{padding:14px 8px}
  .statband div+div{border-left:0;border-top:1px solid var(--mist)}
  .statband b{font-size:28px}
}
