/* ===================================================================
   JELLY LEAN (jellyylean.com) — custom design system
   Weight-management GUMMY / jelly-format supplement. DISTINCT from:
     - Jelly Boost (jellysboost.com): berry-purple + Fredoka/Mulish + droplet
     - all 4 soda sites (blue/orange/teal/dark-charcoal)
   THIS ONE: fresh cherry/raspberry "gummy jar" theme — raspberry-red +
   soft blush + lime-green pop + warm cream.
   Palette: rasp #d62a48 | rasp-deep #a81f39 | blush #ffd9e0 | lime #7fbf3f
            lime-deep #5fa02a | cream #fff7f4 | tint #ffe7ea | ink #3a1620
            mute #987680 | line #f3d6da
   Display: 'Baloo 2' -> NO (used by soda-burn). Use 'Chewy'? too heavy for body.
            -> Headings 'Paytone One' (rounded chunky, unused) fallback sans.
   Body:    'Nunito' (soft, friendly, unused so far)
   Class prefix: jl-
   Signature: gummy bear cluster / rounded jelly beans on a curve
   NOTE: grids minmax(0,1fr); flex min-width:0; imgs min(NNNpx,100%);
         hero mobile order H1->img->rest.
   ============ SENSITIVE: WEIGHT-LOSS + BLOOD-SUGAR ============
   WEIGHT-LOSS: no miracle/guaranteed; NO specific weight/measurement/timeline
     numbers (review's "3-4 weeks"/"waist measurement" avoided); ED-safe;
     "as part of diet & exercise". Review already balanced -> keep honest tone
     incl. cons (limited whole-formula clinical evidence, results vary,
     proprietary blend, mild digestive effects).
   BLOOD-SUGAR: ACV + Apple Pectin + BHB can affect blood sugar -> dedicated
     safety section; diabetes disclaim; diabetes/thyroid/BP-med + doctor
     consult; NO reading numbers.
   OTHER: review's 8.4/10 rating softened to generic ~4.5; author persona
     "Richard Miller" NOT reproduced. Digestive side-effects (ACV/fiber ->
     bloating/gas) disclosed honestly. Pregnancy/nursing/under-18 warnings.
     "FDA Registered Facility". 60-day guarantee. Gummy format.
     Meta <150. Aff link third-party tracking redirect (flagged once).
=================================================================== */

:root{
  --rasp:#d62a48;
  --rasp-deep:#a81f39;
  --blush:#ffd9e0;
  --lime:#7fbf3f;
  --lime-deep:#5fa02a;
  --cream:#fff7f4;
  --tint:#ffe7ea;
  --ink:#3a1620;
  --mute:#987680;
  --line:#f3d6da;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'Nunito','Segoe UI',sans-serif;
  color:#3a1620;
  background:var(--cream);
  margin:0;
  font-size:17px;
  line-height:1.72;
}
h1,h2,h3,h4,.jl-display{
  font-family:'Paytone One','Segoe UI',sans-serif;
  font-weight:400;
  line-height:1.2;
  color:#5a1226;
}
.jl-eyebrow{
  font-family:'Nunito','Segoe UI',sans-serif;
  text-transform:uppercase;
  letter-spacing:2.5px;
  font-weight:800;
  font-size:.76rem;
  color:var(--rasp);
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;height:auto;display:block;}
.container{max-width:1150px;margin:0 auto;padding:0 24px;}

