/* ============================================================
   FLOWSTRONG-USA — css/style.css | flowstrong-usa.com
   Theme: Forest Slate #1b3a4b + Warm White #fafcfa + Teal Mint #00b4a0 + Amber Gold #e8a020
   Fonts: Nunito Sans (rounded modern authority) + Cormorant Garamond (refined editorial serif)
   Font size: 18px base | Dark magazine 3-col hero + evidence editorial + vertical timeline + masonry reviews
   UNIQUE: different from all 6 prior FlowStrong sites
   All CSS content: Unicode escapes only. Zero bad CSS comments.
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --slate:  #1b3a4b;
  --sl-dk:  #0f2535;
  --sl-lt:  #274f65;
  --sl-md:  #1f4558;
  --sl-brd: #2e5a70;
  --teal:   #00b4a0;
  --te-dk:  #008a79;
  --te-lt:  #33c9b8;
  --te-pal: #e6f9f7;
  --te-xpl: #f2fcfb;
  --gold:   #e8a020;
  --go-dk:  #b87800;
  --go-lt:  #f0b840;
  --go-pal: #fef6e4;
  --go-xpl: #fffcf5;
  --warm:   #fafcfa;
  --wa-md:  #f0f5f0;
  --wa-brd: #dde8dd;
  --text:   #0a1a14;
  --muted:  #1a3028;
  --faint:  #3a5848;
  --border: #c8ddd8;
  --bdr-lt: #dceee8;

  --sh-1:0 2px 8px rgba(15,37,53,.10);
  --sh-2:0 6px 24px rgba(15,37,53,.16);
  --sh-3:0 14px 48px rgba(15,37,53,.22);
  --sh-te:0 5px 28px rgba(0,180,160,.28);
  --sh-go:0 5px 22px rgba(232,160,32,.24);
  --r-xs:4px;--r-sm:8px;--r-md:14px;--r-lg:22px;--r-xl:28px;
}
html{scroll-behavior:smooth}
body{font-family:'Nunito Sans',sans-serif;font-size:18px;color:var(--text);background:var(--warm);overflow-x:hidden;line-height:1.82}
h1,h2,h3,h4,h5{font-family:'Cormorant Garamond',serif;letter-spacing:.2px}
em{font-style:italic;font-family:'Cormorant Garamond',serif}
blockquote{font-family:'Cormorant Garamond',serif;font-style:italic}
strong{font-family:'Nunito Sans',sans-serif;font-weight:700}

/* NAV */
nav{position:sticky;top:0;z-index:1000;background:var(--sl-dk);padding:0 28px;height:66px;border-bottom:3px solid var(--teal);box-shadow:0 4px 24px rgba(10,26,20,.80)}
.nav-inner{max-width:1440px;margin:0 auto;height:100%;display:flex;align-items:center;justify-content:space-between;gap:16px}
.nav-logo{text-decoration:none;display:flex;align-items:baseline;gap:0;flex-shrink:0}
.nl-flow{font-family:'Cormorant Garamond',serif;font-size:1.7rem;font-weight:600;color:var(--warm)}
.nl-strong{font-family:'Cormorant Garamond',serif;font-size:1.7rem;font-weight:700;color:var(--teal)}
.nl-mark{font-size:.58rem;color:var(--gold);vertical-align:super}
.nav-links{display:flex;align-items:center;gap:2px;list-style:none}
.nav-links a{color:rgba(250,252,250,.38);text-decoration:none;font-family:'Nunito Sans',sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.3px;transition:color .2s;white-space:nowrap;padding:6px 10px}
.nav-links a:hover{color:var(--te-lt)}
.nav-cta{background:var(--teal)!important;color:var(--sl-dk)!important;font-weight:800!important;font-size:.70rem!important;padding:10px 18px!important;border-radius:var(--r-xs)!important;transition:filter .2s!important}
.nav-cta:hover{filter:brightness(1.10)!important}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;background:none;border:none}
.hamburger span{width:26px;height:2px;background:var(--teal);display:block;border-radius:2px}
.mobile-menu{display:none;flex-direction:column;background:var(--sl-md);position:absolute;top:69px;left:0;right:0;padding:22px 28px;gap:16px;z-index:999;border-bottom:3px solid var(--teal)}
.mobile-menu.open{display:flex}
.mobile-menu a{color:rgba(250,252,250,.48);text-decoration:none;font-size:.96rem;font-weight:600;padding:6px 0;border-bottom:1px solid rgba(0,180,160,.14)}
.mob-cta{background:var(--teal)!important;color:var(--sl-dk)!important;text-align:center;padding:14px!important;border-radius:var(--r-xs)!important;font-weight:800!important;margin-top:8px;border:none!important}

