/* Ferrer sitewide dark-section contrast fix. Text visibility only. */

/* Reset anything that can make dark-card text appear transparent/dim. */
html body :is(.callout,.area-callout,.contact-card,.hero-aside,.content.alt,.service-section.dark,.final-cta,.faq-bottom,.faq-sidebar,.area-facts,.area-checklist),
html body#home .cta{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
}

/* Headings on every dark card / CTA. */
html body main section.content > .callout > div > :is(h1,h2,h3,h4),
html body main .content .callout :is(h1,h2,h3,h4),
html body :is(.area-callout,.contact-card,.hero-aside,.content.alt,.service-section.dark,.final-cta,.faq-bottom,.faq-sidebar,.area-facts,.area-checklist) :is(h1,h2,h3,h4,strong,b),
html body#home .cta :is(h1,h2,h3,h4,strong,b){
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:none!important;
  background-image:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  text-shadow:none!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  visibility:visible!important;
}

/* Supporting copy on every dark card / CTA. */
html body main section.content > .callout > div > :is(p,li,span,small),
html body main .content .callout :is(p,li,span,small),
html body :is(.area-callout,.contact-card,.hero-aside,.content.alt,.service-section.dark,.final-cta,.faq-bottom,.faq-sidebar,.area-facts,.area-checklist) :is(p,li,span,small),
html body#home .cta :is(p,li,span,small){
  color:#d7e3ed!important;
  -webkit-text-fill-color:#d7e3ed!important;
  background:none!important;
  background-image:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  text-shadow:none!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  visibility:visible!important;
}

/* Non-button links inside dark cards. */
html body :is(.callout,.area-callout,.contact-card,.hero-aside,.content.alt,.service-section.dark,.final-cta,.faq-bottom,.faq-sidebar,.area-facts,.area-checklist) a:not(.button),
html body#home .cta a:not(.cta-btn){
  color:#edf7ff!important;
  -webkit-text-fill-color:#edf7ff!important;
  opacity:1!important;
}

/* CTA button text stays white. */
html body :is(.callout,.area-callout,.final-cta,.faq-bottom) :is(.button,a.button),
html body#home .cta .cta-btn{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  filter:none!important;
}

/* Accent labels only. */
html body .content.alt :is(.eyebrow,.num),
html body .hero-aside .aside-label,
html body .service-section.dark .section-label,
html body .area-facts-head small{
  color:#8fd1ff!important;
  -webkit-text-fill-color:#8fd1ff!important;
  opacity:1!important;
}
