
/* ==========================================================
   Design tokens
   Sizes are fluid: they hit the Figma values at 1440px wide
   and scale down smoothly on smaller laptops / tablets.
   ========================================================== */
:root{
  --black:#1a1a1a;
  --black-2:#212121;
  --white:#fff;
  --red:#b20000;
  --red-dark:#930000;
  --body:#3c3c3c;
  --grey-bg:#f2f2f2;
  --grey-bg-2:#f5f7f9;
  --off-white:#fdfdfd;
  --blush:#fff6f5;
  --border:#9f9f9f;
  --border-2:#a2a2a2;
  --border-3:#b3b3b3;
  --card-border:rgba(21,36,47,.5);
  --divider:#aeaeae;

  --f-head:'Archivo',sans-serif;
  --f-body:'Open Sans',sans-serif;
  --f-noto:'Noto Sans',sans-serif;
  --f-lato:'Lato',sans-serif;

  --container:1200px;
  --gutter:clamp(20px,4vw,40px);

  /* fluid type (min, preferred, max = Figma desktop) */
  --fs-h1:clamp(32px,3.61vw,52px);
  --fs-h2:clamp(28px,3.33vw,48px);
  --fs-h3:clamp(26px,2.78vw,40px);
  --fs-stat:clamp(30px,3.33vw,48px);
  --fs-card:clamp(18px,1.6vw,23px);
  --fs-lead:clamp(16px,1.39vw,20px);
  --fs-text:clamp(16px,1.25vw,18px);
  --fs-btn:clamp(16px,1.39vw,20px);

  /* fluid spacing */
  --sec-y:clamp(48px,5.56vw,80px);
  --gap-xl:clamp(32px,5.56vw,80px);
  --gap-l:clamp(24px,3.33vw,48px);
  --gap-m:clamp(16px,2.22vw,32px);
  --btn-y:clamp(16px,1.39vw,20px);
  --btn-x:clamp(28px,5.56vw,80px);
  --radius:20px;
}

/* ==========================================================
   Base
   ========================================================== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--f-body);color:var(--black);background:var(--white);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
h1,h2,h3,h4,p,figure,blockquote{margin:0}
a{color:inherit}
ul{margin:0;padding:0;list-style:none}
button,input,select{font:inherit}

.container{width:100%;max-width:calc(var(--container) + var(--gutter)*2);margin:0 auto;padding:0 var(--gutter)}
.section{position:relative;overflow:hidden}
.rel{position:relative;z-index:1}
.deco{position:absolute;pointer-events:none;user-select:none;z-index:0;height:auto}

.h2{font-family:var(--f-head);font-weight:700;font-size:var(--fs-h2);line-height:1.2}
.h3{font-family:var(--f-head);font-weight:700;font-size:var(--fs-h3);line-height:1.2}
.hl{color:var(--red);text-decoration:underline;text-decoration-thickness:from-font;text-underline-position:from-font}
.lead{font-size:var(--fs-lead);color:var(--body)}
.eyebrow{font-weight:700;font-size:clamp(16px,1.25vw,18px);text-transform:uppercase}

/* Image crop helper (reproduces Figma "crop" fills) */
.crop{position:relative;display:block;overflow:hidden;flex-shrink:0}
.crop>img{position:absolute;max-width:none}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--red);color:var(--white);border:0;border-radius:12px;padding:var(--btn-y) var(--btn-x);font-family:var(--f-body);font-weight:700;font-size:var(--fs-btn);line-height:1.5;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .2s,transform .2s}
.btn img{width:clamp(20px,1.67vw,24px);height:auto}
.btn:hover{background:var(--red-dark)}
.btn:active{transform:translateY(1px)}
.btn--white{background:var(--white);color:var(--black);padding:var(--btn-y) clamp(24px,3.9vw,56px)}
.btn--white:hover{background:#ececec}

/* CTA block with social proof */
.cta{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:var(--gap-l)}
.cta .btn{min-width:min(370px,100%)}
.proof{display:flex;align-items:center;gap:12px;font-size:var(--fs-lead)}
.proof img{width:108px;height:auto}
.proof--light{color:var(--white)}

/* Rating pill */
.rating{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--white);border-radius:40px;padding:8px clamp(14px,1.67vw,24px);color:var(--white);max-width:100%}
.rating__g{width:21px;height:21px;object-fit:contain}
.rating__stars{width:120px;height:auto}
.rating__txt{font-weight:700;font-size:clamp(15px,1.25vw,18px);white-space:nowrap}
.rating__av{width:clamp(90px,7.5vw,108px);height:auto}

/* ==========================================================
   Header
   ========================================================== */
.topbar{display:none}
.header{background:var(--black);padding:clamp(10px,1.1vw,16px) 0}
.header__in{display:flex;align-items:center;justify-content:space-between;gap:24px}
.header__logo img{width:clamp(96px,8.06vw,116px);height:auto}
.header__right{display:flex;align-items:center;gap:16px}
.phone{display:flex;align-items:center;gap:8px;color:var(--white);text-decoration:none}
.phone img{width:clamp(36px,3.13vw,45px);height:auto}
.phone span{font-family:var(--f-head);font-weight:600;font-size:clamp(20px,1.88vw,27px);line-height:1.2;text-decoration:underline;text-underline-position:from-font}

/* ==========================================================
   Hero
   ========================================================== */
