/* ============================================================
   Pricing (page-pricing.php)
   Ported from Brandy's Website 2.0 handoff. Scoped under .bmm-pricing so the
   generic class names never leak into other pages. Loaded only on this page.
   ============================================================ */
.bmm-pricing .eyebrow{font-family:var(--font-display);font-weight:600;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--color-primary)}
.bmm-pricing .container{max-width:1140px;margin:0 auto;padding-left:clamp(20px,5vw,64px);padding-right:clamp(20px,5vw,64px)}
.bmm-pricing h2.section-h{font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;line-height:1.1;font-size:clamp(1.7rem,1.15rem + 2.2vw,2.7rem);color:var(--text-strong);margin:14px 0 0}

/* ---- hero ---- */
.bmm-pricing .hero{background:var(--surface-inverse);text-align:center}
.bmm-pricing .hero-inner{max-width:860px;margin:0 auto;padding:clamp(56px,8vw,110px) clamp(20px,5vw,64px)}
.bmm-pricing .hero h1{font-family:var(--font-display);font-weight:800;letter-spacing:-.022em;line-height:1.06;font-size:clamp(2.1rem,1.3rem + 3.6vw,3.9rem);color:var(--snow);margin:18px 0 0}
.bmm-pricing .hero h1 em{font-family:var(--font-quote);font-style:italic;font-weight:500;color:var(--blue-200)}

/* ---- tier cards ---- */
.bmm-pricing .tier-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-top:clamp(36px,4vw,52px);align-items:stretch}
.bmm-pricing .tier-card{position:relative;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:18px;padding:34px 30px 30px;box-shadow:var(--shadow-md);display:flex;flex-direction:column}
.bmm-pricing .tier-card.is-featured{background:var(--surface-inverse);border-color:var(--surface-inverse);box-shadow:0 16px 40px rgba(26,26,59,.18)}
.bmm-pricing .tier-tag{position:absolute;top:-12px;left:30px;font-family:var(--font-display);font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--blue-900);background:var(--green-300);padding:5px 12px;border-radius:999px}
.bmm-pricing .tier-card h3{font-family:var(--font-display);font-weight:700;font-size:22px;color:var(--text-strong);margin:8px 0 2px}
.bmm-pricing .tier-card.is-featured h3{color:var(--snow)}
.bmm-pricing .tier-terms{font-family:var(--font-display);font-weight:600;font-size:13px;letter-spacing:.04em;color:var(--color-primary);margin:0 0 18px}
.bmm-pricing .tier-card.is-featured .tier-terms{color:var(--blue-200)}
.bmm-pricing .tier-price{display:flex;align-items:baseline;gap:8px;margin:0 0 4px}
.bmm-pricing .tier-price .starts{font-family:var(--font-display);font-weight:600;font-size:13px;color:var(--text-muted)}
.bmm-pricing .tier-card.is-featured .tier-price .starts{color:var(--blue-200)}
.bmm-pricing .tier-price .num{font-family:var(--font-display);font-weight:800;font-size:clamp(2.4rem,2rem + 1.4vw,3.2rem);line-height:1;letter-spacing:-.02em;color:var(--text-strong)}
.bmm-pricing .tier-card.is-featured .tier-price .num{color:var(--snow)}
.bmm-pricing .tier-price .per{font-size:14px;color:var(--text-muted)}
.bmm-pricing .tier-card.is-featured .tier-price .per{color:var(--blue-200)}
.bmm-pricing .tier-desc{font-size:14.5px;line-height:1.58;color:var(--text-body);margin:14px 0 20px}
.bmm-pricing .tier-card.is-featured .tier-desc{color:var(--blue-100)}
.bmm-pricing .tier-best{font-size:13.5px;line-height:1.5;color:var(--text-muted);margin:12px 0 0}
.bmm-pricing .tier-best strong{font-family:var(--font-display);font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-primary)}
.bmm-pricing .tier-card.is-featured .tier-best{color:var(--blue-200)}
.bmm-pricing .tier-card.is-featured .tier-best strong{color:var(--green-300)}
.bmm-pricing .tier-feats{list-style:none;margin:0 0 24px;padding:18px 0 0;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:10px;font-size:14.5px;line-height:1.5;flex:1}
.bmm-pricing .tier-card.is-featured .tier-feats{border-top-color:rgba(255,255,255,.15);color:var(--blue-100)}
.bmm-pricing .tier-feats li{display:flex;gap:10px;align-items:flex-start}
.bmm-pricing .tier-feats svg{flex:none;margin-top:3px;color:var(--color-accent)}
.bmm-pricing .tier-card.is-featured .tier-feats svg{color:var(--green-300)}

/* ---- math band ---- */
.bmm-pricing .math-band{background:var(--surface-inverse);border-radius:24px;padding:clamp(32px,4vw,52px);display:grid;grid-template-columns:1fr;gap:0;box-shadow:0 20px 52px rgba(26,26,59,.18)}
.bmm-pricing .math-cell{padding:18px 0;text-align:center}
.bmm-pricing .math-cell + .math-cell{border-top:1px solid rgba(255,255,255,.15)}
.bmm-pricing .math-label{font-family:var(--font-display);font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--blue-200);margin:0 0 12px}
.bmm-pricing .math-num{font-family:var(--font-display);font-weight:800;font-size:clamp(2.2rem,1.6rem + 2vw,3.4rem);line-height:1;letter-spacing:-.02em;color:var(--snow)}
.bmm-pricing .math-cell p{font-size:14px;line-height:1.5;color:var(--blue-100);max-width:34ch;margin:12px auto 0}
.bmm-pricing .math-cell.is-good .math-label{color:var(--green-300)}
.bmm-pricing .math-cell.is-good .math-num{color:var(--green-300)}

