/* ==========================================================================
   PERIMENOPAUSE UNMASKED — GrassRoots Functional Medicine
   Brand layer for the Encore landing page theme.
   Fonts: Fraunces (headlines) / Inter (body) — per brand style guide.
   Palette: Unmasked Protocol course palette.
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,400;1,9..144,500;1,9..144,600&family=Inter:wght@400;500;600;700&display=swap');

h2.pu-h.pu-h--h2 {
    line-height: 1.2;
}



:root{
  --pu-cream:#FBF9F3;        /* Bone — page background */
  --pu-ivory:#FFFFFF;        /* card surfaces */
  --pu-sand:#F4F0E6;         /* Cream — bands, lesson cards */
  --pu-forest:#546A43;       /* Living Leaf — buttons, links */
  --pu-forest-deep:#1E311F;  /* Protocol Forest — headers, dark sections */
  --pu-ink:#1E211C;          /* Ink — all text */
  --pu-muted:#1E211C;
  --pu-gold:#BE995E;         /* Protocol Gold — emphasis, CTAs, kickers */
  --pu-border:#DAD4C4;       /* Line — borders, rules */
  --pu-border-dark:rgba(244,240,230,.16);
  --pu-cream-on-dark:#F4F0E6;
  --pu-sage-on-dark:#B8C2AE;
}


div#block-pub037 p.pu-intro__lede {
    margin-top: 0;
}

aside.powered-by.background-dark {
    display: none;
}


/* ---------- Base -------------------------------------------------------- */
body#encore-theme{
  background:var(--pu-cream);
  color:var(--pu-ink);
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
html{scroll-behavior:smooth}
::selection{background:var(--pu-forest);color:var(--pu-cream-on-dark)}

.pu-section{border-bottom:1px solid var(--pu-border)}
.pu-section *{margin:0;padding:0;box-sizing:border-box}
.pu-section img,.pu-section svg{display:block;max-width:100%}
.pu-section a{color:inherit;text-decoration:none}
.pu-section ul{list-style:none}
.pu-section h1,.pu-section h2,.pu-section h3{
  font-family:'Fraunces',Georgia,serif;font-weight:500;line-height:1.06;
  letter-spacing:-.015em;color:var(--pu-forest-deep);
}
.pu-section h1 p,.pu-section h2 p,.pu-section h3 p,
.pu-rt p:only-child{margin:0}
.pu-section em,
.pu-em{font-style:italic;color:var(--pu-gold);font-weight:400;font-family:'Fraunces',Georgia,serif}

.pu-wrap{max-width:76rem;margin:0 auto;padding:0 1.75rem}
.pu-wrap-md{max-width:62rem;margin:0 auto;padding:0 1.75rem}
.pu-wrap-sm{max-width:52rem;margin:0 auto;padding:0 1.75rem}
.pu-py{padding-top:6.5rem;padding-bottom:6.5rem}
.pu-h2{margin-top:1.6rem;font-size:clamp(2.1rem,3.8vw,3rem)}
.pu-band-sand{background:var(--pu-sand)}
.pu-band-dark{background:var(--pu-forest-deep);border-bottom:none}
.pu-band-dark .pu-h2{color:var(--pu-cream-on-dark)}
.pu-band-dark .pu-h2 em,.pu-band-dark em{color:var(--pu-gold)}

/* ---------- Kicker ------------------------------------------------------ */
.pu-eyebrow{
  display:flex;align-items:center;gap:1.1rem;
  font-size:.63rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;
  color:var(--pu-gold);font-family:'Inter',sans-serif;
}
.pu-eyebrow::before{content:"";width:2.25rem;height:1px;background:var(--pu-gold);flex-shrink:0}
.pu-eyebrow::after{content:"";flex:1;height:1px;background:var(--pu-border)}
.pu-eyebrow--dark::after{background:var(--pu-border-dark)}

