/* =========================================================================
   Menopause & Perimenopause program — shared design styles
   Used by the 1200-series "menopause_*" plugins. Each plugin wraps its
   output in <div class="mp-page"> so these scoped rules apply.
   ========================================================================= */
.mp-page{
  --mp-sage:#bccbb9;--mp-olive:#4b6148;--mp-olive-soft:#6d8168;--mp-ink:#2f352e;
  --mp-muted:#727a70;--mp-line:#e7ece5;--mp-rose:#c9758f;--mp-rose-deep:#b25b78;
  --mp-blush:#f8e7ee;--mp-blush-2:#fdf4f8;--mp-cream:#faf9f6;
  font-family:"Poppins",sans-serif;color:var(--mp-ink);position:relative;
}
.mp-page *{box-sizing:border-box;}
.mp-page section{position:relative;}
.mp-page .container{position:relative;z-index:2;}
.mp-page p{color:var(--mp-muted);line-height:1.8;font-weight:300;}
.mp-page h1,.mp-page h2,.mp-page h3,.mp-page h4{color:var(--mp-ink);font-weight:600;letter-spacing:-.01em;}

.mp-page .mp-eyebrow{display:inline-block;font-size:12px;letter-spacing:.22em;text-transform:uppercase;
  font-weight:600;color:var(--mp-rose-deep);margin-bottom:18px;}
.mp-page .mp-eyebrow.olive{color:var(--mp-olive-soft);}

.mp-sec{padding:64px 0;}
.mp-sec-head{max-width:760px;margin:0 auto 54px;text-align:center;}
.mp-sec-head h2{font-size:clamp(26px,3.4vw,36px);line-height:1.2;margin-bottom:18px;}
.mp-sec-head p{font-size:16px;}
.mp-kicker-line{width:54px;height:3px;border-radius:3px;margin:0 auto 22px;
  background:linear-gradient(90deg,var(--mp-rose),var(--mp-sage));}

