/* ==========================================================================
   STANDFAST THEME LAYER (mockup, 2026-09-08)
   One dark, layered, editorial world. Navy and gold stay the identity;
   cream survives only as headings and as "paper" objects (review cards,
   the hero packet illustration, the price-card top band).
   Loaded LAST in <head>. Overrides inline <style> blocks, visual-upgrade.css,
   crsc-calc.css and the CSS injected by sf-growth.js / sf-payplans.js.
   Surfaces, color, type scale, spacing and component styling only.
   ========================================================================== */

/* ---------- 1. Tokens ---------- */
:root {
  --ink: #0F1722;
  --navy: #1A2332;
  --navy-2: #243044;
  --slate: #22304A;
  --slate-2: #2B3A57;
  --gold: #C9A961;
  --gold-deep: #A8893F;
  --line: rgba(201, 169, 97, .22);
  --cream: #F5F1E8;
  --body: #C9D0DC;
  --muted: #929BAA;           /* spec #8A93A2 lifted one step: 4.71:1 on slate (was 4.26) */
  --ok: #7FB27A;
  --alert: #E07A6B;
  /* legacy levers used by the page-local stylesheets */
  --cream-2: var(--navy);     /* every cream-2 surface flips to navy */
  --od: var(--gold);          /* olive accents (links, eyebrows, checks, rules) become gold */
  --od-2: var(--gold-deep);
  --gold-soft: rgba(201, 169, 97, .16);
  --shadow-card: 0 12px 32px rgba(0, 0, 0, .35);
  --shadow-lift: 0 18px 40px rgba(0, 0, 0, .45);
  --paper-ink: #1A2332;       /* text on paper objects */
  --paper-muted: #4F5A6A;     /* 6.2:1 on cream */
  --sf-texture: repeating-linear-gradient(-32deg, rgba(201, 169, 97, .06) 0 1px, transparent 1px 26px);
}

/* ---------- 2. Ground, type scale ---------- */
html { background: var(--ink); }
body {
  background: var(--ink) !important;
  color: var(--body);
  font-size: 17px;
  line-height: 1.65;
}
h1, h2, h3, h4 { color: var(--cream); }
h2 { font-size: 44px; line-height: 1.12; letter-spacing: .01em; }
h3 { color: var(--cream); }
p { color: inherit; }
a { color: var(--gold); }
a:hover { color: var(--cream); }
strong, b { color: inherit; }
::selection { background: rgba(201, 169, 97, .35); color: var(--cream); }

/* headings that live inside components keep their component scale */
.sf-calc h2 { font-size: 19px; letter-spacing: .5px; }
.exit h2 { font-size: 30px; }
.newsletter-band h2 { font-size: 1.6rem; }
.result-head h2 { font-size: 1.7rem; }
body .sf-common-q h2 { font-size: 30px; }
.midcta h3 { color: var(--cream); }

/* eyebrows: small caps, .18em tracking, gold */
.eyebrow, .est-eyebrow, .qnum, .promo-eyebrow, .soto-eyebrow, header.hero .eyebrow, .article-hero .eyebrow,
section.dark .eyebrow, .testimonials-real .eyebrow, body .team-compact .eyebrow, .result-head .badge {
  font-family: 'Oswald', sans-serif;
  font-size: .78rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--gold);
}

/* captions */
.hint, .note, .chart-note, .reviewed, .sf-cc-note, .promo-fine, .va-src, .roi-fine, .hpc-note,
.branch-disclaimer, .footer-disclaimer, .testimonials-footnote, .est-hint, .est-fine, .email-cap .note,
.pnote, .sf-pu-fine, .sf-tiers, .form-note, .newsletter-note, .crumbs, .price-note, .pay-line, .sf-sub,
.sf-calc .note, .sf-calc .hint, .sf-calc .disc, .sf-gate .note, .sf-pu-note, .gate-card .note, .qhelp, .disc {
  color: var(--muted);
}
.hint, .note, .chart-note, .reviewed, .sf-cc-note, .promo-fine, .va-src, .roi-fine, .hpc-note,
.branch-disclaimer, .footer-disclaimer, .est-hint, .est-fine, .email-cap .note, .pnote, .sf-pu-fine,
body .sf-tiers, .form-note, .newsletter-note, .sf-calc .note, .sf-calc .hint, .sf-gate .note, .sf-pu-note { font-size: 13px; }

/* numbers */
.stat-num, .price-card .price, .sf-calc .big, .finder .out .amt, .cap-card .big, .est-fig .num,
.sf-pu-figs b, .svc .price, .sf-calc .rrow b, .est-result .num, .finder .out-est .amt {
  font-variant-numeric: tabular-nums;
  color: var(--gold);
}

/* ---------- 3. Buttons ---------- */
/* primary: gold fill, ink text, 2px radius, one slow shimmer on load */
.btn-gold, .btn.btn-gold, .hero .btn-gold, .midcta .btn-gold,
body:has(nav.top) .btn:not(.btn-outline):not(.seg-btn),
header.hero .btn:not(.btn-outline), .cta-row .btn:not(.btn-outline), .exit .btn:not(.btn-outline),
.sf-cc-btn, .sf-calccard a.sf-cc-btn,
.sf-calc .sf-gate .g-btn, .sf-gate .g-btn, .sf-pu-btn, .sf-calc .sf-pu-btn,
.sfb-btn, .sfb-book, .sticky-cta .sc-form, .sticky-cta .book, form button.btn-gold,
.gate-card .btn:not(.btn-outline), .est-card .btn:not(.btn-outline), .qcard .btn:not(.btn-outline),
.btns a.btn-gold {
  position: relative;
  overflow: hidden;
  background: var(--gold) !important;
  background-image: none !important;
  color: var(--ink) !important;
  border: 1px solid var(--gold) !important;
  border-radius: 2px !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, .35);
  animation: none;
}
.btn-gold::after, .hero .btn-gold::after, header.hero .btn:not(.btn-outline)::after, .cta-row .btn:not(.btn-outline)::after, .sf-cc-btn::after,
.sf-gate .g-btn::after, .sf-pu-btn::after, .sfb-btn::after, .sfb-book::after, .sticky-cta .sc-form::after,
.sticky-cta .book::after, form button.btn-gold::after, body:has(nav.top) .btn:not(.btn-outline):not(.seg-btn)::after, .btns a.btn-gold::after {
  content: '';
  position: absolute;
  top: -40%; bottom: -40%; left: 0; width: 45%;
  background: linear-gradient(100deg, transparent 0%, rgba(255, 255, 255, .55) 50%, transparent 100%);
  transform: translateX(-160%) skewX(-18deg);
  animation: sf-shimmer 1.6s linear .5s 1 forwards;
  pointer-events: none;
}
@keyframes sf-shimmer { to { transform: translateX(340%) skewX(-18deg); } }
.btn-gold:hover, .hero .btn-gold:hover, header.hero .btn:not(.btn-outline):hover, .cta-row .btn:not(.btn-outline):hover, .sf-cc-btn:hover,
.sf-gate .g-btn:hover, .sf-pu-btn:hover, .sfb-btn:hover, .sfb-book:hover, body:has(nav.top) .btn:not(.btn-outline):not(.seg-btn):hover,
.sf-calc .sf-gate .g-btn:hover, .btns a.btn-gold:hover {
  background: #D6B872 !important;
  color: var(--ink) !important;
  box-shadow: 0 0 0 4px rgba(201, 169, 97, .22), 0 8px 22px rgba(0, 0, 0, .4);
  text-decoration: none;
}

/* secondary: 1.5px gold outline, cream text (replaces every olive / navy / white-fill button) */
.btn, .btn-outline, .btn-outline.on-light, .seg-btn, .midcta .btn-outline, .eligibility-callout .btn-outline,
.sticky-cta .sc-cform, .sticky-cta .sc-call, .sticky-cta .cform, .sticky-cta .call, .btns a.btn-outline,
body .sf-pp-btn, body .sfb-dl, body .sfb-opt {
  background: transparent;
  color: var(--cream);
  border: 1.5px solid var(--gold);
  border-radius: 2px;
  box-shadow: none;
}
.btn:hover, .btn-outline:hover, .btn-outline.on-light:hover, .seg-card:hover .seg-btn, .sticky-cta .sc-cform:hover,
.sticky-cta .sc-call:hover, .sticky-cta .cform:hover, .sticky-cta .call:hover, .btns a.btn-outline:hover, body .sfb-dl:hover, body .sfb-opt:hover {
  background: rgba(201, 169, 97, .14);
  color: var(--cream);
  border-color: var(--gold);
  box-shadow: 0 0 0 4px rgba(201, 169, 97, .16);
  text-decoration: none;
}
.midcta .btn-outline, .midcta .btn-outline[style] { border-color: var(--gold) !important; color: var(--cream) !important; }
.sf-calc .sf-gate .g-btn, .sf-gate .g-btn { border-radius: 2px; }
.btn:active { transform: translateY(1px); }

/* quiet: cream underline */
.quiet, .gr-more a, .hero-phone-callout a, .intake-more > summary, .sf-pu-alt, .sf-calc .sf-pu-alt,
.restart button, .qback, body .sfx-x, .sf-modeback a {
  background: none;
  border: 0;
  color: var(--cream);
  text-decoration: underline;
  text-decoration-color: rgba(201, 169, 97, .7);
  text-underline-offset: 4px;
  border-radius: 0;
}
.qback, .sf-modeback a, .restart button { border: 0; padding: 0; }
body .gr-more a:hover, .sf-pu-alt:hover, .restart button:hover, .qback:hover { color: var(--gold); text-decoration-color: var(--gold); }