/* ---------- Buttons ----------------------------------------------------- */
.pu-btn{
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:9999px;font-weight:600;text-align:center;white-space:nowrap;
  font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;
  font-family:'Inter',sans-serif;cursor:pointer;
  transition:background .22s ease,color .22s ease,border-color .22s ease,transform .12s ease;
}
.pu-btn:active{transform:scale(.98)}
.pu-btn:focus-visible{outline:2px solid var(--pu-gold);outline-offset:3px}
.pu-btn--solid{background:var(--pu-forest);color:var(--pu-cream-on-dark);border:1px solid var(--pu-forest)}
.pu-btn--solid:hover{background:var(--pu-forest-deep);border-color:var(--pu-forest-deep);color:var(--pu-cream-on-dark)}
.pu-btn--gold{background:var(--pu-gold);color:var(--pu-forest-deep);border:1px solid var(--pu-gold)}
.pu-btn--gold:hover{background:var(--pu-forest-deep);border-color:var(--pu-forest-deep);color:var(--pu-cream-on-dark)}
.pu-btn--lg{padding:1.15rem 2.6rem}
.pu-btn--sm{padding:.9rem 1.8rem;font-size:.62rem}

/* ---------- Default Kajabi Header (sticky sand nav) --------------------- */
.header{
  position:-webkit-sticky;position:sticky;top:0;z-index:50;
  background:rgba(244,240,230,.94)!important;
  border-bottom:1px solid var(--pu-border);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  box-shadow:none;
}
.header .header__content{padding:.9rem 1.75rem}
.header .logo__text{
  font-family:'Fraunces',Georgia,serif!important;font-weight:600!important;
  font-size:1.2rem!important;color:var(--pu-forest-deep)!important;letter-spacing:.01em;
}
.header a.link-list__link{
  font-family:'Inter',sans-serif;font-size:.63rem!important;font-weight:600;
  letter-spacing:.22em;text-transform:uppercase;color:var(--pu-forest-deep)!important;
  transition:color .2s ease;
}
.header a.link-list__link:hover{color:var(--pu-gold)!important}
.header .btn{
  border-radius:9999px!important;background:var(--pu-forest)!important;
  border:1px solid var(--pu-forest)!important;color:var(--pu-cream-on-dark)!important;
  font-family:'Inter',sans-serif;font-size:.62rem!important;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;padding:.9rem 1.8rem!important;
  transition:background .22s ease,border-color .22s ease;
}
.header .btn:hover{background:var(--pu-forest-deep)!important;border-color:var(--pu-forest-deep)!important}
.header .hamburger__slices .hamburger__slice{background-color:var(--pu-forest-deep)!important}

/* ---------- Default Kajabi Footer (Protocol Forest) --------------------- */
.footer{background-color:var(--pu-forest-deep)!important;color:var(--pu-sage-on-dark)!important;border-top:1px solid var(--pu-border-dark)}
.footer .footer__container{ padding-top:4.5rem;padding-bottom:0rem}
.footer .logo__text{
  font-family:'Fraunces',Georgia,serif!important;font-size:1.2rem!important;
  letter-spacing:.2em;text-transform:uppercase;color:var(--pu-cream-on-dark)!important;
}
.footer .link-list__title{
  font-family:'Inter',sans-serif!important;font-size:.62rem!important;font-weight:600;
  letter-spacing:.26em;text-transform:uppercase;color:var(--pu-cream-on-dark)!important;
}
.footer a.link-list__link{font-size:.85rem!important;color:var(--pu-sage-on-dark)!important;transition:color .2s ease}
.footer a.link-list__link:hover{color:var(--pu-cream-on-dark)!important}
.footer .copyright{font-size:.7rem!important;color:rgba(184,194,174,.85)!important;padding-top:1.6rem;margin-top:1.5rem}


/* ==========================================================================
   BLOCK ARCHITECTURE LAYER
   Every design component is a native Kajabi block inside the default
   `section`. Stock width / background / spacing panels stay in charge;
   the rules below only draw the components and join the hairline grids.
   ========================================================================== */
.section{position:relative}
.section .container{max-width:1216px}

/* ---------- Shared type scale ------------------------------------------- */
.pu-h{font-family:'Fraunces',Georgia,serif;font-weight:500;line-height:1.06;
  letter-spacing:-.015em;color:var(--pu-h-c,var(--pu-forest-deep));margin:0}
