/* ═══════════════════════════════════════════════════════════
   LIVING WATERS PHARMACY v2 — MAIN CSS
   Big fonts · Injection animations · Clean light design
   ═══════════════════════════════════════════════════════════ */

/* ── VARIABLES ── */
:root {
  --white:        #FFFFFF;
  --snow:         #F7FAFB;
  --cloud:        #EEF3F7;
  --ocean:        #0B6BAE;
  --ocean-mid:    #1A8FD1;
  --ocean-light:  #4AAFEA;
  --ocean-pale:   #E4F2FB;
  --teal:         #1BA89C;
  --teal-pale:    #E0F5F3;
  --green:        #3A9E4A;
  --green-pale:   #E7F6EA;
  --ink:          #0D1C2B;
  --ink-mid:      #2C4255;
  --muted:        #6B8098;
  --border:       #D9E5EF;
  --border-light: #EBF2F8;
  --nav-h:        72px;
  --r:            12px;
  --r-lg:         20px;
  --r-xl:         28px;
  --shadow:       0 4px 24px rgba(11,107,174,.1);
  --shadow-lg:    0 12px 48px rgba(11,107,174,.15);
  --shadow-xl:    0 24px 72px rgba(11,107,174,.18);
}

/* ── RESET ── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px}
body{background:var(--white);color:var(--ink);font-family:'Plus Jakarta Sans',system-ui,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.6}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
ul{list-style:none;padding:0}
button{cursor:pointer;border:none;background:none;font-family:inherit}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:var(--cloud)}
::-webkit-scrollbar-thumb{background:var(--ocean-light);border-radius:100px}

/* ── TYPOGRAPHY ── */
h1,h2,h3{font-family:'Fraunces',Georgia,serif;font-weight:300;line-height:1.1;letter-spacing:-.02em;color:var(--ink)}
h1{font-size:clamp(44px,6vw,80px)}
h2{font-size:clamp(32px,4.5vw,60px)}
h3{font-size:clamp(20px,2.5vw,28px);font-weight:400}
em{font-style:italic;color:var(--ocean)}
strong{font-weight:700}
p{line-height:1.75;color:var(--muted);font-size:17px}

/* ── CONTAINER ── */
.lwp-container{max-width:1280px;margin:0 auto;padding:0 56px}

/* ── SECTIONS ── */
.lwp-section{padding:100px 0}
.lwp-section--snow{background:var(--snow)}
.lwp-section--white{background:var(--white)}

.lwp-section__intro{text-align:center;max-width:700px;margin:0 auto 72px}
.lwp-section__intro h2{margin-bottom:20px}
.lwp-section__intro p{font-size:18px}

/* ── EYEBROW ── */
.lwp-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ocean);margin-bottom:20px}
.lwp-eyebrow::before{content:'';width:28px;height:2px;background:var(--ocean);border-radius:100px;flex-shrink:0}
.lwp-eyebrow--light{color:rgba(255,255,255,.75)}
.lwp-eyebrow--light::before{background:rgba(255,255,255,.6)}

/* ── BUTTONS ── */
.lwp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;border-radius:var(--r);transition:all .25s;cursor:pointer;border:2px solid transparent;letter-spacing:.01em;white-space:nowrap;padding:14px 28px;font-size:15px}
.lwp-btn--xl{padding:18px 40px;font-size:17px;border-radius:var(--r-lg)}
.lwp-btn--full{width:100%}
.lwp-btn--ocean{background:var(--ocean);color:white;border-color:var(--ocean)}
.lwp-btn--ocean:hover{background:var(--ocean-mid);transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.lwp-btn--teal{background:var(--teal);color:white;border-color:var(--teal)}
.lwp-btn--teal:hover{background:#169089;transform:translateY(-2px);box-shadow:0 12px 40px rgba(27,168,156,.25)}
.lwp-btn--green{background:var(--green);color:white;border-color:var(--green)}
.lwp-btn--green:hover{background:#2f8a3e;transform:translateY(-2px);box-shadow:0 12px 40px rgba(58,158,74,.25)}
.lwp-btn--white{background:white;color:var(--ocean);border-color:white}
.lwp-btn--white:hover{background:var(--cloud);transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.lwp-btn--ghost-white{background:rgba(255,255,255,.12);color:white;border-color:rgba(255,255,255,.4)}
.lwp-btn--ghost-white:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.7)}
.lwp-btn--outline-ocean{background:transparent;color:var(--ocean);border-color:var(--ocean)}
.lwp-btn--outline-ocean:hover{background:var(--ocean);color:white;transform:translateY(-2px)}
.lwp-btn__spinner{display:none;width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:white;border-radius:50%;animation:lwpSpin .7s linear infinite}

/* ── NAV ── */
.lwp-nav{position:fixed;top:0;left:0;right:0;z-index:900;height:var(--nav-h);background:rgba(255,255,255,.93);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-light);transition:box-shadow .3s}
.lwp-nav.scrolled{box-shadow:0 2px 20px rgba(11,107,174,.1)}
.lwp-nav__wrap{max-width:1400px;margin:0 auto;padding:0 56px;height:100%;display:flex;align-items:center;gap:24px}
.lwp-nav__logo{flex-shrink:0;display:flex;align-items:center;line-height:0}
.lwp-nav__logo img,.lwp-nav__logo .custom-logo{height:52px!important;width:auto!important;max-height:52px!important;display:block!important;object-fit:contain}
.lwp-nav__logo a,.lwp-nav__logo a.custom-logo-link{display:flex;align-items:center;line-height:0}
.lwp-nav__links{display:flex;align-items:center;gap:2px;list-style:none;flex:1}
.lwp-nav__links a{color:var(--ink-mid);font-size:14px;font-weight:500;padding:8px 16px;border-radius:var(--r);transition:all .2s;white-space:nowrap}
.lwp-nav__links a:hover{background:var(--ocean-pale);color:var(--ocean)}
.lwp-nav__cta{background:var(--ocean);color:white;font-size:14px;font-weight:700;padding:10px 24px;border-radius:var(--r);transition:all .2s;flex-shrink:0;white-space:nowrap}
.lwp-nav__cta:hover{background:var(--ocean-mid);transform:translateY(-1px);box-shadow:var(--shadow)}
.lwp-burger{display:none;flex-direction:column;gap:5px;padding:8px;border-radius:var(--r)}
.lwp-burger span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px;transition:all .25s}