/* BUTTONS */
.cta-teal{display:inline-block;background:linear-gradient(135deg,var(--te-dk) 0%,var(--teal) 50%,var(--te-lt) 100%);color:var(--sl-dk);font-family:'Nunito Sans',sans-serif;font-weight:800;font-size:.94rem;padding:15px 42px;border-radius:var(--r-xs);text-decoration:none;transition:filter .25s,transform .2s,box-shadow .2s;box-shadow:var(--sh-te);letter-spacing:.3px}
.cta-teal:hover{filter:brightness(1.08);transform:translateY(-3px);box-shadow:0 10px 36px rgba(0,180,160,.44)}
.cta-xl{font-size:1.04rem;padding:18px 52px}
.cta-ghost-gold{display:inline-block;color:var(--gold);font-family:'Nunito Sans',sans-serif;font-weight:700;font-size:.92rem;text-decoration:none;padding:14px 20px;border:2px solid var(--gold);border-radius:var(--r-xs);transition:all .2s}
.cta-ghost-gold:hover{background:var(--gold);color:var(--sl-dk)}

/* ETAGS */
.etag{display:inline-block;font-family:'Nunito Sans',sans-serif;font-size:.56rem;font-weight:800;letter-spacing:3.5px;text-transform:uppercase;border-bottom:2px solid currentColor;padding-bottom:4px;margin-bottom:16px}
.etag-teal{color:var(--teal);border-color:var(--teal)}
.etag-gold{color:var(--gold);border-color:var(--gold)}

/* HERO: Dark Forest Slate magazine 3-col */
.hero{background:var(--sl-dk);overflow:hidden;border-bottom:3px solid var(--teal);position:relative;min-height:92vh}
.hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.hbg-texture{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,rgba(0,180,160,.04) 0%,transparent 60%)}
.hbg-glow{position:absolute;bottom:-100px;right:-100px;width:500px;height:500px;background:radial-gradient(circle,rgba(0,180,160,.06) 0%,transparent 60%);filter:blur(60px)}
.hero-inner{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:1fr 480px 1fr;min-height:92vh;align-items:center;position:relative;z-index:1;gap:0}

/* Hero left: big editorial headline */
.hero-left{padding:56px 44px 56px 0;display:flex;flex-direction:column;gap:18px;justify-content:center;max-width:640px;margin-left:auto}
.hl-overline{display:flex;align-items:center;gap:10px;font-family:'Nunito Sans',sans-serif;font-size:.52rem;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:rgba(250,252,250,.24)}
.hlo-line{flex:1;height:1px;background:rgba(0,180,160,.22)}
.hero-h1{font-family:'Cormorant Garamond',serif;display:flex;flex-direction:column;line-height:.90}
.h1-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.h1-one{font-size:2.2rem;color:rgba(250,252,250,.32);font-weight:300;display:block}
.h1-capsule{font-size:4.0rem;color:var(--teal);font-weight:700;display:block;line-height:.88}
.h1-capsule2{font-size:4.0rem;color:var(--warm);font-weight:700;display:block;line-height:.88}
.h1-six{font-size:2.2rem;color:rgba(250,252,250,.32);font-weight:300;display:block;margin-top:8px}
.h1-ingredients{font-size:3.2rem;color:var(--gold);display:block;line-height:.92}
.h1-forty{font-size:2.8rem;color:var(--warm);font-weight:600;display:block;margin-top:8px}
.h1-of{font-size:1.8rem;color:rgba(250,252,250,.30);font-weight:300;display:inline-block}
.h1-clinical{font-size:2.8rem;color:var(--teal);display:block;line-height:.94}
.hl-rating{display:flex;align-items:center;gap:8px}
.hlr-stars{color:var(--gold);font-size:1.0rem;letter-spacing:2px}
.hlr-text{font-family:'Nunito Sans',sans-serif;font-size:.72rem;font-weight:700;color:rgba(250,252,250,.32)}
.hl-ctas{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.hl-certifications{display:flex;flex-wrap:wrap;gap:8px}
.hlc-item{display:flex;align-items:center;gap:6px;font-family:'Nunito Sans',sans-serif;font-size:.62rem;font-weight:700;color:rgba(250,252,250,.24);background:rgba(250,252,250,.04);border:1px solid rgba(250,252,250,.06);padding:5px 10px;border-radius:var(--r-xs)}

/* Hero center: product image */
.hero-center{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding:44px 0}
.hcr-glow{position:absolute;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(0,180,160,.10) 0%,transparent 60%);filter:blur(40px);pointer-events:none}
.hcr-ring1{position:absolute;width:340px;height:340px;border-radius:50%;border:1px solid rgba(0,180,160,.12);animation:pr1 6s ease-in-out infinite;pointer-events:none}
.hcr-ring2{position:absolute;width:400px;height:400px;border-radius:50%;border:1px solid rgba(232,160,32,.06);animation:pr1 9s ease-in-out infinite reverse;pointer-events:none}
@keyframes pr1{0%,100%{transform:scale(1);opacity:.4}50%{transform:scale(1.05);opacity:.8}}
.hcr-img-link{display:block;position:relative;z-index:2}
.hcr-img{width:420px;height:auto;object-fit:contain;filter:drop-shadow(0 20px 60px rgba(10,26,20,.90)) drop-shadow(0 0 40px rgba(0,180,160,.10));transition:transform .5s;display:block;margin:0 auto}
.hcr-img-link:hover .hcr-img{transform:scale(1.04) translateY(-10px)}