.pu-h--h1{font-size:clamp(2.9rem,6vw,4.5rem)}
.pu-h--h2{font-size:clamp(2.1rem,3.8vw,3rem)}
.pu-h--h3{font-size:clamp(1.9rem,3.4vw,2.6rem)}
.pu-h .pu-em,.pu-h em{font-style:italic;font-weight:400;color:var(--pu-h-em,var(--pu-gold))}
.pu-em{font-family:'Fraunces',Georgia,serif}

.pu-eyebrow{color:var(--pu-eb-c,var(--pu-gold))}
.pu-eyebrow::before{background:var(--pu-eb-dash,var(--pu-gold))}
.pu-eyebrow::after{background:var(--pu-eb-line,var(--pu-border))}
.pu-eyebrow--center{justify-content:center}
.pu-eyebrow--center::after{display:none}

.pu-rt{line-height:1.8;color:var(--pu-t-c,var(--pu-ink))}
.pu-rt p{margin:0}
.pu-rt p+p{margin-top:1.1rem}
.pu-rt--lede{font-size:1.06rem;line-height:1.75}
.pu-rt--serif{font-family:'Fraunces',Georgia,serif;font-size:1.5rem;line-height:1.42;color:var(--pu-t-c,var(--pu-forest-deep))}
.pu-rt--fine{font-size:.74rem;line-height:1.65}
.pu-rt--ruled{padding-top:1.9rem;border-top:1px solid var(--pu-t-rule,var(--pu-border))}
.pu-rt a{color:var(--pu-t-link,var(--pu-gold));text-decoration:underline;text-underline-offset:3px}

/* ---------- Buttons (color-picker driven) -------------------------------- */
.pu-btn--green{background:var(--pu-bbg,var(--pu-forest));color:var(--pu-btx,var(--pu-cream-on-dark));border:1px solid var(--pu-bbg,var(--pu-forest))}
.pu-btn--green:hover{background:var(--pu-bhbg,var(--pu-forest-deep));border-color:var(--pu-bhbg,var(--pu-forest-deep));color:var(--pu-bhtx,var(--pu-cream-on-dark))}
.pu-btn--gold{background:var(--pu-bbg,var(--pu-gold));color:var(--pu-btx,var(--pu-forest-deep));border:1px solid var(--pu-bbg,var(--pu-gold))}
.pu-btn--gold:hover{background:var(--pu-bhbg,var(--pu-forest-deep));border-color:var(--pu-bhbg,var(--pu-forest-deep));color:var(--pu-bhtx,var(--pu-cream-on-dark))}
.pu-btn-wrap{display:flex}
.text-center .pu-btn-wrap{justify-content:center}

/* ---------- Intro composite --------------------------------------------- */
.pu-intro .pu-h{margin-top:1.6rem}
.pu-intro .pu-eyebrow+*{margin-top:1.6rem}
.pu-intro>.pu-h:first-child{margin-top:0}
.pu-intro__lede{font-family:'Fraunces',Georgia,serif;font-size:1.5rem;line-height:1.42;
  color:var(--pu-i-lede,var(--pu-forest-deep));margin:1.9rem 0 0}
.pu-intro__body{margin-top:1.9rem}
.pu-intro__cta{margin-top:2.75rem;display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem}
.pu-intro__cta--center{justify-content:center}
.pu-intro__cta small{font-size:.74rem;line-height:1.65;color:var(--pu-i-note,var(--pu-ink));text-align:left}
.pu-intro__cta--center small{text-align:center}

/* ---------- Video frame (VSL) ------------------------------------------- */
.pu-vsl{position:relative;box-shadow:0 24px 60px -30px rgba(30,33,28,.35)}
.pu-vsl--4x5 .pu-vsl__poster,.pu-vsl--4x5 iframe,.pu-vsl--4x5 video{aspect-ratio:4/5}
.pu-vsl--16x9 .pu-vsl__poster,.pu-vsl--16x9 iframe,.pu-vsl--16x9 video{aspect-ratio:16/9}
.pu-vsl--1x1 .pu-vsl__poster,.pu-vsl--1x1 iframe,.pu-vsl--1x1 video{aspect-ratio:1/1}
.pu-vsl .pu-vsl__poster,.pu-vsl iframe,.pu-vsl video{width:100%;object-fit:cover;display:block;border:0}
.pu-vsl__embed>*{width:100%}
.pu-vsl__overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(to top,rgba(47,58,44,.4),rgba(47,58,44,0) 50%);pointer-events:none}
.pu-play-badge{width:5rem;height:5rem;border-radius:50%;background:var(--pu-badge,var(--pu-gold));
  color:var(--pu-badge-ic,var(--pu-forest-deep));display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 34px rgba(30,33,28,.4)}