/* ── MARQUEE ── */
.lwp-marquee{background:var(--ocean);padding:18px 0;overflow:hidden}
.lwp-marquee__track{display:flex;gap:56px;animation:lwpScroll 28s linear infinite;white-space:nowrap}
.lwp-marquee__item{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:rgba(255,255,255,.85);letter-spacing:.04em;flex-shrink:0}
.lwp-marquee__item svg{color:rgba(255,255,255,.6)}

/* ── HOW IT WORKS — STEPS ── */
.lwp-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.lwp-step{background:white;border-radius:var(--r-xl);padding:36px 28px;border:1.5px solid var(--border-light);position:relative;overflow:hidden;transition:all .3s}
.lwp-step::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;transform:scaleX(0);transform-origin:left;transition:transform .4s}
.lwp-step--blue::before{background:linear-gradient(90deg,var(--ocean-light),var(--ocean))}
.lwp-step--teal::before{background:linear-gradient(90deg,#4dc8c5,var(--teal))}
.lwp-step:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}
.lwp-step:hover::before{transform:scaleX(1)}
.lwp-step__num{font-family:'Fraunces',serif;font-size:56px;font-weight:300;color:var(--border);line-height:1;margin-bottom:12px;letter-spacing:-.04em}
.lwp-step__icon{font-size:36px;margin-bottom:20px}
.lwp-step h3{font-size:22px;margin-bottom:12px;color:var(--ink)}
.lwp-step p{font-size:15px;line-height:1.7;color:var(--muted)}
.lwp-step__time{display:inline-block;margin-top:20px;background:var(--cloud);color:var(--ocean);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:6px 14px;border-radius:100px}

/* ── MEDICATIONS ── */
.lwp-meds{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.lwp-med{background:white;border:1.5px solid var(--border-light);border-radius:var(--r-xl);overflow:hidden;transition:all .35s;position:relative}
.lwp-med:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl)}
.lwp-med--featured{border-color:var(--teal)}
.lwp-med__best-badge{position:absolute;top:20px;right:20px;background:var(--teal);color:white;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:6px 16px;border-radius:100px;z-index:3}
.lwp-med__header{padding:36px 32px 28px;position:relative;overflow:hidden;min-height:160px;display:flex;flex-direction:column;justify-content:space-between}
.lwp-med__header--ocean{background:linear-gradient(135deg,var(--ocean) 0%,var(--ocean-mid) 100%)}
.lwp-med__header--teal{background:linear-gradient(135deg,var(--teal) 0%,#0e8a7f 100%)}
.lwp-med__header--green{background:linear-gradient(135deg,var(--green) 0%,#2d7a3a 100%)}
.lwp-med__tag{display:inline-block;background:rgba(255,255,255,.2);color:white;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:5px 14px;border-radius:100px}

/* Injection animation inside med card */
.lwp-med__inject-anim{position:absolute;right:20px;bottom:0;height:130px;opacity:.85}
.lwp-inject{height:100%;width:auto;filter:drop-shadow(0 4px 12px rgba(0,0,0,.2))}
.lwp-liquid{animation:lwpLiquidFill 3s ease-in-out infinite alternate}

.lwp-med__body{padding:28px 32px 32px}
.lwp-med__name{font-size:clamp(26px,3vw,38px);margin-bottom:8px;color:var(--ink)}
.lwp-med__aka{font-size:13px;color:var(--muted);margin-bottom:24px;line-height:1.5}

.lwp-med__stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}
.lwp-med__stat{background:var(--snow);border:1px solid var(--border-light);border-radius:var(--r);padding:16px 14px}
.lwp-med__stat .v{display:block;font-family:'Fraunces',serif;font-size:26px;font-weight:300;color:var(--ocean);letter-spacing:-.02em;line-height:1}
.lwp-med__stat--teal .v{color:var(--teal)}
.lwp-med__stat--green .v{color:var(--green)}
.lwp-med__stat .k{display:block;font-size:11px;color:var(--muted);margin-top:4px;font-weight:500}

.lwp-med__bullets{display:flex;flex-direction:column;gap:10px;margin-bottom:28px}
.lwp-med__bullets li{font-size:14px;color:var(--ink-mid);padding-left:22px;position:relative;line-height:1.5}
.lwp-med__bullets li::before{content:'✓';position:absolute;left:0;color:var(--teal);font-weight:700;font-size:13px}

.lwp-med__price{display:flex;align-items:baseline;gap:6px;margin-bottom:20px}
.lwp-med__price .amount{font-family:'Fraunces',serif;font-size:52px;font-weight:300;color:var(--ink);letter-spacing:-.04em;line-height:1}
.lwp-med__price .amount sup{font-size:26px;vertical-align:top;margin-top:10px}
.lwp-med__price .unit{font-size:14px;color:var(--muted)}

/* ── WHY US ── */
.lwp-why{background:linear-gradient(160deg,#04284D 0%,#0B6BAE 60%,#0e8a7f 100%);padding:100px 0}
.lwp-why__grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}

.lwp-big-stat{margin-bottom:48px}
.lwp-big-stat__num{font-family:'Fraunces',serif;font-size:clamp(88px,12vw,140px);font-weight:300;color:white;line-height:1;letter-spacing:-.05em;display:flex;align-items:flex-start}
.lwp-big-stat__num .pct{font-size:.4em;margin-top:.15em;margin-left:4px;color:rgba(255,255,255,.65)}
.lwp-big-stat__label{font-size:18px;color:rgba(255,255,255,.65);margin-top:8px;line-height:1.5}

.lwp-why__tiles{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lwp-why-tile{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:var(--r-lg);padding:22px 20px;backdrop-filter:blur(8px)}
.lwp-why-tile strong{display:block;font-family:'Fraunces',serif;font-size:30px;font-weight:300;color:white;letter-spacing:-.03em;line-height:1;margin-bottom:4px}
.lwp-why-tile span{font-size:12px;color:rgba(255,255,255,.55);font-weight:500}

.lwp-why__content .lwp-eyebrow{color:rgba(255,255,255,.7)}
.lwp-why__content .lwp-eyebrow::before{background:rgba(255,255,255,.5)}
.lwp-why__content h2{color:white}

.lwp-features{display:flex;flex-direction:column;margin-top:36px}
.lwp-feature{display:flex;gap:20px;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.1);transition:padding-left .3s}
.lwp-feature:first-child{padding-top:0}
.lwp-feature:last-child{border-bottom:none}
.lwp-feature:hover{padding-left:10px}
.lwp-feature__icon{width:48px;height:48px;border-radius:var(--r);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:22px}
.lwp-feature__icon--ocean{background:rgba(74,175,234,.25)}
.lwp-feature__icon--teal{background:rgba(77,200,197,.2)}
.lwp-feature__icon--green{background:rgba(100,200,112,.2)}
.lwp-feature h3{font-size:20px;color:white;margin-bottom:8px;font-weight:400}
.lwp-feature p{font-size:14px;color:rgba(255,255,255,.6);line-height:1.7}

/* ── PROMISES ── */
.lwp-promises{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.lwp-promise{background:white;border:1.5px solid var(--border-light);border-radius:var(--r-xl);padding:36px 28px;transition:all .3s}
.lwp-promise:hover{border-color:var(--ocean-light);box-shadow:var(--shadow);transform:translateY(-6px);background:white}
.lwp-promise__icon{font-size:40px;display:block;margin-bottom:20px}
.lwp-promise h3{font-size:22px;margin-bottom:12px;color:var(--ink)}
.lwp-promise p{font-size:14px;color:var(--muted);line-height:1.7;margin-bottom:16px}
.lwp-promise__badge{display:inline-block;background:var(--ocean-pale);color:var(--ocean);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:6px 16px;border-radius:100px}

/* ── TESTIMONIALS ── */
.lwp-testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.lwp-tcard{background:white;border:1.5px solid var(--border-light);border-radius:var(--r-xl);padding:36px 32px;transition:all .3s;position:relative;overflow:hidden}
.lwp-tcard::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--ocean-light),var(--teal));transform:scaleX(0);transform-origin:left;transition:transform .4s}
.lwp-tcard:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl)}
.lwp-tcard:hover::before{transform:scaleX(1)}
.lwp-tcard__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.lwp-tcard__stars{color:#F5A623;font-size:18px;letter-spacing:2px}
.lwp-tcard__loss{background:var(--ocean-pale);color:var(--ocean);font-size:18px;font-weight:700;padding:8px 18px;border-radius:100px;font-family:'Fraunces',serif}
.lwp-tcard__text{font-size:16px;line-height:1.75;color:var(--ink-mid);margin-bottom:28px}
.lwp-tcard__foot{display:flex;align-items:center;gap:14px}
.lwp-tcard__av{width:46px;height:46px;border-radius:50%;background:var(--ocean-pale);display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-size:18px;color:var(--ocean);flex-shrink:0}
.lwp-tcard__name{font-size:15px;font-weight:700;color:var(--ink)}
.lwp-tcard__loc{font-size:12px;color:var(--muted);margin-top:2px}
.lwp-tcard__med{margin-left:auto;font-size:12px;color:var(--muted);font-weight:600;letter-spacing:.06em;text-transform:uppercase}

/* ── PRICING ── */
.lwp-pricing-hdr{text-align:center;max-width:700px;margin:0 auto 72px}
.lwp-pricing-hdr h2{margin-bottom:20px}
.lwp-pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:1100px;margin:0 auto}
.lwp-pcard{background:var(--snow);border:1.5px solid var(--border-light);border-radius:var(--r-xl);padding:48px 40px;transition:all .35s;position:relative}
.lwp-pcard:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl);border-color:var(--ocean-light);background:white}
.lwp-pcard--featured{background:var(--ocean);border-color:var(--ocean)}
.lwp-pcard--featured .lwp-pcard__tier{color:rgba(255,255,255,.6)}
.lwp-pcard--featured .lwp-pcard__price{color:white}
.lwp-pcard--featured .lwp-pcard__per{color:rgba(255,255,255,.55)}
.lwp-pcard--featured .lwp-pcard__rule{border-color:rgba(255,255,255,.15)}
.lwp-pcard--featured .lwp-pcard__feats li{color:rgba(255,255,255,.85)}
.lwp-pcard--featured .lwp-pcard__feats li::before{color:rgba(255,255,255,.7)}
.lwp-pcard__badge{position:absolute;top:-16px;left:50%;transform:translateX(-50%);background:var(--green);color:white;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:7px 22px;border-radius:100px;white-space:nowrap}
.lwp-pcard__tier{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:20px}
.lwp-pcard__price{font-family:'Fraunces',serif;font-size:72px;font-weight:300;color:var(--ink);letter-spacing:-.05em;line-height:1}
.lwp-pcard__price sup{font-size:32px;vertical-align:top;margin-top:12px}
.lwp-pcard__per{font-size:15px;color:var(--muted);margin-top:4px;margin-bottom:28px}
.lwp-pcard__rule{border:none;border-top:1px solid var(--border);margin-bottom:28px}
.lwp-pcard__feats{display:flex;flex-direction:column;gap:14px;margin-bottom:40px}
.lwp-pcard__feats li{font-size:15px;color:var(--ink-mid);padding-left:24px;position:relative;line-height:1.5}
.lwp-pcard__feats li::before{content:'✓';position:absolute;left:0;color:var(--ocean);font-weight:700;font-size:14px}