/* Hero right: editorial sub-col */
.hero-right{padding:56px 44px;display:flex;flex-direction:column;gap:18px;justify-content:center}
.hrr-editorial{display:flex;flex-direction:column;gap:14px}
.hrr-editorial p{font-family:'Nunito Sans',sans-serif;font-size:.90rem;line-height:1.80;color:rgba(250,252,250,.38)}
.hrr-editorial strong{color:rgba(250,252,250,.80)}
.hrr-stats{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;background:rgba(250,252,250,.04);border:1px solid rgba(0,180,160,.14);border-radius:var(--r-lg);overflow:hidden;margin-top:4px}
.hrrs-row{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 10px}
.hrrsr-n{font-family:'Cormorant Garamond',serif;font-size:2.2rem;color:var(--teal);line-height:1;font-weight:700}
.hrrsr-l{font-family:'Nunito Sans',sans-serif;font-size:.56rem;font-weight:700;color:rgba(250,252,250,.28);text-transform:uppercase;letter-spacing:1px;text-align:center}
.hrrs-div{width:1px;height:50px;background:rgba(0,180,160,.14)}
.hrr-warn{font-family:'Nunito Sans',sans-serif;font-size:.66rem;color:rgba(250,252,250,.22);text-align:center}

/* SECTION INTROS */
.clin-intro,.ing-intro,.trans-intro,.rev-intro,.prot-intro,.faq-intro{padding:56px 28px 38px;text-align:center;border-top:3px solid}
.clin-intro{background:var(--warm);border-color:var(--teal)}
.clin-intro .clini-inner h2{font-family:'Cormorant Garamond',serif;font-size:2.2rem;color:var(--text);margin-bottom:14px;line-height:1.18}
.clin-intro .clini-inner p{font-family:'Nunito Sans',sans-serif;font-size:1.0rem;color:var(--faint)}
.ing-intro{background:var(--go-xpl);border-color:var(--gold)}
.ing-intro .ingi-inner h2{font-family:'Cormorant Garamond',serif;font-size:2.2rem;color:var(--text);margin-bottom:14px;line-height:1.18}
.ing-intro .ingi-inner p{font-family:'Nunito Sans',sans-serif;font-size:1.0rem;color:var(--faint)}
.trans-intro{background:var(--te-xpl);border-color:var(--teal)}
.trans-intro .transi-inner h2{font-family:'Cormorant Garamond',serif;font-size:2.2rem;color:var(--text);margin-bottom:14px;line-height:1.18}
.trans-intro .transi-inner p{font-family:'Nunito Sans',sans-serif;font-size:1.0rem;color:var(--faint)}
.rev-intro{background:var(--sl-dk);border-color:var(--teal)}
.rev-intro .rvii-inner h2{font-family:'Cormorant Garamond',serif;font-size:2.2rem;color:var(--warm);margin-bottom:14px;line-height:1.18}
.rev-intro .rvii-inner p{font-family:'Nunito Sans',sans-serif;font-size:1.0rem;color:rgba(250,252,250,.36)}
.prot-intro{background:var(--warm);border-color:var(--gold)}
.prot-intro .proti-inner h2{font-family:'Cormorant Garamond',serif;font-size:2.2rem;color:var(--text);margin-bottom:14px;line-height:1.18}
.prot-intro .proti-inner p{font-family:'Nunito Sans',sans-serif;font-size:1.0rem;color:var(--faint)}
.faq-intro{background:var(--go-xpl);border-color:var(--teal)}
.faq-intro .fqi-inner h2{font-family:'Cormorant Garamond',serif;font-size:2.2rem;color:var(--text);margin-bottom:14px;line-height:1.18}
.faq-intro .fqi-inner p{font-family:'Nunito Sans',sans-serif;font-size:1.0rem;color:var(--faint)}
.clini-inner,.ingi-inner,.transi-inner,.rvii-inner,.proti-inner,.fqi-inner{max-width:900px;margin:0 auto}

