/* ===== Sitewide typography & colour update (2026-09-17) =====
   Approved neutral greyscale hierarchy: H1/H2 #1A1A1A bold anchor (600),
   body copy #4A4A4A, secondary/meta text #767676. Redefining the
   ink/slate/muted tokens cascades to everything already consuming them.
   H1 46px / H2 38px, both weight 600, both line-height unified to 50px.
   Placed at the end of body (not <head>) and the hero-restoration rules
   below use #kgm/#kg-prefixed selectors, matching the specificity of the
   per-page Tier-2 hero blocks so this reliably wins cascade ties by
   source order instead of losing to an ID-scoped hero rule. */
#kgm, #kg {
  --k2-ink: #1A1A1A !important;
  --k2-slate: #4A4A4A !important;
  --k2-muted: #767676 !important;
}
h1, h2, .sec-title, .sm-card-head h2 {
  color: #1A1A1A !important;
  font-weight: 600 !important;
  line-height: 50px !important;
}
h1 { font-size: 46px !important; }
h2, .sec-title, .sm-card-head h2 { font-size: 46px !important; }

/* Hero titles sit on a photo/gradient scrim and must stay white at their
   original responsive size; restore that explicitly so the generic h1
   rule above doesn't make them dark and oversized. */
#kgm .hero h1, #kg .hero h1, #kgm .hero .hero-h, #kg .hero .hero-h,
#kgm .phero-inner h1, #kg .phero-inner h1,
#kgm .hero-inner h1, #kg .hero-inner h1,
#kgm .hero-banner-content h1, #kg .hero-banner-content h1,
.hero-banner h1,
.kgc.contact-hero .page-title h1 {
  color: #ffffff !important;
  font-weight: 500 !important;
  font-size: clamp(24px, 3.2vw, 38px) !important;
  line-height: 1.15 !important;
}