/* ── CTA BAND ── */
.lwp-cta-band{background:linear-gradient(135deg,var(--ocean) 0%,var(--teal) 100%);padding:100px 0;position:relative;overflow:hidden}
.lwp-cta-band::before{content:'';position:absolute;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 70%);top:-200px;right:-100px;pointer-events:none}
.lwp-cta-band::after{content:'';position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.06) 0%,transparent 70%);bottom:-120px;left:80px;pointer-events:none}
.lwp-cta-band__inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:80px;align-items:center}
.lwp-cta-band__inner h2{color:white;font-size:clamp(32px,4.5vw,60px)}
.lwp-cta-band__inner h2 em{color:rgba(255,255,255,.8)}
.lwp-cta-band__inner p{color:rgba(255,255,255,.7);font-size:18px;line-height:1.7;margin-top:16px;max-width:560px}
.lwp-cta-band__btns{display:flex;flex-direction:column;gap:14px;flex-shrink:0}

/* ── CONTACT PAGE ── */
.lwp-inner-hero{padding:calc(var(--nav-h) + 64px) 0 80px;position:relative;overflow:hidden}
.lwp-inner-hero--ocean{background:linear-gradient(135deg,#04284D 0%,var(--ocean) 100%)}
.lwp-inner-hero--teal{background:linear-gradient(135deg,#063D3A 0%,var(--teal) 100%)}
.lwp-inner-hero .lwp-eyebrow{color:rgba(255,255,255,.7)}
.lwp-inner-hero .lwp-eyebrow::before{background:rgba(255,255,255,.5)}
.lwp-inner-hero h1{color:white;margin-bottom:16px}
.lwp-inner-hero p{color:rgba(255,255,255,.7);font-size:18px;max-width:640px}

.lwp-contact-grid{display:grid;grid-template-columns:1fr 380px;gap:64px;padding-top:80px;padding-bottom:80px;align-items:start}

/* AJAX Form */
.lwp-contact-form-wrap{background:white;border:1.5px solid var(--border-light);border-radius:var(--r-xl);padding:48px}
.lwp-contact-form-wrap h2{font-size:clamp(28px,3vw,40px);margin-bottom:10px}
.lwp-contact-form-sub{font-size:16px;color:var(--muted);margin-bottom:36px}

.lwp-form__row{display:grid;gap:20px;margin-bottom:20px}
.lwp-form__row--2{grid-template-columns:1fr 1fr}
.lwp-form__group{display:flex;flex-direction:column;gap:8px;margin-bottom:0}
.lwp-form__label{font-size:14px;font-weight:700;color:var(--ink-mid);letter-spacing:.02em}
.lwp-form__label .req{color:var(--ocean)}
.lwp-form__input{width:100%;padding:14px 18px;border:1.5px solid var(--border);border-radius:var(--r);font-family:'Plus Jakarta Sans',sans-serif;font-size:16px;color:var(--ink);background:white;transition:border-color .2s,box-shadow .2s;outline:none;line-height:1.5}
.lwp-form__input:focus{border-color:var(--ocean);box-shadow:0 0 0 3px rgba(11,107,174,.12)}
.lwp-form__input.is-error{border-color:#E24B4A}
.lwp-form__select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 7L11 1' stroke='%236B8098' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.lwp-form__textarea{resize:vertical;min-height:140px;line-height:1.6}
.lwp-form__error{font-size:12px;color:#E24B4A;font-weight:600;min-height:18px}
.lwp-form__submit{margin-top:8px;position:relative}
.lwp-form__submit.is-loading .lwp-btn__text{opacity:0}
.lwp-form__submit.is-loading .lwp-btn__spinner{display:block;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.lwp-form__message{margin-top:16px;padding:16px 20px;border-radius:var(--r);font-size:15px;font-weight:600;display:none}
.lwp-form__message.is-success{display:block;background:var(--green-pale);color:var(--green);border:1.5px solid rgba(58,158,74,.25)}
.lwp-form__message.is-error{display:block;background:#FCEBEB;color:#A32D2D;border:1.5px solid rgba(227,75,74,.25)}

/* Contact sidebar cards */
.lwp-contact-info{display:flex;flex-direction:column;gap:20px}
.lwp-info-card{background:white;border:1.5px solid var(--border-light);border-radius:var(--r-lg);padding:28px 24px}
.lwp-info-card__icon{font-size:32px;margin-bottom:14px;display:block}
.lwp-info-card h3{font-size:20px;margin-bottom:10px;color:var(--ink)}
.lwp-info-card p{font-size:14px;color:var(--muted);line-height:1.7}
.lwp-info-card--promise{background:var(--ocean);border-color:var(--ocean)}
.lwp-info-card--promise h3{color:white}
.lwp-checklist{display:flex;flex-direction:column;gap:10px}
.lwp-checklist li{color:rgba(255,255,255,.85);font-size:14px;font-weight:500}
.lwp-info-list{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.lwp-info-list li{font-size:14px}
.lwp-info-list a{color:var(--ocean);font-weight:600}
.lwp-info-list a:hover{text-decoration:underline}

/* ── MEDICATION DETAIL PAGE ── */
.lwp-detail-list{display:flex;flex-direction:column;gap:12px;margin-top:8px}
.lwp-detail-list li{font-size:15px;color:var(--ink-mid);padding-left:24px;position:relative;line-height:1.5}
.lwp-detail-list li::before{content:'✓';position:absolute;left:0;color:var(--teal);font-weight:700;font-size:13px}

/* ── FOOTER ── */
.lwp-footer{background:var(--ink);padding:80px 80px 0}
.lwp-footer__inner{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:60px;max-width:1280px;margin:0 auto;padding-bottom:0}
.lwp-footer__brand p{font-size:13px;color:rgba(255,255,255,.38);line-height:1.85;max-width:300px;margin-top:16px;font-weight:300}
.lwp-footer__logo-link{display:inline-flex;align-items:center;line-height:0;margin-bottom:4px}
.lwp-footer__logo-link img,.lwp-footer__logo-link .custom-logo{height:72px!important;width:auto!important;max-height:72px!important;display:block!important}
.lwp-footer__logo-link a,.lwp-footer__logo-link .custom-logo-link{display:inline-flex;align-items:center;line-height:0}
.lwp-footer__badges{display:flex;flex-direction:column;gap:8px;margin-top:20px}
.lwp-footer__badges span{font-size:12px;color:rgba(255,255,255,.45);font-weight:500}
.lwp-footer__col h4{font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--ocean-light);margin-bottom:22px}
.lwp-footer__col ul{display:flex;flex-direction:column;gap:12px}
.lwp-footer__col a{color:rgba(255,255,255,.38);font-size:14px;font-weight:300;transition:color .2s}
.lwp-footer__col a:hover{color:white}
.lwp-footer__bottom{max-width:1280px;margin:48px auto 0;padding:28px 0 36px;border-top:1px solid rgba(255,255,255,.07);display:flex;justify-content:space-between;align-items:center;gap:24px}
.lwp-footer__bottom p{font-size:12px;color:rgba(255,255,255,.25)}
.lwp-disclaimer{font-size:11px!important;color:rgba(255,255,255,.2)!important;max-width:560px;line-height:1.6!important}

/* ── PROSE (inner pages) ── */
.lwp-prose{font-size:17px;line-height:1.8;color:var(--ink-mid)}
.lwp-prose h2{font-size:clamp(24px,3vw,36px);margin:48px 0 16px}
.lwp-prose h3{font-size:22px;margin:36px 0 12px}
.lwp-prose p{margin-bottom:20px;color:var(--muted)}
.lwp-prose ul{padding-left:20px;list-style:disc;margin-bottom:20px}
.lwp-prose li{margin-bottom:8px;color:var(--muted)}
.lwp-prose strong{color:var(--ink)}

/* ── SCROLL REVEAL ── */
.lwp-reveal{opacity:0;transform:translateY(28px);transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1)}
.lwp-reveal.is-visible{opacity:1;transform:none}

/* ── KEYFRAMES ── */
@keyframes lwpRise{to{opacity:1;transform:translateY(0)}}
@keyframes lwpFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes lwpScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes lwpGrow{from{width:0}}
@keyframes lwpSpin{to{transform:rotate(360deg)}}
@keyframes lwpPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.75)}}
@keyframes lwpSyringeFloat{0%,100%{transform:translateY(0) rotate(0deg)}33%{transform:translateY(-20px) rotate(2deg)}66%{transform:translateY(8px) rotate(-1.5deg)}}
@keyframes lwpMolecule{0%,100%{transform:translate(0,0) scale(1)}25%{transform:translate(20px,-30px) scale(1.2)}50%{transform:translate(-10px,-50px) scale(.9)}75%{transform:translate(-30px,-20px) scale(1.1)}}
@keyframes lwpLiquidFill{0%{opacity:.6}100%{opacity:1}}

/* ── MOBILE NAV ── */
.lwp-nav--open .lwp-nav__links{display:flex;flex-direction:column;position:fixed;top:var(--nav-h);left:0;right:0;background:white;padding:20px;gap:4px;box-shadow:var(--shadow-lg);border-top:1px solid var(--border-light);z-index:899}
.lwp-nav--open .lwp-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.lwp-nav--open .lwp-burger span:nth-child(2){opacity:0}
.lwp-nav--open .lwp-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ── RESPONSIVE ── */
@media(max-width:1200px){
  .lwp-container,.lwp-nav__wrap,.lwp-footer{padding-left:40px;padding-right:40px}
  .lwp-meds{grid-template-columns:1fr 1fr}
  .lwp-hero__cards{display:none}
}
@media(max-width:1024px){
  .lwp-steps{grid-template-columns:1fr 1fr}
  .lwp-why__grid{grid-template-columns:1fr}
  .lwp-contact-grid{grid-template-columns:1fr}
  .lwp-footer__inner{grid-template-columns:1fr 1fr;gap:40px}
  .lwp-cta-band__inner{grid-template-columns:1fr}
  .lwp-cta-band__btns{flex-direction:row;flex-wrap:wrap}
}
@media(max-width:768px){
  .lwp-container,.lwp-nav__wrap{padding-left:24px;padding-right:24px}
  .lwp-footer{padding:60px 24px 0}
  .lwp-footer__inner{grid-template-columns:1fr;gap:36px}
  .lwp-footer__bottom{flex-direction:column;text-align:center;gap:12px;padding:24px 0 28px}
  .lwp-nav__links{display:none}
  .lwp-burger{display:flex}
  .lwp-nav__cta{font-size:13px;padding:9px 18px}
  .lwp-section{padding:72px 0}
  .lwp-hero__content{padding:64px 24px 64px}
  .lwp-hero__actions{flex-direction:column;align-items:flex-start}
  .lwp-steps{grid-template-columns:1fr}
  .lwp-meds{grid-template-columns:1fr}
  .lwp-promises{grid-template-columns:1fr 1fr}
  .lwp-testimonials{grid-template-columns:1fr}
  .lwp-pricing{grid-template-columns:1fr;max-width:440px}
  .lwp-why__tiles{grid-template-columns:1fr 1fr}
  .lwp-form__row--2{grid-template-columns:1fr}
}
@media(max-width:480px){
  .lwp-promises{grid-template-columns:1fr}
  .lwp-hero__trust{flex-direction:column;gap:12px}
  .lwp-btn--xl{padding:16px 28px;font-size:16px}
}

/* ═══════════════════════════════════════════════
   HERO v2 — Cinematic full-bleed visual
   ═══════════════════════════════════════════════ */

/* Override old hero — full bleed dark background */
/* ══ HERO — photo background ══ */
.lwp-hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  overflow: hidden;
  background: #060D1C;
}

/* Full-bleed photo layer */
.lwp-hero__photo {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: 68% center;
  animation: lwpHeroZoom 20s ease-in-out infinite alternate;
  will-change: transform;
}
@keyframes lwpHeroZoom {
  0%   { transform: scale(1.05) translateX(0); }
  100% { transform: scale(1.09) translateX(-1%); }
}

/* Directional gradient — dark left, photo right */
.lwp-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(105deg,
      rgba(6,13,28,0.97) 0%,
      rgba(6,13,28,0.93) 22%,
      rgba(6,13,28,0.82) 38%,
      rgba(6,13,28,0.55) 54%,
      rgba(6,13,28,0.22) 68%,
      rgba(6,13,28,0.06) 80%,
      transparent 100%
    ),
    linear-gradient(to top,
      rgba(6,13,28,0.65) 0%,
      transparent 38%
    );
  pointer-events: none;
  z-index: 1;
}

/* Particle layer */
.lwp-hero__particles {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  overflow: hidden;
}
.lwp-particle {
  position: absolute;
  border-radius: 50%;
  background: rgba(27,168,156,0.55);
  animation: lwpParticleRise linear infinite;
  will-change: transform, opacity;
}
@keyframes lwpParticleRise {
  0%   { transform: translateY(100vh) scale(0); opacity: 0; }
  8%   { opacity: 1; }
  92%  { opacity: 0.25; }
  100% { transform: translateY(-40px) scale(1); opacity: 0; }
}

/* Inner layout */
.lwp-hero__inner {
  z-index: 3;
  flex: 1;
  display: grid;
  grid-template-columns: minmax(0, 560px) 1fr;
  gap: 40px;
  align-items: center;
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
  padding: calc(var(--nav-h) + 60px) 56px 80px;
  box-sizing: border-box;
}

/* LEFT: text column */
.lwp-hero__text {
  display: flex;
  flex-direction: column;
  gap: 26px;
}

/* Eyebrow */
.lwp-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  background: rgba(255,255,255,0.09);
  border: 1px solid rgba(255,255,255,0.18);
  backdrop-filter: blur(10px);
  padding: 10px 20px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.85);
  width: fit-content;
  opacity: 0;
  animation: lwpRise .9s .1s cubic-bezier(.16,1,.3,1) forwards;
}

