/* home-subset.css: the part of the homepage's seven stylesheets that the homepage uses (14/10/2026).
   The homepage linked style.css, pages/home.css, pages/home-concept.css, pages/home-brochure.css,
   pages/clinic-links.css, soft.css and bmb-video.css (656 KB, about 110 KB compressed, 2,892 rules) and used 1,340 of
   those rules. Google's phone test waits for every stylesheet before the first paint, so the homepage now links this
   one file where style.css was, and loads the seven full files after the first paint (a safety net, and it caches
   them for the next page).
   The rules were picked by scanning the homepage at three widths, before and after cookie consent, scrolled through,
   with the phone menu, site search and every accordion open; every element's computed style was then compared with
   the seven full files (no differences). Each rule is copied exactly, in the same order; every @keyframes,
   @font-face and @property is kept.
   The seven files are unchanged and the other pages still link them. Edit a homepage rule here AND in its own file:
   a change made only there shows on the homepage after a short delay, as the full files arrive.
   Generated by make_css_subset_home.py from style.css?v=2026-09-25-2, pages/home.css?v=2026-09-25-2,
   pages/home-concept.css?v=2026-08-31-1, pages/home-brochure.css?v=2026-10-08-1, pages/clinic-links.css?v=2026-09-30-1,
   soft.css?v=2026-10-01-3 and bmb-video.css?v=2026-10-09-1. */
