/* ==========================================================================
   Muscle Mommy Coaching — shared stylesheet (mmc.css)
   Design system + all components. Mobile-first, breakpoint 768px.
   Netlify can minify on deploy (Asset optimization → Bundle & minify CSS).
   ========================================================================== */

:root{
  /* Palette: Stone & Wine (editorial premium, tuned for women 35+) */
  --mmc-plum:      #5B2233;  /* deep wine (primary)            */
  --mmc-plum-deep: #3D1522;  /* darkest wine (headings/bg)     */
  --mmc-rose:      #B06A54;  /* terracotta-rose (accent)       */
  --mmc-blush:     #EADFCB;  /* warm sand (light accent band)  */
  --mmc-cream:     #F5F1EA;  /* warm stone (page background)   */
  --mmc-gold:      #C6A15B;  /* brushed gold                   */
  --mmc-gold-dark: #A5813F;  /* deep gold (hover)              */
  --mmc-ink:       #241E1E;  /* warm charcoal (body text)      */
  --mmc-gray:      #6B6258;  /* warm grey (muted text)         */
  --mmc-line:      #E6DED2;  /* hairline / borders             */
  --mmc-white:     #FFFFFF;

  --mmc-font-display:'Fraunces', Georgia, 'Times New Roman', serif;
  --mmc-font-body:   'Public Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  --mmc-max:    1140px;
  --mmc-gutter: 20px;
  --mmc-radius: 14px;
  --mmc-shadow: 0 4px 24px rgba(61,21,34,0.10);
}

/* ---------- Reset ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  font-family:var(--mmc-font-body);
  background:var(--mmc-cream);
  color:var(--mmc-ink);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img,video{max-width:100%;height:auto;display:block;}
a{color:var(--mmc-rose);text-decoration:none;}
a:hover{text-decoration:underline;}
ul{list-style:none;}
button{font-family:inherit;cursor:pointer;}

/* Visible focus on every interactive element */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{
  outline:3px solid var(--mmc-gold);
  outline-offset:2px;
  border-radius:3px;
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important;}
}

/* ---------- Typography ---------- */
h1,h2,h3,h4{font-family:var(--mmc-font-display);font-weight:600;line-height:1.12;color:var(--mmc-plum-deep);}
h1{font-size:clamp(32px,6vw,54px);letter-spacing:-.5px;}
h2{font-size:clamp(26px,4.4vw,40px);}
h3{font-size:clamp(20px,3vw,26px);}
h4{font-size:19px;}
p{margin:0 0 1em;}
p:last-child{margin-bottom:0;}
em{font-style:italic;color:var(--mmc-rose);}
strong{font-weight:700;}
.mmc-eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--mmc-rose);margin-bottom:14px;}
.mmc-lead{font-size:clamp(18px,2.4vw,21px);line-height:1.55;color:var(--mmc-gray);}
.mmc-serif{font-family:var(--mmc-font-display);}

/* ---------- Layout ---------- */
.mmc-wrap{max-width:var(--mmc-max);margin:0 auto;padding:0 var(--mmc-gutter);}
.mmc-narrow{max-width:760px;margin:0 auto;padding:0 var(--mmc-gutter);}
.mmc-section{padding:56px 0;}
.mmc-section--tight{padding:36px 0;}
.mmc-section--plum{background:var(--mmc-plum-deep);color:var(--mmc-blush);}
.mmc-section--plum h1,.mmc-section--plum h2,.mmc-section--plum h3,.mmc-section--plum h4{color:var(--mmc-white);}
.mmc-section--blush{background:var(--mmc-blush);}
.mmc-section--cream{background:var(--mmc-cream);}
.mmc-center{text-align:center;}
@media (min-width:768px){
  body{font-size:18px;line-height:1.7;}
  .mmc-section{padding:88px 0;}
  .mmc-section--tight{padding:56px 0;}
}

