/* ============================================================
   Boulder Biologics — Light theme (2026-10 redesign, PREVIEW)
   Re-skins the existing service / condition pages to match the
   redesigned homepage: bone + stone bands, navy hero band, Source
   Serif headings, Source Sans UI, pill buttons, soft white cards,
   and the gradient contact panel.

   To convert a page: set <html data-theme="light">, link
   assets/site-chrome.css then this file LAST in <head> (in place of
   _theme-dark.css), and swap in the .hp-header / .hp-footer markup
   from index.html. Same idea as _theme-dark.css: remap the shared
   tokens first, then override the handful of components that need it.
   ============================================================ */

html[data-theme="light"] {
  --bb-bone-50:   #fbfaf7;
  --bb-bone-100:  #f1eee6;
  --bb-stone-200: rgba(7,23,42,0.10);
  --bb-teal-100:  rgba(21,69,122,0.08);
  --bb-teal-200:  rgba(21,69,122,0.18);
  --bb-teal-300:  #8fd3e8;
  --bb-teal-700:  #15457a;

  --ink:        #07172a;
  --ink-2:      #3a4757;
  --muted:      #5b6877;
  --rule:       rgba(7,23,42,0.14);
  --rule-soft:  rgba(7,23,42,0.10);
  --paper:      #fbfaf7;
  --paper-2:    #f1eee6;

  --brand-primary:       #15457a;
  --brand-primary-hover: #103864;
  --brand-accent:        #2a9fd6;
  --brand-accent-hover:  #1f8cc0;
  --brand-accent-dim:    #15457a;

  --font-display: 'Source Sans 3', system-ui, sans-serif;  /* UI: labels, nav, buttons */
  --r-md: 16px;
  --r-lg: 20px;
  --max: 1152px;

  --shadow-xs: 0 1px 2px rgba(7,23,42,0.05);
  --shadow-sm: 0 1px 2px rgba(7,23,42,0.05), 0 6px 18px rgba(7,23,42,0.05);
  --shadow-md: 0 2px 4px rgba(7,23,42,0.06), 0 12px 28px rgba(7,23,42,0.08);
}
html[data-theme="light"] body { background: var(--paper); color: var(--ink); }

/* Retired on this theme: the old announce bar (the header now carries the call button) */
html[data-theme="light"] .announce { display: none; }