@media (prefers-reduced-motion: reduce) {
  .btn-gold::after, .hero .btn-gold::after, header.hero .btn::after, .cta-row .btn::after, .sf-cc-btn::after,
  .sf-gate .g-btn::after, .sf-pu-btn::after, .sfb-btn::after, .sfb-book::after, .sticky-cta .sc-form::after,
  .sticky-cta .book::after, form button.btn-gold::after, body:has(nav.top) .btn::after, .btns a.btn-gold::after { animation: none; display: none; }
}

/* ---------- 4. Inputs ---------- */
input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]),
select, textarea,
.sf-calc select, .sf-calc input[type=number], .sf-calc .sf-gate input, .sf-calc .sf-gate select,
.sf-gate input, .sf-gate select, .finder select, .est-l input, .est-l select, .gate-card input, .gate-card select,
.sfb-form input, .sfx-card input, .newsletter-form input[type=text], .newsletter-form input[type=email],
form[name="intake"] select, form textarea, form select, .email-cap input[type=email], #f_gross {
  background: var(--slate) !important;
  background-color: var(--slate) !important;
  color: var(--cream) !important;
  border: 1px solid var(--line) !important;
  border-radius: 6px;
  color-scheme: dark;
}
input::placeholder, textarea::placeholder, .sf-calc .sf-gate input::placeholder, .sf-gate input::placeholder,
.newsletter-form input::placeholder { color: var(--muted) !important; opacity: 1; }
select option { background: var(--slate); color: var(--cream); }
input:focus, textarea:focus, select:focus, .sf-calc select:focus, .sf-calc input:focus, .est-l input:focus, .est-l select:focus,
.email-cap input[type=email]:focus {
  outline: 2px solid var(--gold) !important;
  outline-offset: 2px;
  border-color: var(--gold) !important;
  box-shadow: none;
}
:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.sf-calc .sf-gate select {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='%23C9A961' d='M1 1l5 5 5-5'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  background-size: 11px !important;
}
input[type=checkbox], input[type=radio] { accent-color: var(--gold); }
.sf-calc .sf-gate input[aria-invalid=true], .sf-calc .sf-gate select[aria-invalid=true], .gate-card input[aria-invalid=true],
.gate-card select[aria-invalid=true], .est-l input[aria-invalid=true], .est-l select[aria-invalid=true],
body .sfb-form input[aria-invalid=true], body .sfx-card input[aria-invalid=true] {
  border-color: var(--alert) !important;
  box-shadow: 0 0 0 2px rgba(224, 122, 107, .25);
}
.g-err, .sf-calc .sf-gate .g-err, body .sfb-err { color: var(--alert); }
body .sf-submit-error { background: rgba(224, 122, 107, .12); border-color: var(--alert); color: #F3C9C2; }
body .sf-submit-error a { color: #F3C9C2; }
body .sf-submit-error .sf-retry { background: var(--alert); color: var(--ink); }

/* ---------- 5. Cards (shared recipe) ---------- */
.seg-card, .whn-step, .elig-card, .cat-card, .price-card, .t-card, .testimonial-card, #faq .faq-item, .faq-item,
.sf-calccard, .callout, .svc, .related, .cap-card, .finder, .qcard, .result, .gate-card, .est-result,
.sf-common-q details, main > .container > details, .sf-sources, .anchor-strip, .promo-banner, .value-anchor, .roi-block,
.pricing-anchor, .va-waiver-callout, .cats-takeaway, .exit, .sf-pp-panel, .sfb-msg, .sfb-opt, .hp-card,
.testimonials-footnote {
  background: var(--slate);
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35);
  color: var(--body);
  transition: transform .25s cubic-bezier(.22, .61, .36, 1), border-color .25s, box-shadow .25s;
}
.seg-card:hover, .whn-step:hover, .elig-card:hover, .cat-card:hover, .price-card:hover, .t-card:hover, #faq .faq-item:hover,
.cap-card:hover, .svc:hover, .callout:hover, .qcard:hover, .gate-card:hover, .sf-calccard:hover {
  transform: translateY(-2px);
  border-color: rgba(201, 169, 97, .45);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 16px 36px rgba(0, 0, 0, .42);
}
.seg-card h3, .whn-step h3, .elig-card h3, .cat-card h4, .t-card .t-name, .faq-q, #faq .faq-q, .svc h3, .cap-card h3,
.finder h3, .related strong, .callout strong, .sf-sources strong, .sf-common-q summary, main > .container > details summary,
.anchor-strip .anchor-us, .trust-line, .sf-pp-panel .sf-pp-lender, .roi-block strong, .value-anchor strong,
.promo-banner strong, .qtext, .verdict-sum, .est-result strong, .est-flag strong, .gate-card h3, .price-card .deal-line,
body .price-card .pay-line strong, .callout b, .disc b, .disc strong { color: var(--cream); }
.seg-card p, .whn-step p, .elig-card p, .cat-card p, .faq-a, .cap-card p, .svc p, .related a, .callout, .sf-common-q details p,
main > .container > details p, .seg-card .seg-why, .price-card ul li, .price-card .price-note, .t-card .t-quote, .promo-banner p, .value-anchor p,
body .roi-block p, body .anchor-strip p { color: var(--body); }
.seg-card:hover { color: var(--body); }
.related a { color: var(--gold); }
.callout { border-left: 4px solid var(--gold); border-radius: 4px 14px 14px 4px; }
body .sf-sources { border-style: dashed; box-shadow: none; }
.src { background: transparent; border: 1px dashed var(--line); color: var(--muted); }
.src a, body .sf-sources a { color: var(--cream); }
.disc { background: var(--navy); border: 1px solid var(--line); color: var(--muted); }
.sf-calc .disc { background: var(--ink); border-color: var(--line); }
.exit { background: var(--slate); border: 1px solid var(--line); }
.exit p { color: var(--body); }
.steps li::before { background: var(--slate); border: 1px solid var(--line); color: var(--gold); }
body .sf-common-q details, main > .container > details { padding: 12px 18px; }
main > .container > details summary { color: var(--cream); }
body .sf-common-q summary { color: var(--cream); }
.hp-card { background: rgba(34, 48, 74, .55); border-left: 3px solid var(--gold); border-radius: 4px 12px 12px 4px; box-shadow: none; }
.hp-card p { color: var(--body); }
.hp-card strong { color: var(--cream); }
.cats-takeaway { border-left: 4px solid var(--gold); border-radius: 4px 14px 14px 4px; color: var(--cream); }

/* tables */
table, table.chart { background: var(--slate); color: var(--body); border-radius: 10px; overflow: hidden; }
th, td, table.chart th, table.chart td { border-color: var(--line) !important; }
th, table.chart th { background: var(--navy) !important; color: var(--cream) !important; }
table.chart tr:nth-child(even) td { background: rgba(255, 255, 255, .025); }
table.chart tr.hit td { background: rgba(201, 169, 97, .14) !important; }
table.chart td.hitcell { color: var(--gold); }
table.chart td:first-child { color: var(--cream); }
.chart-wrap { box-shadow: 0 12px 32px rgba(0, 0, 0, .35); border: 1px solid var(--line); }
body .sf-pp-panel td { border-bottom: 1px solid var(--line); }
body .sf-pp-panel h4, body .sf-pp-panel .sf-pp-fine { color: var(--muted); }
body .sf-pp-panel { color: var(--body); border-left: 4px solid var(--gold); border-radius: 4px 12px 12px 4px; }
body .sf-pp-btn { color: var(--cream); border-color: var(--gold); }
body .sf-pp-btn[aria-expanded="true"] { background: var(--gold); color: var(--ink); border-color: var(--gold); }

/* ---------- 6. Home page: alternating bands ---------- */
section, .crdp-hook, .branches-section, body .gr-band, .trust-strip, .whn, .midcta, .newsletter-band, footer {
  border-top: 1px solid var(--line);
}
section.hero, .hero { border-top: 0; }
/* ink bands (with the diagonal contour texture) */
.trust-strip, .whn, .branches-section, #what-is-crsc, #services, #book, #contact, footer {
  background: var(--sf-texture), var(--ink) !important;
  color: var(--body);
}
/* navy bands */
.gr-band, #calc-cta, #situations, .crdp-hook, #eligibility, #founder, #faq, .newsletter-band, section.alt, .testimonials-section,
.testimonials-real, body .sf-proof-wrap, .midcta {
  background: var(--navy) !important;
  color: var(--body);
}
#calc-cta { border-top: 1px solid var(--line); }
#situations { border-top: 0 !important; }
section.dark { background: var(--navy); }
section.alt h2, section h2, .whn h2, section h3 { color: var(--cream); }
section p { color: var(--body); }
.crsc-intro p strong, #what-is-crsc strong, #eligibility strong, #services strong, .crdp-hook .answer strong, .faq-a strong { color: var(--cream); }