.pu-play-badge svg{width:1.5rem;height:1.5rem;margin-left:.25rem}

/* ---------- Flush card families ------------------------------------------ */
.block-type--pu_stat,.block-type--pu_num_card,.block-type--pu_testimonial,
.block-type--pu_bonus,.block-type--pu_lesson,.block-type--pu_faq_item,
.block-type--pu_list_card,.block-type--pu_hairline{padding:0}
.block-type--pu_stat .block,.block-type--pu_num_card .block,.block-type--pu_testimonial .block,
.block-type--pu_bonus .block,.block-type--pu_lesson .block,.block-type--pu_faq_item .block,
.block-type--pu_list_card .block{height:100%;border:0;border-radius:0;background:transparent}
@media(max-width:767px){
  .block-type--pu_stat,.block-type--pu_num_card,.block-type--pu_testimonial,
  .block-type--pu_bonus,.block-type--pu_lesson,.block-type--pu_faq_item,
  .block-type--pu_list_card,.block-type--pu_hairline{margin-bottom:0}
  .block-type--pu_stat{width:50%}
  .block-type--pu_num_card{width:50%}
}
/* seam overlap: 1px borders on every card collapse into single hairlines */
.block-type--pu_num_card,.block-type--pu_testimonial,.block-type--pu_bonus,
.block-type--pu_list_card{margin-top:-1px;margin-left:-1px}

/* ---------- Stat / credential cell --------------------------------------- */
.pu-cred__cell{padding:1.9rem 1.25rem;text-align:center;position:relative;height:100%}
.pu-cred__cell::after{content:"";position:absolute;right:0;top:24%;height:52%;width:1px;
  background:var(--pu-st-div,var(--pu-border-dark))}
.pu-cred__cell--nodiv::after,
.pu-cred__cell--last::after{display:none}
.pu-cred__big{font-family:'Fraunces',Georgia,serif;font-size:1.05rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--pu-st-big,var(--pu-cream-on-dark))}
.pu-cred__sub{margin-top:.5rem;font-size:.55rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--pu-st-sub,var(--pu-sage-on-dark));line-height:1.7}
@media(max-width:767px){
  .pu-cred__cell--even::after{display:none}
  .pu-cred__cell--rows{border-bottom:1px solid var(--pu-st-div,var(--pu-border-dark))}
}

/* ---------- Assessment card ---------------------------------------------- */
.pu-assess{display:flex;flex-direction:column;align-items:center;gap:1.5rem;text-align:center;
  background:var(--pu-as-bg,var(--pu-sage-on-dark));border:1px solid var(--pu-as-bd,transparent);
  color:var(--pu-as-c,var(--pu-forest-deep));padding:2.4rem 2.25rem}
@media(min-width:680px){.pu-assess{flex-direction:row;justify-content:space-between;text-align:left}}
.pu-assess__q{font-family:'Fraunces',Georgia,serif;font-size:1.25rem;line-height:1.45;max-width:32rem;
  color:var(--pu-as-c,var(--pu-forest-deep));margin:0}
.pu-assess__btn{flex-shrink:0;background:var(--pu-bbg,var(--pu-forest-deep));
  color:var(--pu-btx,var(--pu-cream-on-dark));border:1px solid var(--pu-bbg,var(--pu-forest-deep))}
.pu-assess__btn:hover{background:var(--pu-bhbg,transparent);color:var(--pu-bhtx,var(--pu-forest-deep))}

/* ---------- Numbered card ------------------------------------------------ */
.pu-card{background:var(--pu-cd-bg,var(--pu-ivory));border:1px solid var(--pu-cd-bd,var(--pu-border));
  padding:2.1rem;height:100%}