/* Headline — constrained so it never gets silly-wide */
.lwp-hero__title {
  color: #fff;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 300;
  font-size: clamp(36px, 4.6vw, 64px);
  line-height: 1.08;
  letter-spacing: -.03em;
  max-width: 540px;
  opacity: 0;
  animation: lwpRise .9s .25s cubic-bezier(.16,1,.3,1) forwards;
}
.lwp-hero__title em {
  font-style: italic;
  background: linear-gradient(135deg, #1BA89C, #4AAFEA);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Cycling bullets */
.lwp-hero__cycling {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 84px;
  opacity: 0;
  animation: lwpRise .9s .38s cubic-bezier(.16,1,.3,1) forwards;
  transition: opacity .4s ease;
}
.lwp-cycle-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: clamp(14px, 1.35vw, 16px);
  color: rgba(255,255,255,0.72);
  line-height: 1.55;
  max-width: 480px;
  opacity: 0;
  transform: translateY(10px);
  animation: lwpCycleIn .45s ease forwards;
}
.lwp-cycle-item:nth-child(1) { animation-delay: .05s }
.lwp-cycle-item:nth-child(2) { animation-delay: .12s }
.lwp-cycle-item:nth-child(3) { animation-delay: .19s }
@keyframes lwpCycleIn { to { opacity:1; transform:none } }
.lwp-cycle-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #1BA89C;
  flex-shrink: 0;
  margin-top: 6px;
}

