/* Site color theme: ALL text in blue-grey; white is only an accent for emphasized words (strong / b / em / .accent).
   Brand blue (#64C8FF) and gold stay on buttons, links, checks, labels.
   To tweak: edit --ink-body / --ink-muted. To revert: remove the theme.css <link> tags (or revert this commit). */
:root {
    --ink-body: #b4c0d3;   /* 11.1:1 on #050508, 10.3:1 on #101016 (WCAG AA + AAA) */
    --ink-muted: #95a3b9;  /* secondary text: 8.0:1 on #050508 */
    --ink-accent: #ffffff;
    --ink: var(--ink-body);
}
body { color: var(--ink-body); }
:is(p, li, dd, td, h1, h2, h3, h4, h5, h6) :is(strong, b, em), .accent { color: var(--ink-accent) !important; }
.hero-lead { color: var(--ink-body) !important; }
/* Silver-gradient headings -> solid blue-grey (brand orange / blue gradient accents untouched) */
h1, h2 { background-image: none !important; -webkit-background-clip: border-box !important; background-clip: border-box !important; -webkit-text-fill-color: var(--ink-body) !important; color: var(--ink-body) !important; }
:is(h1, h2) .tag-creatively { -webkit-text-fill-color: transparent !important; }
/* Hard-coded white mobile-menu links (privacy.html) -> blue-grey */
.mobile-menu nav a:not([aria-current]) { color: var(--ink-body); }
/* Big primary CTA buttons: transparent outline (ghost) style, site-wide.
   Light text and 1px light border on the dark page; hover adds a faint white fill.
   Contrast: #e2e2e2 text on the dark page background (~#0a0a0c) = about 15:1. */
:root {
    --cta-bg: transparent;
    --cta-bg-hover: rgba(255, 255, 255, 0.06);
    --cta-border: #d6d6d6;
    --cta-border-w: 1px;
    --cta-ink: #e2e2e2;
    --cta-accent: #e2e2e2;
    --cta-glow-hover: none;
}
.cta-block, .sv-cta-block, .sv-btn--primary, .qf-btn--primary, .btn.btn-primary, .submit-button,
.method-cta .btn.method-cta-btn {
    background: var(--cta-bg) !important;
    border: var(--cta-border-w, 2px) solid var(--cta-border) !important;
    color: var(--cta-ink) !important;
    -webkit-text-fill-color: var(--cta-ink) !important;
    font-weight: 800;
    box-shadow: none !important;
    filter: none !important;
}
:is(.cta-block, .sv-cta-block, .sv-btn--primary, .qf-btn--primary, .btn.btn-primary, .submit-button, .method-cta .btn.method-cta-btn) * {
    color: var(--cta-ink) !important;
    -webkit-text-fill-color: var(--cta-ink) !important;
}
:is(.cta-block, .sv-cta-block, .sv-btn--primary, .qf-btn--primary, .btn.btn-primary, .submit-button, .method-cta .btn.method-cta-btn) :is(.cta-block-arrow, .method-cta-arrow),
:is(.cta-block, .sv-cta-block, .sv-btn--primary, .qf-btn--primary, .btn.btn-primary, .submit-button, .method-cta .btn.method-cta-btn) > span[aria-hidden="true"] {
    color: var(--cta-accent) !important;
    -webkit-text-fill-color: var(--cta-accent) !important;
}
:is(.cta-block, .sv-cta-block, .sv-btn--primary, .qf-btn--primary, .btn.btn-primary, .submit-button, .method-cta .btn.method-cta-btn):hover {
    background: var(--cta-bg-hover, var(--cta-bg)) !important;
    box-shadow: var(--cta-glow-hover) !important;
    transform: translateY(-2px);
}
@media (prefers-reduced-motion: reduce) {
    :is(.cta-block, .sv-cta-block, .sv-btn--primary, .qf-btn--primary, .btn.btn-primary, .submit-button, .method-cta .btn.method-cta-btn):hover { transform: none; }
}
