/* SITEWIDE CONTRAST HARDENING — 16 Sep 2026
   Purpose: fix text that becomes unreadable when later layout styles place
   inherited dark text on dark surfaces. No layout, spacing or content changes. */

/* Main black navigation: the bar is intentionally black, so all primary
   navigation labels must remain white in every page/browser. */
.site-nav.nav-v5.static-brand-nav,
.site-nav.nav-v5.fallback-shivi-nav{
  background:#080808!important;
  color:#fff!important;
}
.site-nav.nav-v5 .desktop-nav>a,
.site-nav.nav-v5 .desktop-nav>.nav-dropdown>.nav-dropdown-trigger,
.site-nav.nav-v5 .desktop-nav .training-lab-caret{
  color:#f7f7f5!important;
  opacity:1!important;
}
.site-nav.nav-v5 .desktop-nav>a:hover,
.site-nav.nav-v5 .desktop-nav>a:focus-visible,
.site-nav.nav-v5 .desktop-nav>.nav-dropdown>.nav-dropdown-trigger:hover,
.site-nav.nav-v5 .desktop-nav>.nav-dropdown>.nav-dropdown-trigger:focus-visible{
  color:#fff!important;
}
.site-nav.nav-v5 .nav-dropdown-menu{
  background:rgba(8,8,8,.985)!important;
  border-color:rgba(255,255,255,.12)!important;
}
.site-nav.nav-v5 .nav-dropdown-menu a{
  color:#e8e8e5!important;
}
.site-nav.nav-v5 .nav-dropdown-menu a:hover,
.site-nav.nav-v5 .nav-dropdown-menu a:focus-visible{
  color:#fff!important;
}

/* Dark editorial sections: later generic card rules use a dark paragraph
   token. Explicitly restore readable copy inside dark cards/panels. */
.story-section--dark .sa-touch-card h3,
.story-section--dark .sa-proof-card h3,
.story-section--dark .impact-overview-card h3,
.story-section--dark .impact-mini-card h3,
.story-section--dark .impact-story-card h3{
  color:#fff!important;
  opacity:1!important;
}
.story-section--dark .sa-touch-card p,
.story-section--dark .sa-proof-card p,
.story-section--dark .impact-overview-card p,
.story-section--dark .impact-mini-card p,
.story-section--dark .impact-story-card p{
  color:rgba(255,255,255,.82)!important;
  opacity:1!important;
}

/* Service Architect — the three Modern Service cards were the visible
   regression reported by the client. */
.page-service-refined #modern-service .sa-touch-card p{
  color:rgba(255,255,255,.84)!important;
}
.page-service-refined #modern-service .sa-touch-card h3{
  color:#fff!important;
}

/* Training Lab routing labels were intentionally subtle, but became too faint
   on the black system section in some browsers. */
.page-training-refined .training-routing small,
.page-training-refined .training-routing .tl-route-kicker{
  color:rgba(255,255,255,.72)!important;
  opacity:1!important;
}

/* Video utility copy must stay legible over the black video chrome. */
.echelon-video-block__hint{
  color:rgba(255,255,255,.74)!important;
  opacity:1!important;
}

/* Dark programme diagrams and proof galleries: strengthen secondary labels
   without altering their design hierarchy. */
.programme-diagram-band .programme-diagram-intro .eyebrow,
.programme-diagram-band .programme-diagram-card .eyebrow{
  color:rgba(255,255,255,.74)!important;
}
.programme-diagram-band .programme-diagram-intro>p,
.programme-diagram-band .programme-flow-step small,
.programme-diagram-band .programme-cluster p{
  color:rgba(255,255,255,.74)!important;
}
.real-session-gallery-section--dark .real-session-shot figcaption{
  color:rgba(255,255,255,.78)!important;
  opacity:1!important;
}

/* My Story paired dark card: retain the earlier repair even if stylesheet
   ordering changes after future deploys. */
.my-story-editorial .my-story-principle--language h2{
  color:#fff!important;
}
.my-story-editorial .my-story-principle--language .story-body p{
  color:rgba(255,255,255,.82)!important;
}

/* Mobile/tablet: same contrast guarantees, no structural overrides. */
@media(max-width:900px){
  .site-nav.nav-v5 .desktop-nav>a,
  .site-nav.nav-v5 .desktop-nav>.nav-dropdown>.nav-dropdown-trigger,
  .site-nav.nav-v5 .desktop-nav .training-lab-caret{color:#fff!important;}
}

/* Training Lab ecosystem — secondary labels inside the black routing stage. */
.page-training-refined #training-lab-ecosystem .tl-route-hub small{
  color:rgba(255,255,255,.70)!important;
  opacity:1!important;
}
.page-training-refined #training-lab-ecosystem .tl-route-kicker{
  color:rgba(255,255,255,.72)!important;
  opacity:1!important;
}
.page-training-refined #training-lab-ecosystem .tl-route-card small{
  color:rgba(255,255,255,.72)!important;
  opacity:1!important;
}
