/* FORGE Tailwind Native global interaction layer. AI sections only opt in via safe data-* attributes. */
[data-animate] {
    --forge-animate-x: 0px;
    --forge-animate-y: 24px;
    --forge-animate-scale: 1;
    --forge-parallax-y: 0px;
    opacity: 0;
    transform: translate3d(var(--forge-animate-x), calc(var(--forge-animate-y) + var(--forge-parallax-y)), 0) scale(var(--forge-animate-scale));
    transition: opacity .7s ease, transform .7s ease;
    will-change: opacity, transform;
}

[data-animate="fade-in"] {
    --forge-animate-y: 0px;
}

[data-animate="scale-in"] {
    --forge-animate-y: 12px;
    --forge-animate-scale: .96;
}

[data-animate="slide-left"] {
    --forge-animate-x: 28px;
    --forge-animate-y: 0px;
}

[data-animate="slide-right"] {
    --forge-animate-x: -28px;
    --forge-animate-y: 0px;
}

[data-animate].forge-is-visible {
    --forge-animate-x: 0px;
    --forge-animate-y: 0px;
    --forge-animate-scale: 1;
    opacity: 1;
}

[data-parallax] {
    --forge-parallax-y: 0px;
    transform: translate3d(0, var(--forge-parallax-y), 0);
    will-change: transform;
}

[data-animate][data-parallax] {
    transform: translate3d(var(--forge-animate-x), calc(var(--forge-animate-y) + var(--forge-parallax-y)), 0) scale(var(--forge-animate-scale));
}

@media (prefers-reduced-motion: reduce) {
    [data-animate],
    [data-parallax] {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
        will-change: auto !important;
    }
}