.mp-blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;z-index:1;pointer-events:none;}
.mp-blob.pink{background:radial-gradient(circle,#f6d6e2 0%,rgba(246,214,226,0) 70%);}
.mp-blob.sage{background:radial-gradient(circle,#d6e2d2 0%,rgba(214,226,210,0) 70%);}
.mp-dotgrid{position:absolute;inset:0;z-index:1;pointer-events:none;
  background-image:radial-gradient(rgba(178,91,120,.10) 1px,transparent 1px);
  background-size:26px 26px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent);
  mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent);opacity:.5;}

/* ---------- buttons ---------- */
.mp-btn{display:inline-flex;align-items:center;gap:10px;padding:15px 34px;border-radius:50px;
  font-size:15px;font-weight:600;letter-spacing:.01em;text-decoration:none;transition:.35s ease;border:none;cursor:pointer;}
.mp-btn i{font-size:14px;transition:transform .35s ease;}
.mp-btn:hover i{transform:translateX(4px);}
.mp-btn-rose{background:linear-gradient(135deg,var(--mp-rose) 0%,var(--mp-rose-deep) 100%);
  color:#fff;box-shadow:0 12px 26px -10px rgba(178,91,120,.7);}
.mp-btn-rose:hover{color:#fff;transform:translateY(-3px);box-shadow:0 18px 34px -10px rgba(178,91,120,.8);}
.mp-btn-olive{background:var(--mp-olive);color:#fff;box-shadow:0 12px 26px -12px rgba(75,97,72,.7);}
.mp-btn-olive:hover{color:#fff;transform:translateY(-3px);background:#3d5139;}
.mp-btn-ghost{background:transparent;color:var(--mp-olive);border:1.5px solid var(--mp-sage);}
.mp-btn-ghost:hover{background:var(--mp-olive);border-color:var(--mp-olive);color:#fff;}

/* ---------- HERO ---------- */
.mp-hero{padding:56px 0 60px;border-radius:26px;overflow:hidden;
  background:
    radial-gradient(1200px 600px at 88% -10%, #f7e7ef 0%, rgba(247,231,239,0) 60%),
    radial-gradient(900px 500px at 0% 110%, #e4ece0 0%, rgba(228,236,224,0) 60%),
    linear-gradient(180deg,#fffdfa 0%,#faf9f6 100%);}
.mp-hero .row{align-items:center;}
.mp-hero h1{font-size:clamp(32px,4.6vw,42px);line-height:1.1;font-weight:700;margin-bottom:22px;}
.mp-hero h1 .accent,.mp-hero h1 em,.mp-hero h1 i{color:var(--mp-rose-deep);font-style:italic;font-weight:600;}
.mp-hero .lead{font-size:17px;line-height:1.85;max-width:560px;margin-bottom:32px;}
.mp-hero .lead em{color:var(--mp-olive);font-style:italic;font-weight:400;}
.mp-trust{margin-top:20px;font-size:13px;color:var(--mp-muted);letter-spacing:.02em;}
.mp-trust b{color:var(--mp-olive);font-weight:600;}
.mp-hero-media{position:relative;}
.mp-hero-media .frame{position:relative;border-radius:26px;overflow:hidden;box-shadow:0 40px 80px -34px rgba(75,97,72,.45);}
.mp-hero-media .frame img{width:100%;display:block;aspect-ratio:4/4.4;object-fit:cover;object-position:top center;}
.mp-hero-media:before{content:"";position:absolute;inset:-16px -16px auto auto;width:64%;height:70%;
  border-radius:30px;background:linear-gradient(135deg,var(--mp-blush),#f4dbe6);z-index:0;transform:rotate(3deg);}
.mp-hero-media:after{content:"";position:absolute;left:-20px;bottom:-20px;width:120px;height:120px;border-radius:24px;
  background:repeating-linear-gradient(45deg,var(--mp-sage) 0 2px,transparent 2px 10px);opacity:.35;z-index:0;}
.mp-hero-badge{position:absolute;left:-18px;bottom:34px;z-index:3;background:#fff;border-radius:16px;
  padding:16px 20px;box-shadow:0 20px 40px -18px rgba(0,0,0,.28);display:flex;align-items:center;gap:12px;max-width:230px;}
.mp-hero-badge .ic{width:42px;height:42px;flex:0 0 42px;border-radius:12px;display:grid;place-items:center;
  background:var(--mp-blush);color:var(--mp-rose-deep);font-size:18px;}
.mp-hero-badge b{display:block;font-size:14px;color:var(--mp-ink);line-height:1.2;}
.mp-hero-badge span{font-size:12px;color:var(--mp-muted);}

/* ---------- SYMPTOMS ---------- */
.mp-body-copy{max-width:820px;margin:0 auto;}
.mp-body-copy p{font-size:16px;margin-bottom:20px;text-align:center;}
.mp-body-copy p .q{color:var(--mp-rose-deep);font-style:italic;}
.mp-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-width:900px;margin:30px auto 0;}
.mp-chip{display:inline-flex;align-items:center;gap:9px;padding:11px 20px;border-radius:50px;
  background:#fff;border:1px solid var(--mp-line);font-size:14px;color:var(--mp-ink);font-weight:400;
  box-shadow:0 6px 16px -12px rgba(75,97,72,.35);transition:.3s ease;}
.mp-chip:before{content:"";width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,var(--mp-rose),var(--mp-sage));}
.mp-chip:hover{transform:translateY(-3px);border-color:var(--mp-blush);box-shadow:0 12px 22px -12px rgba(178,91,120,.5);}
.mp-bridge{max-width:720px;margin:48px auto 0;text-align:center;padding:26px 34px;border-radius:20px;
  background:linear-gradient(135deg,var(--mp-blush-2),#f3f7f1);border:1px solid #f0e2e9;}
.mp-bridge p{font-size:18px;color:var(--mp-olive);font-style:italic;margin:0;font-weight:400;}

/* ---------- PILLARS ---------- */
.mp-pillar-card{background:#fff;border-radius:22px;padding:40px 34px;height:100%;
  border:1px solid var(--mp-line);box-shadow:0 26px 50px -34px rgba(75,97,72,.4);
  transition:.4s cubic-bezier(.2,.7,.3,1);position:relative;overflow:hidden;}
.mp-pillar-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;
  background:linear-gradient(90deg,var(--mp-sage),var(--mp-rose));transform:scaleX(0);transform-origin:left;transition:.4s;}
.mp-pillar-card:hover{transform:translateY(-8px);box-shadow:0 40px 60px -34px rgba(75,97,72,.5);}
.mp-pillar-card:hover:before{transform:scaleX(1);}
.mp-pillar-ic{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;font-size:26px;margin-bottom:22px;
  background:linear-gradient(135deg,#eef3ec,#f8e7ee);color:var(--mp-olive);}
.mp-pillar-card:nth-child(2) .mp-pillar-ic{color:var(--mp-rose-deep);}
.mp-tag{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--mp-rose-deep);}
.mp-pillar-card h3{font-size:20px;margin:8px 0 12px;}
.mp-pillar-card p{font-size:14.5px;margin:0;}
.mp-tie{max-width:840px;margin:50px auto 0;text-align:center;}
.mp-tie p{font-size:16px;}
.mp-tie .em{color:var(--mp-olive);font-weight:500;font-style:italic;}

/* ---------- WHAT WE ADDRESS ---------- */
.mp-addr-card{display:flex;gap:18px;padding:28px;border-radius:18px;background:#fff;height:100%;
  border:1px solid var(--mp-line);transition:.35s ease;box-shadow:0 18px 40px -34px rgba(75,97,72,.35);}
.mp-addr-card:hover{transform:translateY(-6px);border-color:var(--mp-blush);box-shadow:0 26px 48px -30px rgba(178,91,120,.4);}
.mp-addr-ic{flex:0 0 52px;width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:20px;
  background:var(--mp-blush);color:var(--mp-rose-deep);}
.mp-addr-card:nth-child(even) .mp-addr-ic{background:#eef3ec;color:var(--mp-olive);}
.mp-addr-card h3{font-size:17px;margin:2px 0 8px;}
.mp-addr-card p{font-size:14px;margin:0;}
.mp-inline-cta{text-align:center;margin-top:50px;}

/* ---------- TIMELINE / JOURNEY (rounded dark panel) ---------- */
.mp-journey{border-radius:28px;overflow:hidden;padding:64px 34px;
  background:linear-gradient(180deg,#4b6148 0%,#40513c 100%);color:#fff;}
.mp-journey .mp-sec-head h2,.mp-journey .mp-sec-head p{color:#fff;}
.mp-journey .mp-sec-head p{opacity:.85;}
.mp-journey .mp-eyebrow{color:#e6b9c9;}
.mp-journey .mp-kicker-line{background:linear-gradient(90deg,var(--mp-rose),#cdd9c9);}
.mp-timeline{position:relative;margin-top:30px;display:grid;grid-template-columns:repeat(6,1fr);gap:20px;}
.mp-timeline:before{content:"";position:absolute;top:26px;left:6%;right:6%;height:2px;
  background:linear-gradient(90deg,rgba(255,255,255,.15),rgba(230,185,201,.6),rgba(255,255,255,.15));}
.mp-node{position:relative;text-align:center;}
.mp-node .dot{width:54px;height:54px;border-radius:50%;margin:0 auto 20px;display:grid;place-items:center;
  font-size:17px;font-weight:600;color:#fff;position:relative;z-index:2;
  background:linear-gradient(135deg,var(--mp-rose),var(--mp-rose-deep));box-shadow:0 0 0 6px rgba(201,117,143,.18);}
.mp-node .ph{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#e6b9c9;font-weight:600;margin-bottom:6px;}
.mp-node h3{color:#fff;font-size:16px;margin:0 0 10px;}
.mp-node p{color:rgba(255,255,255,.72);font-size:13px;line-height:1.65;margin:0;}

/* ---------- INCLUDED ---------- */
.mp-inc-card{background:#fff;border-radius:24px;padding:44px 46px;
  border:1px solid var(--mp-line);box-shadow:0 30px 60px -40px rgba(75,97,72,.4);position:relative;overflow:hidden;}
.mp-inc-card:before{content:"";position:absolute;top:-40px;right:-40px;width:180px;height:180px;border-radius:50%;
  background:radial-gradient(circle,var(--mp-blush),rgba(248,231,238,0) 70%);}
.mp-inc-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:16px 40px;}
.mp-inc-list li{display:flex;gap:14px;align-items:flex-start;font-size:14.5px;color:var(--mp-ink);line-height:1.55;}
.mp-inc-list li i{flex:0 0 24px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:11px;
  background:linear-gradient(135deg,var(--mp-sage),#a7bda2);color:#fff;margin-top:2px;}
.mp-inc-list li:nth-child(even) i{background:linear-gradient(135deg,var(--mp-rose),var(--mp-rose-deep));}
.mp-inc-list li em{font-style:italic;color:var(--mp-muted);}

/* ---------- MEET DR ---------- */
.mp-meet .row{align-items:center;}
.mp-meet-media{position:relative;}
.mp-meet-media .frame{border-radius:26px;overflow:hidden;box-shadow:0 40px 80px -40px rgba(75,97,72,.5);position:relative;z-index:2;}
.mp-meet-media .frame img{width:100%;display:block;aspect-ratio:4/4.6;object-fit:cover;object-position:top center;}
.mp-meet-media:before{content:"";position:absolute;inset:auto auto -18px -18px;width:70%;height:60%;border-radius:26px;
  background:linear-gradient(135deg,var(--mp-blush),#eef3ec);z-index:1;}
.mp-creds{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0 24px;
  font-size:14px;font-weight:500;letter-spacing:.02em;color:var(--mp-olive);}
.mp-creds span{white-space:nowrap;}
.mp-creds span:not(:last-child):after{content:"\00b7";margin-left:10px;color:var(--mp-rose);font-weight:700;}
.mp-meet-body p{font-size:15.5px;margin-bottom:18px;}
.mp-pull{margin-top:26px;padding:22px 30px;border-left:4px solid var(--mp-rose);border-radius:0 16px 16px 0;
  background:linear-gradient(135deg,var(--mp-blush-2),#fff);}
.mp-pull p{font-size:20px;font-style:italic;color:var(--mp-olive);margin:0;font-weight:500;}

/* ---------- PRICING ---------- */
.mp-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:920px;margin:0 auto;align-items:stretch;}
.mp-price-card{background:#fff;border-radius:24px;padding:40px 38px;border:1px solid var(--mp-line);
  box-shadow:0 26px 54px -38px rgba(75,97,72,.4);display:flex;flex-direction:column;transition:.4s ease;position:relative;}
.mp-price-card:hover{transform:translateY(-6px);}
.mp-price-card.featured{border:1.5px solid var(--mp-rose);
  background:linear-gradient(180deg,var(--mp-blush-2),#fff);box-shadow:0 40px 70px -40px rgba(178,91,120,.55);}
.mp-ribbon{position:absolute;top:22px;right:22px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:#fff;padding:7px 15px;border-radius:50px;background:linear-gradient(135deg,var(--mp-rose),var(--mp-rose-deep));
  box-shadow:0 10px 20px -8px rgba(178,91,120,.7);}
.mp-price-name{font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--mp-muted);}
.mp-price-num{font-size:44px;font-weight:700;color:var(--mp-ink);margin:8px 0 4px;}
.mp-price-num small{font-size:15px;font-weight:400;color:var(--mp-muted);}
.mp-price-sub{font-size:14px;color:var(--mp-muted);margin-bottom:24px;}
.mp-price-list{list-style:none;padding:0;margin:0 0 30px;flex:1;}
.mp-price-list li{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--mp-ink);
  padding:10px 0;border-bottom:1px dashed var(--mp-line);line-height:1.5;}
.mp-price-list li:last-child{border-bottom:none;}
.mp-price-list li i{color:var(--mp-olive);font-size:13px;margin-top:3px;flex:0 0 16px;}
.mp-price-card.featured .mp-price-list li i{color:var(--mp-rose-deep);}
.mp-price-list li.muted{color:var(--mp-muted);font-style:italic;}
.mp-price-list li.muted i{color:var(--mp-sage);}
.mp-price-card .mp-btn{justify-content:center;width:100%;}
.mp-reassure{text-align:center;max-width:640px;margin:40px auto 0;font-size:14.5px;color:var(--mp-muted);font-style:italic;}
/* feature list rendered from CKEditor <ul> content */
.mp-price-list-rich{margin:0 0 30px;flex:1;}
.mp-price-list-rich ul{list-style:none;padding:0;margin:0;}
.mp-price-list-rich li{position:relative;padding:10px 0 10px 28px;font-size:14px;color:var(--mp-ink);
  border-bottom:1px dashed var(--mp-line);line-height:1.5;}
.mp-price-list-rich li:last-child{border-bottom:none;}
.mp-price-list-rich li:before{content:"\f00c";font-family:"Font Awesome 5 Free","Font Awesome 6 Free",sans-serif;font-weight:900;
  position:absolute;left:0;top:10px;font-size:12px;color:var(--mp-olive);}
.mp-price-card.featured .mp-price-list-rich li:before{color:var(--mp-rose-deep);}
.mp-price-list-rich em{color:var(--mp-muted);font-style:italic;}

/* ---------- FAQ ---------- */
.mp-faq-wrap{max-width:820px;margin:0 auto;}
.mp-acc{background:#fff;border:1px solid var(--mp-line);border-radius:16px;margin-bottom:14px;overflow:hidden;transition:.3s ease;}
.mp-acc.open{border-color:var(--mp-blush);box-shadow:0 20px 40px -30px rgba(178,91,120,.4);}
.mp-acc-q{width:100%;text-align:left;background:none;border:none;padding:22px 26px;cursor:pointer;
  display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:16px;font-weight:500;color:var(--mp-ink);font-family:inherit;}
.mp-acc-q .ic{flex:0 0 30px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:13px;
  background:var(--mp-blush);color:var(--mp-rose-deep);transition:.35s ease;}
.mp-acc.open .mp-acc-q .ic{transform:rotate(45deg);background:var(--mp-rose);color:#fff;}
.mp-acc-a{max-height:0;overflow:hidden;transition:max-height .4s ease;}
.mp-acc-a-inner{padding:0 26px 24px;font-size:14.5px;color:var(--mp-muted);line-height:1.8;}

/* ---------- FINAL CTA ---------- */
.mp-finalcta-inner{max-width:1100px;margin:0 auto;border-radius:30px;padding:66px 40px;text-align:center;position:relative;overflow:hidden;
  background:linear-gradient(135deg,#4b6148 0%,#3d5139 60%,#5a4450 100%);}
.mp-finalcta-inner:before{content:"";position:absolute;top:-60px;right:-40px;width:280px;height:280px;border-radius:50%;
  background:radial-gradient(circle,rgba(201,117,143,.5),rgba(201,117,143,0) 70%);}
.mp-finalcta-inner:after{content:"";position:absolute;bottom:-80px;left:-40px;width:300px;height:300px;border-radius:50%;
  background:radial-gradient(circle,rgba(188,203,185,.35),rgba(188,203,185,0) 70%);}
.mp-finalcta h2{color:#fff;font-size:clamp(26px,3.4vw,38px);margin-bottom:16px;position:relative;z-index:2;}
.mp-finalcta p{color:rgba(255,255,255,.82);max-width:560px;margin:0 auto 30px;font-size:16px;position:relative;z-index:2;}
.mp-finalcta .mp-btn{position:relative;z-index:2;}

/* ---------- scroll reveal ---------- */
.mp-reveal{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease;}
.mp-reveal.in{opacity:1;transform:none;}
.mp-reveal.d1{transition-delay:.08s;}.mp-reveal.d2{transition-delay:.16s;}
.mp-reveal.d3{transition-delay:.24s;}.mp-reveal.d4{transition-delay:.32s;}.mp-reveal.d5{transition-delay:.4s;}

/* ---------- responsive ---------- */
@media(max-width:991px){
  .mp-hero{padding:44px 22px 40px;text-align:center;}
  .mp-hero .lead{margin-left:auto;margin-right:auto;}
  .mp-hero-media{max-width:440px;margin:44px auto 0;}
  .mp-timeline{grid-template-columns:1fr;gap:0;}
  .mp-timeline:before{left:26px;right:auto;top:0;bottom:0;width:2px;height:auto;}
  .mp-node{text-align:left;display:grid;grid-template-columns:54px 1fr;gap:18px;padding-bottom:34px;}
  .mp-node .dot{margin:0;}
  .mp-inc-list{grid-template-columns:1fr;}
  .mp-price-grid{grid-template-columns:1fr;max-width:460px;}
  .mp-meet-media{max-width:420px;margin:0 auto 40px;}
}
@media(max-width:575px){
  .mp-sec{padding:48px 0;}
  .mp-inc-card,.mp-price-card{padding:30px 24px;}
  .mp-finalcta-inner{padding:48px 24px;}
  .mp-journey{padding:48px 20px;}
}