/* hero: gold glow behind the headline, curved-line texture at 6% */
.hero, header.hero, .article-hero {
  background:
    radial-gradient(ellipse 60% 55% at 20% 30%, rgba(201, 169, 97, .18), transparent 55%),
    linear-gradient(150deg, #121a28 0%, var(--navy) 45%, #202c40 100%) !important;
  color: var(--cream);
  border-bottom: 1px solid var(--line);
}
.hero::before { opacity: .06; }
.hero::after { background: linear-gradient(90deg, transparent, var(--gold), transparent); height: 2px; }
.hero-subtitle, header.hero p.lead, .article-hero .lead, .hero-phone-callout { color: var(--body); }
.hero h1 .accent { color: var(--gold); }
.hero-video-wrap { border: 1px solid var(--line); border-radius: 14px; }
.hero-stats { border-top-color: var(--line); }
.stat-label { color: var(--body); }
.hero-trustbar span { color: var(--cream); border-color: var(--line); background: rgba(34, 48, 74, .5); }
.hero-cats { color: var(--muted); }
/* the packet illustration stays paper */
.vu-doc { background: var(--cream); color: var(--paper-ink); border: 1px solid rgba(26, 35, 50, .12); }

/* soto strip */
.soto-banner { background: var(--slate) !important; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.soto-banner .soto-msg { color: var(--body); }
.soto-banner .soto-more-body { border-top-color: var(--line); }

/* trust strip / proof band */
.trust-item, body .sf-proof li { color: var(--body); }
.trust-item a, body .sf-proof a { border-bottom-color: rgba(201, 169, 97, .5); }
body .sf-proof-wrap { border-bottom: 1px solid var(--line); }
body .sf-proof--inline { border-top-color: var(--line); }

/* google review marquee: the cards are documents, they stay paper */
body .gr-track-wrap::before { background: linear-gradient(90deg, var(--navy), transparent); }
body .gr-track-wrap::after { background: linear-gradient(270deg, var(--navy), transparent); }
body .gr-card { background: var(--cream); color: var(--paper-ink); border: 1px solid rgba(26, 35, 50, .12); border-top: 3px solid var(--gold); border-radius: 8px; box-shadow: 0 12px 28px rgba(0, 0, 0, .4); }
body .gr-band .gr-card p.gr-quote { color: var(--paper-ink); }
body .gr-name { color: var(--paper-ink); }
body .gr-src { color: var(--paper-muted); }
body .gr-card-stars { color: #7D6226; }   /* 5.1:1 on cream; the "Client" label variant is text */
body .gr-more a { color: var(--cream); border-bottom-color: var(--gold); }

/* what happens next */
.whn-num { background: var(--gold); color: var(--ink); }

/* calc card */
.sf-calccard { background: linear-gradient(150deg, var(--slate) 0%, var(--navy) 100%); border: 1px solid var(--line); }
.sf-calccard p { color: var(--body); }

/* find your lane */
.seg-card { border-top: 1px solid var(--line); }
.seg-card:hover { border-top-color: rgba(201, 169, 97, .45); }
.seg-btn { margin-top: auto; }
.seg-card:hover .seg-btn { background: var(--gold); color: var(--ink); }

/* branches */
.branches-section { border-top: 1px solid var(--line) !important; border-bottom: 1px solid var(--line) !important; }
.branches-section .lead { color: var(--body); }
.branches-row .seal, .branch-emblem .seal { background: var(--slate); border: 1px solid var(--line); box-shadow: 0 12px 32px rgba(0, 0, 0, .35); }
.branches-row .seal img { filter: grayscale(1) brightness(1.4); transition: filter .35s ease, transform .25s; }
.branch-emblem:hover .seal img, .branch-emblem:focus-within .seal img { filter: none; }
.branch-emblem:hover .seal { border-color: rgba(201, 169, 97, .45); }
.branch-disclaimer { color: var(--muted); }

/* crdp hook */
.crdp-hook .ask { color: var(--cream); border-left-color: var(--gold); }
.crdp-hook .ask span { color: var(--muted); }

/* what is crsc */
.four-cats { border-top-color: var(--line); }
.va-waiver-callout { border-left: 4px solid var(--gold); border-radius: 4px 14px 14px 4px; }
.va-waiver-callout strong.title, .va-waiver-callout .punchline, .va-waiver-callout ul li strong { color: var(--cream); }
.va-waiver-callout ul li { color: var(--body); }
.pricing-anchor { border: 1px solid var(--line); border-left: 4px solid var(--gold); }
.pricing-anchor h4, .pricing-anchor ul li strong { color: var(--cream); }
.pricing-anchor ul li { color: var(--body); border-bottom-color: var(--line); }
.eligibility-callout { background: var(--slate); border: 1px solid var(--line); border-left: 6px solid var(--gold); border-radius: 4px 14px 14px 4px; }
.eligibility-callout p, .eligibility-callout p strong { color: var(--cream); }

/* eligibility */
.elig-card { border-left: 1px solid var(--line); }
.elig-num { color: var(--gold); }
.vu-check circle, .vu-check path { stroke: var(--gold); }

/* services & pricing: slate card, cream top band with plan name and price */
.price-card { padding: 0 32px 32px; border-top: 1px solid var(--line); overflow: visible; }
.price-card.featured { border-top: 1px solid rgba(201, 169, 97, .6); background: var(--slate); }
.price-grid .price-card > .vu-svc-top, .price-grid .price-card > h3, .price-grid .price-card > .price, .price-grid .price-card > .promo-tag {
  background: var(--cream);
  margin-left: -32px; margin-right: -32px;
  padding-left: 32px; padding-right: 32px;
  color: var(--paper-ink);
}
.price-grid .price-card > :first-child { padding-top: 26px; border-radius: 13px 13px 0 0; }
.price-grid .price-card > h3 { color: var(--paper-ink); margin-bottom: 0; padding-bottom: 2px; }
.price-grid .price-card > .price { color: var(--paper-ink); margin: 0 -32px; padding-top: 8px; padding-bottom: 18px; font-variant-numeric: tabular-nums; font-size: 2.2rem; line-height: 1.1; }
.price-grid .price-card > .vu-svc-top { margin-bottom: 0; padding-bottom: 10px; }
.price-grid .price-card > .price .flat { color: var(--paper-muted); }
.price-grid .price-card > .price s.price-old { color: var(--paper-muted); opacity: .7; }
.price-grid .price-card > .promo-tag { margin-top: -14px; margin-bottom: 20px; padding-bottom: 18px; color: var(--paper-muted); }
.promo-expired .price-grid .price-card > .price { margin-bottom: 20px; }
.price-card.featured::before { top: -12px; background: var(--gold); color: var(--ink); border-radius: 2px; }
.vu-bestfor { color: var(--paper-ink); background: rgba(201, 169, 97, .28); }
.vu-svc-icon { background: rgba(201, 169, 97, .28); }
.vu-svc-icon svg { stroke: var(--paper-ink); }
.price-card ul li { border-bottom-color: var(--line); }
.price-card ul li::before { color: var(--gold); }
body .price-card .deal-line { color: var(--cream); }
body .price-card .pay-line { color: var(--muted); }
.price-card .price-note { color: var(--body); }
body .promo-banner { background: var(--slate); border: 1px solid rgba(201, 169, 97, .45); }
body .promo-eyebrow { color: var(--gold); }
body .promo-fine { color: var(--muted); }
body .value-anchor { border-left: 4px solid var(--gold); border-radius: 4px 14px 14px 4px; }
body .anchor-strip { background: var(--navy); }
body .roi-block { border-left: 4px solid var(--gold); border-radius: 4px 14px 14px 4px; }
#services a[style*="--od"] { color: var(--gold) !important; }

/* leadership: navy duotone portraits, full color on hover */
.founder-portrait { border: 1px solid var(--line); border-radius: 12px; overflow: hidden; box-shadow: 0 12px 32px rgba(0, 0, 0, .35); }
.founder-portrait img { filter: grayscale(1) sepia(.2) hue-rotate(190deg) saturate(.9); border-radius: 11px; transition: filter .4s ease, transform .35s; }
.founder-portrait:hover img, .founder-portrait:focus-within img { filter: none; }
.founder-portrait::after { background: linear-gradient(90deg, var(--gold-deep), var(--gold)); }
body .team-compact p, #founder p[style] { color: var(--body) !important; }
.cred-tag { background: var(--slate); border: 1px solid var(--line); color: var(--cream); }

/* mid-page cta */
.midcta { border-top: 1px solid var(--line) !important; border-bottom: 1px solid var(--line) !important; position: relative; }
.midcta::before { background: radial-gradient(circle, rgba(201, 169, 97, .22) 0%, transparent 65%); }
.midcta p { color: var(--body); }

/* bookshelf */
#book a[style*="--od"] { color: var(--gold) !important; }

/* faq */
#faq .faq-item, .faq-item { border-left: 4px solid var(--gold); border-radius: 4px 14px 14px 4px; }
#faq .faq-item.open { border-left-color: var(--cream); }
#faq .faq-q::after, .faq-q::after { background: rgba(201, 169, 97, .18); color: var(--gold); }
#faq .faq-item.open .faq-q::after { background: var(--gold); color: var(--ink); }
#faq .faq-a { border-top-color: var(--line); color: var(--body); }

/* contact / intake */
#contact .form-grid > div strong[style] { color: var(--gold) !important; }
#contact .form-grid > div span[style], #contact .form-grid > div span[style] strong[style] { color: var(--body) !important; }
#contact .form-grid > div span[style] strong[style] { color: var(--cream) !important; }
#contact p.promo-only[style] { color: var(--cream) !important; }
form[name="intake"] { background: var(--navy); border: 1px solid var(--line); border-radius: 14px; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35); }
form label { color: var(--gold); }
form label .lbl-opt { color: var(--muted); }
.pq-consent { color: var(--body); }
.form-note { color: var(--muted); }
body .calendly-fallback-divider { border-top-color: var(--line); }
body .calendly-fallback-divider h3 { color: var(--cream); }
body .calendly-fallback-divider p { color: var(--body); }
body .calendly-inline-widget { background: var(--navy) !important; border: 1px solid var(--line) !important; border-radius: 14px !important; }
body .calendly-intro p { color: var(--body); }

/* newsletter */
.newsletter-band { border-top: 1px solid var(--line) !important; }
.newsletter-band p { color: var(--body); }
.newsletter-note a { color: var(--cream) !important; }

/* footer */
footer { border-top: 1px solid var(--line) !important; color: var(--body); }
footer a { color: var(--body); }
footer a:hover { color: var(--gold); }
footer h4 { color: var(--gold); border-top-color: var(--gold); }
.footer-disclaimer { border-top-color: var(--line); color: var(--muted); }
footer p[style] { color: var(--muted) !important; }

/* ---------- 7. Nav, sticky bar, overlays ---------- */
nav, nav.top {
  background: rgba(26, 35, 50, .86) !important;
  -webkit-backdrop-filter: blur(12px) saturate(1.2);
  backdrop-filter: blur(12px) saturate(1.2);
  border-bottom: 1px solid var(--line);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .25);
}
nav.crumbs { background: transparent !important; border: 0; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
.nav-links a:not(.btn) { color: var(--cream); }
.nav-links .btn.btn-gold[style] { border-radius: 2px !important; }
@media (max-width: 1100px) { .nav-links { background: var(--navy); border-top: 1px solid var(--line); } }
.nav-phone a { border-left-color: var(--line); }

.sticky-cta { background: var(--navy) !important; border-top: 1px solid var(--line) !important; box-shadow: 0 -12px 32px rgba(0, 0, 0, .45); }
.sticky-cta a { border-radius: 2px; }

/* promo bar (sf-growth.js) */
body .sf-promobar { background: var(--ink) !important; border-bottom: 1px solid var(--line) !important; color: var(--cream); }

/* assistant bubble + panel (sf-growth.js) */
body .sfb-bubble { background: var(--slate); border: 1px solid var(--line); color: var(--cream); box-shadow: 0 12px 32px rgba(0, 0, 0, .45); }
body .sfb-bubble:hover { background: var(--slate-2); border-color: rgba(201, 169, 97, .45); }
body .sfb-bubble .dot { background: var(--gold); }
body .sfb-panel { background: var(--navy); border: 1px solid var(--line); box-shadow: 0 18px 48px rgba(0, 0, 0, .55); }
body .sfb-head { background: var(--ink); border-bottom: 1px solid var(--line); }
body .sfb-head .s, body .sfb-x { color: var(--muted); }
body .sfb-msg { color: var(--cream); border-radius: 12px 12px 12px 2px; box-shadow: none; }
body .sfb-msg.sfb-auto { background: var(--ink); color: var(--muted); }
body .sfb-me { background: var(--slate-2); color: var(--cream); }
body .sfb-opt { border-radius: 8px; box-shadow: none; }
body .sfb-opt:hover { background: var(--gold); color: var(--ink); }
body .sfb-note { color: var(--muted); }
body .sfb-note a { color: var(--cream); }
body .sfb-foot { background: var(--ink); color: var(--muted); border-top: 1px solid var(--line); }
body .sfb-dl { background: var(--slate); }

/* exit-intent modal (sf-growth.js) */
body .sfx-wrap { background: rgba(15, 23, 34, .8); }
body .sfx-card { background: var(--navy); border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 24px 60px rgba(0, 0, 0, .6); }
body .sfx-card h3 { color: var(--cream); }
body .sfx-card p { color: var(--body); }
body .sfx-x { color: var(--muted); text-decoration: none; }


/* ---------- 8. Tools "in the know" (calculator, pay chart, quiz) ---------- */
.sf-chip {
  display: inline-flex; align-items: center; gap: 6px;
  margin-left: 10px; padding: 3px 10px;
  border: 1px solid var(--line); border-radius: 999px;
  font-family: 'Oswald', sans-serif; font-size: 11px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase;
  color: var(--gold); vertical-align: middle; white-space: nowrap; line-height: 1.6;
}
.sf-chip::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--ok); box-shadow: 0 0 0 3px rgba(127, 178, 122, .18); }
h1 + .sf-chip { margin: 0 0 14px; }