/* CLINICAL EVIDENCE EDITORIAL */
.clin-section{background:var(--warm);padding:64px 44px}
.clin-grid{max-width:1100px;margin:0 auto;display:flex;flex-direction:column;gap:6px}
.cg-entry{display:grid;grid-template-columns:80px 1fr;align-items:start;gap:0;background:var(--wa-md);border:1px solid var(--wa-brd);border-left:5px solid var(--teal);border-radius:var(--r-xl);overflow:hidden;transition:transform .2s}
.cge-alt{border-left-color:var(--gold)}
.cg-entry:hover{transform:translateX(4px)}
.cge-num{font-family:'Cormorant Garamond',serif;font-size:5.0rem;color:rgba(0,180,160,.08);font-weight:700;line-height:1;padding:20px 0 0 16px;font-style:italic}
.cge-alt .cge-num{color:rgba(232,160,32,.08)}
.cge-body{padding:24px 28px 28px;display:flex;flex-direction:column;gap:12px}
.cge-body h3{font-family:'Cormorant Garamond',serif;font-size:1.06rem;color:var(--text);line-height:1.26}
.cge-body p{font-family:'Nunito Sans',sans-serif;font-size:.86rem;line-height:1.80;color:var(--faint);flex:1}
.cge-tag{display:flex;flex-wrap:wrap;gap:6px;padding-top:8px;border-top:1px solid var(--wa-brd)}
.cge-tag span{font-family:'Nunito Sans',sans-serif;font-size:.58rem;font-weight:800;color:var(--teal);background:var(--te-pal);border:1px solid rgba(0,180,160,.16);padding:4px 9px;border-radius:var(--r-xs)}
.cge-alt .cge-tag span{color:var(--go-dk);background:var(--go-pal);border-color:rgba(232,160,32,.14)}

/* PRICE BAND */
.price-band{background:linear-gradient(135deg,var(--sl-dk) 0%,var(--sl-md) 100%);padding:52px 28px 36px;text-align:center;border-top:3px solid var(--teal)}
.pb-inner{max-width:900px;margin:0 auto}
.pb-inner h2{font-family:'Cormorant Garamond',serif;font-size:2.2rem;color:var(--warm);margin-bottom:14px;line-height:1.18}
.pb-inner p{font-family:'Nunito Sans',sans-serif;font-size:1.0rem;color:rgba(250,252,250,.36)}
.price-sec{background:var(--sl-dk);padding:44px}
.price-link{display:block}
.price-img-lg{width:100%;max-width:1000px;height:auto;border-radius:var(--r-sm);display:block;margin:0 auto;transition:transform .3s}
.price-link:hover .price-img-lg{transform:scale(1.01)}

/* INGREDIENT TIMELINE — vertical */
.ing-section{background:var(--go-xpl);padding:64px 44px}
.ing-timeline{max-width:1000px;margin:0 auto;display:flex;flex-direction:column;gap:0}
.it-item{display:grid;grid-template-columns:72px 1fr;align-items:start;gap:0;position:relative}
.iti-marker-col{display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}
.iti-marker{width:48px;height:48px;border-radius:50%;background:var(--teal);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--sh-te);position:relative;z-index:2}
.iti-marker-alt{background:var(--gold)}
.itim-num{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:700;color:var(--sl-dk)}
.iti-connector{width:2px;flex:1;min-height:40px;background:linear-gradient(to bottom,var(--teal),var(--gold));margin:0 auto}
.it-alt .iti-connector{background:linear-gradient(to bottom,var(--gold),var(--teal))}
.it-item:last-child .iti-connector{display:none}
.iti-body{padding:0 0 48px 24px}
.itib-role{font-family:'Nunito Sans',sans-serif;font-size:.54rem;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:var(--teal);margin-bottom:8px}
.itibr-alt{color:var(--go-dk)}
.iti-body h3{font-family:'Cormorant Garamond',serif;font-size:1.10rem;color:var(--text);line-height:1.24;margin-bottom:10px}
.iti-body p{font-family:'Nunito Sans',sans-serif;font-size:.86rem;line-height:1.80;color:var(--faint)}