/* Skip link */
.mmc-skip{position:absolute;left:-999px;top:0;background:var(--mmc-plum-deep);color:#fff;padding:12px 18px;z-index:1000;border-radius:0 0 8px 0;}
.mmc-skip:focus{left:0;}

/* ---------- Buttons ---------- */
.mmc-btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:14px 26px;
  font-family:var(--mmc-font-body);font-size:16px;font-weight:700;
  letter-spacing:.01em;text-align:center;text-decoration:none;
  border:2px solid transparent;border-radius:10px;cursor:pointer;
  transition:background .15s,color .15s,border-color .15s,transform .15s;
  line-height:1.2;
}
.mmc-btn:hover{text-decoration:none;transform:translateY(-1px);}
.mmc-btn--gold{background:var(--mmc-gold);color:var(--mmc-ink);border-color:var(--mmc-gold);}
.mmc-btn--gold:hover{background:var(--mmc-gold-dark);border-color:var(--mmc-gold-dark);color:#fff;}
.mmc-btn--rose{background:var(--mmc-rose);color:#fff;border-color:var(--mmc-rose);}
.mmc-btn--rose:hover{background:#925339;border-color:#925339;}
.mmc-btn--ghost{background:transparent;color:var(--mmc-plum);border-color:var(--mmc-plum);}
.mmc-btn--ghost:hover{background:var(--mmc-plum);color:#fff;}
.mmc-btn--ghost-light{background:transparent;color:var(--mmc-blush);border-color:var(--mmc-blush);}
.mmc-btn--ghost-light:hover{background:var(--mmc-blush);color:var(--mmc-plum-deep);}
.mmc-btn--lg{min-height:54px;padding:17px 34px;font-size:17px;}
.mmc-btn--full{width:100%;}
.mmc-btn[disabled]{opacity:.55;cursor:not-allowed;transform:none;}

/* ---------- Header ---------- */
.mmc-header{position:sticky;top:0;z-index:100;background:rgba(245,241,234,.94);backdrop-filter:blur(8px);border-bottom:1px solid transparent;transition:border-color .2s;}
.mmc-header.mmc-scrolled{border-bottom-color:var(--mmc-line);}
.mmc-header-inner{max-width:var(--mmc-max);margin:0 auto;padding:8px var(--mmc-gutter);display:flex;align-items:center;justify-content:space-between;gap:16px;}
.mmc-brand{display:flex;align-items:center;line-height:0;flex-shrink:0;}
.mmc-brand img{height:64px;width:auto;transition:transform .2s;}
.mmc-brand:hover img{transform:scale(1.04);}
.mmc-nav{display:flex;align-items:center;gap:26px;}
.mmc-nav a{font-size:14px;font-weight:500;letter-spacing:.02em;color:var(--mmc-plum-deep);}
.mmc-nav a:hover{color:var(--mmc-rose);text-decoration:none;}
.mmc-nav a[aria-current="page"]{color:var(--mmc-rose);border-bottom:2px solid var(--mmc-gold);}
.mmc-nav .mmc-btn{min-height:44px;padding:10px 20px;font-size:14px;}
.mmc-nav-toggle{display:none;background:none;border:none;padding:10px;color:var(--mmc-plum-deep);}
.mmc-nav-toggle svg{display:block;width:26px;height:26px;}
@media (max-width:767px){
  .mmc-brand img{height:52px;}
  .mmc-nav-toggle{display:block;}
  .mmc-nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--mmc-cream);border-bottom:1px solid var(--mmc-line);padding:8px 0 16px;display:none;}
  .mmc-nav.mmc-open{display:flex;}
  .mmc-nav a{padding:14px var(--mmc-gutter);border-bottom:1px solid var(--mmc-line);}
  .mmc-nav .mmc-btn{margin:14px var(--mmc-gutter) 0;}
}

/* ---------- Footer ---------- */
.mmc-footer{background:var(--mmc-plum-deep);color:var(--mmc-blush);padding:56px 0 28px;font-size:15px;}
.mmc-footer a{color:var(--mmc-blush);}
.mmc-footer a:hover{color:var(--mmc-gold);}
.mmc-footer-cols{display:grid;grid-template-columns:1fr;gap:32px;}
.mmc-footer h4{color:var(--mmc-gold);font-family:var(--mmc-font-body);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px;}
.mmc-footer ul li{margin-bottom:9px;}
.mmc-social{display:flex;gap:14px;margin-top:14px;}
.mmc-social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;border:1px solid rgba(198,161,91,.35);color:var(--mmc-blush);transition:color .15s ease,border-color .15s ease,background .15s ease;}
.mmc-social a:hover{color:var(--mmc-plum-deep);background:var(--mmc-gold);border-color:var(--mmc-gold);}
.mmc-social svg{width:20px;height:20px;}
.mmc-footer-legal{margin-top:40px;padding-top:22px;border-top:1px solid rgba(198,161,91,.25);font-size:13px;color:rgba(234,223,203,.75);}
.mmc-footer-legal p{margin-bottom:8px;}
.mmc-footer-disclaimer{font-size:12px;opacity:.7;max-width:640px;}
@media (min-width:768px){.mmc-footer-cols{grid-template-columns:1.4fr 1fr 1.2fr 1fr;gap:40px;}}

/* ---------- Hero ---------- */
.mmc-hero{background:var(--mmc-cream);text-align:center;padding:64px 0 56px;}
.mmc-hero h1{margin-bottom:20px;}
.mmc-hero .mmc-lead{max-width:660px;margin:0 auto 28px;}
.mmc-hero-cta{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}
.mmc-trustline{margin-top:26px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--mmc-gray);}
.mmc-trustline::before{content:"◆";color:var(--mmc-gold);margin-right:8px;font-size:9px;vertical-align:2px;}