.sf-calc { background: var(--ink); border: 1px solid var(--line); border-radius: 14px; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35); }
.sf-calc .sf-head { background: var(--navy); border-bottom: 1px solid var(--line); }
.sf-calc .sf-title { color: var(--cream); }
.sf-calc .tab { background: var(--navy); border-color: var(--line); color: var(--muted); }
.sf-calc .tab.active { background: var(--slate); color: var(--cream); border-color: rgba(201, 169, 97, .45); border-bottom-color: var(--slate); }
.sf-calc .panel { background: var(--slate); border: 1px solid var(--line); }
.sf-calc label { color: var(--body); }
.sf-calc .radio { color: var(--cream); }
.sf-calc .result { background: var(--ink); border: 1px solid var(--line); border-left: 3px solid var(--gold); border-radius: 4px 12px 12px 4px; }
.sf-calc .rlabel, .finder .out .lbl, .finder .out-est .lbl, .sf-pu-figs span, .est-fig .lbl, .finder label, .progress-label {
  font-family: 'Oswald', sans-serif; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted);
}
.sf-calc .big { font-size: 36px; font-variant-numeric: tabular-nums; color: var(--gold); }
.sf-calc .big.green { color: var(--ok); }
.sf-calc .rrow { border-bottom-color: var(--line); color: var(--body); }
.sf-calc .rrow b { color: var(--cream); font-variant-numeric: tabular-nums; }
.sf-calc .bind { background: var(--navy); border-color: var(--line); color: var(--gold); }
.sf-calc .sf-gate { background: var(--navy); border: 1px solid var(--line); border-radius: 12px; }
.sf-calc .sf-gate p { color: var(--body); }
.sf-calc .sf-hook { background: rgba(201, 169, 97, .1); color: var(--cream); }
.sf-calc .sf-hook b { color: var(--cream); }
.sf-calc .sf-bar { color: var(--body); }
.sf-calc .sf-bar b { color: var(--cream); }
.sf-calc .sf-bar-stop { background: rgba(224, 122, 107, .12); border-left-color: var(--alert); }
.sf-calc .sf-pu-figs > div, .sf-pu-figs div { background: var(--ink); border: 1px solid var(--line); border-radius: 10px; }
.sf-calc .sf-pu-figs b, .sf-pu-figs b { font-size: 28px; font-variant-numeric: tabular-nums; color: var(--gold); line-height: 1.15; }
.sf-calc .sf-pu-lever, .sf-pu-lever { color: var(--body) !important; }
.sf-calc .cta { color: var(--body); }
.sf-calc #c_assume b, .sf-calc #w_assume b { color: var(--cream); }
#c_assume, #w_assume { color: var(--muted); }
.sf-calc .sf-locked .rrow b, .sf-calc .sf-blur { filter: blur(6px); }
.lede { color: var(--body); }
main .container > p, main .container > ul li, main .container > ol li { color: var(--body); }
.reviewed { color: var(--muted); }
.crumbs, .crumbs a { color: var(--muted); }

/* pay chart finder */
.finder { padding: 20px 22px; border-top: 1px solid var(--line); }
.finder:hover { transform: none; }
.finder h3 { color: var(--cream); }
.finder .out { background: var(--ink); border: 1px solid var(--line); border-radius: 10px; }
.finder .out .amt { font-size: 28px; color: var(--gold); font-variant-numeric: tabular-nums; }
.finder .out-est { background: var(--navy); border-color: rgba(201, 169, 97, .45); }
.finder .out-est .amt { color: var(--gold); }
.finder .out-est .lbl { color: var(--muted); }
.finder .next { color: var(--body); }
.finder #f_assume[style] { color: var(--muted) !important; }
.cap-card .big { font-size: 28px; }
.cap-card .ok { color: var(--ok); }
.cap-card .cut { color: var(--alert); }
.sf-gate { background: var(--navy); border: 1px solid var(--line); border-radius: 12px; }
.sf-gate p { color: var(--body); }
.svc .price { font-size: 28px; }
.svc .price s { color: var(--muted); }
.svc .pnote { color: var(--muted); }

