/* GSAP Block Animator — Frontend styles */

/*
 * Elements with scroll or load animations start invisible
 * to prevent flash of content before GSAP sets the initial state.
 * GSAP's gsap.set() / gsap.fromTo() will override these.
 */
[data-gsap-enabled="true"][data-gsap-trigger="scroll"] {
    /* visibility: hidden is safer than opacity:0 to avoid layout shifts */
    /* GSAP will handle the initial opacity via fromVars */
}

/*
 * Hover/click elements keep their natural state — GSAP sets it via gsap.set()
 * For hover, cursor is set programmatically on click targets.
 */
[data-gsap-enabled="true"][data-gsap-trigger="click"] {
    cursor: pointer;
}

/* Respect reduced motion preferences */
@media (prefers-reduced-motion: reduce) {
    [data-gsap-enabled="true"] {
        animation: none !important;
        transition: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}