/* ---------- Generic cards ---------- */
.mmc-cards{display:grid;grid-template-columns:1fr;gap:22px;}
@media (min-width:768px){.mmc-cards--3{grid-template-columns:repeat(3,1fr);}.mmc-cards--2{grid-template-columns:repeat(2,1fr);}}
.mmc-card{background:var(--mmc-white);border:1px solid var(--mmc-line);border-radius:var(--mmc-radius);padding:28px 26px;box-shadow:var(--mmc-shadow);}
.mmc-card h3{color:var(--mmc-plum);margin-bottom:10px;}
.mmc-card--plum{background:var(--mmc-plum);color:var(--mmc-blush);border-color:var(--mmc-plum);}
.mmc-card--plum h3{color:#fff;}
.mmc-card-kicker{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mmc-rose);margin-bottom:8px;}

/* ---------- Education / locked library cards ---------- */
.mmc-edu-locked{position:relative;overflow:hidden;}
.mmc-edu-locked::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(245,241,234,0) 40%,rgba(91,34,51,.06));pointer-events:none;}
.mmc-edu-locked .mmc-card-kicker,.mmc-edu-locked h3,.mmc-edu-locked p{opacity:.72;}
.mmc-edu-lock{position:absolute;top:16px;right:18px;font-size:18px;line-height:1;filter:grayscale(.2);}
.mmc-edu-note{max-width:760px;margin:0 auto;font-size:14px;color:var(--mmc-gray);}
.mmc-edu-slot{border:2px dashed var(--mmc-line);border-radius:var(--mmc-radius);padding:22px 24px;background:rgba(198,161,91,.05);}
.mmc-edu-slot .mmc-card-kicker{color:var(--mmc-gold-dark);}

/* ---------- Statement block (Classes vs coaching) ---------- */
.mmc-statement{max-width:720px;margin:0 auto;text-align:center;}
.mmc-statement p{font-size:clamp(19px,2.6vw,24px);line-height:1.5;font-family:var(--mmc-font-display);color:var(--mmc-plum-deep);margin-bottom:1em;}
.mmc-statement .mmc-statement-punch{color:var(--mmc-rose);font-weight:600;}