.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--black);border-top:1px solid #3a3a3a}
.hero__content{position:relative;display:flex;align-items:center;justify-content:center;padding:clamp(56px,8.33vw,120px) clamp(24px,4.44vw,64px);overflow:hidden}
.hero__inner{position:relative;z-index:1;width:100%;max-width:592px;display:flex;flex-direction:column;gap:clamp(20px,1.67vw,24px)}
.hero__deco{right:clamp(-60px,-2.9vw,-20px);top:0;width:clamp(110px,11.8vw,170px)}
.hero h1{font-family:var(--f-head);font-weight:700;font-size:var(--fs-h1);line-height:1.2;color:var(--white);margin-top:16px}
.hero__text{font-size:var(--fs-text);color:var(--white);margin-top:16px}
.hero .btn{align-self:flex-start;margin-top:clamp(0px,.56vw,8px);font-size:clamp(16px,1.25vw,18px);padding:clamp(18px,1.67vw,24px) clamp(32px,3.9vw,56px)}
.trust{display:flex;flex-wrap:wrap;gap:8px 16px;color:var(--white);font-size:clamp(14px,1.11vw,16px)}
.trust li{display:flex;align-items:center;gap:4px;white-space:nowrap}
.trust .shield{width:19px;height:24px}
.trust .tick{width:18px;height:19px}
.hero__media{position:relative;min-height:clamp(480px,56vw,807px);overflow:hidden}
/* crop values from Figma */
.hero__media img{position:absolute;max-width:none;width:187.6%;height:117%;left:-29.8%;top:-11.5%}
.hero__badges{display:none}

/* Stats bar */
.statbar{background:var(--grey-bg);padding:clamp(20px,2.22vw,32px) var(--gutter)}
.statbar__in{display:flex;align-items:center;justify-content:center;gap:var(--gap-l);max-width:1260px;margin:0 auto}
.statbar__logos{display:flex;align-items:center;gap:clamp(12px,1.67vw,24px);flex-shrink:0}
.crop.issm{width:clamp(64px,5.9vw,85px);aspect-ratio:85/78}
.crop.issm>img{width:122.7%;height:132.3%;left:-11%;top:-15.3%}
.statbar__logos .aua{width:clamp(150px,14.5vw,209px);height:auto}
.statbar__stats{display:flex;align-items:center;gap:var(--gap-l)}
.statbar__sep{width:1px;height:clamp(72px,6.67vw,96px);background:#7e7e7e;flex-shrink:0}
.stat{text-align:center;display:flex;flex-direction:column;gap:8px}
.stat b{font-family:var(--f-head);font-weight:700;font-size:var(--fs-stat);line-height:1.2;white-space:nowrap}
.stat span{font-family:var(--f-noto);font-size:clamp(14px,1.11vw,16px);color:var(--body)}

/* ==========================================================
   Symptoms
   ========================================================== */
.symptoms{padding:var(--sec-y) 0}
.symptoms__head{max-width:850px;margin:0 auto;display:flex;flex-direction:column;gap:24px;text-align:center}
.symptoms__head .lead p+p{margin-top:12px}
.symptoms__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:clamp(28px,2.78vw,40px)}
.sym-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(18px,1.67vw,24px);display:flex;flex-direction:column;gap:12px}
.sym-card img{width:clamp(48px,3.9vw,56px);height:auto}
.sym-card p{font-family:var(--f-head);font-size:clamp(17px,1.39vw,20px);line-height:1.2;color:var(--body)}
.symptoms .d1{right:5%;top:98px;width:clamp(110px,12.7vw,183px)}
.symptoms .d2{right:0;top:141px;width:clamp(80px,8.4vw,121px)}

/* ==========================================================
   Pricing / value
   ========================================================== */
.pricing{background:var(--grey-bg-2);padding:var(--sec-y) 0}
.pricing__head{max-width:996px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}
.pricing__head .btn{margin-top:8px}
.pricing__body{display:grid;grid-template-columns:622fr 465fr;align-items:center;gap:clamp(40px,7.85vw,113px);margin-top:clamp(40px,4.44vw,64px)}
.pricing__media{position:relative;aspect-ratio:622/730;margin-right:5.6%}
.pricing__media .big{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}
.pricing__media .small{position:absolute;left:54.8%;top:65.2%;width:50.8%;aspect-ratio:316/277;object-fit:cover;border-radius:var(--radius)}
.pricing__list{display:flex;flex-direction:column;gap:clamp(28px,2.78vw,40px)}
.plist{display:flex;flex-direction:column;gap:16px}
.plist li{display:flex;justify-content:space-between;align-items:center;gap:clamp(12px,1.67vw,24px);font-size:var(--fs-lead);padding-bottom:16px;border-bottom:1px solid var(--divider)}
.plist li:last-child{border-bottom:0;padding-bottom:0}
.plist .item{display:flex;align-items:center;gap:8px}
.plist .item img{width:clamp(28px,2.5vw,36px);height:auto;flex-shrink:0}
.plist .price{text-decoration:underline;white-space:nowrap}
.compare{border-top:1px solid var(--body);padding-top:24px;display:flex;flex-direction:column;gap:12px}
.compare div{display:flex;justify-content:space-between;align-items:center;gap:10px}
.compare .old{font-size:var(--fs-lead)}
.compare .old s{font-family:var(--f-head);font-weight:300;font-size:clamp(20px,1.6vw,23px);line-height:1.2}
.compare .new span{font-family:var(--f-head);font-weight:600;font-size:var(--fs-card);line-height:1.2}
.compare .new b{font-family:var(--f-head);font-weight:600;font-size:clamp(22px,1.88vw,27px);line-height:1.2}
.pricing .d1{left:-30px;top:393px;width:clamp(110px,12.7vw,183px)}
.mobile-only{display:none!important}