.pu-card__n{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:.95rem;
  color:var(--pu-cd-num,var(--pu-gold))}
.pu-card__n::before{content:"/ "}
.pu-card__body{margin:.95rem 0 0;line-height:1.65;color:var(--pu-cd-c,var(--pu-ink))}

/* ---------- Testimonial -------------------------------------------------- */
.pu-testi{background:var(--pu-ts-bg,var(--pu-ivory));border:1px solid var(--pu-ts-bd,var(--pu-border));
  padding:2.75rem;height:100%;display:flex;flex-direction:column;justify-content:space-between;gap:2rem;margin:0}
.pu-testi blockquote{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:1.18rem;
  line-height:1.6;color:var(--pu-ts-q,var(--pu-forest-deep));border:0;margin:0;padding:0}
.pu-testi blockquote::before{content:"\201C";display:block;font-family:'Fraunces',Georgia,serif;
  font-style:italic;font-size:3.4rem;line-height:.55;color:var(--pu-ts-mark,var(--pu-gold));margin-bottom:1.2rem}
.pu-testi__meta{display:flex;align-items:center;gap:1rem;padding-top:1.7rem;
  border-top:1px solid var(--pu-ts-bd,var(--pu-border));margin:0}
.pu-testi__av{width:2.7rem;height:2.7rem;border-radius:50%;background:var(--pu-ts-avbg,var(--pu-forest));
  color:var(--pu-ts-avtx,var(--pu-cream-on-dark));display:flex;align-items:center;justify-content:center;
  flex-shrink:0;font-family:'Fraunces',Georgia,serif;font-size:.95rem;overflow:hidden}
.pu-testi__av img{width:100%;height:100%;object-fit:cover}
.pu-testi__nm{display:block;font-size:.8rem;font-weight:600;color:var(--pu-ts-nm,var(--pu-forest-deep))}
.pu-testi__wh{display:block;font-size:.65rem;color:var(--pu-ts-dt,var(--pu-ink));letter-spacing:.05em;margin-top:.2rem}

/* ---------- Lesson accordion item ---------------------------------------- */
.pu-acc-item{border-bottom:1px solid var(--pu-ac-bd,var(--pu-border));padding:1.85rem 0}
.pu-acc-item--first{border-top:1px solid var(--pu-ac-frame,var(--pu-forest-deep))}
.pu-acc-item--last{border-bottom-color:var(--pu-ac-frame,var(--pu-forest-deep))}
.pu-acc-item summary{cursor:pointer;list-style:none;display:flex;align-items:flex-start;gap:1.5rem}
.pu-acc-item summary::-webkit-details-marker{display:none}
.pu-acc-item summary:hover .pu-acc__title{color:var(--pu-forest)}
.pu-acc-item summary:focus-visible{outline:2px solid var(--pu-gold);outline-offset:4px}
.pu-acc__num{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:.92rem;
  color:var(--pu-ac-num,var(--pu-gold));padding-top:.22rem;min-width:2.6rem}
.pu-acc__num::before{content:"/ "}
.pu-acc__title{font-family:'Fraunces',Georgia,serif;flex:1;font-size:1.2rem;line-height:1.4;
  font-weight:500;color:var(--pu-ac-title,var(--pu-forest-deep));transition:color .2s ease}
.pu-plus{margin-top:.2rem;color:var(--pu-ac-plus,var(--pu-fq-plus,var(--pu-gold)));font-size:1.15rem;
  line-height:1;transition:transform .22s ease;flex-shrink:0}
details[open]>summary .pu-plus{transform:rotate(45deg)}
.pu-acc-item ul{margin:1.5rem 0 0;padding-left:3.1rem;display:grid;gap:.9rem;font-size:.9rem;
  color:var(--pu-ac-item,var(--pu-ink));list-style:none}
.pu-acc-item li{display:flex;gap:.9rem;line-height:1.65}
.pu-acc-item .pu-dot{background:var(--pu-ac-dot,var(--pu-gold))}
.pu-acc__note{margin:1.1rem 0 0;padding-left:3.1rem;font-size:.75rem;font-style:italic;
  color:var(--pu-ac-item,var(--pu-ink));line-height:1.7}

