/* V2764 — owned hero surfaces only. Do not color all site headings white.
   Setting both color and text-fill prevents inherited WebKit and light-theme
   rules from painting a heading in the wrong color. */
html body .ga-readable-hero-v2764[data-hero-surface="dark"] {
  --hero-ink-2764: #ffffff;
  --hero-muted-2764: #d7e5f5;
  --hero-accent-2764: #c2dcfa;
  background-color: #112238 !important;
}
html body .ga-readable-hero-v2764[data-hero-surface="light"] {
  --hero-ink-2764: #10253d;
  --hero-muted-2764: #354e68;
  --hero-accent-2764: #184f94;
}
html body.ga-light-theme main.ga-page .ga-readable-hero-v2764[data-hero-surface] [data-hero-title],
html body.ga-light-theme main.ga-page .ga-readable-hero-v2764[data-hero-surface] [data-hero-title] :is(span,a,strong,em) {
  color: var(--hero-ink-2764) !important;
  -webkit-text-fill-color: var(--hero-ink-2764) !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  text-shadow: none !important;
  -webkit-text-stroke: 0 !important;
}
html body.ga-light-theme main.ga-page .ga-readable-hero-v2764[data-hero-surface] [data-hero-title] {
  font-weight: 800 !important;
  line-height: 1.12 !important;
  letter-spacing: -.035em !important;
  overflow-wrap: anywhere;
  text-wrap: balance;
}
html body.ga-light-theme main.ga-page .ga-readable-hero-v2764[data-hero-surface] [data-hero-description] {
  color: var(--hero-muted-2764) !important;
  -webkit-text-fill-color: var(--hero-muted-2764) !important;
  opacity: 1 !important;
  line-height: 1.6 !important;
  text-shadow: none !important;
  overflow-wrap: anywhere;
}
html body.ga-light-theme main.ga-page .ga-readable-hero-v2764[data-hero-surface] [data-hero-kicker] {
  color: var(--hero-accent-2764) !important;
  -webkit-text-fill-color: var(--hero-accent-2764) !important;
  opacity: 1 !important;
}
/* Admin workspaces need compact titles even when the legacy mobile stylesheet
   sizes all page headings with viewport units. */
html body.ga-light-theme main.ga-page .ga-ops-intro.ga-readable-hero-v2764[data-hero-surface] [data-hero-title] {
  font-size: clamp(28px, 2.8vw, 36px) !important;
}
/* Text sits on an opaque navy surface; imagery lives in the separate art panel.
   Its readability must not change with a bright, missing or replaced photo. */
html body.ga-light-theme main.ga-page .hx-hero.ga-readable-hero-v2764 .hx-hero-copy {
  background: #112238 !important;
  isolation: isolate;
}
html body.ga-light-theme main.ga-page .hx-hero.ga-readable-hero-v2764 h1 {
  font-size: clamp(32px, 3.7vw, 58px) !important;
}
html body.ga-light-theme main.ga-page .ga-readable-hero-v2764.hx-directory-hero {
  background: #f4f6f9 !important;
}
html body.ga-light-theme main.ga-page .ga-readable-hero-v2764.hx-directory-hero [data-hero-title] span {
  color: #184f94 !important;
  -webkit-text-fill-color: #184f94 !important;
}
html body.ga-light-theme main.ga-page .hx-hero.ga-readable-hero-v2764 .hx-button,
html body.ga-light-theme main.ga-page .hx-hero.ga-readable-hero-v2764 .hx-button span {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  opacity: 1 !important;
}
html body.ga-light-theme main.ga-page .hx-hero.ga-readable-hero-v2764 .hx-button { background:#154f9a!important; border-color:#729bd1; }
html body.ga-light-theme main.ga-page .hx-hero.ga-readable-hero-v2764 .hx-button:hover { background:#113f7c!important; }
html body.ga-light-theme main.ga-page .hx-hero.ga-readable-hero-v2764 .hx-button--light,
html body.ga-light-theme main.ga-page .hx-hero.ga-readable-hero-v2764 .hx-button--light span {
  color:#183454!important; -webkit-text-fill-color:#183454!important;
}
html body.ga-light-theme main.ga-page .hx-hero.ga-readable-hero-v2764 .hx-button--light { background:#fff!important; border-color:#fff; }
html body.ga-light-theme main.ga-page .hx-hero.ga-readable-hero-v2764 .hx-button--light:hover { background:#e6effb!important; }
html body.ga-light-theme main.ga-page .ga-readable-hero-v2764 :is(a,button):focus-visible { outline:3px solid #82b7ff; outline-offset:4px; }
@media (forced-colors: active) {
  html body.ga-light-theme main.ga-page .ga-readable-hero-v2764[data-hero-surface] :is([data-hero-title],[data-hero-title] span,[data-hero-description],[data-hero-kicker]) {
    color: CanvasText !important; -webkit-text-fill-color: CanvasText !important;
  }
}

/* V2767 — edge definition is an enhancement to the solid high-contrast fill,
   not a replacement for it. Apply ONLY to large titles on owned dark heroes.
   Paragraphs, navigation, form fields and light cards remain unoutlined. */
html body.ga-light-theme main.ga-page .ga-readable-hero-v2764[data-hero-surface="dark"] [data-hero-title],
html body.ga-light-theme main.ga-page .ga-readable-hero-v2764[data-hero-surface="dark"] [data-hero-title] :is(span,a,strong,em) {
  text-shadow: 0 1px 1px #030b16, 0 3px 8px rgb(3 11 22 / 40%) !important;
}
@supports (-webkit-text-stroke: .65px #030b16) and (paint-order: stroke fill) {
  html body.ga-light-theme main.ga-page .ga-readable-hero-v2764[data-hero-surface="dark"] [data-hero-title],
  html body.ga-light-theme main.ga-page .ga-readable-hero-v2764[data-hero-surface="dark"] [data-hero-title] :is(span,a,strong,em) {
    -webkit-text-stroke: .65px #030b16 !important;
    paint-order: stroke fill; /* Paint the white fill last; don't erode the letters. */
  }
}
@media (forced-colors: active), print {
  html body.ga-light-theme main.ga-page .ga-readable-hero-v2764[data-hero-surface] [data-hero-title],
  html body.ga-light-theme main.ga-page .ga-readable-hero-v2764[data-hero-surface] [data-hero-title] :is(span,a,strong,em) {
    -webkit-text-stroke: 0 !important;
    text-shadow: none !important;
  }
}