/* ── Type ─────────────────────────────────────────────────────── */
html[data-theme="light"] :is(.h1, .h2, .h3, h1.h1, h2.h2),
html[data-theme="light"] :is(.step, .cond-card, .related-card, .formulation-card, .therapy-card, .callout, .cand-col, .candidacy__col, .candidacy__cta, .faq-list) :is(h3, summary),
html[data-theme="light"] .final-cta h2 {
  font-family: 'Source Serif 4', Georgia, serif; font-weight: 600; letter-spacing: -0.01em;
}
html[data-theme="light"] :is(.h1, h1.h1) { font-size: clamp(38px, 4.6vw, 56px); line-height: 1.08; }
html[data-theme="light"] :is(.h2, h2.h2) { font-size: clamp(30px, 3.2vw, 42px); line-height: 1.15; }
html[data-theme="light"] :is(.step, .cond-card, .related-card, .formulation-card, .therapy-card) h3 { font-size: 19px; line-height: 1.3; }
html[data-theme="light"] .eyebrow {
  font-family: 'Source Sans 3', sans-serif; font-weight: 600; font-size: 14px;
  letter-spacing: 0.16em; text-transform: uppercase; color: #15457a;
}
html[data-theme="light"] .eyebrow.on-dark { color: #8fd3e8; }
html[data-theme="light"] .lede { font-family: 'Source Sans 3', sans-serif; font-size: 18.5px; line-height: 1.6; color: var(--ink-2); }
html[data-theme="light"] .lede a { color: #15457a; font-weight: 600; }

/* ── Buttons → pills ──────────────────────────────────────────── */
html[data-theme="light"] .btn {
  font-family: 'Source Sans 3', sans-serif; font-weight: 600; font-size: 16px; letter-spacing: 0;
  padding: 12px 22px; border-radius: 999px; box-shadow: none; transform: none;
}
html[data-theme="light"] .btn-sm { font-size: 15px; padding: 9px 18px; }
html[data-theme="light"] .btn-primary { background: #15457a; color: #fff; }
html[data-theme="light"] .btn-primary:hover { background: #103864; }
html[data-theme="light"] .btn-accent { background: #22507e; color: #fff; border-color: rgba(143,211,232,0.40); }
html[data-theme="light"] .btn-accent:hover { background: #2b6299; }
html[data-theme="light"] .btn-outline { background: transparent; color: #15457a; border-color: rgba(7,23,42,0.22); }
html[data-theme="light"] .btn-outline:hover { background: rgba(21,69,122,0.06); color: #15457a; border-color: #15457a; }

/* ── Navy top band: PRP sub-nav, breadcrumb, hero ─────────────── */
html[data-theme="light"] :is(.variant-subnav, .crumbs, .svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) { background: #07172a; color: #eef4f8; }
html[data-theme="light"] .variant-subnav { border-bottom: 1px solid rgba(255,255,255,0.10); }
html[data-theme="light"] .variant-subnav .label { color: #8fd3e8; font-family: 'Source Sans 3', sans-serif; letter-spacing: 0.14em; text-transform: uppercase; font-size: 12px; }
html[data-theme="light"] .variant-subnav a { color: rgba(221,232,241,0.84); font-family: 'Source Sans 3', sans-serif; border-radius: 999px; padding: 6px 14px; }
html[data-theme="light"] .variant-subnav a:hover { background: rgba(255,255,255,0.08); color: #fff; }
html[data-theme="light"] .variant-subnav a[aria-current="page"] { background: #22507e; color: #fff; box-shadow: inset 0 0 0 1px rgba(143,211,232,0.40); }
html[data-theme="light"] .crumbs { max-width: none; margin: 0; padding: 18px max(var(--gutter), calc((100% - var(--max)) / 2)) 0; }
html[data-theme="light"] .crumbs, html[data-theme="light"] .crumbs a { color: rgba(221,232,241,0.70); }
html[data-theme="light"] .crumbs a:hover, html[data-theme="light"] .crumbs .cur { color: #eef4f8; }
html[data-theme="light"] .crumbs .sep { color: rgba(221,232,241,0.40); }

html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) {
  position: relative; overflow: hidden;
  background: radial-gradient(ellipse 60% 80% at 30% 0%, rgba(21,99,135,0.40), transparent 70%), #07172a;
  padding-top: 40px; padding-bottom: 96px;
}
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) :is(.h1, h1.h1) { color: #eef4f8; }
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) .lede { color: rgba(221,232,241,0.84); }
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) .eyebrow { color: #8fd3e8; }
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) .chip {
  background: rgba(255,255,255,0.06); color: #cfe6f5; border-color: rgba(255,255,255,0.18);
  font-family: 'Source Sans 3', sans-serif; border-radius: 999px;
}
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) .btn-primary { background: #22507e; color: #fff; border-color: rgba(143,211,232,0.40); }
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) .btn-primary:hover { background: #2b6299; }
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) .btn-outline { color: #8fd3e8; border-color: rgba(255,255,255,0.28); }
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) .btn-outline:hover { background: rgba(255,255,255,0.08); color: #8fd3e8; border-color: rgba(255,255,255,0.45); }

/* Cell art behind the service hero, as on the dark theme */
html[data-theme="light"] .svc-hero__cell {
  position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background: url(assets/cell-orange.jpg) no-repeat;
  background-image: image-set(url(assets/cell-orange.avif) type("image/avif"), url(assets/cell-orange.jpg) type("image/jpeg"));
  background-position: 12% 22%; background-size: 52% auto;
  mix-blend-mode: screen; opacity: 0.45;
  -webkit-mask-image: radial-gradient(27% 31% at 33% 39%, #000 0%, rgba(0,0,0,0.62) 40%, rgba(0,0,0,0.22) 70%, transparent 92%);
          mask-image: radial-gradient(27% 31% at 33% 39%, #000 0%, rgba(0,0,0,0.62) 40%, rgba(0,0,0,0.22) 70%, transparent 92%);
}
html[data-theme="light"] .svc-hero__cell--prp { background-image: url(assets/cell-platelet.jpg); background-image: image-set(url(assets/cell-platelet.avif) type("image/avif"), url(assets/cell-platelet.jpg) type("image/jpeg")); opacity: 0.6; }
html[data-theme="light"] .svc-hero__cell--net { background-image: url(assets/cell-network.jpg); background-image: image-set(url(assets/cell-network.avif) type("image/avif"), url(assets/cell-network.jpg) type("image/jpeg")); opacity: 0.4; }
html[data-theme="light"] .svc-hero__scrim {
  position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background: linear-gradient(100deg, rgba(7,17,38,0.66) 0%, rgba(7,17,38,0.34) 30%, rgba(7,17,38,0) 56%);
}
html[data-theme="light"] :is(.svc-hero__grid, .cond-hero__grid) { position: relative; z-index: 1; }

/* Every page hero shares the navy band. Flip the text tokens inside it so
   page-specific hero styles (bio, FAQ, legal, cost…) read light-on-navy,
   then flip them back inside any white card that sits in a hero. */
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) {
  --ink: #eef4f8; --ink-2: rgba(221,232,241,0.84); --muted: rgba(221,232,241,0.72); --subtle: rgba(221,232,241,0.5);
  --rule: rgba(255,255,255,0.14); --rule-soft: rgba(255,255,255,0.10);
  --brand-accent-dim: #8fd3e8; --brand-primary: #8fd3e8;
  color: var(--ink);
}
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) :is(p, li, dd, dt) { color: var(--ink-2); }
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) :is(h1, h2, h3, .h1, .h2, .h3) { color: var(--ink); }
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) :is([class*="card"], .facts, .facts-card, .glance-strip):not([class*="portal-card"]) {
  --ink: #07172a; --ink-2: #3a4757; --muted: #5b6877; --subtle: #8a929b;
  --rule: rgba(7,23,42,0.14); --rule-soft: rgba(7,23,42,0.10);
  --brand-accent-dim: #15457a; --brand-primary: #15457a;
}
html[data-theme="light"] :is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero) .portal-card { --ink: #eef4f8; --ink-2: rgba(221,232,241,0.84); --muted: rgba(221,232,241,0.72); }

/* Hero fact card: white card on the navy band */
html[data-theme="light"] :is(.facts, .facts-card) {
  background: #f1eee6; border: 1px solid rgba(255,255,255,0.12); border-radius: 20px;  /* stone, like the band below: softer than white on navy */
  box-shadow: 0 18px 40px rgba(2,8,15,0.35);
}
html[data-theme="light"] :is(.facts__lbl, .facts-card__lbl) { font-family: 'Source Sans 3', sans-serif; letter-spacing: 0.14em; text-transform: uppercase; font-size: 12px; color: #15457a; }
html[data-theme="light"] :is(.facts__k, .facts-card__k) { font-family: 'Source Sans 3', sans-serif; color: #15457a; }

/* ── Bands + cards ────────────────────────────────────────────── */
html[data-theme="light"] section:not(:is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero, .final-cta)) { padding-top: 96px; padding-bottom: 96px; }
html[data-theme="light"] section.alt { background: #f1eee6; }
html[data-theme="light"] section.candidacy:not(.alt) { background: var(--paper); }  /* condition pages: keep bands alternating */
html[data-theme="light"] :is(.step, .cond-card, .related-card, .formulation-card, .therapy-card, .callout, .lab-box, .candidacy__col, .cand-col.is-yes) {
  background: #fff; border: 1px solid var(--rule); border-radius: 16px; box-shadow: var(--shadow-sm);
}
html[data-theme="light"] :is(.related-card, .cond-card):hover { border-color: rgba(21,69,122,0.45); box-shadow: var(--shadow-md); }
html[data-theme="light"] .step .num, html[data-theme="light"] .therapy-card .num { color: #15457a; letter-spacing: 0.12em; text-transform: uppercase; }
html[data-theme="light"] .faq-list details { border-color: var(--rule); }
html[data-theme="light"] .faq-list summary .plus { color: #15457a; }

/* Navy CTA card inside the "talking it through" sections → homepage gradient */
html[data-theme="light"] :is(.cand-col.is-cta, .candidacy__cta) {
  background: linear-gradient(170deg, #0f6387 0%, #15457a 60%, #0c2a4d 100%); border: 0; border-radius: 20px;
}
html[data-theme="light"] :is(.cand-col.is-cta, .candidacy__cta)::before { display: none; }
html[data-theme="light"] :is(.cand-col.is-cta, .candidacy__cta) .eyebrow { color: #8fd3e8; }
html[data-theme="light"] :is(.cand-col.is-cta, .candidacy__cta) h3 { color: #fff; font-family: 'Source Serif 4', Georgia, serif; font-weight: 600; }
html[data-theme="light"] :is(.cand-col.is-cta, .candidacy__cta) p { color: rgba(255,255,255,0.86); }
html[data-theme="light"] :is(.cand-col.is-cta, .candidacy__cta) .btn-primary { background: #fff; color: #0a1726; }
html[data-theme="light"] :is(.cand-col.is-cta, .candidacy__cta) .btn-primary:hover { background: #e6eef5; }
html[data-theme="light"] :is(.cand-col.is-cta, .candidacy__cta) .btn-outline { color: #fff; border-color: rgba(255,255,255,0.5); }
html[data-theme="light"] :is(.cand-col.is-cta, .candidacy__cta) .btn-outline:hover { background: rgba(255,255,255,0.10); color: #fff; }

/* ── Closing "schedule" section → inset gradient panel, as on the homepage ── */
html[data-theme="light"] section.final-cta { background: var(--paper); padding: 0 var(--gutter) 80px; }
html[data-theme="light"] section.final-cta > .inner {
  background: linear-gradient(170deg, #0f6387 0%, #15457a 60%, #0c2a4d 100%);
  border-radius: 24px; padding: 56px; color: #fff;
}
html[data-theme="light"] .final-cta h2 { color: #fff; }
html[data-theme="light"] .final-cta p { color: rgba(255,255,255,0.86); }
html[data-theme="light"] .final-cta :is(.cta-form, .intake-form) {
  background: rgba(6,15,28,0.45); border: 1px solid rgba(255,255,255,0.16); border-radius: 20px;
}
html[data-theme="light"] .final-cta :is(.cta-form, .intake-form) :is(input, select, textarea) {
  background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.18); border-radius: 10px; color: #fff;
}
html[data-theme="light"] .final-cta :is(.cta-form, .intake-form) select option { color: #07172a; background: #fff; }
html[data-theme="light"] .final-cta :is(.cta-form, .intake-form) label { font-family: 'Source Sans 3', sans-serif; color: rgba(221,232,241,0.92); }
html[data-theme="light"] .final-cta :is(.cta-form, .intake-form) :is(.btn, button[type="submit"]) {
  background: transparent; color: #fff; border: 1px solid rgba(255,255,255,0.5); border-radius: 999px;
}
html[data-theme="light"] .final-cta :is(.cta-form, .intake-form) :is(.btn, button[type="submit"]):hover { background: rgba(255,255,255,0.10); }
html[data-theme="light"] .final-cta .btn-outline, html[data-theme="light"] .final-cta .btn-ghost-light { color: #fff; border-color: rgba(255,255,255,0.5); }

/* Closing form: fields pair up in two columns, as on the homepage */
html[data-theme="light"] section.final-cta > .inner { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.35fr); gap: 48px; }
html[data-theme="light"] .final-cta :is(.cta-form, .intake-form) { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px 16px; align-items: start; }
html[data-theme="light"] .final-cta :is(.cta-form, .intake-form) > :is(.row, p, span, button, .btn, .form-error),
html[data-theme="light"] .final-cta :is(.cta-form, .intake-form) > div:has(input[type="checkbox"]) { grid-column: 1 / -1; }
html[data-theme="light"] .final-cta :is(.cta-form, .intake-form) > :is(button, .btn) { justify-self: start; min-width: 240px; }

/* "What we look at together" list becomes a padded white card */
html[data-theme="light"] :is(.cand-col.is-yes, .candidacy__col) { padding: 28px 30px; }

@media (max-width: 900px) {
  html[data-theme="light"] section.final-cta > .inner { padding: 36px 24px; }
  html[data-theme="light"] section:not(:is(.svc-hero, .cond-hero, .bio-hero, .ct-hero, .contact-hero, .cost-hero, .faq-hero, .reg-hero, .spec-hero, .legal-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero, .final-cta)) { padding-top: 72px; padding-bottom: 72px; }
}
@media (max-width: 900px) {
  html[data-theme="light"] section.final-cta > .inner { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  html[data-theme="light"] .final-cta :is(.cta-form, .intake-form) { grid-template-columns: 1fr; }
  html[data-theme="light"] .final-cta :is(.cta-form, .intake-form) > :is(button, .btn) { justify-self: stretch; }
  html[data-theme="light"] section.final-cta { padding: 0 16px 56px; }
  html[data-theme="light"] section.final-cta > .inner { padding: 28px 18px; border-radius: 20px; }
}

/* Page-specific hero fixes */
html[data-theme="light"] .spec-hero .eyebrow { display: block; }  /* inline-flex split the text around the highlighted word */
html[data-theme="light"] .spec-hero .eyebrow::before { display: inline-block; margin-right: 10px; vertical-align: middle; }
html[data-theme="light"] :is(.legal-hero, .faq-hero, .ct-hero, .contact-hero, .cost-hero, .reg-hero, .learn-hero, .lv-hero, .facility-hero, .pat-hero, .bio-hero) h1 {
  font-family: 'Source Serif 4', Georgia, serif; font-weight: 600; letter-spacing: -0.01em;
}
html[data-theme="light"] .pat-hero__quick a {
  background: transparent; color: #8fd3e8; border-color: rgba(255,255,255,0.28); font-family: 'Source Sans 3', sans-serif;
}
html[data-theme="light"] .pat-hero__quick a:hover { background: rgba(255,255,255,0.08); color: #8fd3e8; border-color: rgba(255,255,255,0.45); }

/* Investigational notice strip that sits inside the navy service hero (TBI, Long COVID,
   other systemic): its own background is a light stone colour, so give it a dark
   translucent panel to match the light text it inherits from the hero. */
html[data-theme="light"] :is(.svc-hero, .cond-hero) .invest-strip {
  background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.18); color: rgba(221,232,241,0.92);
  position: relative; z-index: 1;
}
html[data-theme="light"] :is(.svc-hero, .cond-hero) .invest-strip :is(p, a, strong) { color: inherit; }
html[data-theme="light"] :is(.svc-hero, .cond-hero) .invest-strip a { color: #8fd3e8; }
html[data-theme="light"] :is(.svc-hero, .cond-hero) .invest-strip .pip { background: rgba(143,211,232,0.16); color: #8fd3e8; }

/* Labels inside navy cards keep the light-blue label colour */
html[data-theme="light"] .clean .eyebrow { color: #8fd3e8; }

/* Phone buttons in page bodies: icon + number (the word "Call" was dropped) */
html[data-theme="light"] .btn .hp-call-ic { width: 1em; height: 1em; flex: none; }

/* "Talking it through": the checklist card and the call-to-action card are the same height */
html[data-theme="light"] :is(.candidacy-grid, .candidacy__grid) { align-items: stretch; }

/* ── Contrast fixes (site-wide sweep, WCAG AA) ───────────────── */
/* Breadcrumb variant used inside the FAQ hero */
html[data-theme="light"] .svc-hero__crumbs, html[data-theme="light"] .svc-hero__crumbs a { color: rgba(221,232,241,0.78); }
html[data-theme="light"] .svc-hero__crumbs .cur { color: #eef4f8; }
/* Tags/chips that sit on the sky-blue accent: dark text, as on the sky buttons */
html[data-theme="light"] .compare-card.is-feature .ctag,
html[data-theme="light"] .chip.is-solid { color: #02131f; }
/* Navy cards keep the light teal label tints the light theme otherwise mutes */
html[data-theme="light"] :is(.platform-card, .clean, .cand-col.is-cta, .candidacy__cta, .portal-card, section.final-cta) {
  --bb-teal-100: rgba(143,211,232,0.16); --bb-teal-200: #b9e5e7; --bb-teal-300: #8fd3e8;
}
/* "No" in the For Practices comparison table */
html[data-theme="light"] .cmp .no { color: var(--muted); }

/* Closing panels WITHOUT a form (Cost, Patients…): two equal columns, side card
   centred against the copy. The narrower copy column above is only for forms. */
html[data-theme="light"] section.final-cta > .inner:not(:has(form)) {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center;
}
@media (max-width: 900px) {
  html[data-theme="light"] section.final-cta > .inner:not(:has(form)) { grid-template-columns: 1fr; }
}

/* White strips that sit in a navy hero (Longevity "at a glance") match the stone fact cards */
html[data-theme="light"] :is(.lv-hero, .svc-hero, .cond-hero) :is(.glance-strip, .toc-card) { background: #f1eee6; }