/* TRANSPARENCY BEFORE/AFTER */
.trans-section{background:var(--te-xpl);padding:64px 44px}
.trans-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 60px 1fr;align-items:start;gap:0}
.tg-col{background:var(--warm);border:1.5px solid var(--border);border-radius:var(--r-xl);padding:28px;box-shadow:var(--sh-2);display:flex;flex-direction:column;gap:14px}
.tg-before{border-top:5px solid rgba(200,60,60,.40)}
.tg-after{border-top:5px solid var(--teal)}
.tgc-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:4px}
.tgch-icon{width:36px;height:36px;border-radius:50%;background:rgba(200,60,60,.10);color:rgba(200,60,60,.70);display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;flex-shrink:0;margin-top:3px}
.tgch-yes{background:var(--te-pal);color:var(--te-dk)}
.tgc-header h3{font-family:'Cormorant Garamond',serif;font-size:1.04rem;color:var(--text);line-height:1.24}
.tg-col p{font-family:'Nunito Sans',sans-serif;font-size:.86rem;line-height:1.80;color:var(--faint)}
.tg-arrow{display:flex;align-items:center;justify-content:center;font-size:2.0rem;color:var(--teal);padding-top:80px}

/* REVIEWS — masonry 2+1 */
.rev-section{background:var(--sl-dk);padding:64px 44px}
.rev-masonry{max-width:1300px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.rm-col-left,.rm-col-right{display:flex;flex-direction:column;gap:16px}
.rm-card{background:rgba(250,252,250,.04);border:1px solid rgba(0,180,160,.12);border-radius:var(--r-xl);padding:26px;display:flex;flex-direction:column;gap:14px;transition:transform .2s;position:relative;overflow:hidden}
.rm-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--te-dk),var(--teal),var(--te-lt))}
.rm-featured{border-color:rgba(232,160,32,.20);background:rgba(232,160,32,.03)}
.rm-featured::before{background:linear-gradient(90deg,var(--go-dk),var(--gold),var(--go-lt))}
.rm-large{border-color:rgba(0,180,160,.20)}
.rm-card:hover{transform:translateY(-3px)}
.rmc-stars{color:var(--gold);font-size:.90rem;letter-spacing:2px}
.rmc-location{font-family:'Nunito Sans',sans-serif;font-size:.60rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:rgba(250,252,250,.24)}
.rm-card blockquote{font-family:'Cormorant Garamond',serif;font-size:.96rem;line-height:1.78;color:rgba(250,252,250,.50);font-style:italic;flex:1}
.rm-card blockquote::before,.rm-card blockquote::after{content:none}
.rmc-auth{display:flex;align-items:center;gap:12px;border-top:1px solid rgba(0,180,160,.10);padding-top:14px;margin-top:auto}
.rmca-img{width:50px;height:50px;border-radius:50%;object-fit:cover;border:2px solid var(--teal);flex-shrink:0}
.rm-featured .rmca-img{border-color:var(--gold)}
.rmc-auth div{display:flex;flex-direction:column;gap:3px}
.rmc-auth strong{font-family:'Cormorant Garamond',serif;font-size:1.04rem;color:var(--warm);font-weight:700}
.rmc-auth span{font-family:'Nunito Sans',sans-serif;font-size:.62rem;color:rgba(250,252,250,.26)}