/* CTAs */
.lwp-hero__actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  opacity: 0;
  animation: lwpRise .9s .52s cubic-bezier(.16,1,.3,1) forwards;
}

/* Trust row */
.lwp-hero__trust {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  opacity: 0;
  animation: lwpRise .9s .66s cubic-bezier(.16,1,.3,1) forwards;
}
.lwp-trust-item {
  display: flex;
  align-items: center;
  gap: 7px;
  color: rgba(255,255,255,0.72);
  font-size: 13.5px;
  font-weight: 500;
}
.lwp-trust-item svg { flex-shrink: 0; }

/* RIGHT: floating stat cards — desktop */
.lwp-hero__stats {
  position: absolute;
  bottom: 48px;
  right: 48px;
  z-index: 5;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 12px;
  opacity: 0;
  animation: lwpRise 1s .8s cubic-bezier(.16,1,.3,1) forwards;
}
.lwp-stat-float {
  background: rgba(6, 13, 28, 0.82);
  border: 1px solid rgba(27, 168, 156, 0.4);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 14px;
  padding: 16px 18px;
  text-align: center;
  width: 120px;
  flex-shrink: 0;
  box-shadow: 0 10px 30px rgba(0,0,0,0.35);
}
.lwp-stat-float--1 { animation: lwpStatBob 5s 0s ease-in-out infinite; }
.lwp-stat-float--2 { animation: lwpStatBob 5s 1.6s ease-in-out infinite; }
.lwp-stat-float--3 { animation: lwpStatBob 5s 3.2s ease-in-out infinite; }
@keyframes lwpStatBob {
  0%,100% { transform: translateY(0); }
  50%     { transform: translateY(-7px); }
}
.lwp-stat-float__num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 40px;
  font-weight: 400;
  color: #ffffff;
  line-height: 1;
  letter-spacing: -.02em;
  margin-bottom: 6px;
}
.lwp-stat-float__num span {
  font-size: 24px;
  color: #3FD9C8;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 400;
}
.lwp-stat-float__lbl {
  font-size: 11.5px;
  color: rgba(255,255,255,0.78);
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
  line-height: 1.45;
  font-family: 'Plus Jakarta Sans', sans-serif;
}