/* quiz (keeps its deliberate 19px base: the audience skews older and low-vision) */
body:has(#quiz) { font-size: 19px; }
.progress-bar { height: 3px; background: rgba(255, 255, 255, .1); border-radius: 2px; }
.progress-fill { background: var(--gold); }
.qcard { border-top: 3px solid var(--gold); padding: 32px 30px; }
.qcard:hover { transform: none; }
.qtext { color: var(--cream); }
.qhelp { color: var(--body); }
.opt { background: var(--navy); border: 1.5px solid var(--line); color: var(--cream); border-radius: 8px; }
.opt:hover, .opt:focus { background: var(--slate-2); border-color: var(--gold); color: var(--cream); box-shadow: 0 8px 20px rgba(0, 0, 0, .35); }
.qback { color: var(--muted); }
.result { overflow: hidden; }
.result-head { color: var(--cream); border-bottom: 1px solid var(--line); }
.result-head.good { background: linear-gradient(135deg, var(--navy) 0%, var(--slate-2) 100%); border-bottom: 2px solid var(--gold); }
.result-head.maybe { background: linear-gradient(135deg, var(--navy) 0%, var(--slate) 100%); }
.result-head.no { background: var(--navy); }
.result-head .badge { color: var(--gold); }
.result-body { color: var(--body); }
.result-body strong, .qcard strong, .est-card strong, main strong { color: var(--cream); }
.est-card strong { color: var(--gold); }
.est-result strong, .est-flag strong, .est-card .est-result strong, .est-card .est-flag strong { color: var(--cream); }
.email-cap { border-top-color: var(--line); }
.email-cap label { color: var(--cream); }
.disclaimer { background: var(--navy); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 4px 12px 12px 4px; color: var(--muted); }
.disclaimer strong { color: var(--cream); }
.gate-card { border-color: var(--line); }
.gate-card p { color: var(--body); }
.est-card { background: var(--navy); border: 1px solid var(--line); border-top: 3px solid var(--gold); border-radius: 14px; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35); }
.est-card h3 { color: var(--cream); }
.est-lead { color: var(--body); }
.est-l { color: var(--cream); }
.est-hint { color: var(--muted); }
.est-result { color: var(--body); padding: 20px; }
.est-fig { background: var(--ink); border: 1px solid var(--line); border-left: 3px solid var(--gold-deep); border-radius: 4px 10px 10px 4px; }
.est-fig.gold { border-left-color: var(--gold); }
.est-fig .num { font-size: 28px; color: var(--gold); font-variant-numeric: tabular-nums; }
.est-flag { background: var(--ink); border: 1px solid var(--line); border-left: 4px solid var(--gold); color: var(--body); }
.est-flag strong { color: var(--cream); }
.est-fine { color: var(--muted); }
#ch61-note { color: var(--body); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 4px 10px 10px 4px; }
.verdict-sum { color: var(--cream); }
.restart button { color: var(--muted); }

/* pages that hard-code the dark "keep going" band */
section[style*="#0e2038"] { background: var(--navy) !important; border-top: 1px solid var(--line) !important; }
section[style*="#0e2038"] a[style] { border-radius: 2px !important; border-color: var(--gold) !important; color: var(--cream) !important; }

/* records-guide capture box (calc page, inline-styled) */
main + div[style*="#1a2332"], body > div[style*="#1a2332"] { background: var(--navy) !important; border: 1px solid var(--line) !important; border-radius: 14px !important; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35); }
body > div[style*="#1a2332"] button[type=submit] { border-radius: 2px !important; }

/* 404 */
body:has(> .wrap) { background: radial-gradient(ellipse 60% 55% at 20% 30%, rgba(201, 169, 97, .18), transparent 55%), var(--sf-texture), var(--ink) !important; }
body > .wrap .code { color: var(--gold); font-variant-numeric: tabular-nums; }
body > .wrap p { color: var(--body); }
.links a { color: var(--muted); }
.links a:hover { color: var(--gold); }

/* ---------- 9. Motion ---------- */
html.vu-anim .vu-r { transform: translateY(6px); transition: opacity .3s cubic-bezier(.22, .61, .36, 1), transform .3s cubic-bezier(.22, .61, .36, 1); transition-delay: calc(var(--i, 0) * 60ms); }
html.vu-anim .vu-r.vu-in { transform: none; }
html.vu-anim .vu-h { transform: translateY(6px); transition-duration: .3s; }
.hero .btn-gold, .midcta .btn-gold { animation: none; }