/* 60-DAY PROTOCOL — phase cards */
.prot-section{background:var(--warm);padding:64px 44px}
.prot-phases{max-width:1100px;margin:0 auto;display:flex;flex-direction:column;gap:0}
.pp-phase{background:var(--wa-md);border:1.5px solid var(--wa-brd);border-left:5px solid var(--teal);border-radius:var(--r-xl);padding:0;display:grid;grid-template-columns:120px 1fr;overflow:hidden;transition:transform .2s}
.pp-feat{border-left-color:var(--gold)}
.pp-phase:hover{transform:translateX(4px)}
.ppp-header{background:rgba(0,180,160,.06);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:28px 14px;text-align:center;border-right:1px solid var(--wa-brd)}
.pp-feat .ppp-header{background:rgba(232,160,32,.06)}
.ppph-num{font-family:'Cormorant Garamond',serif;font-size:3.8rem;color:var(--teal);font-weight:700;line-height:1}
.ppph-gold{color:var(--gold)}
.ppph-label{font-family:'Nunito Sans',sans-serif;font-size:.60rem;font-weight:700;color:var(--faint);text-align:center;line-height:1.5}
.ppph-label em{display:block;color:var(--teal);font-style:italic;font-family:'Cormorant Garamond',serif;font-size:.80rem}
.pp-feat .ppph-label em{color:var(--gold)}
.ppp-body{padding:24px 28px;display:flex;flex-direction:column;gap:12px}
.ppp-body h3{font-family:'Cormorant Garamond',serif;font-size:1.04rem;color:var(--text);line-height:1.26}
.ppp-body p{font-family:'Nunito Sans',sans-serif;font-size:.86rem;line-height:1.80;color:var(--faint);flex:1}
.ppp-expect{display:flex;align-items:flex-start;gap:8px;background:var(--te-xpl);border-left:3px solid var(--teal);padding:10px 14px;border-radius:0 var(--r-xs) var(--r-xs) 0;font-family:'Nunito Sans',sans-serif;font-size:.76rem;color:var(--faint);margin-top:4px}
.pppe-gold{background:var(--go-xpl);border-left-color:var(--gold)}
.pppe-label{font-weight:800;color:var(--te-dk);white-space:nowrap;flex-shrink:0}
.pppe-gold .pppe-label{color:var(--go-dk)}
.pp-connector{padding:4px 60px}
.ppc-line{height:2px;background:linear-gradient(90deg,var(--teal),var(--gold))}

/* GUARANTEE */
.guar-section{background:linear-gradient(135deg,var(--te-xpl) 0%,var(--go-xpl) 100%);padding:64px 44px;border-top:3px solid var(--teal);border-bottom:3px solid var(--gold)}
.guar-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:280px 1fr;gap:56px;align-items:start}
.guar-img{width:100%;max-width:240px;height:auto;display:block;margin:0 auto;filter:drop-shadow(0 10px 28px rgba(0,180,160,.14))}
.guar-right h2{font-family:'Cormorant Garamond',serif;font-size:2.1rem;color:var(--text);line-height:1.18;margin-bottom:16px}
.guar-right p{font-family:'Nunito Sans',sans-serif;font-size:.94rem;line-height:1.82;color:var(--muted);margin-bottom:14px}
.guar-trust{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.gt-item{font-family:'Nunito Sans',sans-serif;font-size:.66rem;font-weight:700;color:var(--te-dk);background:var(--te-pal);border:1px solid rgba(0,180,160,.16);padding:6px 14px;border-radius:var(--r-xs);display:flex;align-items:center;gap:6px}

/* FAQ */
.faq-section{background:var(--go-xpl);padding:56px 44px}
.faq-list{max-width:960px;margin:0 auto;display:flex;flex-direction:column;gap:8px}
.faq-item{background:var(--warm);border:1.5px solid var(--wa-brd);border-radius:var(--r-sm);overflow:hidden;box-shadow:var(--sh-1)}
.faq-q{width:100%;background:none;border:none;text-align:left;padding:18px 24px;font-family:'Cormorant Garamond',serif;font-size:1.06rem;color:var(--text);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px;transition:background .2s;line-height:1.28}
.faq-q:hover{background:var(--te-xpl)}
.faq-arr{font-size:1.7rem;font-weight:300;transition:transform .3s;color:var(--teal);flex-shrink:0;line-height:1;font-family:'Nunito Sans',sans-serif}
.faq-ans{display:none;padding:0 24px 18px;border-top:1px solid var(--wa-brd)}
.faq-tldr{font-family:'Nunito Sans',sans-serif;font-size:.88rem;background:var(--te-xpl);border-left:3px solid var(--teal);padding:12px 16px;border-radius:0 var(--r-xs) var(--r-xs) 0;line-height:1.72;color:var(--text);margin-top:12px;display:block}
.faq-item.open .faq-ans{display:block}
.faq-item.open .faq-arr{transform:rotate(45deg);color:var(--gold)}
.faq-item.open .faq-q{background:var(--te-xpl)}

/* FINAL CTA */
.cta-final{background:var(--sl-dk);padding:88px 28px;text-align:center;border-top:4px solid var(--teal);position:relative;overflow:hidden}
.ctaf-bg{position:absolute;inset:0;pointer-events:none}
.ctafbg-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(0,180,160,.08) 0%,transparent 55%);filter:blur(60px)}
.ctafbg-texture{position:absolute;inset:0;background:radial-gradient(rgba(0,180,160,.04) 1px,transparent 1px);background-size:28px 28px}
.ctaf-inner{position:relative;z-index:1;max-width:840px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:14px}
.ctaf-eye{font-family:'Nunito Sans',sans-serif;font-size:.52rem;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:rgba(250,252,250,.16)}
.ctaf-inner h2{font-family:'Cormorant Garamond',serif;font-size:3.0rem;color:var(--warm);line-height:1.06;text-align:center}
.ctafh-start{display:block;font-style:italic;color:rgba(250,252,250,.40);font-size:2.0rem}
.ctafh-feel{display:block;font-size:3.0rem;color:var(--warm)}
.ctafh-diff{display:block;font-size:3.2rem;color:var(--teal);font-weight:700}
.ctafh-with{display:block;font-size:1.6rem;color:rgba(250,252,250,.30);font-weight:300;font-style:italic}
.ctafh-brand{display:block;font-size:3.8rem;font-weight:700;line-height:1.0}
.ctafh-strong{color:var(--teal)}
.ctafh-tm{font-size:1.1rem;vertical-align:super;color:var(--gold)}
.ctaf-img{max-width:320px;margin:0 auto}
.ctaf-product-img{width:100%;height:auto;filter:drop-shadow(0 14px 44px rgba(10,26,20,.90));transition:transform .4s;display:block}
.ctaf-img:hover .ctaf-product-img{transform:scale(1.06) translateY(-10px)}
.ctaf-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px}
.ctaf-trust span{font-family:'Nunito Sans',sans-serif;font-size:.58rem;font-weight:700;color:rgba(250,252,250,.18);white-space:nowrap;letter-spacing:.5px}

