/* WEALSURE V43 — FINAL GLOBAL GREEN + RED GRADIENT HEADING OVERRIDE
   Loaded last on every page. Headings are NEVER rendered as black/solid text. */

:root{
  --ws-heading-gradient:linear-gradient(105deg,#087a3e 0%,#16a34a 36%,#e52b32 72%,#c81018 100%);
}

/* Every heading/display heading: force the premium gradient. */
:where(h1,h2,h3,h4,h5,h6,
.h1,.h2,.h3,.h4,.h5,.h6,
.display,.display-title,.page-title,
.section-title,.section-heading,.hero-title,.hero-heading,
.title,.heading,
[class*="title"],[class*="heading"]){
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  background-image:var(--ws-heading-gradient) !important;
  background-color:transparent !important;
  background-size:200% auto !important;
  background-position:left center !important;
  background-clip:text !important;
  -webkit-background-clip:text !important;
  text-shadow:none !important;
}

/* Defeat older dark-section and inline color rules. */
:where(.section-dark,.feature-band,.cta-v18,.portfolio-shell,.service-hero,.hero) :where(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,.display,.display-title,.page-title,.section-title,.section-heading,.hero-title,.hero-heading){
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  background-image:var(--ws-heading-gradient) !important;
  background-color:transparent !important;
  background-clip:text !important;
  -webkit-background-clip:text !important;
  text-shadow:none !important;
}

/* Defeat span/em/bold rules that were re-applying black/solid text. */
:where(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,.display,.display-title,.page-title,.section-title,.section-heading,.hero-title,.hero-heading) :where(span,em,strong,b,i){
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  background-image:inherit !important;
  background-clip:text !important;
  -webkit-background-clip:text !important;
  text-shadow:none !important;
}

/* Explicitly neutralize common old dark heading selectors. */
.section-dark h1,.section-dark h2,.section-dark h3,.section-dark h4,
.feature-band h1,.feature-band h2,.feature-band h3,.feature-band h4,
.cta-v18 h1,.cta-v18 h2,.cta-v18 h3,.cta-v18 h4,
.portfolio-shell h1,.portfolio-shell h2,.portfolio-shell h3,.portfolio-shell h4,
.service-hero h1,.hero-v18 h1,.hero h1,
.editorial > .container > h2,
.section-kicker .h2,.section-kicker h2{
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  background-image:var(--ws-heading-gradient) !important;
  background-clip:text !important;
  -webkit-background-clip:text !important;
}

/* Keep buttons, labels and navigation readable; this override targets headings only. */

/* V43.1 — HIGH-SPECIFICITY FINAL OVERRIDE
   Older V25/V32/V33 rules used !important on heading/em colors, so the
   low-specificity :where() rules above could still lose the cascade. */
html body h1,
html body h2,
html body h3,
html body h4,
html body h5,
html body h6,
html body .h1,
html body .h2,
html body .h3,
html body .h4,
html body .h5,
html body .h6,
html body .display,
html body .display-title,
html body .page-title,
html body .section-title,
html body .section-heading,
html body .hero-title,
html body .hero-heading,
html body .title,
html body .heading {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  background-image: var(--ws-heading-gradient) !important;
  background-color: transparent !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  text-shadow: none !important;
}

/* Catch headings that live under the high-specificity legacy selectors. */
html body main h1,
html body main h2,
html body main h3,
html body main h4,
html body main h5,
html body main h6,
html body .section-kicker h2,
html body .section-kicker .h2,
html body .page-photo-copy h2,
html body .service-body h2,
html body .feature-band h2,
html body .cta-v18 h2,
html body .portfolio-shell h2,
html body .hero-v18 h1,
html body .hero h1,
html body .service-hero h1 {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  background-image: var(--ws-heading-gradient) !important;
  background-color: transparent !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  text-shadow: none !important;
}

/* CRITICAL: italic/emphasized heading text had a legacy currentColor/solid
   fill with !important. Give every heading descendant its own gradient. */
html body h1 em,
html body h2 em,
html body h3 em,
html body h4 em,
html body h5 em,
html body h6 em,
html body .h1 em,
html body .h2 em,
html body .h3 em,
html body .h4 em,
html body .h5 em,
html body .h6 em,
html body .display em,
html body .display-title em,
html body .page-title em,
html body .section-title em,
html body .section-heading em,
html body .hero-title em,
html body .hero-heading em {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  background-image: var(--ws-heading-gradient) !important;
  background-color: transparent !important;
  background-size: 200% auto !important;
  background-position: left center !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

html body .section-kicker h2 em,
html body .section-kicker .h2 em,
html body main h1 em,
html body main h2 em,
html body .feature-band h2 em,
html body .cta-v18 h2 em,
html body .portfolio-shell h2 em,
html body .service-body h2 em {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  background-image: var(--ws-heading-gradient) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
}

/* Any span/strong/b/i used inside a heading must inherit the same visual
   treatment instead of reintroducing a solid legacy color. */
html body h1 span,
html body h1 strong,
html body h1 b,
html body h1 i,
html body h2 span,
html body h2 strong,
html body h2 b,
html body h2 i,
html body h3 span,
html body h3 strong,
html body h3 b,
html body h3 i,
html body h4 span,
html body h4 strong,
html body h4 b,
html body h4 i,
html body h5 span,
html body h5 strong,
html body h5 b,
html body h5 i,
html body h6 span,
html body h6 strong,
html body h6 b,
html body h6 i {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  background-image: inherit !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  text-shadow: none !important;
}
