/**
 * Sitewide contrast repairs (Batch 2.5 corrective).
 * Loaded after site-shell.css — targeted selectors only.
 */

/* ── Dark surfaces: cream body, pink interactive ── */
#tbp_footer .n92-site-footer,
#tbp_footer .n92-site-footer .tb_text_wrap,
body.n92-case-study #content .themify_builder_content,
#content:has(.n92-gs),
#content:has(.scale) .start,
#content:has(.workIndex) .start {
  --n92-contrast-ink: var(--n92-on-dark, #efece8);
  --n92-contrast-accent: var(--n92-accent-pink, #ff3377);
}

#tbp_footer .n92-site-footer :is(p, li, h2, h3, span):not(.n92-footer-cta) {
  color: inherit;
}

/* Footer links: never black/navy on dark */
#tbp_footer .n92-site-footer a:not(.n92-footer-cta):not(.n92-header-cta) {
  color: var(--n92-on-dark, #efece8);
}

#tbp_footer .n92-site-footer a:not(.n92-footer-cta):hover,
#tbp_footer .n92-site-footer a:not(.n92-footer-cta):focus-visible {
  color: var(--n92-accent-pink, #ff3377);
}

/* Header gold CTA — black text (beats legacy navy) */
#headerwrap .n92-header-cta,
#headerwrap a.n92-header-cta {
  color: #000000 !important;
}

#headerwrap .n92-header-cta:hover {
  color: #000000 !important;
}

/* Homepage scale — cream sections use navy ink */
#content:has(.scale) .scale {
  color: var(--n92-on-light, #0b1638);
}

#content:has(.scale) .scale a:not(.cta):not(.n92-footer-cta):not(#chain a) {
  color: var(--n92-on-light, #0b1638);
}

#content:has(.scale) .scale a:not(.cta):not(#chain a):hover {
  color: var(--n92-accent-pink, #ff3377);
}

/* Homepage chain: navy band must keep cream/pink contrast despite light-page rules. */
#content:has(.scale) #chain,
#content:has(.scale) #chain :is(h2, strong, p) {
  color: var(--n92-on-dark, #efece8);
}

#content:has(.scale) #chain span {
  color: rgba(239, 236, 232, 0.72);
}

#content:has(.scale) #chain a,
#content:has(.scale) #chain a:visited {
  color: var(--n92-on-dark, #efece8);
}

#content:has(.scale) #chain a:hover,
#content:has(.scale) #chain a:focus-visible {
  color: var(--n92-accent-pink, #ff3377);
}

/* Homepage + work index closing CTA bands (dark navy) */
#content:has(.scale) .start,
#content:has(.workIndex) .start {
  color: var(--n92-on-dark, #efece8);
}

#content:has(.scale) .start :is(h2, p, a),
#content:has(.workIndex) .start :is(h2, p, a) {
  color: var(--n92-on-dark, #efece8);
}

#content:has(.scale) .start a:hover,
#content:has(.workIndex) .start a:hover {
  color: var(--n92-accent-pink, #ff3377);
}

#content:has(.workIndex) .workIndex .start .btnPrimary,
#content:has(.workIndex) .workIndex .start .btnPrimary:hover,
#content:has(.workIndex) .workIndex .start .btnPrimary:focus-visible {
  color: #0b1638 !important;
}

#content:has(.scale) .scale .cta {
  color: #000000 !important;
  background: var(--n92-cta-gold, #f2c500);
}

#content:has(.workIndex) .workIndex a.rowLink,
#content:has(.workIndex) .workIndex .filterTab {
  color: var(--n92-on-light, #0b1638);
}

#content:has(.workIndex) .workIndex a.rowLink:hover,
#content:has(.workIndex) .workIndex .filterTab[aria-selected="true"] {
  color: var(--n92-accent-pink, #ff3377);
}

/* Case studies — reinforce dark-band link contrast */
#pagewrap.n92-case-study #content a,
body.n92-case-study #content .themify_builder_content a {
  color: var(--n92-on-dark, #efece8);
}

#pagewrap.n92-case-study #content a:hover,
body.n92-case-study #content .themify_builder_content a:hover {
  color: var(--n92-accent-pink, #ff3377);
}

/* Get started — form fields on dark */
#content:has(.n92-gs) .n92-gs a {
  color: var(--n92-on-light, #0b1638);
}

#content:has(.n92-gs) .n92-gs a:hover {
  color: var(--n92-accent-pink, #ff3377);
}

#content:has(.n92-gs) .n92-gs input,
#content:has(.n92-gs) .n92-gs textarea,
#content:has(.n92-gs) .n92-gs select {
  color: #0a0a0a !important;
  background-color: #ffffff !important;
}

#content:has(.n92-gs) .n92-gs input::placeholder,
#content:has(.n92-gs) .n92-gs textarea::placeholder {
  color: rgba(10, 10, 10, 0.55) !important;
}

/* Cream / light builder rows — navy text */
#content .module_row[style*="background-color: rgb(239, 236, 232)"],
#content .module_row[style*="background-color:#efece8"],
#content .module_row[style*="background: #efece8"] {
  color: var(--n92-on-light, #0b1638);
}

#content .module_row[style*="background-color: rgb(239, 236, 232)"] a,
#content .module_row[style*="background-color:#efece8"] a {
  color: var(--n92-on-light, #0b1638);
}

#content .module_row[style*="background-color: rgb(239, 236, 232)"] a:hover,
#content .module_row[style*="background-color:#efece8"] a:hover {
  color: var(--n92-accent-pink, #ff3377);
}