/* from /css/style.css */
@font-face{font-family:'Quicksand';font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/quicksand-latin-var.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  /* ── Brand core (v1.2) ── */
  --brand: #8d319b;          /* bmb Purple #8D319B — primary / grounding */
  --brand-dk: #6e2479;       /* darker purple — hover / emphasis */
  --brand-50:  #f7eef9;      /* near-white purple tint */
  --brand-100: #efd9f3;      /* pale purple */
  --brand-200: #ddb5e6;      /* light purple */
  --brand-700: #5a1f63;      /* deep purple */
  --navy: #5a1f63;           /* (was navy) → deep purple — section eyebrows + strong proof */
  --navy-dk: #3f1546;        /* darker deep purple for hover */
  --gold: #7fa8e8;           /* (was gold) → Spectrum 02 periwinkle — numbers + accents */
  --gold-dk: #6588da;        /* darker periwinkle for hover */
  --accent: #5bc2e7;         /* bmb Blue #5BC2E7 — signature accent on LIGHT surfaces (links, labels, highlights) */
  --accent-ink: #1f7fa0;     /* darkened blue for accent TEXT that needs contrast on cream (≥4.5:1) */
  --cream: #f1eee9;          /* bmb Cream #F1EEE9 — soft light surface */

  /* ── Brand spectrum — blue → purple periwinkle bridge (v1.2) ── */
  --spectrum-1: #74cbea;     /* Spectrum 01 — closest to blue */
  --spectrum-2: #7fa8e8;     /* Spectrum 02 */
  --spectrum-3: #9091e6;     /* Spectrum 03 — periwinkle midpoint */
  --spectrum-4: #a87bd8;     /* Spectrum 04 */
  --spectrum-5: #bc66c6;     /* Spectrum 05 — closest to purple */

  /* ── Surface + text (Drenched per Brand Guidelines v1.2 In Application) ──
     The brand surface IS bmb-Purple. Cream is text and accents on top.
     --ink therefore is the LIGHT text color (cream); use --ink-on-cream
     only when you genuinely have a cream/light card and need ink text. */
  --bg: #8d319b;             /* bmb Purple — the surface */
  --bg-2: #6e2479;           /* deeper purple — inset bands, deeper sections */
  --bg-3: #5a1f63;           /* deepest purple — footer, end-state surfaces */
  --surface: #f1eee9;        /* a cream surface (for cards that pop on purple) */
  --ink: #f1eee9;            /* cream — the default text color on purple */
  --ink-2: rgba(241,238,233,0.82);   /* dimmed cream for supporting text */
  --muted: rgba(241,238,233,0.62);   /* further-dimmed cream */
  --ink-on-cream: #232527;   /* use ONLY when you have a cream card / light surface */
  --line: rgba(241,238,233,0.18);    /* subtle cream hairline on purple */
  --line-rose: rgba(241,238,233,0.30);

  --max: 1180px;
  --r: 6px;
  --r-lg: 14px;
  --shadow-sm: 0 1px 3px rgba(80, 55, 95,.05), 0 6px 16px rgba(80, 55, 95,.06);
  --shadow:    0 6px 18px rgba(80, 55, 95,.08), 0 28px 60px rgba(80, 55, 95,.08);

  /* Typography: three fonts for the whole site (ticket #112, 25/09/2026), the
     ones on the client-approved brochure homepage:
       Quicksand         body text, UI, labels and the sans headings
       Playfair Display  serif headings where a page uses a serif
       Great Vibes       small script accents only
     Mulish (the old body font) is retired. The --serif / --sans variable
     names are kept to avoid sweeping every rule across the codebase; both
     point to Quicksand. Read --serif as "display font" and --sans as
     "body font". */
  --font-display: 'Quicksand', system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-body: 'Quicksand', system-ui, -apple-system, "Segoe UI", sans-serif;
  --serif: 'Quicksand', system-ui, -apple-system, "Segoe UI", sans-serif;
  --sans: 'Quicksand', system-ui, -apple-system, "Segoe UI", sans-serif;
}
body:not(.home-concept), .home-concept .site-footer, .home-concept .bmb-consent{ font-weight: 500; }
*{ box-sizing: border-box; }
:where(button, input, select, textarea, optgroup){ font-family: inherit; }
html{ font-family: var(--font-body); color: var(--ink); background: var(--bg); font-size: 17px; overflow-x: clip; }
body{ margin: 0; line-height: 1.6; overflow-x: clip; }
:where(
  .about-journey-grid li,
  .about-pillars li,
  .about-preview .about-journey-grid li,
  .about-preview .about-pillars li,
  .bmb-article-preview .bmb-benefit-col,
  .bmb-article-preview .bmb-bundle-card,
  .bmb-article-preview .bmb-contact-chip,
  .bmb-article-preview .bmb-faq-item,
  .bmb-article-preview .bmb-first-trials-cta,
  .bmb-article-preview .bmb-location-card,
  .bmb-article-preview .bmb-service-spec,
  .bmb-article-preview .bmb-shop-card,
  .bmb-blog-card,
  .bmb-bundle-card,
  .bmb-card--cream,
  .bmb-consent,
  .bmb-consent-btn--secondary,
  .bmb-consent-reopen,
  .bmb-consent-text,
  .bmb-cookie-banner,
  .bmb-cookie-modal,
  .bmb-faq-item,
  .bmb-final-cta-card,
  .bmb-light-surface,
  .bmb-magazine-preview .bmb-mag-remedy,
  .bmb-menu-card,
  .bmb-pack-card,
  .bmb-shop-card,
  .bmb-stage-card,
  .bmb-testimonial-card,
  .bmb-trim-card,
  .bmb-trim-figure,
  .bmb-why-pillars > li,
  .bmb-why ul > li,
  .bmb-why-item,
  .categories-preview .bmb-post-card,
  .contact-preview .contact-channel,
  .contact-preview .contact-form,
  .contact-preview .contact-location,
  .contact-preview .contact-quick-card,
  .flyout-cat,
  .flyout-panel,
  .home-preview .bmb-blog-card,
  .home-preview .bmb-location-card,
  .home-preview .bmb-partner-tile,
  .home-preview .bmb-review-card,
  .home-preview .bmb-review-summary,
  .home-preview .bmb-stage-services a,
  .home-preview .bmb-timeline > li,
  .home-preview .bmb-why-pillars li,
  .partners-preview .partners-hero-meta li,
  .partners-preview .partners-location,
  .partners-preview .partners-why-grid li,
  .portfolio-preview .portfolio-platform a,
  .portfolio-preview .portfolio-story,
  .post-card,
  .primary-nav .flyout-panel,
  .primary-nav .nav-cta,
  .product-card,
  .products-preview .bmb-product-card,
  .service-benefits-grid > li,
  .service-prep-card,
  .service-prep-note,
  .service-preview .service-benefits-grid li,
  .service-preview .service-faq-list details,
  .service-preview .service-hero-meta > div,
  .service-preview .service-prep-card,
  .service-preview .service-related-grid li,
  .service-preview .service-story,
  .service-preview--archive .post-grid--archive .bmb-post-card,
  .service-related-grid > li,
  .service-story,
  .site-footer .footer-location,
  .submenu,
  .terms-glance-card,
  .terms-preview .terms-glance-stat,
  .terms-preview .terms-toc-inner,
  .terms-toc-card,
  .testimonial-card,
  /* Article cards inside a group */
.terms-preview .terms-article,
  /* Contact pill — cream-on-purple per In Application. The header bar is
   bmb-Purple now; the CTA inverts to a cream pill with purple text so it
   reads as the brand's signature call-to-action. */
.primary-nav .nav-cta,
  /* Enquiry form — sits BELOW the location cards. */
.bmb-article-preview .enquiry-form,
  /* Flex-column layout per card. Subgrid wasn't an option because the
   card has 6 children and the parent only has 3 row tracks — the
   children collapsed into overlapping cells. */
.contact-preview .contact-location,
  /* Ghost CTA ("Explore Services") — frosted-glass surface to match the
   header's vibe. Translucent white-ish background + backdrop blur so
   the photo behind subtly shows through,
  /* Primary CTA ("Book Now") — elevated hero-only treatment. Bigger,
  /* Submenu panel */
.primary-nav .submenu,
  /* Service FAQ pills (cream cards on the purple body). */
details.service-faq,
.service-faq-body,
.service-faq-list details,
  /* Service related cards (cream cards in the related grid). */
.service-related-card,
.service-related-grid a,
  /* Process / numbered cards on courses pages. */
.service-process-list > li,
.service-process-grid > li,
  /* Bundle / product / shop cards on /product/* pages. */
.bmb-bundle-card, .bmb-pack-card, .bmb-menu-card,
.bmb-bundle-eyebrow, .bmb-bundle-duration, .bmb-bundle-list,
.bmb-menu-name, .bmb-menu-list,
  /* Partners page location card. */
.partners-preview .partners-loc-card,
  /* Contact-us cards (channel grid + form). */
.contact-preview .contact-channel-card,
  /* ── Enquiry form ──────────────────────────────────────────────── */
.contact-preview .contact-form-section .contact-form-card,
  /* ── Individual card: flex-column with fixed-height title slot so
   price + CTA sit on the same horizontal baseline across all cards
   regardless of how many lines the title actually wraps to. */
.bmb-article-preview .related-products .product-card,
  /* ── Terms & conditions callout (for happy-hour-massage-promotion).
   Sits between the offer grid and the first-trials CTA. Matches the
   bundles-packages width breakout so it doesn't read as cramped. */
.bmb-article-preview .bmb-terms-callout,
  /* ─── Sticky bottom CTA (appears after scrolling past the hero) ─ */
/* When the hero Book button has scrolled off-screen,
  and a
   slow "breathing" shadow pulse so it draws the eye without being
   garish. Hover pauses the breath and lifts. */
.home-preview .bmb-stage-frame > .bmb-hero .bmb-cta.bmb-cta--primary,
  no scale. Toggled by
   the same JS scroll listener that flips the floating header pill. */
.service-floating-cta,
  premium dimensional shadow stack (inset top highlight + warm ambient
   glow),
  subtle vertical brand→brand-dk gradient for depth,
  this pill
   FADES IN at its final position — no slide,
  with a soft saturation pop. */
.home-preview .bmb-stage-frame > .bmb-hero .bmb-cta.bmb-cta--ghost
){
  --ink: var(--ink-on-cream, #232527);
  --ink-2: #4a4a4a;
  --muted: #5a5358;
  color: var(--ink);
}
.primary-nav .nav-cta{ color: var(--brand) !important; }
:where(
  .bmb-product-card, .post-card, .service-prep-card, .service-story,
  .bmb-mag-remedy, .bmb-faq-item, .bmb-bundle-card, .bmb-menu-card,
  .bmb-benefit-col, .bmb-location-card, .bmb-review-card, .bmb-review-summary,
  .bmb-blog-card, .bmb-shop-card, .bmb-partner-tile, .contact-channel,
  .contact-quick-card, .contact-location, .portfolio-story, .partners-location,
  .about-pillars li, .about-journey-grid li, .partners-why-grid li,
  .bmb-why > div, .service-benefits-grid > li, .service-related-grid > li,
  .terms-toc-card, .terms-glance-card, .bmb-timeline > li
) :where(h1,h2,h3,h4,h5,h6,p,a,li,span,strong,em,blockquote){
  color: inherit;
}
.primary-nav .nav-cta{ color: var(--brand) !important; }
:where(.bmb-product-card, .post-card, .service-prep-card, .service-story,
       .terms-article, .bmb-mag-body, .bmb-mag-questions, .bmb-mag-bottomline,
       .about-pillars, .about-journey-grid, .partners-why-grid,
       .bmb-why > div, .service-benefits-grid > li, .service-related-grid > li,
       .portfolio-story) :where(h1,h2,h3,h4,h5,h6,p,a,li,span,strong,em,blockquote){
  color: inherit;
}
a{ color: var(--spectrum-1); text-decoration: none; }
a:hover{ text-decoration: underline; color: #ffffff; }
h1, h2, h3{ font-family: var(--font-display); color: var(--ink); margin: 0 0 .5em; font-weight: 600; letter-spacing: -.01em; }
h1{ font-size: 2.25rem; line-height: 1.2; }
h2{ font-size: 1.625rem; }
h3{ font-size: 1.15rem; }
.site-header{
  /* Slimmed 2026-07-17 (client: header too thick): .6rem vertical
     (was 1rem) + 60px logo (was 80px) ≈ 81px tall (was ~112px). */
  padding: .6rem max(1.5rem, calc((100vw - 1560px) / 2));
  border-bottom: 1px solid rgba(80, 55, 95, 0.10);
  display: flex; flex-wrap: wrap; gap: 1rem 2rem;
  align-items: center; justify-content: space-between;
  /* SOLID OPAQUE CREAM — no transparency, no backdrop blur, no
     tint changes per page. Earlier attempts at translucent /
     warm-taupe / light-frost all let the page bg bleed through
     and absorb the cyan brand logo. A solid cream bar guarantees
     the cyan logo (and the dark nav text) reads on every page
     regardless of what's behind. The pill state has its own
     chrome (a white pill with plum text since 24/09/2026) via the
     .is-floating rules below. */
  background: var(--bg);
  box-shadow: 0 4px 20px -10px rgba(0, 0, 0, 0.28);
  position: sticky; top: 0; z-index: 50;
  will-change: opacity;
  /* Smooth bg + border transitions so the warm-taupe → opaque cream
     swap that fires when the mobile burger opens lines up with the
     0.35s menu slide-in. NOTE: backdrop-filter is intentionally NOT
     transitioned — backdrop-filter > 0 creates a containing block for
     fixed-position descendants, and easing it from blur(16px) to none
     over 320ms would trap the .primary-nav overlay inside the ~50px
     header for those 320ms (the "only the top of the menu shows" bug).
     Drop backdrop-filter instantly; only the opaque colours animate. */
  transition:
    background-color .32s cubic-bezier(.16, 1, .3, 1),
    border-color .32s cubic-bezier(.16, 1, .3, 1),
    box-shadow .32s cubic-bezier(.16, 1, .3, 1);
}
@keyframes pillFadeIn {from{ opacity: 0; }to{ opacity: 1; } }
@keyframes barFadeIn  {from{ opacity: 0; }to{ opacity: 1; } }
.site-header.is-floating{ animation: pillFadeIn .32s ease-out; }
.site-header:not(.is-floating){ animation: barFadeIn .25s ease-out; }
@media (prefers-reduced-motion: reduce){
.site-header.is-floating,
  .site-header:not(.is-floating){ animation: none; }
}
.site-header.is-floating{
  position: fixed;
  top: 1rem;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 2rem);
  max-width: 1520px;
  margin: 0 auto;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  box-shadow: 0 10px 30px -12px rgba(85, 63, 99, 0.28);
  padding: .55rem 1.4rem;
  border: 1px solid rgba(212, 197, 227, 0.9);
  border-bottom: 1px solid rgba(212, 197, 227, 0.9);
  gap: .6rem 1.2rem;
  flex-wrap: nowrap;
}
@media (max-width: 720px){
.site-header.is-floating{
    width: calc(100% - 1rem);
    top: .5rem;
    padding: .3rem .8rem;
    border-radius: 999px;
    gap: .4rem;
  }
}
.site-header.is-floating .brand img{
  height: 40px;
  transition: height .35s cubic-bezier(.22, 1, .36, 1);
}
@media (max-width: 720px){
.site-header.is-floating .brand img{ height: 30px; }
}
@media (max-width: 768px){
body.mobile-nav-open .site-header,
  body.mobile-nav-open .site-header.is-floating{
    position: sticky !important;
    top: 0 !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: none !important;
    border-radius: 0 !important;
    background: var(--bg) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-bottom: 1px solid var(--line) !important;
    box-shadow: none !important;
    padding: 1rem 1.25rem !important;
    animation: none !important;
    /* Smooth the warm-taupe → opaque-cream chrome flip so it lines up
       with the 0.35s menu slide-in. CRITICAL: do NOT transition
       backdrop-filter — backdrop-filter > 0 creates a containing block
       for fixed-position descendants. If we eased it from blur(16px)
       to none, for 320ms the .primary-nav overlay (position:fixed;
       inset:0) would still be trapped inside the ~50px header and
       only the first menu item would be visible (this was the
       previously-fixed bug; transitioning backdrop-filter reintroduced
       it). Drop backdrop-filter instantly via no-transition; only the
       opaque colours animate. */
    transition:
      background-color .32s cubic-bezier(.16, 1, .3, 1) !important,
      border-bottom-color .32s cubic-bezier(.16, 1, .3, 1) !important,
      box-shadow .32s cubic-bezier(.16, 1, .3, 1) !important;
  }
body.mobile-nav-open .bmb-nav-toggle-bar{ background: #232527 !important; }
body.mobile-nav-open .primary-nav{
    z-index: 95 !important;
    /* Match the transparent + blurred mobile nav background below.
       Was solid var(--bg); switched to slight-transparency frost
       so the page softens through instead of a solid cream wall. */
    background:var(--bg-2) !important;
    -webkit-backdrop-filter: blur(20px) saturate(140%) !important;
    backdrop-filter: blur(20px) saturate(140%) !important;
  }
}
.site-header .brand{ font-weight: 600; font-size: 1.125rem; color: var(--brand); line-height: 0; display: inline-flex; align-items: center; position: relative; }
.site-header .brand img{ display: block; height: 60px; width: auto; max-width: 100%; transition: opacity .15s ease; }
.site-header .brand:hover img{ opacity: .85; }
@media (max-width: 640px){
.site-header .brand img{ height: 60px; }
}
.site-header .brand img.brand-logo-light{ display: block; }
.site-header .brand img.brand-logo-dark{ display: none; }
.site-header .brand img.brand-logo-pill{ display: none; }
.site-header.is-floating .brand img.brand-logo-light{ display: none !important; }
.site-header.is-floating .brand img.brand-logo-dark{ display: none !important; }
.site-header.is-floating .brand img.brand-logo-pill{ display: block !important; }
body.is-immersive-page .site-header.is-floating .brand img.brand-logo{ filter: none; }
body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a{
  color: #553f63 !important;
}
body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a:hover,
body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a:focus-visible{
  color: #7a6390 !important;
}
body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a.nav-cta,
body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a.nav-cta:hover,
body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a.nav-cta:focus-visible{
  color: #ffffff !important;
  background: #553f63 !important;
  border-color: #553f63 !important;
}
body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a.nav-cta:hover,
body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a.nav-cta:focus-visible{
  background: #43304f !important;
}
.site-header.is-floating .primary-nav .nav-search-item .nav-search-btn,
.site-header.is-floating .primary-nav .nav-root > li.nav-account-item > a.nav-account,
.site-header.is-floating .primary-nav .nav-root > li.nav-cart-item > a.nav-cart{
  color: #553f63;
  border-color: #d4c5e3;
}
.site-header.is-floating .primary-nav .nav-search-item .nav-search-btn:hover,
.site-header.is-floating .primary-nav .nav-search-item .nav-search-btn:focus-visible,
.site-header.is-floating .primary-nav .nav-root > li.nav-account-item > a.nav-account:hover,
.site-header.is-floating .primary-nav .nav-root > li.nav-account-item > a.nav-account:focus-visible,
.site-header.is-floating .primary-nav .nav-root > li.nav-cart-item > a.nav-cart:hover,
.site-header.is-floating .primary-nav .nav-root > li.nav-cart-item > a.nav-cart:focus-visible{
  background: #f3edf7;
}
.site-header.is-floating .primary-nav .nav-search-item .nav-search-btn:focus-visible,
.site-header.is-floating .nav-account:focus-visible,
.site-header.is-floating .nav-cart:focus-visible,
body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a:focus-visible{
  outline: 2px solid #7a6390;
  outline-offset: 2px;
}
.primary-nav .nav-root{ display: flex; flex-wrap: wrap; gap: 0 1.75rem; margin: 0; padding: 0; list-style: none; align-items: center; }
.primary-nav .nav-root > li{ position: relative; }
.primary-nav .nav-root > li > a{
  font-family: var(--serif);
  font-size: 1.22rem;
  font-weight: 600;
  letter-spacing: 0;
  /* Dark ink — header bar is now light cream-frost (was warm-taupe
     where near-white text was readable). Dark text on light frost
     reads well on every page, with the pill state below forcing
     white text back when the floating dark pill is active. */
  color: var(--ink);
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .5rem 0;
  transition: color .15s ease;
}
.primary-nav .nav-root > li > a:hover,
.primary-nav .nav-root > li > a:focus-visible{
  color: var(--brand-dk, #6e2479);
  text-decoration: none;
}
.primary-nav .caret{
  display: inline-block;
  width: .55em;
  height: .55em;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
  transition: transform .2s ease;
  opacity: .75;
}
.primary-nav .has-submenu:hover > a .caret,
.primary-nav .has-submenu:focus-within > a .caret{ transform: rotate(-135deg) translateY(2px); opacity: 1; }
.primary-nav .submenu{
  position: absolute;
  top: 100%;
  left: -1rem;
  min-width: 240px;
  margin: 0;
  padding: .5rem 0;
  list-style: none;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  box-shadow: 0 12px 36px rgba(42, 42, 42, .08);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .18s ease, transform .18s ease, visibility 0s linear .18s;
  z-index: 50;
}
.primary-nav .nav-root > li:nth-last-child(-n+2):not(.nav-cta-item) .submenu:not(.submenu--flyout){
  left: auto;
  right: 0;
}
.primary-nav .nav-cta-item{ margin-left: .4rem; }
.primary-nav .nav-cta{
  display: inline-flex;
  align-items: center;
  padding: .42rem 1.1rem !important;
  background: var(--cream);
  color: var(--brand) !important;
  border-radius: 999px;
  font-family: var(--sans) !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  letter-spacing: .01em !important;
  transition: background .18s ease, transform .18s ease, box-shadow .18s ease;
  box-shadow: 0 4px 12px -4px rgba(31, 8, 36, 0.45);
}
.primary-nav .nav-cta:hover,
.primary-nav .nav-cta:focus-visible{
  background: #ffffff !important;
  color: var(--brand-dk) !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px -4px rgba(31, 8, 36, 0.55);
  text-decoration: none;
}
.primary-nav .has-submenu:hover > .submenu,
.primary-nav .has-submenu:focus-within > .submenu{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition: opacity .18s ease, transform .18s ease, visibility 0s;
}
.primary-nav .submenu li{ margin: 0; }
.primary-nav .submenu a{
  display: block;
  padding: .55rem 1.1rem;
  color: var(--ink);
  font-family: var(--serif);
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: 0;
  white-space: nowrap;
  transition: background .12s ease, color .12s ease;
}
.primary-nav .submenu a:hover,
.primary-nav .submenu a:focus-visible{
  background: var(--brand-100, #efd9f3);
  color: var(--brand);
  text-decoration: none;
}
@media (max-width: 768px){
.primary-nav .nav-root > li > a,
  .primary-nav .submenu a{
    font-family: var(--sans);
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: .005em;
  }
}
.bmb-nav-toggle{
  display: none;
  width: 44px;
  height: 44px;
  background: transparent;
  border: 0;
  cursor: pointer;
  padding: 0;
  margin-left: auto;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 6px;
  position: relative;
  z-index: 100;
}
.bmb-nav-toggle-bar{
  display: block;
  width: 24px;
  height: 2px;
  /* Dark ink on the light cream-frost header (the new global default,
     2026-06-10). Was cream on warm-taupe before the light-bar swap.
     The mobile-nav-open state above already uses #232527. */
  background: var(--ink);
  border-radius: 2px;
  transition: transform .25s cubic-bezier(0.16, 1, 0.3, 1), opacity .15s ease, background-color .25s ease;
}
.site-header.is-floating .bmb-nav-toggle-bar{
  background: #553f63 !important;
}
body.mobile-nav-open .bmb-nav-toggle-bar:nth-child(1){ transform: translateY(8px) rotate(45deg); }
body.mobile-nav-open .bmb-nav-toggle-bar:nth-child(2){ opacity: 0; }
body.mobile-nav-open .bmb-nav-toggle-bar:nth-child(3){ transform: translateY(-8px) rotate(-45deg); }
.nav-account-item,
.nav-cart-item{ display: flex; align-items: center; margin-left: .4rem; flex: 0 0 auto; list-style: none; padding: 0; }
.nav-account-item::marker,
.nav-cart-item::marker{ content: none; }
.nav-tel-item{ display: none; }
.nav-cart-item.is-empty{ display: none; }
.primary-nav .nav-root > li.nav-account-item > a.nav-account,
.primary-nav .nav-root > li.nav-cart-item > a.nav-cart{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  flex: 0 0 auto;
  position: relative;
  /* The generic nav-link rule applies vertical padding, which shrank the
     content box and rendered the avatar squashed (41×24). */
  padding: 0;
  width: 2.5rem; height: 2.5rem;
  min-width: 2.5rem; max-width: 2.5rem;
  min-height: 2.5rem; max-height: 2.5rem;
  flex-basis: 2.5rem;
  border-radius: 50%;
  border: 1.6px solid rgba(255, 255, 255, .7);
  color: #fff;
  text-decoration: none;
  overflow: visible;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
.primary-nav .nav-root > li.nav-account-item > a.nav-account:hover,
.primary-nav .nav-root > li.nav-account-item > a.nav-account:focus-visible,
.primary-nav .nav-root > li.nav-cart-item > a.nav-cart:hover,
.primary-nav .nav-root > li.nav-cart-item > a.nav-cart:focus-visible{
  background: rgba(255, 255, 255, .16);
  transform: translateY(-1px);
}
.nav-account:focus-visible,
.nav-cart:focus-visible{ outline: 2px solid #fff; outline-offset: 2px; }
.nav-account svg,
.nav-cart svg{ width: 1.35rem; height: 1.35rem; flex: 0 0 auto; }
.nav-account .nav-account-face,
.nav-cart .nav-cart-face{ display: inline-flex; align-items: center; justify-content: center; line-height: 1; }
.nav-account img{
  position: absolute; inset: 0; display: block;
  width: 100%; height: 100%; object-fit: cover; border-radius: 50%;
}
.nav-account-label,
.nav-cart-label{ display: none; }
.nav-cart-badge{
  position: absolute; top: -.42rem; right: -.42rem;
  min-width: 1.05rem; height: 1.05rem; padding: 0 .2rem;
  box-sizing: border-box; border-radius: 999px;
  background: var(--accent, #5bc2e7); color: #1b2b31;
  font-family: var(--sans, sans-serif); font-size: .68rem; font-weight: 800; line-height: 1.05rem;
  text-align: center;
}
@media (min-width: 769px){
.primary-nav .nav-root > li.nav-search-item{ order: 1; }
.primary-nav .nav-root > li.nav-account-item{ order: 2; margin-left: calc(-1.75rem + 1rem); }
.primary-nav .nav-root > li.nav-cart-item{ order: 3; margin-left: calc(-1.75rem + 1rem); }
.primary-nav .nav-root > li.nav-cta-item{ order: 4; margin-left: calc(-1.75rem + 1rem); }
.primary-nav .nav-root > li.nav-account-item > a.nav-account,
  .primary-nav .nav-root > li.nav-cart-item > a.nav-cart,
  .primary-nav .nav-search-item .nav-search-btn{
    width: 2.3rem; height: 2.3rem;
    min-width: 2.3rem; max-width: 2.3rem;
    min-height: 2.3rem; max-height: 2.3rem;
    flex-basis: 2.3rem;
  }
}
@media (max-width: 768px){
.bmb-nav-toggle{ display: flex; }
.site-header{ padding: .55rem 1.25rem; flex-wrap: nowrap; }
.site-header .brand{ flex: 0 1 auto; }
.primary-nav{
    position: fixed;
    inset: 0;
    /* Slight transparency + backdrop blur so the page beneath
       softens through instead of a solid cream wall (2026-06-10). */
    background:var(--bg-2);
    -webkit-backdrop-filter: blur(20px) saturate(140%);
    backdrop-filter: blur(20px) saturate(140%);
    padding: 6rem 1.5rem 2.5rem;
    overflow-y: auto;
    transform: translateX(100%);
    transition: transform .35s cubic-bezier(0.16, 1, 0.3, 1);
    z-index: 90;
    visibility: hidden;
  }
body.mobile-nav-open .primary-nav{
    transform: translateX(0);
    visibility: visible;
  }
body.mobile-nav-open{
    overflow: hidden;
    position: fixed;
    width: 100%;
    left: 0;
    right: 0;
  }
body.mobile-nav-open .bmb-nav-toggle{
    position: fixed;
    top: .85rem;
    right: 1.25rem;
  }
.primary-nav{ overscroll-behavior: contain; }
.primary-nav .nav-root{
    display: grid;
    /* minmax(0,1fr), not 1fr: a plain 1fr floors at the content's min size, so
       a long display name in the account tile widened its column and shoved
       the cart tile out of the drawer. */
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: .6rem;
    row-gap: 0;
    padding: 0;
    list-style: none;
    width: 100%;
    align-items: stretch;
  }
.primary-nav .nav-root > li{
    width: 100%;
    min-width: 0;         /* ditto: grid items default to min-width:auto */
    grid-column: 1 / -1;
    border-bottom: 0;
  }
.primary-nav .nav-root > li.has-submenu{
    border-bottom: 1px solid var(--line);
  }
.primary-nav .nav-root > li > a{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.1rem 0;
    font-size: 1.125rem;
    color: var(--ink);
    font-weight: 500;
  }
.primary-nav .nav-root > li > a:hover,
  .primary-nav .nav-root > li > a:focus,
  .primary-nav .nav-root > li > a:focus-visible,
  .primary-nav .nav-root > li > a:active,
  .primary-nav .has-submenu.is-expanded > a{
    color: #2a8fb0;
  }
.primary-nav .caret{
    transform: rotate(45deg) translateY(-2px);
    transition: transform .25s ease;
    opacity: .55;
  }
.primary-nav .has-submenu.is-expanded .caret{
    transform: rotate(-135deg) translateY(2px);
    opacity: 1;
  }
.primary-nav .submenu{
    position: static;
    opacity: 1;
    /* hidden while collapsed, so Tab skips links nobody can see (a child's
       visibility:visible would otherwise override the closed drawer's hidden).
       The delay keeps the links showing until the collapse has finished. */
    visibility: hidden;
    transform: none;
    box-shadow: none;
    border: 0;
    border-radius: 0;
    padding: 0;
    min-width: 0;
    background: transparent;
    max-height: 0;
    overflow: hidden;
    transition:
      max-height .42s cubic-bezier(.22, 1, .36, 1),
      padding .35s cubic-bezier(.22, 1, .36, 1),
      visibility 0s linear .42s;
    list-style: none;
  }
.primary-nav .has-submenu.is-expanded .submenu{
    max-height: 520px;
    padding: 0 0 .75rem 1rem;
  }
body.mobile-nav-open .primary-nav .has-submenu.is-expanded .submenu{
    visibility: visible;
    transition-delay: 0s;
  }
.primary-nav .has-submenu:not(.is-expanded):hover > .submenu,
  .primary-nav .has-submenu:not(.is-expanded):focus-within > .submenu{
    visibility: hidden;
  }
@supports (interpolate-size: allow-keywords){
.primary-nav .submenu{
      height: 0; max-height: none;
      transition:
        height .42s cubic-bezier(.22, 1, .36, 1),
        padding .35s cubic-bezier(.22, 1, .36, 1),
        visibility 0s linear .42s;
    }
.primary-nav .has-submenu.is-expanded .submenu{ height: auto; max-height: none; }
}
body.mobile-nav-open .primary-nav .nav-root > li{
    animation: bmbNavRowIn .45s cubic-bezier(.22, 1, .36, 1) both;
  }
body.mobile-nav-open .primary-nav .nav-root > li:nth-child(1){ animation-delay:.10s }
body.mobile-nav-open .primary-nav .nav-root > li:nth-child(2){ animation-delay:.15s }
body.mobile-nav-open .primary-nav .nav-root > li:nth-child(3){ animation-delay:.20s }
body.mobile-nav-open .primary-nav .nav-root > li:nth-child(4){ animation-delay:.25s }
body.mobile-nav-open .primary-nav .nav-root > li:nth-child(5){ animation-delay:.30s }
body.mobile-nav-open .primary-nav .nav-root > li:nth-child(6){ animation-delay:.35s }
body.mobile-nav-open .primary-nav .nav-root > li.nav-account-item{ animation-delay:.41s }
body.mobile-nav-open .primary-nav .nav-root > li.nav-cart-item{ animation-delay:.45s }
body.mobile-nav-open .primary-nav .nav-root > li.nav-cta-item{ animation-delay:.51s }
body.mobile-nav-open .primary-nav .nav-root > li.nav-tel-item{ animation-delay:.57s }
@keyframes bmbNavRowIn{
    from{ opacity:0; transform:translateY(10px) }
    to{ opacity:1; transform:none }
  }
@media (prefers-reduced-motion: reduce){
body.mobile-nav-open .primary-nav .nav-root > li{ animation:none }
.primary-nav .submenu{ transition:none }
}
.primary-nav .submenu a{
    /* Mobile menu — the expanded submenu sits on the dark/purple mobile
       drawer, not the desktop cream panel. Cream text reads; dark text
       (the cream-scope default) would vanish. */
    padding: .55rem 0;
    font-size: 1rem;
    color: var(--cream);
    display: block;
  }
.primary-nav .submenu a:hover,
  .primary-nav .submenu a:focus-visible{
    color: #ffffff;
    background: transparent;
  }
.primary-nav .submenu li{
    opacity: 0;
    transform: translateY(-6px);
    transition:
      opacity .24s ease-out,
      transform .32s cubic-bezier(.22, 1, .36, 1);
  }
.primary-nav .has-submenu.is-expanded .submenu li{
    opacity: 1;
    transform: translateY(0);
  }
.primary-nav .has-submenu.is-expanded .submenu li:nth-child(1){ transition-delay: .06s; }
.primary-nav .has-submenu.is-expanded .submenu li:nth-child(2){ transition-delay: .10s; }
.primary-nav .has-submenu.is-expanded .submenu li:nth-child(3){ transition-delay: .14s; }
.primary-nav .has-submenu.is-expanded .submenu li:nth-child(4){ transition-delay: .18s; }
.primary-nav .has-submenu.is-expanded .submenu li:nth-child(5){ transition-delay: .22s; }
.primary-nav .has-submenu.is-expanded .submenu li:nth-child(6){ transition-delay: .26s; }
.primary-nav .has-submenu.is-expanded .submenu li:nth-child(7){ transition-delay: .30s; }
.primary-nav .has-submenu.is-expanded .submenu li:nth-child(8){ transition-delay: .34s; }
@media (prefers-reduced-motion: reduce){
.primary-nav .submenu,
    .primary-nav .submenu li{
      transition: none !important;
    }
.primary-nav .submenu li{
      opacity: 1;
      transform: none;
    }
}
.primary-nav .nav-root > li.nav-search-item{ margin: 0 0 1.1rem; }
.primary-nav .nav-search-item .nav-search-btn{
    width: 100%;
    height: auto;
    min-width: 0;
    justify-content: flex-start;
    gap: .7rem;
    padding: .9rem 1rem;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, .22);
    background: rgba(255, 255, 255, .07);
    font-family: var(--sans);
    font-size: .98rem;
    font-weight: 500;
    color: rgba(241, 238, 233, .72);
    text-align: left;
  }
.primary-nav .nav-search-item .nav-search-btn:hover,
  .primary-nav .nav-search-item .nav-search-btn:focus-visible{
    background: rgba(255, 255, 255, .13);
    border-color: rgba(255, 255, 255, .34);
    transform: none;
  }
.primary-nav .nav-search-item .nav-search-label{ display: inline; }
.primary-nav .nav-root > li.nav-account-item{ grid-column: 1 / 2; margin: 1.2rem 0 0; }
.primary-nav .nav-root > li.nav-cart-item{ grid-column: 2 / 3; margin: 1.2rem 0 0; display: block; }
.primary-nav .nav-root > li.nav-cart-item.is-empty{ display: block; }
.primary-nav .nav-root > li.nav-account-item > a.nav-account,
  .primary-nav .nav-root > li.nav-cart-item > a.nav-cart{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: .65rem;
    width: 100%; max-width: none; min-width: 0;
    height: auto; max-height: none; min-height: 0;
    flex-basis: auto;
    padding: .85rem .9rem;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 16px;
    background: rgba(255, 255, 255, .07);
    overflow: visible;
    font-family: var(--sans);
    font-size: .95rem;
    font-weight: 600;
    color: var(--ink);
  }
.primary-nav .nav-root > li.nav-account-item > a.nav-account:hover,
  .primary-nav .nav-root > li.nav-account-item > a.nav-account:focus-visible,
  .primary-nav .nav-root > li.nav-cart-item > a.nav-cart:hover,
  .primary-nav .nav-root > li.nav-cart-item > a.nav-cart:focus-visible{
    background: rgba(255, 255, 255, .14);
    border-color: rgba(255, 255, 255, .34);
    transform: none;
  }
.nav-account .nav-account-face,
  .nav-cart .nav-cart-face{
    position: relative;
    flex: 0 0 auto;
    width: 2.1rem; height: 2.1rem;
    border-radius: 50%;
    border: 1.6px solid rgba(255, 255, 255, .7);
    box-sizing: border-box;
  }
.nav-account .nav-account-face{ overflow: hidden; }
.nav-account.is-in .nav-account-face{
    background: #fff; border-color: #fff; color: #8d319b;
    font-weight: 800; font-size: .82rem;
  }
.nav-account-label,
  .nav-cart-label{
    display: block;
    font-weight: inherit;
    line-height: 1.25;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
@media (max-width: 359px){
.primary-nav .nav-root > li.nav-account-item,
    .primary-nav .nav-root > li.nav-cart-item{ grid-column: 1 / -1; }
.primary-nav .nav-root > li.nav-cart-item{ margin-top: .6rem; }
}
.primary-nav .nav-root > li.nav-cta-item{ margin-left: 0; margin-top: 1.1rem; }
.primary-nav .nav-cta{
    display: block;
    text-align: center;
    padding: .8rem 1.4rem !important;
    font-size: 1.05rem !important;
  }
.primary-nav .nav-root > li.nav-tel-item{ display: block; margin-top: 1.15rem; }
.primary-nav .nav-root > li.nav-tel-item > a.nav-tel{
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: .55rem;
    padding: .5rem 0;
    font-family: var(--sans);
    font-size: .92rem;
    font-weight: 500;
    color: rgba(241, 238, 233, .68);
    text-decoration: none;
  }
.primary-nav .nav-tel svg{ width: 1rem; height: 1rem; flex: 0 0 auto; }
.primary-nav .nav-tel strong{ color: var(--ink); font-weight: 700; letter-spacing: .01em; }
.primary-nav .nav-root > li.nav-tel-item > a.nav-tel:hover,
  .primary-nav .nav-root > li.nav-tel-item > a.nav-tel:focus-visible{ color: var(--ink); }
}
main{ max-width: var(--max); margin: 0 auto; padding: 2rem 1.25rem 4rem; }
main section{ margin: 2.25rem 0; }
.site-footer{
  background:var(--bg-2,#f3ece4);
  padding:4rem 2rem 1.6rem;color:var(--ink);
}
.site-footer .footer-row{
  max-width:1280px;margin:0 auto;
  display:grid;grid-template-columns:1.7fr repeat(4,minmax(0,1fr));
  gap:2.4rem;align-items:start;
}
.site-footer .footer-col-head{
  font-family:var(--serif);
  font-weight:500;font-size:1.25rem;
  letter-spacing:.005em;color:var(--ink);
  margin:0 0 1.4rem;text-transform:none;
}
.site-footer .footer-brand .footer-logo{
  height:54px;width:auto;margin-bottom:1.2rem;display:block;
}
.site-footer .footer-tagline{
  font-family:var(--sans);font-size:.92rem;line-height:1.65;
  color:var(--ink-2);margin:0 0 1.2rem;max-width:32ch;
}
.site-footer .footer-brand-contact{margin:0;font-family:var(--sans);font-size:.88rem}
.site-footer .footer-brand-contact a{
  color:var(--ink);font-family:var(--sans);
  font-size:.84rem;text-decoration:none;border-bottom:1px solid var(--brand);
  padding-bottom:1px;transition:color .15s, border-color .15s;
}
.site-footer .footer-brand-contact a:hover,
.site-footer .footer-brand-contact a:focus-visible{color:var(--accent);border-color:var(--accent)}
.site-footer .footer-col ul{
  list-style:none;margin:0;padding:0;
  display:flex;flex-direction:column;gap:.9rem;
}
.site-footer .footer-col li{margin:0}
.site-footer .footer-col li a{
  font-family:var(--sans);font-size:.95rem;color:var(--ink-2);
  text-decoration:none;line-height:1.4;
  transition:color .15s ease;
}
.site-footer .footer-col li a:hover,
.site-footer .footer-col li a:focus-visible{color:var(--accent)}
.site-footer .copyright{
  max-width:1280px;margin:3rem auto 0;padding-top:1.4rem;
  border-top:1px solid var(--line);
  font-family:var(--sans);font-size:.78rem;color:var(--muted);text-align:center;
}
@media (max-width:960px){
.site-footer .footer-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
}
@media (max-width:720px){
.site-footer{padding:2.6rem 1.2rem 1.2rem}
.site-footer .footer-row{grid-template-columns:1fr;gap:1.8rem}
}
:where(.contact-form-card, .post-card, .bmb-blog-card, .service-prep-card,
       .bmb-bundle-card, .bmb-pack-card, .bmb-menu-card, .terms-toc-card,
       .terms-glance-card, .partners-loc-card, .contact-channel-card,
       .bmb-faq-item, .service-faq, .service-faq-body) a{
  color: var(--brand);
}
:where(.contact-form-card, .post-card, .bmb-blog-card, .service-prep-card,
       .bmb-bundle-card, .bmb-pack-card, .bmb-menu-card, .terms-toc-card,
       .terms-glance-card, .partners-loc-card, .contact-channel-card,
       .bmb-faq-item, .service-faq, .service-faq-body) a:hover{
  color: var(--brand-dk);
}
.bmb-visually-hidden{ position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.bmb-consent{ position: fixed; left: 0; right: 0; bottom: 0; z-index: 9999; background: #fff; border-top: 1px solid var(--line); box-shadow: 0 -6px 24px rgba(42, 42, 42, .12); }
.bmb-consent[hidden]{ display: none; }
.bmb-consent-inner{ max-width: var(--max); margin: 0 auto; padding: 1.1rem 1.25rem 1.25rem; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1rem 1.5rem; align-items: center; }
.bmb-consent-text h2{ font-size: 1.05rem; margin: 0 0 .25rem; font-family: var(--serif); font-weight: 600; }
.bmb-consent-text p{ margin: 0; font-size: .9rem; color: var(--ink); line-height: 1.5; }
.bmb-consent-text a{ color: var(--brand); text-decoration: underline; }
.bmb-consent-actions{ display: flex; flex-wrap: wrap; gap: .5rem; justify-content: flex-end; }
.bmb-consent-btn{ font: inherit; font-size: .9rem; font-weight: 500; padding: .55rem 1.1rem; border-radius: 999px; cursor: pointer; border: 1px solid var(--brand); line-height: 1.2; white-space: nowrap; }
.bmb-consent-btn--primary{ background: var(--brand); color: #fff; }
.bmb-consent-btn--primary:hover{ opacity: .9; }
.bmb-consent-btn--secondary{ background: #fff; color: var(--brand); }
.bmb-consent-btn--secondary:hover{ background: #efd9f3; }
.bmb-consent-btn:focus-visible{ outline: 3px solid #efd9f3; outline-offset: 2px; }
.bmb-consent-prefs{ grid-column: 1 / -1; border-top: 1px solid var(--line); padding-top: .9rem; margin-top: .25rem; }
.bmb-consent-prefs[hidden]{ display: none; }
.bmb-consent-prefs fieldset{ border: 0; padding: 0; margin: 0 0 .75rem; }
.bmb-consent-pref{ display: flex; gap: .65rem; align-items: flex-start; margin: .5rem 0; font-size: .88rem; color: var(--ink); }
.bmb-consent-pref input[type=checkbox]{ margin-top: .25rem; accent-color: var(--brand); }
.bmb-consent-pref input[type=checkbox]:focus-visible{ outline: 3px solid #efd9f3; outline-offset: 2px; }
.bmb-consent-pref strong{ color: var(--ink); }
@media (max-width: 720px){
.bmb-consent-inner{ grid-template-columns: 1fr; padding: 1rem 1rem 1.1rem; }
.bmb-consent-actions{ justify-content: stretch; }
.bmb-consent-actions .bmb-consent-btn{ flex: 1 1 auto; text-align: center; }
}
.bmb-wa-fab{
  position: fixed;
  right: clamp(1rem, 2.5vw, 1.5rem);
  bottom: calc(clamp(1rem, 2.5vw, 1.5rem) + env(safe-area-inset-bottom, 0px));
  z-index: 45;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  background: #25d366;
  color: #ffffff;
  text-decoration: none;
  box-shadow:
    0 6px 20px rgba(20, 18, 16, 0.22),
    0 2px 6px rgba(20, 18, 16, 0.14);
  transition:
    transform .22s cubic-bezier(.2, .7, .2, 1),
    background-color .22s cubic-bezier(.2, .7, .2, 1),
    box-shadow .22s cubic-bezier(.2, .7, .2, 1),
    opacity .25s ease-out;
  -webkit-tap-highlight-color: transparent;
}
.bmb-wa-fab:hover,
.bmb-wa-fab:focus-visible{
  background: #1ebe57;
  transform: translateY(-3px);
  box-shadow:
    0 10px 26px rgba(20, 18, 16, 0.28),
    0 3px 8px rgba(20, 18, 16, 0.18);
  text-decoration: none;
}
.bmb-wa-fab:focus-visible{
  outline: 2px solid #ffffff;
  outline-offset: 3px;
}
.bmb-wa-fab__icon{
  width: 1.85rem;
  height: 1.85rem;
  position: relative;
  z-index: 1;
  display: block;
}
.bmb-wa-fab__pulse{
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: #25d366;
  opacity: 0.55;
  animation: bmbWaFabPulse 2.4s cubic-bezier(.2, .7, .2, 1) infinite;
  pointer-events: none;
  z-index: 0;
}
@keyframes bmbWaFabPulse {0%{ transform: scale(1);    opacity: 0.55; }70%{ transform: scale(1.6);  opacity: 0;    }100%{ transform: scale(1.6);  opacity: 0;    }
}
body.mobile-nav-open .bmb-wa-fab{
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
}
@media (prefers-reduced-motion: reduce){
.bmb-wa-fab{ transition: opacity .25s ease-out; }
.bmb-wa-fab:hover,
  .bmb-wa-fab:focus-visible{ transform: none; }
.bmb-wa-fab__pulse{ animation: none; opacity: 0; }
}
@media (max-width: 640px){
.bmb-wa-fab{ width: 3.25rem; height: 3.25rem; }
.bmb-wa-fab__icon{ width: 1.65rem; height: 1.65rem; }
}
.bmb-promo-pause{
  margin: 1.5rem auto 2rem;
  max-width: var(--max);
  padding: 1.1rem 1.4rem 1.2rem;
  background: linear-gradient(180deg, rgba(141, 49, 155, 0.07), rgba(141, 49, 155, 0.03));
  border: 1px solid rgba(141, 49, 155, 0.25);
  border-left: 4px solid #8d319b;
  border-radius: 14px;
  color: var(--ink);
}
.bmb-promo-pause-inner{ max-width: 760px; }
.bmb-promo-pause-msg{
  font-family: var(--sans);
  font-size: 1rem;
  line-height: 1.55;
  margin: 0;
  color: var(--ink);
}
.bmb-promo-pause-msg a{
  color: var(--spectrum-1);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.bmb-promo-pause-msg a:hover{ color: #ffffff; }
@media (max-width: 640px){
.bmb-promo-pause{ margin: 1rem 1rem 1.5rem; padding: .9rem 1rem 1rem; border-radius: 10px; }
.bmb-promo-pause-msg{ font-size: .94rem; }
}
.bmb-cta--primary{
  background: var(--cream) !important;
  background-image: none !important;
  color: var(--brand) !important;
  border: 1px solid transparent !important;
  box-shadow:
    0 8px 24px -6px rgba(31, 8, 36, 0.45),
    0 16px 44px -10px rgba(31, 8, 36, 0.35) !important;
}
.bmb-cta--primary:hover{
  background: #ffffff !important;
  color: var(--brand-dk) !important;
  transform: translateY(-2px);
  box-shadow:
    0 12px 32px -6px rgba(31, 8, 36, 0.55),
    0 20px 52px -10px rgba(31, 8, 36, 0.45) !important;
}
.bmb-cta--ghost{
  background: transparent !important;
  color: var(--cream) !important;
  border: 1px solid rgba(241, 238, 233, 0.7) !important;
}
.bmb-cta--ghost:hover{
  background: rgba(241, 238, 233, 0.14) !important;
  color: var(--cream) !important;
  border-color: var(--cream) !important;
}
:where(.contact-form-card, .post-card, .bmb-blog-card, .service-prep-card,
       .bmb-bundle-card, .bmb-pack-card, .bmb-menu-card, .bmb-product-card,
       .bmb-location-card, .partners-loc-card, .contact-channel-card,
       .terms-glance-card, .terms-toc-card, details.service-faq) .bmb-cta--primary{
  background: var(--brand) !important;
  color: #ffffff !important;
}
:where(.contact-form-card, .post-card, .bmb-blog-card, .service-prep-card,
       .bmb-bundle-card, .bmb-pack-card, .bmb-menu-card, .bmb-product-card,
       .bmb-location-card, .partners-loc-card, .contact-channel-card,
       .terms-glance-card, .terms-toc-card, details.service-faq) .bmb-cta--primary:hover{
  background: var(--brand-dk) !important;
  color: #ffffff !important;
}
:where(.contact-form-card, .post-card, .bmb-blog-card, .service-prep-card,
       .bmb-bundle-card, .bmb-pack-card, .bmb-menu-card, .bmb-product-card,
       .bmb-location-card, .partners-loc-card, .contact-channel-card,
       .terms-glance-card, .terms-toc-card, details.service-faq) .bmb-cta--ghost{
  background: transparent !important;
  color: var(--brand) !important;
  border: 1px solid rgba(141, 49, 155, 0.4) !important;
}
/* from /css/pages/home.css */
html,body{overflow-x:clip;max-width:100vw}
.site-header{
  position:sticky !important;
  top:0;
  /* SOLID OPAQUE CREAM — matches the global default. Transparent
     and frosted variants both let the page bleed through and
     absorbed the cyan brand logo. Solid cream guarantees the cyan
     logo + dark nav text read on every page. The pill state takes
     over its own dark chrome via .is-floating below. */
  background:#8d319b !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border-bottom:1px solid rgba(80, 55, 95, 0.10) !important;
  box-shadow:0 4px 20px -10px rgba(80, 55, 95, 0.18) !important;
  /* margin-top is animated instead of transform — same visual hide-
     on-scroll-down + show-on-scroll-up effect, but margin-top does
     NOT create a containing block for fixed-position descendants the
     way `transform` does. With transform (even `translateY(0)`), the
     .primary-nav mobile-menu overlay was trapped inside the ~50px
     header and only the top of the menu showed. Switched to margin-
     top so the fixed-position .primary-nav can escape to the viewport
     when the burger opens, and clears the trap on every page (no
     special-case body class needed). */
  transition:margin-top 0.4s cubic-bezier(.2,.7,.2,1);
  margin-top:var(--header-y, 0);
}
.site-header .caret{font-size:.85em;opacity:.6}
:root{
  --brand:        #8d319b;
  --brand-dk:     #6e2479;
  --brand-50:     #f7eef9;
  --brand-100:    #efd9f3;
  --brand-200:    #ddb5e6;
  --brand-700:    #5a1f63;
  --accent:       #5bc2e7;

  --ink:          #f1eee9;            /* cream — default text on purple */
  --ink-2:        rgba(241,238,233,0.82);
  --muted:        rgba(241,238,233,0.62);
  --ink-on-cream: #232527;            /* for the few cream surfaces (cards, footer) */

  --bg:           #8d319b;            /* bmb-Purple — the surface */
  --bg-2:         #6e2479;
  --bg-3:         #5a1f63;
  --surface:      #f1eee9;
  --line:         rgba(241,238,233,0.18);
  --line-rose:    rgba(241,238,233,0.30);

  /* Updated 2026-06-15 to BMB v1.0 Brand Guidelines fonts.
     --serif = display font (now Quicksand, was Cormorant Garamond)
     --sans  = body font    (Quicksand since 25/09/2026, ticket #112; was Mulish, before that Inter) */
  --serif:        'Quicksand', system-ui, -apple-system, "Segoe UI", sans-serif;
  --sans:         'Quicksand', system-ui, -apple-system, "Segoe UI", sans-serif;

  --max-home:     1180px;
  --r:            6px;
  --r-lg:         14px;
  --shadow-sm:    0 1px 3px rgba(80, 55, 95,.05), 0 6px 16px rgba(80, 55, 95,.06);
  --shadow:      0 6px 18px rgba(80, 55, 95,.08), 0 28px 60px rgba(80, 55, 95,.08);
}
.home-preview{
  font-family:var(--sans);
  color:var(--ink);
  font-size:16px;line-height:1.65;
  /* Don't clip horizontal overflow here — the body already has
     overflow-x:clip globally (line 7) which prevents a horizontal
     scrollbar. Putting clip on the article ALSO clips the hero's
     full-bleed (100vw + negative-margin) breakout, constraining the
     hero photo to main's 1180px max-width. Leaving article overflow
     as visible lets the hero/trust band extend edge-to-edge. */
  max-width:100vw;
  /* Article itself is transparent — the tonal wash lives on <body>
     so it spans the full viewport (the rebuild's <main> is capped
     at 1180px max-width, so a gradient placed here would only paint
     within that 1180px and read as a "boxed inset" against the body
     bg outside). Moving the wash to <body> kills the box. */
  background:transparent;
}
body{
  background:linear-gradient(
    180deg,
    #8d319b   0%,    /* hero */
    #8d319b  18%,    /* stats / trust */
    #6e2479  34%,    /* awards / proof — deeper for contrast */
    #8d319b  50%,    /* services — back up */
    #6e2479  66%,    /* trimester — deeper */
    #8d319b  82%,    /* testimonials */
    #5a1f63 100%     /* close on deepest purple, like the brand END page */
  );
}
.home-preview *,
.home-preview *::before,
.home-preview *::after{box-sizing:border-box}
.home-preview h1,
.home-preview h2,
.home-preview h3,
.home-preview h4{
  font-family:var(--serif);font-weight:500;line-height:1.15;
  letter-spacing:-.01em;color:var(--ink);
}
.home-preview p{color:var(--ink-2);margin:0}
.home-preview img{max-width:100%;height:auto;display:block}
.home-preview a{color:inherit;text-decoration:none}
.home-preview > section,
.home-preview > article,
.home-preview > div{max-width:100%}
.home-preview .bmb-service-grid,
.home-preview .bmb-timeline,
.home-preview .bmb-blog-grid,
.home-preview .bmb-locations,
.home-preview .bmb-review-track,
.home-preview .bmb-award-grid,
.home-preview .bmb-partner-strip,
.home-preview .bmb-stats,
.home-preview .bmb-hero-ctas,
.home-preview .bmb-testimonials-head,
.home-preview .bmb-testimonials-shell,
.home-preview .bmb-why-grid{max-width:100%;min-width:0}
.home-preview .bmb-service-grid > *,
.home-preview .bmb-timeline > *,
.home-preview .bmb-blog-grid > *,
.home-preview .bmb-review-track > *,
.home-preview .bmb-locations > *,
.home-preview .bmb-stats > *,
.home-preview .bmb-award-grid > *,
.home-preview .bmb-why-grid > *,
.home-preview .bmb-testimonials-shell > *{min-width:0}
.home-preview img,
.home-preview video,
.home-preview iframe,
.home-preview svg{max-width:100%;height:auto}
.home-preview pre,
.home-preview code,
.home-preview blockquote{max-width:100%;overflow-wrap:break-word;word-break:break-word}
.home-preview .bmb-eyebrow{
  font-family:var(--font-display);font-size:.74rem;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;color:var(--cream);
  display:inline-flex;align-items:center;gap:12px;margin:0;
}
.home-preview .bmb-section-head{
  text-align:center;margin-bottom:3rem;max-width:60ch;margin-left:auto;margin-right:auto;
}
.home-preview .bmb-section-head .bmb-eyebrow{
  justify-content:center;
  margin-bottom:1.25rem;
  font-family:var(--font-display);
  font-size:clamp(1.9rem, 3.2vw, 2.7rem);
  font-weight:600;
  letter-spacing:.22em;
  /* Navy instead of rose — gives the section opener premium contrast
     against the cream page and breaks the all-pink monotony. */
  color:var(--cream);
  gap:32px;
}
.home-preview .bmb-section-head .bmb-eyebrow::before{width:60px}
.home-preview .bmb-section-head .bmb-eyebrow::before,
.home-preview .bmb-testimonials-head-text .bmb-eyebrow::before,
.home-preview .bmb-why-text .bmb-eyebrow::before{display:none}
.home-preview .bmb-section-head h2{
  font-size:clamp(1rem, 1.3vw, 1.22rem);
  font-weight:400;
  color:var(--muted);
  margin-bottom:1.5rem;
}
.home-preview .bmb-section-head .bmb-section-lead{
  font-family:var(--sans);font-size:1rem;color:var(--muted);line-height:1.6;margin:0 auto;
}
.home-preview .bmb-cta{
  display:inline-flex;align-items:center;gap:.5rem;
  font-family: var(--sans);
  font-size:1.05rem;font-weight:500;
  letter-spacing:.005em;padding:.7rem 1.5rem;border-radius:999px;
  transition:transform .15s ease, box-shadow .15s ease, background .15s, color .15s, border-color .15s;
  white-space:nowrap;
}
.home-preview .bmb-cta--primary{background:var(--brand);color:#fff;box-shadow:var(--shadow-sm)}
.home-preview .bmb-cta--primary:hover{background:var(--brand-dk);transform:translateY(-1px);box-shadow:var(--shadow)}
.home-preview .bmb-cta--ghost{background:transparent;color:var(--ink);border:1px solid var(--line-rose)}
.home-preview .bmb-cta--ghost:hover{border-color:var(--brand);color:var(--cream)}
.home-preview .bmb-hero{
  position:relative;padding:5rem 2rem 3rem;
  overflow:hidden;text-align:center;
  isolation:isolate;
  background:transparent;
}
.home-preview .bmb-hero::before,
.home-preview .bmb-hero::after{
  content:"";
  position:absolute;
  top:50%;
  width:clamp(160px, 16vw, 240px);
  height:clamp(240px, 26vw, 360px);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 520' fill='none' stroke='%23f1eee9' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M170 510 Q145 420 165 330 Q185 240 155 150 Q140 80 170 10'/><path d='M165 450 Q195 448 208 422 Q180 418 165 450' fill='%23f1eee9'/><path d='M150 380 Q120 378 108 352 Q135 348 150 380' fill='%23f1eee9'/><path d='M170 300 Q200 298 213 272 Q185 268 170 300' fill='%23f1eee9'/><path d='M155 220 Q125 218 113 192 Q140 188 155 220' fill='%23f1eee9'/><path d='M170 140 Q200 138 213 112 Q185 108 170 140' fill='%23f1eee9'/><path d='M160 70 Q130 68 118 42 Q145 38 160 70' fill='%23f1eee9'/><circle cx='170' cy='12' r='3.5' fill='%23f1eee9'/></svg>");
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center;
  opacity:.16;
  pointer-events:none;
  z-index:-1;
  transform-origin:center bottom;
}
.home-preview .bmb-hero::before{
  left:clamp(.5rem, 4vw, 5rem);
  transform:translateY(-50%);
  animation:bmbSwayL 9s ease-in-out infinite;
}
.home-preview .bmb-hero::after{
  right:clamp(.5rem, 4vw, 5rem);
  transform:translateY(-50%) scaleX(-1);   /* mirror so leaves face inward */
  animation:bmbSwayR 11s ease-in-out infinite;
}
@keyframes bmbSwayL{0%,100%{transform:translateY(-50%) rotate(-1.5deg)}50%{transform:translateY(-50%) rotate(1.5deg)}
}
@keyframes bmbSwayR{0%,100%{transform:translateY(-50%) scaleX(-1) rotate(-1.5deg)}50%{transform:translateY(-50%) scaleX(-1) rotate(1.5deg)}
}
@media (max-width:720px){
.home-preview .bmb-hero::before,
  .home-preview .bmb-hero::after{display:none}
}
@media (prefers-reduced-motion:reduce){
.home-preview .bmb-hero::before,
  .home-preview .bmb-hero::after{animation:none}
}
.home-preview .bmb-hero > *{max-width:var(--max-home);margin-left:auto;margin-right:auto}
.home-preview .bmb-hero-display{
  font-family:var(--font-display);
  font-size:clamp(2.2rem, 4.6vw, 4.4rem);
  line-height:1.04;
  letter-spacing:-.025em;
  font-weight:400;
  color:var(--ink);
  max-width:min(26ch, 92vw);
  margin:0 auto 1rem;
  text-wrap:balance;
}
.home-preview .bmb-hero-display em{
  font-style:italic;
  color:var(--spectrum-1);
  font-weight:400;
}
.home-preview .bmb-hero h1.bmb-hero-h1{
  font-family:var(--font-body);
  font-size:clamp(1.02rem, .25vw + .92rem, 1.18rem);
  font-weight:400;
  letter-spacing:.005em;
  color:var(--muted);
  max-width:42ch;
  margin:0 auto 1.8rem;
  line-height:1.55;
}
.home-preview .bmb-hero h1.bmb-hero-h1 em{
  font-style:italic;
  color:var(--spectrum-1);
  font-weight:500;
}
.home-preview .bmb-stage{
  position:relative;
  /* Tall stage so trust band has DWELL TIME pinned at vp centre after
     the cross-fade completes. Math:
       0-50vh of scroll    cross-fade hero → trust
       50-150vh            trust dwells, fully visible at vp centre
       150vh+              services rises up and covers trust */
  height:250vh;
  margin-top:calc(-1 * var(--header-h, 146px));
}
.home-preview .bmb-stage-frame{
  position:sticky;
  top:0;
  height:100svh;
  /* Full-bleed: break out of main's 1180px max-width. */
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  overflow:hidden;
}
.home-preview .bmb-stage-frame > .bmb-hero,
.home-preview .bmb-stage-frame > .bmb-trust{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  margin:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  border:none;
  box-shadow:none;
}
.home-preview .bmb-stage-frame > .bmb-hero{
  padding:calc(var(--header-h, 146px) + 1rem) 2rem 2rem;
}
.home-preview .bmb-stage-frame > .bmb-hero{
  justify-content:center;
}
.home-preview .bmb-stage-frame > .bmb-hero > .bmb-hero-core{
  /* Pull hero-core down so the display headline (top-weighted within
     hero-core) sits closer to viewport mid. Clamped so CTAs stay above
     the absolute-positioned microcopy at the bottom.
     !important because the reveal-killer rule below sets transform:none
     on all hero children — that's meant for entrance animations only. */
  transform:translateY(clamp(1rem, 4.5vh, 3.5rem)) !important;
}
.home-preview .bmb-stage-frame > .bmb-hero .bmb-hero-core > .bmb-hero-ctas{
  margin-bottom:0;
}
.home-preview .bmb-stage-frame > .bmb-hero .bmb-hero-core > .bmb-hero-microcopy{
  text-align:center;
  margin-top:-0.8rem;
  letter-spacing:0.02em;
}
@media (max-width:720px){
.home-preview .bmb-stage-frame > .bmb-hero > .bmb-hero-core{
    transform:translateY(clamp(1rem, 6vh, 4rem));
  }
}
.home-preview .bmb-stage-frame > .bmb-trust{
  /* Symmetric padding so flex-centred content lands at true vp middle. */
  padding:3rem 2rem;
}
.home-preview .bmb-stage-frame > .bmb-hero{
  /* Photo-led hero — the maternity image leads; a subtle neutral darkening
     keeps the cream type readable without tinting the photograph. The
     drench is carried by the rest of the page; here we let the image breathe. */
  background:
    linear-gradient(180deg,
      rgba(20, 12, 25, 0.20) 0%,
      rgba(20, 12, 25, 0.28) 50%,
      rgba(20, 12, 25, 0.38) 100%),
    url('/img/hero-bg-2.webp') center/cover no-repeat;
  justify-content:center;
  z-index:1;
  /* Hero element stays fully opaque — keeps the photo visible through
     the entire scroll. Only its TEXT children fade (rule below). */
  opacity:1;
}
@media (max-width: 768px){
.home-preview .bmb-stage-frame > .bmb-hero{
    background-position:75% center;
  }
}
.home-preview .bmb-stage-frame > .bmb-hero > *,
.home-preview .bmb-stage-frame > .bmb-hero > *.is-revealed{
  opacity:var(--hero-op, 1) !important;
  transform:none !important;
  transition:none !important;
}
@media (prefers-reduced-motion: no-preference){
html.js .home-preview .bmb-stage-frame > .bmb-hero .bmb-hero-core > *{
    opacity:0;
    transform:translateY(24px);
    /* Longhands (not the `animation` shorthand) so the per-child
       animation-delay rules below are not reset to 0s by this
       higher-specificity block — that's what preserves the stagger. */
    animation-name:bmbHeroEnter;
    animation-duration:.9s;
    animation-timing-function:cubic-bezier(.16,1,.3,1);
    animation-fill-mode:both;
  }
html.js .home-preview .bmb-hero-core > .bmb-hero-display  { animation-delay:.12s; }
html.js .home-preview .bmb-hero-core > .bmb-hero-h1       { animation-delay:.34s; }
html.js .home-preview .bmb-hero-core > .bmb-hero-ctas     { animation-delay:.5s;  }
html.js .home-preview .bmb-hero-core > .bmb-hero-microcopy{ animation-delay:.64s; }
}
@keyframes bmbHeroEnter{ to{ opacity:1; transform:none; } }
.home-preview .bmb-stage-frame > .bmb-trust{
  /* CONTENT layer only (eyebrow + numbers). The frosted backdrop now
     lives on the sibling .bmb-trust-bg so it can fade in / cream on its
     own timeline. --trust-op is the NUMBERS' scroll-driven opacity. */
  justify-content:center;
  z-index:3;
  opacity:var(--trust-op, 0);
  min-height:0;
  /* pointer-events:none so the hero's CTAs below stay clickable even
     while this (opacity:0 at top) layer sits over them. */
  pointer-events:none;
}
.home-preview .bmb-stage-frame > .bmb-trust::before,
.home-preview .bmb-stage-frame > .bmb-trust::after{
  content:"";
  position:absolute;
  top:50%;
  width:clamp(56px, 6vw, 84px);
  height:clamp(220px, 36vh, 320px);
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  pointer-events:none;
  z-index:0;
  opacity:0.85;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 220'><path d='M50 215 Q30 160 28 110 Q28 60 42 8' stroke='%23a87bd8' stroke-width='1.1' fill='none' opacity='0.7'/><g fill='%23a87bd8'><ellipse cx='44' cy='28' rx='13' ry='3.8' transform='rotate(-55 44 28)'/><ellipse cx='34' cy='60' rx='15.5' ry='4.4' transform='rotate(-62 34 60)'/><ellipse cx='28' cy='95' rx='16' ry='4.5' transform='rotate(-70 28 95)'/><ellipse cx='28' cy='130' rx='16' ry='4.5' transform='rotate(-74 28 130)'/><ellipse cx='32' cy='162' rx='15' ry='4.3' transform='rotate(-78 32 162)'/><ellipse cx='42' cy='192' rx='13' ry='3.8' transform='rotate(-82 42 192)'/></g></svg>");
}
.home-preview .bmb-stage-frame > .bmb-trust::before{
  left:calc(50vw - 680px);
  transform:translateY(-50%);
}
.home-preview .bmb-stage-frame > .bmb-trust::after{
  right:calc(50vw - 680px);
  transform:translateY(-50%) scaleX(-1);
}
@media (max-width:1320px){
.home-preview .bmb-stage-frame > .bmb-trust::before,
  .home-preview .bmb-stage-frame > .bmb-trust::after{display:none}
}
.home-preview .bmb-stage-frame > .bmb-hero .bmb-hero-display{
  font-size:clamp(2.9rem, 6.4vw, 5.7rem);
  font-weight:700;
  line-height:1;
  letter-spacing:-.035em;
  color:var(--ink);
  text-shadow:0 2px 28px rgba(40,20,15,0.5), 0 1px 6px rgba(40,20,15,0.35);
}
.home-preview .bmb-stage-frame > .bmb-hero .bmb-hero-display em{
  color:#bcdff0;
  font-weight:700;
  text-shadow:
    0 1px 8px rgba(40, 20, 15, 0.35),
    0 2px 18px rgba(40, 20, 15, 0.45);
}
.home-preview .bmb-stage-frame > .bmb-hero .bmb-hero-h1.bmb-hero-h1{
  font-size:clamp(.82rem, .15vw + .78rem, .95rem);
  color:var(--ink);
  text-shadow:0 1px 6px rgba(40,20,15,0.45);
  letter-spacing:.01em;
}
.home-preview .bmb-stage-frame > .bmb-hero .bmb-hero-h1 em{
  color:#bcdff0;  /* matches the softened slate-blue display accent */
}
.home-preview .bmb-stage-frame > .bmb-hero .bmb-hero-microcopy{
  color:var(--ink);
  text-shadow:0 1px 3px rgba(40,20,15,0.4);
}
.home-preview .bmb-stage-frame > .bmb-hero .bmb-cta.bmb-cta--primary{
  font-size:1.22rem;
  font-weight:600;
  letter-spacing:.02em;
  padding:1.05rem 2.8rem;
  /* In Application CTA: CREAM pill with bmb-Purple text on the purple hero
     (the "Book a call" button from the brand guidelines). */
  background:var(--cream);
  color:var(--brand);
  border:none;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.6),
    0 8px 24px -6px rgba(31, 8, 36, 0.45),
    0 16px 44px -10px rgba(31, 8, 36, 0.4);
  animation:bmbCtaBreathe 3.6s ease-in-out infinite;
}
.home-preview .bmb-stage-frame > .bmb-hero .bmb-cta.bmb-cta--primary:hover{
  transform:translateY(-2px) scale(1.025);
  animation:none;
  background:#8d319b;
  color:var(--cream);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.8),
    0 12px 32px -6px rgba(31, 8, 36, 0.55),
    0 20px 52px -10px rgba(31, 8, 36, 0.45);
}
@keyframes bmbCtaBreathe{0%, 100%{
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.6),
      0 8px 24px -6px rgba(31, 8, 36, 0.45),
      0 16px 44px -10px rgba(31, 8, 36, 0.4);
  }50%{
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.8),
      0 10px 30px -6px rgba(31, 8, 36, 0.6),
      0 18px 50px -10px rgba(31, 8, 36, 0.5);
  }
}
@media (prefers-reduced-motion:reduce){
.home-preview .bmb-stage-frame > .bmb-hero .bmb-cta.bmb-cta--primary{animation:none}
}
.home-preview .bmb-stage-frame > .bmb-hero .bmb-cta.bmb-cta--ghost{
  /* Outline pill — cream text + cream border on the photo, no cream fill.
     Pairs with the cream-pill primary so the two CTAs read as
     "primary action" + "secondary action". */
  color:var(--cream);
  border:1px solid rgba(241, 238, 233, 0.85);
  background:transparent;
  backdrop-filter:blur(8px) saturate(120%);
  -webkit-backdrop-filter:blur(8px) saturate(120%);
}
.home-preview .bmb-stage-frame > .bmb-hero .bmb-cta.bmb-cta--ghost:hover{
  background:rgba(241, 238, 233, 0.14);
  border-color:var(--cream);
  color:var(--cream);
}
.home-preview .bmb-hero-core{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:1.4rem;
  width:100%;
  max-width:var(--max-home);
  text-align:center;
}
.home-preview .bmb-hero-core > *{margin:0}
.home-preview .bmb-stage-frame .bmb-hero-microcopy{margin:0}
.home-preview .bmb-hero::before,
.home-preview .bmb-hero::after{display:none !important}
.home-preview .bmb-trust{
  --tg-gold:#a87bd8;
  --tg-brass:#6588da;
  --tg-glow:rgba(168, 123, 216, 0.22);
}
.home-preview .bmb-trust-eyebrow{
  position:absolute;
  top:calc(50% - 8rem);
  left:50%;
  transform:translateX(-50%);
  font-family:var(--font-display);
  font-weight:600;
  font-size:.82rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  color:var(--tg-gold);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:1.6rem;
  margin:0;
  white-space:nowrap;
}
.home-preview .bmb-trust-grid{
  list-style:none;padding:0;margin:0 auto;
  max-width:1180px;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:3rem 0;
  align-items:start;
}
.home-preview .bmb-trust-stat{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.45rem;
  position:relative;
  padding:1.2rem 2.5rem;
  /* Start state — invisible + nudged down. JS adds .is-revealed. */
  opacity:0;
  transform:translateY(36px);
  transition:opacity 1.1s cubic-bezier(.2,.7,.2,1), transform 1.1s cubic-bezier(.2,.7,.2,1);
}
.home-preview .bmb-trust-stat.is-revealed{
  opacity:1;
  transform:translateY(0);
}
.home-preview .bmb-trust-stat:nth-child(1){transition-delay:0ms}
.home-preview .bmb-trust-stat:nth-child(2){transition-delay:220ms}
.home-preview .bmb-trust-stat:nth-child(3){transition-delay:440ms}
.home-preview .bmb-trust-stat::before{
  content:"";
  position:absolute;
  inset:-10% 5% 30% 5%;
  background:radial-gradient(ellipse at center 40%, var(--tg-glow), transparent 65%);
  z-index:-1;
  pointer-events:none;
  filter:blur(8px);
}
@media (min-width:721px){
.home-preview .bmb-trust-stat:not(:last-child)::after{
    content:"";
    position:absolute;
    right:0;top:18%;bottom:18%;
    width:1px;
    background:linear-gradient(180deg, transparent, var(--tg-gold) 30%, var(--tg-gold) 70%, transparent);
    opacity:.45;
  }
}
.home-preview .bmb-trust-num{
  font-family:var(--font-display);
  font-size:clamp(4.4rem, 8vw, 6.8rem);
  font-weight:500;
  line-height:1;
  letter-spacing:-.025em;
  display:inline-flex;
  align-items:baseline;
  gap:.1em;
  background:linear-gradient(180deg,
    #d8eef9 5%,        /* light champagne shine — the "white" top */
    #8fd4ee 30%,       /* warm pale gold */
    #a87bd8 55%,       /* champagne gold body */
    #6588da 80%,       /* deeper brass */
    #3f1546 100%       /* shadowed base */
  );
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  filter:drop-shadow(0 6px 20px rgba(63, 21, 70, 0.25));
}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){
.home-preview .bmb-trust-num{color:var(--ink);background:none}
}
.home-preview .bmb-trust-plus{
  font-size:.55em;
  font-weight:400;
  margin-left:-.05em;
  color:var(--tg-gold);
  -webkit-text-fill-color:var(--tg-gold);
}
.home-preview .bmb-trust-unit{
  font-family:var(--sans);
  font-size:.95rem;
  font-weight:700;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--tg-gold);
  margin-top:1.1rem;
}
.home-preview .bmb-trust-label{
  font-family:var(--font-display);
  font-style:italic;
  font-size:1.1rem;
  color:rgba(255, 248, 235, 0.78);
  line-height:1.5;
  margin-top:.85rem;
  max-width:22ch;
}
@media (max-width:720px){
.home-preview .bmb-stage .bmb-hero{
    position:relative;
    min-height:auto;
  }
.home-preview .bmb-stage .bmb-trust{
    padding:3.5rem 1rem 3rem;
    box-shadow:0 -16px 32px -8px rgba(141, 49, 155, 0.08);
  }
.home-preview .bmb-trust-grid{grid-template-columns:1fr;gap:2.2rem}
.home-preview .bmb-trust-eyebrow{
    position:static;
    transform:none;
    top:auto;left:auto;
    margin:0 auto 2rem;
    gap:.8rem;
  }
.home-preview .bmb-trust-eyebrow::before,
  .home-preview .bmb-trust-eyebrow::after{width:32px}
.home-preview .bmb-trust-stat{padding:0}
}
@media (prefers-reduced-motion:reduce){
.home-preview .bmb-trust-stat{
    opacity:1;
    transform:none;
    transition:none;
  }
}
.home-preview .bmb-section-head h2 em,
.home-preview .bmb-why-text h2 em,
.home-preview .bmb-testimonials-head-text h2 em,
.home-preview .bmb-final-cta h2 em{
  font-style:italic;color:var(--spectrum-1);font-weight:500;
}
.home-preview .bmb-section-head h2{
  letter-spacing:0;line-height:1.5;
}
.home-preview .bmb-review-card{
  box-shadow:var(--shadow-sm);
  position:relative;overflow:hidden;
}
.home-preview .bmb-review-card::before{
  content:"\201C";              /* curly opening quote */
  position:absolute;
  top:-.6rem;right:.6rem;
  font-family:var(--serif);
  font-size:6rem;
  line-height:1;
  color:var(--brand-100);
  opacity:.8;
  pointer-events:none;
  z-index:0;
}
.home-preview .bmb-review-card > *{position:relative;z-index:1}
.home-preview .bmb-blog-card{
  box-shadow:var(--shadow-sm);
}
.home-preview .bmb-blog-card:hover{
  box-shadow:0 10px 24px rgba(80, 55, 95,.10);
}
.home-preview .bmb-location-card{
  box-shadow:var(--shadow-sm);
  transition:box-shadow .3s ease, transform .3s ease;
}
.home-preview .bmb-location-card:hover{
  box-shadow:var(--shadow);
  transform:translateY(-3px);
}
.home-preview .bmb-location-card .bmb-loc-social{
  /* Icon-only buttons — the FB / IG marks are self-explanatory, so the
     text labels were dropped (aria-label keeps them accessible). */
  margin:.1rem 0 0;
  display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;
}
.home-preview .bmb-location-card .bmb-loc-social-link{
  display:inline-flex;align-items:center;justify-content:center;gap:0;
  width:42px;height:42px;padding:0;border-radius:999px;
  color:var(--ink);text-decoration:none;
  border:1px solid rgba(35, 37, 39, 0.18);background:transparent;
  transition:color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease;
}
.home-preview .bmb-location-card .bmb-loc-social-link:hover{
  color:var(--brand);border-color:var(--brand);background:var(--cream);
  transform:translateY(-1px);text-decoration:none;
}
.home-preview .bmb-location-card .bmb-loc-social-link svg{
  width:18px;height:18px;flex-shrink:0;
}
.home-preview .bmb-location-card .bmb-loc-social-link--ig:hover{
  color:#c13584;border-color:#c13584;background:var(--cream);
}
.home-preview .bmb-services,
.home-preview .bmb-journey,
.home-preview .bmb-why,
.home-preview .bmb-testimonials,
.home-preview .bmb-blog-teaser,
.home-preview .bmb-locations{
  padding-top:2.75rem;padding-bottom:2.75rem;
}
.home-preview .bmb-hero{padding-bottom:2rem}
.home-preview .bmb-final-cta{padding-top:3.4rem;padding-bottom:3.4rem}
@media (max-width:720px){
.home-preview .bmb-services,
  .home-preview .bmb-journey,
  .home-preview .bmb-why,
  .home-preview .bmb-testimonials,
  .home-preview .bmb-blog-teaser,
  .home-preview .bmb-locations{padding-top:2rem;padding-bottom:2rem}
.home-preview .bmb-final-cta{padding-top:2.4rem;padding-bottom:2.4rem}
}
.home-preview .bmb-hero-ctas{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;margin-bottom:2.2rem}
.home-preview .bmb-hero-microcopy{
  color:var(--muted);font-size:.82rem;
}
.home-preview .bmb-stages{
  position:relative;
  z-index:5;
  margin-top:calc(-1 * 35svh);
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  max-width:none;
  background:
    linear-gradient(180deg,
      rgba(253, 250, 248, 0) 0%,
      rgba(253, 250, 248, 0.55) 120px,
      var(--bg) 280px,
      var(--bg) 100%
    );
  padding:calc(280px + 3rem) 2rem 5rem;
}
@media (max-width:720px){
.home-preview .bmb-stages{
    margin-top:0;
    padding-top:4rem;
  }
}
.home-preview .bmb-stages > .bmb-section-head{
  max-width:var(--max-home);
  margin-left:auto;
  margin-right:auto;
  margin-bottom:3.5rem;
}
@property --bmb-border-angle{
  syntax:"<angle>";
  initial-value:0deg;
  inherits:false;
}
@keyframes bmbStageBorderRotate{to{ --bmb-border-angle: 360deg; }
}
@keyframes bmbStagePanelIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}
}
@media (max-width:640px){
.home-preview .bmb-stages{padding:4rem 1rem 4rem}
}
.home-preview .bmb-hero > *,
.home-preview .bmb-section-head,
.home-preview .bmb-award,
.home-preview .bmb-awards-partners,
.home-preview .bmb-service-card,
.home-preview .bmb-why-text,
.home-preview .bmb-why-visual,
.home-preview .bmb-testimonials-head,
.home-preview .bmb-review-summary,
.home-preview .bmb-review-card,
.home-preview .bmb-blog-card,
.home-preview .bmb-final-cta > *,
.home-preview .bmb-location-card{
  opacity:0;transform:translateY(26px);
  transition:opacity .7s cubic-bezier(.22,1,.36,1), transform .75s cubic-bezier(.22,1,.36,1);
  will-change:opacity, transform;
}
.home-preview .bmb-hero > *.is-revealed,
.home-preview .bmb-section-head.is-revealed,
.home-preview .bmb-award.is-revealed,
.home-preview .bmb-awards-partners.is-revealed,
.home-preview .bmb-service-card.is-revealed,
.home-preview .bmb-why-text.is-revealed,
.home-preview .bmb-why-visual.is-revealed,
.home-preview .bmb-testimonials-head.is-revealed,
.home-preview .bmb-review-summary.is-revealed,
.home-preview .bmb-review-card.is-revealed,
.home-preview .bmb-blog-card.is-revealed,
.home-preview .bmb-final-cta > *.is-revealed,
.home-preview .bmb-location-card.is-revealed{
  opacity:1;transform:none;
}
.home-preview .bmb-blog-grid .bmb-blog-card:nth-child(1){transition-delay:0ms}
.home-preview .bmb-blog-grid .bmb-blog-card:nth-child(2){transition-delay:130ms}
.home-preview .bmb-blog-grid .bmb-blog-card:nth-child(3){transition-delay:260ms}
.home-preview .bmb-blog-grid .bmb-blog-card:nth-child(4){transition-delay:390ms}
.home-preview .bmb-locations .bmb-location-card:nth-child(1){transition-delay:0ms}
.home-preview .bmb-locations .bmb-location-card:nth-child(2){transition-delay:150ms}
.home-preview .bmb-hero > *:nth-child(1){transition-delay:0ms}
.home-preview .bmb-hero > *:nth-child(2){transition-delay:120ms}
.home-preview .bmb-hero > *:nth-child(3){transition-delay:240ms}
.home-preview .bmb-hero > *:nth-child(4){transition-delay:360ms}
.home-preview .bmb-hero > *:nth-child(5){transition-delay:480ms}
.home-preview .bmb-final-cta > *:nth-child(1){transition-delay:0ms}
.home-preview .bmb-final-cta > *:nth-child(2){transition-delay:120ms}
.home-preview .bmb-final-cta > *:nth-child(3){transition-delay:240ms}
.home-preview .bmb-final-cta > *:nth-child(4){transition-delay:360ms}
@media (prefers-reduced-motion:reduce){
.home-preview .bmb-hero > *,
  .home-preview .bmb-section-head,
  .home-preview .bmb-award,
  .home-preview .bmb-awards-partners,
  .home-preview .bmb-service-card,
  .home-preview .bmb-why-text,
  .home-preview .bmb-why-visual,
  .home-preview .bmb-testimonials-head,
  .home-preview .bmb-review-summary,
  .home-preview .bmb-review-card,
  .home-preview .bmb-blog-card,
  .home-preview .bmb-final-cta > *,
  .home-preview .bmb-location-card{
    opacity:1;transform:none;transition:none;
  }
}
html:not(.js) .home-preview :is(.bmb-hero > *,.bmb-section-head,.bmb-award,.bmb-awards-partners,.bmb-service-card,.bmb-why-text,.bmb-why-visual,.bmb-testimonials-head,.bmb-review-summary,.bmb-review-card,.bmb-blog-card,.bmb-final-cta > *,.bmb-location-card),
html:not(.js) .home-preview .bmb-timeline > li{opacity:1 !important;transform:none !important}
@keyframes bmbWhyAmbientA{0%, 100%{ transform: translate(0, 0) scale(1); }50%{ transform: translate(40px, 30px) scale(1.04); }
}
@keyframes bmbWhyAmbientB{0%, 100%{ transform: translate(0, 0) scale(1); }50%{ transform: translate(-50px, -20px) scale(1.06); }
}
.home-preview .bmb-testimonials{
  padding:5rem 2rem;background:transparent;
}
.home-preview .bmb-testimonials > *{max-width:var(--max-home);margin-left:auto;margin-right:auto}
@media (min-width: 961px){
.home-preview .bmb-testimonials{
    width:100vw;
    max-width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
  }
}
.home-preview .bmb-testimonials-head{
  display:flex;flex-direction:column;align-items:center;text-align:center;
  gap:1rem;margin:0 auto 2.4rem;max-width:70ch;
}
.home-preview .bmb-testimonials-head-text{max-width:60ch;margin:0 auto}
.home-preview .bmb-testimonials-head-text .bmb-eyebrow{
  justify-content:center;
  margin-bottom:1rem;
  font-family:var(--font-display);
  /* Match the standard section-opener size (Choose your path / Why BMB /
     Our locations); was clamp(1.4rem,2.2vw,1.95rem) = the odd one out. */
  font-size:clamp(1.9rem, 3.2vw, 2.7rem);
  font-weight:600;
  letter-spacing:.22em;
  /* Cream on purple body — was dark purple = invisible. */
  color:var(--cream);
  gap:32px;
}
.home-preview .bmb-testimonials-head-text .bmb-eyebrow::before{width:60px}
.home-preview .bmb-testimonials-head-text h2{
  font-size:clamp(1rem, 1.3vw, 1.22rem);
  font-weight:400;
  color:var(--muted);
  margin:0 0 1rem;
  letter-spacing:0;
  line-height:1.5;
}
.home-preview .bmb-testimonials-shell{
  /* Widen past the page's 1180px column so the three review cards have
     room to breathe. The left summary card was removed 2026-07-30 (it
     read big + chunky); the rating now sits inline under the heading. */
  max-width:min(1500px, 95vw);margin-left:auto;margin-right:auto;
}
.home-preview .bmb-review-track{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;
  overflow:visible;
}
.home-preview .bmb-review-card{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:1.7rem 1.8rem;display:flex;flex-direction:column;gap:.8rem;margin:0;
}
.home-preview .bmb-review-card-head{display:flex;align-items:center;gap:.7rem}
.home-preview .bmb-review-avatar{
  width:38px;height:38px;border-radius:50%;
  background:var(--avatar-bg, var(--brand-100));color:#fff;
  display:grid;place-items:center;font-family:var(--serif);font-weight:600;font-size:1rem;
  flex-shrink:0;
}
.home-preview .bmb-review-name{font-family:var(--sans);font-size:.86rem;font-weight:600;color:var(--ink);line-height:1.2;margin:0}
.home-preview .bmb-review-meta{font-family:var(--sans);font-size:.72rem;color:var(--muted);margin:0}
.home-preview .bmb-review-stars{color:#5bc2e7;font-size:.85rem;letter-spacing:.1em;margin:0}
.home-preview .bmb-review-quote{
  font-family:var(--sans);font-size:.94rem;color:var(--ink-2);line-height:1.65;margin:0;
  font-style:normal;
}
.home-preview .bmb-blog-teaser{
  padding:5rem 2rem;max-width:var(--max-home);margin:0 auto;
}
.home-preview .bmb-blog-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;
}
.home-preview .bmb-blog-card{
  display:flex;flex-direction:column;text-align:left;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);
  overflow:hidden;transition:transform .25s ease, box-shadow .25s ease;
  text-decoration:none;color:inherit;
}
.home-preview .bmb-blog-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}
.home-preview .bmb-blog-img{
  aspect-ratio:16/10;background:var(--brand-100) center/cover no-repeat;
  display:block;
}
.home-preview .bmb-blog-card > h3{
  font-size:1.1rem;line-height:1.3;margin:.5rem 0 .55rem;padding:0 1.2rem;
}
.home-preview .bmb-blog-card > p{
  font-family:var(--sans);font-size:.86rem;color:var(--ink-2);line-height:1.55;
  padding:0 1.2rem 1.4rem;margin:0;
}
.home-preview .bmb-blog-card--more{
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
  background:linear-gradient(135deg, var(--brand-100), var(--brand-50));
  padding:1.4rem;border-color:var(--brand-200);
}
.home-preview .bmb-blog-card--more > h3{padding:0;margin:0 0 .4rem;color:var(--brand-dk)}
.home-preview .bmb-blog-card--more > p{padding:0;margin:0}
.home-preview .bmb-final-cta{
  text-align:center;
  padding:5rem 2rem;
  position:relative;
  /* No coloured wash. The section reads as a banner via the H2's
     italic-pink accent + the centred CTAs alone — letting the body
     gradient flow through behind the words avoids a saturated halo
     competing with the type. */
  background:transparent;
  border:0;
}
.home-preview .bmb-final-cta > *{max-width:62ch;margin-left:auto;margin-right:auto}
.home-preview .bmb-final-cta h2{
  font-size:clamp(2rem,4vw,3rem);margin:0 auto 1rem;max-width:20ch;
}
.home-preview .bmb-final-cta .bmb-hero-ctas{
  display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;
}
.home-preview .bmb-locations{
  padding:5rem 2rem;max-width:var(--max-home);margin:0 auto;
}
.home-preview .bmb-locations > .bmb-section-head{
  margin-bottom:3rem;
}
.home-preview .bmb-locations-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem;
}
.home-preview .bmb-location-card{
  background:#fff;border:1px solid var(--line);border-radius:16px;
  padding:2.4rem 2.4rem 2rem;
  display:flex;flex-direction:column;gap:1.2rem;
  box-shadow:0 1px 3px rgba(80, 55, 95,.05), 0 6px 18px rgba(80, 55, 95,.06);
}
.home-preview .bmb-location-card h3{
  font-family:var(--serif);font-weight:500;font-size:1.55rem;
  letter-spacing:-.005em;color:var(--ink);margin:0;
}
.home-preview .bmb-location-card address{
  font-family:var(--sans);font-style:normal;font-size:.96rem;
  line-height:1.65;color:var(--ink-2);margin:0;
}
.home-preview .bmb-loc-hours{
  font-family:var(--sans);font-size:.92rem;color:var(--ink-2);
  line-height:1.6;margin:0;padding:1rem 0;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.home-preview .bmb-loc-hours strong{
  font-family:var(--sans);font-size:.74rem;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink);
  display:block;margin-bottom:.4rem;
}
.home-preview .bmb-loc-contact{
  font-family:var(--sans);font-size:.96rem;line-height:1.75;color:var(--ink-2);margin:0;
}
.home-preview .bmb-loc-label{
  display:inline-block;min-width:7.5rem;font-weight:400;color:var(--ink-2);
  font-family:var(--font-display);font-size:.94rem;letter-spacing:.005em;
}
.home-preview .bmb-loc-contact a{
  /* Cream card — was var(--cream) = invisible. Blue accent ink reads
     and lines up with the brand link convention. */
  color:var(--accent-ink);text-decoration:underline;text-decoration-thickness:1px;
  text-underline-offset:2px;font-weight:600;
  font-feature-settings:"tnum" 1;  /* tabular numbers — phone digits align */
}
.home-preview .bmb-loc-contact a:hover{color:var(--brand)}
.home-preview .bmb-loc-maplink{
  display:inline-flex;align-items:center;gap:.45rem;align-self:flex-start;
  font-family:var(--font-display);font-size:.92rem;font-weight:700;letter-spacing:.005em;
  color:var(--accent-ink);text-decoration:none;
  background:transparent;
  border:1.5px solid rgba(31,127,160,.35);
  border-radius:999px;
  padding:.62rem 1.2rem;
  transition:background .22s ease, border-color .22s ease, color .22s ease, transform .22s ease;
}
.home-preview .bmb-loc-maplink:hover,
.home-preview .bmb-loc-maplink:focus-visible{
  background:var(--accent-ink);border-color:var(--accent-ink);color:#fff;
  transform:translateY(-1px);
}
@media (max-width:960px){
.home-preview .bmb-service-grid,
  .home-preview .bmb-timeline,
  .home-preview .bmb-blog-grid{grid-template-columns:repeat(2,1fr)}
.home-preview .bmb-testimonials-shell{grid-template-columns:1fr}
.home-preview .bmb-review-track{grid-template-columns:1fr}
}
@media (max-width:720px){
.home-preview .bmb-hero{padding:3rem 1.2rem 2rem}
.home-preview .bmb-services,
  .home-preview .bmb-journey,
  .home-preview .bmb-why,
  .home-preview .bmb-testimonials,
  .home-preview .bmb-blog-teaser,
  .home-preview .bmb-final-cta,
  .home-preview .bmb-locations{padding:3.4rem 1.2rem}
.home-preview .bmb-service-grid,
  .home-preview .bmb-timeline,
  .home-preview .bmb-blog-grid,
  .home-preview .bmb-review-track,
  .home-preview .bmb-locations-grid{grid-template-columns:1fr}
}
@media (max-width:720px){
.home-preview .bmb-locations > .bmb-section-head{margin-bottom:1.6rem}
.home-preview .bmb-locations-grid{gap:1.1rem}
.home-preview .bmb-location-card{padding:1.5rem 1.4rem;gap:.75rem}
.home-preview .bmb-loc-hours{padding:.7rem 0}
.home-preview .bmb-location-card address{line-height:1.5}
.home-preview .bmb-loc-contact{line-height:1.6}
}
.home-preview .bmb-consult{
  max-width:var(--max-home);margin:clamp(1.6rem,3vw,2.4rem) auto 0;
  display:grid;grid-template-columns:1.15fr .85fr;
  background:var(--navy);color:#fdf9ff;border-radius:22px;overflow:hidden;
  box-shadow:0 22px 50px -28px rgba(42,12,48,.5);
  text-decoration:none;
  transition:transform .22s ease, box-shadow .22s ease;
}
@media (max-width:760px){
.home-preview .bmb-consult{grid-template-columns:1fr}
}
.home-preview .bmb-consult-copy{padding:clamp(1.6rem,3.5vw,2.6rem)}
.home-preview .bmb-consult-copy .bmb-eyebrow{color:#e6b8ef}
.home-preview .bmb-consult-copy .bmb-eyebrow::before{background:#e6b8ef}
.home-preview .bmb-consult-copy p{color:#ecd6f2;font-size:1.02rem;margin:.7rem 0 1.2rem;max-width:46ch}
.home-preview .bmb-consult-cta{
  display:inline-flex;align-items:center;gap:.4rem;
  font-family:var(--font-body);font-weight:700;font-size:.95rem;
  padding:.85rem 1.6rem;border-radius:999px;
  background:var(--cream);color:var(--navy);text-decoration:none;
  transition:transform .22s ease;
}
.home-preview .bmb-consult-cta:hover{transform:translateY(-2px)}
.home-preview .bmb-consult-media{position:relative;min-height:220px}
.home-preview .bmb-consult-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.home-preview .bmb-consult-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(90,31,99,.55),rgba(90,31,99,0) 40%)}
@media (max-width:760px){
.home-preview .bmb-consult-media{min-height:200px}
}
.home-preview .bmb-path,
.home-preview .bmb-consult{
  opacity:0;
  transform:translateY(26px);
  transition:opacity .7s cubic-bezier(.22,1,.36,1),
             transform .75s cubic-bezier(.22,1,.36,1),
             box-shadow .22s ease;
  will-change:opacity, transform;
}
.home-preview .bmb-consult{ transition-delay:.07s; }
.home-preview .bmb-path.is-revealed,
.home-preview .bmb-consult.is-revealed{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){
.home-preview .bmb-path,
  .home-preview .bmb-consult{ opacity:1; transform:none; transition:none; }
}
html{ scroll-behavior:smooth; }
#choose-your-path{ scroll-margin-top:5rem; }
@media (prefers-reduced-motion:reduce){
html{ scroll-behavior:auto; }
}
.home-preview .bmb-stage--calm{ height:auto; }
.home-preview .bmb-stage--calm .bmb-stage-frame{
  position:relative;
  height:auto;
  min-height:100svh;
  display:flex;
  flex-direction:column;
}
.home-preview .bmb-stage--calm .bmb-hero-bgimg,
.home-preview .bmb-stage--calm .bmb-hero-scrim,
.home-preview .bmb-stage--calm .bmb-hero-sheen{
  position:absolute; inset:0; max-width:none; margin:0; pointer-events:none;
}
.home-preview .bmb-stage--calm .bmb-hero-bgimg{ z-index:0; overflow:hidden; }
.home-preview .bmb-stage--calm .bmb-hero-bgimg::before{
  content:"";
  position:absolute; inset:0;
  background:url('/img/hero-bg-2.webp') center/cover no-repeat;
  transform:scale(1.07);
  will-change:transform;
  animation:bmbBreathe 28s ease-in-out infinite alternate;
}
@keyframes bmbBreathe{
  from{ transform:scale(1.07) translateY(0); }
  to  { transform:scale(1.13) translateY(-1.1%); }
}
.home-preview .bmb-stage--calm .bmb-hero-scrim{
  z-index:1;
  background:linear-gradient(180deg,
    rgba(20, 12, 25, 0.24) 0%,
    rgba(20, 12, 25, 0.26) 42%,
    rgba(17, 10, 21, 0.44) 78%,
    rgba(14, 8, 18, 0.62) 100%);
}
.home-preview .bmb-stage--calm .bmb-hero-sheen{
  z-index:1;
  mix-blend-mode:screen;
  background:linear-gradient(100deg,
    rgba(255, 244, 235, 0) 42%,
    rgba(255, 244, 235, 0.15) 50%,
    rgba(255, 244, 235, 0) 58%);
  background-size:240% 100%;
  background-position:215% 0;
  animation:bmbSheen 14s ease-in-out 2.2s infinite;
}
@keyframes bmbSheen{
  0%  { background-position:215% 0; }
  46% { background-position:-70% 0; }
  100%{ background-position:-70% 0; }
}
.home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-hero{
  position:relative; inset:auto;
  width:100%; height:auto; min-height:0;
  flex:1 1 auto;
  background:none;
  z-index:2;
}
.home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-hero > .bmb-hero-core{
  transform:none !important;   /* retire the cross-fade translateY nudge */
  position:relative; z-index:2;
}
html.js .home-preview .bmb-stage--calm .bmb-hero-display .bmb-hd-w{
  display:inline-block;
  opacity:0;
  transform:translateY(.55em);
  animation:bmbWordRise .95s cubic-bezier(.16,1,.3,1) forwards;
}
html.js .home-preview .bmb-stage--calm .bmb-hero-display .bmb-hd-w:nth-child(1){ animation-delay:.15s; }
html.js .home-preview .bmb-stage--calm .bmb-hero-display .bmb-hd-w:nth-child(2){ animation-delay:.32s; }
html.js .home-preview .bmb-stage--calm .bmb-hero-display .bmb-hd-w:nth-child(4){ animation-delay:.50s; }
html.js .home-preview .bmb-stage--calm .bmb-hero-display .bmb-hd-w:nth-child(5){ animation-delay:.62s; }
@keyframes bmbWordRise{ to{ opacity:1; transform:translateY(0); } }
html.js .home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-hero .bmb-hero-core > .bmb-hero-display{
  animation-name:none; opacity:1; transform:none;
}
.home-preview .bmb-stage--calm .bmb-hd-em{ position:relative; }
.home-preview .bmb-stage--calm .bmb-hd-underline{
  position:absolute; left:1%; bottom:-.12em;
  width:98%; height:.17em;
  color:#bcdff0;
  overflow:visible;
}
.home-preview .bmb-stage--calm .bmb-hd-underline path{
  stroke-dasharray:236;
  stroke-dashoffset:236;
}
html.js .home-preview .bmb-stage--calm .bmb-hd-underline path{
  animation:bmbUnderlineDraw .85s cubic-bezier(.5,0,.2,1) 1.3s forwards;
}
@keyframes bmbUnderlineDraw{ to{ stroke-dashoffset:0; } }
.home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-trust{
  position:relative; inset:auto;
  width:100%; height:auto; min-height:0;
  z-index:2;
  opacity:1;
  pointer-events:auto;
  justify-content:flex-start;
  padding:1.3rem 2rem 1.8rem;
  border-top:1px solid rgba(241, 238, 233, 0.14);
}
.home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-trust::before,
.home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-trust::after{ display:none; }
.home-preview .bmb-stage--calm .bmb-trust-eyebrow{
  position:static; transform:none; top:auto; left:auto;
  margin:0 auto .9rem;
  font-size:.7rem;
  letter-spacing:.32em;
  gap:1rem;
  color:rgba(241, 238, 233, 0.72);
}
.home-preview .bmb-stage--calm .bmb-trust-eyebrow::before,
.home-preview .bmb-stage--calm .bmb-trust-eyebrow::after{
  width:44px;
  background:linear-gradient(90deg, transparent, rgba(241, 238, 233, 0.55), transparent);
}
.home-preview .bmb-stage--calm .bmb-trust-grid{
  grid-template-columns:repeat(3, 1fr);
  gap:0;
  width:100%;
  max-width:1060px;
  align-items:start;
}
.home-preview .bmb-stage--calm .bmb-trust-stat{ padding:.35rem 1.2rem; }
.home-preview .bmb-stage--calm .bmb-trust-stat::before{ display:none; }
.home-preview .bmb-stage--calm .bmb-trust-num{
  font-size:clamp(2rem, 3.6vw, 2.9rem);
  background:none;
  color:var(--cream);
  -webkit-text-fill-color:var(--cream);
  filter:drop-shadow(0 2px 12px rgba(14, 8, 18, 0.55));
}
.home-preview .bmb-stage--calm .bmb-trust-unit{
  font-size:.62rem;
  letter-spacing:.26em;
  margin-top:.35rem;
  color:rgba(241, 238, 233, 0.68);
}
.home-preview .bmb-stage--calm .bmb-trust-label{
  font-size:.82rem;
  margin-top:.3rem;
  color:rgba(241, 238, 233, 0.55);
}
@media (max-width:720px){
.home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-trust{
    padding:.9rem .8rem 1.15rem;
    box-shadow:none;
  }
.home-preview .bmb-stage--calm .bmb-trust-grid{
    grid-template-columns:repeat(3, 1fr);
    gap:0 .3rem;
  }
.home-preview .bmb-stage--calm .bmb-trust-stat{ padding:.15rem .25rem; }
.home-preview .bmb-stage--calm .bmb-trust-num{ font-size:1.4rem; }
.home-preview .bmb-stage--calm .bmb-trust-unit{ font-size:.5rem; letter-spacing:.18em; margin-top:.25rem; }
.home-preview .bmb-stage--calm .bmb-trust-label{ display:none; }
.home-preview .bmb-stage--calm .bmb-trust-eyebrow{ font-size:.58rem; margin-bottom:.55rem; }
.home-preview .bmb-stage--calm .bmb-hero-sheen{ display:none; }
.home-preview .bmb-stage--calm .bmb-hero-bgimg::before{ background-position:75% center; }
}
@media (prefers-reduced-motion:reduce){
.home-preview .bmb-stage--calm .bmb-hero-bgimg::before{ animation:none; transform:scale(1.07); }
.home-preview .bmb-stage--calm .bmb-hero-sheen{ display:none; }
html.js .home-preview .bmb-stage--calm .bmb-hero-display .bmb-hd-w{
    animation:none; opacity:1; transform:none;
  }
.home-preview .bmb-stage--calm .bmb-hd-underline path,
  html.js .home-preview .bmb-stage--calm .bmb-hd-underline path{
    animation:none; stroke-dashoffset:0;
  }
}
@media (max-width:720px){
.home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-hero{
    padding-left:1.1rem;
    padding-right:1.1rem;
  }
.home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-hero .bmb-hero-display{
    font-size:clamp(2.05rem, 10.4vw, 2.9rem);
  }
}
.home-preview .bmb-stage--calm + .bmb-stages{
  margin-top:0;
  padding-top:calc(170px + 2.5rem);
  background:linear-gradient(180deg,
    rgba(251, 248, 244, 0) 0%,
    rgba(251, 248, 244, 0.92) 90px,
    #fbf8f4 170px,
    #fbf8f4 100%);
}
@media (max-width:720px){
.home-preview .bmb-stage--calm + .bmb-stages{
    padding-top:4.5rem;
    background:linear-gradient(180deg,
      rgba(251, 248, 244, 0) 0%,
      rgba(251, 248, 244, 0.92) 42px,
      #fbf8f4 78px,
      #fbf8f4 100%);
  }
}
@media (min-width:721px){
.home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-hero .bmb-hero-display{
    font-size:clamp(2.7rem, 4.9vw, 4.4rem);
  }
}
@media (min-width:721px){
.home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-hero{
    padding-top:calc(var(--header-h, 146px) + clamp(2rem, 9vh, 7rem));
    padding-bottom:1rem;
  }
.home-preview .bmb-stage--calm .bmb-hero-core{
    gap:1.15rem;
  }
}
.home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-hero .bmb-cta.bmb-cta--primary{
  font-size:1.05rem;
  padding:.8rem 2.1rem;
}
.home-preview .bmb-stage--calm .bmb-stage-frame > .bmb-hero .bmb-cta.bmb-cta--ghost{
  font-size:.95rem;
  padding:.75rem 1.6rem;
}
.home-preview .bmb-stage--calm .bmb-hearts{
  position:absolute; inset:0; z-index:1;
  overflow:hidden; pointer-events:none;
  max-width:none; margin:0;
}
.home-preview .bmb-stage--calm .bmb-heart{
  position:absolute;
  width:17px; height:17px;
  margin:-9px 0 0 -9px;              /* centre on the spawn point */
  background:center/contain no-repeat;
  opacity:0;
  animation:bmbHeartFloat 1.15s cubic-bezier(.2,.6,.2,1) forwards;
  will-change:transform, opacity;
}
@keyframes bmbHeartFloat{
  0%  { opacity:0; transform:translate(0, 0) scale(calc(var(--hs, 1) * .35)) rotate(0deg); }
  16% { opacity:.85; }
  100%{ opacity:0; transform:translate(var(--hx, 0px), -70px) scale(var(--hs, 1)) rotate(var(--hr, 0deg)); }
}
@media (prefers-reduced-motion:reduce){
.home-preview .bmb-stage--calm .bmb-hearts{ display:none; }
}
.home-preview .bmb-stage--calm .bmb-hero-bgimg{
  transform:scale(1.07);
  animation:bmbBreathe 28s ease-in-out infinite alternate;
  will-change:transform;
}
.home-preview .bmb-stage--calm .bmb-hero-bgimg::before{
  animation:none;
  transform:none;
  will-change:auto;
}
.home-preview .bmb-stage--calm .bmb-hero-bgimg.is-gl::before{ visibility:hidden; }
.home-preview .bmb-stage--calm .bmb-hero-gl{
  position:absolute; inset:0;
  width:100%; height:100%;
  display:block;
}
@media (prefers-reduced-motion:reduce){
.home-preview .bmb-stage--calm .bmb-hero-bgimg{ animation:none; transform:scale(1.07); }
}
@keyframes bmbWhyMarquee{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}
@keyframes bmb-review-deal{
  from{
    opacity:0;
    translate:var(--dx, 0px) var(--dy, 0px);
    rotate:var(--deck-rot, 0deg);
    scale:.66;
  }
}
@keyframes bmb-review-drift{
  0%,100%{ translate:0 0; }
  30%    { translate:0 calc(var(--amp, 10px) * -1); }
  70%    { translate:0 var(--amp, 10px); }
}
@keyframes bmb-review-drift-alt{
  0%,100%{ translate:0 0; }
  30%    { translate:0 var(--amp, 10px); }
  70%    { translate:0 calc(var(--amp, 10px) * -1); }
}
.home-preview .bmb-review-track .bmb-review-card{ pointer-events:none; }
.home-preview .bmb-review-track.is-settled .bmb-review-card{ pointer-events:auto; }
.home-preview .bmb-review-track .bmb-review-card{
  --stag:78ms;
  --in-dur:1.02s;
  --in-end:calc(var(--i, 0) * var(--stag) + var(--in-dur));
  --drift:bmb-review-drift;
  --dur:7s;
  --amp:10px;
  z-index:1;
  transition:scale .42s cubic-bezier(.22,1,.36,1), box-shadow .42s ease,
             opacity .34s ease, filter .34s ease;
  transition-delay:0s;
}
.home-preview .bmb-review-track .bmb-review-card:nth-child(1){ --i:1; --deck-rot:-7deg; --dur:4.6s;  --amp:12px; --drift:bmb-review-drift; }
.home-preview .bmb-review-track .bmb-review-card:nth-child(2){ --i:3; --deck-rot:5deg;  --dur:8.1s;  --amp:7px;  --drift:bmb-review-drift-alt; }
.home-preview .bmb-review-track .bmb-review-card:nth-child(3){ --i:0; --deck-rot:-3deg; --dur:6.2s;  --amp:14px; --drift:bmb-review-drift-alt; }
.home-preview .bmb-review-track .bmb-review-card:nth-child(4){ --i:2; --deck-rot:8deg;  --dur:10.4s; --amp:5px;  --drift:bmb-review-drift; }
.home-preview .bmb-review-track .bmb-review-card:nth-child(5){ --i:1; --deck-rot:-5deg; --dur:5.4s;  --amp:10px; --drift:bmb-review-drift; }
.home-preview .bmb-review-track .bmb-review-card:nth-child(6){ --i:4; --deck-rot:6deg;  --dur:7.3s;  --amp:8px;  --drift:bmb-review-drift-alt; }
.home-preview .bmb-review-track .bmb-review-card.is-revealed{
  opacity:1; translate:0 0; rotate:0deg; scale:1;
  animation:
    bmb-review-deal var(--in-dur) cubic-bezier(.16,1,.3,1) calc(var(--i, 0) * var(--stag)) backwards,
    var(--drift) var(--dur) ease-in-out var(--in-end) infinite;
}
.home-preview .bmb-review-track .bmb-review-card.is-revealed{ z-index:calc(6 - var(--i, 0)); }
@media (hover:hover) and (pointer:fine){
.home-preview .bmb-review-track.is-settled .bmb-review-card:hover{
    animation-play-state:paused;
    opacity:1;
    filter:none;
    /* !important is load-bearing. Hovering a card while its entrance is still
       running means that animation OWNS `scale`, and no selector weight beats
       a running animation — the zoom was ignored until the entrance finished
       and then snapped. Important author declarations do outrank animations,
       and transitions outrank those in turn, so it still eases. */
    scale:1.5 !important;
    z-index:30;
    box-shadow:0 40px 90px -30px rgba(60,26,66,.55);
  }
.home-preview .bmb-review-track.is-settled .bmb-review-card:hover::before{ scale:.62; opacity:.4; }
.home-preview .bmb-review-track .bmb-review-card::before{
    transition:scale .42s cubic-bezier(.22,1,.36,1), opacity .42s ease;
  }
}
@media (min-width:1100px){
.home-preview .bmb-review-track .bmb-review-card:nth-child(-n+2){ transform-origin:left center; }
.home-preview .bmb-review-track .bmb-review-card:nth-child(n+5){ transform-origin:right center; }
.home-preview .bmb-review-track .bmb-review-card:nth-child(3),
  .home-preview .bmb-review-track .bmb-review-card:nth-child(4){ transform-origin:center; }
}
@media (prefers-reduced-motion:reduce){
.home-preview .bmb-review-track .bmb-review-card{ pointer-events:auto; }
.home-preview .bmb-review-track .bmb-review-card,
  .home-preview .bmb-review-track .bmb-review-card.is-revealed{
    animation:none !important;
    translate:none !important; rotate:none !important; scale:none !important;
  }
.home-preview .bmb-review-track .bmb-review-card.is-revealed{ opacity:1; }
.home-preview .bmb-review-track .bmb-review-card:hover{ scale:none !important; }
}
.home-preview .bmb-recog{
  width:min(1120px, calc(100% - 4rem));
  margin:0 auto clamp(2.25rem, 3.5vw, 3rem);
  padding-top:clamp(2.25rem, 6vw, 5rem);   /* the top spacing the old heading had */
  display:grid;
  gap:1rem;
}
.home-preview .bmb-stages > .bmb-recog + .bmb-section-head{
  padding:0;
  margin:0 auto clamp(1.75rem, 3vw, 2.5rem);
}
.home-preview .bmb-recog-panel{
  padding:1.5rem clamp(1rem, 3vw, 2.5rem) 1.85rem;
  border:1px solid rgba(141, 49, 155, .10);
  border-radius:22px;
  background:var(--brand-50, #f7eef9);
  text-align:center;
}
.home-preview .bmb-recog-title{
  margin:0 0 1.3rem;
  font-family:var(--sans);
  font-size:.74rem;
  font-weight:700;
  line-height:1.3;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#8d319b;
}
.home-preview .bmb-recog-logos{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  justify-content:space-evenly;
  align-items:center;
  gap:1.25rem 2rem;
}
.home-preview .bmb-recog-logos li{
  min-width:0;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.home-preview .bmb-recog-logos img{
  width:auto;
  max-width:100%;
  height:calc(var(--h) * var(--recog-s, 1) * 1px);
  object-fit:contain;
}
@media (max-width:1024px){
.home-preview .bmb-recog-logos{ --recog-s:.86; column-gap:1.4rem; }
}
@media (max-width:860px){
.home-preview .bmb-recog-logos{ --recog-s:.8; }
.home-preview .bmb-recog-logos:not(.bmb-recog-logos--awards){
    display:grid;
    grid-template-columns:repeat(6, minmax(0, 1fr));
    justify-items:center;
    gap:1rem .75rem;
  }
.home-preview .bmb-recog-logos:not(.bmb-recog-logos--awards) li{ grid-column:span 2; }
.home-preview .bmb-recog-logos:not(.bmb-recog-logos--awards) li:first-child{ grid-column:span 4; }
}
@media (max-width:720px){
.home-preview .bmb-recog{ width:auto; margin-bottom:2.5rem; padding-top:0; gap:.75rem; }
.home-preview .bmb-recog-panel{ padding:1.25rem 1rem 1.4rem; border-radius:18px; }
.home-preview .bmb-recog-title{ margin-bottom:1.1rem; font-size:.7rem; letter-spacing:.18em; }
.home-preview .bmb-recog-logos{ --recog-s:.74; justify-content:center; gap:1rem 1.5rem; }
.home-preview .bmb-recog-logos--awards{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    justify-items:center;
  }
}
@supports (animation-timeline: view()){
@media (prefers-reduced-motion:no-preference){
.home-preview .bmb-recog-panel{
      animation:bmb-recog-rise linear both;
      animation-timeline:view();
      animation-range:entry 5% entry 85%;
    }
}
}
@keyframes bmb-recog-rise{
  from{ opacity:0; transform:translateY(22px); }
  to{ opacity:1; transform:none; }
}
.home-preview .bmb-section-head.bmb-circle-head h2{
  /* no eyebrow above it any more, so it carries the section itself */
  margin:0;
  font-size:clamp(1.45rem, 2.3vw, 2.1rem);
  font-weight:500;
  line-height:1.28;
  color:#2a2540;
  text-wrap:balance;
}
.home-preview .bmb-circle{
  --pregnancy:#6b2a77;  --pregnancy-dot:#5a1f63;
  --recovery:#c9a3e0;   --recovery-dot:#a77cc4;
  --motherhood:#e2d2bf; --motherhood-dot:#b8946c;
  --beyond:#b08968;     --beyond-dot:#8e6a4c;
  width:min(1120px, calc(100% - 4rem));
  margin:0 auto clamp(3rem, 5vw, 4.5rem);
  display:grid;
  grid-template-columns:minmax(0, 1.4fr) minmax(0, 1fr);
  gap:1rem;
}
.home-preview .bmb-circle-card{
  display:flex;
  flex-direction:column;
  gap:1.75rem;
  padding:clamp(1.5rem, 3vw, 2.5rem);
  border:1px solid rgba(141, 49, 155, .10);
  border-radius:22px;
  background:#fff;
}
.home-preview .bmb-circle-intro{
  margin:0;
  max-width:52ch;
  font:400 1rem/1.62 var(--sans);
  color:#4a4553;
}
.home-preview .bmb-circle-wheel{
  --ring:clamp(240px, 20vw, 290px);
  display:grid;
  grid-template-columns:minmax(0, 1fr) var(--ring) minmax(0, 1fr);
  grid-template-areas:
    ".    n    ."
    "w    hub  e"
    ".    s    .";
  align-items:center;
  justify-items:center;
  gap:.3rem .6rem;
  margin:auto 0;
}
.home-preview .bmb-circle-hub{
  grid-area:hub;
  position:relative;
  width:var(--ring);
  aspect-ratio:1;
}
.home-preview .bmb-circle-ring{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  overflow:visible;
}
.home-preview .bmb-circle-base{ fill:none; stroke:#f3edf5; stroke-width:7; }
.home-preview .bmb-circle-arc{
  fill:none;
  stroke-width:7;
  stroke-linecap:round;
  stroke-dasharray:205;
  stroke-dashoffset:0;
  transition:stroke-dashoffset .95s cubic-bezier(.65, 0, .35, 1), stroke-width .3s ease, opacity .3s ease;
}
.home-preview .bmb-circle-arc--pregnancy{ stroke:var(--pregnancy); }
.home-preview .bmb-circle-arc--recovery{ stroke:var(--recovery); transition-delay:.22s, 0s, 0s; }
.home-preview .bmb-circle-arc--motherhood{ stroke:var(--motherhood); transition-delay:.44s, 0s, 0s; }
.home-preview .bmb-circle-arc--beyond{ stroke:var(--beyond); transition-delay:.66s, 0s, 0s; }
.home-preview .bmb-circle-dot{
  stroke:#fff;
  stroke-width:3;
  transform-box:fill-box;
  transform-origin:center;
  /* entrance uses `scale`, hover uses `transform`, so the entrance delay
     never lands on the hover */
  transition:scale .5s cubic-bezier(.25, 1, .5, 1) 1s, transform .3s cubic-bezier(.22, 1, .36, 1);
}
.home-preview .bmb-circle-dot--pregnancy{ fill:var(--pregnancy-dot); }
.home-preview .bmb-circle-dot--recovery{ fill:var(--recovery-dot); transition-delay:1.12s, 0s; }
.home-preview .bmb-circle-dot--motherhood{ fill:var(--motherhood-dot); transition-delay:1.24s, 0s; }
.home-preview .bmb-circle-dot--beyond{ fill:var(--beyond-dot); transition-delay:1.36s, 0s; }
html.js .home-preview .bmb-circle:not(.is-drawn) .bmb-circle-arc{ stroke-dashoffset:205; }
html.js .home-preview .bmb-circle:not(.is-drawn) .bmb-circle-dot{ scale:0; }
.home-preview .bmb-circle-core{
  position:absolute;
  inset:12%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  padding:.5rem;
  border-radius:50%;
  text-align:center;
  text-decoration:none;
  transition:background-color .3s ease;
}
.home-preview .bmb-circle-core:hover{ background:#faf5fb; }
.home-preview .bmb-circle-core:focus-visible{ outline:3px solid #ddb5e6; outline-offset:4px; }
.home-preview .bmb-circle-core-title{
  /* sized off the ring so the two short lines always fit inside it */
  font:500 calc(var(--ring) * .06)/1.28 var(--serif);
  color:#2a2540;
  text-wrap:balance;
}
.home-preview .bmb-circle-core-cta{
  max-width:20ch;
  font:600 clamp(12px, calc(var(--ring) * .045), 13.5px)/1.45 var(--sans);
  color:#8d319b;
}
.home-preview .bmb-circle-core-title > span{ display:block; }
.home-preview .bmb-circle-nowrap{ white-space:nowrap; }
.home-preview .bmb-circle-core-cta [aria-hidden]{ display:inline-block; transition:transform .25s ease; }
.home-preview .bmb-circle-core:hover .bmb-circle-core-cta [aria-hidden]{ transform:translateX(3px); }
.home-preview .bmb-circle-stage{
  display:flex;
  flex-direction:column;
  gap:.22rem;
  padding:.55rem .75rem;
  border-radius:14px;
  text-decoration:none;
  transition:background-color .25s ease;
}
.home-preview .bmb-circle-stage--pregnancy{ grid-area:n; align-items:center; text-align:center; }
.home-preview .bmb-circle-stage--recovery{ grid-area:e; justify-self:start; align-items:flex-start; text-align:left; }
.home-preview .bmb-circle-stage--motherhood{ grid-area:s; align-items:center; text-align:center; }
.home-preview .bmb-circle-stage--beyond{ grid-area:w; justify-self:end; align-items:flex-end; text-align:right; }
.home-preview .bmb-circle-stage-label{
  font:700 .7rem/1.2 var(--sans);
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#8d319b;
}
.home-preview .bmb-circle-stage-line{
  font:500 1.04rem/1.3 var(--serif);
  color:#2a2540;
  text-wrap:balance;
  transition:color .25s ease;
}
.home-preview .bmb-circle-stage:hover{ background:#faf5fb; }
.home-preview .bmb-circle-stage:hover .bmb-circle-stage-line{ color:#6e2479; }
.home-preview .bmb-circle-stage:focus-visible{ outline:3px solid #ddb5e6; outline-offset:2px; }
.home-preview .bmb-circle-photo{
  position:relative;
  min-height:100%;
  overflow:hidden;
  border-radius:22px;
  background:#efe6ea;
}
@media (max-width:1024px){
.home-preview .bmb-circle{ grid-template-columns:1fr; }
.home-preview .bmb-circle-wheel{ --ring:clamp(260px, 36vw, 320px); }
.home-preview .bmb-circle-photo{ min-height:0; height:clamp(260px, 44vw, 420px); }
}
@media (max-width:720px){
.home-preview .bmb-circle{ width:auto; }
.home-preview .bmb-circle-card{ padding:1.4rem 1.1rem; gap:1.4rem; border-radius:18px; }
.home-preview .bmb-circle-photo{ border-radius:18px; height:auto; aspect-ratio:4 / 3; }
}
@media (max-width:560px){
.home-preview .bmb-circle-wheel{
    --ring:min(250px, 74vw);
    grid-template-columns:repeat(2, minmax(0, 1fr));
    grid-template-areas:
      "hub hub"
      "n   e"
      "s   w";
    align-items:stretch;
    gap:.6rem;
  }
.home-preview .bmb-circle-hub{ margin-bottom:.9rem; justify-self:center; }
.home-preview .bmb-circle-wheel .bmb-circle-stage{
    justify-self:stretch;
    align-items:flex-start;
    min-height:44px;
    padding:.75rem .8rem;
    border:1px solid #efe5f1;
    background:#fcf9fd;
    text-align:left;
  }
.home-preview .bmb-circle-stage-label::before{
    content:"";
    display:inline-block;
    width:.55rem;
    height:.55rem;
    margin-right:.45rem;
    border-radius:50%;
    vertical-align:.02em;
    background:var(--dot);
  }
.home-preview .bmb-circle-stage--pregnancy{ --dot:var(--pregnancy-dot); }
.home-preview .bmb-circle-stage--recovery{ --dot:var(--recovery-dot); }
.home-preview .bmb-circle-stage--motherhood{ --dot:var(--motherhood-dot); }
.home-preview .bmb-circle-stage--beyond{ --dot:var(--beyond-dot); }
.home-preview .bmb-circle-stage-label{ letter-spacing:.12em; white-space:nowrap; }
.home-preview .bmb-circle-stage-line{ font-size:.98rem; }
}
@media (prefers-reduced-motion:reduce){
.home-preview .bmb-circle-arc,
  .home-preview .bmb-circle-dot,
  .home-preview .bmb-circle-photo-alt,
  .home-preview .bmb-circle-core,
  .home-preview .bmb-circle-stage{ transition:none; }
}
/* from /css/pages/home-concept.css */
body.home-concept{
  --c-paper:#fbf8f4; --c-cream:#f1eee9; --c-card:#ffffff;
  --c-ink:#2a2540; --c-body:#4a4553; --c-muted:#8b7f92;
  --c-plum:#5a1f63; --c-purple:#8d319b; --c-line:#e7ded0;
  /* Paper base so the gaps between sections (their vertical margins) and any
     side gutters read cream instead of the purple <html> background. The
     hero paints its own image/purple on top, so it stays purple. */
  background: var(--c-paper);
}
body.home-concept .bmb-stage{ background: var(--bg); }
body.home-concept .bmb-stages,
body.home-concept .bmb-why,
body.home-concept .bmb-testimonials,
body.home-concept .bmb-blog-teaser,
body.home-concept .bmb-locations{
  background: var(--c-paper);
  --ink: var(--c-ink);
  --ink-2: var(--c-body);
  --muted: var(--c-muted);
  --line: var(--c-line);
  color: var(--c-body);
}
body.home-concept .bmb-stages{
  background: linear-gradient(180deg,
    rgba(251,248,244,0)    0%,
    rgba(251,248,244,0.85) 120px,
    var(--c-paper)         260px,
    var(--c-paper)         100%);
}
body.home-concept :is(.bmb-stages,.bmb-why,.bmb-testimonials,.bmb-blog-teaser,.bmb-locations)
  .bmb-eyebrow{ color: var(--c-purple); }
body.home-concept :is(.bmb-stages,.bmb-why,.bmb-testimonials,.bmb-blog-teaser,.bmb-locations)
  .bmb-eyebrow::before{ background: var(--c-purple); }
body.home-concept :is(.bmb-stages,.bmb-why,.bmb-testimonials,.bmb-blog-teaser,.bmb-locations)
  h2{ color: var(--c-ink); }
body.home-concept :is(.bmb-why,.bmb-testimonials,.bmb-blog-teaser,.bmb-locations) h3,
body.home-concept .bmb-path-body h3{ color: var(--c-plum); }
body.home-concept :is(.bmb-stages,.bmb-why,.bmb-testimonials,.bmb-blog-teaser,.bmb-locations)
  :is(h1,h2,h3) em{ color: var(--c-purple); }
body.home-concept .bmb-review-avatar{ color:#ffffff; }
body.home-concept .bmb-review-summary-stars,
body.home-concept .bmb-review-stars{ color: var(--accent-ink); }
body.home-concept .bmb-consult .bmb-eyebrow{ color:#e6b8ef; }
body.home-concept .bmb-consult .bmb-eyebrow::before{ background:#e6b8ef; }
body.home-concept .bmb-final-cta{ background: var(--c-plum); border-radius: 24px; }
body.home-concept .bmb-final-cta--band::before{ display:none; }
body.home-concept .bmb-final-cta--band{
  border-radius:0;
  width:100vw; max-width:none;
  margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
  margin-bottom:0;
  padding:1.5rem max(1.2rem, calc(50vw - var(--max-home)/2));
  display:flex; align-items:center; justify-content:center;
  flex-wrap:wrap; gap:.9rem 2rem;
  text-align:left;
}
body.home-concept .bmb-final-cta--band h2{
  margin:0; color:#fff;
  font-size:clamp(1.25rem, 2.3vw, 1.75rem); line-height:1.2;
}
body.home-concept .bmb-final-cta--band .bmb-hero-ctas{
  margin:0; display:flex; gap:.7rem; flex-wrap:wrap; justify-content:center;
}
@media (max-width:720px){
body.home-concept .bmb-final-cta--band{
    flex-direction:column; text-align:center; gap:1rem; padding:1.6rem 1.2rem;
  }
}
body.home-concept .home-main{ padding-bottom:0; }
body.home-concept .bmb-testimonials-shell{
  background: #ece3d5;
  border-radius: 22px;
  padding: clamp(1.1rem, 2.6vw, 2rem);
}
body.home-concept .bmb-review-summary,
body.home-concept .bmb-review-card{
  background: #fffdfa;
  border-color: transparent;
  border-radius: 16px;
  box-shadow: 0 12px 30px -20px rgba(42, 12, 48, 0.28);
}
@media (max-width:760px){
body.home-concept .bmb-consult{
    width:100vw; max-width:none;
    margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
    border-radius:0;
    box-shadow:none;
  }
}
@media (min-width:721px){
body.home-concept .bmb-review-track{
    display:block;
    grid-template-columns:none;
    column-count:2;
    column-gap:clamp(.9rem,1.5vw,1.4rem);
  }
body.home-concept .bmb-review-track > .bmb-review-card{
    break-inside:avoid;
    -webkit-column-break-inside:avoid;
    page-break-inside:avoid;
    display:flow-root;                /* contains child margins inside the column */
    width:100%;
    margin:0 0 clamp(.9rem,1.5vw,1.4rem);
  }
}
@media (min-width:1100px){
body.home-concept .bmb-review-track{ column-count:3; }
body.home-concept .bmb-review-track > .bmb-review-card:nth-child(-n+2),
  body.home-concept .bmb-review-track > .bmb-review-card:nth-child(n+5){
    transform:translateY(clamp(2rem,3.6vw,4rem));
  }
body.home-concept .bmb-testimonials-shell{
    padding-bottom:calc(clamp(1.1rem,2.6vw,2rem) + clamp(2rem,3.6vw,4rem));
  }
}
@media (max-width:720px){
body.home-concept .bmb-testimonials-shell{
    background:transparent; border-radius:0; padding:0;
  }
body.home-concept .bmb-review-track{
    display:flex;
    grid-template-columns:none;
    gap:.85rem;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    /* Bleed past the section + shell padding so the gallery runs edge to
       edge (it was boxed into ~292px, leaving cramped 230px cards). */
    width:100vw; max-width:none;
    margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
    /* 7vw side padding + 86vw cards centres the first and last card, and a
       2rem gap pushes the neighbour fully off-screen: one CENTRED review at
       a time, no half-cut card leaning off the edge. */
    padding:.15rem 7vw .5rem;
    gap:2rem;
    /* Each card keeps its own height: with the default stretch, the single
       longest review forced every card to match it, leaving the short ones
       half empty. */
    align-items:flex-start;
    overscroll-behavior-x:contain;
  }
body.home-concept .bmb-review-track::-webkit-scrollbar{ display:none; }
body.home-concept .bmb-review-track > .bmb-review-card{
    flex:0 0 86vw;
    scroll-snap-align:center;
    margin:0;
  }
body.home-concept .bmb-review-nav{
    display:flex; align-items:center; justify-content:center; gap:1rem;
    margin:1.1rem auto 0;
  }
body.home-concept .bmb-review-arrow{
    appearance:none; -webkit-appearance:none; cursor:pointer;
    width:40px; height:40px; flex:none;
    display:grid; place-items:center;
    border-radius:999px;
    border:1.5px solid rgba(90,31,99,.28);
    background:#fff; color:var(--c-plum);
    transition:background .2s ease, border-color .2s ease, opacity .2s ease, transform .2s ease;
  }
body.home-concept .bmb-review-arrow svg{ width:17px; height:17px; display:block; }
body.home-concept .bmb-review-arrow:hover:not(:disabled){
    background:var(--c-plum); border-color:var(--c-plum); color:#fff; transform:translateY(-1px);
  }
body.home-concept .bmb-review-arrow:disabled{ opacity:.3; cursor:default; }
body.home-concept .bmb-review-dots{ display:flex; align-items:center; gap:.45rem; }
body.home-concept .bmb-review-dot{
    appearance:none; -webkit-appearance:none; cursor:pointer; padding:0;
    width:8px; height:8px; border-radius:999px; border:0;
    background:rgba(90,31,99,.24);
    transition:background .25s ease, width .25s ease;
  }
body.home-concept .bmb-review-dot.is-active{ background:var(--c-plum); width:22px; }
}
@media (min-width:721px){
body.home-concept .bmb-review-nav{ display:none; }
}
@media (min-width:761px){
body.home-concept .bmb-stage--calm + .bmb-stages{
    position:relative;
    /* Bottom padding gives the consult CARD room to breathe before the next
       section (it was 0 while the consult was a flush full-bleed banner). */
    padding:0 0 clamp(2.6rem,5vw,4rem);
    margin-bottom:0;
    background:#fbf8f4;
  }
body.home-concept .bmb-stages > .bmb-section-head{
    position:relative; z-index:6;
    margin:0 auto;
    padding:clamp(3rem,6vw,5rem) 1.5rem clamp(1.9rem,3.5vw,2.9rem);
    max-width:none; text-align:center;
  }
body.home-concept .bmb-stages > .bmb-section-head h2{
    margin:0;
  }
body.home-concept .bmb-consult{
    width:auto;
    max-width:min(var(--max-home), calc(100vw - 4rem));
    margin:clamp(2.2rem,4vw,3.4rem) auto 0;
    padding:0;
    border-radius:22px;
    overflow:hidden;
    align-items:stretch;
    background:var(--c-plum); color:#fdf9ff;
    box-shadow:0 26px 60px -32px rgba(42,12,48,.6);
    transform:none;
  }
body.home-concept a.bmb-consult-cta{
    background:var(--cream); color:var(--c-plum);
    box-shadow:0 10px 26px -14px rgba(0,0,0,.7);
  }
body.home-concept a.bmb-consult-cta:hover{
    background:#fff; transform:translateY(-2px);
  }
}
body.home-concept .bmb-blog-teaser{
  background:#efe4f4;
  width:100vw; max-width:none;
  margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
  padding-left:max(2rem, calc(50vw - var(--max-home)/2));
  padding-right:max(2rem, calc(50vw - var(--max-home)/2));
}
@media (max-width:720px){
body.home-concept .bmb-blog-teaser{ padding-left:1.2rem; padding-right:1.2rem; }
}
/* from /css/pages/home-brochure.css */
:root{
  /* softened: the brochure's plum, desaturated so it reads calm rather than loud */
  --b-plum:#553f63; --b-plum-2:#7a6390; --b-violet:#a58bbb;
  --b-lav:#f3edf7; --b-lav-2:#e7ddef; --b-lilac:#d4c5e3; --b-mist:#faf7fc;
  --b-ink:#3f3346; --b-body:#62576a; --b-gold:#b8924f;
  --b-serif:"Playfair Display", Georgia, serif; --b-script:"Great Vibes", cursive;
}
html body{ background:#eee9f8 !important; color:var(--b-body); }
html body .site-header{ background:rgba(255,255,255,.96) !important; box-shadow:0 1px 0 var(--b-lav-2) !important; }
html body .site-header nav a, html body .site-header nav button, html body .site-header nav summary{ color:var(--b-plum) !important; }
html body .site-header .brand-logo-dark, html body .site-header .brand-logo-pill{ display:none !important; }
html body .site-header .brand-logo-light{ display:block !important; opacity:1 !important; }
html body .site-header svg{ color:var(--b-plum) !important; stroke:currentColor; }
html body .site-header .nav-cta-item > a.nav-cta{ background:var(--b-plum) !important; color:#fff !important; border-color:var(--b-plum) !important; }
@media (max-width:768px){
html body.mobile-nav-open .site-header.site-header{ background:#fff !important; border-bottom:1px solid #e7ddef !important; }
html body.mobile-nav-open .site-header .primary-nav{ background:#faf7fc !important; }
html body .site-header .primary-nav .nav-root > li.has-submenu{ border-bottom-color:#e7ddef !important; }
html body .site-header .primary-nav .nav-root > li > a:not(.nav-cta){ color:#553f63 !important; }
html body .site-header .primary-nav .submenu{ background:transparent !important; border-color:transparent !important; box-shadow:none !important; }
html body .site-header .primary-nav .submenu a{ color:#3f3346 !important; background:transparent !important; }
html body .site-header .primary-nav .submenu a:hover, html body .site-header .primary-nav .submenu a:focus-visible{ color:#7a6390 !important; background:transparent !important; }
html body .site-header .primary-nav .nav-search-item .nav-search-btn{ background:#fff !important; border-color:#d4c5e3 !important; color:#62576a !important; }
html body .site-header .primary-nav .nav-search-item .nav-search-label{ color:#62576a !important; }
html body .site-header .primary-nav .nav-root > li.nav-account-item > a.nav-account,
  html body .site-header .primary-nav .nav-root > li.nav-cart-item > a.nav-cart{ background:#f3edf7 !important; border-color:#e7ddef !important; color:#553f63 !important; }
html body .site-header .nav-account .nav-account-face, html body .site-header .nav-cart .nav-cart-face{ border-color:#a58bbb !important; }
html body .site-header .nav-account.is-in .nav-account-face{ background:#553f63 !important; border-color:#553f63 !important; color:#fff !important; }
html body .site-header .primary-nav .nav-root > li.nav-tel-item > a.nav-tel{ color:#62576a !important; }
html body .site-header .primary-nav .nav-tel strong{ color:#553f63 !important; }
html body.mobile-nav-open .site-header button.bmb-nav-toggle > span.bmb-nav-toggle-bar{ background:#553f63 !important; }
}
html body .bmb-hero-gl{ display:none !important; }
html body .bmb-stage--calm .bmb-hero-bgimg{ animation:none !important; transform:none !important; }
html body .bmb-stage--calm .bmb-hero-bgimg::before{ visibility:visible !important;
  background:url('/img/hero-home-2560.webp') 12% center / cover no-repeat !important; transform:none !important; animation:none !important; }
html body .bmb-stage--calm .bmb-hero-scrim{ background:
  linear-gradient(90deg, rgba(250,247,252,.72) 0%, rgba(250,247,252,.45) 30%, rgba(250,247,252,0) 48%),
  linear-gradient(0deg, rgba(239,231,246,.95) 0%, rgba(239,231,246,0) 28%) !important; }
html body .bmb-stage--calm .bmb-hero-sheen, html body .bmb-hearts{ display:none !important; }
html body .bmb-stage--calm .bmb-hero .bmb-hero-core{ text-align:left !important; align-items:flex-start !important; margin:0 !important;
  max-width:640px !important; padding:9rem 0 2rem clamp(2rem,7vw,7rem) !important; }
html body .bmb-hero-display{ color:var(--b-plum) !important; font-family:var(--b-serif) !important; font-weight:700 !important;
  font-size:clamp(3rem,5.4vw,5rem) !important; line-height:1.02 !important; letter-spacing:-.01em !important; text-shadow:none !important; text-align:left !important; }
html body .bmb-hero-display .bmb-hd-w{ opacity:1 !important; transform:none !important; animation:none !important; }
html body .bmb-hero-display em{ font-style:normal !important; color:var(--b-plum-2) !important; }
html body .bmb-hd-underline{ color:var(--b-lilac) !important; }
html body .bmb-hero-h1{ color:var(--b-plum-2) !important; font-family:var(--b-serif) !important; font-weight:500 !important; font-style:italic;
  font-size:clamp(1.15rem,1.6vw,1.45rem) !important; text-shadow:none !important; text-align:left !important; opacity:1 !important; }
html body .bmb-hero-h1 em{ color:var(--b-plum) !important; }
html body .bmb-hero-ctas{ justify-content:flex-start !important; }
html body .bmb-hero-microcopy{ color:var(--b-body) !important; text-shadow:none !important; text-align:left !important; }
html body .bmb-hero-core > *{ opacity:1 !important; transform:none !important; animation:none !important; }
html body .bmb-cta--primary, html body .bmb-consult-cta, html body .bmb-final-cta .bmb-cta--primary{ background:var(--b-plum) !important; color:#fff !important;
  border:1px solid var(--b-plum) !important; border-radius:100px !important; box-shadow:0 10px 24px rgba(74,36,99,.22) !important; }
html body .bmb-cta--ghost{ background:rgba(255,255,255,.7) !important; color:var(--b-plum) !important; border:1px solid var(--b-lilac) !important; border-radius:100px !important; }
html body .bmb-trust{ background:none !important; }
html body .bmb-trust-eyebrow{ color:var(--b-plum) !important; font-weight:700 !important; letter-spacing:.2em !important; }
html body .bmb-trust-grid{ gap:1.4rem !important; justify-content:center !important; }
html body .bmb-trust-stat{ width:190px; height:190px; border-radius:50% !important; background:var(--b-lav) !important;
  box-shadow:inset 0 0 0 6px rgba(255,255,255,.75), 0 14px 30px rgba(74,36,99,.10) !important; display:flex !important; flex-direction:column;
  align-items:center; justify-content:center; padding:1rem !important; border:0 !important; }
html body .bmb-trust-num{ color:var(--b-plum) !important; font-family:var(--b-serif) !important; font-weight:700 !important; text-shadow:none !important; }
html body .bmb-trust-num *{ color:inherit !important; }
html body .bmb-trust-unit{ color:var(--b-plum-2) !important; font-weight:700 !important; }
html body .bmb-trust-label{ color:var(--b-body) !important; text-shadow:none !important; }
html body .bmb-recog-panel{ background:#fff !important; border:0 !important; box-shadow:none !important; }
html body .bmb-recog-title{ display:flex !important; align-items:center; gap:1rem; color:var(--b-plum) !important; font-weight:700 !important; letter-spacing:.22em !important; }
html body .bmb-recog-title::before, html body .bmb-recog-title::after{ content:""; flex:1; height:1px; background:var(--b-lilac); }
html body main h2, html body main h3{ font-family:var(--b-serif) !important; color:var(--b-plum) !important; text-transform:none !important; letter-spacing:-.005em !important; }
html body .bmb-circle-head h2{ font-weight:600 !important; }
html body main h2 em, html body .bmb-section-head em, html body .bmb-testimonials-head em, html body .bmb-final-cta em, html body .bmb-why-text em{
  font-family:var(--b-script) !important; font-style:normal !important; font-weight:400 !important; color:var(--b-plum-2) !important;
  font-size:1.45em !important; line-height:1 !important; letter-spacing:0 !important; }
html body .bmb-eyebrow, html body .bmb-why-eyebrow{ font-family:var(--b-serif) !important; color:var(--b-plum) !important; text-transform:none !important;
  letter-spacing:0 !important; font-weight:700 !important; font-size:clamp(2.2rem,3.4vw,3rem) !important; }
html body .bmb-consult .bmb-eyebrow{ font-family:inherit !important; font-size:.8rem !important; letter-spacing:.2em !important; text-transform:uppercase !important; color:var(--b-lilac) !important; }
html body .bmb-section-lead, html body .bmb-circle-intro{ color:var(--b-body) !important; }
html body .bmb-circle-card{ background:linear-gradient(160deg,#fff 0%,var(--b-mist) 100%) !important; border:1px solid var(--b-lav-2) !important; }
html body .bmb-circle-stage-label{ color:var(--b-plum-2) !important; }
html body .bmb-circle-core-title{ color:var(--b-plum) !important; font-family:var(--b-serif) !important; }
html body .bmb-circle-hub svg .bmb-circle-base{ stroke:var(--b-lav-2) !important; }
html body .bmb-consult{ background:linear-gradient(120deg,var(--b-plum) 0%,var(--b-plum-2) 100%) !important; }
html body .bmb-consult-cta{ background:#fff !important; color:var(--b-plum) !important; }
html body .bmb-testimonials{ background:#fff !important; }
html body .bmb-testimonials-shell{ background:var(--b-lav) !important; }
html body .bmb-review-card{ background:#fff !important; border:0 !important; border-radius:20px !important; box-shadow:0 12px 30px rgba(74,36,99,.08) !important; }
html body .bmb-review-card::before, html body .bmb-review-card::after{ color:var(--b-lilac) !important; }
html body .bmb-review-stars, html body .bmb-testimonials-stars{ color:var(--b-gold) !important; }
html body .bmb-review-name{ color:var(--b-plum) !important; }
html body .bmb-blog-teaser{ background:linear-gradient(180deg,var(--b-lav) 0%,#fff 100%) !important; }
html body .bmb-blog-card{ background:#fff !important; border:1px solid var(--b-lav-2) !important; border-radius:18px !important; overflow:hidden; }
html body .bmb-blog-card--more{ background:var(--b-plum) !important; }
html body .bmb-blog-card--more *{ color:#fff !important; }
html body .bmb-locations{ background:#fff !important; }
html body .bmb-location-card{ background:var(--b-mist) !important; border:1px solid var(--b-lav-2) !important; border-radius:22px !important; box-shadow:none !important; }
html body .bmb-loc-label{ color:var(--b-plum-2) !important; }
html body .bmb-loc-maplink{ border-color:var(--b-plum) !important; color:var(--b-plum) !important; border-radius:100px !important; }
html body .bmb-final-cta{ background:linear-gradient(120deg,var(--b-plum) 0%,var(--b-plum-2) 100%) !important; }
html body .bmb-final-cta h2, html body .bmb-final-cta p{ color:#fff !important; }
html body .bmb-final-cta .bmb-cta--primary{ background:#fff !important; color:var(--b-plum) !important; border-color:#fff !important; }
html body .bmb-final-cta .bmb-cta--ghost{ background:transparent !important; color:#fff !important; border-color:rgba(255,255,255,.6) !important; }
html body .site-footer{ background:var(--b-plum) !important; }
html body .site-footer, html body .site-footer a, html body .site-footer p, html body .site-footer li, html body .site-footer h2, html body .site-footer h3, html body .site-footer h4{ color:rgba(255,255,255,.88) !important; }
html body .bmb-stage--calm .bmb-stage-frame > .bmb-hero{ text-align:left !important; }
html body .bmb-hero::before, html body .bmb-hero::after{ display:none !important; }
html body .bmb-hero-core, html body .bmb-hero-core *{ text-shadow:none !important; filter:none !important; }
html body .bmb-trust-num{ background:none !important; -webkit-text-fill-color:var(--b-plum) !important; filter:none !important; }
html body .bmb-trust-stat::before, html body .bmb-trust-stat::after{ display:none !important; }
html body .bmb-stage--calm .bmb-stage-frame > .bmb-trust{ background:none !important; box-shadow:none !important; border:0 !important; }
html body .bmb-consult{ background:linear-gradient(120deg,#efe6f5 0%,#e4d8ee 100%) !important; box-shadow:0 18px 40px rgba(85,63,99,.10) !important; }
html body .bmb-consult h3, html body .bmb-consult p{ color:var(--b-plum) !important; }
html body .bmb-consult .bmb-eyebrow{ color:var(--b-plum-2) !important; }
html body .bmb-consult-cta{ background:var(--b-plum) !important; color:#fff !important; }
html body .bmb-blog-card--more{ background:var(--b-lav-2) !important; }
html body .bmb-blog-card--more *{ color:var(--b-plum) !important; }
html body .bmb-final-cta{ background:linear-gradient(120deg,#efe6f5 0%,#e2d5ee 100%) !important; }
html body .bmb-final-cta h2, html body .bmb-final-cta p{ color:var(--b-plum) !important; }
html body .bmb-final-cta .bmb-cta--primary{ background:var(--b-plum) !important; color:#fff !important; border-color:var(--b-plum) !important; }
html body .bmb-final-cta .bmb-cta--ghost{ background:#fff !important; color:var(--b-plum) !important; border-color:var(--b-lilac) !important; }
html body .site-footer{ background:var(--b-mist) !important; border-top:1px solid var(--b-lav-2) !important; }
html body .site-footer, html body .site-footer a, html body .site-footer p, html body .site-footer li, html body .site-footer h2, html body .site-footer h3, html body .site-footer h4{ color:var(--b-body) !important; }
html body .site-footer .footer-col-head{ color:var(--b-plum) !important; }
html body .site-footer .footer-row:last-child{ background:var(--b-plum); margin:2rem calc(50% - 50vw) 0 !important; padding:1rem 0 !important; }
html body .site-footer .footer-row:last-child, html body .site-footer .footer-row:last-child *{ color:rgba(255,255,255,.9) !important; }
html body .bmb-stage--calm .bmb-stage-frame > .bmb-hero{ display:flex !important; justify-content:center !important; align-items:flex-start !important; }
html body .bmb-stage--calm .bmb-stage-frame > .bmb-hero > .bmb-hero-core{ margin:0 !important; width:auto !important; max-width:600px !important;
  padding:0 0 0 clamp(2rem,7vw,7.5rem) !important; transform:none !important; display:flex !important; flex-direction:column; }
html body .bmb-hero-h1, html body .bmb-hero-h1 *{ color:var(--b-plum-2) !important; opacity:1 !important; -webkit-text-fill-color:var(--b-plum-2) !important; background:none !important; }
html body .bmb-hero-microcopy{ text-align:left !important; margin-top:.2rem !important; }
html body .bmb-trust-grid{ display:flex !important; gap:2.2rem !important; }
html body .bmb-trust-stat{ width:200px !important; height:200px !important; flex:0 0 200px; }
html body .bmb-trust-num{ font-size:2.35rem !important; }
html body .home-main, html body .home-body, html body .bmb-stages{ background:#eee9f8 !important; }
html body .bmb-final-cta h2{ max-width:none !important; white-space:nowrap; }
html body .site-footer > *:last-child{ background:var(--b-plum) !important; margin:2rem calc(50% - 50vw) 0 !important; padding:1rem 0 !important; max-width:none !important; width:auto !important; }
html body .site-footer > *:last-child, html body .site-footer > *:last-child *{ color:rgba(255,255,255,.9) !important; }
@media (max-width:720px){
html body .bmb-nav-toggle-bar{ background:var(--b-plum) !important; }
html body .bmb-nav-toggle{ color:var(--b-plum) !important; border-color:var(--b-lav-2) !important; }
html body .bmb-stage--calm .bmb-hero-bgimg::before{ top:72px !important; bottom:auto !important; height:400px !important;
    background-image:url('/img/hero-home-mobile-v2.webp') !important; background-position:50% 0% !important; background-size:cover !important; }
html body .bmb-stage--calm .bmb-hero-scrim{ background:
    linear-gradient(180deg, rgba(255,255,255,0) 0px, rgba(255,255,255,0) 360px, rgba(250,246,253,.85) 450px, #faf7fc 480px, #f3edf7 100%) !important; }
html body .bmb-stage--calm .bmb-stage-frame{ min-height:0 !important; }
html body .bmb-stage--calm .bmb-stage-frame > .bmb-hero{ padding:470px 0 0 !important; min-height:0 !important; }
html body .bmb-stage--calm .bmb-stage-frame > .bmb-hero > .bmb-hero-core{ padding:0 22px !important; max-width:none !important; width:100% !important; }
html body .bmb-hero-display{ font-size:2.6rem !important; line-height:1.05 !important; margin-bottom:.9rem !important; }
html body .bmb-hero-h1{ font-size:1.12rem !important; line-height:1.4 !important; }
html body .bmb-hero-ctas{ flex-direction:row !important; flex-wrap:wrap !important; gap:.6rem !important; }
html body .bmb-hero-ctas .bmb-cta{ padding:.8rem 1.35rem !important; font-size:.98rem !important; }
html body .bmb-hero-microcopy{ font-size:.85rem !important; }
html body .bmb-stage--calm .bmb-stage-frame > .bmb-trust{ padding:1.6rem 22px 2rem !important; }
html body .bmb-trust-grid{ display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:.6rem !important; justify-items:center; }
html body .bmb-trust-stat{ width:104px !important; height:104px !important; flex:none !important; padding:.4rem !important;
    box-shadow:inset 0 0 0 4px rgba(255,255,255,.75), 0 8px 20px rgba(74,36,99,.08) !important; }
html body .bmb-trust-num{ font-size:1.3rem !important; line-height:1.1 !important; }
html body .bmb-trust-unit{ font-size:.52rem !important; letter-spacing:.16em !important; margin-top:.3rem !important; }
html body .bmb-recog-title{ gap:.6rem; font-size:.66rem !important; letter-spacing:.16em !important; }
html body main h2 em, html body .bmb-section-head em, html body .bmb-final-cta em{ font-size:1.3em !important; }
html body .bmb-eyebrow, html body .bmb-why-eyebrow{ font-size:2rem !important; }
html body .bmb-final-cta h2{ white-space:normal !important; }
html body .site-footer > *:last-child{ padding:1rem 22px !important; }
}
html body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a:hover,
html body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a:focus-visible{ color:var(--b-plum-2) !important; }
html body .site-header.is-floating .nav-utility a, html body .site-header.is-floating .nav-utility button,
html body .site-header.is-floating svg{ color:var(--b-plum) !important; }
html body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a{ color:var(--b-plum) !important; }
html body .site-header.is-floating .bmb-nav-toggle-bar{ background:var(--b-plum) !important; }
html body.is-immersive-page .site-header .primary-nav .nav-root > li > a.nav-cta,
html body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a.nav-cta{ color:#fff !important; background:var(--b-plum) !important; border-color:var(--b-plum) !important; }
:root{
  --b-s1:#eee9f8; --b-s2:#ede0f9; --b-s3:#e1d0ef; --b-off:#f7f3fb; --b-ribbon:#cdaadb;
  --b-head:#4a1650; --b-text:#665383; --b-mauve:#9576a7; --b-violet-2:#62428c; --b-band:#571f5b;
  --b-cream:#faf6ef; --b-cream-line:#ece2d2;
  --b-round:"Quicksand", system-ui, -apple-system, "Segoe UI", sans-serif;
  --b-gutter:max(16px, calc(50vw - 610px));
  --b-leaf:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 70' fill='none' stroke='%239576a7' stroke-width='1.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 62C40 52 86 34 134 8'/%3E%3Cpath d='M30 55C27 43 35 34 47 31C47 42 41 51 30 55Z'/%3E%3Cpath d='M31 54L45 33'/%3E%3Cpath d='M50 48C58 55 70 57 80 52C73 45 61 43 50 48Z'/%3E%3Cpath d='M51 48L78 52'/%3E%3Cpath d='M72 40C71 28 79 19 92 16C92 28 84 36 72 40Z'/%3E%3Cpath d='M73 39L90 18'/%3E%3Cpath d='M95 28C103 35 114 36 124 31C117 24 106 22 95 28Z'/%3E%3Cpath d='M96 28L122 31'/%3E%3Cpath d='M114 17C116 9 124 5 134 5C130 13 122 17 114 17Z'/%3E%3C/svg%3E");
  --b-feather:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 150' fill='none' stroke='%23cdaadb' stroke-width='1.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M30 146C30 110 31 60 36 6'/%3E%3Cpath d='M31 120C18 108 10 90 12 70C14 50 24 28 36 6C46 26 52 48 50 70C48 92 40 108 31 120'/%3E%3Cpath d='M31 100L17 88M31 84L15 70M32 68L17 54M33 52L21 40M31 100L45 88M31 84L47 70M32 68L47 54M34 52L45 40'/%3E%3C/svg%3E");
}
html{ background:var(--b-s1) !important; }
html body{ background:var(--b-s1) !important; color:var(--b-text); }
html body .home-main, html body .home-body{ background:var(--b-s1) !important; }
html body .home-body p, html body .home-body li, html body .home-body blockquote, html body .home-body address{ font-family:var(--b-round); }
html body .home-body p, html body .home-body address, html body .home-body blockquote{ color:var(--b-text); }
html body .home-body .bmb-blog-card p, html body .home-body .bmb-location-card p, html body .home-body .bmb-location-card address,
html body .home-body .bmb-review-quote, html body .home-body .bmb-review-meta{ font-family:var(--b-round) !important; }
html body main h2, html body main h3{ color:var(--b-head) !important; }
html body main h2 em, html body .bmb-section-head em, html body .bmb-testimonials-head em, html body .bmb-final-cta em, html body .bmb-why2 h2 em{
  font-family:var(--b-script) !important; font-style:normal !important; font-weight:400 !important; color:var(--b-mauve) !important;
  font-size:1.45em !important; line-height:1 !important; letter-spacing:0 !important; }
html body .home-body .bmb-section-head h2{ font-size:clamp(1.9rem,3.2vw,2.7rem) !important; font-weight:600 !important; line-height:1.15 !important; margin:0 0 .8rem !important; }
html body .home-body .bmb-eyebrow, html body .home-body .bmb-section-head .bmb-eyebrow, html body .home-body .bmb-testimonials-head-text .bmb-eyebrow,
html body .bmb-why2-eyebrow, html body .bmb-more-eyebrow, html body .bmb-specialists-eyebrow{
  display:block !important; margin:0 0 .75rem !important; font-family:var(--b-round) !important; font-size:.8rem !important; font-weight:700 !important;
  letter-spacing:.24em !important; line-height:1.4 !important; text-transform:uppercase !important; color:var(--b-mauve) !important; }
html body .home-body .bmb-section-head .bmb-eyebrow::before, html body .home-body .bmb-testimonials-head-text .bmb-eyebrow::before{ display:none !important; }
html body .home-body .bmb-locations .bmb-section-head .bmb-eyebrow{ font-family:var(--b-serif) !important; font-size:clamp(1.9rem,3.2vw,2.7rem) !important;
  font-weight:600 !important; letter-spacing:.01em !important; text-transform:none !important; color:var(--b-head) !important; line-height:1.15 !important; }
html body .home-body .bmb-section-lead{ font-family:var(--b-round) !important; color:var(--b-text) !important; }
html body .bmb-specialists-head::before, html body .bmb-why2-head::before, html body .bmb-testimonials-head::before, html body .bmb-circle-head::before{
  content:""; position:absolute; top:-.4rem; width:clamp(64px,7vw,104px); aspect-ratio:2/1; background:var(--b-leaf) center/contain no-repeat;
  opacity:.6; pointer-events:none; }
html body .bmb-specialists-head::before, html body .bmb-why2-head::before{ left:calc(50% - clamp(15rem,24vw,21rem)); transform:scaleX(-1) rotate(-6deg); }
html body .bmb-testimonials-head::before{ right:calc(50% - clamp(15rem,26vw,22rem)); }
html body .bmb-circle-head::before{ left:.5rem; top:auto; bottom:-.2rem; transform:scaleX(-1); }
@media (max-width:760px){
html body .bmb-specialists-head::before, html body .bmb-why2-head::before, html body .bmb-testimonials-head::before, html body .bmb-circle-head::before{ display:none; }
}
html body .bmb-wave{ display:block; position:relative; z-index:1; width:100vw; max-width:none; margin:0 calc(50% - 50vw); padding:0;
  height:clamp(46px,6.4vw,104px); background:var(--w-from); line-height:0; pointer-events:none; }
html body .bmb-wave svg{ display:block; width:100%; height:100%; max-width:none; overflow:visible; }
html body .bmb-wave .w-back{ fill:var(--w-mid); opacity:.8; }
html body .bmb-wave .w-ribbon{ fill:none; stroke:var(--b-ribbon); stroke-width:1.6; vector-effect:non-scaling-stroke; opacity:.95; }
html body .bmb-wave .w-front{ fill:var(--w-to); }
html body .bmb-wave--flip svg{ transform:scaleX(-1); }
html body .bmb-wave--hero{ position:absolute; left:0; right:0; bottom:-1px; width:auto; margin:0; background:transparent; z-index:1; }
html body .home-body > .bmb-stages, html body .home-body > .bmb-specialists, html body .home-body > .bmb-consult-wrap,
html body .home-body > .bmb-testimonials, html body .home-body > .bmb-why2, html body .home-body > .bmb-blog-teaser, html body .home-body > .bmb-locations{
  box-sizing:border-box; width:100vw !important; max-width:none !important; margin:0 calc(50% - 50vw) !important;
  padding-left:var(--b-gutter) !important; padding-right:var(--b-gutter) !important; border-radius:0 !important; }
html body .bmb-hero-kicker{ margin:0 0 .9rem !important; font-family:var(--b-round) !important; font-size:.84rem !important; font-weight:700 !important;
  letter-spacing:.24em !important; line-height:1.4 !important; text-transform:uppercase !important; color:var(--b-mauve) !important; text-align:left !important; }
html body .bmb-hero-display{ color:var(--b-head) !important; }
html body .bmb-hero-position{ margin:.35rem 0 1.3rem !important; max-width:31em; font-family:var(--b-round) !important; font-size:1.02rem !important;
  line-height:1.55 !important; font-weight:500 !important; color:var(--b-text) !important; text-align:left !important; }
html body .bmb-hero-h1{ margin-left:0 !important; margin-right:0 !important; margin-bottom:.2rem !important; }
html body .bmb-hero-microcopy{ font-family:var(--b-round) !important; color:var(--b-text) !important; }
html body .bmb-trust-eyebrow.bmb-trust-line{ font-family:var(--b-round) !important; font-size:1.08rem !important; font-weight:600 !important; letter-spacing:.02em !important;
  text-transform:none !important; color:var(--b-violet-2) !important; }
html body .bmb-trust-pipe{ margin:0 .5em; color:var(--b-ribbon); font-weight:400; }
@media (max-width:720px){
html body .bmb-trust-eyebrow.bmb-trust-line{ display:block !important; font-size:.9rem !important; white-space:nowrap !important; text-align:center !important; }
}
html body .bmb-trust-num{ -webkit-text-fill-color:var(--b-head) !important; color:var(--b-head) !important; }
@media (max-width:359px){
html body .bmb-trust-eyebrow.bmb-trust-line{ white-space:normal !important; }
html body .bmb-trust-pipe{ display:block; height:0; overflow:hidden; }
html body .bmb-trust-stat{ width:88px !important; height:88px !important; }
html body .bmb-trust-num{ font-size:1.1rem !important; }
html body .bmb-stage--calm .bmb-stage-frame > .bmb-trust{ padding-left:12px !important; padding-right:12px !important; }
}
html body .bmb-trust-label{ font-family:var(--b-round) !important; }
@media (min-width:721px){
html body .bmb-trust-stat{ justify-content:flex-start !important; padding-top:1.8rem !important; }
html body .bmb-trust-label{ text-align:center !important; line-height:1.4 !important; }
}
html body .bmb-stage--calm .bmb-stage-frame > .bmb-trust{ position:relative; z-index:2; }
html body .bmb-stage--calm .bmb-hero-core::after{ content:""; position:absolute; right:-2.5rem; top:-1.2rem; width:120px; aspect-ratio:2/1;
  background:var(--b-leaf) center/contain no-repeat; opacity:.55; transform:rotate(-12deg); pointer-events:none; }
html body .bmb-stage--calm .bmb-hero-core{ position:relative; }
@media (max-width:900px){
html body .bmb-stage--calm .bmb-hero-core::after{ display:none; }
}
html body .home-body > .bmb-stages{ background:var(--b-s1) !important; padding-top:clamp(1rem,2.5vw,2rem) !important; padding-bottom:clamp(2.4rem,4vw,3.4rem) !important; }
html body .bmb-recog{ width:min(1240px,100%) !important; margin:0 auto clamp(2.4rem,4vw,3.4rem) !important; padding-top:0 !important; gap:1rem !important; }
html body .bmb-recog-panel{ background:linear-gradient(180deg,#f5effa 0%,#ebe1f5 100%) !important; border:1px solid var(--b-s3) !important; border-radius:22px !important;
  box-shadow:0 14px 34px -28px rgba(74,22,80,.45) !important; padding:1.35rem clamp(1rem,2.6vw,2.2rem) 1.55rem !important; }
html body .bmb-recog-title{ text-transform:uppercase !important; font-family:var(--b-round) !important; font-size:.8rem !important; font-weight:700 !important;
  letter-spacing:.26em !important; color:var(--b-head) !important; margin:0 0 1.2rem !important; }
html body .bmb-recog-title::before, html body .bmb-recog-title::after{ background:var(--b-ribbon) !important; }
html body .bmb-recog-logos img[src*="dalton"], html body .bmb-recog-logos img[src*="pdb-institute"]{ mix-blend-mode:multiply; }
@media (min-width:1200px){
html body .bmb-recog-logos{ display:flex !important; flex-wrap:nowrap !important; justify-content:space-between !important; gap:0 !important; --recog-s:1; }
html body .bmb-recog-logos{ align-items:stretch !important; }
html body .bmb-recog-logos > li{ flex:1 1 auto; padding:.1rem clamp(.5rem,1vw,1rem); }
html body .bmb-recog-logos > li + li{ border-left:1px solid var(--b-ribbon); }
}
@media (max-width:1199px){
html body .bmb-recog-logos{ display:flex !important; flex-wrap:wrap !important; justify-content:center !important; gap:1.1rem 1.9rem !important; --recog-s:.88; }
html body .bmb-recog-logos > li{ grid-column:auto !important; }
}
@media (max-width:1199px){
html body .bmb-recog-logos--partners{ display:grid !important; grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    justify-items:stretch !important; align-items:center; gap:1.1rem 1.9rem !important; }
html body .bmb-recog-logos--partners > li{ grid-column:span 2 !important; }
html body .bmb-recog-logos--partners > li.bmb-recog-hospital{ grid-column:span 3 !important; }
}
@media (min-width:641px) and (max-width:1199px){
html body .bmb-recog-logos--partners{ max-width:780px; margin-left:auto !important; margin-right:auto !important; }
html body .bmb-recog-logos--partners > li.bmb-recog-hospital:nth-child(4){ grid-column:2 / span 2 !important; }
html body .bmb-recog-logos--partners > li.bmb-recog-hospital:nth-child(5){ grid-column:4 / span 2 !important; }
}
@media (max-width:640px){
html body .bmb-recog-logos--partners{ gap:1.1rem .7rem !important; --recog-s:.74; }
html body .bmb-recog-logos--partners img[src*="mount-elizabeth"]{ max-width:82%; }
html body .bmb-recog-logos--awards{ display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:1rem .7rem !important; justify-items:center; --recog-s:.74; }
html body .bmb-recog-title{ font-size:.66rem !important; letter-spacing:.18em !important; gap:.6rem !important; }
}
html body .bmb-stages > .bmb-section-head.bmb-circle-head{ position:relative; max-width:1100px !important; margin:0 auto clamp(1.5rem,3vw,2.3rem) !important; padding:0 1rem !important; text-align:center; }
html body .home-body .bmb-section-head.bmb-circle-head h2{ max-width:none !important; text-transform:uppercase !important; font-family:var(--b-serif) !important; font-weight:600 !important; font-size:clamp(1.2rem,2vw,1.75rem) !important;
  letter-spacing:.05em !important; line-height:1.4 !important; text-align:center !important; margin:0 !important; color:var(--b-head) !important; }
html body .bmb-circle{ width:min(1180px,100%) !important; margin:0 auto !important; grid-template-columns:minmax(0,1fr) minmax(0,1.02fr) !important; gap:1.1rem !important; }
html body .bmb-circle-card{ background:var(--b-cream) !important; border:1px solid var(--b-cream-line) !important; box-shadow:0 18px 40px -32px rgba(74,22,80,.45) !important; justify-content:center; }
html body .bmb-circle-stage-label{ color:var(--b-mauve) !important; font-family:var(--b-round) !important; }
html body .bmb-circle-stage-line{ font-family:var(--b-serif) !important; color:var(--b-head) !important; }
html body .bmb-circle-stage-sub{ display:block; font-family:var(--b-serif); font-style:italic; font-size:.95rem; line-height:1.3; color:var(--b-text); text-align:center; }
html body .bmb-circle-core-title{ color:var(--b-head) !important; }
html body .bmb-circle-core-cta, html body .bmb-circle-core-cta *{ color:var(--b-plum-2) !important; }
html body .bmb-circle-photo{ display:flex !important; flex-direction:column; min-height:0 !important; height:auto !important; aspect-ratio:auto !important; overflow:hidden !important; border-radius:22px !important;
  background:var(--b-cream) !important; border:1px solid var(--b-cream-line); box-shadow:0 18px 40px -32px rgba(74,22,80,.45); }
html body .bmb-circle-photo .bmb-circle-intro{ margin:0 !important; max-width:none !important; padding:1rem 1.3rem 1.05rem !important; background:var(--b-cream);
  font-family:var(--b-round) !important; font-size:.98rem !important; line-height:1.55 !important; color:var(--b-text) !important; }
html body .bmb-circle-photo-frame{ position:relative; flex:1 1 auto; min-height:470px; }
html body .bmb-coc-cards{ position:absolute; z-index:2; left:14px; top:14px; width:min(262px,47%); margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:.5rem; }
html body .bmb-coc-cards > li{ margin:0; }
html body .bmb-coc-card{ display:flex; flex-direction:column; gap:.18rem; padding:.62rem .8rem .68rem; border-radius:14px; text-decoration:none;
  background:rgba(255,255,255,.64); -webkit-backdrop-filter:blur(9px) saturate(120%); backdrop-filter:blur(9px) saturate(120%);
  border:1px solid rgba(255,255,255,.75); box-shadow:0 10px 24px -18px rgba(40,10,40,.55); transition:background .2s ease, transform .2s ease, box-shadow .2s ease; }
html body .bmb-coc-card-title{ display:flex; align-items:center; gap:.45rem; font:700 .9rem/1.25 var(--b-round); color:var(--b-head); }
html body .bmb-coc-card-title::before{ content:""; flex:none; width:.55rem; height:.55rem; border-radius:50%; background:var(--dot); }
html body .bmb-coc-card-line{ font:500 .78rem/1.4 var(--b-round); color:#4d3b57; }
html body .bmb-coc-card--pregnancy{ --dot:var(--pregnancy-dot); }
html body .bmb-coc-card--recovery{ --dot:var(--recovery-dot); }
html body .bmb-coc-card--motherhood{ --dot:var(--motherhood-dot); }
html body .bmb-coc-card--beyond{ --dot:var(--beyond-dot); }
html body .bmb-coc-card:hover, html body .bmb-coc-card:focus-visible{ background:rgba(255,255,255,.92); }
html body .bmb-coc-card:focus-visible{ outline:3px solid var(--b-ribbon); outline-offset:2px; }
@media (max-width:1024px){
html body .bmb-circle{ grid-template-columns:1fr !important; }
html body .bmb-circle-photo-frame{ min-height:clamp(420px,56vw,520px); }
}
@media (max-width:720px){
html body .bmb-circle-photo-frame{ min-height:0; display:flex; flex-direction:column; padding:0 0 1rem; }
html body .bmb-coc-cards{ position:static; width:auto; margin:.8rem .8rem 0; }
html body .bmb-coc-card{ background:#fff; border-color:var(--b-cream-line); }
}
@media (min-width:1025px){
html body .bmb-circle .bmb-circle-card{ padding-left:1.5rem; padding-right:1.5rem; }
html body .bmb-circle .bmb-circle-wheel{ --ring:clamp(220px,20vw,290px); column-gap:.35rem; }
html body .bmb-circle-wheel .bmb-circle-stage--recovery, html body .bmb-circle-wheel .bmb-circle-stage--beyond{ padding-left:.45rem; padding-right:.45rem; }
}
@media (max-width:560px){
html body .bmb-circle-wheel .bmb-circle-stage--motherhood{ align-items:center !important; text-align:center !important; }
html body .bmb-circle-wheel .bmb-circle-stage{ background:#fff !important; border-color:var(--b-cream-line) !important; }
}
html body .home-body > .bmb-specialists{ background:var(--b-off) !important; padding-top:clamp(2rem,4vw,3.4rem) !important; padding-bottom:clamp(3rem,6vw,5rem) !important; scroll-margin-top:6rem; }
html body .bmb-specialists-head{ position:relative; text-align:center; max-width:760px !important; margin:0 auto 2.4rem !important; }
html body .bmb-specialists-head h2{ font-size:clamp(1.9rem,3.2vw,2.7rem) !important; font-weight:600 !important; line-height:1.15 !important; margin:0 0 .8rem !important; }
html body .bmb-specialists-grid{ list-style:none; margin:0 auto; padding:0; max-width:1220px; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1.1rem; }
html body .bmb-specialists-grid > li{ display:flex; margin:0; }
html body .bmb-spec-card{ display:flex; flex-direction:column; width:100%; padding:10px 10px 14px; text-align:left; text-decoration:none; background:#fff; border:0;
  border-radius:26px; box-shadow:0 22px 44px -26px rgba(60,30,70,.34), 0 2px 6px rgba(60,30,70,.04); transition:transform .2s ease, box-shadow .2s ease; }
html body .bmb-spec-card:hover{ transform:translateY(-3px); box-shadow:0 30px 56px -26px rgba(60,30,70,.42), 0 2px 6px rgba(60,30,70,.05); }
html body .bmb-spec-card:focus-visible{ outline:3px solid var(--b-ribbon); outline-offset:3px; }
html body .bmb-spec-photo{ display:block; width:100%; aspect-ratio:5/6; margin:0; border-radius:18px; overflow:hidden; background:linear-gradient(160deg,#f3ebf9 0%,#e1d0ef 100%); }
html body .bmb-spec-photo img{ display:block; width:100%; height:100%; object-fit:cover; object-position:50% 22%; }
html body .bmb-spec-body{ display:flex; flex-direction:column; gap:.28rem; padding:.9rem .45rem .3rem; }
html body .bmb-specialists .bmb-spec-name{ display:flex; align-items:center; gap:.4rem; margin:0 !important; font-family:var(--b-round) !important; font-size:1.1rem !important;
  font-weight:700 !important; letter-spacing:0 !important; line-height:1.25 !important; color:#2b2233 !important; }
html body .bmb-spec-check{ flex:none; width:17px; height:17px; fill:var(--b-head); }
html body .bmb-spec-role{ font-family:var(--b-round); font-size:.86rem; font-weight:500; line-height:1.4; color:#7a7480; }
html body .bmb-spec-cred{ font-family:var(--b-round); font-size:.8rem; line-height:1.4; color:#8d8794; }
html body .bmb-spec-foot{ margin-top:auto; display:flex; align-items:center; justify-content:space-between; gap:.5rem; padding:.8rem .45rem 0; }
html body .bmb-spec-clinic{ font-family:var(--b-round); font-size:.74rem; font-weight:600; line-height:1.3; letter-spacing:0; text-transform:none; color:#8a8490; }
html body .bmb-spec-plus{ flex:none; display:inline-grid; place-items:center; min-width:46px; height:34px; padding:0 .95rem; border-radius:999px; background:#f1eaf7;
  color:var(--b-head); font:700 1.2rem/1 var(--b-round); box-shadow:0 8px 16px -10px rgba(60,30,70,.45); transition:background .2s ease, color .2s ease; }
html body .bmb-spec-card:hover .bmb-spec-plus, html body .bmb-spec-card:focus-visible .bmb-spec-plus{ background:var(--b-head); color:#fff; }
@media (max-width:1199px){
html body .bmb-specialists-grid{ display:flex; flex-wrap:wrap; justify-content:center; max-width:880px; }
html body .bmb-specialists-grid > li{ flex:0 0 calc((100% - 2 * 1.1rem) / 3); }
}
@media (max-width:760px){
html body .bmb-specialists-grid{ gap:.8rem; }
html body .bmb-specialists-grid > li{ flex:0 0 calc((100% - .8rem) / 2); }
html body .bmb-spec-card{ border-radius:20px; padding:8px 8px 12px; }
html body .bmb-spec-photo{ border-radius:14px; }
html body .bmb-specialists .bmb-spec-name{ font-size:1rem !important; }
html body .bmb-spec-check{ width:15px; height:15px; }
html body .bmb-spec-role{ font-size:.8rem; }
html body .bmb-spec-cred{ font-size:.75rem; }
html body .bmb-spec-body{ padding:.7rem .3rem .2rem; }
html body .bmb-spec-foot{ padding:.7rem .3rem 0; }
html body .bmb-spec-clinic{ font-size:.7rem; }
html body .bmb-spec-plus{ min-width:38px; height:30px; padding:0 .7rem; font-size:1.05rem; }
}
html body .home-body > .bmb-consult-wrap{ background:var(--b-s1) !important; padding-top:clamp(.8rem,2vw,1.6rem) !important; padding-bottom:clamp(2rem,4vw,3.2rem) !important; }
html body .bmb-consult{ max-width:1180px !important; margin:0 auto !important; background:linear-gradient(120deg,#e8dbf3 0%,#d9c6ea 100%) !important;
  box-shadow:0 22px 46px -30px rgba(74,22,80,.5) !important; }
html body .bmb-consult h2{ margin:.55rem 0 0 !important; font-family:var(--b-serif) !important; font-size:clamp(1.6rem,3vw,2.25rem) !important; font-weight:700 !important;
  line-height:1.18 !important; color:var(--b-head) !important; }
html body .bmb-consult p{ color:var(--b-text) !important; }
html body .bmb-consult .bmb-eyebrow{ color:var(--b-violet-2) !important; }
html body .bmb-consult-copy > p:not(.bmb-eyebrow){ font-size:1.04rem !important; line-height:1.6 !important; max-width:44ch !important; margin:.8rem 0 1.4rem !important; }
html body .bmb-consult-cta{ background:var(--b-head) !important; color:#fff !important; font-family:var(--b-round) !important; }
@media (max-width:760px){
html body .bmb-consult{ width:auto !important; max-width:none !important; margin:0 !important; border-radius:18px !important; }
}
html body .home-body > .bmb-testimonials{ background:var(--b-s2) !important; padding-top:clamp(1.8rem,3.5vw,3rem) !important; padding-bottom:clamp(2.4rem,4.5vw,3.6rem) !important; }
html body .bmb-testimonials-head{ position:relative; max-width:62rem !important; margin:0 auto 1.9rem !important; }
html body .bmb-testimonials-head-text{ max-width:none !important; }
html body .bmb-testimonials-head-text h2{ max-width:36ch; margin:0 auto !important; text-align:center; font-family:var(--b-serif) !important; font-size:clamp(1.3rem,2.3vw,1.95rem) !important;
  font-weight:600 !important; line-height:1.38 !important; letter-spacing:0 !important; color:var(--b-head) !important; }
html body .bmb-testimonials > .bmb-testi-photos{ list-style:none; margin:0 auto 2rem; padding:.3rem 16px clamp(26px,3vw,44px);
  max-width:1240px; box-sizing:border-box; display:flex; justify-content:center; align-items:flex-start; gap:clamp(6px,.7vw,12px); }
html body .bmb-testi-photos > li{ position:relative; flex:0 1 132px; min-width:0; margin:0;
  transform:translateY(var(--y,0%)) rotate(var(--r,0deg)); transition:transform .35s cubic-bezier(.22,1,.36,1); }
html body .bmb-testi-photos > li:nth-child(1){ --r:-3deg; --y:26%; }
html body .bmb-testi-photos > li:nth-child(2){ --r:2.5deg; --y:2%; }
html body .bmb-testi-photos > li:nth-child(3){ --r:-2deg; --y:30%; }
html body .bmb-testi-photos > li:nth-child(4){ --r:3deg; --y:4%; }
html body .bmb-testi-photos > li:nth-child(5){ --r:-2.5deg; --y:24%; }
html body .bmb-testi-photos > li:nth-child(6){ --r:2deg; --y:4%; }
html body .bmb-testi-photos > li:nth-child(7){ --r:-3deg; --y:30%; }
html body .bmb-testi-photos > li:nth-child(8){ --r:2.5deg; --y:2%; }
html body .bmb-testi-photos > li:nth-child(9){ --r:-2deg; --y:26%; }
html body .bmb-testi-photos > li:hover{ z-index:2; transform:translateY(calc(var(--y,0%) - 3%)) rotate(0deg) scale(1.06); }
html body .bmb-testi-photos img{ display:block; width:100%; height:auto; aspect-ratio:1 / 1.05; object-fit:cover; object-position:50% 35%; border-radius:12px;
  box-sizing:border-box; box-shadow:0 16px 28px -16px rgba(46,16,52,.5), 0 2px 6px -2px rgba(46,16,52,.16); }
@media (prefers-reduced-motion:reduce){
html body .bmb-testi-photos > li{ transition:none; }
}
html body .bmb-testi-intro{ text-align:center; margin:0 auto 1.5rem; }
html body .bmb-testi-intro h3{ margin:0 !important; font-family:var(--b-script) !important; font-weight:400 !important; font-size:clamp(2rem,3.2vw,2.6rem) !important;
  line-height:1.1 !important; letter-spacing:0 !important; color:var(--b-mauve) !important; }
html body .bmb-testi-intro p{ margin:.35rem 0 0; font-size:.98rem; }
@media (min-width:721px){
html body .bmb-testimonials-shell{ background:rgba(255,255,255,.45) !important; }
}
@media (max-width:760px){
html body .bmb-testimonials > .bmb-testi-photos{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px 12px; max-width:440px; padding:.4rem .5rem 1.1rem; }
html body .bmb-testi-photos > li:nth-child(n){ margin:0; --y:0%; }
html body .bmb-testi-photos > li:nth-child(3n+2){ --y:9%; }
html body .bmb-testi-photos img{ border-radius:13px; }
}
html body .bmb-testimonials > .bmb-vrow{ align-items:start; }
html body .bmb-testimonials > .bmb-vrow-more{ margin:-12px auto 36px; }
@media (max-width:760px){
html body .bmb-testimonials > .bmb-vrow{ justify-content:flex-start; max-width:none; margin:24px calc(-1 * var(--b-gutter)) 12px;
    padding:4px var(--b-gutter) 30px; }
html body .bmb-testimonials > .bmb-vrow > li{ scroll-margin-left:var(--b-gutter); }
html body .bmb-testimonials > .bmb-vrow-more{ margin:0 auto 28px; }
}
html body .home-body > .bmb-why2{ background:linear-gradient(180deg,var(--b-s3) 0%,var(--b-s1) 42%) !important; padding-top:clamp(2.2rem,4.2vw,3.4rem) !important;
  padding-bottom:clamp(2.8rem,5vw,4.4rem) !important; }
html body .bmb-why2--more .bmb-more{ margin-top:0; }
html body .home-body .bmb-more-title{ margin:0 auto 1rem !important; text-align:center; font-size:clamp(1.6rem,2.6vw,2.2rem) !important; font-weight:600 !important;
  line-height:1.2 !important; text-wrap:balance; }
html body .bmb-more-item, html body .home-body > .bmb-testimonials{ scroll-margin-top:7rem; }
@media (min-width:861px){
html body .bmb-more-grid.bmb-more-grid--3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
html body .bmb-more{ max-width:900px; margin:clamp(2.4rem,4.5vw,3.4rem) auto 0; }
html body .bmb-more-eyebrow{ text-align:center; }
html body .bmb-more-lead{ max-width:60ch; margin:0 auto .5rem !important; text-align:center; font-size:1.04rem; line-height:1.6; }
html body .bmb-more-text{ max-width:60ch; margin:.6rem auto 0 !important; text-align:center; font-size:.98rem; line-height:1.65; text-wrap:pretty; }
html body .bmb-more-about{ margin:0 0 1.5rem !important; text-align:center; }
html body .bmb-more a, html body .bmb-more-about a{ color:var(--b-head); font-weight:700; text-decoration:underline; text-decoration-color:var(--b-ribbon); text-underline-offset:3px; }
html body .bmb-more-item{ border-top:1px solid var(--b-s3); }
html body .bmb-more-item:last-child{ border-bottom:1px solid var(--b-s3); }
html body .bmb-more-item > summary{ position:relative; display:flex; align-items:baseline; flex-wrap:wrap; gap:.25rem 1rem; padding:1rem 3rem 1rem .25rem; list-style:none; cursor:pointer; }
html body .bmb-more-item > summary::-webkit-details-marker{ display:none; }
html body .bmb-more-item > summary::after{ content:"+"; position:absolute; right:.3rem; top:50%; transform:translateY(-50%); width:30px; height:30px; border-radius:50%;
  display:grid; place-items:center; background:#fff; color:var(--b-head); font:600 1.15rem/1 var(--b-round); box-shadow:0 6px 14px -8px rgba(60,30,70,.45); }
html body .bmb-more-item[open] > summary::after{ content:"\2212"; }
html body .bmb-more-item > summary:focus-visible{ outline:3px solid var(--b-ribbon); outline-offset:2px; border-radius:8px; }
html body .bmb-more-kicker{ min-width:9.5rem; font:700 .72rem/1.3 var(--b-round); letter-spacing:.2em; text-transform:uppercase; color:var(--b-mauve); }
html body .bmb-more-item > summary h3{ display:inline; margin:0 !important; font-size:clamp(1.05rem,1.6vw,1.25rem) !important; font-weight:600 !important; line-height:1.35 !important; }
html body .bmb-more-item > :not(summary){ margin-left:.25rem; margin-right:.25rem; }
html body .bmb-more-item > p, html body .bmb-more-intro{ margin-top:0 !important; margin-bottom:1rem !important; font-size:.97rem; line-height:1.65; }
html body .bmb-more-item > h4{ margin:.4rem .25rem .35rem; font-family:var(--b-serif); font-size:1.1rem; font-weight:600; color:var(--b-head); }
html body .bmb-more-grid{ list-style:none; margin:0 0 1.3rem; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
html body .bmb-more-grid > li{ margin:0; padding:1rem 1.1rem 1.1rem; background:#fff; border:1px solid #eee4f6; border-radius:16px; }
html body .bmb-more-grid h4{ margin:0 0 .3rem; font-family:var(--b-serif); font-size:1.08rem; font-weight:600; line-height:1.3; color:var(--b-head); }
html body .bmb-more-grid h4 a{ color:inherit; font-weight:inherit; text-decoration:none; border-bottom:1px solid var(--b-ribbon); }
html body .bmb-more-grid p{ margin:0; font-size:.93rem; line-height:1.6; }
html body .bmb-more-chips{ list-style:none; display:flex; flex-wrap:wrap; gap:.45rem; margin:0 .25rem 1rem; padding:0; }
html body .bmb-more-chips > li{ margin:0; padding:.35rem .85rem; background:#fff; border:1px solid var(--b-s3); border-radius:999px; font-size:.84rem; font-weight:600; color:var(--b-head); }
@media (max-width:640px){
html body .bmb-more-grid{ grid-template-columns:1fr; }
html body .bmb-more-kicker{ min-width:0; width:100%; }
}
html body .home-body > .bmb-blog-teaser{ background:var(--b-off) !important; padding-top:clamp(2rem,4vw,3.2rem) !important; padding-bottom:clamp(2.4rem,4.5vw,3.6rem) !important; }
html body .home-body > .bmb-locations{ background:var(--b-s1) !important; padding-top:clamp(2rem,4vw,3.2rem) !important; padding-bottom:clamp(2.4rem,4.5vw,3.6rem) !important; }
html body .bmb-location-card{ background:#fff !important; border-color:var(--b-s3) !important; }
html body .bmb-location-card .bmb-loc-hours strong{ font:700 .74rem/1.3 var(--b-round) !important; letter-spacing:.2em !important; text-transform:uppercase !important; color:var(--b-mauve) !important; }
html body .bmb-location-card .bmb-loc-contact a{ color:var(--b-head) !important; text-decoration:underline !important; text-decoration-color:var(--b-ribbon) !important;
  text-decoration-thickness:1.5px !important; text-underline-offset:3px !important; }
html body .bmb-location-card .bmb-loc-contact a:hover, html body .bmb-location-card .bmb-loc-contact a:focus-visible{ color:var(--b-head) !important; text-decoration-color:var(--b-mauve) !important; }
html body .bmb-location-card .bmb-loc-maplink:hover, html body .bmb-location-card .bmb-loc-maplink:focus-visible{ background:var(--b-head) !important; border-color:var(--b-head) !important; color:#fff !important; }
html body .bmb-more-badges{ justify-content:center; margin:.4rem auto 1rem !important; }
html body .bmb-blog-card--more{ background:linear-gradient(160deg,#efe4f8 0%,#e1d0ef 100%) !important; }
html body .home-body .bmb-blog-card--more > h3{ margin:0 0 .45rem !important; font-family:var(--b-script) !important; font-weight:400 !important;
  font-size:clamp(1.7rem,2.3vw,2.3rem) !important; line-height:1.1 !important; letter-spacing:0 !important; text-transform:none !important; color:var(--b-violet-2) !important;
  white-space:nowrap; max-width:none !important; }
html body .bmb-blog-card--more .bmb-blog-more-arrow{ display:grid; place-items:center; width:38px; height:38px; margin-top:1rem; border-radius:50%; background:#fff;
  color:var(--b-head) !important; font:600 1.1rem/1 var(--b-round); box-shadow:0 6px 14px -8px rgba(60,30,70,.45); transition:transform .25s ease; }
html body .bmb-blog-card--more:hover .bmb-blog-more-arrow, html body .bmb-blog-card--more:focus-visible .bmb-blog-more-arrow{ transform:translateX(4px); }
html body .home-body > .bmb-final-cta--band{ box-sizing:border-box; width:100vw !important; margin:0 calc(50% - 50vw) !important; justify-content:space-between !important;
  padding:clamp(1.5rem,3vw,2.3rem) var(--b-gutter) !important; background:linear-gradient(180deg,var(--b-s3) 0%,var(--b-s2) 100%) !important; border-radius:0 !important; }
html body .bmb-final-cta--band h2{ margin:0 !important; max-width:none !important; white-space:normal !important; font-family:var(--b-serif) !important; font-weight:700 !important;
  font-size:clamp(1.3rem,2.3vw,1.9rem) !important; line-height:1.25 !important; color:var(--b-head) !important; }
html body .bmb-final-cta--band .bmb-hero-ctas{ justify-content:flex-end !important; }
html body .bmb-final-cta .bmb-cta--primary{ background:var(--b-head) !important; border-color:var(--b-head) !important; color:#fff !important; }
@media (max-width:720px){
html body .home-body > .bmb-final-cta--band{ flex-direction:column; text-align:center !important; }
html body .bmb-final-cta--band h2{ text-align:center !important; }
html body .bmb-final-cta--band .bmb-hero-ctas{ justify-content:center !important; }
}
html body .home-body > .bmb-contact-band{ box-sizing:border-box; width:100vw; max-width:none; margin:0 calc(50% - 50vw); padding:1.15rem var(--b-gutter);
  background:var(--b-band) !important; color:#fff; }
html body .bmb-contact-band-in{ display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:.8rem clamp(1.2rem,3vw,2.4rem); }
html body .bmb-contact-band p{ display:flex; align-items:center; gap:.55rem; margin:0; font-family:var(--b-round); font-size:1.05rem; font-weight:500; color:#fff !important; }
html body .bmb-contact-icon{ display:inline-grid; place-items:center; width:34px; height:34px; color:#fff !important; border-radius:50%; }
html body .bmb-contact-icon:hover{ background:rgba(255,255,255,.14); }
html body .bmb-contact-icon:focus-visible, html body .bmb-contact-wa:focus-visible{ outline:3px solid #fff; outline-offset:2px; }
html body .bmb-contact-band svg{ display:block; }
html body .bmb-contact-rule{ width:1px; height:30px; background:rgba(255,255,255,.55); }
html body .bmb-contact-web svg{ color:#fff; }
html body .bmb-contact-wa{ display:inline-flex; align-items:center; gap:.55rem; padding:.55rem 1.3rem; border-radius:999px; background:#fff; color:var(--b-band) !important;
  font:700 1.08rem/1 var(--b-round); text-decoration:none; box-shadow:0 10px 22px -14px rgba(0,0,0,.6); }
@media (max-width:720px){
html body .bmb-contact-band-in{ flex-direction:column; gap:.75rem; }
html body .bmb-contact-rule{ width:min(240px,70%); height:1px; }
}
html body .bmb-contact-band .bmb-contact-social{ flex-wrap:wrap; justify-content:center; gap:.2rem 1.4rem; }
html body .bmb-contact-named, html body .bmb-contact-pair{ display:inline-flex; align-items:center; gap:.45rem; }
html body .bmb-contact-named{ padding-right:.6rem; border-radius:999px; color:#fff !important; text-decoration:none !important; }
html body .bmb-contact-named:hover .bmb-contact-icon{ background:rgba(255,255,255,.14); }
html body .bmb-contact-named:hover .bmb-contact-handle{ text-decoration:underline; text-underline-offset:3px; }
html body .bmb-contact-named:focus-visible{ outline:3px solid #fff; outline-offset:2px; }
@media (min-width:721px) and (max-width:1000px){
html body .bmb-contact-band .bmb-contact-social{ flex-basis:100%; }
html body .bmb-contact-rule{ display:none; }
}
html body .bmb-hero-kicker,
html body .home-body .bmb-eyebrow, html body .home-body .bmb-section-head .bmb-eyebrow, html body .home-body .bmb-testimonials-head-text .bmb-eyebrow,
html body .bmb-why2-eyebrow, html body .bmb-more-eyebrow, html body .bmb-specialists-eyebrow, html body .bmb-more-kicker,
html body .bmb-location-card .bmb-loc-hours strong{ color:var(--b-plum) !important; }
html body .bmb-spec-role, html body .bmb-spec-cred, html body .bmb-spec-clinic{ color:var(--b-body); }
html body .bmb-review-stars{ color:#9a7a3f !important; }
html body .bmb-spec-card:focus-visible, html body .bmb-coc-card:focus-visible, html body .bmb-more-item > summary:focus-visible,
html body.home-concept .home-preview .bmb-circle .bmb-circle-core:focus-visible,
html body.home-concept .home-preview .bmb-circle .bmb-circle-stage:focus-visible{ outline-color:var(--b-plum-2) !important; }
html body .home-body :is(.bmb-cta, .bmb-consult-cta, .bmb-circle-photo-cta, .bmb-blog-card, .bmb-loc-maplink, .bmb-loc-social-link, .bmb-loc-contact a, .bmb-more a):focus-visible{
  outline:3px solid var(--b-plum-2); outline-offset:3px; }
html body .bmb-contact-icon{ width:44px; height:44px; }
html body .bmb-contact-wa{ min-height:44px; box-sizing:border-box; }
html body .home-preview .bmb-location-card .bmb-loc-social-link{ width:44px; height:44px; }
html body .bmb-more-about a{ display:inline-block; padding:.6rem .25rem; }
@media (max-width:720px){
html body.home-concept .bmb-review-arrow{ width:44px; height:44px; }
html body.home-concept .bmb-review-nav .bmb-review-dot{ position:relative; }
html body.home-concept .bmb-review-nav .bmb-review-dot::before{ content:""; position:absolute; inset:-14px -3px; }
html body .bmb-final-cta--band .bmb-hero-ctas .bmb-cta{ min-width:14rem; justify-content:center; text-align:center; }
}
html body .bmb-hero-kicker, html body .bmb-hero-h1, html body main h2, html body main h3{ text-wrap:balance; }
html body .home-body .bmb-section-lead, html body .bmb-hero-position, html body .bmb-more-lead, html body .bmb-consult-copy > p,
html body .bmb-circle-photo .bmb-circle-intro, html body .bmb-testi-intro p{ text-wrap:pretty; }
@media (min-width:721px){
html body .bmb-hero-display .bmb-hd-keep{ white-space:nowrap; }
}
html body .bmb-more-badges{ margin-top:1rem !important; }
html body .bmb-location-card .bmb-loc-hours strong + br{ display:none; }
html body .home-body .bmb-blog-grid > .bmb-blog-card--more{ grid-column:1 / -1; flex-direction:row !important; flex-wrap:wrap; align-items:center !important;
  justify-content:center !important; gap:.35rem 1.4rem; padding:1.1rem 1.6rem !important; text-align:center; }
html body .home-body .bmb-blog-grid > .bmb-blog-card--more > h3{ margin:0 !important; }
html body .home-body .bmb-blog-grid > .bmb-blog-card--more > p{ margin:0 !important; max-width:52ch; }
html body .home-body .bmb-blog-grid > .bmb-blog-card--more .bmb-blog-more-arrow{ margin-top:0 !important; flex:0 0 auto; }
html body .bmb-stage--calm .bmb-hero-core::after{ display:none !important; }
html body .bmb-hero-display .bmb-hd-em{ position:relative; }
html body .bmb-hero-display .bmb-hd-em::after{ content:""; position:absolute; left:calc(100% + .1em); bottom:.34em; width:1.5em; aspect-ratio:2/1;
  background:var(--b-leaf) center/contain no-repeat; opacity:.62; transform:rotate(-10deg); transform-origin:0 100%; pointer-events:none; }
@media (min-width:1100px), (min-width:960px) and (min-aspect-ratio:1333/1000){
html body.home-concept .home-body .bmb-stage--calm{
    --hero-img:min(100vw, calc(109vw - 136px), calc((max(100vh, 1180px) - 362px) * 2.0444)); }
html body.home-concept .home-body .bmb-stage--calm .bmb-hero-bgimg::before{
    left:max(0px, calc(34px + var(--hero-pad) + var(--hero-text) + 16px - .335 * var(--hero-img)), calc(100% - var(--hero-img))) !important; }
}
html body .bmb-trust-eyebrow.bmb-trust-line{ font-weight:700 !important; color:var(--b-head) !important; }
html body .bmb-trust-pipe{ color:var(--b-mauve); }
html body .home-preview .bmb-stage--calm .bmb-trust-label, html body .bmb-trust-label{ font-family:var(--b-round) !important; font-style:normal !important;
  font-weight:600 !important; font-size:.86rem !important; line-height:1.4 !important; color:var(--b-head) !important; }
html body .bmb-trust-num .bmb-trust-stars{ display:inline-block; align-self:center; margin-left:.28em; font-family:var(--b-round); font-size:.36em; font-weight:400;
  line-height:1; letter-spacing:.06em; color:var(--b-gold) !important; -webkit-text-fill-color:var(--b-gold) !important; }
@media (max-width:720px){
html body .bmb-trust-num .bmb-trust-stars{ margin-left:.18em; font-size:.44em; letter-spacing:.01em; }
}
html body .bmb-recog-panel{ background:#fff !important; border-color:#f1e6ef !important; box-shadow:0 14px 34px -28px rgba(74,22,80,.35) !important; }
html body .bmb-circle-photo-frame.bmb-circle-photo-frame--cards{ position:relative; flex:1 1 auto; display:flex; min-height:0 !important; padding:1rem 1.1rem 1.15rem;
  background:linear-gradient(165deg,#f6f0fa 0%,#ece2f5 100%); border-top:1px solid var(--b-cream-line); }
html body .bmb-circle-photo-frame--cards .bmb-coc-cards{ position:static; width:auto; flex:1 1 auto; margin:0; display:flex; flex-direction:column; justify-content:space-between; gap:.7rem; }
html body .bmb-circle-photo-frame--cards .bmb-coc-card{ display:block; margin:0; padding:.85rem 1.1rem .95rem; border-radius:16px; background:#fff; border:1px solid #ece2f3;
  -webkit-backdrop-filter:none; backdrop-filter:none; box-shadow:0 12px 26px -22px rgba(60,30,70,.5); transition:box-shadow .2s ease; }
html body .bmb-circle-photo-frame--cards .bmb-coc-card-title{ display:flex; align-items:center; gap:.5rem; margin:0 0 .35rem; font:700 .78rem/1.3 var(--b-round);
  letter-spacing:.16em; text-transform:uppercase; color:var(--b-head); }
html body .bmb-circle-photo-frame--cards .bmb-coc-card-title::before{ content:""; flex:none; width:.6rem; height:.6rem; border-radius:50%; background:var(--dot); }
html body .bmb-circle-photo-frame--cards .bmb-coc-card-line{ display:block; margin:0; font:500 .95rem/1.75 var(--b-round); color:var(--b-text); }
html body .bmb-circle-photo-frame--cards .bmb-coc-card-line a{ color:var(--b-head); font-weight:600; text-decoration:underline; text-decoration-color:var(--b-lilac);
  text-decoration-thickness:1px; text-underline-offset:3px; }
html body .bmb-circle-photo-frame--cards .bmb-coc-card-line a:hover{ color:var(--b-plum-2); text-decoration-color:currentColor; }
html body .bmb-circle-photo-frame--cards .bmb-coc-card-line a:focus-visible{ outline:2px solid var(--b-plum-2); outline-offset:2px; border-radius:3px; }
html body .bmb-circle-photo-frame--cards .bmb-coc-item{ color:var(--b-text); font-weight:600; }
html body .bmb-circle-photo-frame--cards .bmb-coc-sep{ margin:0 .2rem; color:var(--b-mauve); }
@media (max-width:1024px){
html body .bmb-circle-photo-frame.bmb-circle-photo-frame--cards{ min-height:0 !important; }
}
@media (max-width:720px){
html body .bmb-circle-photo-frame.bmb-circle-photo-frame--cards{ padding:.8rem .8rem .9rem; }
html body .bmb-circle-photo-frame--cards .bmb-coc-cards{ margin:0; gap:.6rem; }
html body .bmb-circle-photo-frame--cards .bmb-coc-card{ padding:.8rem .95rem .85rem; }
html body .bmb-circle-photo-frame--cards .bmb-coc-card-line{ font-size:.93rem; line-height:1.85; }
}
html body .bmb-specialists-head::before{ display:none !important; }
html body .home-body .bmb-specialists-head h2{ display:flex; align-items:center; justify-content:center; gap:.5em; margin:0 0 .55rem !important;
  font-family:var(--b-serif) !important; font-size:clamp(1.45rem,2.4vw,2.05rem) !important; font-weight:600 !important; line-height:1.2 !important;
  letter-spacing:.05em !important; text-transform:uppercase !important; color:var(--b-head) !important; }
@media (min-width:761px){
html body .home-body .bmb-specialists-head h2{ white-space:nowrap; }
}
html body .home-body .bmb-specialists-head h2::before, html body .home-body .bmb-specialists-head h2::after{ content:""; flex:none; width:clamp(54px,5.5vw,84px);
  aspect-ratio:2/1; background:var(--b-leaf) center/contain no-repeat; opacity:.65; }
html body .home-body .bmb-specialists-head h2::before{ transform:scaleX(-1); }
html body .bmb-specialists-sub{ margin:0 auto .7rem !important; font-family:var(--b-serif) !important; font-style:italic; font-weight:500;
  font-size:clamp(1.12rem,1.7vw,1.4rem) !important; line-height:1.4 !important; color:var(--b-plum-2) !important; text-align:center; text-wrap:balance; }
html body .bmb-specialists-head{ max-width:960px !important; }
html body .bmb-specialists-head .bmb-section-lead{ max-width:62ch; margin-left:auto !important; margin-right:auto !important; text-wrap:pretty; }
html body .bmb-specialists-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); max-width:1000px; gap:1.4rem; }
html body .bmb-spec-photo{ aspect-ratio:1/1; box-shadow:0 0 0 1px #eee4f5; }
html body .bmb-spec-photo img{ object-position:50% 20%; }
html body .bmb-specialists .bmb-spec-name{ display:block; }
html body .bmb-specialists .bmb-spec-name .bmb-spec-check{ display:inline-block; margin-left:.25rem; vertical-align:-2px; }
html body .bmb-spec-alt{ font-family:var(--b-round); font-size:.95rem; font-weight:600; line-height:1.35; letter-spacing:.04em; color:var(--b-body); }
@media (max-width:1199px){
html body .bmb-specialists-grid{ max-width:900px; gap:1.1rem; }
}
@media (max-width:760px){
html body .bmb-specialists-grid{ gap:.8rem; }
html body .home-body .bmb-specialists-head h2{ gap:.4em; font-size:1.45rem !important; letter-spacing:.04em !important; }
html body .home-body .bmb-specialists-head h2::before, html body .home-body .bmb-specialists-head h2::after{ width:40px; }
html body .bmb-spec-alt{ font-size:.85rem; }
}
@media (max-width:420px){
html body .home-body .bmb-specialists-head h2::before, html body .home-body .bmb-specialists-head h2::after{ display:none; }
}
@media (min-width:721px){
html body .bmb-trust-stat:not(:has(.bmb-trust-label)){ justify-content:center !important; padding-top:1rem !important; }
}
@media (min-width:1100px), (min-width:960px) and (min-aspect-ratio:1333/1000){
html body.home-concept .bmb-stage--calm > .bmb-stage-frame{ background:#f3edf7; }
}
html body .bmb-spec-role{ text-wrap:balance; }
html body .bmb-specialists-grid > li, html body .bmb-spec-card{ min-width:0; }
html body .bmb-spec-foot{ flex-wrap:wrap; row-gap:.45rem; }
html body .bmb-spec-cred{ overflow-wrap:anywhere; }
/* from /css/pages/clinic-links.css */
html body .bmb-classes-row{ max-width:1220px; margin:clamp(2.2rem,4vw,3rem) auto 0; text-align:center; }
html body .bmb-classes-row h3.bmb-classes-title{
  margin:0 0 1rem !important; color:#553f63 !important; font-family:"Playfair Display", Georgia, serif !important;
  font-size:clamp(1.25rem,1.9vw,1.55rem) !important; font-weight:500 !important; line-height:1.25 !important; letter-spacing:0 !important;
}
html body .bmb-classes-row ul.bmb-classes-list{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; justify-content:center; gap:.7rem; }
html body .bmb-classes-row ul.bmb-classes-list > li{ margin:0; padding:0; }
html body .bmb-classes-row ul.bmb-classes-list a{
  display:inline-flex; align-items:center; gap:.5rem; min-height:44px; padding:.55rem 1.15rem; border-radius:999px;
  background:#fff; border:1px solid #e7ddef; color:#553f63 !important; font-size:.95rem; font-weight:600; line-height:1.3; text-decoration:none;
  transition:background-color .18s ease, border-color .18s ease;
}
html body .bmb-classes-row ul.bmb-classes-list a::after{ content:"\2192"; color:#7a6390; }
html body .bmb-classes-row ul.bmb-classes-list a:hover, html body .bmb-classes-row ul.bmb-classes-list a:focus-visible{ background:#f3edf7; border-color:#d4c5e3; }
html body .bmb-classes-row ul.bmb-classes-list a:focus-visible{ outline:2px solid #7a6390; outline-offset:2px; }
@media (max-width:520px){
html body .bmb-classes-row ul.bmb-classes-list{ flex-direction:column; align-items:stretch; }
html body .bmb-classes-row ul.bmb-classes-list a{ justify-content:space-between; width:100%; text-align:left; gap:12px; }
}
/* from /css/soft.css */
:root{
  --soft-plum:#553f63; --soft-plum-2:#7a6390; --soft-violet:#a58bbb;
  --soft-lav:#f3edf7; --soft-lav-2:#e7ddef; --soft-lilac:#d4c5e3; --soft-mist:#faf7fc;
  --soft-ink:#3f3346; --soft-body:#62576a; --soft-gold:#8c6a2c;
  /* the old saturated brand purple, remapped */
  --brand:#553f63; --brand-dk:#43304f; --brand-700:#3f2f48;
  --brand-50:#faf7fc; --brand-100:#f3edf7; --brand-200:#e7ddef;
}
html body .site-header:not(.is-floating){ background:rgba(255,255,255,.97) !important; border-bottom:1px solid var(--soft-lav-2) !important;
  box-shadow:none !important; backdrop-filter:none !important; -webkit-backdrop-filter:none !important; }
html body .site-header .brand-logo-dark, html body .site-header .brand-logo-pill{ display:none !important; }
html body .site-header .brand-logo-light{ display:block !important; opacity:1 !important; }
html body .site-header.is-floating .brand-logo-light{ display:none !important; }
html body .site-header.is-floating .brand-logo-pill{ display:block !important; }
html body .site-header .primary-nav .nav-root > li > a,
html body.is-immersive-page .site-header .primary-nav .nav-root > li > a,
html body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a{ color:var(--soft-plum) !important; }
html body .site-header .primary-nav .nav-root > li > a:hover,
html body .site-header .primary-nav .nav-root > li > a:focus-visible,
html body.is-immersive-page .site-header .primary-nav .nav-root > li > a:hover,
html body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a:hover,
html body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a:focus-visible{ color:var(--soft-plum-2) !important; }
html body .site-header .primary-nav .nav-root > li > a.nav-cta,
html body.is-immersive-page .site-header .primary-nav .nav-root > li > a.nav-cta,
html body.is-immersive-page .site-header.is-floating .primary-nav .nav-root > li > a.nav-cta{ color:#fff !important; background:var(--soft-plum) !important; border-color:var(--soft-plum) !important; }
html body .site-header svg, html body .site-header .nav-utility a, html body .site-header .nav-utility button{ color:var(--soft-plum) !important; }
html body .site-header .bmb-nav-toggle-bar, html body .site-header.is-floating .bmb-nav-toggle-bar{ background:var(--soft-plum) !important; }
html body .site-header .brand{ min-height:44px !important; align-items:center; }
html body .site-header .sub-menu, html body .site-header .primary-nav ul ul{ background:#fff !important; border-color:var(--soft-lav-2) !important; }
html body .site-header .sub-menu a, html body .site-header .primary-nav ul ul a{ color:var(--soft-ink) !important; }
html body .site-header .sub-menu a:hover, html body .site-header .primary-nav ul ul a:hover{ background:var(--soft-lav) !important; color:var(--soft-plum) !important; }
@media (max-width:768px){
html body.mobile-nav-open .site-header.site-header{ background:#fff !important; border-bottom:1px solid var(--soft-lav-2) !important; }
html body.mobile-nav-open .site-header .primary-nav{ background:var(--soft-mist) !important; }
html body .site-header .primary-nav .nav-root > li.has-submenu{ border-bottom-color:var(--soft-lav-2) !important; }
html body .site-header .primary-nav .nav-root > li > a:not(.nav-cta){ color:var(--soft-plum) !important; }
html body .site-header .primary-nav .submenu{ background:transparent !important; border-color:transparent !important; box-shadow:none !important; }
html body .site-header .primary-nav .submenu a{ color:var(--soft-ink) !important; background:transparent !important; }
html body .site-header .primary-nav .submenu a:hover, html body .site-header .primary-nav .submenu a:focus-visible{ color:var(--soft-plum-2) !important; background:transparent !important; }
html body .site-header .primary-nav .nav-search-item .nav-search-btn{ background:#fff !important; border-color:var(--soft-lilac) !important; color:var(--soft-body) !important; }
html body .site-header .primary-nav .nav-search-item .nav-search-label{ color:var(--soft-body) !important; }
html body .site-header .primary-nav .nav-root > li.nav-account-item > a.nav-account,
  html body .site-header .primary-nav .nav-root > li.nav-cart-item > a.nav-cart{ background:var(--soft-lav) !important; border-color:var(--soft-lav-2) !important; color:var(--soft-plum) !important; }
html body .site-header .nav-account .nav-account-face, html body .site-header .nav-cart .nav-cart-face{ border-color:var(--soft-violet) !important; }
html body .site-header .nav-account.is-in .nav-account-face{ background:var(--soft-plum) !important; border-color:var(--soft-plum) !important; color:#fff !important; }
html body .site-header .primary-nav .nav-root > li.nav-tel-item > a.nav-tel{ color:var(--soft-body) !important; }
html body .site-header .primary-nav .nav-tel strong{ color:var(--soft-plum) !important; }
html body.mobile-nav-open .site-header button.bmb-nav-toggle > span.bmb-nav-toggle-bar{ background:var(--soft-plum) !important; }
}
html body .site-footer{ background:var(--soft-mist) !important; border-top:1px solid var(--soft-lav-2) !important; }
html body .site-footer, html body .site-footer a, html body .site-footer p, html body .site-footer li,
html body .site-footer h2, html body .site-footer h3, html body .site-footer h4{ color:var(--soft-body) !important; }
html body .site-footer .footer-col-head{ color:var(--soft-plum) !important; }
html body .site-footer > *:last-child{ background:var(--soft-plum) !important; margin:2rem calc(50% - 50vw) 0 !important; padding:1rem 22px !important; max-width:none !important; width:auto !important; }
html body .site-footer > *:last-child, html body .site-footer > *:last-child *{ color:rgba(255,255,255,.9) !important; }
html body .site-footer{ padding-bottom:0 !important; }
@media (max-width:768px){
html body .site-footer li a{ display:inline-block !important; padding-top:12px !important; padding-bottom:12px !important; margin-top:-12px !important; margin-bottom:-12px !important; }
html body .site-footer .footer-social a{ padding:12px !important; margin:-12px !important; }
html body .site-footer > *:last-child{ padding-left:84px !important; padding-right:84px !important; }
}
html body .bmb-cta--primary, html body .cta:not(section), html body .button-primary{ background:var(--soft-plum) !important; border-color:var(--soft-plum) !important; color:#fff !important; }
html body .bmb-cta--primary:hover, html body .bmb-cta--primary:focus-visible{ background:var(--brand-dk) !important; border-color:var(--brand-dk) !important; color:#fff !important; box-shadow:0 12px 28px -8px rgba(85,63,99,.38) !important; }
html body .site-header .primary-nav .nav-root > li > a.nav-cta{ box-shadow:0 4px 12px -4px rgba(85,63,99,.35) !important; }
html body .site-header .primary-nav .nav-root > li > a.nav-cta:hover,
html body .site-header .primary-nav .nav-root > li > a.nav-cta:focus-visible{ background:var(--brand-dk) !important; border-color:var(--brand-dk) !important; color:#fff !important; box-shadow:0 6px 16px -4px rgba(85,63,99,.42) !important; }
html body .bmb-consent-btn--primary{ background:var(--soft-plum) !important; border-color:var(--soft-plum) !important; }
html body .bmb-consent-btn--secondary{ color:var(--soft-plum) !important; border-color:var(--soft-plum) !important; }
html body .bmb-consent-text a{ color:var(--soft-plum) !important; }
html body .bmb-consent-btn:focus-visible, html body .bmb-consent-pref input[type=checkbox]:focus-visible{ outline:2px solid var(--soft-plum-2) !important; outline-offset:2px !important; }
html body .bmb-consent-btn--secondary:hover{ background:var(--soft-lav) !important; }
html body .bmb-consent-btn--primary:hover{ background:var(--brand-dk) !important; border-color:var(--brand-dk) !important; opacity:1 !important; }
html body .bmb-consent-actions .bmb-consent-btn{ min-height:44px !important; }
html body .primary-nav .submenu, html body .primary-nav .flyout, html body .primary-nav .flyout-panel{ background:#ffffff !important; border-color:var(--soft-lav-2) !important; box-shadow:0 18px 40px -14px rgba(85,63,99,.22) !important; }
html body .primary-nav .submenu a, html body .primary-nav .flyout-cat-label{ color:var(--soft-body) !important; }
html body .primary-nav .submenu a:hover, html body .primary-nav .submenu a:focus-visible,
html body .primary-nav .flyout-cat.is-open > .flyout-cat-label{ color:var(--soft-plum) !important; background:var(--soft-lav) !important; }
html body .site-header .nav-cart:focus-visible, html body .site-header .nav-account:focus-visible,
html body .site-header .primary-nav a:focus-visible{ outline:2px solid var(--soft-violet) !important; outline-offset:3px !important; }
@media (max-width:768px){
html body.mobile-nav-open.mobile-nav-open .site-header.site-header, html body.mobile-nav-open.mobile-nav-open .site-header.is-floating{ background:#ffffff !important; border-bottom:1px solid var(--soft-lav-2) !important; }
html body.mobile-nav-open.mobile-nav-open .primary-nav.primary-nav, html body .primary-nav.primary-nav{ background:rgba(255,255,255,.98) !important; }
html body .primary-nav .nav-root > li{ border-bottom-color:var(--soft-lav-2) !important; }
html body .primary-nav .nav-root > li > a, html body .primary-nav .nav-root > li > button,
  html body .primary-nav .submenu-toggle, html body .primary-nav .nav-root > li > a svg{ color:var(--soft-plum) !important; }
html body .primary-nav .submenu{ background:transparent !important; box-shadow:none !important; }
html body .primary-nav .nav-search-item .nav-search-btn{ background:#ffffff !important; border-color:var(--soft-lilac) !important; color:var(--soft-body) !important; }
html body .primary-nav .nav-search-item .nav-search-btn:hover, html body .primary-nav .nav-search-item .nav-search-btn:focus-visible{ background:var(--soft-mist) !important; border-color:var(--soft-violet) !important; }
html body .primary-nav .nav-root > li.nav-account-item > a.nav-account,
  html body .primary-nav .nav-root > li.nav-cart-item > a.nav-cart{ background:#ffffff !important; border-color:var(--soft-lilac) !important; color:var(--soft-plum) !important; }
html body .primary-nav .nav-root > li.nav-account-item > a.nav-account:hover,
  html body .primary-nav .nav-root > li.nav-cart-item > a.nav-cart:hover{ background:var(--soft-mist) !important; border-color:var(--soft-violet) !important; }
html body .nav-account .nav-account-face, html body .nav-cart .nav-cart-face{ border-color:var(--soft-violet) !important; color:var(--soft-plum) !important; }
html body .nav-account.is-in .nav-account-face{ background:var(--soft-plum) !important; border-color:var(--soft-plum) !important; color:#ffffff !important; }
html body .primary-nav .nav-root > li.nav-tel-item > a.nav-tel{ color:var(--soft-body) !important; }
html body .primary-nav .nav-tel strong{ color:var(--soft-plum) !important; }
html body.mobile-nav-open .bmb-nav-toggle-bar{ background:var(--soft-plum) !important; }
html body.mobile-nav-open #primary-nav{ background:var(--soft-mist) !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important; }
html body.mobile-nav-open .site-header .brand{ position:relative !important; z-index:96 !important; }
html body.mobile-nav-open #primary-nav .nav-search-item .nav-search-btn,
  html body.mobile-nav-open #primary-nav .nav-root > li.nav-account-item > a.nav-account:not(.is-in),
  html body.mobile-nav-open #primary-nav .nav-root > li.nav-cart-item > a.nav-cart{ background:#ffffff !important; border-color:var(--soft-lilac) !important; }
html body.mobile-nav-open #primary-nav .submenu a{ color:var(--soft-ink) !important; }
html body.mobile-nav-open #primary-nav .nav-tel{ min-height:44px !important; }
}
html body.svc-cream:has(.service-preview--immersive,.service-preview--archive,.service-preview > section.service-faqs,.service-preview > section.service-hero--split) .service-preview > :not(.service-hero--immersive) :is(h1,h2,h3,h4){ color:#553f63 !important; }
html body.svc-cream:has(.service-preview--immersive,.service-preview--archive,.service-preview > section.service-faqs,.service-preview > section.service-hero--split) .service-preview > :not(.service-hero--immersive) :is(h1,h2,h3,h4) em{ color:#7a6390 !important; }
html body.svc-cream:has(.service-preview--immersive,.service-preview--archive,.service-preview > section.service-faqs,.service-preview > section.service-hero--split) .service-preview > :not(.service-hero--immersive) :is(p,li,dd):not([class*="title"]) > a:not(.bmb-cta):not(.service-related-cta):not(.service-floating-cta){
  text-decoration-line:underline !important; text-decoration-color:#a58bbb !important; text-decoration-thickness:1px; text-underline-offset:3px; }
html body.svc-cream:has(.service-preview--immersive,.service-preview--archive,.service-preview > section.service-faqs,.service-preview > section.service-hero--split) .service-preview > :not(.service-hero--immersive) :is(p,li,dd):not([class*="title"]) > a:not(.bmb-cta):not(.service-related-cta):not(.service-floating-cta):is(:hover,:focus-visible){
  color:#7a6390 !important; text-decoration-color:#7a6390 !important; }
html body.svc-cream:has(.service-preview--immersive,.service-preview--archive,.service-preview > section.service-faqs,.service-preview > section.service-hero--split) .service-preview .service-cta :is(h1,h2,h3){ color:#553f63 !important; }
html body.svc-cream:has(.service-preview--immersive,.service-preview--archive,.service-preview > section.service-faqs,.service-preview > section.service-hero--split) .service-preview .service-cta :is(h1,h2,h3) em{ color:#7a6390 !important; }
html body.svc-cream:has(.service-preview--immersive,.service-preview--archive,.service-preview > section.service-faqs,.service-preview > section.service-hero--split) .service-preview .service-cta :is(p,li,span,dt,dd){ color:#62576a !important; }
html:has(link[href*="/css/pages/article.css"]) body :is(.bmb-magazine-preview, .bmb-article-preview) :is(h1,h2,h3,h4,h5,h6){ color:#553f63 !important; }
html body aside.bmb-promo-pause.bmb-promo-pause[role="note"][aria-label]{
  display:block !important; box-sizing:border-box !important; float:none !important;
  /* positioned like the service sections (z-index 1): a static block is painted under the
     fixed hero photo on the immersive service pages, whose hero isolates its own stacking layer */
  position:relative !important; z-index:1 !important;
  /* as wide as the text around it, never wider than 760px, and 16px clear of the screen edge
     when its parent is full-bleed (top of a product page, between two full-width sections) */
  width:auto !important; max-width:min(760px, 100%, calc(100vw - 32px)) !important; grid-column:1 / -1;
  margin:1.25rem auto !important; padding:.7rem 1rem !important;
  background:#f7f2fa !important; background-image:none !important; box-shadow:none !important;
  border:1px solid #e7ddef !important; border-radius:12px !important;
  color:#5b4f63 !important; text-align:left !important; }
html body aside.bmb-promo-pause.bmb-promo-pause[role="note"][aria-label] .bmb-promo-pause-inner{ max-width:none !important; margin:0 !important; padding:0 !important; }
html body aside.bmb-promo-pause.bmb-promo-pause[role="note"][aria-label] p.bmb-promo-pause-msg.bmb-promo-pause-msg{
  margin:0 !important; padding:0 !important; max-width:none !important;
  font-family:'Quicksand', system-ui, -apple-system, "Segoe UI", sans-serif !important; font-style:normal !important;
  font-size:.875rem !important; font-weight:500 !important; line-height:1.55 !important;
  letter-spacing:0 !important; text-transform:none !important; text-align:left !important; color:#5b4f63 !important; }
html body aside.bmb-promo-pause.bmb-promo-pause[role="note"][aria-label] p.bmb-promo-pause-msg.bmb-promo-pause-msg a{
  color:#553f63 !important; font-weight:700 !important; background:none !important; padding:0 !important; border:0 !important;
  text-decoration:underline !important; text-decoration-color:#a58bbb !important;
  text-decoration-thickness:1px !important; text-underline-offset:3px !important; }
html body aside.bmb-promo-pause.bmb-promo-pause[role="note"][aria-label] p.bmb-promo-pause-msg.bmb-promo-pause-msg a:focus-visible{ outline:2px solid #553f63 !important; outline-offset:2px !important; border-radius:2px; }
html:has(link[href*="/css/pages/article.css"]) body .site-header :is(.nav-search-btn, .nav-account, .nav-cart):focus-visible{ outline:2px solid #553f63 !important; outline-offset:2px !important; }
@media (min-width:769px){
html:has(link[href*="/css/pages/article.css"]) body .site-header :is(.nav-search-btn, .nav-account, .nav-cart):is(:hover, :focus-visible){ background:#f3edf7 !important; border-color:#d4c5e3 !important; }
}
html body.cream-page main :is(h1,h2,h3,h4) em{ color:#7a6390 !important; }
html body.cream-page:not(#_c) main :is(.about-cta,.contact-cta,.partners-cta,.portfolio-cta,.terms-cta,.about-numbers,.portfolio-stats) :is(h1,h2,h3,h4){ color:#553f63 !important; }
html body.cream-page:not(#_c) main :is(.about-cta,.contact-cta,.partners-cta,.portfolio-cta,.terms-cta,.about-numbers,.portfolio-stats) :is(p,li,span,dd,dt,blockquote,figcaption,small):not(.bmb-cta):not(.bmb-eyebrow):not([class*="-stat-"]){ color:#62576a !important; }
html body.cream-page:not(#_c) main .about-founder-quote :is(p,blockquote,span,li,em,strong){ color:#553f63 !important; }
html body.cream-page:not(#_c) main .portfolio-story-tag :is(span,p,em,strong){ color:#553f63 !important; }
html body.cream-page:not(#_c) main .bmb-event-hero-content :is(h1,h2,p,span,li,small,time,strong){ color:#fff !important; }
html body.preg-page .site-header :is(.nav-account,.nav-cart,.nav-search-btn):focus-visible{ outline-color:#a58bbb !important; }
html:has(link[href*="store-cart.css"],link[href*="bmb-account.css"]) body.svc-cream .site-header :is(.nav-account,.nav-cart,.nav-search-btn):focus-visible{ outline-color:#7a6390 !important; }
html:has(link[href*="store-cart.css"],link[href*="bmb-account.css"]) body.svc-cream .service-preview :is(h1,h2,h3) em{ color:#7a6390 !important; }
html:has(link[href*="store-cart.css"],link[href*="bmb-account.css"]) body.svc-cream .service-preview .service-cta :is(p,li,span,dt,dd):not(.bmb-eyebrow){ color:#62576a !important; }
@media (max-width:768px){
html body.home-concept.mobile-nav-open .site-header,
  html body.home-concept.mobile-nav-open .site-header.is-floating,
  html body.mobile-nav-open:has(main.proto-page) .site-header,
  html body.mobile-nav-open:has(main.proto-page) .site-header.is-floating,
  html body.mobile-nav-open:has(main.proto-sleep) .site-header,
  html body.mobile-nav-open:has(main.proto-sleep) .site-header.is-floating{
    background:#fff !important; border-bottom:1px solid #e7ddef !important; }
html body.home-concept.mobile-nav-open .primary-nav,
  html body.mobile-nav-open:has(main.proto-page) .primary-nav,
  html body.mobile-nav-open:has(main.proto-sleep) .primary-nav{
    background:#faf7fc !important; }
}
html:has(> body.home-concept){ background:#fff !important; }
html body.home-concept{
  --c-plum:#553f63; --c-purple:#7a6390;
  --bg:#faf7fc; --bg-2:#f3edf7; --bg-3:#e7ddef;
}
html body.home-concept .home-preview .bmb-stage,
html body.home-concept .home-preview .bmb-stage--calm{ background-color:#f3edf7 !important; }
html body.home-concept .home-preview .bmb-circle{
  --pregnancy:#553f63; --pregnancy-dot:#553f63; --recovery:#d4c5e3; --recovery-dot:#a58bbb; }
html body.home-concept .home-preview .bmb-circle-core-cta,
html body.home-concept .home-preview .bmb-circle-core-cta *{ color:#7a6390 !important; -webkit-text-fill-color:#7a6390 !important; }
html body.home-concept .home-preview .bmb-circle-core:hover{ background:#faf7fc !important; }
html body.home-concept .home-preview .bmb-circle-core:focus-visible,
html body.home-concept .home-preview .bmb-circle-stage:focus-visible{ outline-color:#d4c5e3 !important; }
html body.home-concept .home-preview .bmb-circle-stage:hover{ background:#faf7fc !important; }
html body.home-concept .home-preview .bmb-circle-stage:hover .bmb-circle-stage-line{ color:#553f63 !important; }
html body.home-concept .home-preview .bmb-circle-stage-label{ color:#7a6390 !important; }
html body.home-concept .home-preview .bmb-consult-media::after{
  background:linear-gradient(90deg, rgba(231,221,239,.55), rgba(231,221,239,0) 40%) !important; }
html body.home-concept .home-preview .bmb-cta--ghost:hover,
html body.home-concept .home-preview .bmb-cta--ghost:focus-visible,
html body.home-concept .home-preview .bmb-stage-frame > .bmb-hero .bmb-cta.bmb-cta--ghost:hover{
  background:#f3edf7 !important; color:#553f63 !important; border-color:#a58bbb !important; }
html body.home-concept .home-preview .bmb-loc-maplink:hover,
html body.home-concept .home-preview .bmb-loc-maplink:focus-visible{ background:#553f63 !important; border-color:#553f63 !important; color:#fff !important; }
html body.home-concept .home-preview .bmb-location-card .bmb-loc-social-link:hover{ color:#553f63 !important; border-color:#553f63 !important; background:#f3edf7 !important; }
html body.home-concept .bmb-review-arrow:hover:not(:disabled){ background:#553f63 !important; border-color:#553f63 !important; color:#fff !important; }
html body.home-concept .bmb-review-dot.is-active{ background:#553f63 !important; }
@media (min-width:769px) and (max-width:1219px){
html body.is-immersive-page .site-header .primary-nav .nav-root{
    flex-wrap:nowrap !important; gap:0 clamp(10px,1.3vw,18px) !important; }
html body.is-immersive-page .site-header .primary-nav .nav-root > li > a{
    font-size:clamp(13.5px, calc(3vw - 14px), 16px) !important; white-space:nowrap !important; }
html body.is-immersive-page .site-header .primary-nav .nav-root > li.nav-account-item,
  html body.is-immersive-page .site-header .primary-nav .nav-root > li.nav-cart-item,
  html body.is-immersive-page .site-header .primary-nav .nav-root > li.nav-cta-item{ margin-left:0 !important; }
}
@media (min-width:769px) and (max-width:899px){
html body.is-immersive-page .site-header .primary-nav .nav-root > li > a{ font-size:14.5px !important; }
}
html body.home-concept .bmb-review-arrow{ border-color:#d4c5e3 !important; }
html body.home-concept .bmb-review-dot:not(.is-active){ background:#d4c5e3 !important; }
@media (min-width:721px) and (max-width:959px), (min-width:960px) and (max-width:1099px) and (max-aspect-ratio:1333/1000){
html body.home-concept .bmb-stage--calm .bmb-hero-bgimg::before{ top:0 !important; bottom:auto !important;
    height:calc(var(--header-h, 115px) - 2rem + 56.25vw) !important;
    background-size:100% auto !important; background-position:50% 100% !important; }
html body.home-concept .bmb-stage--calm .bmb-hero-scrim{ background:
    linear-gradient(180deg, rgba(250,247,252,0) 0, rgba(250,247,252,0) calc(var(--header-h, 115px) - 2rem + 56.25vw - 70px), #faf7fc calc(var(--header-h, 115px) - 2rem + 56.25vw), #f3edf7 100%) !important; }
html body.home-concept .bmb-stage--calm .bmb-stage-frame{ min-height:0 !important; }
html body.home-concept .bmb-stage--calm .bmb-stage-frame > .bmb-hero{ padding:calc(var(--header-h, 115px) - 2rem + 56.25vw + 2rem) 0 0 !important; min-height:0 !important; }
html body.home-concept .bmb-stage--calm .bmb-stage-frame > .bmb-hero > .bmb-hero-core{ padding:0 clamp(22px,6vw,56px) !important; max-width:none !important; width:100% !important; transform:none !important; }
html body.home-concept .bmb-stage--calm .bmb-hero-core::after{ display:none !important; }
}
@media (min-width:1100px), (min-width:960px) and (min-aspect-ratio:1333/1000){
html body.home-concept .bmb-stage--calm{ --hero-pad:clamp(2rem,5vw,7.5rem); --hero-text:min(36vw,562px); --hero-img:min(100vw, calc(109vw - 136px)); }
html body.home-concept .bmb-stage--calm .bmb-hero-bgimg::before{
    top:64px !important; bottom:auto !important; height:min(calc(100% - 362px), .5625 * var(--hero-img)) !important;
    left:max(0px, calc(34px + var(--hero-pad) + var(--hero-text) + 16px - .335 * var(--hero-img))) !important; right:0 !important; width:auto !important;
    background-size:var(--hero-img) auto !important; background-position:0 20% !important;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 16vw),linear-gradient(180deg,#000 84%,transparent 100%) !important;
    mask-image:linear-gradient(90deg,transparent 0,#000 16vw),linear-gradient(180deg,#000 84%,transparent 100%) !important;
    -webkit-mask-composite:source-in !important; mask-composite:intersect !important; }
html body.home-concept .bmb-stage--calm .bmb-stage-frame > .bmb-hero > .bmb-hero-core{
    padding-left:var(--hero-pad) !important; max-width:calc(var(--hero-pad) + var(--hero-text)) !important; }
}
@media (min-width:960px) and (max-width:1279px){
html body.home-concept .bmb-stage--calm .bmb-hero-core::after{ display:none !important; }
}
@media (min-width:761px) and (max-width:899px){
html body.home-concept .home-preview .bmb-consult{ grid-template-columns:minmax(0,1fr) !important; }
}
@media (max-width:899px){
html body.home-concept .home-preview .bmb-consult-media{ min-height:0 !important; aspect-ratio:1300 / 729; }
}
@media (min-width:769px){
html body .site-header .primary-nav .nav-root > li > a{ font-size:16px !important; min-height:44px; }
html body .site-header .primary-nav .nav-root > li.nav-cta-item > a.nav-cta{ font-size:15px !important; }
}
@media (min-width:1220px){
html body .site-header .primary-nav .nav-root{ column-gap:1.5rem !important; }
}
@media (min-width:1220px){
html body .site-header:not(.is-floating){
    padding-left:calc(24px + clamp(2rem, 5vw, 7.5rem)) !important; padding-right:calc(34px + clamp(2rem, 5vw, 7.5rem)) !important; }
}
@media (min-width:1100px) and (max-width:1219px){
html body .site-header:not(.is-floating){ padding-left:calc(24px + 5vw) !important; }
}
@media (min-width:1024px) and (max-width:1099px) and (min-aspect-ratio:13331/10000){
html body.home-concept .site-header:not(.is-floating){ padding-left:calc(24px + 5vw) !important; }
}
@media (min-width:769px){
html body .site-header :is(.nav-search-btn, a.nav-account, a.nav-cart){ position:relative; overflow:visible !important; }
html body .site-header :is(.nav-search-btn, a.nav-account, a.nav-cart)::after{ content:""; position:absolute; inset:-5px; border-radius:50%; }
}
.nav-home-label{ display:none; }
@media (min-width:769px){
html body .site-header .primary-nav .nav-root > li.nav-home-item{ display:flex; align-items:center; flex:0 0 auto; }
html body .site-header .primary-nav .nav-root > li.nav-home-item > a.nav-home{
    position:relative; display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box;
    width:2.3rem; height:2.3rem; min-width:2.3rem; min-height:2.3rem; flex:0 0 2.3rem;
    padding:0 !important; border-radius:50%; border:1px solid transparent; background:transparent;
    color:var(--soft-plum) !important; text-decoration:none;
    transition:background .2s ease, border-color .2s ease, transform .2s ease; }
html body .site-header .primary-nav .nav-root > li.nav-home-item > a.nav-home svg{ width:1.2rem; height:1.2rem; flex:0 0 auto; }
html body .site-header.is-floating .primary-nav .nav-root > li.nav-home-item > a.nav-home{ border-color:var(--soft-lilac); }
html body .site-header .primary-nav .nav-root > li.nav-home-item > a.nav-home::after{ content:""; position:absolute; inset:-5px; border-radius:50%; }
html body .site-header .primary-nav .nav-root > li.nav-home-item > a.nav-home:focus-visible{ outline:2px solid var(--soft-violet) !important; outline-offset:3px !important; }
}
@supports (container-type:inline-size){
@media (min-width:769px){
html body .site-header .brand{ flex:0 0 auto; }
html body .site-header .primary-nav{ flex:1 1 0%; min-width:0; container:bmbnav / inline-size; }
html body .site-header .primary-nav .nav-root.nav-root{
      --nav-a:204px; --nav-k:37.9;
      --nav-n1:9; --nav-c:25.5px;
      --nav-f:clamp(13px, calc((100cqi - var(--nav-a) - 108px) / var(--nav-k)), 16px);
      --nav-g:clamp(8px, max(calc((100cqi - var(--nav-a) - var(--nav-k) * var(--nav-f)) / var(--nav-n1)),
                             calc((100cqi - var(--nav-a) - var(--nav-k) * var(--nav-f) - var(--nav-c)) / 7)), 25.5px);
      flex-wrap:nowrap !important; justify-content:flex-end; gap:0 var(--nav-g) !important; column-gap:var(--nav-g) !important; }
html body .site-header.site-header .primary-nav .nav-root.nav-root > li > a:not(.nav-cta){ font-size:var(--nav-f) !important; white-space:nowrap !important; }
html body .site-header.site-header .primary-nav .nav-root.nav-root > li.nav-cta-item > a.nav-cta{
      font-size:calc(14px + (var(--nav-f) - 13px) / 3) !important;
      padding-left:calc(13.6px + (var(--nav-f) - 13px) * 1.7) !important; padding-right:calc(13.6px + (var(--nav-f) - 13px) * 1.7) !important; white-space:nowrap; }
html body .site-header .primary-nav .nav-root.nav-root > li:is(.nav-account-item, .nav-cart-item, .nav-cta-item){
      margin-left:calc(min(var(--nav-g), 12.75px) - var(--nav-g)) !important; }
}
@container bmbnav (max-width:799px){
html body .site-header .primary-nav .nav-root.nav-root{ --nav-a:168px; --nav-k:34.6;
      --nav-f:clamp(13px, calc((100cqi - var(--nav-a) - 108px) / var(--nav-k)), 14px); }
html body .site-header .primary-nav .nav-root > li > a > .caret{ display:none !important; }
}
@media (min-width:769px) and (max-width:899px){
html body .site-header:not(.is-floating) .primary-nav{ flex:1 1 100%; }
html body .site-header.is-floating .brand{ display:none !important; }
}
}
@media (max-width:768px){
html body .site-header .primary-nav .nav-root > li.nav-home-item{ border-bottom:1px solid var(--soft-lav-2); }
html body .site-header .primary-nav .nav-root > li.nav-home-item > a.nav-home{ justify-content:flex-start; gap:.7rem; min-height:44px; }
html body .site-header .primary-nav .nav-root > li.nav-home-item > a.nav-home svg{ width:1.3rem; height:1.3rem; flex:0 0 auto; }
html body .site-header .primary-nav .nav-home-label{ display:inline; }
html body.mobile-nav-open .site-header::after{ content:""; position:fixed; top:0; left:0; right:0; height:88px;
    background:var(--soft-mist); border-bottom:1px solid var(--soft-lav-2); z-index:95; pointer-events:none; }
html body.mobile-nav-open .primary-nav .nav-root > li.has-submenu:nth-child(7){ animation-delay:.40s; }
html body.mobile-nav-open .primary-nav .nav-root > li.has-submenu:nth-child(8){ animation-delay:.45s; }
html body.mobile-nav-open .primary-nav .nav-root > li.nav-account-item{ animation-delay:.50s; }
html body.mobile-nav-open .primary-nav .nav-root > li.nav-cart-item{ animation-delay:.54s; }
html body.mobile-nav-open .primary-nav .nav-root > li.nav-cta-item{ animation-delay:.60s; }
html body.mobile-nav-open .primary-nav .nav-root > li.nav-tel-item{ animation-delay:.66s; }
}
html body .site-footer .footer-social .footer-social-name{ font-size:.88rem; line-height:1.3; white-space:normal; }
html body .site-footer .footer-social a > svg{ flex:none; }
html body .site-footer .footer-social > span{ white-space:nowrap; }
html body .site-footer .footer-social::after{ content:""; flex:0 0 100%; height:0; order:1; }
html body .site-footer .footer-social > a[href*="instagram.com"], html body .site-footer .footer-social > span{ order:2; }
html body.svc-cream .service-preview--immersive .service-hero--immersive :is(p,span,dt,dd,cite,a){ text-shadow:none !important; }
html body.cream-page:not(#_c) main .bmb-event-hero--photo .bmb-event-hero-content :is(h1,h2,p,span,li,small,time,strong){ color:#3f3346 !important; text-shadow:none !important; }
@media (min-width:769px){
html body .site-header .primary-nav .submenu > li.nav-hub-item{ display:none !important; }
}
@media (max-width:768px){
html body.mobile-nav-open .site-header.site-header, html body.mobile-nav-open .site-header.is-floating.is-floating{
    position:fixed !important; top:0 !important; left:0 !important; right:0 !important; margin-top:0 !important; transform:none !important; }
}
html body .site-header:not(.is-floating){ background:#ffffff !important; }
html body .site-footer .footer-nap{ font-style:normal; font-family:var(--sans); font-size:.84rem; line-height:1.55; margin:0 0 1.2rem; max-width:36ch; display:flex; flex-direction:column; gap:.7rem; }
html body .site-footer .footer-nap > span{ display:block; }
html body .site-footer .footer-nap strong{ font-weight:700; color:#3f3346; letter-spacing:.01em; }
html body .site-footer .footer-nap a{ text-decoration:none; border-bottom:1px solid currentColor; overflow-wrap:anywhere; }
@media (max-width:768px){
html body .site-footer .footer-nap{ max-width:none; }
html body .site-footer .footer-nap-lines{ line-height:2.1; }
}
/* from /css/bmb-video.css */
.bmb-vcard{margin:0;position:relative;min-width:0}
.bmb-vcard-media{position:relative;aspect-ratio:9/16;border-radius:14px;overflow:hidden;
  background:var(--soft-ink,#3f3346);box-shadow:0 10px 24px -14px rgba(85,63,99,.45)}
.bmb-vcard-play{appearance:none;-webkit-appearance:none;position:absolute;inset:0;width:100%;height:100%;
  margin:0;padding:0;border:0;border-radius:0;background:none;cursor:pointer;display:block;color:inherit;font:inherit;z-index:1}
.bmb-vcard-play img{display:block;width:100%;height:100%;object-fit:cover;margin:0;border-radius:0;max-width:none}
.bmb-vcard-icon{position:absolute;left:50%;top:var(--play-y,55%);width:56px;height:56px;margin:-28px 0 0 -28px;
  border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 8px 20px -8px rgba(63,51,70,.5);
  display:flex;align-items:center;justify-content:center;transition:transform .2s ease,background-color .2s ease}
.bmb-vcard-icon svg{display:block;width:22px;height:22px;margin-left:3px}
.bmb-vcard-play:hover .bmb-vcard-icon{transform:scale(1.06);background:#fff}
.bmb-vcard-play:focus{outline:none}
.bmb-vcard-play:focus-visible .bmb-vcard-icon{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--soft-plum,#553f63)}
.bmb-vcard-dur{position:absolute;top:8px;right:8px;padding:4px 6px;background:rgba(20,14,12,.72);color:#fff;
  font:600 11.5px/1 var(--font-body,'Quicksand',system-ui,sans-serif);letter-spacing:.03em;border-radius:0}
.bmb-vcard-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#000;display:block}
.bmb-vcard-video[hidden]{display:none}
.bmb-vcard.is-playing .bmb-vcard-play{display:none}
.bmb-vcap{margin:0;padding:12px 6px 2px;text-align:left}
.bmb-vcap-name{display:block;margin:0;font:700 1rem/1.4 var(--font-body,'Quicksand',system-ui,sans-serif);color:var(--soft-plum,#553f63)}
.bmb-vcap-role{display:block;margin:2px 0 0;font:500 .82rem/1.5 var(--font-body,'Quicksand',system-ui,sans-serif);color:var(--soft-body,#62576a)}
body.bmb-video-playing .bmb-wa-fab{opacity:0;pointer-events:none;transition:opacity .2s ease}
.bmb-vtranscript{font:500 .9rem/1.6 var(--font-body,'Quicksand',system-ui,sans-serif);color:var(--soft-body,#62576a)}
.bmb-vtranscript summary{display:inline-block;cursor:pointer;padding:6px 0;color:var(--soft-plum,#553f63);font-weight:600;
  text-decoration:underline;text-underline-offset:3px;list-style:none}
.bmb-vtranscript summary::-webkit-details-marker{display:none}
.bmb-vtranscript summary:focus-visible{outline:2px solid var(--soft-plum,#553f63);outline-offset:3px}
.bmb-vtranscript p{margin:.4em 0 0}
.bmb-vrow{display:grid;grid-template-columns:repeat(3,minmax(0,272px));justify-content:center;align-items:start;gap:24px;
  margin:28px auto 36px;padding:0;list-style:none}
.bmb-vrow > li{margin:0;padding:10px 10px 14px;background:#fff;border-radius:20px;box-shadow:0 12px 30px -14px rgba(85,63,99,.22)}
.bmb-vrow .bmb-vtranscript{padding:0 6px}
.bmb-vrow-more{margin:-12px auto 36px;padding:0 20px;text-align:center;font:600 .95rem/1.5 var(--font-body,'Quicksand',system-ui,sans-serif)}
.bmb-vrow-more a{color:var(--soft-plum,#553f63);text-decoration:underline;text-underline-offset:3px}
@media (max-width:760px){
.bmb-vrow{display:flex;justify-content:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:24px 0 28px;
    padding:4px 20px 14px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.bmb-vrow::-webkit-scrollbar{display:none}
.bmb-vrow > li{flex:0 0 min(66%,260px);scroll-snap-align:start;scroll-margin-left:20px}
}
@media (max-width:600px){
.bmb-vcard-icon{width:48px;height:48px;margin:-24px 0 0 -24px}
.bmb-vcard-icon svg{width:19px;height:19px}
}
@media (prefers-reduced-motion:reduce){
.bmb-vcard-icon{transition:none}
.bmb-vcard-play:hover .bmb-vcard-icon{transform:none}
}
