/* V92 Fix CTA / lower hero text too dark + improve readability */

/* ---------- universal readability fix for dark-on-dark headings ---------- */
.v92-force-light,
.v92-force-light * {
  color: #ffffff !important;
  opacity: 1 !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.28) !important;
}

/* ---------- knowledge CTA / lower banner section ---------- */
.v90-knowledge-cta,
.v90-cta-band,
.v90-cta-box,
.knowledge-cta,
.knowledge-strip,
.info-cta,
.section-cta,
.cta-banner,
.cta-knowledge,
.cta-box,
.bottom-cta,
.knowledge-bottom-cta {
  position: relative !important;
  isolation: isolate !important;
}

.v90-knowledge-cta h2,
.v90-knowledge-cta h3,
.v90-cta-band h2,
.v90-cta-band h3,
.v90-cta-box h2,
.v90-cta-box h3,
.knowledge-cta h2,
.knowledge-cta h3,
.knowledge-strip h2,
.knowledge-strip h3,
.info-cta h2,
.info-cta h3,
.section-cta h2,
.section-cta h3,
.cta-banner h2,
.cta-banner h3,
.cta-knowledge h2,
.cta-knowledge h3,
.cta-box h2,
.cta-box h3,
.bottom-cta h2,
.bottom-cta h3,
.knowledge-bottom-cta h2,
.knowledge-bottom-cta h3 {
  color: #ffffff !important;
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 3px 16px rgba(0,0,0,.32) !important;
  position: relative !important;
  z-index: 3 !important;
}

.v90-knowledge-cta p,
.v90-cta-band p,
.v90-cta-box p,
.knowledge-cta p,
.knowledge-strip p,
.info-cta p,
.section-cta p,
.cta-banner p,
.cta-knowledge p,
.cta-box p,
.bottom-cta p,
.knowledge-bottom-cta p {
  color: rgba(255,255,255,.95) !important;
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  -webkit-text-fill-color: rgba(255,255,255,.95) !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.22) !important;
  position: relative !important;
  z-index: 3 !important;
}

/* kill ghost duplicate heading layers */
.v90-knowledge-cta h2::before,
.v90-knowledge-cta h2::after,
.v90-knowledge-cta h3::before,
.v90-knowledge-cta h3::after,
.v90-cta-band h2::before,
.v90-cta-band h2::after,
.knowledge-cta h2::before,
.knowledge-cta h2::after,
.cta-banner h2::before,
.cta-banner h2::after,
.cta-box h2::before,
.cta-box h2::after,
.bottom-cta h2::before,
.bottom-cta h2::after {
  content: none !important;
  display: none !important;
}

/* if there is decorative circle / blob, send it behind text */
.v90-knowledge-cta::before,
.v90-knowledge-cta::after,
.v90-cta-band::before,
.v90-cta-band::after,
.knowledge-cta::before,
.knowledge-cta::after,
.cta-banner::before,
.cta-banner::after,
.cta-box::before,
.cta-box::after,
.bottom-cta::before,
.bottom-cta::after {
  z-index: 1 !important;
}

.v90-knowledge-cta > *,
.v90-cta-band > *,
.v90-cta-box > *,
.knowledge-cta > *,
.knowledge-strip > *,
.info-cta > *,
.section-cta > *,
.cta-banner > *,
.cta-knowledge > *,
.cta-box > *,
.bottom-cta > *,
.knowledge-bottom-cta > * {
  position: relative !important;
  z-index: 3 !important;
}

/* More aggressive fallback for the exact section with two buttons */
.index-main section:last-of-type h2,
.index-main section:last-of-type h3,
main section:last-of-type h2,
main section:last-of-type h3 {
  color: #ffffff !important;
  opacity: 1 !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 3px 14px rgba(0,0,0,.30) !important;
}
main section:last-of-type p,
.index-main section:last-of-type p {
  color: rgba(255,255,255,.95) !important;
  opacity: 1 !important;
}

/* Buttons stay clear */
.v90-knowledge-cta .btn,
.v90-knowledge-cta .v71-btn,
.v90-cta-band .btn,
.knowledge-cta .btn,
.cta-banner .btn,
.cta-box .btn,
.bottom-cta .btn,
.knowledge-bottom-cta .btn {
  position: relative !important;
  z-index: 4 !important;
}

/* Mobile */
@media (max-width: 900px) {
  .v90-knowledge-cta h2,
  .v90-knowledge-cta h3,
  .v90-cta-band h2,
  .v90-cta-band h3,
  .v90-cta-box h2,
  .v90-cta-box h3,
  .knowledge-cta h2,
  .knowledge-cta h3,
  .knowledge-strip h2,
  .knowledge-strip h3,
  .info-cta h2,
  .info-cta h3,
  .section-cta h2,
  .section-cta h3,
  .cta-banner h2,
  .cta-banner h3,
  .cta-knowledge h2,
  .cta-knowledge h3,
  .cta-box h2,
  .cta-box h3,
  .bottom-cta h2,
  .bottom-cta h3,
  .knowledge-bottom-cta h2,
  .knowledge-bottom-cta h3 {
    font-size: clamp(28px, 8vw, 38px) !important;
    line-height: 1.15 !important;
    letter-spacing: -0.04em !important;
  }

  .v90-knowledge-cta p,
  .v90-cta-band p,
  .v90-cta-box p,
  .knowledge-cta p,
  .knowledge-strip p,
  .info-cta p,
  .section-cta p,
  .cta-banner p,
  .cta-knowledge p,
  .cta-box p,
  .bottom-cta p,
  .knowledge-bottom-cta p {
    font-size: 15px !important;
    line-height: 1.75 !important;
  }
}
