/**
 * GSAP Animations Styles
 *
 * Base styles for GSAP class-based animations.
 * Initial hidden states prevent FOUC before gsap-animations.js runs.
 * JS uses fromTo() with explicit end values so these rules do not break tweens.
 */

/* FOUC prevention — hide until GSAP initializes (DOMContentLoaded) */
.gsap-slide-up,
.gsap-fade-in,
.gsap-slide-left,
.gsap-slide-right {
    opacity: 0;
}

.gsap-grow-text {
    transform: scaleY(0);
    transform-origin: bottom;
}

/* Split text elements */
.gsap-char,
.gsap-word,
.gsap-line {
    display: inline-block;
    will-change: transform, opacity;
}

/* Ensure proper spacing for split words */
.gsap-word {
    white-space: nowrap;
}

/* Performance optimization for animated elements */
[class*="gsap-"] {
    backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
}