/* FOOTER */
footer{background:var(--sl-dk);border-top:4px solid var(--teal)}
.footer-strip{background:rgba(0,0,0,.20);border-bottom:1px solid rgba(0,180,160,.12);padding:14px 28px}
.fs-inner{max-width:1440px;margin:0 auto;display:flex;align-items:center;justify-content:center;flex-wrap:wrap}
.fsi-item{display:flex;align-items:center;gap:8px;padding:7px 18px;font-family:'Nunito Sans',sans-serif;font-size:.62rem;font-weight:700;color:rgba(250,252,250,.20)}
.fsi-div{width:1px;height:20px;background:rgba(0,180,160,.16);flex-shrink:0}
.footer-main{padding:46px 44px;border-bottom:1px solid rgba(0,180,160,.08)}
.footer-grid{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:38px;align-items:start}
.footer-logo{text-decoration:none;display:flex;align-items:baseline;gap:0;margin-bottom:8px}
.fll-flow{font-family:'Cormorant Garamond',serif;font-size:2.0rem;font-weight:600;color:var(--warm)}
.fll-strong{font-family:'Cormorant Garamond',serif;font-size:2.0rem;font-weight:700;color:var(--teal)}
.fll-tm{font-size:.58rem;color:var(--gold);vertical-align:super}
.fg-tagline{font-family:'Nunito Sans',sans-serif;font-size:.58rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--teal);margin-bottom:14px;opacity:.60}
.fg-desc{font-family:'Nunito Sans',sans-serif;font-size:.80rem;line-height:1.70;color:rgba(250,252,250,.16);margin-bottom:16px}
.fg-chips{display:flex;flex-wrap:wrap;gap:6px}
.fg-chips span{background:rgba(0,180,160,.10);border:1px solid rgba(0,180,160,.18);color:var(--te-lt);font-family:'Nunito Sans',sans-serif;font-size:.60rem;font-weight:700;padding:4px 10px;border-radius:var(--r-xs)}
.fg-nav h5{font-family:'Nunito Sans',sans-serif;font-size:.56rem;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-bottom:16px;padding-bottom:7px;border-bottom:1px solid rgba(232,160,32,.12);opacity:.70}
.fg-nav ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:12px}
.fg-nav ul li a{color:rgba(250,252,250,.20);text-decoration:none;font-family:'Nunito Sans',sans-serif;font-size:.84rem;font-weight:600;transition:color .2s;display:flex;align-items:center;gap:6px}
.fg-nav ul li a::before{content:'\203A';color:var(--teal)}
.fg-nav ul li a:hover{color:var(--warm)}
.fg-cta-wrap{margin-top:20px}
.fg-order-btn{display:inline-block;background:var(--teal);color:var(--sl-dk);font-family:'Nunito Sans',sans-serif;font-weight:800;font-size:.88rem;padding:12px 24px;border-radius:var(--r-xs);text-decoration:none;transition:filter .2s}
.fg-order-btn:hover{filter:brightness(1.08)}
.fgg-box{background:rgba(0,180,160,.08);border:1px solid rgba(0,180,160,.16);border-radius:var(--r-lg);padding:20px;text-align:center}
.fgg-icon{font-size:2.2rem;display:block;margin-bottom:10px}
.fgg-box strong{font-family:'Cormorant Garamond',serif;font-size:1.1rem;color:var(--warm);display:block;margin-bottom:8px;font-weight:700}
.fgg-box p{font-family:'Nunito Sans',sans-serif;font-size:.76rem;color:rgba(250,252,250,.26);line-height:1.60}
.footer-legal{max-width:1440px;margin:0 auto;padding:16px 44px 22px;text-align:center}
.footer-legal p{font-family:'Nunito Sans',sans-serif;font-size:.68rem;color:rgba(250,252,250,.10);line-height:1.68;margin-bottom:8px}
.footer-copy{font-size:.66rem;margin-top:10px;padding-top:10px;border-top:1px solid rgba(0,180,160,.08)}
.footer-copy a{color:rgba(250,252,250,.20);text-decoration:none}
.footer-copy a:hover{color:var(--teal);text-decoration:underline}