/* ---- client logo marquee ---- */
.bmm-pricing .logo-marquee{overflow:hidden;position:relative}
.bmm-pricing .logo-track{display:flex;align-items:center;gap:clamp(44px,6vw,84px);width:max-content;animation:bmmLogoScroll 32s linear infinite}
.bmm-pricing .logo-track img{height:36px;width:auto;object-fit:contain}
.bmm-pricing .logo-track img.h30{height:30px}
.bmm-pricing .logo-track img.h34{height:34px}
.bmm-pricing .logo-track img.h38{height:38px}
.bmm-pricing .logo-track img.h44{height:44px}
@keyframes bmmLogoScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.bmm-pricing .logo-marquee:hover .logo-track{animation-play-state:paused}

/* ---- quote ---- */
.bmm-pricing .quote-card{background:var(--blue-50);border:1px solid var(--border-subtle);border-radius:24px;padding:clamp(30px,4vw,52px);box-shadow:0 14px 36px rgba(26,26,59,.07)}
.bmm-pricing .quote-card blockquote{font-family:var(--font-quote);font-style:italic;font-size:clamp(1.3rem,1.05rem + 1.2vw,1.8rem);line-height:1.45;color:var(--text-strong);margin:0}
.bmm-pricing .quote-attr{display:flex;align-items:center;gap:14px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-subtle)}
.bmm-pricing .quote-attr img{width:52px;height:52px;border-radius:50%;object-fit:cover;box-shadow:0 6px 16px rgba(26,26,59,.12)}

/* ---- proof strip ---- */
.bmm-pricing .proof-band{background:var(--surface-inverse);border-radius:20px;padding:clamp(26px,3vw,40px) clamp(14px,2vw,24px);display:grid;grid-template-columns:repeat(2,1fr);gap:18px;box-shadow:0 20px 52px rgba(26,26,59,.18)}
.bmm-pricing .proof-cell{text-align:center;padding:4px 10px}
.bmm-pricing .proof-num{font-family:var(--font-display);font-weight:800;font-size:clamp(2rem,1.4rem + 1.8vw,3rem);line-height:1;letter-spacing:-.02em;color:var(--snow)}
.bmm-pricing .proof-cell p{font-size:13.5px;line-height:1.45;color:var(--blue-100);margin:8px 0 0}

/* ---- faq ---- */
.bmm-pricing details.bmm-faq{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:12px;padding:4px 26px}
.bmm-pricing details.bmm-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;padding:20px 0;font-family:var(--font-display);font-weight:600;font-size:17px;color:var(--text-strong);list-style:none}
.bmm-pricing details.bmm-faq summary::-webkit-details-marker{display:none}
.bmm-pricing details.bmm-faq summary:focus-visible{outline:none;box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring);border-radius:8px}
.bmm-pricing details.bmm-faq .bmm-faq-plus{flex:none;color:var(--color-primary);font-size:22px;line-height:1;transition:transform .2s}
.bmm-pricing details.bmm-faq[open] .bmm-faq-plus{transform:rotate(45deg)}
.bmm-pricing details.bmm-faq p{font-size:15.5px;line-height:1.62;color:var(--text-body);margin:0 0 22px}

/* ---- closing CTA ---- */
.bmm-pricing .cta-band{background:linear-gradient(120deg,var(--blue-600),var(--blue-800));border-radius:24px;padding:clamp(36px,5vw,76px);display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap;box-shadow:0 20px 52px rgba(26,26,59,.18)}
.bmm-pricing .cta-photo{flex:none;width:clamp(150px,20vw,210px);aspect-ratio:1/1.12;object-fit:cover;object-position:center 20%;border-radius:18px;box-shadow:0 14px 34px rgba(0,0,0,.28)}

@media (min-width:820px){
  .bmm-pricing .tier-grid{grid-template-columns:repeat(3,1fr)}
  .bmm-pricing .math-band{grid-template-columns:1fr auto 1fr;align-items:center}
  .bmm-pricing .math-cell + .math-cell{border-top:none}
  .bmm-pricing .math-vs{display:flex;align-items:center;justify-content:center;font-family:var(--font-quote);font-style:italic;font-size:22px;color:var(--blue-300);padding:0 clamp(16px,3vw,40px)}
  .bmm-pricing .proof-band{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:819px){.bmm-pricing .math-vs{display:none}}
@media (prefers-reduced-motion:reduce){
  .bmm-pricing .logo-track{animation:none;flex-wrap:wrap;justify-content:center;width:auto}
  .bmm-pricing .logo-track img:nth-child(n+10){display:none}
}
@media (max-width:560px){
  /* 44px minimum tap target on phones (handoff QA spec). */
  .bmm-pricing .tier-card .bmm-btn{min-height:44px}
}
