/* ============================================================
   JELLY ROCK — jelly-rock.us
   Prefix: jzn-  |  Fonts: Chivo (display) + Nunito Sans (body)
   Palette: Aubergine #5C2A52, Seafoam #2FA88A, Sunflower #F0A93B, White/Cream
   Light-background system — no dark section blocks.
   ============================================================ */

:root{
  --jzn-aubergine:#5C2A52;
  --jzn-aubergine-dark:#421C3B;
  --jzn-seafoam:#2FA88A;
  --jzn-seafoam-dark:#1F7E67;
  --jzn-sun:#F0A93B;
  --jzn-cream:#FBF7F5;
  --jzn-white:#FFFFFF;
  --jzn-ink:#2B2230;
  --jzn-body:#4A4050;
  --jzn-line:#EADFE6;
  --jzn-green:#2E7D53;
  --jzn-red:#B3412C;
  --jzn-radius:16px;
  --jzn-shadow:0 14px 32px rgba(92,42,82,0.12);
  --jzn-maxw:1180px;
  --jzn-font-display:'Chivo', sans-serif;
  --jzn-font-body:'Nunito Sans', sans-serif;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--jzn-font-body);
  color:var(--jzn-body);
  background:var(--jzn-white);
  line-height:1.65;
  font-size:18px;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;height:auto;}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4{font-family:var(--jzn-font-display);line-height:1.2;color:var(--jzn-aubergine-dark);margin:0 0 0.5em;font-weight:700;}
h1{font-size:clamp(2.1rem,5vw,3.2rem);}
h2{font-size:clamp(1.7rem,3.6vw,2.4rem);}
h3{font-size:clamp(1.25rem,2.4vw,1.5rem);}
p{margin:0 0 1.1em;font-size:1.05rem;}
.jzn-container{max-width:var(--jzn-maxw);margin:0 auto;padding:0 20px;}
.jzn-section{padding:64px 0;}
.jzn-section--tint{background:var(--jzn-cream);}
.jzn-eyebrow{
  display:inline-flex;align-items:center;gap:8px;font-family:var(--jzn-font-display);text-transform:uppercase;
  letter-spacing:0.12em;font-size:0.85rem;color:var(--jzn-seafoam-dark);font-weight:700;margin-bottom:10px;
}
.jzn-eyebrow::before{content:"";width:22px;height:2px;background:var(--jzn-sun);display:inline-block;}
.jzn-center{text-align:center;}
.jzn-lead{font-size:1.2rem;color:var(--jzn-body);max-width:680px;}
.jzn-center .jzn-lead{margin-left:auto;margin-right:auto;}