/* ---------- 10. Responsive ---------- */
@media (max-width: 820px) {
  h2 { font-size: 32px; }
  .exit h2 { font-size: 26px; }
  .sf-calc h2 { font-size: 19px; }
  .newsletter-band h2 { font-size: 1.5rem; }
  .sf-calc .big { font-size: 32px; }
  .price-card { padding: 0 24px 24px; }
  .price-grid .price-card > .vu-svc-top, .price-grid .price-card > h3, .price-grid .price-card > .price, .price-grid .price-card > .promo-tag { margin-left: -24px; margin-right: -24px; padding-left: 24px; padding-right: 24px; }
  .price-grid .price-card > .price { margin: 0 -24px; }
  .sf-chip { margin-left: 0; margin-top: 8px; font-size: 10px; }
  h1 + .sf-chip { margin: 0 0 12px; }
  .sticky-cta .sc-cform, .sticky-cta .sc-call, .sticky-cta .cform, .sticky-cta .call { border-width: 1px; }
  nav, nav.top { -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
}
@media (max-width: 400px) {
  .sf-chip { letter-spacing: .1em; }
  .hero-stats { gap: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .seg-card:hover, .whn-step:hover, .elig-card:hover, .cat-card:hover, .price-card:hover, .t-card:hover, #faq .faq-item:hover,
  .cap-card:hover, .svc:hover, .callout:hover, .gate-card:hover, .sf-calccard:hover { transform: none; }
  .founder-portrait img, .branches-row .seal img { transition: none; }
}

/* ---------- 11. Rules whose page counterparts live in BODY-level <style> blocks (after this sheet) ---------- */
body .sf-sources, body .sf-common-q details {
  background: var(--slate); border: 1px solid var(--line); border-radius: 14px; color: var(--body);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35);
}
body .sf-sources { border-style: dashed; box-shadow: none; color: var(--muted); }
body .sf-sources strong, body .sf-sources a { color: var(--cream); }
body .sf-common-q details p { color: var(--body); }
body .sf-common-q summary { color: var(--cream); }
body .price-card .pay-line strong, body .trust-line, body .anchor-strip .anchor-us, body .roi-block strong,
body .value-anchor strong, body .promo-banner strong { color: var(--cream); }
body .value-anchor { background: rgba(201, 169, 97, .08); }
body .roi-block { background: var(--slate); }
body .gr-band .gr-card p.gr-quote, body .gr-name { color: var(--paper-ink); }
body .gr-src { color: var(--paper-muted); }
body .sf-proof li { color: var(--body); }
body .sf-proof a { color: var(--cream); border-bottom-color: rgba(201, 169, 97, .5); }
body .calendly-fallback-divider h3 { color: var(--cream); }
body .calendly-fallback-divider p, body .calendly-intro p { color: var(--body); }

/* JS-injected stylesheets (sf-growth.js, sf-payplans.js, crsc-calc.js) are appended after this sheet: pin them */
body .sf-pp-panel, body .sfb-msg { background: var(--slate); border: 1px solid var(--line); color: var(--body); box-shadow: none; }
body .sf-pp-panel { border-left: 4px solid var(--gold); border-radius: 4px 12px 12px 4px; }
body .sfb-msg { border-radius: 12px 12px 12px 2px; color: var(--cream); }
body .sfb-msg.sfb-auto { background: var(--ink); color: var(--muted); }
body .sfb-opt { background: transparent; border: 1.5px solid var(--gold); color: var(--cream); border-radius: 8px; }
body .sfb-opt:hover { background: var(--gold); color: var(--ink); }
body .sfb-dl { background: var(--slate); border: 1.5px solid var(--gold); color: var(--cream); border-radius: 2px; }
body .sf-pp-btn { background: transparent; border: 1.5px solid var(--gold); color: var(--cream); border-radius: 2px; }
body .sf-pp-btn:hover { background: rgba(201, 169, 97, .14); }
body .sf-pp-btn[aria-expanded="true"] { background: var(--gold); color: var(--ink); border-color: var(--gold); }
body .sf-pp-panel td { border-bottom: 1px solid var(--line); }
body .sf-pp-panel h4, body .sf-pp-panel .sf-pp-fine { color: var(--muted); }
body .sf-pp-panel .sf-pp-lender { color: var(--cream); }
body .sf-tiers { color: var(--muted); font-size: 13px; border-top-color: var(--line); }
body .sfx-x { background: none; border: 0; color: var(--muted); text-decoration: none; }
body .sfb-bubble .dot { background: var(--gold); }


/* ==========================================================================
   12. WAVE 8: site-wide rollout (2026-09-08). Everything below extends the
   mockup theme to the remaining page templates. Same tokens, same recipe.
   ========================================================================== */

/* ---------- 12a. Shared: article template (blog, brief, guides, legal) ---------- */
.hub-hero {
  background:
    radial-gradient(ellipse 60% 55% at 20% 30%, rgba(201, 169, 97, .18), transparent 55%),
    linear-gradient(150deg, #121a28 0%, var(--navy) 45%, #202c40 100%) !important;
  border-bottom: 1px solid var(--line);
}
.hub-hero .lead, .hub-hero .tagline + p { color: var(--body); }
/* the olive CTA bands resolve to a gold gradient through the --od lever; pin them to navy */
.article-cta, .cta-band, section.article-cta {
  position: relative;
  background: radial-gradient(ellipse 50% 70% at 50% 0%, rgba(201, 169, 97, .16), transparent 60%), var(--navy) !important;
  border-top: 1px solid var(--line) !important;
  border-bottom: 1px solid var(--line) !important;
  color: var(--body);
}
.article-cta h2, .cta-band h2 { color: var(--cream); }
.article-cta p, .cta-band p { color: var(--body) !important; }
.breadcrumb { color: var(--muted); }
.breadcrumb a { color: var(--gold); }
.article-hero .byline, .article-hero .byline a { color: var(--muted); }
.faq { border-top: 0; }
.faq details {
  background: var(--slate); border: 1px solid var(--line); border-radius: 12px;
  padding: 14px 18px; margin: 10px 0; color: var(--body);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35);
}
.faq details[open], body .sf-common-q details[open], main > .container > details[open], details.sf-faq[open] { border-color: rgba(201, 169, 97, .45); }
.faq summary { color: var(--cream); }
.faq p { color: var(--body); }
.disclaimer, .disclaimer-box { background: var(--navy); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 4px 12px 12px 4px; color: var(--muted); }
.disclaimer strong { color: var(--cream); }
.summary { color: var(--body); border-left-color: var(--gold); }
.verified, .updated, .pubnote, .section-label, .sources, .src, .meta { color: var(--muted); }
.pubnote { border-bottom-color: var(--line); }
.section-label, .verified { color: var(--gold); }
.callout.warn { background: var(--slate); border-left-color: var(--gold-deep); }
.callout.warn strong { color: var(--gold); }
.callout.dark { background: var(--navy); color: var(--cream); border: 1px solid var(--line); border-left: 4px solid var(--gold); }
.callout.dark li { color: var(--body); }
.subscribe { background: var(--navy); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 4px 12px 12px 4px; }
.subscribe p { color: var(--body); }
.watch h3 { color: var(--cream); }
.pillar { background: var(--navy); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 4px 12px 12px 4px; }
main div[style*="var(--cream-2)"] { background: var(--navy) !important; border: 1px solid var(--line); border-left: 4px solid var(--gold) !important; border-radius: 4px 12px 12px 4px; color: var(--muted) !important; }

/* comparison grids, worked examples, tables that were white */
.compare { background: var(--slate); border: 1px solid var(--line); border-radius: 10px; }
.compare-row { border-bottom-color: var(--line); }
.compare-row.head { background: var(--navy); color: var(--gold); }
.compare-row > div:first-child { background: var(--navy); color: var(--cream); }
.compare-row > div:nth-child(2) { border-color: var(--line); }
.example { background: var(--slate); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 4px 14px 14px 4px; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35); color: var(--body); }
.example .result, .example .stack > div { background: var(--navy); border: 1px solid var(--line); border-radius: 8px; }
.example .result strong { color: var(--gold); }
.example .stack .num { color: var(--gold); font-variant-numeric: tabular-nums; }
.example .stack .label { color: var(--muted); }
table.compare, table.branch, table.rates { background: var(--slate); border: 1px solid var(--line); }
table.compare th, table.branch th, table.rates th { background: var(--navy) !important; color: var(--gold) !important; }
th { color: var(--gold) !important; }
table.compare td:first-child, table.rates td:first-child { color: var(--cream); }
table.rates tr:last-child td { color: var(--cream); }
.cat, .takeaways, .myth, .mistake, .timeline, .checklist, .locs, .capsule, .tool, .num-panel, .fmt, .tcard, .card, .pay-wrap {
  background: var(--slate); border: 1px solid var(--line); border-radius: 14px; color: var(--body);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35);
}
.cat, .myth, .capsule, .tcard { border-left: 4px solid var(--gold); border-radius: 4px 14px 14px 4px; }
.cat.no { border-left-color: var(--alert); }
.takeaways, .fmt, .tool, .num-panel { border-top: 3px solid var(--gold); }
.cat .dies, .fix, .myth .verdict { background: var(--navy); border: 1px solid var(--line); color: var(--body); }
.cat .dies strong, .fix strong { color: var(--gold); }
.myth .verdict { color: var(--gold); }
.myth .label { color: var(--gold-deep); }
.timeline .step + .step { border-top-color: var(--line); }
.timeline .date { color: var(--gold); }
main div[style*="background:#fff"], main div[style*="background: #fff"], main div[style*="background:#ffffff"] {
  background: var(--slate) !important; border-color: var(--line) !important; color: var(--body);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35);
}
main div[style*="background:#fff"] strong { color: var(--cream); }
/* inline dark text colors that the page authors used on light surfaces */
main [style*="color:#4f5a6a"], main [style*="color: #4f5a6a"], main [style*="color:#555"], main [style*="color:#33404f"], .tcard .td { color: var(--muted) !important; }
.lede { color: var(--body); }
main [style*="color:#7a2620"] { color: var(--alert) !important; }
main a[style*="color:#1a2332"], main a[style*="color:var(--navy)"] { color: var(--cream) !important; border-color: var(--gold) !important; }
main a[style*="border:1px solid #C9A227"], main a[style*="border:1px solid var(--gold)"] { border-radius: 2px !important; color: var(--cream) !important; }
main [style*="color:var(--navy)"], main h3[style*="var(--navy)"] { color: var(--cream) !important; }
[style*="border-left:3px solid #c9a961"] { color: var(--body) !important; }

/* ---------- 12b. Branch / condition / city / service pages (header.hero template) ---------- */
.countdown { background: var(--navy); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 4px 12px 12px 4px; }
/* about-loy: its team / tcard rules sit in a body-level <style>, so these carry the body prefix */
body .team img { border: 1px solid var(--line); box-shadow: 0 12px 32px rgba(0, 0, 0, .35); filter: grayscale(1) sepia(.2) hue-rotate(190deg) saturate(.9); transition: filter .4s ease; }
body .team:hover img, body .team:focus-within img { filter: none; }
body .team .tags span { background: var(--slate); border: 1px solid var(--line); color: var(--cream); }
body .team .pull { color: var(--body); border-left-color: var(--gold); }
body .team .role { color: var(--gold); }
body .tcard { background: var(--slate); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 4px 14px 14px 4px; color: var(--body); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35); }
body .tcard .tn { color: var(--cream); }
body .tcard .td { color: var(--muted); }
.locs strong, .capsule strong { color: var(--cream); }
.locs a { color: var(--gold); }
.sf-proof li { color: var(--body); }