/* ---------- Dots --------------------------------------------------------- */
.pu-dot{margin-top:.55rem;width:.35rem;height:.35rem;flex-shrink:0;border-radius:50%;display:inline-block}

/* ---------- Checklist card ----------------------------------------------- */
.pu-fit{background:var(--pu-ft-bg,var(--pu-ivory));border:1px solid var(--pu-ft-bd,var(--pu-border));
  padding:2.75rem;height:100%}
.pu-fit h3{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:1.4rem;margin:0;
  color:var(--pu-ft-title,var(--pu-forest-deep))}
.pu-fit ul{margin:1.8rem 0 0;padding:0;display:grid;gap:1.15rem;font-size:.9rem;
  color:var(--pu-ft-item,var(--pu-ink));list-style:none}
.pu-fit li{display:flex;gap:.9rem;line-height:1.65}
.pu-fit .pu-dot{background:var(--pu-ft-dot,var(--pu-forest))}

/* ---------- Bonus card --------------------------------------------------- */
.pu-bonus{background:var(--pu-bn-bg,var(--pu-ivory));border:1px solid var(--pu-bn-bd,var(--pu-border));
  height:100%;display:flex;flex-direction:column}
.pu-bonus__media{background:var(--pu-bn-media,var(--pu-sand))}
.pu-bonus__media img{width:100%;display:block}
.pu-bonus__pad{padding:2.1rem}
.pu-bonus h3{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:1.18rem;line-height:1.4;
  margin:0;color:var(--pu-bn-title,var(--pu-forest-deep))}
.pu-bonus__sub{margin-top:.65rem;font-size:.63rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--pu-bn-sub,var(--pu-gold));font-weight:600}
.pu-bonus__desc{margin:1.1rem 0 0;font-size:.88rem;line-height:1.7;color:var(--pu-bn-desc,var(--pu-ink))}

/* ---------- Price box ----------------------------------------------------- */
.pu-price-box{background:var(--pu-pb-bg,var(--pu-forest-deep));padding:3.4rem 2.9rem;text-align:center;
  position:relative;box-shadow:0 30px 70px -35px rgba(30,33,28,.45)}
.pu-price-box::before{content:"";position:absolute;top:.7rem;left:.7rem;right:.7rem;bottom:.7rem;
  border:1px solid var(--pu-pb-frame,var(--pu-border-dark));pointer-events:none}
.pu-price-box>*{position:relative}
.pu-anchor{position:absolute;top:-7rem}
.pu-price-box__opt{font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;
  color:var(--pu-pb-opt,var(--pu-gold));font-weight:600}
.pu-price-box__amount{font-family:'Fraunces',Georgia,serif;margin-top:1.4rem;font-size:4.9rem;
  font-weight:500;color:var(--pu-pb-amt,var(--pu-cream-on-dark));line-height:1.06}
.pu-price-box__per{margin-top:.5rem;font-size:.84rem;color:var(--pu-pb-per,var(--pu-sage-on-dark))}
.pu-price-rule{margin:2.1rem auto;width:4rem;height:1px;background:var(--pu-pb-rule,var(--pu-border-dark))}
.pu-price-box__fine{margin-top:1.4rem;font-size:.72rem;color:var(--pu-pb-fine,var(--pu-cream-on-dark))}

/* ---------- FAQ item ------------------------------------------------------ */
.pu-faq-item{border-bottom:1px solid var(--pu-fq-bd,var(--pu-border))}
.pu-faq-item--first{border-top:1px solid var(--pu-fq-frame,var(--pu-forest-deep))}
.pu-faq-item details{padding:1.75rem 0}
.pu-faq-item summary{cursor:pointer;list-style:none;display:flex;align-items:flex-start;
  justify-content:space-between;gap:1.75rem;font-family:'Fraunces',Georgia,serif;font-size:1.08rem;
  font-weight:500;color:var(--pu-fq-q,var(--pu-forest-deep));transition:color .2s ease}
.pu-faq-item summary:hover{color:var(--pu-forest)}
.pu-faq-item summary::-webkit-details-marker{display:none}
.pu-faq-item summary:focus-visible{outline:2px solid var(--pu-gold);outline-offset:4px}
.pu-faq-item .pu-plus{color:var(--pu-fq-plus,var(--pu-gold))}
.pu-faq-item p{margin:1.1rem 0 0;font-size:.9rem;line-height:1.75;color:var(--pu-fq-a,var(--pu-ink))}
.block-type--pu_faq_item{margin-bottom:0}