/* Mobile stat strip — hidden on desktop */

/* Pulse dot */
.lwp-pulse-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #4CFF91;
  flex-shrink: 0;
  position: relative;
}
.lwp-pulse-dot::after {
  content: '';
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  background: rgba(76,255,145,0.3);
  animation: lwpPulse 2s ease-out infinite;
}

/* Scroll hint */
.lwp-scroll-hint {
  position: absolute;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 4;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: rgba(255,255,255,.3);
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
  animation: lwpScrollBob 2.2s ease-in-out infinite;
}
@keyframes lwpScrollBob {
  0%,100% { transform: translateX(-50%) translateY(0); }
  50%     { transform: translateX(-50%) translateY(7px); }
}
.lwp-scroll-dot {
  animation: lwpScrollDot 2.2s ease-in-out infinite;
}
@keyframes lwpScrollDot {
  0%,100% { transform: translateY(0); opacity: .8; }
  50%     { transform: translateY(7px); opacity: .2; }
}

/* ── RESPONSIVE ── */

/* Tablet: 900px — collapse to single column */
@media (max-width: 900px) {
  .lwp-hero__inner {
    grid-template-columns: 1fr;
    padding: calc(var(--nav-h) + 40px) 36px 60px;
    gap: 0;
  }
  /* Cards move from absolute bottom-right to a centered row below the text */
  .lwp-hero__stats {
    position: static;
    display: flex !important;
    flex-direction: row !important;
    justify-content: flex-start;
    margin-top: 32px;
    bottom: auto;
    right: auto;
  }
  .lwp-hero__title {
    font-size: clamp(32px, 5.5vw, 52px);
    max-width: 100%;
  }
  .lwp-hero__photo { background-position: 70% center; }
  .lwp-hero__overlay {
    background:
      linear-gradient(to bottom,
        rgba(6,13,28,0.88) 0%,
        rgba(6,13,28,0.78) 35%,
        rgba(6,13,28,0.6) 60%,
        rgba(6,13,28,0.82) 100%
      );
  }
  .lwp-scroll-hint { display: none; }
}