/* ---------- Buttons ---------- */
.jl-btn{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--rasp);
  color:#fff;
  font-family:'Nunito',sans-serif;font-weight:800;font-size:1.02rem;
  padding:15px 34px;border:none;cursor:pointer;border-radius:30px;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
  box-shadow:0 10px 26px rgba(214,42,72,.32);
}
.jl-btn:hover{transform:translateY(-2px);background:var(--rasp-deep);box-shadow:0 14px 32px rgba(214,42,72,.44);}
.jl-btn-lime{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--lime);color:#fff;
  font-family:'Nunito',sans-serif;font-weight:800;font-size:1.02rem;
  padding:15px 34px;border:none;cursor:pointer;border-radius:30px;transition:transform .15s ease,background .15s ease;
}
.jl-btn-lime:hover{background:var(--lime-deep);transform:translateY(-2px);}
.jl-btn-ghost{
  display:inline-flex;align-items:center;gap:10px;
  background:transparent;border:2px solid rgba(255,255,255,.6);color:#fff;
  font-family:'Nunito',sans-serif;font-weight:800;font-size:1rem;
  padding:13px 28px;border-radius:30px;transition:all .15s ease;
}
.jl-btn-ghost:hover{background:#fff;color:var(--rasp);border-color:#fff;}

/* ---------- Navbar ---------- */
.jl-nav{position:sticky;top:0;z-index:1000;background:rgba(255,247,244,.95);backdrop-filter:blur(8px);padding:14px 0;border-bottom:1px solid var(--line);}
.jl-nav .container{display:flex;align-items:center;justify-content:space-between;}
.jl-brand{display:flex;align-items:center;gap:10px;font-family:'Paytone One',sans-serif;color:#5a1226;font-size:1.5rem;}
.jl-brand .mark{width:30px;height:30px;flex:0 0 auto;}
.jl-brand span{color:var(--rasp);}
.jl-menu{display:flex;gap:28px;list-style:none;margin:0;padding:0;align-items:center;}
.jl-menu a{color:#5a1226;font-weight:700;font-size:.92rem;opacity:.82;}
.jl-menu a:hover{opacity:1;color:var(--rasp);}
.jl-toggle{display:none;background:none;border:none;color:#5a1226;font-size:1.8rem;cursor:pointer;}
@media(max-width:940px){
  .jl-menu{position:absolute;top:100%;left:0;right:0;background:var(--cream);flex-direction:column;gap:0;border-top:1px solid var(--line);display:none;}
  .jl-menu.open{display:flex;}
  .jl-menu li{width:100%;border-bottom:1px solid var(--line);}
  .jl-menu a{display:block;padding:16px 24px;}
  .jl-nav-cta{display:none;}
  .jl-toggle{display:block;}
}

/* ---------- Hero ---------- */
.jl-hero{
  background:
    radial-gradient(ellipse at 82% 20%, rgba(127,191,63,.22) 0%, transparent 52%),
    linear-gradient(155deg, var(--rasp) 0%, var(--rasp-deep) 100%);
  color:#fff;padding:60px 0 0;position:relative;overflow:hidden;
}
.jl-hero::after{
  content:'';position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.5;
  background-image:
    radial-gradient(circle at 12% 76%, rgba(255,217,224,.5) 0 22px, transparent 23px),
    radial-gradient(circle at 90% 64%, rgba(127,191,63,.35) 0 16px, transparent 17px),
    radial-gradient(circle at 70% 14%, rgba(255,217,224,.4) 0 13px, transparent 14px);
  background-repeat:no-repeat;
}
.jl-hero-inner{display:flex;align-items:center;gap:48px;flex-wrap:wrap;position:relative;z-index:2;}
.jl-hero-text{flex:1 1 440px;min-width:0;}
.jl-hero-a,.jl-hero-b{width:100%;}
.jl-hero-text h1{font-size:3.1rem;color:#fff;margin:16px 0 20px;}
.jl-hero-text h1 em{font-style:normal;color:var(--lime);}
.jl-hero-text p{color:#ffe0e6;font-size:1.1rem;max-width:520px;}
.jl-hero-media{flex:1 1 280px;min-width:0;text-align:center;}
.jl-hero-media img{max-width:min(300px,100%);margin:0 auto;filter:drop-shadow(0 22px 40px rgba(0,0,0,.35));}
.jl-hero-btns{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px;}
.jl-hero-rate{display:flex;align-items:center;gap:12px;margin-top:24px;color:#ffe0e6;font-weight:700;}
.jl-hero-rate .stars{color:var(--lime);letter-spacing:2px;font-size:1.2rem;}
@media(max-width:940px){
  .jl-hero-text{display:contents;}
  .jl-hero-a{order:1;}
  .jl-hero-media{order:2;margin-top:10px;}
  .jl-hero-b{order:3;}
  .jl-hero-text h1{font-size:2.4rem;}
}

/* gummy cluster signature */
.jl-gummies{margin-top:36px;padding-bottom:34px;display:flex;flex-direction:column;align-items:center;position:relative;z-index:2;}
.jl-gummies svg{width:200px;height:52px;}
.jl-gummies-label{color:#ffc2cd;font-size:.76rem;font-weight:800;margin-top:8px;text-transform:uppercase;letter-spacing:2px;}

/* ---------- Sections ---------- */
.jl-section{padding:76px 0;}
.jl-section-tint{background:var(--tint);}
.jl-head{text-align:center;max-width:730px;margin:0 auto 46px;}
.jl-head h2{font-size:2.4rem;margin-top:10px;}
.jl-head p{color:var(--mute);}

/* ---------- Trust badges ---------- */
.jl-badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
@media(max-width:800px){.jl-badges{grid-template-columns:repeat(2,minmax(0,1fr));}}
.jl-badge{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px 18px;text-align:center;box-shadow:0 8px 20px rgba(214,42,72,.05);}
.jl-badge img{max-width:min(140px,100%);margin:0 auto 12px;border-radius:10px;}
.jl-badge p{font-weight:800;color:#5a1226;margin:0;font-size:.94rem;}

/* ---------- Feature chips ---------- */
.jl-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:840px;margin:0 auto;}
@media(max-width:700px){.jl-chips{grid-template-columns:1fr;}}
.jl-chip{background:#fff;border:1px solid var(--line);border-radius:30px;padding:12px 22px;display:flex;align-items:center;gap:12px;font-weight:800;color:#5a1226;font-size:.94rem;box-shadow:0 6px 16px rgba(214,42,72,.05);}
.jl-chip .dot{width:26px;height:26px;border-radius:50%;background:var(--tint);color:var(--rasp);display:flex;align-items:center;justify-content:center;flex:0 0 auto;font-weight:800;}

/* ---------- Testimonials ---------- */
.jl-testi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
@media(max-width:900px){.jl-testi-grid{grid-template-columns:1fr;}}
.jl-testi{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px 24px;box-shadow:0 10px 26px rgba(214,42,72,.06);}
.jl-testi-top{display:flex;align-items:center;gap:14px;margin-bottom:12px;}
.jl-testi-top img{width:54px;height:54px;border-radius:50%;object-fit:cover;}
.jl-testi-name{font-weight:800;color:#5a1226;}
.jl-testi-loc{color:var(--mute);font-size:.84rem;}
.jl-stars{color:var(--lime);letter-spacing:2px;margin-bottom:8px;}
.jl-testi p{color:#6b4d56;font-size:.93rem;margin:0;font-style:italic;}
.jl-rate-strip{text-align:center;margin-top:42px;}
.jl-rate-strip img{max-width:min(320px,100%);margin:0 auto;}

/* ---------- Rows ---------- */
.jl-row{display:flex;align-items:center;gap:52px;flex-wrap:wrap;}
.jl-row.rev{flex-direction:row-reverse;}
.jl-row-media{flex:1 1 260px;min-width:0;text-align:center;}
.jl-row-media img{max-width:min(360px,100%);margin:0 auto;filter:drop-shadow(0 16px 32px rgba(214,42,72,.18));}
.jl-row-body{flex:1 1 420px;min-width:0;}
.jl-row-body h2{font-size:2.1rem;margin-bottom:16px;}
.jl-row-body p{color:var(--mute);}

/* ---------- Mechanism ---------- */
.jl-mech-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
@media(max-width:900px){.jl-mech-grid{grid-template-columns:1fr;}}
.jl-mech{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px 24px;box-shadow:0 8px 20px rgba(214,42,72,.05);}
.jl-mech-icon{width:52px;height:52px;margin-bottom:12px;}
.jl-mech h4{font-size:1.18rem;margin:0 0 10px;}
.jl-mech p{margin:0;color:var(--mute);font-size:.92rem;}

/* ---------- Safety (dark) ---------- */
.jl-safety{background:var(--rasp-deep);color:#ffd9e0;border-radius:22px;padding:42px 40px;}
.jl-safety h3{color:#fff;font-size:1.6rem;margin:0 0 14px;display:flex;align-items:center;gap:12px;}
.jl-safety p{color:#ffcbd4;margin:0 0 12px;font-size:.96rem;}
.jl-safety strong{color:#fff;}
.jl-safety .warn{width:32px;height:32px;flex:0 0 auto;}

/* ---------- How to use ---------- */
.jl-use{background:#fff;border:1px solid var(--line);border-left:5px solid var(--lime);border-radius:18px;padding:32px;max-width:660px;margin:0 auto;text-align:center;box-shadow:0 10px 26px rgba(214,42,72,.06);}
.jl-use h4{font-size:1.25rem;margin:0 0 10px;}
.jl-use p{color:var(--mute);margin:0;}

/* ---------- Ingredients ---------- */
.jl-ing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
@media(max-width:900px){.jl-ing-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:620px){.jl-ing-grid{grid-template-columns:1fr;}}
.jl-ing{background:#fff;border:1px solid var(--line);border-top:4px solid var(--lime);border-radius:16px;padding:22px 20px;box-shadow:0 8px 18px rgba(214,42,72,.05);}
.jl-ing h4{font-size:1.1rem;margin:0 0 8px;font-family:'Paytone One',sans-serif;color:var(--rasp);}
.jl-ing p{margin:0;color:var(--mute);font-size:.88rem;}
.jl-ing em{color:var(--rasp-deep);font-style:normal;font-size:.82rem;font-weight:700;}

/* ---------- Pros/Cons (honest transparency) ---------- */
.jl-pc-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;}
@media(max-width:760px){.jl-pc-grid{grid-template-columns:1fr;}}
.jl-pc{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px 26px;box-shadow:0 8px 20px rgba(214,42,72,.05);}
.jl-pc h4{font-size:1.2rem;margin:0 0 14px;display:flex;align-items:center;gap:10px;}
.jl-pc.pros h4{color:var(--lime-deep);}
.jl-pc.cons h4{color:var(--rasp);}
.jl-pc ul{margin:0;padding:0;list-style:none;}
.jl-pc li{position:relative;padding-left:26px;margin-bottom:10px;color:#6b4d56;font-size:.92rem;}
.jl-pc.pros li::before{content:'\2713';position:absolute;left:0;color:var(--lime-deep);font-weight:800;}
.jl-pc.cons li::before{content:'\2022';position:absolute;left:4px;color:var(--rasp);font-weight:800;font-size:1.2rem;line-height:1;}

/* ---------- Benefits ---------- */
.jl-ben-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
@media(max-width:900px){.jl-ben-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:620px){.jl-ben-grid{grid-template-columns:1fr;}}
.jl-ben{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 22px;box-shadow:0 8px 18px rgba(214,42,72,.05);}
.jl-ben .mk{display:inline-flex;width:34px;height:34px;border-radius:50%;background:var(--tint);color:var(--rasp);align-items:center;justify-content:center;font-weight:800;}
.jl-ben h4{font-size:1.08rem;margin:12px 0 8px;}
.jl-ben p{margin:0;color:var(--mute);font-size:.9rem;}

/* ---------- Pricing ---------- */
.jl-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch;}
@media(max-width:900px){.jl-price-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto;}}
.jl-price{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px 24px;text-align:center;position:relative;display:flex;flex-direction:column;box-shadow:0 10px 26px rgba(214,42,72,.07);}
.jl-price.feat{border:2.5px solid var(--rasp);box-shadow:0 22px 46px rgba(214,42,72,.18);}
.jl-tag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--rasp);color:#fff;font-weight:800;font-size:.72rem;letter-spacing:.5px;text-transform:uppercase;padding:5px 16px;border-radius:20px;white-space:nowrap;}
.jl-tag.lime{background:var(--lime);}
.jl-price img.bottle{max-width:min(190px,100%);margin:6px auto 14px;height:160px;object-fit:contain;}
.jl-pk{font-family:'Paytone One',sans-serif;font-size:1.4rem;color:#5a1226;}
.jl-pk-sub{color:var(--mute);font-size:.88rem;margin-bottom:14px;}
.jl-pp{font-family:'Paytone One',sans-serif;font-size:2.6rem;color:var(--rasp);line-height:1;}
.jl-pp span{font-family:'Nunito',sans-serif;font-size:.88rem;font-weight:600;color:var(--mute);}
.jl-tot{font-weight:800;margin:10px 0 2px;color:#5a1226;}
.jl-tot .strike{text-decoration:line-through;color:var(--mute);font-weight:400;margin-right:6px;}
.jl-save{display:inline-block;background:var(--lime);color:#2b3d0e;font-weight:800;font-size:.72rem;padding:3px 12px;border-radius:20px;margin-bottom:8px;letter-spacing:.5px;}
.jl-ship{font-size:.85rem;font-weight:800;margin-bottom:12px;color:var(--lime-deep);}
.jl-ship.paid{color:var(--mute);}
.jl-price .jl-btn{width:100%;justify-content:center;margin-top:auto;}
.jl-cards{max-width:min(190px,100%);margin:14px auto 0;opacity:.7;}

/* ---------- Note banner ---------- */
.jl-note{background:var(--tint);border:1px dashed var(--rasp);border-radius:14px;padding:18px 24px;text-align:center;color:var(--rasp-deep);font-weight:800;font-size:.98rem;}

/* ---------- Guarantee ---------- */
.jl-guar{display:flex;align-items:center;gap:44px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:24px;padding:40px;box-shadow:0 12px 30px rgba(214,42,72,.07);}
.jl-guar img{max-width:min(180px,100%);margin:0 auto;}
.jl-guar-body{flex:1 1 360px;min-width:0;}
.jl-guar-body h3{font-size:1.9rem;margin-bottom:14px;}
.jl-guar-body p{color:var(--mute);}

/* ---------- Final CTA ---------- */
.jl-final{background:radial-gradient(ellipse at 50% 0%, rgba(127,191,63,.2) 0%, transparent 55%), linear-gradient(155deg,var(--rasp-deep),var(--rasp));color:#fff;text-align:center;border-radius:26px;padding:56px 30px;}
.jl-final h2{color:#fff;font-size:2.4rem;}
.jl-final img{max-width:min(300px,100%);margin:22px auto;}
.jl-final .old{text-decoration:line-through;opacity:.7;font-size:1.05rem;color:#ffcbd4;}
.jl-final .new{font-family:'Paytone One',sans-serif;color:var(--lime);font-size:2.7rem;margin:6px 0 22px;}

/* ---------- FAQ ---------- */
.jl-faq{max-width:820px;margin:0 auto;}
.jl-faq-item{border-bottom:1px solid var(--line);}
.jl-faq-q{width:100%;text-align:left;background:none;border:none;padding:22px 4px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-family:'Paytone One',sans-serif;font-size:1.1rem;color:#5a1226;gap:16px;}
.jl-faq-q::after{content:'+';font-size:1.5rem;color:var(--rasp);transition:transform .2s;flex-shrink:0;}
.jl-faq-item.open .jl-faq-q::after{transform:rotate(45deg);}
.jl-faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease;}
.jl-faq-a p{padding:0 4px 22px;margin:0;color:var(--mute);}

/* ---------- Footer ---------- */
.jl-footer{background:#3a1620;color:#c69ba6;padding:46px 0 30px;font-size:.9rem;}
.jl-footer a{color:#ffd9e0;}
.jl-footer a:hover{color:var(--lime);}
.jl-footer hr{border-color:rgba(255,255,255,.1);margin:26px 0;}
.jl-footer .jl-disc{font-size:.82rem;color:#a67d88;max-width:900px;}

/* ---------- Sticky mobile bar ---------- */
.jl-sticky{position:fixed;left:0;right:0;bottom:0;z-index:1030;background:#3a1620;padding:10px 16px;display:none;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 -6px 20px rgba(0,0,0,.3);border-top:2px solid var(--lime);}
.jl-sticky .t{color:#fff;line-height:1.2;font-family:'Paytone One',sans-serif;font-size:.95rem;}
.jl-sticky .t small{display:block;color:#c69ba6;font-size:.72rem;font-family:'Nunito',sans-serif;}
@media(max-width:940px){.jl-sticky{display:flex;}body{padding-bottom:70px;}}

.align-center{text-align:center;}
