/* ===== BI-V3 SHELL CSS START (2026-10-27) — delete through "BI-V3 SHELL CSS END" to roll back.
   Every rule is scoped to body.bi-v3, which only exists while bi_v3_on() is true. ===== */

/* ---- Tokens (Figma library nCCnr5Ghw6ojtgfUSLqvhv) ---- */
body.bi-v3 {
  --bi-sage-light:#8B9E7A; --bi-sage-mid:#5A7A64; --bi-sage-deep:#3D5A4A; --bi-sage-rich:#2E5438;
  --bi-midnight:#111E28; --bi-deep:#1A2B38; --bi-ink:#1E2D22; --bi-ink-mid:#4A5E52; --bi-muted:#53664E;
  --bi-linen:#F5F1E9; --bi-white:#FFFFFF; --bi-gold:#FFD06A; --bi-gold-fill:#EAAA08; --bi-gold-text:#805700;
  --bi-terra:#8A4937; --bi-focus:#176D9A; --bi-line:#E4E0D6;
  --bi-serif:"Fraunces", Georgia, serif; --bi-sans:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --bi-r-field:8px; --bi-r-tile:12px; --bi-r-card:20px; --bi-r-pill:999px;
  --bi-gutter:72px; --bi-max:1320px;
  --bi-hero-grad:linear-gradient(135deg,#111E28 0%,#2E5438 60%,#2E5438 100%);
  --bi-foot-grad:linear-gradient(120deg,#1A2B38 0%,#2E5438 100%);
}
body.bi-v3 .bi-container { width:100%; max-width:var(--bi-max); margin-inline:auto; padding-inline:var(--bi-gutter); box-sizing:border-box; }
@media (max-width:991.98px){ body.bi-v3 .bi-container{ padding-inline:24px; } }
@media (max-width:575.98px){ body.bi-v3 .bi-container{ padding-inline:16px; } }
body.bi-v3 :is(.bi-header,.bi-footer,.bi-crisis,.bi-404,.bi-cta,.bi-faq) { font-family:var(--bi-sans); color:var(--bi-ink); box-sizing:border-box; }
body.bi-v3 :is(.bi-header,.bi-footer,.bi-crisis,.bi-404,.bi-cta,.bi-faq) *,
body.bi-v3 :is(.bi-header,.bi-footer,.bi-crisis,.bi-404,.bi-cta,.bi-faq) *::before,
body.bi-v3 :is(.bi-header,.bi-footer,.bi-crisis,.bi-404,.bi-cta,.bi-faq) *::after { box-sizing:border-box; }
body.bi-v3 :is(.bi-header,.bi-footer,.bi-404,.bi-cta) a:focus-visible,
body.bi-v3 :is(.bi-header,.bi-404,.bi-faq) :is(button,summary):focus-visible { outline:3px solid var(--bi-focus); outline-offset:2px; }

body.bi-v3 :is(.bi-header,.bi-footer,.bi-crisis,.bi-404,.bi-cta,.bi-faq) :is(a,p,span,button,li,summary,nav) { font-family:var(--bi-sans); }
/* wrappers inherit instead of picking up the theme's * { font-family:Montserrat } (e.g. the crisis banner's bare text) */
body.bi-v3 :is(.bi-header,.bi-footer,.bi-crisis,.bi-404,.bi-cta,.bi-faq) :is(div,section,details,main,ul,ol,figure,label,small,strong,b) { font-family:inherit; }
body.bi-v3 :is(.bi-header,.bi-footer,.bi-404) :is(.bi-card__title,.bi-hero__title,.bi-h2) { font-family:var(--bi-serif); }

/* ---- Hide the old header/footer while v3 is on (they stay in the HTML for rollback) ---- */
body.bi-v3 header.main-header,
body.bi-v3 header.new-landing-header,
body.bi-v3 footer > .footer_top,
body.bi-v3 footer > .footer_bottom,
body.bi-v3 footer.new-landing-footer { display:none !important; }

/* ---- Buttons ---- */
body.bi-v3 .bi-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; font-family:var(--bi-sans); font-weight:600; font-size:15px; line-height:1; padding:15px 28px; border-radius:var(--bi-r-pill); border:1.5px solid transparent; text-decoration:none; transition:background-color .15s,color .15s,border-color .15s; cursor:pointer; }
body.bi-v3 .bi-btn--sm { font-size:15px; padding:12px 20px; }
body.bi-v3 .bi-btn--primary { background:var(--bi-sage-rich); color:#fff; }
body.bi-v3 .bi-btn--primary:hover { background:var(--bi-ink); color:#fff; text-decoration:none; }
body.bi-v3 .bi-btn--accent { background:var(--bi-gold-fill); color:var(--bi-ink); }
body.bi-v3 .bi-btn--accent:hover { background:var(--bi-gold); color:var(--bi-ink); text-decoration:none; }
body.bi-v3 .bi-btn--outline { background:transparent; color:var(--bi-ink); border-color:var(--bi-sage-deep); }
body.bi-v3 .bi-404 .bi-btn--outline { padding:15px 24px; } /* Figma 404 Button Outline: 24px side padding */
body.bi-v3 .bi-btn--outline:hover { background:var(--bi-sage-rich); color:#fff; text-decoration:none; }
body.bi-v3 .bi-btn--outline-light { background:transparent; color:#fff; border-color:rgba(255,255,255,.7); }
body.bi-v3 .bi-btn--outline-light:hover { background:#fff; color:var(--bi-ink); text-decoration:none; }

/* ---- Type helpers ---- */
body.bi-v3 .bi-eyebrow { display:flex; align-items:center; gap:10px; font-family:var(--bi-sans); font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--bi-gold-text); margin:0 0 16px; }
body.bi-v3 .bi-eyebrow::before { content:""; width:28px; height:1.5px; background:currentColor; }
body.bi-v3 .bi-eyebrow--on-dark { color:var(--bi-gold); }
body.bi-v3 .bi-eyebrow--center { justify-content:center; }
body.bi-v3 .bi-h2 { font-family:var(--bi-serif); font-weight:400; font-size:44px; line-height:1.3; color:var(--bi-ink); margin:0 0 40px; }
body.bi-v3 .bi-h2 em, body.bi-v3 .bi-hero__title em { font-style:italic; }
body.bi-v3 .bi-h2 em { color:var(--bi-gold-text); }
body.bi-v3 .bi-center { text-align:center; }
/* ---- Inline text inside v3 type (font fix 2026-10-27). The live theme sets * { font-family:Montserrat },
   so any <em>/<strong>/<span> without its own font-family fell back to Montserrat. ---- */
body.bi-v3 :is(h1,h2,h3,h4,h5,h6,.bi-hero__title,.bi-h2,.bi-card__title,.bi-faq__item > summary) :is(em,i,strong,b,span,a,small,mark) { font-family:inherit; }
body.bi-v3 :is(.bi-hero__title,.bi-h2,.bi-cta h2,.bi-card__title,.bi-faq__item > summary) :is(em,i) { font-family:var(--bi-serif); font-style:italic; font-weight:400; }
body.bi-v3 :is(.bi-header,.bi-footer,.bi-crisis,.bi-404,.bi-cta,.bi-faq) :is(p,li,div) :is(em,i,strong,b,small,mark,abbr,cite,q,time) { font-family:inherit; }
body.bi-v3 :is(.bi-hero__title,.bi-h2,.bi-cta h2,.bi-card__title,.bi-faq__item > summary) { font-optical-sizing:auto; font-synthesis:none; }

/* ---- Header ---- */
body.bi-v3 .bi-header { position:sticky; top:0; z-index:1000; background:#fff; border-bottom:1px solid var(--bi-line); }
/* 1.3.3: no admin-bar offset. Site Additional CSS hides #wpadminbar and sets html{margin-top:0!important}, so top:32px pushed the header 32px down, under the hero, for logged-in users. */
body.admin-bar.bi-v3 .bi-header { top:0; }
body.bi-v3 .bi-header__inner { display:flex; align-items:center; gap:24px; min-height:80px; }
body.bi-v3 .bi-header__brand img { display:block; width:164px; height:auto; }
body.bi-v3 .bi-nav { display:flex; align-items:center; gap:36px; margin-inline:auto; }
body.bi-v3 .bi-nav__link { font-family:var(--bi-sans); font-size:13.5px; font-weight:400; color:var(--bi-ink); text-decoration:none; background:none; border:0; padding:8px 0; cursor:pointer; line-height:1.2; }
body.bi-v3 .bi-nav__link:hover, body.bi-v3 .bi-nav__link[aria-current="page"] { color:var(--bi-sage-rich); text-decoration:underline; text-underline-offset:6px; }
body.bi-v3 .bi-nav__link[aria-current="page"] { font-weight:600; }
body.bi-v3 .bi-nav__ddbtn span { font-size:9px; margin-left:2px; }
body.bi-v3 .bi-nav__dd { position:relative; }
body.bi-v3 .bi-nav__menu { position:absolute; left:50%; top:100%; transform:translateX(-50%); min-width:270px; padding:10px; background:#fff; border:1px solid var(--bi-line); border-radius:var(--bi-r-tile); box-shadow:0 12px 32px rgba(30,45,34,.12); display:none; flex-direction:column; }
body.bi-v3 .bi-nav__dd:hover .bi-nav__menu, body.bi-v3 .bi-nav__dd:focus-within .bi-nav__menu { display:flex; }
body.bi-v3 .bi-nav__menu a { font-size:14px; color:var(--bi-ink); text-decoration:none; padding:10px 12px; border-radius:var(--bi-r-field); }
body.bi-v3 .bi-nav__menu a:hover, body.bi-v3 .bi-nav__menu a[aria-current="page"] { background:var(--bi-linen); color:var(--bi-sage-rich); }
body.bi-v3 .bi-header__actions { display:flex; align-items:center; gap:20px; }
body.bi-v3 .bi-header__phone { font-size:13.5px; color:var(--bi-ink); text-decoration:none; white-space:nowrap; }
body.bi-v3 .bi-header__phone:hover { color:var(--bi-sage-rich); }
body.bi-v3 .bi-mnav { display:none; margin-left:auto; position:relative; }
body.bi-v3 .bi-mnav > summary { list-style:none; cursor:pointer; padding:8px; color:var(--bi-ink); display:flex; }
body.bi-v3 .bi-mnav > summary::-webkit-details-marker { display:none; }
body.bi-v3 .bi-mnav__panel { position:absolute; right:-8px; top:calc(100% + 14px); width:min(92vw,360px); background:#fff; border:1px solid var(--bi-line); border-radius:var(--bi-r-tile); box-shadow:0 16px 40px rgba(30,45,34,.16); padding:12px; display:flex; flex-direction:column; }
body.bi-v3 .bi-mnav__panel a { color:var(--bi-ink); text-decoration:none; font-size:16px; padding:11px 10px; border-radius:var(--bi-r-field); }
body.bi-v3 .bi-mnav__panel a:hover { background:var(--bi-linen); }
body.bi-v3 .bi-mnav__panel .bi-mnav__sub { padding-left:22px; font-size:15px; color:var(--bi-ink-mid); }
body.bi-v3 .bi-mnav__label { font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--bi-gold-text); padding:12px 10px 4px; }
body.bi-v3 .bi-mnav__panel .bi-mnav__phone { font-weight:600; color:var(--bi-sage-rich); }
body.bi-v3 .bi-mnav__panel .bi-btn { margin-top:8px; color:#fff; }
@media (max-width:1100px){ body.bi-v3 .bi-nav{ gap:22px; } }
/* 1.3.3: keep nav labels and the header button on one line at 992-1199px */
body.bi-v3 .bi-nav__link, body.bi-v3 .bi-header__actions .bi-btn { white-space:nowrap; }
@media (min-width:992px) and (max-width:1199.98px){ body.bi-v3 .bi-header__inner{ gap:16px; padding-inline:40px; } body.bi-v3 .bi-nav{ gap:18px; } body.bi-v3 .bi-header__actions{ gap:14px; } body.bi-v3 .bi-header__actions .bi-btn--sm{ padding:12px 16px; font-size:14px; } body.bi-v3 .bi-header__brand img{ width:148px; } }
@media (max-width:991.98px){
  body.bi-v3 .bi-nav, body.bi-v3 .bi-header__actions .bi-btn { display:none; }
  body.bi-v3 .bi-mnav { display:block; margin-left:0; }
  body.bi-v3 .bi-header__actions { margin-left:auto; }
  body.bi-v3 .bi-header__inner { min-height:68px; gap:12px; }
  body.bi-v3 .bi-header__brand img { width:132px; }
}
@media (max-width:420px){ body.bi-v3 .bi-header__phone { font-size:13px; } }

/* ---- Crisis banner (service/landing pages) ---- */
body.bi-v3 .bi-crisis { background:var(--bi-linen); border-bottom:1px solid #D9C9BE; font-size:13px; line-height:1.5; color:var(--bi-ink); padding:14px 0; }
body.bi-v3 .bi-crisis a { color:var(--bi-terra); font-weight:600; text-decoration:underline; }

/* ---- Footer ---- */
body.bi-v3 .bi-footer { background:var(--bi-foot-grad); color:rgba(255,255,255,.88); padding:64px 0 48px; font-size:14px; line-height:1.6; }
body.bi-v3 .bi-footer a { color:#fff; text-decoration:none; }
body.bi-v3 .bi-footer a:hover { text-decoration:underline; }
body.bi-v3 .bi-footer p { margin:0 0 12px; color:rgba(255,255,255,.88); font-family:var(--bi-sans); font-size:14px; font-weight:300; line-height:1.5; }
body.bi-v3 .bi-footer__grid { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,.8fr); gap:48px; margin-bottom:36px; }
body.bi-v3 .bi-footer__about img { width:164px; height:auto; margin-bottom:20px; display:block; }
body.bi-v3 .bi-footer__about p:first-of-type { max-width:420px; }
body.bi-v3 .bi-footer__ins { color:rgba(255,255,255,.7) !important; font-size:12px !important; font-weight:400 !important; }
body.bi-v3 .bi-footer__col { display:flex; flex-direction:column; gap:12px; }
body.bi-v3 .bi-footer p.bi-footer__title { font-size:11px; font-weight:700; letter-spacing:1.6px; text-transform:uppercase; color:var(--bi-gold); margin:0 0 4px; }
body.bi-v3 .bi-footer p.bi-footer__crisis { color:var(--bi-gold); font-size:13px; font-weight:400; border-top:1px solid rgba(255,255,255,.15); padding-top:24px; }
body.bi-v3 .bi-footer p.bi-footer__crisis a { color:var(--bi-gold); text-decoration:underline; font-weight:600; }
body.bi-v3 .bi-footer p.bi-footer__legal { color:rgba(255,255,255,.7); font-size:12px; font-weight:400; margin:0; }
@media (max-width:767.98px){
  body.bi-v3 .bi-footer { padding:48px 0 36px; }
  body.bi-v3 .bi-footer__grid { grid-template-columns:1fr 1fr; gap:32px 24px; }
  body.bi-v3 .bi-footer__about { grid-column:1 / -1; }
}

/* ---- Page hero (inner pages) ---- */
body.bi-v3 .bi-hero { background:var(--bi-hero-grad); color:#fff; padding:72px 0 80px; }
body.bi-v3 .bi-crumbs { font-size:12px; font-weight:400; color:rgba(255,255,255,.85); margin:0 0 40px; }
body.bi-v3 .bi-crumbs a { color:var(--bi-gold); text-decoration:none; }
body.bi-v3 .bi-hero__title { font-family:var(--bi-serif); font-weight:400; font-size:60px; line-height:1.1; color:#fff; margin:0 0 16px; }
body.bi-v3 .bi-hero__title em { color:var(--bi-gold); }
body.bi-v3 .bi-hero__lead { font-size:16px; font-weight:300; line-height:1.5; color:rgba(255,255,255,.9); max-width:800px; margin:0; font-family:var(--bi-sans); }
@media (max-width:767.98px){ body.bi-v3 .bi-hero{ padding:48px 0 56px; } body.bi-v3 .bi-crumbs{ margin-bottom:28px; } body.bi-v3 .bi-hero__title{ font-size:40px; line-height:1.15; } body.bi-v3 .bi-h2{ font-size:32px; margin-bottom:28px; } }

/* ---- Sections and cards ---- */
body.bi-v3 .bi-section { background:#fff; padding:96px 0; }
body.bi-v3 .bi-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin-bottom:48px; }
body.bi-v3 .bi-card { display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:28px; background:#fff; border:0; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); text-decoration:none; color:var(--bi-ink); transition:box-shadow .15s, transform .15s; }
body.bi-v3 .bi-card:hover { box-shadow:0 10px 28px rgba(61,90,74,.14); transform:translateY(-2px); text-decoration:none; }
body.bi-v3 .bi-card__icon { flex:0 0 auto; width:44px; height:44px; border-radius:var(--bi-r-tile); background:rgba(46,84,56,.12); color:var(--bi-sage-rich); display:flex; align-items:center; justify-content:center; margin:0; }
body.bi-v3 .bi-card__icon svg { display:block; width:24px; height:24px; }
body.bi-v3 .bi-card__title { font-family:var(--bi-serif); font-weight:400; font-size:20px; line-height:1.3; color:var(--bi-ink); }
body.bi-v3 .bi-card__text { font-size:14px; font-weight:300; line-height:1.5; color:var(--bi-ink-mid); }
body.bi-v3 .bi-card__link { font-size:15px; font-weight:600; line-height:normal; color:var(--bi-sage-rich); white-space:nowrap; margin:0; }
body.bi-v3 .bi-arrow { display:inline-block; width:.78em; height:.8em; vertical-align:-.04em; fill:currentColor; flex:0 0 auto; }
@media (max-width:991.98px){ body.bi-v3 .bi-cards{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:575.98px){ body.bi-v3 .bi-section{ padding:64px 0; } body.bi-v3 .bi-cards{ grid-template-columns:1fr; gap:16px; } }

/* ---- CTA band (for migrated pages) ---- */
body.bi-v3 .bi-cta { background:var(--bi-hero-grad); color:#fff; padding:88px 0; text-align:center; }
body.bi-v3 .bi-cta h2 { font-family:var(--bi-serif); font-weight:400; font-size:44px; line-height:1.3; color:#fff; margin:0 0 14px; }
body.bi-v3 .bi-cta h2 em { color:var(--bi-gold); font-style:italic; }
body.bi-v3 .bi-cta p { color:rgba(255,255,255,.9); font-size:16px; font-weight:300; line-height:1.5; margin:0 auto 28px; max-width:620px; }
body.bi-v3 .bi-cta__actions { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
@media (max-width:575.98px){ body.bi-v3 .bi-cta{ padding:64px 0; } body.bi-v3 .bi-cta h2{ font-size:32px; } }

/* ---- FAQ accordion (new markup: details.bi-faq__item > summary + div) ---- */
body.bi-v3 .bi-faq__item { border-bottom:1px solid var(--bi-line); }
body.bi-v3 .bi-faq__item > summary { list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:22px 0; font-family:var(--bi-serif); font-weight:400; font-size:20px; line-height:1.3; color:var(--bi-ink); }
body.bi-v3 .bi-faq__item > summary::-webkit-details-marker { display:none; }
body.bi-v3 .bi-faq__item > summary::after { content:"+"; flex:0 0 32px; height:32px; border-radius:50%; border:1.5px solid var(--bi-sage-deep); color:var(--bi-sage-deep); display:flex; align-items:center; justify-content:center; font-family:var(--bi-sans); font-size:18px; }
body.bi-v3 .bi-faq__item[open] > summary::after { content:"\2212"; background:var(--bi-sage-rich); border-color:var(--bi-sage-rich); color:#fff; }
body.bi-v3 .bi-faq__item > div { padding:0 56px 24px 0; font-size:16px; font-weight:300; line-height:1.5; color:var(--bi-ink-mid); }

/* ---- Layer B: bring existing page bodies closer to v3 until each page is migrated.
   Safe to delete this layer alone if anything looks off. ---- */
body.bi-v3 { background-color:#fff; }
body.bi-v3 :is(h1,h2,h3,h4,h5,h6):not(.bi-hero__title):not(.bi-h2) { font-family:var(--bi-serif) !important; }
body.bi-v3 :is(p,li,td,th,label) :is(em,i,strong,b,small,mark,abbr,cite) { font-family:inherit; }
body.bi-v3 :is(p,li,label,input,textarea,select,td,th,.nav-link,.paragraph-text) { font-family:var(--bi-sans); }
body.bi-v3 .landing-faq-section .accordion .accordion-item .accordion-header .accordion-button { font-family:var(--bi-serif); font-size:20px; color:var(--bi-ink); }
body.bi-v3 .landing-faq-section .accordion .accordion-item { border-bottom-color:var(--bi-line); }
body.bi-v3 .landing-faq-section .accordion .accordion-item .accordion-header .accordion-button::after { background-color:#E9EEE6; }
body.bi-v3 :is(a.consulation-btn, .wpcf7 input[type="submit"], .wpcf7 .wpcf7-submit) { background-color:var(--bi-sage-rich) !important; color:#fff !important; border-color:var(--bi-sage-rich) !important; border-radius:var(--bi-r-pill) !important; font-family:var(--bi-sans) !important; font-weight:600 !important; }
body.bi-v3 :is(a.consulation-btn, .wpcf7 input[type="submit"]):hover { background-color:var(--bi-ink) !important; }
/* ===== v3 ABOUT PAGE (plugin 1.1.0, Figma "About Ashti — v3" 111:318). Only rendered by templates/page-about.php. ===== */
body.bi-v3 .bi-about { font-family:var(--bi-sans); color:var(--bi-ink); background:var(--bi-linen); box-sizing:border-box; }
/* The theme sets * { font-family:Montserrat }: everything inside inherits instead (headings set their own below). */
body.bi-v3 .bi-about *, body.bi-v3 .bi-about *::before, body.bi-v3 .bi-about *::after { font-family:inherit; box-sizing:border-box; }
body.bi-v3 .bi-about :is(h1,h2,h3,h4,.bi-h2,.bi-h3,.bi-scard__title,.bi-quote blockquote) { font-family:var(--bi-serif) !important; font-weight:400; font-optical-sizing:auto; font-synthesis:none; letter-spacing:0; text-transform:none; }
body.bi-v3 .bi-about :is(h1,h2,h3,h4) em, body.bi-v3 .bi-about :is(.bi-h2,.bi-h3) em { font-family:var(--bi-serif) !important; font-style:italic; font-weight:400; color:var(--bi-gold-text); }
body.bi-v3 .bi-about a:focus-visible { outline:3px solid var(--bi-focus); outline-offset:2px; }
body.bi-v3 .bi-about p { margin:0; }
body.bi-v3 .bi-about img { max-width:100%; }

/* Buttons used here (Figma Button Primary = gold, Secondary = sage, outline on dark) */
body.bi-v3 .bi-about .bi-btn { min-height:44px; padding:12px 24px; font-family:var(--bi-sans); line-height:normal; }
body.bi-v3 .bi-about .bi-btn--gold { background:var(--bi-gold-fill); color:var(--bi-midnight); font-weight:700; box-shadow:0 4px 12px rgba(234,170,8,.3); }
body.bi-v3 .bi-about .bi-btn--gold:hover { background:var(--bi-gold); color:var(--bi-midnight); text-decoration:none; }
body.bi-v3 .bi-about .bi-btn--ghost-light { background:transparent; color:#fff; border-color:rgba(255,255,255,.6); font-weight:600; }
body.bi-v3 .bi-about .bi-btn--ghost-light:hover { background:#fff; color:var(--bi-ink); text-decoration:none; }
body.bi-v3 .bi-about .bi-btn--sage { box-shadow:0 4px 8px rgba(46,84,56,.2); font-weight:600; }
body.bi-v3 .bi-about .bi-btn--block { display:flex; width:100%; }
body.bi-v3 .bi-about .bi-btn span { display:inline-flex; align-items:center; gap:0; }

/* ---- Profile hero (Page Hero, Profile variant) ---- */
body.bi-v3 .bi-phero { position:relative; overflow:hidden; color:#fff; padding:80px 0; background:linear-gradient(153.43deg,#111E28 0%,#2E5438 42.43%,#2E5438 70.71%); }
body.bi-v3 .bi-phero__glow { position:absolute; right:-140px; top:-100px; width:600px; height:600px; max-width:none !important; pointer-events:none; }
body.bi-v3 .bi-phero__grid { position:relative; display:grid; grid-template-columns:480px minmax(0,1fr); gap:60px; align-items:center; }
body.bi-v3 .bi-phero__media { position:relative; }
body.bi-v3 .bi-phero__photo { position:relative; width:100%; aspect-ratio:480 / 560; border-radius:var(--bi-r-card); overflow:hidden; background:#E7DCCB; }
/* The Media Library PNG has a ~8px light frame on its right and bottom edges: cover-crop it out. */
body.bi-v3 .bi-phero__photo img { position:absolute; left:0; top:0; width:100%; height:calc(100% + 8px); max-width:none; object-fit:cover; object-position:50% 0; display:block; }
body.bi-v3 .bi-about .bi-badge { position:absolute; left:20px; top:20px; padding:6px 14px; border:1px solid var(--bi-gold-text); border-radius:var(--bi-r-pill); font-size:12px; font-weight:400; line-height:normal; color:var(--bi-gold-text); white-space:nowrap; }
body.bi-v3 .bi-phero__copy { display:flex; flex-direction:column; align-items:flex-start; gap:20px; min-width:0; }
body.bi-v3 .bi-about .bi-phero__crumbs { display:flex; flex-wrap:wrap; gap:4px; align-items:center; margin:0; font-size:13.5px; line-height:normal; color:#fff; }
body.bi-v3 .bi-about .bi-phero__crumbs a { color:var(--bi-gold); text-decoration:none; }
body.bi-v3 .bi-about .bi-phero__crumbs a:hover { text-decoration:underline; }
body.bi-v3 .bi-about .bi-crumbs__sep { color:rgba(255,255,255,.55); font-size:14px; font-weight:300; }
body.bi-v3 .bi-about .bi-phero__title { font-size:60px; line-height:66px; color:#fff; margin:0; }
body.bi-v3 .bi-about .bi-phero__title em { color:var(--bi-gold); }
body.bi-v3 .bi-about .bi-phero__cred { font-size:15px; font-weight:600; line-height:normal; color:var(--bi-gold); }
body.bi-v3 .bi-about .bi-phero__lead { font-size:16px; font-weight:300; line-height:1.5; color:rgba(255,255,255,.85); }
body.bi-v3 .bi-about .bi-chips { display:flex; flex-wrap:wrap; gap:8px; list-style:none; margin:0; padding:0; }
body.bi-v3 .bi-about .bi-chips li { margin:0; padding:6px 14px; border:1.5px solid var(--bi-gold); border-radius:var(--bi-r-pill); font-size:12px; font-weight:400; line-height:normal; color:var(--bi-gold); white-space:nowrap; }
body.bi-v3 .bi-phero__actions { display:flex; flex-wrap:wrap; gap:12px; }

/* ---- Profile body ---- */
body.bi-v3 .bi-profile { background:var(--bi-linen); padding:96px 0; }
body.bi-v3 .bi-profile__cols { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:80px; align-items:start; }
body.bi-v3 .bi-profile__bio { display:flex; flex-direction:column; gap:28px; min-width:0; }
body.bi-v3 .bi-about .bi-profile__h2 { margin:0; }
body.bi-v3 .bi-about .bi-h3 { font-size:36px; line-height:1.2; color:var(--bi-ink); margin:0; }
body.bi-v3 .bi-about .bi-body { font-size:16px; font-weight:300; line-height:1.5; color:var(--bi-ink-mid); }
body.bi-v3 .bi-about .bi-body a { color:var(--bi-sage-rich); text-decoration:underline; text-underline-offset:2px; font-weight:300; }
body.bi-v3 .bi-about .bi-body a:hover { color:var(--bi-ink); }
body.bi-v3 .bi-about .bi-quote { margin:0; padding:20px 24px; background:rgba(46,84,56,.06); border-left:3px solid var(--bi-gold-fill); border-radius:var(--bi-r-field); display:flex; flex-direction:column; gap:10px; }
body.bi-v3 .bi-about .bi-quote blockquote { margin:0; padding:0; border:0; font-size:20px; line-height:1.3; color:var(--bi-ink); }
body.bi-v3 .bi-about .bi-quote blockquote p { font-size:inherit; line-height:inherit; color:inherit; }
body.bi-v3 .bi-about .bi-quote figcaption { font-size:12px; font-weight:400; line-height:normal; color:var(--bi-muted); }
body.bi-v3 .bi-about .bi-igrid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
body.bi-v3 .bi-about .bi-icard { display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:28px; background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); }
body.bi-v3 .bi-about .bi-icard__lead { width:44px; height:44px; border-radius:var(--bi-r-tile); background:rgba(46,84,56,.12); display:flex; align-items:center; justify-content:center; flex:0 0 auto; }
body.bi-v3 .bi-about .bi-icard__lead img { display:block; width:24px; height:24px; }
body.bi-v3 .bi-about .bi-icard__title { font-size:20px; line-height:1.3; color:var(--bi-ink); margin:0; }
body.bi-v3 .bi-about .bi-icard__text { font-size:14px; font-weight:300; line-height:1.5; color:var(--bi-ink-mid); }
body.bi-v3 .bi-about .bi-note { display:flex; flex-direction:column; gap:16px; padding:32px; background:var(--bi-linen); border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); }
body.bi-v3 .bi-about .bi-note__title { font-size:22px; line-height:1.3; color:var(--bi-ink); margin:0; }
body.bi-v3 .bi-about .bi-note p { font-size:16px; font-weight:400; line-height:1.75; color:var(--bi-ink-mid); }

/* ---- Sidebar cards ---- */
body.bi-v3 .bi-profile__side { display:flex; flex-direction:column; gap:24px; }
body.bi-v3 .bi-about .bi-scard { display:flex; flex-direction:column; gap:16px; padding:28px; background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); }
body.bi-v3 .bi-about .bi-scard__eyebrow { font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; line-height:normal; color:var(--bi-gold-text); }
body.bi-v3 .bi-about .bi-scard__title { font-size:22px; line-height:1.3; color:var(--bi-ink); }
body.bi-v3 .bi-about .bi-scard__text { font-size:14px; font-weight:300; line-height:1.5; color:var(--bi-ink-mid); }
body.bi-v3 .bi-about .bi-ticks { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
body.bi-v3 .bi-about .bi-ticks li { display:flex; gap:10px; align-items:flex-start; margin:0; font-size:14px; font-weight:300; line-height:1.5; color:var(--bi-ink-mid); }
body.bi-v3 .bi-about .bi-tick { flex:0 0 auto; width:14px; height:14px; margin-top:3px; color:var(--bi-gold-text); }
body.bi-v3 .bi-about .bi-rows { margin:0; padding:0; }
body.bi-v3 .bi-about .bi-rows > div { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; padding:10px 0; border-bottom:1px solid rgba(61,90,74,.15); }
body.bi-v3 .bi-about .bi-rows dt { flex:1 1 auto; min-width:0; margin:0; font-size:12px; font-weight:400; line-height:normal; color:var(--bi-muted); }
body.bi-v3 .bi-about .bi-rows dd { flex:0 1 auto; margin:0; font-size:14px; font-weight:300; line-height:1.5; color:var(--bi-ink); text-align:right; }
body.bi-v3 .bi-about .bi-rows--creds dt { flex:0 0 45%; }

/* ---- Team strip ---- */
body.bi-v3 .bi-team { background:#fff; padding:96px 0; }
body.bi-v3 .bi-about .bi-team__h2 { margin:0 0 28px; }
body.bi-v3 .bi-team__cards { display:flex; flex-wrap:wrap; gap:24px; margin-bottom:28px; }
body.bi-v3 .bi-about .bi-tcard { width:420px; max-width:100%; display:flex; flex-direction:column; gap:12px; padding:32px; background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); }
body.bi-v3 .bi-about .bi-author { display:flex; align-items:center; gap:12px; }
body.bi-v3 .bi-about .bi-author__avatar { width:44px; height:44px; flex:0 0 44px; border-radius:var(--bi-r-pill); background:var(--bi-sage-rich); color:#fff; display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; line-height:normal; }
body.bi-v3 .bi-about .bi-author__text { display:flex; flex-direction:column; gap:2px; }
body.bi-v3 .bi-about .bi-author__name { font-size:15px; font-weight:700; line-height:normal; color:var(--bi-ink); }
body.bi-v3 .bi-about .bi-author__meta { font-size:12px; font-weight:400; line-height:normal; color:var(--bi-muted); }

/* ---- Responsive ---- */
@media (max-width:1199.98px){
  body.bi-v3 .bi-phero__grid { grid-template-columns:400px minmax(0,1fr); gap:48px; }
  body.bi-v3 .bi-profile__cols { grid-template-columns:minmax(0,1fr) 300px; gap:48px; }
}
@media (max-width:991.98px){
  body.bi-v3 .bi-phero { padding:56px 0 64px; }
  body.bi-v3 .bi-phero__grid { grid-template-columns:1fr; gap:36px; }
  body.bi-v3 .bi-phero__media { max-width:480px; width:100%; }
  body.bi-v3 .bi-profile { padding:64px 0; }
  body.bi-v3 .bi-profile__cols { grid-template-columns:1fr; gap:48px; }
  body.bi-v3 .bi-profile__side { max-width:560px; }
  body.bi-v3 .bi-team { padding:64px 0; }
}
@media (max-width:767.98px){
  body.bi-v3 .bi-phero { padding:40px 0 56px; }
  body.bi-v3 .bi-phero__grid { gap:28px; }
  body.bi-v3 .bi-phero__copy { gap:16px; }
  body.bi-v3 .bi-about .bi-phero__title { font-size:44px; line-height:1.15; }
  body.bi-v3 .bi-about .bi-h2 { font-size:32px; }
  body.bi-v3 .bi-about .bi-h3 { font-size:28px; }
  body.bi-v3 .bi-profile__bio { gap:24px; }
  body.bi-v3 .bi-about .bi-igrid { grid-template-columns:1fr; gap:16px; }
  body.bi-v3 .bi-about .bi-icard { padding:24px; }
  body.bi-v3 .bi-about .bi-note { padding:24px; }
  body.bi-v3 .bi-about .bi-tcard { width:100%; padding:24px; }
  body.bi-v3 .bi-phero__actions .bi-btn { flex:1 1 100%; }
  body.bi-v3 .bi-phero__glow { right:-260px; top:-180px; }
}
/* ===== v3 ABOUT PAGE END ===== */
/* ===== v3 PAGE TEMPLATES (1.2.0): Home, Services & Pricing, Blog, Single post, Contact ===== */
body.bi-v3 .bi-pg { font-family:var(--bi-sans); color:var(--bi-ink); background:var(--bi-linen); overflow-x:clip; }
body.bi-v3 .bi-pg *, body.bi-v3 .bi-pg *::before, body.bi-v3 .bi-pg *::after { box-sizing:border-box; }
/* every inline element gets the sans explicitly (theme sets Montserrat on *) ... */
body.bi-v3 .bi-pg :is(div,section,article,aside,header,nav,main,ul,ol,li,dl,dt,dd,p,a,span,small,strong,b,em,i,time,label,input,select,textarea,button,summary,details,figure,figcaption,blockquote,table,th,td,tr,tbody,thead,cite,q,code,abbr,sup,sub,mark) { font-family:var(--bi-sans); }
/* ... and every heading-style element the serif (wins over the line above via !important, like the About page). */
body.bi-v3 .bi-pg :is(h1,h2,h3,h4,h5,h6,.bi-h2,.bi-h3,.bi-ph__title,.bi-hh__title,.bi-hh__kicker,.bi-close__title,.bi-scard__title,.bi-emp__quote,.bi-emp__quote p,.bi-fq blockquote,.bi-fq blockquote p,.bi-rate__price,.bi-step__title,.bi-spec__title,.bi-phil__title,.bi-pc__title,.bi-callout__title,.bi-author__name),
body.bi-v3 .bi-pg :is(h1,h2,h3,h4,h5,h6,.bi-h2,.bi-h3,.bi-ph__title,.bi-hh__title,.bi-close__title,.bi-scard__title,.bi-pc__title,.bi-step__title,.bi-spec__title,.bi-phil__title) :is(em,i,a,span,strong,b) { font-family:var(--bi-serif) !important; font-weight:400; font-optical-sizing:auto; font-synthesis:none; }
body.bi-v3 .bi-pg :is(h1,h2,h3,h4,.bi-h2,.bi-close__title,.bi-scard__title) em { font-style:italic; color:var(--bi-gold-text); }
body.bi-v3 .bi-pg :is(h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dd,figure,blockquote) { margin:0; }
body.bi-v3 .bi-pg img { max-width:100%; height:auto; }
body.bi-v3 .bi-pg a:focus-visible, body.bi-v3 .bi-pg summary:focus-visible, body.bi-v3 .bi-pg :is(input,select,textarea):focus-visible { outline:3px solid var(--bi-focus); outline-offset:2px; }
body.bi-v3 .bi-wrap { width:100%; max-width:var(--bi-max); margin-inline:auto; padding-inline:var(--bi-gutter); }

/* type */
body.bi-v3 .bi-pg .bi-h2 { font-size:44px; line-height:1.2; color:var(--bi-ink); margin:0; letter-spacing:-.01em; }
body.bi-v3 .bi-pg .bi-h2--light { color:#fff; }
body.bi-v3 .bi-pg .bi-h2--light em { color:var(--bi-gold); }
body.bi-v3 .bi-pg .bi-text { font-size:16px; font-weight:300; line-height:1.6; color:var(--bi-ink-mid); }
body.bi-v3 .bi-pg .bi-text a, body.bi-v3 .bi-pg .bi-small a { color:var(--bi-sage-rich); text-decoration:underline; text-underline-offset:2px; }
body.bi-v3 .bi-pg .bi-small { font-size:13px; font-weight:300; line-height:1.55; color:var(--bi-ink-mid); }
body.bi-v3 .bi-pg .bi-eb { display:flex; align-items:center; gap:10px; font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--bi-gold-text); line-height:1.4; }
body.bi-v3 .bi-pg .bi-eb span { font-family:var(--bi-sans); }
body.bi-v3 .bi-pg .bi-eb__rule { flex:0 0 auto; width:32px; height:1.5px; background:var(--bi-gold-fill); }
body.bi-v3 .bi-pg .bi-eb--dark { color:var(--bi-gold); }
body.bi-v3 .bi-pg .bi-eb--center { justify-content:center; }
body.bi-v3 .bi-pg .bi-sh { display:flex; flex-direction:column; gap:14px; max-width:720px; }
body.bi-v3 .bi-pg .bi-sh--center { margin:0 auto 48px; text-align:center; align-items:center; }
body.bi-v3 .bi-pg .bi-arrow { display:inline-block; vertical-align:-.08em; flex:0 0 auto; }
body.bi-v3 .bi-pg .bi-tick { flex:0 0 auto; width:14px; height:14px; margin-top:4px; color:var(--bi-gold-text); }
body.bi-v3 .bi-pg .bi-tlink { display:inline-flex; align-items:center; gap:6px; font-size:14px; font-weight:600; color:var(--bi-sage-rich); text-decoration:none; }
body.bi-v3 .bi-pg .bi-tlink:hover { text-decoration:underline; }

/* buttons */
body.bi-v3 .bi-pg .bi-b { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:12px 24px; border-radius:var(--bi-r-pill); border:1.5px solid transparent; font-size:15px; font-weight:600; line-height:1.2; text-decoration:none; cursor:pointer; transition:background-color .15s,color .15s,border-color .15s; text-align:center; }
body.bi-v3 .bi-pg .bi-b span { display:inline-flex; align-items:center; font-family:var(--bi-sans); }
body.bi-v3 .bi-pg .bi-b--gold { background:var(--bi-gold-fill); color:var(--bi-midnight); font-weight:700; box-shadow:0 4px 12px rgba(234,170,8,.3); }
body.bi-v3 .bi-pg .bi-b--gold:hover { background:var(--bi-gold); color:var(--bi-midnight); }
body.bi-v3 .bi-pg .bi-b--sage { background:var(--bi-sage-rich); color:#fff; }
body.bi-v3 .bi-pg .bi-b--sage:hover { background:var(--bi-sage-deep); color:#fff; }
body.bi-v3 .bi-pg .bi-b--outline { border-color:var(--bi-sage-rich); color:var(--bi-sage-rich); background:transparent; }
body.bi-v3 .bi-pg .bi-b--outline:hover { background:var(--bi-sage-rich); color:#fff; }
body.bi-v3 .bi-pg .bi-b--ghost { border-color:rgba(255,255,255,.5); color:#fff; background:transparent; }
body.bi-v3 .bi-pg .bi-b--ghost:hover { border-color:#fff; background:rgba(255,255,255,.08); color:#fff; }
body.bi-v3 .bi-pg .bi-row { display:flex; flex-wrap:wrap; gap:12px; }

/* chips */
body.bi-v3 .bi-pg .bi-chips { display:flex; flex-wrap:wrap; gap:8px; list-style:none; margin:0; padding:0; }
body.bi-v3 .bi-pg .bi-chips li { margin:0; padding:6px 14px; border:1.5px solid var(--bi-gold); border-radius:var(--bi-r-pill); font-size:12px; line-height:1.3; color:#fff; }
body.bi-v3 .bi-pg .bi-chips--light li { color:var(--bi-ink); border-color:var(--bi-gold-fill); background:#fff; }

/* sections */
body.bi-v3 .bi-pg .bi-sec { padding:96px 0; }
body.bi-v3 .bi-pg .bi-sec--linen { background:var(--bi-linen); }
body.bi-v3 .bi-pg .bi-sec--white { background:#fff; }
body.bi-v3 .bi-pg .bi-sec--flush { padding-top:0; }

/* page hero (Rates, Blog, Post, Contact) */
body.bi-v3 .bi-pg .bi-ph { position:relative; overflow:hidden; background:var(--bi-hero-grad); color:#fff; padding:72px 0 80px; }
body.bi-v3 .bi-pg .bi-ph__glow { position:absolute; right:-120px; top:-200px; width:600px; height:600px; max-width:none; pointer-events:none; opacity:.9; }
body.bi-v3 .bi-pg .bi-ph__inner { position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:18px; }
body.bi-v3 .bi-pg .bi-ph__crumbs { font-size:13px; color:rgba(255,255,255,.75); margin-bottom:20px; }
body.bi-v3 .bi-pg .bi-ph__crumbs a { color:var(--bi-gold); text-decoration:none; }
body.bi-v3 .bi-pg .bi-ph__crumbs a:hover { text-decoration:underline; }
body.bi-v3 .bi-pg .bi-ph__title { font-size:56px; line-height:1.12; color:#fff; letter-spacing:-.015em; max-width:900px; }
body.bi-v3 .bi-pg .bi-ph__title em, body.bi-v3 .bi-pg .bi-hh__title em { color:var(--bi-gold); font-style:italic; }
body.bi-v3 .bi-pg .bi-ph__lead { font-size:17px; font-weight:300; line-height:1.6; color:rgba(255,255,255,.9); max-width:720px; }

/* split + aside cards */
body.bi-v3 .bi-pg .bi-split { display:grid; gap:48px; }
body.bi-v3 .bi-pg .bi-split--aside { grid-template-columns:minmax(0,1fr) 380px; align-items:start; }
body.bi-v3 .bi-pg .bi-stack { display:flex; flex-direction:column; gap:32px; }
body.bi-v3 .bi-pg .bi-aside { display:flex; flex-direction:column; gap:20px; }
body.bi-v3 .bi-pg .bi-scard { display:flex; flex-direction:column; gap:14px; padding:28px; background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); }
body.bi-v3 .bi-pg .bi-scard--dark { background:var(--bi-sage-rich); color:#fff; box-shadow:none; }
body.bi-v3 .bi-pg .bi-scard__eb { font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--bi-gold); }
body.bi-v3 .bi-pg .bi-scard__eb--gold { color:var(--bi-gold-text); }
body.bi-v3 .bi-pg .bi-scard__title { font-size:26px; line-height:1.25; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-scard--dark .bi-scard__title { color:#fff; }
body.bi-v3 .bi-pg .bi-scard--dark .bi-scard__title em { color:var(--bi-gold); }
body.bi-v3 .bi-pg .bi-scard__text { font-size:14px; font-weight:300; line-height:1.6; color:rgba(255,255,255,.9); }
body.bi-v3 .bi-pg .bi-scard__text a, body.bi-v3 .bi-pg .bi-scard__tel { color:var(--bi-gold); font-weight:600; text-decoration:none; }
body.bi-v3 .bi-pg .bi-scard__tel { font-size:14px; text-align:center; }
body.bi-v3 .bi-pg .bi-ticks { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
body.bi-v3 .bi-pg .bi-ticks li { display:flex; gap:10px; align-items:flex-start; margin:0; font-size:14px; font-weight:300; line-height:1.5; color:var(--bi-ink-mid); }
body.bi-v3 .bi-pg :is(.bi-scard--dark,.bi-hh__card) .bi-ticks li { color:rgba(255,255,255,.92); }
body.bi-v3 .bi-pg :is(.bi-scard--dark,.bi-hh__card) .bi-tick { color:var(--bi-gold); }
body.bi-v3 .bi-pg .bi-dl { display:flex; flex-direction:column; margin:0; }
body.bi-v3 .bi-pg .bi-dl > div { display:flex; justify-content:space-between; gap:16px; padding:12px 0; border-bottom:1px solid var(--bi-line); }
body.bi-v3 .bi-pg .bi-dl > div:last-child { border-bottom:0; }
body.bi-v3 .bi-pg .bi-dl dt { font-size:13px; font-weight:400; color:var(--bi-muted); }
body.bi-v3 .bi-pg .bi-dl dd { font-size:14px; font-weight:600; color:var(--bi-ink); text-align:right; margin:0; }
body.bi-v3 .bi-pg .bi-dl dd a { color:var(--bi-sage-rich); text-decoration:none; }

/* rates */
body.bi-v3 .bi-pg .bi-rates { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
body.bi-v3 .bi-pg .bi-rate { display:flex; flex-direction:column; gap:6px; padding:28px; background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); }
body.bi-v3 .bi-pg .bi-rate__label { font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--bi-gold-text); margin-bottom:8px; }
body.bi-v3 .bi-pg .bi-rate__price { font-size:44px; line-height:1.1; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-rate__price--word { font-size:34px; }
body.bi-v3 .bi-pg .bi-rate__unit { font-size:13px; color:var(--bi-muted); margin-bottom:10px; }
body.bi-v3 .bi-pg .bi-rate__body { font-size:14px; font-weight:300; line-height:1.6; color:var(--bi-ink-mid); }
body.bi-v3 .bi-pg .bi-rate--featured { background:var(--bi-sage-rich); }
body.bi-v3 .bi-pg .bi-rate--featured .bi-rate__label { color:var(--bi-gold); }
body.bi-v3 .bi-pg .bi-rate--featured :is(.bi-rate__price,.bi-rate__unit,.bi-rate__body) { color:#fff; }
body.bi-v3 .bi-pg .bi-callout { padding:8px 0 8px 24px; border-left:3px solid var(--bi-sage-rich); display:flex; flex-direction:column; gap:8px; }
body.bi-v3 .bi-pg .bi-callout__title { font-size:22px; line-height:1.3; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-plans { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
body.bi-v3 .bi-pg .bi-plans li { display:flex; flex-direction:column; gap:2px; margin:0; padding:12px 14px; background:var(--bi-linen); border-radius:var(--bi-r-field); }
body.bi-v3 .bi-pg .bi-plans__name { font-size:13px; font-weight:600; color:var(--bi-ink); line-height:1.3; }
body.bi-v3 .bi-pg .bi-plans__st { font-size:12px; color:var(--bi-muted); }
body.bi-v3 .bi-pg .bi-links { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px; }
body.bi-v3 .bi-pg .bi-links__item { display:flex; justify-content:space-between; align-items:center; gap:10px; min-height:88px; padding:20px; border:1px solid var(--bi-line); border-radius:var(--bi-r-tile); background:var(--bi-linen); color:var(--bi-ink); font-size:15px; font-weight:600; line-height:1.35; text-decoration:none; transition:border-color .15s, background-color .15s; }
body.bi-v3 .bi-pg .bi-links__item .bi-arrow { color:var(--bi-gold-text); }
body.bi-v3 .bi-pg .bi-links__item:hover { border-color:var(--bi-gold-fill); background:#fff; }

/* FAQ split */
body.bi-v3 .bi-pg .bi-faqsplit { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:64px; align-items:start; }
body.bi-v3 .bi-pg .bi-faqsplit__intro { display:flex; flex-direction:column; align-items:flex-start; gap:28px; position:sticky; top:120px; }
body.bi-v3 .bi-pg .bi-qa { display:flex; flex-direction:column; border-top:1px solid var(--bi-line); }
body.bi-v3 .bi-pg .bi-qa__item { border-bottom:1px solid var(--bi-line); }
body.bi-v3 .bi-pg .bi-qa__item > summary { list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px; padding:20px 0; cursor:pointer; font-size:16px; font-weight:500; line-height:1.45; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-qa__item > summary::-webkit-details-marker { display:none; }
body.bi-v3 .bi-pg .bi-qa__item > summary .bi-chev { flex:0 0 auto; color:var(--bi-gold-text); transition:transform .2s; }
body.bi-v3 .bi-pg .bi-qa__item[open] > summary .bi-chev { transform:rotate(180deg); }
body.bi-v3 .bi-pg .bi-qa__a { padding:0 32px 22px 0; }
body.bi-v3 .bi-pg .bi-qa__a p { font-size:15px; font-weight:300; line-height:1.65; color:var(--bi-ink-mid); }

/* closing CTA */
body.bi-v3 .bi-pg .bi-close__inner { display:flex; flex-direction:column; align-items:center; text-align:center; gap:18px; max-width:760px; }
body.bi-v3 .bi-pg .bi-close__title { font-size:48px; line-height:1.15; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-close__note { font-size:13px; font-weight:300; color:var(--bi-muted); }

/* steps */
body.bi-v3 .bi-pg .bi-steps { list-style:none; margin:0; padding:0; display:grid; gap:24px; counter-reset:none; }
body.bi-v3 .bi-pg .bi-steps--3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
body.bi-v3 .bi-pg .bi-steps--4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
body.bi-v3 .bi-pg .bi-step { display:flex; flex-direction:column; gap:10px; margin:0; padding:28px; background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); }
body.bi-v3 .bi-pg .bi-step__n { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; background:var(--bi-sage-rich); color:#fff; font-size:14px; font-weight:600; margin-bottom:8px; }
body.bi-v3 .bi-pg .bi-step__eb { font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--bi-gold-text); }
body.bi-v3 .bi-pg .bi-step__title { font-size:22px; line-height:1.3; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-step__text { font-size:14px; font-weight:300; line-height:1.6; color:var(--bi-ink-mid); }
body.bi-v3 .bi-pg .bi-step__text a { color:var(--bi-sage-rich); font-weight:600; text-decoration:none; white-space:nowrap; }

/* home hero */
body.bi-v3 .bi-pg .bi-hh { position:relative; overflow:hidden; background:var(--bi-hero-grad); color:#fff; padding:88px 0 96px; }
body.bi-v3 .bi-pg .bi-hh__glow { position:absolute; right:-160px; top:-160px; width:804px; height:739px; max-width:none; pointer-events:none; }
body.bi-v3 .bi-pg .bi-hh__grid { position:relative; display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:64px; align-items:center; }
body.bi-v3 .bi-pg .bi-hh__copy { display:flex; flex-direction:column; align-items:flex-start; gap:22px; }
body.bi-v3 .bi-pg .bi-hh__title { font-size:60px; line-height:1.08; color:#fff; letter-spacing:-.015em; }
body.bi-v3 .bi-pg .bi-hh__kicker { font-size:26px; line-height:1.3; font-style:italic; color:var(--bi-gold); }
body.bi-v3 .bi-pg .bi-hh__lead { font-size:17px; font-weight:300; line-height:1.6; color:rgba(255,255,255,.9); max-width:600px; }
body.bi-v3 .bi-pg .bi-hh__ctas { display:flex; flex-wrap:wrap; gap:12px; }
body.bi-v3 .bi-pg .bi-hh__note { font-size:13px; color:rgba(255,255,255,.75); }
body.bi-v3 .bi-pg .bi-hh__card { display:flex; flex-direction:column; gap:18px; padding:32px; border-radius:var(--bi-r-card); background:rgba(255,255,255,.07); border:1px solid rgba(255,208,106,.35); backdrop-filter:blur(4px); }
body.bi-v3 .bi-pg .bi-hh__card .bi-ticks li { font-size:15px; }
body.bi-v3 .bi-pg .bi-hh__phone { align-self:flex-start; color:var(--bi-gold); font-size:15px; font-weight:600; text-decoration:none; border-bottom:1px solid currentColor; }

/* home empathy */
body.bi-v3 .bi-pg .bi-emp { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:72px; align-items:center; }
body.bi-v3 .bi-pg .bi-emp__left { display:flex; flex-direction:column; gap:24px; }
body.bi-v3 .bi-pg .bi-emp__quote { padding-left:24px; border-left:3px solid var(--bi-gold-fill); }
body.bi-v3 .bi-pg .bi-emp__quote p { font-size:30px; line-height:1.35; font-style:italic; color:var(--bi-ink-mid); }
body.bi-v3 .bi-pg .bi-emp__right { display:flex; flex-direction:column; gap:20px; }

/* home specialties (dark) */
body.bi-v3 .bi-pg .bi-spec { background:var(--bi-foot-grad); padding:96px 0; color:#fff; }
body.bi-v3 .bi-pg .bi-spec__head { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,420px); gap:48px; align-items:end; margin-bottom:48px; }
body.bi-v3 .bi-pg .bi-spec__head > div { display:flex; flex-direction:column; gap:14px; }
body.bi-v3 .bi-pg .bi-spec__sub { font-size:16px; font-weight:300; line-height:1.6; color:rgba(255,255,255,.85); }
body.bi-v3 .bi-pg .bi-spec__grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:20px; }
body.bi-v3 .bi-pg .bi-spec__card { grid-column:span 2; display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:28px; border-radius:var(--bi-r-card); background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12); color:#fff; text-decoration:none; transition:background-color .15s, border-color .15s; }
body.bi-v3 .bi-pg .bi-spec__card:nth-child(4), body.bi-v3 .bi-pg .bi-spec__card:nth-child(5) { grid-column:span 3; }
body.bi-v3 .bi-pg .bi-spec__card:hover { background:rgba(255,255,255,.1); border-color:var(--bi-gold); color:#fff; }
body.bi-v3 .bi-pg .bi-spec__card img { width:44px; height:44px; }
body.bi-v3 .bi-pg .bi-spec__title { font-size:22px; line-height:1.3; color:#fff; }
body.bi-v3 .bi-pg .bi-spec__text { font-size:14px; font-weight:300; line-height:1.6; color:rgba(255,255,255,.85); flex:1 1 auto; }
body.bi-v3 .bi-pg .bi-spec__more { display:inline-flex; align-items:center; font-size:13px; font-weight:600; color:var(--bi-gold); }

/* home philosophy */
body.bi-v3 .bi-pg .bi-phil { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:72px; align-items:start; }
body.bi-v3 .bi-pg .bi-phil__left { display:flex; flex-direction:column; align-items:flex-start; gap:20px; }
body.bi-v3 .bi-pg .bi-phil__list { display:flex; flex-direction:column; gap:12px; }
body.bi-v3 .bi-pg .bi-phil__item { display:flex; gap:16px; padding:20px 22px; border:1px solid var(--bi-line); border-radius:var(--bi-r-tile); background:#fff; }
body.bi-v3 .bi-pg .bi-phil__icon { flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; background:#FEF6E0; }
body.bi-v3 .bi-pg .bi-phil__title { font-size:19px; line-height:1.3; color:var(--bi-ink); margin-bottom:4px; }
body.bi-v3 .bi-pg .bi-phil__text { font-size:14px; font-weight:300; line-height:1.6; color:var(--bi-ink-mid); }

/* home founder */
body.bi-v3 .bi-pg .bi-founder { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:72px; align-items:center; }
body.bi-v3 .bi-pg .bi-founder__photo { position:relative; }
body.bi-v3 .bi-pg .bi-founder__photo > img { display:block; width:100%; aspect-ratio:488/568; object-fit:cover; border-radius:var(--bi-r-card); }
body.bi-v3 .bi-pg .bi-founder__badge { position:absolute; left:16px; right:16px; bottom:16px; display:flex; align-items:center; gap:12px; padding:14px 16px; background:#fff; border-radius:var(--bi-r-tile); box-shadow:0 6px 20px rgba(17,30,40,.12); }
body.bi-v3 .bi-pg .bi-founder__bicon { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; background:#FEF6E0; flex:0 0 auto; }
body.bi-v3 .bi-pg .bi-founder__badge strong { display:block; font-size:14px; font-weight:600; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-founder__badge small { display:block; font-size:12px; color:var(--bi-muted); }
body.bi-v3 .bi-pg .bi-founder__copy { display:flex; flex-direction:column; align-items:flex-start; gap:20px; }
body.bi-v3 .bi-pg .bi-fq { padding-left:20px; border-left:3px solid var(--bi-gold-fill); display:flex; flex-direction:column; gap:8px; }
body.bi-v3 .bi-pg .bi-fq blockquote p { font-size:20px; line-height:1.45; font-style:italic; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-fq figcaption { font-size:13px; color:var(--bi-muted); }

/* home insurance */
body.bi-v3 .bi-pg .bi-ins { display:flex; flex-direction:column; gap:28px; padding-top:96px; border-top:1px solid var(--bi-line); }
body.bi-v3 .bi-pg .bi-ins__head { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:72px; align-items:end; }
body.bi-v3 .bi-pg .bi-ins__head > div { display:flex; flex-direction:column; gap:14px; }
body.bi-v3 .bi-pg .bi-ins__grid { display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:48px; align-items:start; }
body.bi-v3 .bi-pg .bi-ins__grid > div { display:flex; flex-direction:column; gap:14px; }
body.bi-v3 .bi-pg .bi-ins__label { font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-ins__list { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
body.bi-v3 .bi-pg .bi-ins__list li { display:flex; flex-direction:column; gap:2px; margin:0; padding:14px 18px; background:#fff; border-radius:var(--bi-r-tile); }
body.bi-v3 .bi-pg .bi-ins__list strong { font-size:14px; font-weight:600; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-ins__list span { font-size:12px; color:var(--bi-muted); }
body.bi-v3 .bi-pg .bi-ins__rates { padding:24px 28px; background:#fff; border-radius:var(--bi-r-card); }

/* affiliations */
body.bi-v3 .bi-pg .bi-aff { background:#fff; padding:40px 0; border-top:1px solid var(--bi-line); }
body.bi-v3 .bi-pg .bi-aff__inner { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:24px 48px; }
body.bi-v3 .bi-pg .bi-aff__label { font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--bi-muted); }
body.bi-v3 .bi-pg .bi-aff img { display:block; width:auto; max-height:44px; }
body.bi-v3 .bi-pg .bi-aff a { display:inline-flex; padding:4px; }

/* blog */
body.bi-v3 .bi-pg .bi-blog { display:flex; flex-direction:column; gap:32px; }
body.bi-v3 .bi-pg .bi-blog__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
body.bi-v3 .bi-pg .bi-pc { display:flex; flex-direction:column; overflow:hidden; background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); }
body.bi-v3 .bi-pg .bi-pc__media { display:block; aspect-ratio:16/10; overflow:hidden; background:linear-gradient(135deg,#2E5438,#8B9E7A); }
body.bi-v3 .bi-pg .bi-pc__media img, body.bi-v3 .bi-pg .bi-pc__img { display:block; width:100%; height:100%; object-fit:cover; }
body.bi-v3 .bi-pg .bi-pc__ph { display:block; width:100%; height:100%; }
body.bi-v3 .bi-pg .bi-pc__body { display:flex; flex-direction:column; gap:10px; padding:24px; flex:1 1 auto; }
body.bi-v3 .bi-pg .bi-pc__meta { display:flex; flex-wrap:wrap; gap:6px 14px; font-size:12px; color:var(--bi-muted); }
body.bi-v3 .bi-pg .bi-pc__cat { font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--bi-gold-text); }
body.bi-v3 .bi-pg .bi-pc__title { font-size:22px; line-height:1.3; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-pc__title a { color:inherit; text-decoration:none; }
body.bi-v3 .bi-pg .bi-pc__title a:hover { color:var(--bi-sage-rich); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
body.bi-v3 .bi-pg .bi-pc__excerpt { font-size:14px; font-weight:300; line-height:1.6; color:var(--bi-ink-mid); flex:1 1 auto; }
body.bi-v3 .bi-pg .bi-pc__more { display:inline-flex; align-items:center; gap:6px; font-size:13px; font-weight:600; color:var(--bi-sage-rich); text-decoration:none; }
body.bi-v3 .bi-pg .bi-pc--featured { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
body.bi-v3 .bi-pg .bi-pc--featured .bi-pc__media { aspect-ratio:auto; min-height:340px; }
body.bi-v3 .bi-pg .bi-pc--featured .bi-pc__body { padding:40px; justify-content:center; gap:14px; }
body.bi-v3 .bi-pg .bi-pc--featured .bi-pc__title { font-size:32px; line-height:1.2; }
body.bi-v3 .bi-pg .bi-pc--featured .bi-pc__excerpt { flex:0 0 auto; font-size:15px; }
body.bi-v3 .bi-pg .bi-pager { margin-top:48px; }
body.bi-v3 .bi-pg .bi-pager ul { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }
body.bi-v3 .bi-pg .bi-pager li { margin:0; }
body.bi-v3 .bi-pg .bi-pager :is(a,span) { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:0 14px; border-radius:var(--bi-r-pill); background:#fff; border:1px solid var(--bi-line); color:var(--bi-ink); font-size:14px; font-weight:500; text-decoration:none; }
body.bi-v3 .bi-pg .bi-pager .current { background:var(--bi-sage-rich); border-color:var(--bi-sage-rich); color:#fff; }
body.bi-v3 .bi-pg .bi-pager a:hover { border-color:var(--bi-sage-rich); }

/* single post */
body.bi-v3 .bi-pg .bi-art__cat { display:inline-flex; padding:5px 14px; border:1.5px solid var(--bi-gold); border-radius:var(--bi-r-pill); font-size:12px; color:#fff; }
body.bi-v3 .bi-pg .bi-art__title { font-size:52px; }
body.bi-v3 .bi-pg .bi-art__meta { display:flex; flex-wrap:wrap; gap:8px 28px; font-size:13px; color:rgba(255,255,255,.8); }
body.bi-v3 .bi-pg .bi-art__meta time { color:inherit; }
body.bi-v3 .bi-pg .bi-sec--post { background:var(--bi-linen); padding-top:64px; }
body.bi-v3 .bi-pg .bi-art__grid { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:56px; align-items:start; }
body.bi-v3 .bi-pg .bi-art__main { display:flex; flex-direction:column; gap:40px; min-width:0; }
body.bi-v3 .bi-pg .bi-art__hero img { display:block; width:100%; height:auto; max-height:460px; object-fit:cover; border-radius:var(--bi-r-card); }
body.bi-v3 .bi-pg .bi-art__side { position:sticky; top:120px; display:flex; flex-direction:column; gap:20px; }
body.bi-v3 .bi-pg .bi-sidelinks { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; }
body.bi-v3 .bi-pg .bi-sidelinks li { margin:0; border-bottom:1px solid var(--bi-line); }
body.bi-v3 .bi-pg .bi-sidelinks li:last-child { border-bottom:0; }
body.bi-v3 .bi-pg .bi-sidelinks a { display:flex; justify-content:space-between; align-items:center; gap:10px; min-height:44px; padding:8px 0; font-size:14px; color:var(--bi-ink); text-decoration:none; }
body.bi-v3 .bi-pg .bi-sidelinks a .bi-arrow { color:var(--bi-gold-text); }
body.bi-v3 .bi-pg .bi-sidelinks a:hover { color:var(--bi-sage-rich); }
body.bi-v3 .bi-pg .bi-prose { font-size:17px; font-weight:300; line-height:1.75; color:var(--bi-ink-mid); overflow-wrap:anywhere; }
body.bi-v3 .bi-pg .bi-prose > * + * { margin-top:1.1em; }
body.bi-v3 .bi-pg .bi-prose :is(h2,h3,h4) { color:var(--bi-ink); margin-top:1.8em; }
body.bi-v3 .bi-pg .bi-prose h2 { font-size:34px; line-height:1.25; }
body.bi-v3 .bi-pg .bi-prose h3 { font-size:25px; line-height:1.3; }
body.bi-v3 .bi-pg .bi-prose h4 { font-size:20px; line-height:1.35; }
body.bi-v3 .bi-pg .bi-prose :is(ul,ol) { padding-left:1.4em; }
body.bi-v3 .bi-pg .bi-prose li { margin:.35em 0; }
body.bi-v3 .bi-pg .bi-prose li > p { margin:0; }
body.bi-v3 .bi-pg .bi-prose ul li::marker { color:var(--bi-gold-fill); }
body.bi-v3 .bi-pg .bi-prose a { color:var(--bi-sage-rich); text-decoration:underline; text-underline-offset:2px; font-weight:400; }
body.bi-v3 .bi-pg .bi-prose strong, body.bi-v3 .bi-pg .bi-prose b { font-weight:600; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-prose blockquote { padding:6px 0 6px 22px; border-left:3px solid var(--bi-gold-fill); font-style:italic; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-prose img { border-radius:var(--bi-r-tile); }
body.bi-v3 .bi-pg .bi-prose table { width:100%; border-collapse:collapse; font-size:15px; display:block; overflow-x:auto; }
body.bi-v3 .bi-pg .bi-prose :is(th,td) { padding:10px 12px; border:1px solid var(--bi-line); text-align:left; vertical-align:top; }
body.bi-v3 .bi-pg .bi-prose th { background:#fff; font-weight:600; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-prose details { padding:14px 18px; background:#fff; border-radius:var(--bi-r-tile); }
body.bi-v3 .bi-pg .bi-prose summary { cursor:pointer; font-weight:500; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-prose iframe, body.bi-v3 .bi-pg .bi-prose video { max-width:100%; }
body.bi-v3 .bi-pg .bi-author { display:flex; gap:20px; align-items:flex-start; padding:28px; background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); }
body.bi-v3 .bi-pg .bi-author > img { flex:0 0 auto; width:72px; height:72px; border-radius:50%; object-fit:cover; }
body.bi-v3 .bi-pg .bi-author > div { display:flex; flex-direction:column; gap:6px; align-items:flex-start; }
body.bi-v3 .bi-pg .bi-author__name { font-size:20px; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-author__role { font-size:13px; color:var(--bi-muted); }
body.bi-v3 .bi-pg .bi-author__bio { font-size:14px; font-weight:300; line-height:1.6; color:var(--bi-ink-mid); }
body.bi-v3 .bi-pg--post .bi-sec--linen .bi-sh { margin-bottom:36px; }

/* Contact Form 7 (Contact page + landing hero forms) */
body.bi-v3 .bi-pg .bi-formcard { display:flex; flex-direction:column; gap:18px; padding:40px; background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); }
body.bi-v3 :is(.bi-cf7,.landing-form-wrapper) .wpcf7 :is(input[type=text],input[type=email],input[type=tel],input[type=date],input[type=number],select,textarea) { width:100%; min-height:48px; padding:12px 14px; border:1.5px solid #D6D1C4; border-radius:var(--bi-r-field); background:#fff; color:var(--bi-ink); font-family:var(--bi-sans) !important; font-size:15px; font-weight:400; line-height:1.4; box-shadow:none; }
body.bi-v3 :is(.bi-cf7,.landing-form-wrapper) .wpcf7 textarea { min-height:120px; resize:vertical; }
body.bi-v3 :is(.bi-cf7,.landing-form-wrapper) .wpcf7 :is(input,select,textarea):focus { border-color:var(--bi-sage-rich); outline:3px solid rgba(23,109,154,.25); outline-offset:0; }
body.bi-v3 :is(.bi-cf7,.landing-form-wrapper) .wpcf7 :is(label,p,span,small,a,legend) { font-family:var(--bi-sans) !important; }
body.bi-v3 .bi-cf7 .wpcf7 label { display:block; font-size:13px; font-weight:600; color:var(--bi-ink); }
body.bi-v3 .bi-cf7 .wpcf7 p { margin:0 0 14px; }
body.bi-v3 :is(.bi-cf7,.landing-form-wrapper) .wpcf7 input[type=submit] { display:inline-flex; width:auto; min-height:48px; padding:12px 28px; border:0; border-radius:var(--bi-r-pill); background:var(--bi-gold-fill) !important; background-color:var(--bi-gold-fill) !important; color:var(--bi-midnight) !important; font-family:var(--bi-sans) !important; font-size:15px; font-weight:700; cursor:pointer; box-shadow:0 4px 12px rgba(234,170,8,.3); }
body.bi-v3 :is(.bi-cf7,.landing-form-wrapper) .wpcf7 input[type=submit]:hover { background:var(--bi-gold); }
body.bi-v3 :is(.bi-cf7,.landing-form-wrapper) .wpcf7-not-valid-tip { font-size:12px; color:#A12C1B; }
body.bi-v3 :is(.bi-cf7,.landing-form-wrapper) .wpcf7-response-output { font-size:14px; border-radius:var(--bi-r-field); margin:12px 0 0 !important; }

/* responsive */
@media (max-width:1199.98px){
  body.bi-v3 .bi-pg .bi-links { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body.bi-v3 .bi-pg .bi-steps--4 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:991.98px){
  body.bi-v3 .bi-wrap { padding-inline:24px; }
  body.bi-v3 .bi-pg .bi-sec, body.bi-v3 .bi-pg .bi-spec { padding:72px 0; }
  body.bi-v3 .bi-pg .bi-sec--flush { padding-top:0; }
  body.bi-v3 .bi-pg .bi-ins { padding-top:72px; }
  body.bi-v3 .bi-pg :is(.bi-split--aside,.bi-faqsplit,.bi-hh__grid,.bi-emp,.bi-phil,.bi-founder,.bi-ins__head,.bi-ins__grid,.bi-spec__head,.bi-art__grid) { grid-template-columns:minmax(0,1fr); gap:40px; }
  body.bi-v3 .bi-pg :is(.bi-faqsplit__intro,.bi-art__side) { position:static; }
  body.bi-v3 .bi-pg .bi-steps--3, body.bi-v3 .bi-pg .bi-blog__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.bi-v3 .bi-pg .bi-spec__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.bi-v3 .bi-pg .bi-spec__card, body.bi-v3 .bi-pg .bi-spec__card:nth-child(4), body.bi-v3 .bi-pg .bi-spec__card:nth-child(5) { grid-column:auto; }
  body.bi-v3 .bi-pg .bi-pc--featured { grid-template-columns:minmax(0,1fr); }
  body.bi-v3 .bi-pg .bi-pc--featured .bi-pc__media { min-height:0; aspect-ratio:16/9; }
  body.bi-v3 .bi-pg .bi-founder__photo { max-width:480px; }
  body.bi-v3 .bi-pg .bi-hh__title { font-size:48px; }
  body.bi-v3 .bi-pg .bi-ph__title { font-size:46px; }
}
@media (max-width:575.98px){
  body.bi-v3 .bi-wrap { padding-inline:16px; }
  body.bi-v3 .bi-pg .bi-sec, body.bi-v3 .bi-pg .bi-spec { padding:56px 0; }
  body.bi-v3 .bi-pg .bi-sec--flush { padding-top:0; }
  body.bi-v3 .bi-pg .bi-ins { padding-top:56px; }
  body.bi-v3 .bi-pg .bi-ph { padding:48px 0 56px; }
  body.bi-v3 .bi-pg .bi-hh { padding:56px 0 64px; }
  body.bi-v3 .bi-pg .bi-ph__glow, body.bi-v3 .bi-pg .bi-hh__glow { right:-300px; top:-220px; }
  body.bi-v3 .bi-pg .bi-hh__title { font-size:40px; line-height:1.12; }
  body.bi-v3 .bi-pg .bi-hh__kicker { font-size:21px; }
  body.bi-v3 .bi-pg :is(.bi-ph__title,.bi-art__title) { font-size:36px; line-height:1.15; }
  body.bi-v3 .bi-pg .bi-h2, body.bi-v3 .bi-pg .bi-close__title { font-size:32px; }
  body.bi-v3 .bi-pg .bi-emp__quote p { font-size:24px; }
  body.bi-v3 .bi-pg :is(.bi-rates,.bi-plans,.bi-steps--3,.bi-steps--4,.bi-blog__grid,.bi-spec__grid,.bi-ins__list,.bi-links) { grid-template-columns:minmax(0,1fr); }
  body.bi-v3 .bi-pg .bi-links__item { min-height:60px; }
  body.bi-v3 .bi-pg :is(.bi-hh__ctas,.bi-row) .bi-b { flex:1 1 100%; }
  body.bi-v3 .bi-pg :is(.bi-formcard,.bi-hh__card,.bi-scard,.bi-rate,.bi-step,.bi-spec__card,.bi-author) { padding:24px; }
  body.bi-v3 .bi-pg .bi-pc--featured .bi-pc__body { padding:24px; }
  body.bi-v3 .bi-pg .bi-pc--featured .bi-pc__title { font-size:26px; }
  body.bi-v3 .bi-pg .bi-prose { font-size:16px; }
  body.bi-v3 .bi-pg .bi-prose h2 { font-size:28px; }
  body.bi-v3 .bi-pg .bi-prose h3 { font-size:22px; }
  body.bi-v3 .bi-pg .bi-author { flex-direction:column; }
  body.bi-v3 .bi-pg .bi-dl > div { flex-direction:column; gap:2px; }
  body.bi-v3 .bi-pg .bi-dl dd { text-align:left; }
}
/* ===== v3 PAGE TEMPLATES END ===== */
/* ===== v3 LANDING SKIN (1.2.0): CSS-only restyle of the theme's landing_page.php markup (ACF copy, h1, hero CF7 form
   and in-body FAQ schema stay exactly as served). Scoped to body.bi-v3-landing. ===== */
body.bi-v3-landing { background:var(--bi-linen); }
body.bi-v3-landing :is(.landing-banner,.education-section,.therapy-section,.simple-text-section,.consultation-section,.landing-faq-section),
body.bi-v3-landing :is(.landing-banner,.education-section,.therapy-section,.simple-text-section,.consultation-section,.landing-faq-section) :is(div,section,form,fieldset,blockquote,figure,figcaption,table,th,td,p,span,a,li,ul,ol,strong,b,em,i,button,label,small,input,textarea,select,cite,time,mark) { font-family:var(--bi-sans); }
body.bi-v3-landing :is(.landing-banner,.education-section,.therapy-section,.simple-text-section,.consultation-section,.landing-faq-section) :is(h1,h2,h3,h4,h5,.landing-title,.faq-title,.accordion-button) { font-family:var(--bi-serif) !important; font-weight:400 !important; letter-spacing:-.01em; font-optical-sizing:auto; font-synthesis:none; }
body.bi-v3-landing :is(h1,h2,h3,h4,.landing-title) :is(em,i,span,a,strong,b) { font-family:inherit !important; }
body.bi-v3-landing .short-underline { display:block; width:48px; height:2px; background:var(--bi-gold-fill) !important; border:0; margin:14px 0 28px; }

/* hero */
body.bi-v3-landing .landing-banner { position:relative; background:var(--bi-hero-grad) !important; background-image:var(--bi-hero-grad) !important; padding:80px 0 88px !important; color:#fff; overflow:hidden; }
body.bi-v3-landing .landing-banner::before { content:""; position:absolute; right:-160px; top:-220px; width:640px; height:640px; border-radius:50%; background:radial-gradient(closest-side, rgba(255,208,106,.18), rgba(255,208,106,0)); pointer-events:none; }
body.bi-v3-landing .landing-banner > .container-lg { position:relative; }
body.bi-v3-landing .landing-banner .banner-content-box { background:transparent !important; backdrop-filter:none !important; -webkit-backdrop-filter:none !important; padding:0 !important; border-radius:0 !important; }
body.bi-v3.bi-v3-landing .landing-banner h6.landing-sub-title { display:flex; align-items:center; gap:10px; margin:0 0 18px; font-family:var(--bi-sans) !important; font-size:12px !important; font-weight:600 !important; letter-spacing:.14em; text-transform:uppercase; color:var(--bi-gold) !important; }
body.bi-v3-landing .landing-banner .landing-sub-title::before { content:""; width:32px; height:1.5px; background:var(--bi-gold-fill); }
body.bi-v3-landing .landing-banner h1.landing-title { font-size:52px !important; line-height:1.12 !important; color:#fff !important; margin:0 0 24px; max-width:760px; }
body.bi-v3-landing .landing-banner :is(.paragraph-text,.paragraph-text p,.banner-content-box p:not(.hero-consult-cta)) { font-size:16px !important; font-weight:300 !important; line-height:1.65 !important; color:rgba(255,255,255,.9) !important; max-width:700px; }
body.bi-v3-landing .landing-banner .banner-content-box p + p { margin-top:14px; }
body.bi-v3-landing .landing-banner .banner-content-box a:not(.consulation-btn) { color:var(--bi-gold) !important; }
body.bi-v3-landing .landing-banner .hero-consult-cta { margin:0 0 28px; }
body.bi-v3.bi-v3-landing a.consulation-btn { display:inline-flex !important; align-items:center; justify-content:center; min-height:44px; padding:12px 26px !important; border:0 !important; border-radius:var(--bi-r-pill) !important; background:var(--bi-gold-fill) !important; background-color:var(--bi-gold-fill) !important; color:var(--bi-midnight) !important; font-family:var(--bi-sans) !important; font-size:15px !important; font-weight:700 !important; line-height:1.2 !important; text-decoration:none !important; box-shadow:0 4px 12px rgba(234,170,8,.3); }
body.bi-v3.bi-v3-landing a.consulation-btn:hover { background:var(--bi-gold) !important; background-color:var(--bi-gold) !important; color:var(--bi-midnight) !important; }
body.bi-v3-landing .landing-form-wrapper { background:#fff !important; border-radius:var(--bi-r-card) !important; padding:32px 28px !important; box-shadow:0 18px 48px rgba(17,30,40,.25) !important; color:var(--bi-ink); text-align:left; }
body.bi-v3-landing .landing-form-wrapper .bio-pic img { width:72px !important; height:72px !important; border-radius:50%; object-fit:cover; border:2px solid var(--bi-gold-fill); }
body.bi-v3-landing .landing-form-wrapper .head-h5 { font-family:var(--bi-sans) !important; font-size:11px !important; font-weight:600 !important; letter-spacing:.14em; text-transform:uppercase; color:var(--bi-gold-text) !important; margin:16px 0 4px !important; }
body.bi-v3-landing .landing-form-wrapper h2.landing-title { font-size:30px !important; line-height:1.2 !important; color:var(--bi-ink) !important; margin:0 0 18px !important; }
body.bi-v3-landing .landing-form-wrapper .landing-fields-wrapper p { margin:0 0 12px; }
body.bi-v3-landing .landing-form-wrapper .wpcf7 :is(input[type=text],input[type=email],input[type=tel],textarea) { background:#fff !important; border:1.5px solid #D6D1C4 !important; color:var(--bi-ink) !important; }
body.bi-v3-landing .landing-form-wrapper .wpcf7 :is(input,textarea)::placeholder { color:#6B7A6F; opacity:1; }
body.bi-v3-landing .landing-form-wrapper .wpcf7 input[type=submit] { width:100% !important; justify-content:center; background:var(--bi-gold-fill) !important; background-color:var(--bi-gold-fill) !important; color:var(--bi-midnight) !important; font-weight:700 !important; }
body.bi-v3-landing .landing-form-wrapper .wpcf7 input[type=submit]:hover { background:var(--bi-gold) !important; background-color:var(--bi-gold) !important; }

/* credentials */
body.bi-v3-landing .education-section { background:#fff !important; padding:72px 0 !important; }
body.bi-v3-landing :is(.education-section,.therapy-section) h2.landing-title { font-size:36px !important; line-height:1.2 !important; color:var(--bi-ink) !important; margin:0; }
body.bi-v3-landing .education-section .educational-list::before { display:none !important; }
body.bi-v3-landing .educational-list { display:flex; flex-wrap:wrap; gap:10px; list-style:none; margin:0; padding:0; }
body.bi-v3-landing .educational-list .educational-item { display:inline-flex; align-items:center; gap:10px; margin:0 !important; padding:10px 18px !important; border:1.5px solid var(--bi-gold-fill); border-radius:var(--bi-r-pill); background:#FFFBF0; font-size:15px !important; font-weight:500; color:var(--bi-ink) !important; }
body.bi-v3-landing .educational-list .bullet-wrapper { display:inline-flex; width:auto !important; height:auto !important; background:transparent !important; margin:0 !important; }
body.bi-v3-landing .educational-list .bullet { display:block; width:8px !important; height:8px !important; border-radius:50%; background:var(--bi-gold-fill) !important; }

/* telehealth boxes */
body.bi-v3-landing .therapy-section { background:var(--bi-linen) !important; padding:72px 0 !important; }
body.bi-v3-landing .therapy-section .therapy-box-wrapper { max-width:none !important; margin-top:8px; display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
body.bi-v3-landing .therapy-box { width:auto !important; margin:0 !important; padding:28px !important; background:#fff !important; border:0 !important; border-top:3px solid var(--bi-gold-fill) !important; border-radius:var(--bi-r-card) !important; box-shadow:0 4px 18px rgba(61,90,74,.07); font-family:var(--bi-sans) !important; font-size:16px !important; font-weight:300 !important; line-height:1.6 !important; color:var(--bi-ink-mid) !important; }

/* long-form body */
body.bi-v3-landing .simple-text-section { background:#fff !important; background-image:none !important; padding:88px 0 !important; }
body.bi-v3-landing .simple-text-wrapper { max-width:820px; margin:0 auto; font-size:17px; font-weight:300; line-height:1.75; color:var(--bi-ink-mid); }
body.bi-v3-landing .simple-text-wrapper :is(p,li) { font-size:17px !important; font-weight:300 !important; line-height:1.75 !important; color:var(--bi-ink-mid) !important; }
body.bi-v3-landing .simple-text-wrapper p { margin:0 0 1.1em; }
body.bi-v3-landing .simple-text-wrapper h2 { font-size:34px !important; line-height:1.25 !important; color:var(--bi-ink) !important; margin:1.8em 0 .6em !important; text-align:left !important; }
body.bi-v3-landing .simple-text-wrapper h3 { font-size:25px !important; line-height:1.3 !important; color:var(--bi-ink) !important; margin:1.5em 0 .5em !important; }
body.bi-v3-landing .simple-text-wrapper > :first-child h2:first-child, body.bi-v3-landing .simple-text-wrapper > h2:first-child { margin-top:0 !important; }
body.bi-v3-landing .simple-text-wrapper ul { padding-left:1.4em; margin:0 0 1.2em; }
body.bi-v3-landing .simple-text-wrapper li { margin:.4em 0; list-style:disc; }
body.bi-v3-landing .simple-text-wrapper li::marker { color:var(--bi-gold-fill); }
body.bi-v3-landing .simple-text-wrapper strong { font-weight:600 !important; color:var(--bi-ink) !important; }
body.bi-v3-landing .simple-text-wrapper a { color:var(--bi-sage-rich) !important; text-decoration:underline; text-underline-offset:2px; }

/* closing call card */
body.bi-v3-landing .consultation-section { background:var(--bi-linen) !important; padding:72px 0 !important; }
body.bi-v3-landing .consultation-section .content-wrapper { background:var(--bi-foot-grad) !important; background-image:var(--bi-foot-grad) !important; border-radius:24px !important; padding:64px 48px !important; text-align:center; color:#fff; }
body.bi-v3-landing .consultation-section .content { max-width:720px; margin:0 auto; display:flex; flex-direction:column; align-items:center; }
body.bi-v3-landing .consultation-section h2.landing-title { font-size:40px !important; line-height:1.2 !important; color:#fff !important; margin:0; }
body.bi-v3-landing .consultation-section .short-underline { margin:16px auto 8px; }
body.bi-v3-landing .consultation-section :is(p,.head-h4) { font-family:var(--bi-sans) !important; font-size:16px !important; font-weight:300 !important; line-height:1.6 !important; color:rgba(255,255,255,.9) !important; }
body.bi-v3-landing .consultation-section .contact-box { display:flex; flex-direction:column; align-items:center; gap:8px; margin-top:12px; background:transparent !important; border:0 !important; padding:0 !important; }
body.bi-v3-landing .consultation-section .contact-box p.landing-title, body.bi-v3-landing .consultation-section .contact-box p.landing-title a { font-family:var(--bi-serif) !important; font-size:34px !important; font-weight:400 !important; color:var(--bi-gold) !important; text-decoration:none; }
body.bi-v3-landing .consultation-section .contact-box .consulation-btn { margin-top:12px; }

/* FAQ */
body.bi-v3-landing .landing-faq-section { background:#fff !important; padding:88px 0 !important; }
body.bi-v3-landing .landing-faq-section .faq-title { font-size:40px !important; line-height:1.2 !important; color:var(--bi-ink) !important; margin:0 0 32px !important; text-align:left; }
body.bi-v3-landing .landing-faq-section .accordion { max-width:900px; border-top:1px solid var(--bi-line); }
body.bi-v3-landing .landing-faq-section .accordion-item { background:transparent !important; border:0 !important; border-bottom:1px solid var(--bi-line) !important; border-radius:0 !important; }
body.bi-v3-landing .landing-faq-section .accordion-header { margin:0 !important; }
body.bi-v3-landing .landing-faq-section .accordion-button { padding:22px 0 !important; background:transparent !important; box-shadow:none !important; font-size:20px !important; line-height:1.35 !important; color:var(--bi-ink) !important; }
body.bi-v3-landing .landing-faq-section .accordion-button:focus-visible { outline:3px solid var(--bi-focus); outline-offset:2px; }
body.bi-v3-landing .landing-faq-section .accordion-body { padding:0 40px 22px 0 !important; font-family:var(--bi-sans) !important; font-size:16px !important; font-weight:300 !important; line-height:1.65 !important; color:var(--bi-ink-mid) !important; }

@media (max-width:991.98px){
  body.bi-v3-landing .landing-banner { padding:56px 0 64px !important; }
  body.bi-v3-landing .landing-banner h1.landing-title { font-size:42px !important; }
  body.bi-v3-landing .therapy-section .therapy-box-wrapper { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:575.98px){
  body.bi-v3-landing .landing-banner h1.landing-title { font-size:34px !important; line-height:1.15 !important; }
  body.bi-v3-landing :is(.education-section,.therapy-section) h2.landing-title, body.bi-v3-landing .landing-faq-section .faq-title, body.bi-v3-landing .consultation-section h2.landing-title { font-size:30px !important; }
  body.bi-v3-landing .simple-text-wrapper h2 { font-size:27px !important; }
  body.bi-v3-landing :is(.simple-text-wrapper p,.simple-text-wrapper li) { font-size:16px !important; }
  body.bi-v3-landing :is(.education-section,.therapy-section,.consultation-section) { padding:56px 0 !important; }
  body.bi-v3-landing :is(.simple-text-section,.landing-faq-section) { padding:56px 0 !important; }
  body.bi-v3-landing .consultation-section .content-wrapper { padding:40px 20px !important; }
  body.bi-v3-landing .landing-form-wrapper { padding:24px 20px !important; }
}
/* ===== v3 LANDING SKIN END ===== */
/* ===== v3 1.3.0 additions ===== */
/* Home hero, Figma 151:7085: vertical gradient, full-bleed cut-out photo right, no frame; photo hidden on mobile as in Figma 257:2642 */
body.bi-v3 .bi-pg .bi-hh { background:linear-gradient(180deg,#1A2B38 0%,#2E5438 100%); min-height:620px; display:flex; align-items:center; padding:64px 0; }
body.bi-v3 .bi-pg .bi-hh > .bi-wrap { width:100%; }
body.bi-v3 .bi-pg .bi-hh__grid { display:block; }
body.bi-v3 .bi-pg .bi-hh__copy { max-width:560px; position:relative; z-index:2; }
body.bi-v3 .bi-pg .bi-hh__photo { position:absolute; right:0; bottom:0; height:100%; width:auto; max-width:none; z-index:1; pointer-events:none; border-radius:0; box-shadow:none; }
@media (max-width:1199px) {
  body.bi-v3 .bi-pg .bi-hh__copy { max-width:54%; }
  body.bi-v3 .bi-pg .bi-hh__photo { width:44%; object-fit:cover; object-position:30% 0; }
}
@media (max-width:991px) {
  body.bi-v3 .bi-pg .bi-hh { min-height:0; padding:56px 0 64px; }
  body.bi-v3 .bi-pg .bi-hh__copy { max-width:none; }
  body.bi-v3 .bi-pg .bi-hh__photo { display:none; }
}
/* Home specialties: 4 cards (Figma 2x2) */
body.bi-v3 .bi-pg .bi-spec__grid--4 .bi-spec__card, body.bi-v3 .bi-pg .bi-spec__grid--4 .bi-spec__card:nth-child(n) { grid-column:span 3; }
/* Home team section (Figma 151:7270) */
body.bi-v3 .bi-pg .bi-hteam__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:40px; }
body.bi-v3 .bi-pg .bi-hteam__card { background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.1); overflow:hidden; display:flex; flex-direction:column; }
body.bi-v3 .bi-pg .bi-hteam__band { height:160px; background:linear-gradient(135deg,#1A2B38 0%,#2E5438 60%); display:flex; align-items:flex-end; padding:0 20px 20px; }
body.bi-v3 .bi-pg .bi-hteam__band img { width:56px; height:56px; border-radius:50%; object-fit:cover; border:2px solid #fff; background:#fff; }
body.bi-v3 .bi-pg .bi-hteam__body { padding:20px; display:flex; flex-direction:column; gap:8px; }
body.bi-v3 .bi-pg .bi-hteam__name { font-size:15px; font-weight:700; color:var(--bi-ink); margin:0; }
body.bi-v3 .bi-pg .bi-hteam__meta { font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--bi-muted); margin:0; }
body.bi-v3 .bi-pg .bi-hteam__eb { font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--bi-gold-text); margin:10px 0 0; }
body.bi-v3 .bi-pg .bi-hteam__open { border:1.5px dashed rgba(61,90,74,.2); border-radius:var(--bi-r-card); padding:40px 28px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:12px; min-height:320px; }
@media (max-width:991px) { body.bi-v3 .bi-pg .bi-hteam__grid { grid-template-columns:minmax(0,1fr); } body.bi-v3 .bi-pg .bi-spec__grid--4 .bi-spec__card, body.bi-v3 .bi-pg .bi-spec__grid--4 .bi-spec__card:nth-child(n) { grid-column:auto; } }
/* About team: open-role card (Figma 111:318) */
body.bi-v3 .bi-about .bi-tcard--open { border:1.5px dashed rgba(61,90,74,.25); box-shadow:none; background:transparent; justify-content:center; }
body.bi-v3 .bi-about .bi-tlink { display:inline-flex; align-items:center; gap:6px; font-size:14px; font-weight:600; color:var(--bi-sage-rich); text-decoration:none; }
body.bi-v3 .bi-about .bi-body a { color:var(--bi-sage-rich); text-decoration:underline; }
/* ---- Specialty landings (1.3.0, Figma service frames) ---- */
body.bi-v3 .bi-pg .bi-ph__actions { margin-top:8px; }
body.bi-v3 .bi-pg .bi-ph__note { font-size:13px; color:rgba(255,255,255,.75); margin-top:4px; }
body.bi-v3 .bi-landing .bi-sh { max-width:760px; margin-bottom:36px; }
body.bi-v3 .bi-landing .bi-sh--center { margin-left:auto; margin-right:auto; }
body.bi-v3 .bi-pg .bi-lsplit { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:56px; align-items:start; }
body.bi-v3 .bi-pg .bi-lsplit__main { display:flex; flex-direction:column; gap:16px; }
body.bi-v3 .bi-pg .bi-lsplit__main .bi-sh { margin-bottom:4px; }
body.bi-v3 .bi-pg .bi-lsplit__side { display:flex; flex-direction:column; gap:16px; }
body.bi-v3 .bi-pg .bi-lsplit:has(.bi-lsplit__side:empty) { grid-template-columns:minmax(0,1fr); max-width:860px; }
body.bi-v3 .bi-pg .bi-lsplit__side:empty { display:none; }
body.bi-v3 .bi-pg .bi-lcard { background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); padding:28px; display:flex; flex-direction:column; gap:12px; }
body.bi-v3 .bi-pg .bi-sec--white .bi-lcard { background:var(--bi-linen); box-shadow:none; }
body.bi-v3 .bi-pg .bi-lcard--plain { background:transparent !important; box-shadow:none; padding:0; }
body.bi-v3 .bi-pg .bi-lcard__eb { font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--bi-gold-text); }
body.bi-v3 .bi-pg .bi-lcard__title, body.bi-v3 .bi-pg .bi-ltile__title { font-family:var(--bi-serif) !important; font-weight:400; font-size:20px; line-height:1.3; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-lquote { background:var(--bi-sage-rich); color:#fff; border-radius:var(--bi-r-card); padding:32px; display:flex; flex-direction:column; gap:14px; }
body.bi-v3 .bi-pg .bi-lquote blockquote p { font-family:var(--bi-serif) !important; font-style:italic; font-size:22px; line-height:1.4; color:#fff; }
body.bi-v3 .bi-pg .bi-lquote .bi-small { color:rgba(255,255,255,.85); }
body.bi-v3 .bi-pg .bi-lticks { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
body.bi-v3 .bi-pg .bi-lticks li { display:flex; gap:10px; align-items:flex-start; font-size:14px; line-height:1.5; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-lticks .bi-tick { flex:0 0 14px; margin-top:4px; color:var(--bi-sage-rich); }
body.bi-v3 .bi-pg .bi-lphases { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:16px; }
body.bi-v3 .bi-pg .bi-lphases li { display:flex; gap:14px; align-items:flex-start; }
body.bi-v3 .bi-pg .bi-lphases__n { flex:0 0 32px; height:32px; border-radius:50%; background:var(--bi-sage-rich); color:#fff; display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:700; }
body.bi-v3 .bi-pg .bi-lphases li > div { display:flex; flex-direction:column; gap:4px; }
body.bi-v3 .bi-pg .bi-lgrid { display:grid; gap:16px; }
body.bi-v3 .bi-pg .bi-lgrid--2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
body.bi-v3 .bi-pg .bi-lgrid--3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
body.bi-v3 .bi-pg .bi-lgrid--4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
body.bi-v3 .bi-pg .bi-sh--center + .bi-lgrid--2 { max-width:900px; margin:0 auto; }
body.bi-v3 .bi-pg .bi-ltile { background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); padding:24px; display:flex; flex-direction:column; gap:10px; }
body.bi-v3 .bi-pg .bi-sec--white .bi-ltile { background:var(--bi-linen); box-shadow:none; }
body.bi-v3 .bi-pg .bi-ltile .bi-tlink { margin-top:auto; }
body.bi-v3 .bi-pg .bi-ltile__tick { width:32px; height:32px; border-radius:50%; background:rgba(61,90,74,.1); color:var(--bi-sage-rich); display:flex; align-items:center; justify-content:center; }
body.bi-v3 .bi-pg .bi-ltile--tick .bi-ltile__title { font-size:17px; }
body.bi-v3 .bi-pg .bi-ltile .bi-small a, body.bi-v3 .bi-pg .bi-lnote a, body.bi-v3 .bi-pg .bi-lcrisis a, body.bi-v3 .bi-pg .bi-lsplit__main a { color:var(--bi-sage-rich); text-decoration:underline; }
body.bi-v3 .bi-pg .bi-lnote { margin-top:20px; text-align:center; }
body.bi-v3 .bi-pg .bi-lsteps { display:grid; gap:16px; list-style:none; margin:0; padding:0; }
body.bi-v3 .bi-pg .bi-lsteps--3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
body.bi-v3 .bi-pg .bi-lsteps--4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
body.bi-v3 .bi-pg .bi-lsteps--5 { grid-template-columns:repeat(5,minmax(0,1fr)); }
body.bi-v3 .bi-pg .bi-lcrisis { border-left:4px solid var(--bi-gold-fill); background:#fff; border-radius:var(--bi-r-card); padding:28px 32px; display:flex; flex-direction:column; gap:8px; }
body.bi-v3 .bi-pg .bi-lcrisis__title { font-family:var(--bi-serif) !important; font-size:22px; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-lform { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:56px; align-items:start; }
body.bi-v3 .bi-pg .bi-lform__card { background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.1); padding:32px; }
body.bi-v3 .bi-pg .bi-sec--white .bi-lform__card { background:var(--bi-linen); box-shadow:none; }
body.bi-v3 .bi-pg .bi-lform__card :is(input[type=text],input[type=email],input[type=tel],textarea) { width:100%; max-width:100%; border:1px solid rgba(61,90,74,.25); border-radius:12px; padding:12px 14px; font-size:15px; background:#fff; color:var(--bi-ink); }
body.bi-v3 .bi-pg .bi-lform__card textarea { min-height:120px; }
body.bi-v3 .bi-pg .bi-lform__card p { margin:0 0 14px; }
body.bi-v3 .bi-pg .bi-lform__card input[type=submit] { background:var(--bi-gold-fill); color:var(--bi-midnight); font-weight:700; border:0; border-radius:999px; padding:14px 28px; font-size:15px; cursor:pointer; }
body.bi-v3 .bi-pg .bi-row--center { justify-content:center; }
@media (max-width:1199px) {
  body.bi-v3 .bi-pg .bi-lgrid--4, body.bi-v3 .bi-pg .bi-lsteps--5 { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body.bi-v3 .bi-pg .bi-lsteps--4 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:991px) {
  body.bi-v3 .bi-pg .bi-lsplit, body.bi-v3 .bi-pg .bi-lform { grid-template-columns:minmax(0,1fr); gap:32px; }
  body.bi-v3 .bi-pg .bi-lgrid--3, body.bi-v3 .bi-pg .bi-lgrid--4, body.bi-v3 .bi-pg .bi-lsteps--3, body.bi-v3 .bi-pg .bi-lsteps--5 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:599px) {
  body.bi-v3 .bi-pg :is(.bi-lgrid--2,.bi-lgrid--3,.bi-lgrid--4,.bi-lsteps--3,.bi-lsteps--4,.bi-lsteps--5) { grid-template-columns:minmax(0,1fr); }
  body.bi-v3 .bi-pg :is(.bi-lcard,.bi-lquote,.bi-lform__card,.bi-lcrisis) { padding:22px; }
}
body.bi-v3 .bi-pg .bi-lform .screen-reader-text { position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
/* ---- Template-only pages (1.3.0): telehealth, FAQ, thank-you, Maya, areas, legal ---- */
body.bi-v3 .bi-pg .bi-mt { margin-top:48px; }
body.bi-v3 .bi-pg .bi-sh.bi-mt { margin-bottom:28px; }
body.bi-v3 .bi-pg .bi-g3 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
body.bi-v3 .bi-pg .bi-tile { background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.07); padding:24px; display:flex; flex-direction:column; gap:10px; }
body.bi-v3 .bi-pg .bi-sec--white .bi-tile { background:var(--bi-linen); box-shadow:none; }
body.bi-v3 .bi-pg .bi-tile--muted { background:transparent !important; box-shadow:none; border:1px dashed rgba(61,90,74,.3); }
body.bi-v3 .bi-pg .bi-tile__eb, body.bi-v3 .bi-pg .bi-toc__eb { font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--bi-gold-text); }
body.bi-v3 .bi-pg .bi-tile a { color:var(--bi-sage-rich); text-decoration:underline; }
body.bi-v3 .bi-pg .bi-towns { font-size:14px; }
body.bi-v3 .bi-pg .bi-split--toc { grid-template-columns:240px minmax(0,1fr); align-items:start; }
body.bi-v3 .bi-pg .bi-toc { position:sticky; top:110px; display:flex; flex-direction:column; gap:10px; padding:24px; background:#fff; border-radius:var(--bi-r-card); }
body.bi-v3 .bi-pg .bi-toc ul { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
body.bi-v3 .bi-pg .bi-toc a { font-size:14px; color:var(--bi-ink); text-decoration:none; }
body.bi-v3 .bi-pg .bi-toc a:hover { color:var(--bi-sage-rich); text-decoration:underline; }
body.bi-v3 .bi-pg .bi-faqgroup { display:flex; flex-direction:column; gap:16px; scroll-margin-top:110px; }
body.bi-v3 .bi-pg .bi-faqgroup + .bi-faqgroup { margin-top:48px; }
body.bi-v3 .bi-pg .bi-legal { display:flex; flex-direction:column; gap:14px; font-size:15px; line-height:1.7; color:var(--bi-ink-mid); }
body.bi-v3 .bi-pg .bi-legal :is(h2,h3) { color:var(--bi-ink); margin-top:16px; scroll-margin-top:110px; }
body.bi-v3 .bi-pg .bi-legal h2 { font-size:28px; }
body.bi-v3 .bi-pg .bi-legal h3 { font-size:20px; }
body.bi-v3 .bi-pg .bi-legal :is(ul,ol) { padding-left:22px; }
body.bi-v3 .bi-pg .bi-legal a { color:var(--bi-sage-rich); text-decoration:underline; overflow-wrap:anywhere; }
body.bi-v3 .bi-pg .bi-steps--list { grid-template-columns:minmax(0,1fr); list-style:none; padding:0; margin:0; }
@media (max-width:991px) {
  body.bi-v3 .bi-pg .bi-g3 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.bi-v3 .bi-pg .bi-split--toc { grid-template-columns:minmax(0,1fr); gap:32px; }
  body.bi-v3 .bi-pg .bi-toc { position:static; }
}
@media (max-width:599px) { body.bi-v3 .bi-pg .bi-g3 { grid-template-columns:minmax(0,1fr); } }
/* ---- Our Team + PPC (1.3.0) ---- */
body.bi-v3 .bi-pg .bi-team__photo { width:100%; max-width:440px; aspect-ratio:1/1; object-fit:cover; border-radius:var(--bi-r-card); display:block; }
body.bi-v3 .bi-pg .bi-team__mono { width:56px; height:56px; border-radius:50%; border:2px solid #fff; background:var(--bi-gold-fill); color:var(--bi-midnight); display:flex; align-items:center; justify-content:center; font-family:var(--bi-serif) !important; font-size:24px; }
body.bi-v3 .bi-pg .bi-ppc__trust { margin-top:6px; }
body.bi-v3 .bi-pg .bi-lform__card.bi-lcard .bi-b { align-self:flex-start; margin-top:6px; }
body.bi-v3 .bi-pg :is(form,fieldset,legend,option,optgroup) { font-family:var(--bi-sans); }
/* ---- Contact (1.3.0): styles live CF7 form 319 in either its current or the approved four-field markup ---- */
body.bi-v3 .bi-pg .bi-cform { display:flex; flex-direction:column; gap:18px; background:#fff; border-radius:var(--bi-r-card); box-shadow:0 4px 18px rgba(61,90,74,.08); padding:40px; }
body.bi-v3 .bi-pg .bi-cform a { color:var(--bi-sage-rich); text-decoration:underline; }
body.bi-v3 .bi-pg .bi-cform__crisis { padding:12px 16px; border-left:3px solid var(--bi-gold-fill); background:var(--bi-linen); border-radius:8px; }
body.bi-v3 .bi-pg .bi-cform__form .wpcf7-form > p, body.bi-v3 .bi-pg .bi-cform__form .bi-cf-row > p, body.bi-v3 .bi-pg .bi-cform__form .form p { margin:0 0 16px; }
body.bi-v3 .bi-pg .bi-cform__form .bi-cf-row, body.bi-v3 .bi-pg .bi-cform__form .row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 16px; margin:0; }
body.bi-v3 .bi-pg .bi-cform__form .row > * { width:auto; max-width:none; padding:0; margin:0; grid-column:1 / -1; }
body.bi-v3 .bi-pg .bi-cform__form .row > .col-md-6 { grid-column:auto; }
body.bi-v3 .bi-pg .bi-cform__form label:not(.screen-reader-text):not(.wpcf7-list-item label) { display:block; font-size:13px; font-weight:600; color:var(--bi-ink); margin-bottom:6px; }
body.bi-v3 .bi-pg .bi-cform__form .wpcf7-list-item label { display:inline-flex; gap:6px; align-items:center; font-size:14px; margin-right:16px; }
body.bi-v3 .bi-pg .bi-cform__form .screen-reader-text { position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
body.bi-v3 .bi-pg .bi-cform__form :is(input[type=text],input[type=email],input[type=tel],select,textarea) { width:100%; max-width:100%; border:1px solid rgba(61,90,74,.25); border-radius:12px; padding:12px 14px; font-size:15px; line-height:1.4; background:#fff; color:var(--bi-ink); box-shadow:none; height:auto; }
body.bi-v3 .bi-pg .bi-cform__form textarea { min-height:120px; resize:vertical; }
body.bi-v3 .bi-pg .bi-cform__form :is(input,select,textarea):focus { border-color:var(--bi-sage-rich); outline:none; box-shadow:0 0 0 3px rgba(61,90,74,.15); }
body.bi-v3 .bi-pg .bi-cform__form .bi-cf-note { font-size:13px; color:var(--bi-ink-mid); }
body.bi-v3 .bi-pg .bi-cform__form input[type=submit] { background:var(--bi-gold-fill); color:var(--bi-midnight); font-weight:700; font-size:15px; border:0; border-radius:999px; padding:14px 28px; cursor:pointer; width:auto; box-shadow:0 4px 12px rgba(234,170,8,.3); }
body.bi-v3 .bi-pg .bi-cform__form input[type=submit]:hover { background:var(--bi-gold); }
body.bi-v3 .bi-pg .bi-cform__form .wpcf7-not-valid-tip { font-size:13px; color:#B42318; margin-top:4px; }
body.bi-v3 .bi-pg .bi-cform__form .wpcf7-response-output { margin:12px 0 0; padding:12px 16px; border-radius:8px; font-size:14px; }
body.bi-v3 .bi-pg .bi-dl dd { margin:0; font-size:14px; text-align:right; color:var(--bi-ink); overflow-wrap:anywhere; }
body.bi-v3 .bi-pg .bi-dl dd a { color:var(--bi-sage-rich); text-decoration:none; }
body.bi-v3 .bi-pg--contact .bi-aside > .bi-b { align-self:stretch; justify-content:center; }
@media (max-width:599px) {
  body.bi-v3 .bi-pg .bi-cform { padding:24px; }
  body.bi-v3 .bi-pg .bi-cform__form .bi-cf-row, body.bi-v3 .bi-pg .bi-cform__form .row { grid-template-columns:minmax(0,1fr); }
  body.bi-v3 .bi-pg .bi-cform__form input[type=submit] { width:100%; }
}

/* 1.3.4 Blog topic Filter Bar (Figma Filter Bar, Theme=Dark) + article count */
body.bi-v3 .bi-pg .bi-fbar { background:var(--bi-sage-rich); border-top:1px solid #fff; padding:12px 0; scroll-margin-top:96px; }
body.bi-v3 .bi-pg .bi-fbar__list { list-style:none; margin:0; padding:0; display:flex; gap:4px; align-items:center; overflow-x:auto; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
body.bi-v3 .bi-pg .bi-fbar__list::-webkit-scrollbar { display:none; }
body.bi-v3 .bi-pg .bi-fbar__list li { margin:0; padding:0; flex:0 0 auto; }
body.bi-v3 .bi-pg .bi-fbar__chip { display:inline-flex; align-items:center; padding:10px 16px; border-radius:var(--bi-r-pill); font-family:var(--bi-sans); font-size:13px; font-weight:500; line-height:1.15; color:rgba(255,255,255,.78); text-decoration:none; white-space:nowrap; transition:background-color .15s,color .15s; }
body.bi-v3 .bi-pg .bi-fbar__chip:hover { color:#fff; background:rgba(255,255,255,.08); text-decoration:none; }
body.bi-v3 .bi-pg .bi-fbar__chip[aria-current="page"] { background:rgba(255,255,255,.14); color:#fff; font-size:13.5px; font-weight:600; }
body.bi-v3 .bi-pg .bi-fbar__chip:focus-visible { outline:3px solid var(--bi-gold); outline-offset:-3px; }
body.bi-v3 .bi-pg .bi-acount { background:#fff; padding:20px 0 0; }
body.bi-v3 .bi-pg .bi-acount__text { margin:0; font-family:var(--bi-sans); font-size:14px; font-weight:300; line-height:1.5; color:var(--bi-muted); }
@media (max-width:991.98px){ body.bi-v3 .bi-pg .bi-fbar { scroll-margin-top:72px; } body.bi-v3 .bi-pg .bi-fbar .bi-wrap { padding-inline:0; } body.bi-v3 .bi-pg .bi-fbar__list { padding-inline:24px; } body.bi-v3 .bi-pg .bi-fbar__list li:last-child { padding-right:24px; } }
@media (max-width:575.98px){ body.bi-v3 .bi-pg .bi-fbar__list { padding-inline:16px; } body.bi-v3 .bi-pg .bi-fbar__list li:last-child { padding-right:16px; } }

body.bi-v3 .bi-pg .bi-blog__empty { display:flex; flex-direction:column; align-items:flex-start; gap:20px; padding:24px 0 8px; }
body.bi-v3 .bi-pg .bi-blog__empty .bi-text { margin:0; }

/* ===== BI-V3 SHELL CSS END ===== */