/* Mobile: 560px */
@media (max-width: 560px) {
  .lwp-hero__inner {
    padding: calc(var(--nav-h) + 28px) 22px 48px;
  }
  .lwp-hero__eyebrow {
    font-size: 11px;
    padding: 8px 16px;
  }
  .lwp-hero__title {
    font-size: clamp(28px, 8vw, 40px);
  }
  .lwp-hero__text { gap: 20px; }
  .lwp-hero__cycling { min-height: 70px; }
  .lwp-cycle-item { font-size: 14px; }
  .lwp-hero__actions { flex-direction: column; align-items: flex-start; gap: 12px; }
  .lwp-btn--xl { padding: 15px 26px; font-size: 15px; }
  .lwp-hero__trust { gap: 10px; }
  .lwp-trust-item { font-size: 13px; }
  /* Shrink cards to fit small screens */
  .lwp-hero__stats { gap: 8px; margin-top: 24px; flex-wrap: wrap; }
  .lwp-stat-float { width: calc(33.333% - 6px); min-width: 0; padding: 12px 8px; }
  .lwp-stat-float__num { font-size: 26px !important; }
  .lwp-stat-float__num span { font-size: 16px !important; }
  .lwp-stat-float__lbl { font-size: 9.5px !important; }
}



/* ── Skip link (keyboard / screen-reader accessibility) ── */
.lwp-skip{
  position:absolute;left:-9999px;top:0;z-index:9999;
  background:#0B6BAE;color:#fff;padding:12px 20px;
  border-radius:0 0 8px 0;font-weight:700;text-decoration:none;
}
.lwp-skip:focus{left:0;outline:3px solid #1BA89C;outline-offset:2px}
