
/* KECB usability and contrast pass — 2026-07-31 */
.simple-tool-guide{
  margin:1rem 0 1.35rem;padding:1rem 1.1rem;border:1px solid rgba(16,35,63,.16);
  border-radius:14px;background:#fffdf9;color:#211d18;box-shadow:0 8px 24px rgba(16,35,63,.06)
}
.simple-tool-guide h2{margin:.1rem 0 .4rem;color:#10233f;font-size:clamp(1.15rem,2.2vw,1.45rem)}
.simple-tool-guide p{margin:.2rem 0 .75rem;color:#403a32}
.simple-tool-guide ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;list-style:none;margin:0;padding:0;counter-reset:tool-step}
.simple-tool-guide li{counter-increment:tool-step;padding:.75rem .8rem;border-radius:10px;background:#f5eee3;color:#2d2923;line-height:1.45}
.simple-tool-guide li::before{content:counter(tool-step);display:inline-grid;place-items:center;width:1.65rem;height:1.65rem;margin-right:.45rem;border-radius:50%;background:#9c2b2b;color:#fff;font-weight:800}
.simple-tool-guide strong{color:#10233f}
@media(max-width:700px){.simple-tool-guide ol{grid-template-columns:1fr}}

/* The account label is intentionally explicit in both states. */
.account-utility{white-space:normal!important;text-align:center!important;line-height:1.15!important;max-width:12.5rem}
.account-utility.is-google-signed-in{background:#e9f4ed!important;color:#173f2c!important;border-color:#8db79d!important}

/* High-contrast text on the site's shared dark surfaces. */
:where(
  .site-header-v3,.site-header,.site-header.site-header-simple,.site-footer-v3.footer-compact,
  .system-hero,.tool-suite-hero,.tools-book-first-hero,.book-resources-hero,
  .edu-hero,.edu-cta,.upgrade-hero,.academy-home-hero,.academy-track-hero,.academy-lesson-hero,
  .bar2-home-hero,.bar2-track-hero,.bar2-lesson-hero,.k2-home-hero,.k2-hero,.k2-dark,
  .front-door-hero,.front-door-search,.front-door-founder,.front-door-choice,
  .home-discovery,.home-directory-callout,.home-academy-callout,.home-explore-card,
  .whats-new-hero,.whats-new-feature-side,.founder-page-hero,.founder-principles,
  .artist-hero,.artist-intent-panel,.artist-directory-cta,.dt-hero,.dt-directory-hero,.dt-tools-hero,
  .visual-banner,.visual-hero,.spx-dark,.spx-card.dark,.spx-preview,.spx-stat,
  .next-steps-efficient,.path-progress-card,.role-related,.role-quickbar,
  .directory-methodology,.expansion-band,.field-center-strip,.helpdesk-hero,
  .chapter-connected-learning,.chapter-connect-cta,.guided-system-card,.site-legal-notice
){color:#faf7f0!important}

:where(
  .system-hero,.tool-suite-hero,.tools-book-first-hero,.book-resources-hero,.edu-hero,.edu-cta,
  .upgrade-hero,.academy-home-hero,.academy-track-hero,.academy-lesson-hero,
  .bar2-home-hero,.bar2-track-hero,.bar2-lesson-hero,.k2-home-hero,.k2-hero,.k2-dark,
  .front-door-hero,.front-door-search,.front-door-founder,.home-discovery,
  .home-directory-callout,.home-academy-callout,.whats-new-hero,.whats-new-feature-side,
  .founder-page-hero,.founder-principles,.artist-hero,.artist-intent-panel,.artist-directory-cta,
  .dt-hero,.dt-directory-hero,.dt-tools-hero,.visual-banner,.visual-hero,.spx-dark,.spx-card.dark,
  .spx-preview,.spx-stat,.next-steps-efficient,.path-progress-card,.role-related,.role-quickbar,
  .directory-methodology,.expansion-band,.field-center-strip,.helpdesk-hero,
  .chapter-connected-learning,.chapter-connect-cta,.guided-system-card,.site-legal-notice
) :where(h1,h2,h3,h4,p,li,dt,dd,small,strong,.eyebrow,.kicker,.edu-kicker,.edu-lead,.system-kicker,.section-lead,.muted){color:inherit!important}

:where(.site-header-v3,.site-header,.site-footer-v3.footer-compact,.nav-more-menu) a,
:where(.site-header-v3,.site-header,.site-footer-v3.footer-compact,.nav-more-menu) button,
:where(.site-header-v3,.site-header,.site-footer-v3.footer-compact,.nav-more-menu) summary{color:#faf7f0!important}
:where(.site-header-v3,.site-header) .brand small{color:#ded8ce!important}
:where(.site-footer-v3.footer-compact) p{color:#e6dfd4!important}
:where(.nav-more-menu){color:#faf7f0!important}
:where(.nav-more-menu) a:hover,:where(.nav-more-menu) a:focus-visible{background:#263e61!important;color:#fff!important}

/* Keep light cards readable when they sit inside a dark section. */
:where(.system-card,.edu-card,.tool-app,.member-panel,.academy-card,.search-result,.directory-card,.role-entry-card,.spx-card:not(.dark)){
  color:#211d18
}
:where(.system-card,.edu-card,.tool-app,.member-panel,.academy-card,.search-result,.directory-card,.role-entry-card,.spx-card:not(.dark)) :where(h1,h2,h3,h4,p,li,dt,dd,small,strong,label,span){color:inherit}

.member-account-page .member-account-wrap{max-width:720px}
.member-account-page .member-panel-simple{text-align:center;padding:clamp(1.25rem,4vw,2.25rem)}
.member-account-page .member-panel-simple .member-actions{justify-content:center}
.member-account-page .member-email{font-weight:700;color:#10233f;overflow-wrap:anywhere}

/* Targeted contrast repairs found in the full template scan. */
.main-nav-v3 .search-toggle,
.site-header-v3 .search-toggle{
  appearance:none!important;background:transparent!important;border:0!important;
  color:#faf7f0!important;font:inherit!important;font-weight:700!important;padding:.55rem .65rem!important;cursor:pointer
}
.main-nav-v3 .search-toggle:hover,.main-nav-v3 .search-toggle:focus-visible{background:#263e61!important;color:#fff!important;border-radius:8px}
.browse-grid small{color:#655d53!important}

.spx-section:not(.spx-dark):not(.spx-rust):not(.bar-academy-feature) .spx-kicker{color:#762c2c!important}
.spx-section:not(.spx-dark):not(.spx-rust):not(.bar-academy-feature) .spx-button{background:#9c2b2b!important;color:#fff!important;border-color:#9c2b2b!important}
.spx-section:not(.spx-dark):not(.spx-rust):not(.bar-academy-feature) .spx-button.secondary{
  background:transparent!important;color:#10233f!important;border-color:#10233f!important
}
.spx-section:not(.spx-dark):not(.spx-rust):not(.bar-academy-feature) .spx-button.secondary:hover,
.spx-section:not(.spx-dark):not(.spx-rust):not(.bar-academy-feature) .spx-button.secondary:focus-visible{
  background:#10233f!important;color:#fff!important
}
.bar2-section.dark{color:#f7efe4!important}
.bar2-section.dark :where(h2,h3,p,span,strong,.eyebrow){color:inherit!important}
.bar2-section.dark .eyebrow{color:#f0c96e!important}
.tool-actions button.secondary{background:#fff!important;color:#69351f!important;border:1px solid #69351f!important}
.tool-actions button.secondary:hover,.tool-actions button.secondary:focus-visible{background:#f5eadf!important;color:#4f2818!important}
.decision-band{color:#f7efe4!important}
.decision-band :where(h2,p,strong){color:inherit!important}
.decision-band .eyebrow{color:#f0c96e!important}


/* Final shared navigation system — homepage and interior pages */
.site-header-v3.site-header-simple,
.site-header-v3{
  position:relative!important;z-index:100!important;display:grid!important;
  grid-template-columns:minmax(250px,1fr) auto!important;align-items:center!important;gap:1rem!important;
  min-height:74px!important;padding:.65rem clamp(1rem,3vw,2.4rem)!important;
  background:linear-gradient(135deg,#10233f,#1a3358)!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 7px 20px rgba(16,35,63,.22)!important;color:#faf7f0!important
}
.site-header-v3 .brand{display:flex!important;align-items:center!important;gap:.7rem!important;min-width:0!important;margin:0!important;text-decoration:none!important;color:#faf7f0!important}
.site-header-v3 .brand-mark{display:inline-grid!important;place-items:center!important;flex:0 0 auto!important;background:#9c2b2b!important;color:#fff!important;border-radius:7px!important;padding:.38rem .52rem!important;font-weight:850!important;letter-spacing:.06em!important;box-shadow:0 0 0 1px rgba(0,0,0,.22)!important}
.site-header-v3 .brand strong{display:block!important;color:#fff!important;font-family:Georgia,serif!important;font-size:1rem!important;line-height:1.08!important}
.site-header-v3 .brand small{display:block!important;color:#ded8ce!important;font-size:.68rem!important;line-height:1.22!important}
.main-nav-v3.main-nav-simple,.main-nav-v3{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:wrap!important;gap:.22rem!important;min-width:0!important;overflow:visible!important}
.main-nav-v3>a,.main-nav-v3>button,.main-nav-v3>details>summary{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;
  padding:.56rem .66rem!important;border-radius:8px!important;border:0!important;background:transparent!important;
  color:#f8f3eb!important;font-family:system-ui,sans-serif!important;font-size:.76rem!important;font-weight:760!important;
  line-height:1.15!important;letter-spacing:.035em!important;text-transform:none!important;text-decoration:none!important;
  white-space:nowrap!important;cursor:pointer!important
}
.main-nav-v3>a:hover,.main-nav-v3>a:focus-visible,.main-nav-v3>button:hover,.main-nav-v3>button:focus-visible,
.main-nav-v3>details>summary:hover,.main-nav-v3>details>summary:focus-visible{background:#263e61!important;color:#fff!important;outline:2px solid transparent!important}
.main-nav-v3 .active,.main-nav-v3 [aria-current="page"],.main-nav-v3 details[open]>summary{background:rgba(240,201,110,.16)!important;color:#ffe2a3!important}
.main-nav-v3 .search-toggle{background:transparent!important;color:#f8f3eb!important}
.main-nav-v3 .account-utility{border:1px solid rgba(255,255,255,.34)!important;background:rgba(255,255,255,.06)!important;color:#fff!important;max-width:13rem!important}
.main-nav-v3 .account-utility:hover,.main-nav-v3 .account-utility:focus-visible{background:#fff!important;color:#10233f!important}
.main-nav-v3 .nav-live{color:#fff!important;background:linear-gradient(135deg,#9c2b2b,#7a2020)!important}
.main-nav-v3 .nav-more{position:relative!important;display:inline-flex!important}
.main-nav-v3 .nav-more>summary{list-style:none!important}
.main-nav-v3 .nav-more>summary::-webkit-details-marker{display:none!important}
.main-nav-v3 .nav-more>summary::after{content:"▾"!important;margin-left:.28rem!important;font-size:.72em!important}
.site-header-v3 .nav-more-menu{display:none!important;position:absolute!important;top:calc(100% + .35rem)!important;left:0!important;z-index:120!important;min-width:235px!important;padding:.42rem!important;background:#10233f!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:11px!important;box-shadow:0 16px 32px rgba(0,0,0,.28)!important}
.site-header-v3 .nav-more[open]>.nav-more-menu{display:flex!important;flex-direction:column!important}
.site-header-v3 .nav-more-menu a{display:block!important;padding:.62rem .72rem!important;border-radius:7px!important;color:#f8f3eb!important;text-decoration:none!important;font-size:.82rem!important;font-weight:650!important;white-space:normal!important}
.site-header-v3 .nav-more-menu a:hover,.site-header-v3 .nav-more-menu a:focus-visible{background:#263e61!important;color:#fff!important}
.site-header-v3 .nav-menu-toggle{display:none!important;align-items:center!important;gap:.4rem!important;justify-self:end!important;min-height:42px!important;padding:.55rem .72rem!important;border:1px solid rgba(255,255,255,.35)!important;border-radius:8px!important;background:transparent!important;color:#fff!important;font-weight:750!important;cursor:pointer!important}
@media(max-width:1180px){
  .site-header-v3.site-header-simple,.site-header-v3{grid-template-columns:minmax(0,1fr) auto!important;min-height:66px!important}
  .site-header-v3 .nav-menu-toggle{display:inline-flex!important}
  .site-header-v3 .main-nav-v3{display:none!important;grid-column:1/-1!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;width:100%!important;max-height:calc(100vh - 76px)!important;overflow:auto!important;padding:.65rem 0 .2rem!important;border-top:1px solid rgba(255,255,255,.12)!important}
  .site-header-v3 .main-nav-v3.is-open{display:flex!important}
  .main-nav-v3>a,.main-nav-v3>button,.main-nav-v3>details,.main-nav-v3>details>summary{width:100%!important;justify-content:flex-start!important;text-align:left!important}
  .main-nav-v3 .nav-more{display:block!important}
  .site-header-v3 .nav-more-menu{position:static!important;min-width:0!important;width:100%!important;margin:.25rem 0 0!important;box-shadow:none!important}
  .main-nav-v3 .account-utility{max-width:none!important}
}
@media(max-width:620px){
  .site-header-v3.site-header-simple,.site-header-v3{padding:.55rem .8rem!important}
  .site-header-v3 .brand small{display:none!important}
  .site-header-v3 .brand strong{font-size:.94rem!important}
}
