/* ==========================================================================
   NX REVEAL v5
   Lightweight • Pure CSS • IntersectionObserver Ready
   ========================================================================== */

:root{
    --nx-reveal-duration:.8s;
    --nx-reveal-ease:cubic-bezier(.16,1,.3,1);
    --nx-reveal-distance:24px;
    --nx-reveal-blur:8px;
}

/* --------------------------------------------------------------------------
   Parent Reveal
-------------------------------------------------------------------------- */

.nx-reveal-parent > *{
    opacity:0;
    transform:translateY(var(--nx-reveal-distance));
    filter:blur(var(--nx-reveal-blur));

    transition:
        opacity var(--nx-reveal-duration) var(--nx-reveal-ease),
        transform var(--nx-reveal-duration) var(--nx-reveal-ease),
        filter var(--nx-reveal-duration) var(--nx-reveal-ease);

    will-change:opacity,transform,filter;
}

/* Trigger */

.nx-reveal-parent.nx-activated > *{
    opacity:1;
    transform:translateY(0);
    filter:blur(0);
}

/* Stagger */

.nx-reveal-parent.nx-activated > *:nth-child(1){transition-delay:.06s;}
.nx-reveal-parent.nx-activated > *:nth-child(2){transition-delay:.12s;}
.nx-reveal-parent.nx-activated > *:nth-child(3){transition-delay:.18s;}
.nx-reveal-parent.nx-activated > *:nth-child(4){transition-delay:.24s;}
.nx-reveal-parent.nx-activated > *:nth-child(5){transition-delay:.30s;}
.nx-reveal-parent.nx-activated > *:nth-child(6){transition-delay:.36s;}


/* --------------------------------------------------------------------------
   Single Reveal
-------------------------------------------------------------------------- */

.nx-reveal{
    opacity:0;
    transform:translateY(var(--nx-reveal-distance));
    filter:blur(var(--nx-reveal-blur));

    transition:
        opacity var(--nx-reveal-duration) var(--nx-reveal-ease),
        transform var(--nx-reveal-duration) var(--nx-reveal-ease),
        filter var(--nx-reveal-duration) var(--nx-reveal-ease);

    will-change:opacity,transform,filter;
}

.nx-reveal.nx-activated{
    opacity:1;
    transform:translateY(0);
    filter:blur(0);
}

/* --------------------------------------------------------------------------
   Elementor Editor
-------------------------------------------------------------------------- */

body.elementor-editor-active .nx-reveal-parent > *,
body.elementor-editor-active .nx-reveal{
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
    transition:none !important;
}