/* ---------- Hairline (full-bleed section separator) ----------------------- */
.block-type--pu_hairline{margin:0;height:0}
.block-type--pu_hairline .block{border:0;background:transparent}
.pu-hairline{position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--pu-hl-c,var(--pu-border))}

/* ---------- Flush stacked rows ------------------------------------------- */
.block-type--pu_lesson{margin-bottom:0}

@media (prefers-reduced-motion: reduce){
  .pu-btn,.pu-plus,.pu-acc__title,.pu-faq-item summary{transition:none !important}
  html{scroll-behavior:auto}
}


/* ==========================================================================
   FIX PACK — button colors, fonts, stock video frame, footer, mobile polish
   ========================================================================== */

/* Buttons: win against the theme's global `a { color: primary }` and any
   site-level custom CSS. Color pickers still drive everything via vars. */
a.pu-btn,.pu-btn{text-decoration:none !important}
a.pu-btn--green,.pu-btn--green{
  background:var(--pu-bbg,var(--pu-forest)) !important;
  color:var(--pu-btx,var(--pu-cream-on-dark)) !important;
  border:1px solid var(--pu-bbg,var(--pu-forest)) !important}
a.pu-btn--green:hover,.pu-btn--green:hover{
  background:var(--pu-bhbg,var(--pu-forest-deep)) !important;
  border-color:var(--pu-bhbg,var(--pu-forest-deep)) !important;
  color:var(--pu-bhtx,var(--pu-cream-on-dark)) !important;filter:none !important}
a.pu-btn--gold,.pu-btn--gold{
  background:var(--pu-bbg,var(--pu-gold)) !important;
  color:var(--pu-btx,var(--pu-forest-deep)) !important;
  border:1px solid var(--pu-bbg,var(--pu-gold)) !important}
a.pu-btn--gold:hover,.pu-btn--gold:hover{
  background:var(--pu-bhbg,var(--pu-forest-deep)) !important;
  border-color:var(--pu-bhbg,var(--pu-forest-deep)) !important;
  color:var(--pu-bhtx,var(--pu-cream-on-dark)) !important;filter:none !important}
a.pu-assess__btn,.pu-assess__btn{
  background:var(--pu-bbg,var(--pu-forest-deep)) !important;
  color:var(--pu-btx,var(--pu-cream-on-dark)) !important;
  border:1px solid var(--pu-bbg,var(--pu-forest-deep)) !important}
a.pu-assess__btn:hover,.pu-assess__btn:hover{
  background:var(--pu-bhbg,transparent) !important;
  color:var(--pu-bhtx,var(--pu-forest-deep)) !important;filter:none !important}

/* Fonts: Fraunces for headlines, Inter for body/UI — enforced over the
   site's Design settings typography. */
.section h1,.section h2,.section h3,.section h4,.section h5,.section h6,.pu-h{
  font-family:'Fraunces',Georgia,serif !important}
body#encore-theme,.section p,.section li,.section a,.section small,
.pu-rt,.pu-btn,.pu-eyebrow,.pu-cred__sub,.pu-bonus__sub,
.pu-price-box__opt,.pu-price-box__per,.pu-price-box__fine,
.pu-testi__nm,.pu-testi__wh{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important}
.section .pu-em,.section .pu-h em,.section .pu-h .pu-em,
.section .pu-intro__lede,.section p.pu-intro__lede,
.section .pu-rt--serif,.section .pu-rt--serif p,
.section .pu-testi blockquote,.section .pu-acc__num,.section .pu-acc__title,
.section .pu-card__n,.section .pu-price-box__amount,
.section .pu-assess__q,.section p.pu-assess__q,
.section .pu-fit h3,.section .pu-bonus h3,
.section .pu-faq-item summary,.section .pu-cred__big,
.footer .logo__text,.header .logo__text{
  font-family:'Fraunces',Georgia,serif !important}