/* Buttons */
.jzn-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--jzn-font-display);font-size:1.08rem;font-weight:700;
  padding:16px 34px;border-radius:999px;border:2px solid transparent;cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease;
}
.jzn-btn--primary{background:var(--jzn-seafoam);color:#fff;box-shadow:0 10px 22px rgba(47,168,138,0.35);}
.jzn-btn--primary:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(47,168,138,0.45);}
.jzn-btn--outline{background:#fff;border-color:var(--jzn-aubergine);color:var(--jzn-aubergine);}
.jzn-btn--outline:hover{background:var(--jzn-aubergine);color:#fff;}
.jzn-btn--sun{background:var(--jzn-sun);color:#3B2405;box-shadow:0 10px 22px rgba(240,169,59,0.35);}
.jzn-btn--block{width:100%;}
.jzn-btn small{display:block;font-family:var(--jzn-font-body);font-weight:400;font-size:0.72rem;opacity:0.9;}

/* Header */
.jzn-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,0.96);backdrop-filter:blur(6px);border-bottom:1px solid var(--jzn-line);}
.jzn-header__inner{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;max-width:var(--jzn-maxw);margin:0 auto;}
.jzn-logo{font-family:var(--jzn-font-display);font-weight:900;font-size:1.5rem;color:var(--jzn-aubergine-dark);}
.jzn-logo span{color:var(--jzn-seafoam-dark);}
.jzn-nav{display:none;gap:24px;align-items:center;}
.jzn-nav a{color:var(--jzn-ink);font-size:1rem;font-weight:700;}
.jzn-nav a:hover{color:var(--jzn-seafoam-dark);}
.jzn-header__cta{display:none;}
.jzn-burger{background:none;border:none;color:var(--jzn-aubergine-dark);font-size:1.7rem;cursor:pointer;line-height:1;}
.jzn-mobile-menu{display:none;flex-direction:column;background:#fff;padding:10px 20px 20px;border-bottom:1px solid var(--jzn-line);}
.jzn-mobile-menu.is-open{display:flex;}
.jzn-mobile-menu a{color:var(--jzn-ink);padding:11px 0;border-bottom:1px solid var(--jzn-line);font-weight:700;}
@media(min-width:900px){
  .jzn-nav{display:flex;}
  .jzn-header__cta{display:inline-flex;}
  .jzn-burger{display:none;}
}

/* HERO — standing standard layout */
.jzn-hero{background:linear-gradient(180deg,var(--jzn-cream) 0%,#fff 100%);padding:44px 0 30px;}
.jzn-hero__grid{display:grid;grid-template-columns:1fr;gap:34px;align-items:center;}
.jzn-hero__media{order:-1;}
.jzn-hero__text{order:0;}
@media(min-width:960px){
  .jzn-hero__grid{grid-template-columns:0.95fr 1.05fr;gap:50px;}
  .jzn-hero__media{order:1;}
  .jzn-hero__text{order:0;}
}
.jzn-hero__accent{color:var(--jzn-seafoam-dark);}
.jzn-hero__desc{font-size:1.15rem;}

/* Quick facts box */
.jzn-quickfacts{background:#fff;border:1px solid var(--jzn-line);border-radius:var(--jzn-radius);box-shadow:var(--jzn-shadow);padding:6px 20px;margin:20px 0;}
.jzn-quickfacts__row{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--jzn-line);font-size:0.98rem;}
.jzn-quickfacts__row:last-child{border-bottom:none;}
.jzn-quickfacts__label{color:var(--jzn-aubergine-dark);font-weight:700;}
.jzn-quickfacts__val{text-align:right;color:var(--jzn-body);}

.jzn-checklist{list-style:none;padding:0;margin:18px 0;}
.jzn-checklist li{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;font-weight:600;color:var(--jzn-ink);}
.jzn-checklist li::before{content:"\2713";flex:none;width:24px;height:24px;border-radius:50%;background:var(--jzn-seafoam);color:#fff;display:flex;align-items:center;justify-content:center;font-size:0.8rem;}

.jzn-cta-row{display:flex;gap:14px;flex-wrap:wrap;margin:20px 0 10px;}
.jzn-stats-row{display:flex;gap:28px;flex-wrap:wrap;margin-top:22px;}
.jzn-stats-row div{text-align:left;}
.jzn-stats-row strong{display:block;font-family:var(--jzn-font-display);font-size:1.5rem;color:var(--jzn-aubergine-dark);}
.jzn-stats-row span{font-size:0.85rem;color:var(--jzn-body);}

/* Hero media / floating badges */
.jzn-hero__figure{position:relative;text-align:center;}
.jzn-hero__figure img.jzn-bottle{margin:0 auto;max-width:340px;filter:drop-shadow(0 20px 30px rgba(92,42,82,0.25));}
.jzn-float-badge{position:absolute;background:#fff;border-radius:14px;box-shadow:var(--jzn-shadow);padding:10px 14px;font-size:0.82rem;font-weight:700;color:var(--jzn-aubergine-dark);display:flex;align-items:center;gap:8px;}
.jzn-float-badge img{width:26px;height:26px;object-fit:contain;}
.jzn-float-badge--rating{top:6%;left:0;}
.jzn-float-badge--usa{top:2%;right:0;}
.jzn-float-badge--ingredients{bottom:18%;left:-4%;}
.jzn-float-badge--ship{bottom:4%;right:2%;background:var(--jzn-sun);color:#3B2405;}
@media(max-width:640px){
  .jzn-float-badge{padding:7px 10px;font-size:0.72rem;}
  .jzn-float-badge img{width:20px;height:20px;}
}

/* Constellation visualization */
.jzn-constellation-wrap{max-width:320px;margin:18px auto 0;text-align:center;}
.jzn-constellation-wrap svg{width:100%;height:auto;}
.jzn-const-dot{animation:jzn-pulse 2.6s ease-in-out infinite;}
.jzn-const-dot:nth-child(1){animation-delay:0s;}
.jzn-const-dot:nth-child(2){animation-delay:0.4s;}
.jzn-const-dot:nth-child(3){animation-delay:0.8s;}
.jzn-const-dot:nth-child(4){animation-delay:1.2s;}
.jzn-const-dot:nth-child(5){animation-delay:1.6s;}
@keyframes jzn-pulse{
  0%,100%{opacity:0.45;r:5;}
  50%{opacity:1;r:8;}
}
.jzn-const-caption{font-size:0.85rem;color:var(--jzn-body);margin-top:8px;letter-spacing:0.02em;}
@media (prefers-reduced-motion: reduce){
  .jzn-const-dot{animation:none;opacity:0.9;}
}

/* Sticky CTA bar */
.jzn-stickybar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:2px solid var(--jzn-seafoam);padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;transform:translateY(110%);transition:transform .3s ease;box-shadow:0 -8px 20px rgba(0,0,0,0.08);}
.jzn-stickybar.is-visible{transform:translateY(0);}
.jzn-stickybar__text{color:var(--jzn-aubergine-dark);font-size:0.85rem;font-weight:800;}
.jzn-stickybar__text small{display:block;font-weight:600;color:var(--jzn-body);font-size:0.72rem;}
.jzn-stickybar .jzn-btn{padding:10px 20px;font-size:0.85rem;white-space:nowrap;}
body{padding-bottom:66px;}
@media(min-width:900px){body{padding-bottom:0;}.jzn-stickybar{display:none;}}

/* Reveal on scroll */
[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .6s ease, transform .6s ease;}
[data-reveal].is-visible{opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion: reduce){[data-reveal]{opacity:1;transform:none;transition:none;}}

/* Grid / cards */
.jzn-grid{display:grid;gap:22px;}
.jzn-grid--3{grid-template-columns:1fr;}
.jzn-grid--2{grid-template-columns:1fr;}
@media(min-width:760px){
  .jzn-grid--3{grid-template-columns:repeat(3,1fr);}
  .jzn-grid--2{grid-template-columns:repeat(2,1fr);}
}
.jzn-card{background:#fff;border:1px solid var(--jzn-line);border-radius:var(--jzn-radius);padding:28px 24px;box-shadow:var(--jzn-shadow);}
.jzn-icon-circle{width:54px;height:54px;border-radius:50%;background:rgba(47,168,138,0.12);display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.jzn-icon-circle svg{width:26px;height:26px;stroke:var(--jzn-seafoam-dark);}

/* Steps */
.jzn-steps{counter-reset:jzn-step;}
.jzn-step{display:flex;gap:18px;margin-bottom:26px;align-items:flex-start;}
.jzn-step__num{counter-increment:jzn-step;flex:none;width:46px;height:46px;border-radius:50%;background:var(--jzn-aubergine);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--jzn-font-display);font-weight:700;font-size:1.15rem;}
.jzn-step__num::before{content:counter(jzn-step);}

/* Ingredient table */
.jzn-ing-table{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--jzn-radius);overflow:hidden;box-shadow:var(--jzn-shadow);}
.jzn-ing-table th,.jzn-ing-table td{padding:15px 16px;text-align:left;border-bottom:1px solid var(--jzn-line);font-size:1rem;}
.jzn-ing-table th{background:var(--jzn-aubergine);color:#fff;font-family:var(--jzn-font-display);}
.jzn-ing-table tr:last-child td{border-bottom:none;}
.jzn-ing-table td.jzn-dose{color:#8A7E8F;font-style:italic;}

/* Honesty / warn callouts */
.jzn-honest{border:1px solid #F0D9A0;background:#FFF8E8;border-left:5px solid var(--jzn-sun);border-radius:12px;padding:22px 24px;margin:24px 0;}
.jzn-honest h4{margin:0 0 8px;color:#8A5A0E;font-family:var(--jzn-font-body);font-weight:800;font-size:1.08rem;}
.jzn-warn{border:1px solid #E4B3A6;background:#FBECE8;border-left:5px solid var(--jzn-red);border-radius:12px;padding:22px 24px;margin:24px 0;}
.jzn-warn h4{margin:0 0 8px;color:var(--jzn-red);font-family:var(--jzn-font-body);font-weight:800;font-size:1.08rem;}

/* Pricing */
.jzn-price-card{position:relative;background:#fff;border:2px solid var(--jzn-line);border-radius:var(--jzn-radius);padding:30px 24px;text-align:center;box-shadow:var(--jzn-shadow);}
.jzn-price-card--pop{border-color:var(--jzn-seafoam);transform:scale(1.03);}
.jzn-price-card__badge{position:absolute;top:-15px;left:50%;transform:translateX(-50%);background:var(--jzn-seafoam);color:#fff;padding:6px 18px;border-radius:999px;font-size:0.78rem;font-family:var(--jzn-font-display);font-weight:700;}
.jzn-price-card img{max-width:150px;margin:0 auto 14px;}
.jzn-price-card__per{font-family:var(--jzn-font-display);font-size:2.6rem;color:var(--jzn-aubergine-dark);font-weight:700;}
.jzn-price-card__per span{font-size:1rem;font-weight:400;color:var(--jzn-body);}
.jzn-price-card__total{font-size:0.9rem;color:var(--jzn-body);margin-bottom:16px;}

/* Aggregate rating + reviews */
.jzn-aggregate{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;background:#fff;border:1px solid var(--jzn-line);border-radius:var(--jzn-radius);box-shadow:var(--jzn-shadow);padding:24px 30px;max-width:520px;margin:0 auto 34px;}
.jzn-aggregate__score{font-family:var(--jzn-font-display);font-size:3rem;color:var(--jzn-aubergine-dark);font-weight:800;line-height:1;}
.jzn-aggregate__stars{color:var(--jzn-sun);font-size:1.3rem;letter-spacing:2px;}
.jzn-aggregate__meta{font-size:0.9rem;color:var(--jzn-body);}
.jzn-review-card{background:#fff;border:1px solid var(--jzn-line);border-radius:var(--jzn-radius);padding:24px;box-shadow:var(--jzn-shadow);}
.jzn-review-card__head{display:flex;align-items:center;gap:12px;margin-bottom:10px;}
.jzn-review-card__head img{width:52px;height:52px;border-radius:50%;object-fit:cover;}
.jzn-review-card__stars{color:var(--jzn-sun);letter-spacing:2px;}
.jzn-review-card__name{font-weight:800;font-family:var(--jzn-font-display);}

/* FAQ */
.jzn-faq-item{border-bottom:1px solid var(--jzn-line);}
.jzn-faq-q{width:100%;text-align:left;background:none;border:none;padding:19px 0;font-family:var(--jzn-font-display);font-size:1.12rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;color:var(--jzn-aubergine-dark);}
.jzn-faq-q__icon{font-size:1.4rem;color:var(--jzn-seafoam-dark);flex:none;margin-left:12px;transition:transform .25s ease;}
.jzn-faq-item.is-open .jzn-faq-q__icon{transform:rotate(45deg);}
.jzn-faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.jzn-faq-a__inner{padding-bottom:19px;color:var(--jzn-body);}
.jzn-faq-item.is-open .jzn-faq-a{max-height:600px;}

/* Fit table */
.jzn-fit{display:grid;grid-template-columns:1fr;gap:20px;}
@media(min-width:760px){.jzn-fit{grid-template-columns:1fr 1fr;}}
.jzn-fit__col{padding:24px;border-radius:var(--jzn-radius);}
.jzn-fit__col--yes{background:#EAF6EF;border:1px solid #BEE3CC;}
.jzn-fit__col--no{background:#FBECE8;border:1px solid #E4B3A6;}
.jzn-fit__col h4{font-family:var(--jzn-font-body);font-weight:800;}
.jzn-fit__col ul{padding-left:20px;margin:0;}
.jzn-fit__col li{margin-bottom:8px;}

/* Footer */
.jzn-footer{background:var(--jzn-aubergine-dark);color:#E7DCE4;padding:48px 0 24px;font-size:0.95rem;}
.jzn-footer__grid{display:grid;grid-template-columns:1fr;gap:28px;margin-bottom:28px;}
@media(min-width:760px){.jzn-footer__grid{grid-template-columns:2fr 1fr 1fr 1fr;}}
.jzn-footer a{color:#E7DCE4;}
.jzn-footer a:hover{color:var(--jzn-sun);}
.jzn-footer h4{color:#fff;font-size:1rem;margin-bottom:12px;}
.jzn-footer ul{list-style:none;padding:0;margin:0;}
.jzn-footer li{margin-bottom:8px;}
.jzn-footer__bottom{border-top:1px solid rgba(255,255,255,0.14);padding-top:20px;font-size:0.8rem;line-height:1.7;color:#C9B7C5;}

/* Breadcrumb / page hero */
.jzn-breadcrumb{font-size:0.9rem;color:var(--jzn-body);padding:16px 0 0;}
.jzn-breadcrumb a{color:var(--jzn-aubergine-dark);font-weight:700;}
.jzn-pagehero{background:var(--jzn-cream);padding:44px 0;text-align:center;}

/* Blog */
.jzn-blog-card{background:#fff;border:1px solid var(--jzn-line);border-radius:var(--jzn-radius);overflow:hidden;box-shadow:var(--jzn-shadow);}
.jzn-blog-card__body{padding:22px;}
.jzn-blog-card__tag{color:var(--jzn-seafoam-dark);font-family:var(--jzn-font-display);font-size:0.82rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;}
.jzn-article{max-width:760px;margin:0 auto;}
.jzn-article h2{margin-top:1.4em;}

/* Bonus items */
.jzn-bonus-card{background:#fff;border:1px solid var(--jzn-line);border-radius:var(--jzn-radius);padding:24px;box-shadow:var(--jzn-shadow);display:flex;gap:16px;align-items:flex-start;}
.jzn-bonus-card__icon{flex:none;width:48px;height:48px;border-radius:12px;background:rgba(240,169,59,0.18);display:flex;align-items:center;justify-content:center;font-size:1.4rem;}

/* Utility */
.jzn-small{font-size:0.9rem;color:var(--jzn-body);}
.jzn-two-col{display:grid;grid-template-columns:1fr;gap:36px;align-items:center;}
@media(min-width:860px){.jzn-two-col{grid-template-columns:1fr 1fr;}}