/* Benefits strip */
.benefits{background:var(--grey-bg-2);padding:clamp(16px,1.67vw,24px) 0 clamp(40px,4.44vw,64px)}
.benefits__track{display:flex;justify-content:center;gap:16px}
.benefit{position:relative;flex:0 0 clamp(230px,20.5vw,295px);aspect-ratio:295/391;border-radius:var(--radius);overflow:hidden;display:flex;align-items:flex-end;padding:16px 16px clamp(20px,2.22vw,32px);color:var(--white);text-decoration:none}
.benefit img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.benefit:hover img{transform:scale(1.04)}
.benefit::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 50%,rgba(0,0,0,.9) 85%)}
.benefit__txt{position:relative;z-index:2;display:flex;flex-direction:column;gap:4px}
.benefit h3{font-family:var(--f-head);font-weight:600;font-size:var(--fs-card);line-height:1.2}
.benefit span{font-size:16px;text-decoration:underline;text-underline-offset:4px}

/* ==========================================================
   Reviews
   ========================================================== */
.reviews{background:var(--black);padding:var(--sec-y) 0}
.reviews .h2{color:var(--white);text-align:center;max-width:1100px;margin:0 auto}
.reviews__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:var(--gap-l);align-items:start}
.reviews__col{display:flex;flex-direction:column;gap:16px}
.rcard{background:var(--white);border:1px solid var(--border-3);border-radius:var(--radius);padding:clamp(24px,2.22vw,32px) clamp(20px,1.67vw,24px);display:flex;flex-direction:column;gap:24px}
.rcard__body{display:flex;flex-direction:column;gap:16px}
.rcard__stars{width:120px;height:auto}
.rcard__body p{font-size:clamp(16px,1.39vw,20px);color:var(--body)}
.rcard__foot{display:flex;align-items:center;gap:8px}
.rcard__av{width:48px;height:48px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;color:var(--white);font-family:var(--f-lato);font-weight:700;font-size:16px;object-fit:cover}
.rcard__name{flex:1;font-family:var(--f-lato);font-size:clamp(16px,1.25vw,18px);color:#000}
.rcard__g{width:33px;height:33px;object-fit:contain}
.vcard{border-color:#cfcfcf}
.vcard__thumb{position:relative;aspect-ratio:341/201;border-radius:12px;overflow:hidden;display:flex;align-items:flex-end;padding:clamp(16px,1.67vw,24px)}
.vcard__thumb>img:first-child{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vcard__thumb .play{position:relative;width:clamp(44px,3.75vw,54px);height:auto}
.vcard blockquote{font-family:var(--f-head);font-weight:600;font-size:var(--fs-card);line-height:1.2}
.vcard cite{display:block;font-style:normal;font-size:clamp(16px,1.25vw,18px);color:#000;margin-top:8px}
.btn-play{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;background:var(--red);color:var(--white);border:0;border-radius:12px;padding:clamp(14px,1.25vw,18px) clamp(32px,3.33vw,48px);font-family:var(--f-noto);font-weight:600;font-size:16px;cursor:pointer;text-decoration:none}
.btn-play img{width:16px;height:auto}
.reviews .deco{right:-60px;top:-9px;width:clamp(140px,15.3vw,220px)}

/* ==========================================================
   Feature rows (octagon images)
   ========================================================== */
.frow{padding:clamp(16px,1.67vw,24px) 0}
.frow--first{padding-top:clamp(40px,4.44vw,64px)}
.frow--last{padding-bottom:clamp(24px,2.22vw,32px)}
.frow__in{display:grid;grid-template-columns:502fr 618fr;align-items:center;gap:var(--gap-xl)}
.frow__in--rev{grid-template-columns:618fr 502fr}
.frow__text{display:flex;flex-direction:column;gap:clamp(24px,2.22vw,32px);align-items:flex-start}
.frow__copy{display:flex;flex-direction:column;gap:16px}
.frow__copy p{font-size:var(--fs-text);color:var(--body)}
.frow__media img{width:100%;max-width:618px;height:auto;margin:0 auto}
.checks{display:flex;flex-direction:column;gap:16px}
.checks li{display:flex;align-items:center;gap:8px;font-size:var(--fs-text);color:var(--body)}
.checks img{width:28px;height:28px;flex-shrink:0}

/* Quote */
.quote{background:var(--off-white);padding:clamp(24px,2.22vw,32px) 0 var(--sec-y)}
.quote__card{background:var(--blush);border:1px solid var(--border-2);border-radius:var(--radius);padding:clamp(32px,4.44vw,64px) clamp(24px,5vw,72px);display:flex;flex-direction:column;gap:clamp(24px,2.22vw,32px)}
.quote__card .stars{width:clamp(120px,10.7vw,154px);height:auto}
.quote__card blockquote{margin-top:16px;font-family:var(--f-head);font-size:clamp(20px,1.81vw,26px);line-height:1.5}
.quote__who{display:flex;align-items:center;gap:16px}
.quote__who img{width:clamp(53px,5.56vw,80px);height:auto;aspect-ratio:1;border-radius:50%;border:1px solid rgba(174,174,174,.84);object-fit:cover}
.quote__who span{font-family:var(--f-head);font-weight:600;font-size:var(--fs-card);line-height:1.2}

/* Features on photo */
.features{position:relative;min-height:clamp(600px,57.2vw,824px);padding:clamp(32px,3.33vw,48px) 0;display:flex;align-items:flex-end}
.features__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.features__wrap{position:relative;width:100%}
.features__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1250px;margin:0 auto;padding:0 var(--gutter)}
.fcard{background:var(--white);border:1px solid var(--card-border);border-radius:var(--radius);padding:clamp(24px,2.22vw,32px) clamp(18px,1.67vw,24px);display:flex;flex-direction:column;gap:clamp(16px,1.67vw,24px)}
.fcard img,.ccard img{width:clamp(48px,3.9vw,56px);height:auto}
.fcard h3,.ccard h3{font-family:var(--f-head);font-weight:600;font-size:var(--fs-card);line-height:1.2}
.fcard p,.ccard p{font-size:clamp(15px,1.11vw,16px);color:var(--body);margin-top:8px}
.dots{display:none}

/* Results */
.results{background:var(--off-white);padding:var(--sec-y) 0 clamp(24px,2.78vw,40px)}
.results__head{position:relative;max-width:944px;margin:0 auto;display:flex;flex-direction:column;gap:24px;text-align:center}
.results__head .h2{color:#000}
.results__head p{font-size:var(--fs-text);color:var(--body)}
.results__head .deco{left:-329px;top:-13px;width:clamp(160px,16.5vw,238px)}
.results__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:var(--gap-l)}
.scard{background:var(--grey-bg-2);border:1px solid var(--border-2);border-radius:var(--radius);padding:clamp(24px,2.78vw,40px) clamp(16px,1.67vw,24px);display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}
.scard img{width:clamp(48px,4.44vw,64px);height:auto}
.scard b{display:block;font-family:var(--f-head);font-weight:700;font-size:clamp(30px,2.92vw,42px);line-height:1.2}
.scard span{display:block;font-family:var(--f-noto);font-size:clamp(14px,1.11vw,16px);color:var(--body);margin-top:4px}
.logos{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:clamp(24px,2.22vw,32px)}
.logos li{flex:1;display:flex;justify-content:center;align-items:center;height:88px;padding:11px 12px}
.logos img{height:auto;object-fit:contain}
.crop.badge{width:88px;aspect-ratio:1}
.crop.badge>img{width:119.8%;height:119%;left:-9.8%;top:-9.5%}

/* Meds */
.meds{background:var(--off-white);padding:clamp(24px,2.78vw,40px) 0 clamp(80px,9vw,130px)}
.meds__card{position:relative;aspect-ratio:1200/525;background:var(--blush);border:1px solid var(--border-2);border-radius:var(--radius);padding:clamp(40px,4.44vw,64px) clamp(28px,5vw,72px);display:flex;align-items:center}
.meds__text{position:relative;z-index:1;max-width:min(519px,48%);display:flex;flex-direction:column;gap:clamp(24px,2.22vw,32px);align-items:flex-start}
.meds__text .copy{display:flex;flex-direction:column;gap:16px}
.meds__text p{font-size:var(--fs-text);color:var(--body)}
.meds__img{position:absolute;pointer-events:none}
.meds__img.pill{left:57.75%;top:34.5%;width:17.3%;aspect-ratio:208/388}
.meds__img.pill>img{width:257.7%;height:137.9%;left:-77.8%;top:-18.5%}
.meds__img.vial{left:74.75%;top:19.2%;width:20.2%;aspect-ratio:242/463}
.meds__img.vial>img{width:290.7%;height:151.7%;left:-95.3%;top:-29.1%}

/* How it works */
.how{background:var(--black);padding:var(--sec-y) 0;color:var(--white)}
.how__head{text-align:center;display:flex;flex-direction:column;gap:4px;max-width:1106px;margin:0 auto}
.how__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:clamp(48px,5vw,72px) auto 0;max-width:1250px}
.step{display:flex;flex-direction:column;gap:24px}
.step__img{position:relative;aspect-ratio:401/308}
.step__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}
.step__badge{position:absolute;right:4%;top:-18px;background:var(--red);border-radius:12px;padding:clamp(8px,.76vw,11px) clamp(28px,4.1vw,59px);font-family:var(--f-head);font-weight:600;font-size:var(--fs-card);line-height:1.2;color:#f3f4f6}
.step h3{font-family:var(--f-head);font-weight:600;font-size:clamp(22px,1.88vw,27px);line-height:1.2}
.step p{font-size:var(--fs-text);margin-top:16px}

/* Specialist banner */
.specialist{background:var(--off-white);padding:var(--sec-y) 0 clamp(24px,2.22vw,32px)}
.specialist__card{position:relative;border-radius:var(--radius);overflow:hidden;min-height:clamp(480px,45.3vw,653px);display:flex;align-items:center;padding:clamp(48px,9.7vw,140px) clamp(32px,7.1vw,102px) clamp(48px,9.7vw,140px) clamp(28px,4.1vw,59px)}
.specialist__card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.specialist__card::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.6) 42%,rgba(0,0,0,0) 62%);z-index:1}
.specialist__text{position:relative;z-index:2;max-width:552px;color:var(--white);display:flex;flex-direction:column;gap:clamp(24px,2.22vw,32px);align-items:flex-start}
.specialist__text .copy{display:flex;flex-direction:column;gap:16px}
.specialist__text p{font-size:var(--fs-text)}
.specialist__mimg{display:none}