/* FADE */
.fade-up{opacity:0;transform:translateY(26px);transition:opacity .60s ease,transform .60s ease}
.fade-up.visible{opacity:1;transform:translateY(0)}
.fade-in{opacity:0;transform:translateY(14px);animation:hFd .75s ease both}
@keyframes hFd{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}

/* RESPONSIVE */
@media(max-width:1200px){
  .hero-inner{grid-template-columns:1fr 400px 1fr;padding:0 28px}
  .footer-grid{grid-template-columns:1fr 1fr}
  .fg-brand{grid-column:1/-1}
  .fg-guarantee{grid-column:1/-1}
}
@media(max-width:960px){
  .hero-inner{grid-template-columns:1fr;min-height:auto}
  .hero-left{align-items:center;text-align:center;padding:44px 28px 24px;margin-left:0;max-width:100%}
  .hl-overline{justify-content:center}
  .hl-ctas{justify-content:center}
  .hl-certifications{justify-content:center}
  .hero-center{padding:24px}
  .hero-right{padding:24px 28px 44px;align-items:center;text-align:center}
  .hrr-editorial p{text-align:left}
  .cg-entry{grid-template-columns:1fr}
  .cge-num{display:none}
  .trans-grid{grid-template-columns:1fr}
  .tg-arrow{display:none}
  .rev-masonry{grid-template-columns:1fr}
  .pp-phase{grid-template-columns:90px 1fr}
  .guar-inner{grid-template-columns:1fr;text-align:center}
  .footer-grid{grid-template-columns:1fr;gap:20px}
  .hcr-img{width:300px}
}
@media(max-width:640px){
  nav{padding:0 18px}
  .nav-links{display:none}
  .hamburger{display:flex}
  .hero-left{padding:36px 22px 20px}
  .h1-capsule,.h1-capsule2{font-size:3.0rem}
  .h1-ingredients{font-size:2.4rem}
  .h1-forty,.h1-clinical{font-size:2.2rem}
  .clin-section,.ing-section,.trans-section,.rev-section,.prot-section,.guar-section,.faq-section,.price-sec,.cta-final{padding:44px 22px}
  .footer-main,.footer-legal{padding:26px 22px}
  .ctafh-feel,.ctafh-diff{font-size:2.4rem}
  .ctafh-brand{font-size:2.8rem}
  .pp-phase{grid-template-columns:1fr}
  .iti-marker-col{width:48px}
  .ppp-header{flex-direction:row;padding:16px 20px;border-right:none;border-bottom:1px solid var(--wa-brd);justify-content:flex-start;gap:14px}
  .clin-intro,.ing-intro,.trans-intro,.rev-intro,.prot-intro,.faq-intro,.price-band{padding:40px 22px 26px}
}