@media (prefers-reduced-motion: no-preference) {
    .scroll-effects-ready [data-scroll-effect] .scroll-effect-target {
        opacity: var(--scroll-effect-initial-opacity, 0);
        transition: opacity var(--scroll-effect-duration, 0.55s) ease, transform var(--scroll-effect-duration, 0.55s) ease;
        will-change: opacity, transform;
    }

    .scroll-effects-ready [data-scroll-effect="reveal-up"] .scroll-effect-target,
    .scroll-effects-ready [data-scroll-effect="stagger-up"] .scroll-effect-target {
        transform: translate3d(0, var(--scroll-effect-shift-up, 28px), 0);
    }

    .scroll-effects-ready [data-scroll-effect="reveal-left"] .scroll-effect-target,
    .scroll-effects-ready [data-scroll-effect="stagger-left"] .scroll-effect-target {
        transform: translate3d(var(--scroll-effect-shift-large-negative, -120px), 0, 0);
    }

    .scroll-effects-ready [data-scroll-effect="reveal-right"] .scroll-effect-target {
        transform: translate3d(var(--scroll-effect-shift-small, 32px), 0, 0);
    }

    .scroll-effects-ready [data-scroll-effect="zoom-in"] .scroll-effect-target,
    .scroll-effects-ready [data-scroll-effect="stagger-zoom"] .scroll-effect-target {
        transform: scale(var(--scroll-effect-zoom, 0.94));
    }

    .scroll-effects-ready [data-scroll-effect="split-media"] .scroll-effect-target:nth-child(odd),
    .scroll-effects-ready [data-scroll-effect="map-reveal"] .scroll-effect-target:nth-child(odd) {
        transform: translate3d(var(--scroll-effect-shift-small-negative, -32px), 0, 0);
    }

    .scroll-effects-ready [data-scroll-effect="split-media"] .scroll-effect-target:nth-child(even),
    .scroll-effects-ready [data-scroll-effect="map-reveal"] .scroll-effect-target:nth-child(even) {
        transform: translate3d(var(--scroll-effect-shift-small, 32px), 0, 0);
    }

    .scroll-effects-ready [data-scroll-effect="count-up"] .scroll-effect-target {
        transform: translate3d(0, var(--scroll-effect-shift-count, 20px), 0) scale(var(--scroll-effect-count-zoom, 0.96));
    }

    .scroll-effects-ready [data-scroll-effect="table-reveal"] .scroll-effect-target {
        transform: translate3d(0, var(--scroll-effect-shift-count, 20px), 0);
    }

    .scroll-effects-ready [data-scroll-effect] .scroll-effect-target.scroll-effect-visible {
        opacity: 1;
        transform: none;
        will-change: auto;
    }

}

@media (max-width: 767px), (prefers-reduced-motion: reduce) {
    [data-scroll-effect] .scroll-effect-target {
        opacity: 1;
        transform: none;
        transition: none;
    }
}