/* ---------- Includes list (8 items) ---------- */
.mmc-includes{max-width:820px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:12px;}
@media (min-width:768px){.mmc-includes{grid-template-columns:1fr 1fr;gap:14px 32px;}}
.mmc-includes li{position:relative;padding-left:34px;font-size:16px;line-height:1.5;}
.mmc-includes li::before{content:"";position:absolute;left:4px;top:6px;width:13px;height:8px;border-left:2.5px solid var(--mmc-gold);border-bottom:2.5px solid var(--mmc-gold);transform:rotate(-45deg);}

/* ---------- Pricing ---------- */
.mmc-price-includes{max-width:860px;margin:0 auto 40px;background:var(--mmc-white);border:1px solid var(--mmc-line);border-radius:var(--mmc-radius);padding:26px 28px;box-shadow:var(--mmc-shadow);}
.mmc-price-includes h3{text-align:center;margin-bottom:18px;}
.mmc-zero-band{max-width:1040px;margin:0 auto 24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;background:var(--mmc-blush);border:1px solid var(--mmc-gold);border-left:5px solid var(--mmc-gold);border-radius:var(--mmc-radius);padding:26px 30px;}
.mmc-zero-band-text{flex:1 1 440px;}
.mmc-zero-band-text .mmc-eyebrow{margin-bottom:6px;}
.mmc-zero-band h2{color:var(--mmc-plum-deep);margin:2px 0 10px;}
.mmc-zero-band-body{color:var(--mmc-ink);line-height:1.55;margin:0 0 8px;max-width:62ch;}
.mmc-zero-band-rate{color:var(--mmc-gray);font-size:14px;margin:0;}
.mmc-zero-band-cta{flex:0 0 250px;max-width:280px;width:100%;}
.mmc-zero-band-cta .mmc-btn{margin-top:0;}
@media (max-width:720px){.mmc-zero-band{flex-direction:column;align-items:stretch;}.mmc-zero-band-cta{flex-basis:auto;max-width:none;}}
.mmc-pricing-grid{display:grid;grid-template-columns:1fr;gap:22px;max-width:1040px;margin:0 auto;}
.mmc-tier{position:relative;background:var(--mmc-white);border:1px solid var(--mmc-line);border-radius:var(--mmc-radius);padding:32px 26px;display:flex;flex-direction:column;box-shadow:var(--mmc-shadow);}
.mmc-tier--feature{border:2px solid var(--mmc-gold);box-shadow:0 12px 40px -12px rgba(198,161,91,.5);}
.mmc-tier-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--mmc-gold);color:var(--mmc-ink);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:6px 16px;border-radius:999px;white-space:nowrap;}
.mmc-tier--feature .mmc-tier-badge{background:var(--mmc-gold);}
.mmc-tier--value .mmc-tier-badge{background:var(--mmc-plum);color:#fff;}
.mmc-tier h3{color:var(--mmc-plum);margin-bottom:2px;}
.mmc-tier-freq{font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:var(--mmc-gray);margin-bottom:18px;}
.mmc-tier-price{font-family:var(--mmc-font-display);font-size:40px;font-weight:700;line-height:1;color:var(--mmc-plum-deep);}
.mmc-tier-price small{display:block;font-family:var(--mmc-font-body);font-size:14px;font-weight:500;color:var(--mmc-gray);margin-top:6px;letter-spacing:0;}
.mmc-tier-m2m{font-size:14px;color:var(--mmc-gray);margin:10px 0 0;}
.mmc-tier-sub{font-size:15px;line-height:1.5;color:var(--mmc-plum);font-style:italic;margin:16px 0 0;}
.mmc-tier .mmc-btn{margin-top:22px;}
.mmc-tier-foot{max-width:860px;margin:26px auto 0;text-align:center;font-size:14px;color:var(--mmc-gray);}
.mmc-tier-enroll{margin-top:20px;padding-top:18px;border-top:1px solid var(--mmc-line);}
.mmc-tier-enroll p{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mmc-gray);margin:0 0 12px;}
.mmc-tier-enroll .mmc-btn{margin-top:0;}
.mmc-tier-enroll .mmc-btn + .mmc-btn{margin-top:10px;}
.mmc-onetime{max-width:860px;margin:30px auto 0;padding-top:26px;border-top:1px solid var(--mmc-line);text-align:center;}
.mmc-onetime h3{color:var(--mmc-plum);font-size:20px;margin-bottom:6px;}
.mmc-onetime > p{font-size:14px;color:var(--mmc-gray);margin-bottom:18px;}
.mmc-onetime-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;}
.mmc-onetime-btns .mmc-btn{margin-top:0;}
@media (min-width:768px){
  .mmc-pricing-grid{grid-template-columns:repeat(3,1fr);align-items:start;}
  .mmc-tier--feature{transform:scale(1.04);}
}
/* Mobile order: CORE first, then Foundation, then Elite */
@media (max-width:767px){
  .mmc-pricing-grid{display:flex;flex-direction:column;}
  .mmc-tier--foundation{order:2;}
  .mmc-tier--core{order:1;}
  .mmc-tier--elite{order:3;}
}

