/* GSAP scroll-reveal — word blur, opacity & rotation on scroll */

[data-scroll-reveal] {
  margin: 0;
  opacity: 1;
  transform: none;
}

.scroll-reveal-text {
  display: inline;
  line-height: inherit;
  font-weight: inherit;
  font-size: inherit;
  letter-spacing: inherit;
}

[data-scroll-reveal] .word {
  display: inline-block;
  will-change: opacity, filter;
}

/* Preserve layout for large display headings */
.stats-headline[data-scroll-reveal] .scroll-reveal-text {
  font-size: inherit;
  font-weight: inherit;
}

.section-title-large [data-scroll-reveal] .scroll-reveal-text {
  font-size: inherit;
  font-weight: inherit;
}

.hero-line[data-scroll-reveal] .scroll-reveal-text {
  font-size: inherit;
  font-weight: inherit;
}

.hero-title[data-scroll-reveal] .scroll-reveal-text,
.stats-heading[data-scroll-reveal] .scroll-reveal-text,
.portfolio-kicker[data-scroll-reveal] .scroll-reveal-text,
.about-heading[data-scroll-reveal] .scroll-reveal-text,
.contact-section > h2[data-scroll-reveal] .scroll-reveal-text,
.section-heading[data-scroll-reveal] .scroll-reveal-text {
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}

.section-sub[data-scroll-reveal],
.contact-section > p[data-scroll-reveal],
.about-content p[data-scroll-reveal] {
  font-size: clamp(1rem, 2vw, 1.15rem);
  font-weight: 500;
  line-height: 1.6;
  color: var(--gray);
}

.service-showcase-header h3[data-scroll-reveal] .scroll-reveal-text {
  font-size: inherit;
  font-weight: inherit;
}

.service-showcase-purple .service-showcase-header p[data-scroll-reveal],
.service-showcase-orange .service-showcase-header p[data-scroll-reveal] {
  color: rgba(255, 255, 255, 0.72);
}

@media (prefers-reduced-motion: reduce) {
  [data-scroll-reveal] .word {
    opacity: 1 !important;
    filter: none !important;
  }

  [data-scroll-reveal] {
    transform: none !important;
  }
}