/* ---------- 12c. Forms pages: denial review, unsubscribe, pay ---------- */
main .card label, .card label, form label, .field label, label { color: var(--gold); }
label [style*="color:var(--muted)"] { color: var(--muted) !important; }
.filebox { background: var(--slate) !important; border: 2px dashed rgba(201, 169, 97, .55); color: var(--body); }
.filebox input[type=file] { background: transparent !important; border: 0 !important; color: var(--body) !important; }
input[type=file]::file-selector-button {
  background: transparent; color: var(--cream); border: 1.5px solid var(--gold); border-radius: 2px;
  padding: 8px 14px; margin-right: 12px; font-family: 'Oswald', sans-serif; letter-spacing: .08em; text-transform: uppercase; cursor: pointer;
}
input[type=file]::file-selector-button:hover { background: rgba(201, 169, 97, .14); }
.note, .hint, .sub, .fineprint, .pay-trust, .pay-note { color: var(--muted); }
.fineprint { border-top-color: var(--line); }
body button.btn, body .card button.btn, body form button.btn {
  background: var(--gold) !important; color: var(--ink) !important; border: 1px solid var(--gold) !important; border-radius: 2px !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, .35);
}
body button.btn:hover { background: #D6B872 !important; color: var(--ink) !important; }
body a.btn-gold { background: var(--gold); color: var(--ink); border: 1px solid var(--gold); border-radius: 2px; }
body a.btn-gold:hover { background: #D6B872; color: var(--ink); }
.check, #success .check { background: var(--gold); color: var(--ink); }
#success .who { color: var(--cream); }
.pay-label, .pay-includes-label { color: var(--gold); }
.pay-name { color: var(--cream); }
.pay-price { color: var(--gold); font-variant-numeric: tabular-nums; }
.pay-desc, .pay-includes ul { color: var(--body); }
.pay-includes { background: var(--navy); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 4px 12px 12px 4px; }
.pay-details { border-top-color: var(--line); }
.pay-btn { background: var(--gold); color: var(--ink); border-radius: 2px; box-shadow: 0 6px 18px rgba(0, 0, 0, .35); }
.pay-btn:hover { background: #D6B872; color: var(--ink); }
.pay-note a { color: var(--gold); }
.pay-select { color: var(--cream) !important; border-color: var(--line) !important; }

/* ---------- 12d. Standfast Brief landing ---------- */
.signup { background: rgba(34, 48, 74, .55); border: 1px solid var(--line); border-left: 5px solid var(--gold); border-radius: 4px 14px 14px 4px; }
.signup .note strong { color: var(--cream); }
.section .kicker { color: var(--gold); }
.fmt .n { color: var(--gold); }
.fmt p { color: var(--body); }
div.who { background: var(--navy); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 4px 12px 12px 4px; }
.cross a.tile { background: var(--slate); border: 1px solid var(--line); border-top: 3px solid var(--gold); border-radius: 12px; color: var(--body); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35); }
.cross a.tile:hover { border-color: rgba(201, 169, 97, .45); border-top-color: var(--gold); box-shadow: 0 16px 36px rgba(0, 0, 0, .42); }
.cross a.tile strong { color: var(--cream); }
.cross a.tile span { color: var(--muted); }
.disclaimer p { color: var(--muted); }

/* ---------- 12e. Links hub (keeps its 19px base) ---------- */
body:has(.hub-btn), body:has(.tool) { font-size: 19px; }
.hub-btn { border: 1px solid var(--line); box-shadow: 0 12px 32px rgba(0, 0, 0, .35); }
.hub-btn.navy { background: var(--navy); border-left: 5px solid var(--gold); }
.hub-btn.od, .seg-card.od-card { background: var(--slate) !important; border: 1px solid var(--line); border-left: 5px solid var(--gold); }
.hub-btn.od .badge { background: rgba(201, 169, 97, .2); color: var(--gold); }
.hub-btn.od .s, .hub-btn.navy .s, .seg-card.od-card .ss, .seg-card.book-card .ss { color: var(--body); }
.hub-btn.primary { box-shadow: 0 8px 22px rgba(201, 169, 97, .3); }
.hub-btn.primary .s { color: #4A3A12; }
.seg-card.book-card { background: var(--navy) !important; border-left: 5px solid var(--gold); }
.num-panel .num-label { color: var(--gold); }
.num-row { border-bottom-color: var(--line); }
.num-row .who { color: var(--cream); }
.num-row .amt { color: var(--body); }
.num-row .amt b { color: var(--gold); }
.num-note { color: var(--muted); }
.hook-line { background: var(--navy); border: 1px solid var(--line); border-left: 4px solid var(--gold); color: var(--body); }
.hook-line b, .hook-line strong { color: var(--cream); }
.hook-line.soto { background: var(--slate); color: var(--body); }
.more-label { color: var(--muted); border-top-color: var(--line); }
.more-row a { background: transparent; border: 1.5px solid var(--gold); color: var(--cream); }
.more-row a:hover { background: rgba(201, 169, 97, .14); color: var(--cream); }
.hero .trust { color: var(--muted); }

/* ---------- 12f. Quickstart kit (tools, decision tree, calculator) ---------- */
.tool .sec-label, .dt-result .doc-label, .accuracy .a-label { color: var(--gold); }
.tool .sec-intro { color: var(--body); }
.dt-cause { background: var(--navy); border: 1.5px solid var(--line); color: var(--cream); border-radius: 8px; }
.dt-cause:hover, .dt-cause:focus { background: var(--slate-2); border-color: var(--gold); }
.dt-cause.active { background: var(--slate-2); border-color: var(--gold); box-shadow: 0 0 0 3px rgba(201, 169, 97, .18); }
.dt-result { background: var(--navy); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 4px 12px 12px 4px; color: var(--body); }
.dt-result .cat { background: transparent; border: 0; box-shadow: none; color: var(--cream); padding: 0; margin: 0 0 8px; }
.field .hint { color: var(--muted); }
.calc-btn, .download-btn { background: var(--gold); color: var(--ink); border: 1px solid var(--gold); border-radius: 2px; box-shadow: 0 6px 18px rgba(0, 0, 0, .35); }
.calc-btn:hover, .download-btn:hover { background: #D6B872; color: var(--ink); }
.calc-out { background: var(--ink); border: 1px solid var(--line); border-left: 3px solid var(--gold); border-radius: 4px 12px 12px 4px; }
.calc-out .row { border-bottom-color: var(--line); }
.calc-out .row .k { color: var(--body); }
.calc-out .row .v { color: var(--cream); font-variant-numeric: tabular-nums; }
.calc-out .verdict { color: var(--gold); }
.calc-note { color: var(--muted); }
.accuracy { background: var(--navy); border: 1px solid var(--line); border-left: 4px solid var(--gold); border-radius: 4px 12px 12px 4px; color: var(--body); }
.gate-card .g-err { color: var(--alert); }
.kit-locked::after { background: linear-gradient(180deg, transparent 0%, var(--slate) 92%); }
.tool a[style*="color:var(--navy)"] { color: var(--cream) !important; border-radius: 2px !important; }

/* ---------- 12g. Utility pages: thank-you, newsletter-thanks, records-guide-thanks ---------- */
body > .card {
  background: var(--navy); border: 1px solid var(--line); border-radius: 14px; color: var(--body);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 12px 32px rgba(0, 0, 0, .35);
}
body > .card h1 { color: var(--gold); }
body > .card p { color: var(--body); }
body > .card p strong { color: var(--cream); }
body > .card > a, body > .card a.btn {
  background: var(--gold); color: var(--ink); border: 1px solid var(--gold); border-radius: 2px; text-decoration: none;
  box-shadow: 0 6px 18px rgba(0, 0, 0, .35);
}
body > .card > a:hover, body > .card a.btn:hover { background: #D6B872; color: var(--ink); }
body > .card a.btn[style*="transparent"] { background: transparent !important; color: var(--cream) !important; border: 1.5px solid var(--gold) !important; box-shadow: none; }
body > .card a.btn[style*="transparent"]:hover { background: rgba(201, 169, 97, .14) !important; }
body > .card a.inline, body > .card p a { background: none; color: var(--gold); border: 0; box-shadow: none; padding: 0; margin: 0; display: inline; text-decoration: underline; text-underline-offset: 3px; }
body > .card a.inline:hover, body > .card p a:hover { color: var(--cream); background: none; }
body > .card .small { color: var(--muted); }

/* ---------- 12h. Reading mode (blog posts, blog index, briefs) ---------- */
/* The article body is a cool off-white sheet between the dark hero and the dark CTA band.
   Everything outside <main> (nav, hero, CTA band, capture box, footer, sticky bar, overlays) keeps the dark theme. */
[data-sf-reading] main {
  --cream: #FFFFFF;
  --cream-2: #E9ECF1;
  --line: rgba(15, 23, 34, .12);
  --muted: #4F5A6A;
  --od: #A8893F;
  --od-2: #8A7033;
  --ink: #1F2937;
  background: #F3F4F6;
  color: #1F2937;
  font-size: 17px;
  line-height: 1.65;
}
[data-sf-reading] main h1, [data-sf-reading] main h2, [data-sf-reading] main h3, [data-sf-reading] main h4,
[data-sf-reading] main section h2, [data-sf-reading] main section h3, [data-sf-reading] main .card h2 a { color: #0F1722; }
[data-sf-reading] main p, [data-sf-reading] main li, [data-sf-reading] main section p,
[data-sf-reading] main .container > p, [data-sf-reading] main .container > ul li, [data-sf-reading] main .container > ol li,
[data-sf-reading] main td, [data-sf-reading] main .card p, [data-sf-reading] main .faq p, [data-sf-reading] main .lede { color: #1F2937; }
[data-sf-reading] main .container > .pubnote, [data-sf-reading] main .container > .verified, [data-sf-reading] main .container > .updated,
[data-sf-reading] main .container > .summary, [data-sf-reading] main .container > .sources, [data-sf-reading] main .container > .disclaimer,
[data-sf-reading] main .container > .disclaimer-box, [data-sf-reading] main .container > .src { color: #4F5A6A; }
[data-sf-reading] main strong, [data-sf-reading] main b { color: #0F1722; }
[data-sf-reading] main a { color: #A8893F; }
[data-sf-reading] main a:hover { color: #0F1722; }
[data-sf-reading] main .breadcrumb { color: #4F5A6A; }
[data-sf-reading] main .breadcrumb a { color: #A8893F; }
[data-sf-reading] main ::selection { background: rgba(168, 137, 63, .3); color: #0F1722; }
[data-sf-reading] main section { border-top: 0; }
/* cards and callouts: white, hairline border, soft shadow */
[data-sf-reading] main .callout, [data-sf-reading] main .related, [data-sf-reading] main .example, [data-sf-reading] main .cat,
[data-sf-reading] main .takeaways, [data-sf-reading] main .myth, [data-sf-reading] main .mistake, [data-sf-reading] main .timeline,
[data-sf-reading] main .checklist, [data-sf-reading] main .card, [data-sf-reading] main .faq details, [data-sf-reading] main .sf-common-q details,
[data-sf-reading] main .disclaimer, [data-sf-reading] main .disclaimer-box, [data-sf-reading] main .subscribe, [data-sf-reading] main .sources,
[data-sf-reading] main .src, [data-sf-reading] main .disc, [data-sf-reading] main .sf-sources, [data-sf-reading] main .compare {
  background: #FFFFFF; border: 1px solid rgba(15, 23, 34, .12); color: #1F2937;
  box-shadow: 0 1px 2px rgba(15, 23, 34, .04), 0 8px 24px rgba(15, 23, 34, .06);
}
[data-sf-reading] main .callout, [data-sf-reading] main .cat, [data-sf-reading] main .myth, [data-sf-reading] main .checklist,
[data-sf-reading] main .subscribe, [data-sf-reading] main .disclaimer, [data-sf-reading] main .disclaimer-box, [data-sf-reading] main .example { border-left: 4px solid #A8893F; }
[data-sf-reading] main .cat.no { border-left-color: #B3473A; }
[data-sf-reading] main .takeaways, [data-sf-reading] main .card { border-top: 3px solid var(--gold); }
[data-sf-reading] main .card.feature { background: #E9ECF1; }
[data-sf-reading] main .callout:hover, [data-sf-reading] main .card:hover { transform: none; border-color: rgba(15, 23, 34, .12); }
[data-sf-reading] main .callout strong, [data-sf-reading] main .related strong, [data-sf-reading] main .sf-common-q summary,
[data-sf-reading] main .faq summary, [data-sf-reading] main .disc b, [data-sf-reading] main .disc strong, [data-sf-reading] main .sf-sources strong,
[data-sf-reading] main .qtext, [data-sf-reading] main .card h2 a { color: #0F1722; }
[data-sf-reading] main .related a, [data-sf-reading] main .src a, [data-sf-reading] main .sf-sources a { color: #A8893F; }
[data-sf-reading] main .sf-common-q details p, [data-sf-reading] main .card p, [data-sf-reading] main .example, [data-sf-reading] main .cat { color: #1F2937; }
[data-sf-reading] main .faq details[open], [data-sf-reading] main .sf-common-q details[open] { border-color: rgba(168, 137, 63, .5); }
[data-sf-reading] main .src, [data-sf-reading] main .sf-sources { border-style: dashed; box-shadow: none; color: #4F5A6A; }
[data-sf-reading] main .disc, [data-sf-reading] main .disclaimer, [data-sf-reading] main .disclaimer-box, [data-sf-reading] main .sources,
[data-sf-reading] main .verified, [data-sf-reading] main .updated, [data-sf-reading] main .pubnote, [data-sf-reading] main .summary,
[data-sf-reading] main .reviewed, [data-sf-reading] main .card p, [data-sf-reading] main .note { color: #4F5A6A; }
/* gold text on paper uses the darker #7D6226 (5.2:1 on #F3F4F6, 4.8:1 on #E9ECF1); links keep the spec gold-deep and carry an underline */
[data-sf-reading] main .verified, [data-sf-reading] main .section-label, [data-sf-reading] main .card .tag, [data-sf-reading] main .card .more,
[data-sf-reading] main .timeline .date, [data-sf-reading] main .myth .verdict, [data-sf-reading] main .myth .label { color: #7D6226; }
[data-sf-reading] main .example .result strong, [data-sf-reading] main .cat .dies strong, [data-sf-reading] main .fix strong { color: #0F1722; }
[data-sf-reading] main .card .more:hover { color: #0F1722; }
[data-sf-reading] main p a:not(.btn), [data-sf-reading] main li a:not(.btn), [data-sf-reading] main td a { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(168, 137, 63, .6); }
[data-sf-reading] main .example .result, [data-sf-reading] main .example .stack > div, [data-sf-reading] main .cat .dies,
[data-sf-reading] main .fix, [data-sf-reading] main .myth .verdict, [data-sf-reading] main .hp-card { background: #E9ECF1; border: 1px solid rgba(15, 23, 34, .08); color: #1F2937; }
[data-sf-reading] main .example .stack .num { color: #0F1722; }
[data-sf-reading] main .example .stack .label { color: #4F5A6A; }
[data-sf-reading] main .mistake .num { color: #A8893F; }
[data-sf-reading] main .summary { border-left-color: #A8893F; }
[data-sf-reading] main .pubnote { border-bottom-color: rgba(15, 23, 34, .12); }
/* tables on paper */
[data-sf-reading] main table, [data-sf-reading] main table.compare, [data-sf-reading] main table.branch, [data-sf-reading] main table.rates {
  background: #FFFFFF; border: 1px solid rgba(15, 23, 34, .12); color: #1F2937;
}
[data-sf-reading] main th, [data-sf-reading] main td { border-color: rgba(15, 23, 34, .12) !important; }
[data-sf-reading] main th { background: var(--navy) !important; color: var(--gold) !important; }
[data-sf-reading] main table.compare td:first-child, [data-sf-reading] main table.rates td:first-child, [data-sf-reading] main table.rates tr:last-child td { color: #0F1722; }
[data-sf-reading] main .compare-row { border-bottom-color: rgba(15, 23, 34, .12); }
[data-sf-reading] main .compare-row.head { background: var(--navy); color: var(--gold); }
[data-sf-reading] main .compare-row > div:first-child { background: #E9ECF1; color: #0F1722; }
[data-sf-reading] main .compare-row > div:nth-child(2) { border-color: rgba(15, 23, 34, .12); }
/* quotes and code */
[data-sf-reading] main blockquote { background: #E9ECF1; border-left: 4px solid #A8893F; color: #1F2937; padding: 14px 18px; border-radius: 0 8px 8px 0; }
[data-sf-reading] main pre, [data-sf-reading] main code { background: #E9ECF1; color: #0F1722; border-radius: 4px; }
[data-sf-reading] main [style*="border-left:3px solid #c9a961"] { color: #1F2937 !important; background: #E9ECF1; padding: 12px 14px !important; border-radius: 0 8px 8px 0; }
[data-sf-reading] main [style*="color:#4f5a6a"], [data-sf-reading] main [style*="color: #4f5a6a"], [data-sf-reading] main [style*="color:#555"] { color: #4F5A6A !important; }
[data-sf-reading] main [style*="rgba(26,35,50,0.03)"] { background: #FFFFFF !important; border-color: rgba(15, 23, 34, .12) !important; }
[data-sf-reading] main a[style*="color:var(--navy)"] { color: #0F1722 !important; border-color: #0F1722 !important; }
/* the inline "outline" twin of a .btn inside the article (playbook post): stays an outline on paper; :not(#sf-none) lifts it over the theme's primary rule */
[data-sf-reading] main a.btn[style*="transparent"]:not(#sf-none) { background: transparent !important; color: #0F1722 !important; border: 1.5px solid #A8893F !important; box-shadow: none; }
[data-sf-reading] main a.btn[style*="transparent"]:not(#sf-none):hover { background: rgba(168, 137, 63, .12) !important; }
/* buttons inside the article */
[data-sf-reading] main .btn, [data-sf-reading] main .subscribe .btn { background: var(--gold); color: var(--ink); border: 1px solid var(--gold); border-radius: 2px; box-shadow: 0 6px 18px rgba(15, 23, 34, .12); }
[data-sf-reading] main .btn:hover { background: #D6B872; color: var(--ink); }
[data-sf-reading] main .btn-outline { background: transparent; color: #0F1722; border: 1.5px solid #A8893F; }
[data-sf-reading] main .btn-outline:hover { background: rgba(168, 137, 63, .12); color: #0F1722; }
/* blocks that stay dark inside the reading surface */
[data-sf-reading] main .callout.dark, [data-sf-reading] main .hook-line.soto {
  background: var(--navy); border: 1px solid rgba(15, 23, 34, .12); border-left: 4px solid var(--gold); color: #F5F1E8;
  box-shadow: 0 12px 32px rgba(15, 23, 34, .18);
}
[data-sf-reading] main .callout.dark p, [data-sf-reading] main .callout.dark li { color: #C9D0DC; }
[data-sf-reading] main .callout.dark strong, [data-sf-reading] main .callout.dark b { color: var(--gold); }
[data-sf-reading] main .callout.dark a { color: var(--gold); }
[data-sf-reading] main .callout.dark h3, [data-sf-reading] main .callout.dark h2 { color: #F5F1E8; }
[data-sf-reading] main .sf-calccard { background: linear-gradient(150deg, #22304A 0%, #1A2332 100%); border: 1px solid rgba(201, 169, 97, .35); color: #C9D0DC; }
[data-sf-reading] main .sf-calccard h3 { color: var(--gold); }
[data-sf-reading] main .sf-calccard p { color: #C9D0DC; }
[data-sf-reading] main .sf-calccard a.sf-cc-btn { background: var(--gold) !important; color: #0F1722 !important; }
[data-sf-reading] main .sf-calccard .sf-cc-note { color: #929BAA; }
[data-sf-reading] main .sf-proof-wrap { background: var(--navy) !important; }
[data-sf-reading] main .sf-proof li { color: #C9D0DC; }
[data-sf-reading] main input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]),
[data-sf-reading] main select, [data-sf-reading] main textarea {
  background: #FFFFFF !important; color: #0F1722 !important; border: 1px solid rgba(15, 23, 34, .25) !important; color-scheme: light;
}
[data-sf-reading] main input::placeholder { color: #6B7480 !important; }
[data-sf-reading] main .hub-hero { color: var(--cream); }
[data-sf-reading] main img { border-color: rgba(15, 23, 34, .12); }
@media (max-width: 820px) {
  [data-sf-reading] main h2 { font-size: 28px; }
}

/* narrow phones: tighter table cells so the 3-column comparison tables fit inside 375px (the cost page's table was 5px over before the theme) */
@media (max-width: 480px) {
  th, td, table.chart th, table.chart td { padding-left: 8px !important; padding-right: 8px !important; overflow-wrap: anywhere; }
  table.branch, table.compare, table.rates { font-size: .9rem; }
}

/* ── Nav link spacing fix (pre-existing bug: navcalc + back ran together) ── */
body nav.top .container > div{display:flex;align-items:center;gap:22px;flex-wrap:wrap;justify-content:flex-end}
body nav.top .container > div > a{white-space:nowrap}
@media(max-width:560px){body nav.top .container > div{gap:14px}}
