/* CAELION — contrast and visibility lock / last loaded style layer. */
:root{--ca-light:#faf9ff;--ca-heading:#1b1233;--ca-violet:#623ea8;--ca-muted:#51476d;--ca-dark:#0b0915;--ca-white:#f9f6ff;--ca-lilac:#d2c2ff;}
/* The five user-reported headings: enforce correct contrast in every browser. */
#solutionsHeading,#impactHeading,#credibilityHeading,#testimonialsHeading,#faq .section-heading{
  color:var(--ca-heading)!important;
  -webkit-text-fill-color:var(--ca-heading)!important;
  background:none!important;
  background-image:none!important;
  background-clip:border-box!important;
  -webkit-background-clip:border-box!important;
  mix-blend-mode:normal!important;
  filter:none!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:none!important;
  position:relative;
  z-index:4;
}
#solutionsHeading span,#impactHeading span,#credibilityHeading span,#testimonialsHeading span,#faq .section-heading span{
  color:var(--ca-violet)!important;
  -webkit-text-fill-color:var(--ca-violet)!important;
  background:transparent!important;
  background-image:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  filter:none!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:none!important;
}
/* Lock the section surfaces as well as the foreground; gradients or parallax cannot change readability. */
#solutions,#impact,#credibility,#testimonials,#faq{background-color:var(--ca-light)!important;color:var(--ca-heading)!important;isolation:isolate}
#solutions .section-heading-row,#impact .section-heading-row,#credibility .section-heading-row,#testimonials .section-heading-row,#faq .faq-grid{z-index:3;position:relative}
#solutions .section-intro,#impact .section-intro,#credibility .section-intro,#testimonials .section-intro,#faq .faq-aside{
  color:var(--ca-muted)!important;
  -webkit-text-fill-color:var(--ca-muted)!important;
  opacity:1!important;
  visibility:visible!important;
}
/* Match remaining major display headlines to the owning section's surface. */
#workflow .section-heading,#our-work .showcase-title,#how .section-heading,#contact .contact-heading{
  color:var(--ca-white)!important;-webkit-text-fill-color:var(--ca-white)!important;opacity:1!important;visibility:visible!important
}
#workflow .section-heading span,#how .section-heading span,#contact .contact-heading em{
  color:var(--ca-lilac)!important;-webkit-text-fill-color:var(--ca-lilac)!important;opacity:1!important
}
/* Direct DOM/text opacity animations on headings are intentionally disabled. Animate ornaments and cards instead. */
#solutionsHeading,#impactHeading,#credibilityHeading,#testimonialsHeading,#faq .section-heading{
  animation:none!important;transform:none!important;transition:none!important;
}
/* Ensure decorations sit below readable content */
.motion-section:before,.motion-section:after{z-index:0!important;pointer-events:none}
/* Large typography remains legible, with no clipping at small screens. */
#solutionsHeading,#impactHeading,#credibilityHeading,#testimonialsHeading,#faq .section-heading{
  font-family:var(--display),Arial,sans-serif;
  font-weight:700;
  line-height:1.10;
  letter-spacing:-.055em;
  text-wrap:pretty;
  overflow-wrap:break-word;
}
@media(max-width:720px){#solutionsHeading,#impactHeading,#credibilityHeading,#testimonialsHeading,#faq .section-heading{font-size:clamp(39px,9.8vw,64px)!important;line-height:1.08;letter-spacing:-.05em}}
@media(prefers-reduced-motion:reduce){#solutionsHeading,#impactHeading,#credibilityHeading,#testimonialsHeading,#faq .section-heading{transition:none!important;animation:none!important}}