/* Proactive care */
.care{padding:clamp(40px,3.33vw,48px) 0 var(--sec-y)}
.care__in{display:grid;grid-template-columns:407fr 745fr;align-items:center;gap:var(--gap-l)}
.care__text{display:flex;flex-direction:column;gap:clamp(24px,2.22vw,32px);align-items:flex-start}
.care__text .copy{display:flex;flex-direction:column;gap:12px}
.care__text p{font-size:var(--fs-text);color:var(--body)}
.care__slider{min-width:0}
.care__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px 16px}
.ccard{background:var(--white);border:1px solid var(--card-border);border-radius:var(--radius);padding:clamp(18px,1.67vw,24px);display:flex;flex-direction:column;gap:clamp(16px,1.67vw,24px)}

/* Videos */
.videos{background:var(--grey-bg);padding:var(--sec-y) 0}
.videos .h2{text-align:center;max-width:802px;margin:0 auto}
.videos__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,2.78vw,40px);margin-top:var(--gap-l)}
.video{display:flex;flex-direction:column;gap:clamp(20px,2.22vw,32px)}
.video__thumb{position:relative;aspect-ratio:580/446;border-radius:var(--radius);overflow:hidden;display:grid;place-items:center;border:0;padding:0;cursor:pointer;background:#000}
.video__thumb>img:first-child{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.video__thumb .play{position:relative;width:clamp(64px,7vw,101px);height:auto;transition:transform .2s}
.video__thumb:hover .play{transform:scale(1.06)}
.video blockquote{font-family:var(--f-head);font-weight:600;font-size:clamp(20px,1.88vw,27px);line-height:1.2}
.video cite{display:block;font-style:normal;font-weight:700;font-size:var(--fs-lead);margin-top:16px}
.videos .deco{right:-35px;top:-4px;width:clamp(150px,17vw,245px)}

/* Meet the doctor */
.doctor{display:grid;grid-template-columns:1fr 1fr;min-height:clamp(560px,51.6vw,743px)}
.doctor__text{display:flex;align-items:center;justify-content:flex-end;padding:clamp(56px,8vw,116px) clamp(32px,4.44vw,64px) clamp(56px,8vw,116px) var(--gutter)}
.doctor__inner{max-width:536px;width:100%;display:flex;flex-direction:column;gap:clamp(24px,2.22vw,32px);align-items:flex-start}
.doctor__inner .copy{display:flex;flex-direction:column;gap:16px}
.doctor__inner .eyebrow{color:#000;margin-bottom:-8px}
.doctor__inner p.body{font-size:var(--fs-text);color:var(--body)}
.doctor__img{position:relative;min-height:320px}
.doctor__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* FAQ */
.faq{background:var(--grey-bg);padding:var(--sec-y) 0}
.faq__in{max-width:900px;margin:0 auto}
.faq .h2{text-align:center}
.faq__list{display:flex;flex-direction:column;gap:clamp(20px,2.22vw,32px);margin-top:var(--gap-l)}
.faq details{border-bottom:1px solid var(--black);padding-bottom:clamp(14px,1.67vw,24px)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:21px;font-family:var(--f-head);font-weight:600;font-size:var(--fs-card);line-height:1.2}
.faq summary::-webkit-details-marker{display:none}
.faq summary img{width:12px;height:8px;flex-shrink:0;transition:transform .2s}
.faq details[open] summary img{transform:rotate(180deg)}
.faq details p{font-size:var(--fs-lead);color:var(--body);margin-top:clamp(12px,1.67vw,24px)}

/* Final CTA + form */
.final{background:var(--black);padding:var(--sec-y) 0;color:var(--white)}
.final__in{display:grid;grid-template-columns:618fr 424fr;align-items:center;gap:clamp(40px,10.8vw,156px)}
.final__text{display:flex;flex-direction:column;gap:24px;min-width:0}
.final__text .h2{margin-top:16px}
.final__list{display:flex;flex-direction:column;gap:8px;margin-top:16px}
.final__list li{display:flex;align-items:center;gap:16px;font-size:var(--fs-lead)}
.final__list img{width:24px;height:24px;flex-shrink:0}
.final__rule{border:0;border-top:1px solid var(--white);margin:0}
.final__phone{display:flex;align-items:center;gap:16px;color:var(--white);text-decoration:none}
.final__phone img{width:clamp(40px,3.8vw,55px);height:auto}
.final__phone span{font-family:var(--f-head);font-weight:600;font-size:var(--fs-card);line-height:1.2;text-decoration:underline}
.final .deco{left:49%;top:-9px;width:clamp(180px,19.2vw,277px)}
.form{background:var(--white);border:1px solid #ebebeb;border-radius:7px;padding:clamp(24px,2.22vw,32px) clamp(20px,1.67vw,24px);color:var(--black);display:flex;flex-direction:column;gap:16px;min-width:0}
.form h3{font-family:var(--f-head);font-weight:600;font-size:var(--fs-card);line-height:1.2;text-align:center}
.form form{display:flex;flex-direction:column;gap:27px;margin-top:4px}
.form__fields{display:flex;flex-direction:column;gap:12px}
.form input,.form select{width:100%;height:45px;border:1px solid rgba(203,203,203,.85);border-radius:3px;padding:12px 14px;background:var(--white);font-family:var(--f-body);font-weight:700;font-size:14px;color:var(--black);outline:none}
.form input::placeholder{color:#6e6e6e;opacity:1}
.form select{color:#6e6e6e;appearance:none;background-image:url("../assets/chevron.svg");background-repeat:no-repeat;background-position:right 14px center;background-size:12px 8px}
.form select:valid{color:var(--black)}
.form input:focus,.form select:focus{border-color:var(--red)}
.form .btn{width:100%;padding:var(--btn-y) 20px}
.form__quote{display:flex;align-items:center;gap:8px}
.form__quote img{width:48px;height:48px;border-radius:50%;object-fit:cover;flex-shrink:0}
.form__quote p{font-size:clamp(14px,1.11vw,16px)}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ==========================================================
   Small laptops  (≤1199px)
   ========================================================== */
@media (max-width:1399px){
  .symptoms .deco{display:none}
}
@media (max-width:1199px){
  .statbar__logos{display:none}
  .results__head .deco{display:none}
}

/* ==========================================================
   Tablet  (≤991px)
   ========================================================== */
@media (max-width:991px){
  .deco{display:none!important}
  .hero{grid-template-columns:1fr}
  .hero__media{order:-1;min-height:0;aspect-ratio:16/9}
  .hero__media img{width:100%;height:100%;left:0;top:0;object-fit:cover;object-position:62% 30%}
  .hero__content{padding:48px var(--gutter)}
  .hero__inner{max-width:680px}
  .trust{font-size:14px}
  .symptoms__grid,.features__grid,.results__grid{grid-template-columns:repeat(2,1fr)}
  .reviews__grid{grid-template-columns:1fr 1fr}
  .reviews__col:nth-child(3){grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .pricing__body{grid-template-columns:1fr;gap:40px}
  .pricing__media{max-width:560px;width:100%;margin:0 auto;margin-right:auto}
  .benefits__track{justify-content:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--gutter);scrollbar-width:none}
  .benefits__track::-webkit-scrollbar{display:none}
  .benefit{scroll-snap-align:start}
  .frow__in,.frow__in--rev{grid-template-columns:1fr 1fr;gap:32px}
  .care__in{grid-template-columns:1fr}
  .care__grid{grid-template-columns:repeat(3,1fr)}
  .meds__card{aspect-ratio:auto;min-height:440px}
  .meds__text{max-width:58%}
  .meds__img.pill{left:62%}
  .meds__img.vial{left:77%}
  .how__grid{grid-template-columns:1fr 1fr}
  .how__grid .step:last-child{grid-column:1 / -1;max-width:calc(50% - 12px);justify-self:center}
  .specialist__card::before{background:linear-gradient(90deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.65) 55%,rgba(0,0,0,.1) 100%)}
  .doctor__text{padding:56px 32px}
  .final__in{grid-template-columns:1fr;gap:40px}
  .form{width:100%}
}

/* ==========================================================
   Mobile  (≤767px) – follows the 414px Figma frame
   ========================================================== */
@media (max-width:767px){
  :root{--gutter:24px;--sec-y:48px}
  .h2,.h3{font-size:30px}
  .btn{width:100%;padding:20px 24px;font-size:20px}
  .cta{margin-top:24px}
  .cta .btn{min-width:0}
  .proof{font-size:16px;gap:8px}
  .proof img{width:120px}
  .deco{display:none!important}

  /* header */
  .topbar{display:flex;justify-content:center;background:var(--black-2);padding:8px var(--gutter)}
  .topbar .phone img{width:34px}
  .topbar .phone span{font-family:var(--f-lato);font-weight:700;font-size:20px;line-height:1.5}
  .header{padding:12px 0}
  .header__right .phone{display:none}
  .header__logo img{width:101px}
  .header .btn--white{width:auto;padding:14px 20px;font-size:16px}
  .header .btn--white img{width:20px}

  /* hero */
  .hero{grid-template-columns:1fr;border-top:0}
  .hero__media{order:-1;min-height:0;aspect-ratio:414/311}
  .hero__media img{width:160.8%;height:149.3%;left:-27%;top:-10.4%}
  .hero__content{padding:32px var(--gutter)}
  .hero__inner{gap:16px}
  .rating{padding:8px 14px;border-color:#929292;gap:8px}
  .rating__stars{width:100px}
  .rating__txt{font-family:var(--f-lato);font-size:15px}
  .rating__av{width:80px}
  .hero h1{font-size:32px;margin-top:16px}
  .hero__text{font-size:16px}
  .hero .btn{align-self:stretch;margin-top:0;padding:22px 24px;font-size:20px}
  .trust{gap:8px 16px;font-size:15px}
  .trust .hide-m{display:none}
  .hero__badges{display:grid;grid-template-columns:1.15fr 1fr;gap:12px;margin-top:8px}
  .hero__badges li{background:var(--white);border:1px solid rgba(224,224,224,.84);border-radius:12px;box-shadow:0 2.5px 2.5px rgba(162,162,162,.3);display:grid;place-items:center;height:81px;padding:10px}
  .hero__badges .aua{width:100%;max-width:170px;height:auto}
  .hero__badges .crop.issm{width:71px}

  .statbar{padding:16px}
  .statbar__sep{display:none}
  .statbar__stats{gap:12px;width:100%;justify-content:space-between;align-items:flex-start}
  .stat{flex:1;gap:4px}
  .stat b{font-size:clamp(28px,8.5vw,38px)}
  .stat span{font-family:var(--f-body);font-size:14px;line-height:1.4}

  /* symptoms */
  .symptoms__head{text-align:left;gap:24px}
  .symptoms__head .lead{font-size:18px}
  .symptoms__grid{grid-template-columns:1fr 1fr;margin-top:24px}
  .sym-card{padding:20px 16px}
  .sym-card img{width:48px}
  .sym-card p{font-size:18px}
  .sym-card.hide-m{display:none}

  /* pricing */
  .pricing{padding-bottom:24px}
  .pricing__head{text-align:left;align-items:stretch;gap:16px}
  .pricing__head .lead{font-size:16px}
  .pricing__head .btn{display:none}
  .pricing__body{margin-top:24px;gap:24px}
  .pricing__media{aspect-ratio:366/341;max-width:none;margin:0}
  .pricing__media .big{right:auto;bottom:auto;width:94%;height:auto;aspect-ratio:344/329}
  .pricing__media .small{left:auto;right:0;top:auto;bottom:0;width:40%}
  .pricing__list{gap:24px}
  .plist li{font-size:16px;gap:8px}
  .plist .item img{width:28px}
  .compare .new span{font-size:20px}
  .mobile-only{display:flex!important}

  /* benefits */
  .benefits{padding:24px 0 48px}
  .benefits__track{padding:0 var(--gutter)}
  .benefit{flex-basis:72%;aspect-ratio:295/368}

  /* reviews: single column, Figma mobile order */
  .reviews .h2{text-align:left}
  .reviews__grid{display:flex;flex-direction:column;gap:24px;margin-top:24px}
  .reviews__col,.reviews__col:nth-child(3){display:contents}
  .reviews .hide-m{display:none}
  .reviews [data-m="1"]{order:1}.reviews [data-m="2"]{order:2}.reviews [data-m="3"]{order:3}.reviews [data-m="4"]{order:4}.reviews [data-m="5"]{order:5}
  .rcard{padding:32px 24px}
  .vcard{padding:24px}
  .vcard__thumb{aspect-ratio:318/245;border-radius:20px}
  .vcard blockquote{font-size:23px}
  .btn-play{border-radius:8px;padding:18px 48px}

  /* feature rows */
  .frow,.frow--first,.frow--last{padding:24px 0}
  .frow--first{padding-top:48px}
  .frow__in,.frow__in--rev{grid-template-columns:1fr;gap:24px}
  .frow__media{order:-1}
  .frow__media img{max-width:366px}
  .frow__text{gap:24px}
  .frow__copy p,.checks li{font-size:16px}
  .checks li{align-items:flex-start}
  .frow__text .btn,.meds__text .btn{width:auto;padding:24px 56px;font-size:18px}

  .quote{padding:24px 0 48px}
  .quote__card{padding:48px 24px;gap:24px}
  .quote__card blockquote{font-size:23px;color:var(--body)}
  .quote__who{gap:10px;justify-content:center}
  .quote__who span{font-family:var(--f-body);font-weight:700;font-size:18px;line-height:1.5}

  /* features: photo, then swipe cards */
  .features{display:block;min-height:0;padding:0}
  .features__bg{position:static;height:auto;aspect-ratio:414/311}
  .features__wrap{background:var(--grey-bg-2);padding:24px 0}
  .features__grid,.care__grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding:0 var(--gutter);scroll-padding:0 var(--gutter);scrollbar-width:none}
  .features__grid::-webkit-scrollbar,.care__grid::-webkit-scrollbar{display:none}
  .fcard,.ccard{flex:0 0 100%;scroll-snap-align:start;padding:32px 24px;gap:24px}
  .fcard img,.ccard img{width:56px}
  .fcard h3,.ccard h3{font-size:23px}
  .fcard p,.ccard p{font-size:16px}
  .dots{display:flex;justify-content:center;gap:8px;margin-top:20px}
  .dots i{width:10px;height:10px;border-radius:50%;background:#d0d0d0;transition:background .2s,width .2s}
  .dots i.on{background:var(--red);width:24px;border-radius:5px}

  .results{padding:48px 0 16px}
  .results__head{text-align:left;gap:16px}
  .results__head p{font-size:16px}
  .results__grid{grid-template-columns:1fr 1fr;margin-top:32px}
  .scard{padding:24px 12px}
  .scard img{width:48px}
  .scard b{font-weight:600;font-size:clamp(26px,8vw,33px)}
  .scard span{font-family:var(--f-body);font-size:14px}
  .logos{overflow-x:auto;justify-content:flex-start;scrollbar-width:none;margin:24px calc(var(--gutter)*-1) 0;padding:0 var(--gutter);gap:8px}
  .logos::-webkit-scrollbar{display:none}
  .logos li{flex:0 0 auto;padding:8px 12px}

  .meds{padding:24px 0 120px}
  .meds__card{display:block;min-height:0;padding:48px 24px 220px}
  .meds__text{max-width:none;gap:24px}
  .meds__text p{font-size:16px}
  .meds__img.pill{left:calc(50% - 124px);top:auto;bottom:-60px;width:116px}
  .meds__img.vial{left:calc(50% - 10px);top:auto;bottom:-100px;width:134px}

  .how__head{text-align:left;gap:8px}
  .how__head .eyebrow{text-align:center}
  .how__head .h2{font-weight:600}
  .how__grid{grid-template-columns:1fr;gap:48px;margin-top:48px}
  .how__grid .step:last-child{grid-column:auto;max-width:none}
  .step h3{font-size:27px}
  .step p{font-size:18px}
  .step__badge{right:15px;padding:11px 40px}

  .specialist{padding:0}
  .specialist .container{padding:0}
  .specialist__card{border-radius:0;min-height:0;padding:0;display:block}
  .specialist__card::before,.specialist__card>img:first-child{display:none}
  .specialist__mimg{display:block;width:100%;aspect-ratio:414/339;object-fit:cover}
  .specialist__text{background:#f1f4f7;color:var(--black);max-width:none;padding:32px var(--gutter) 48px;gap:24px}
  .specialist__text p{font-size:16px;color:var(--body)}

  .care__in{gap:24px}
  .care__text{display:contents}
  .care__text .copy{order:1}
  .care__slider{order:2;margin:0 calc(var(--gutter)*-1)}
  .care__text .btn{order:3}
  .care__text p{font-size:16px}

  .videos .h2{text-align:left}
  .videos__grid{grid-template-columns:1fr;gap:48px;margin-top:32px}
  .video{gap:24px}
  .video__thumb{aspect-ratio:366/241}
  .video blockquote{font-size:23px}
  .video cite{font-size:16px}

  .doctor{grid-template-columns:1fr;min-height:0}
  .doctor__img{order:-1;min-height:0;aspect-ratio:414/339}
  .doctor__text{padding:32px var(--gutter) 48px;justify-content:flex-start}
  .doctor__inner{gap:24px}
  .doctor__inner .eyebrow{text-align:center;align-self:stretch;margin-bottom:0}
  .doctor__inner p.body{font-size:16px}

  .faq .h2{text-align:left}
  .faq__list{gap:24px;margin-top:24px}
  .faq details{padding-bottom:12px}
  .faq summary{font-family:var(--f-body);font-weight:700;font-size:18px;line-height:1.5}
  .faq details p{font-family:var(--f-lato);font-size:16px;color:#484848}

  .final__in{gap:32px}
  .final__text .h2{margin-top:16px}
  .final__list{gap:16px}
  .final__list li{font-size:16px;gap:8px;align-items:flex-start}
  .final__rule{display:none}
  .final__phone img{width:39px}
  .final__phone span{font-family:var(--f-lato);font-weight:700;font-size:20px;line-height:1}
  .form{max-width:none;padding:24px}
}
@media (max-width:374px){
  .h2,.h3{font-size:26px}
  .hero h1{font-size:28px}
  .header .btn--white{padding:12px 14px;font-size:14px}
  .header__logo img{width:84px}
  .rating__av{display:none}
  .frow__text .btn,.meds__text .btn{width:100%;padding:20px 24px}
  .btn-play{padding:16px 32px}
}

/* ==========================================================
   WordPress: header menu, footer, form plugins
   ========================================================== */
.header__nav{flex:1;display:flex;justify-content:center}
.menu-primary{display:flex;align-items:center;gap:clamp(16px,2.2vw,32px)}
.menu-primary a{color:var(--white);text-decoration:none;font-weight:600;font-size:clamp(14px,1.11vw,16px);transition:color .2s}
.menu-primary a:hover,.menu-primary .current-menu-item>a{color:#ff9d9d}
.menu-primary .sub-menu{display:none}
.nav-toggle{display:none;background:none;border:0;padding:8px;cursor:pointer;color:var(--white)}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{display:block;width:24px;height:2px;background:currentColor;position:relative;transition:transform .2s}
.nav-toggle span::before,.nav-toggle span::after{content:"";position:absolute;left:0}
.nav-toggle span::before{top:-7px}.nav-toggle span::after{top:7px}
.nav-open .nav-toggle span{background:transparent}
.nav-open .nav-toggle span::before{transform:translateY(7px) rotate(45deg)}
.nav-open .nav-toggle span::after{transform:translateY(-7px) rotate(-45deg)}

.site-footer{background:#111;color:#cfcfcf;padding:clamp(40px,4.44vw,64px) 0 24px;font-size:15px}
.site-footer__top{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-bottom:32px;border-bottom:1px solid #2c2c2c}
.site-footer__logo img{width:clamp(90px,7vw,110px);height:auto}
.menu-footer{display:flex;flex-wrap:wrap;gap:12px 28px}
.menu-footer a{color:#cfcfcf;text-decoration:none}
.menu-footer a:hover{color:var(--white)}
.site-footer .phone span{font-size:20px}
.site-footer .phone img{width:36px}
.site-footer__bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:20px;font-size:14px;color:#9a9a9a}

/* Contact Form 7 / WPForms inside the design's form card */
.form .wpcf7 form,.form .wpforms-form{display:flex;flex-direction:column;gap:12px;margin:0}
.form .wpcf7 p{margin:0}
.form .wpcf7 br{display:none}
.form .wpcf7-form-control-wrap{display:block}
.form .wpcf7 input:not([type=submit]),.form .wpcf7 select,.form .wpcf7 textarea,
.form .wpforms-field input,.form .wpforms-field select,.form .wpforms-field textarea{width:100%!important;max-width:none!important;height:45px;border:1px solid rgba(203,203,203,.85)!important;border-radius:3px!important;padding:12px 14px!important;background:var(--white);font-family:var(--f-body);font-weight:700;font-size:14px!important;color:var(--black);box-shadow:none!important}
.form .wpcf7 textarea,.form .wpforms-field textarea{height:100px}
.form .wpcf7 input::placeholder,.form .wpforms-field input::placeholder{color:#6e6e6e;opacity:1}
.form .wpforms-field{padding:0!important}
.form .wpforms-field-label{display:none!important}
.form .wpcf7-submit,.form .wpforms-submit{width:100%!important;margin-top:15px!important;background:var(--red)!important;color:var(--white)!important;border:0!important;border-radius:12px!important;padding:var(--btn-y) 20px!important;height:auto!important;font-family:var(--f-body)!important;font-weight:700!important;font-size:var(--fs-btn)!important;cursor:pointer;transition:background .2s}
.form .wpcf7-submit:hover,.form .wpforms-submit:hover{background:var(--red-dark)!important}
.form .wpcf7-spinner{position:absolute}
.form .wpcf7-not-valid-tip{font-size:13px;margin-top:4px}
.form .wpcf7-response-output{margin:8px 0 0!important;font-size:14px;border-radius:6px}
.admin-bar .header{top:0}

@media (max-width:991px){
  .nav-toggle{display:block;order:3}
  .header__in{flex-wrap:wrap}
  .header__nav{order:4;flex:0 0 100%;display:none}
  .nav-open .header__nav{display:block}
  .menu-primary{flex-direction:column;align-items:flex-start;gap:0;padding:12px 0 4px}
  .menu-primary li{width:100%;border-top:1px solid #333}
  .menu-primary a{display:block;padding:12px 0;font-size:16px}
  .menu-primary .sub-menu{display:block;padding-left:16px}
}
@media (max-width:767px){
  .header__right{margin-left:auto}
  .site-footer__top{flex-direction:column;align-items:flex-start}
}