/* ---------- Two-column fit / not-fit ---------- */
.mmc-fit{display:grid;grid-template-columns:1fr;gap:22px;max-width:960px;margin:0 auto;}
@media (min-width:768px){.mmc-fit{grid-template-columns:1fr 1fr;gap:28px;}}
.mmc-fit-col{background:var(--mmc-white);border:1px solid var(--mmc-line);border-radius:var(--mmc-radius);padding:28px 26px;box-shadow:var(--mmc-shadow);}
.mmc-fit-col h3{margin-bottom:16px;}
.mmc-fit-col--yes{border-top:4px solid var(--mmc-gold);}
.mmc-fit-col--no{border-top:4px solid var(--mmc-gray);}
.mmc-fit-col li{position:relative;padding:8px 0 8px 30px;font-size:16px;line-height:1.5;border-top:1px solid var(--mmc-line);}
.mmc-fit-col li:first-of-type{border-top:none;}
.mmc-fit-col--yes li::before{content:"✓";position:absolute;left:2px;top:8px;color:var(--mmc-gold);font-weight:700;}
.mmc-fit-col--no li::before{content:"✕";position:absolute;left:2px;top:8px;color:var(--mmc-gray);font-weight:700;}

/* ---------- Method rotation / lanes ---------- */
.mmc-rotation{display:grid;grid-template-columns:1fr;gap:16px;max-width:900px;margin:0 auto;}
@media (min-width:768px){.mmc-rotation{grid-template-columns:repeat(2,1fr);}}
.mmc-rot-item{display:flex;gap:18px;align-items:flex-start;background:rgba(198,161,91,.08);border:1px solid rgba(198,161,91,.28);border-radius:var(--mmc-radius);padding:22px 24px;}
.mmc-rot-letter{font-family:var(--mmc-font-display);font-size:38px;font-weight:700;color:var(--mmc-gold);line-height:1;flex-shrink:0;}
.mmc-rot-item h3{color:#fff;margin:0;font-size:20px;}
.mmc-section--plum .mmc-rot-item{background:rgba(255,255,255,.06);border-color:rgba(198,161,91,.4);}

/* ---------- Steps (How it works) ---------- */
.mmc-steps{max-width:820px;margin:0 auto;display:grid;gap:24px;}
.mmc-step{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:start;background:var(--mmc-white);border:1px solid var(--mmc-line);border-radius:var(--mmc-radius);padding:26px 26px;box-shadow:var(--mmc-shadow);}
.mmc-step-num{width:48px;height:48px;border-radius:50%;background:var(--mmc-plum);color:#fff;font-family:var(--mmc-font-display);font-size:22px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.mmc-step h3{margin-bottom:8px;}
.mmc-step .mmc-price-note{color:var(--mmc-rose);font-weight:700;}

/* ---------- Testimonials ---------- */
.mmc-vidgrid{display:grid;grid-template-columns:1fr;gap:22px;max-width:1040px;margin:0 auto;}
@media (min-width:768px){.mmc-vidgrid{grid-template-columns:repeat(3,1fr);}}
.mmc-vidcard{position:relative;background:var(--mmc-white);border:1px solid var(--mmc-line);border-radius:var(--mmc-radius);overflow:hidden;box-shadow:var(--mmc-shadow);display:flex;flex-direction:column;}
.mmc-vidcard-poster{position:relative;width:100%;aspect-ratio:9/12;background:var(--mmc-plum);overflow:hidden;}
.mmc-vidcard-poster img{width:100%;height:100%;object-fit:cover;}
.mmc-vidcard-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:none;border:none;width:100%;height:100%;}
.mmc-vidcard-play span{width:66px;height:66px;border-radius:50%;background:rgba(198,161,91,.92);color:var(--mmc-ink);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.3);transition:transform .15s;}
.mmc-vidcard-play:hover span{transform:scale(1.08);}
.mmc-vidcard-play svg{width:26px;height:26px;margin-left:3px;}
.mmc-vidcard-body{padding:18px 20px 22px;}
.mmc-vidcard-name{font-weight:700;color:var(--mmc-plum);}
.mmc-vidcard-quote{font-family:var(--mmc-font-display);font-style:italic;color:var(--mmc-ink);margin-top:4px;}
.mmc-quotegrid{display:grid;grid-template-columns:1fr;gap:20px;max-width:1040px;margin:32px auto 0;}
@media (min-width:768px){.mmc-quotegrid{grid-template-columns:repeat(3,1fr);}}
.mmc-quote{background:var(--mmc-white);border:1px solid var(--mmc-line);border-radius:var(--mmc-radius);padding:26px 24px;box-shadow:var(--mmc-shadow);}
.mmc-quote-stars{color:var(--mmc-gold);letter-spacing:2px;margin-bottom:12px;}
.mmc-quote p{font-family:var(--mmc-font-display);font-style:italic;font-size:18px;color:var(--mmc-plum-deep);margin-bottom:16px;}
.mmc-quote-name{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mmc-rose);}
.mmc-quote-meta{font-family:var(--mmc-font-display);font-style:italic;font-size:14px;color:var(--mmc-gray);}
.mmc-disclaimer{max-width:820px;margin:32px auto 0;font-size:13px;color:var(--mmc-gray);text-align:center;font-style:italic;}