/* Stock Kajabi video block, dressed as the design's VSL frame */
.block-type--video .block{border:0;border-radius:0;background:transparent}
.block-type--video .video{box-shadow:0 24px 60px -30px rgba(30,33,28,.35)}
.block-type--video .video img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover}
.block-type--video .video>div,.block-type--video .video iframe,
.block-type--video .video video{width:100% !important}

/* Footer: width-controlled columns, laid out like the design */
.footer .footer__container{display:flex !important;flex-wrap:wrap;align-items:flex-start;
  column-gap:2.75rem;row-gap:2.25rem;}
.footer .footer__block{margin:0}
.footer .footer-col-1{flex:0 0 calc(8.3333% - 2.75rem) !important;width:auto !important}
.footer .footer-col-2{flex:0 0 calc(16.6667% - 2.75rem) !important;width:auto !important}
.footer .footer-col-3{flex:0 0 calc(25.0000% - 2.75rem) !important;width:auto !important}
.footer .footer-col-4{flex:0 0 calc(33.3333% - 2.75rem) !important;width:auto !important}
.footer .footer-col-5{flex:0 0 calc(41.6667% - 2.75rem) !important;width:auto !important}
.footer .footer-col-6{flex:0 0 calc(50.0000% - 2.75rem) !important;width:auto !important}
.footer .footer-col-7{flex:0 0 calc(58.3333% - 2.75rem) !important;width:auto !important}
.footer .footer-col-8{flex:0 0 calc(66.6667% - 2.75rem) !important;width:auto !important}
.footer .footer-col-9{flex:0 0 calc(75.0000% - 2.75rem) !important;width:auto !important}
.footer .footer-col-10{flex:0 0 calc(83.3333% - 2.75rem) !important;width:auto !important}
.footer .footer-col-11{flex:0 0 calc(91.6667% - 2.75rem) !important;width:auto !important}
.footer .footer-col-12{flex:0 0 calc(100.0000% - 2.75rem) !important;width:auto !important}
.footer .footer__block:has(.copyright){margin-left:0;text-align:left;border-top: 1px solid var(--pu-border-dark);}
.footer .link-list__links{margin-top:1.1rem;display:grid;gap:.65rem}
@media(max-width:767px){
  .footer .footer__container{flex-direction:column;row-gap:2rem}
  .footer .footer__block[class*=footer-col-]{flex:0 0 100% !important;width:100% !important}
  .footer .footer__block:has(.copyright){margin-left:0;text-align:left}
}

/* Mobile polish — spacing tuned to the design's small-screen rhythm */
@media(max-width:767px){
  .pu-h--h1{font-size:clamp(2.4rem,10.5vw,3.1rem)}
  .pu-intro__cta{margin-top:2rem;gap:1.1rem}
  .pu-assess{padding:1.9rem 1.5rem;gap:1.2rem}
  .pu-card{padding:1.5rem 1.2rem}
  .pu-testi{padding:2rem 1.6rem}
  .pu-fit{padding:2rem 1.6rem}
  .pu-bonus__pad{padding:1.6rem}
  .pu-price-box{padding:2.6rem 1.6rem}
  .pu-price-box__amount{font-size:3.9rem}
  .pu-acc-item ul{padding-left:0}
  .pu-acc__note{padding-left:0}
  .pu-acc summary,.pu-acc-item summary{gap:1rem}
  .pu-acc__num{min-width:2.1rem}
}
div#section-s_hero {
    border-bottom: 1px solid #DAD4C4;
}
div#section-s_assess {
    border-bottom: 1px solid #DAD4C4;
}
div#section-s_pain, div#section-s_price, div#section-s_guar, div#section-s_faq {
    border-bottom: 1px solid #DAD4C4;
}
div#section-s_dream, div#section-s_instr, div#section-s_testi, div#section-s_fit, div#section-s_lessons, div#section-s_bonus {
    border-bottom: 1px solid #DAD4C4;
}

body, .page, .main-content {
  overflow: visible !important;
}

@media(min-width:768px){
div#block-pub037 {
    position: -webkit-sticky;   
    position: sticky;
    top: 70px;
    z-index: 99;  
    transition: transform 0.4s ease;
    will-change: transform;
}

}