/* ---------- Lightbox ---------- */
.mmc-lightbox{position:fixed;inset:0;z-index:300;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(36,30,30,.9);}
.mmc-lightbox.mmc-open{display:flex;}
.mmc-lightbox-inner{position:relative;width:100%;max-width:480px;}
.mmc-lightbox video{width:100%;border-radius:var(--mmc-radius);background:#000;}
.mmc-lightbox-close{position:absolute;top:-46px;right:0;background:none;border:none;color:#fff;font-size:34px;line-height:1;padding:6px;}

/* ---------- FAQ / Accordion ---------- */
.mmc-faq{max-width:760px;margin:0 auto;}
.mmc-faq-item{border-bottom:1px solid var(--mmc-line);}
.mmc-faq-item:first-child{border-top:1px solid var(--mmc-line);}
.mmc-faq-q{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;background:none;border:none;text-align:left;padding:22px 0;font-family:var(--mmc-font-display);font-size:19px;font-weight:600;color:var(--mmc-plum-deep);}
.mmc-faq-q:hover{color:var(--mmc-rose);}
.mmc-faq-icon{flex-shrink:0;font-size:26px;line-height:1;color:var(--mmc-rose);transition:transform .2s;}
.mmc-faq-q[aria-expanded="true"] .mmc-faq-icon{transform:rotate(45deg);}
.mmc-faq-a{padding:0 0 22px;font-size:16px;line-height:1.65;color:var(--mmc-ink);display:none;}
.mmc-faq-a[data-open="true"]{display:block;}

/* ---------- Forms ---------- */
.mmc-form{max-width:640px;margin:0 auto;}
.mmc-form-wide{max-width:760px;}
.mmc-field{margin-bottom:20px;}
.mmc-field > label,.mmc-fieldset > legend{display:block;font-size:14px;font-weight:700;letter-spacing:.02em;color:var(--mmc-plum-deep);margin-bottom:8px;}
.mmc-field .mmc-help{font-size:13px;color:var(--mmc-gray);font-weight:400;margin-top:2px;margin-bottom:8px;}
.mmc-input,.mmc-select,.mmc-textarea{
  width:100%;min-height:48px;padding:13px 15px;
  font-family:var(--mmc-font-body);font-size:16px;color:var(--mmc-ink);
  background:var(--mmc-white);border:1.5px solid var(--mmc-line);border-radius:10px;
}
.mmc-textarea{min-height:110px;resize:vertical;line-height:1.5;}
.mmc-input:focus,.mmc-select:focus,.mmc-textarea:focus{outline:none;border-color:var(--mmc-rose);box-shadow:0 0 0 3px rgba(176,106,84,.2);}
.mmc-input[aria-invalid="true"],.mmc-textarea[aria-invalid="true"],.mmc-select[aria-invalid="true"]{border-color:#B3261E;}
.mmc-error{display:block;color:#B3261E;font-size:13.5px;font-weight:600;margin-top:6px;min-height:0;}
.mmc-fieldset{border:none;margin-bottom:22px;}
.mmc-choices{display:grid;gap:10px;margin-top:4px;}
.mmc-choice{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1.5px solid var(--mmc-line);border-radius:10px;background:var(--mmc-white);cursor:pointer;font-size:16px;line-height:1.4;min-height:48px;}
.mmc-choice:hover{border-color:var(--mmc-rose);}
.mmc-choice input{width:20px;height:20px;margin-top:1px;flex-shrink:0;accent-color:var(--mmc-rose);}
.mmc-choices--inline{grid-template-columns:1fr 1fr;}
@media (min-width:768px){.mmc-choices--cols{grid-template-columns:1fr 1fr;}}
.mmc-consent{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.5;}
.mmc-consent input{width:22px;height:22px;margin-top:2px;flex-shrink:0;accent-color:var(--mmc-rose);}
.mmc-form-note{font-size:14px;color:var(--mmc-gray);text-align:center;margin-top:16px;}
.mmc-row{display:grid;grid-template-columns:1fr;gap:0;}
@media (min-width:768px){.mmc-row--2{grid-template-columns:1fr 1fr;gap:0 20px;}}
.mmc-conditional{display:none;}
.mmc-conditional.mmc-show{display:block;}

/* Multi-step */
.mmc-progress{max-width:640px;margin:0 auto 28px;}
.mmc-progress-bar{height:8px;background:var(--mmc-line);border-radius:999px;overflow:hidden;}
.mmc-progress-fill{height:100%;background:var(--mmc-gold);width:0;transition:width .3s;}
.mmc-progress-label{text-align:center;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mmc-gray);margin-top:10px;}
.mmc-step-panel{display:none;}
.mmc-step-panel.mmc-active{display:block;}
.mmc-step-panel h2{font-size:24px;margin-bottom:6px;}
.mmc-step-nav{display:flex;justify-content:space-between;gap:14px;margin-top:28px;}
.mmc-step-nav .mmc-btn{flex:1;}
.mmc-autosave-note{text-align:center;font-size:13px;color:var(--mmc-gray);margin-top:12px;}
.mmc-privacy-banner{background:var(--mmc-blush);border:1px solid var(--mmc-line);border-radius:10px;padding:14px 18px;font-size:14px;line-height:1.5;color:var(--mmc-plum-deep);margin-bottom:24px;}

/* ---------- Popup (guide-optin) ---------- */
.mmc-modal{position:fixed;inset:0;z-index:400;display:none;align-items:center;justify-content:center;padding:20px;}
.mmc-modal.mmc-open{display:flex;}
.mmc-modal-backdrop{position:absolute;inset:0;background:rgba(61,21,34,.8);backdrop-filter:blur(5px);}
.mmc-modal-inner{position:relative;background:var(--mmc-cream);width:100%;max-width:460px;border-radius:var(--mmc-radius);padding:40px 30px 30px;box-shadow:0 24px 60px rgba(0,0,0,.35);max-height:92vh;overflow-y:auto;}
.mmc-modal-x{position:absolute;top:10px;right:12px;background:none;border:none;font-size:28px;line-height:1;color:var(--mmc-gray);padding:6px 10px;border-radius:50%;}
.mmc-modal-x:hover{color:var(--mmc-rose);}
.mmc-modal h2{font-size:26px;margin-bottom:10px;}
.mmc-modal p{font-size:15px;color:var(--mmc-gray);margin-bottom:18px;}

/* ---------- Thank-you ---------- */
.mmc-thankyou{text-align:center;max-width:640px;margin:0 auto;padding:20px 0;}
.mmc-thankyou-check{width:72px;height:72px;border-radius:50%;background:var(--mmc-gold);color:var(--mmc-ink);font-size:38px;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;}

/* ---------- Legal pages ---------- */
.mmc-legal{max-width:760px;margin:0 auto;padding:0 var(--mmc-gutter);}
.mmc-legal-banner{background:var(--mmc-blush);border-radius:8px;padding:10px 16px;font-size:13px;color:var(--mmc-gray);margin-bottom:24px;}
.mmc-legal-note{margin-top:32px;padding:14px 16px;border-left:3px solid var(--mmc-gold);background:rgba(198,161,91,.08);border-radius:6px;font-size:13.5px;color:var(--mmc-gray);}
.mmc-legal h1{margin-bottom:20px;}
.mmc-legal h2{font-size:22px;margin:32px 0 10px;}
.mmc-legal h3{font-size:18px;margin:22px 0 8px;}
.mmc-legal p,.mmc-legal li{font-size:16px;line-height:1.7;margin-bottom:12px;}
.mmc-legal ul,.mmc-legal ol{margin:0 0 16px 22px;}
.mmc-legal li{list-style:disc;}
.mmc-print-btn{margin-bottom:28px;}

/* ---------- Utilities ---------- */
.mmc-mt-0{margin-top:0;}
.mmc-mb-0{margin-bottom:0;}
.mmc-hidden{display:none!important;}
.mmc-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0;}
.mmc-cta-band{text-align:center;}
.mmc-cta-band h2{margin-bottom:20px;}

/* ---------- Print ---------- */
@media print{
  .mmc-header,.mmc-footer,.mmc-nav-toggle,.mmc-print-btn,.mmc-cta-band,.mmc-modal,.mmc-lightbox,.mmc-skip{display:none!important;}
  body{background:#fff;color:#000;font-size:11pt;line-height:1.4;}
  .mmc-legal h1,.mmc-legal h2,.mmc-legal h3{color:#000;}
  .mmc-legal-banner{background:none;border:1px solid #000;color:#000;}
  a{color:#000;text-decoration:underline;}
  .mmc-section{padding:0;}
}
