/* ============================================================
   MOTRI — Sistema de Animações de Scroll Profissional
   Uso: adicione data-reveal="up|down|left|right|scale|clip|blur" no elemento
        data-reveal-delay="0.2" para stagger (segundos)
   ============================================================ */

/* Base — tudo invisível até revelar */
[data-reveal]{
    opacity:0;
    will-change:transform,opacity,filter;
    transition:
        opacity .9s cubic-bezier(.16,.84,.44,1),
        transform .9s cubic-bezier(.16,.84,.44,1),
        filter .9s cubic-bezier(.16,.84,.44,1),
        clip-path 1s cubic-bezier(.16,.84,.44,1);
}

/* Estados iniciais por tipo */
[data-reveal="up"]{transform:translateY(70px);}
[data-reveal="down"]{transform:translateY(-70px);}
[data-reveal="left"]{transform:translateX(-70px);}
[data-reveal="right"]{transform:translateX(70px);}
[data-reveal="scale"]{transform:scale(.82);}
[data-reveal="blur"]{filter:blur(18px);transform:translateY(30px);}
[data-reveal="clip"]{clip-path:inset(0 100% 0 0);}     /* revela da esquerda p/ direita */
[data-reveal="clip-up"]{clip-path:inset(100% 0 0 0);}  /* revela de baixo p/ cima */
[data-reveal="rotate"]{transform:rotate(-6deg) translateY(40px) scale(.92);}

/* Estado final — revelado */
[data-reveal].is-revealed{
    opacity:1;
    transform:none;
    filter:none;
    clip-path:inset(0 0 0 0);
}

/* Stagger via delay inline */
[data-reveal-delay="0.05"]{transition-delay:.05s;}
[data-reveal-delay="0.1"]{transition-delay:.1s;}
[data-reveal-delay="0.15"]{transition-delay:.15s;}
[data-reveal-delay="0.2"]{transition-delay:.2s;}
[data-reveal-delay="0.25"]{transition-delay:.25s;}
[data-reveal-delay="0.3"]{transition-delay:.3s;}
[data-reveal-delay="0.4"]{transition-delay:.4s;}
[data-reveal-delay="0.5"]{transition-delay:.5s;}
[data-reveal-delay="0.6"]{transition-delay:.6s;}
[data-reveal-delay="0.7"]{transition-delay:.7s;}
[data-reveal-delay="0.8"]{transition-delay:.8s;}

/* Linha decorativa que cresce ao rolar */
.motri-line-grow{
    transform-origin:left center;
    transform:scaleX(0);
    transition:transform 1.2s cubic-bezier(.16,.84,.44,1) .15s;
}
.motri-line-grow.is-revealed{transform:scaleX(1);}

/* Parallax leve — aplicado via JS adiciona data-parallax-speed */
[data-parallax]{will-change:transform;}

/* Acessibilidade: respeitar prefers-reduced-motion */
@media (prefers-reduced-motion: reduce){
    [data-reveal]{opacity:1 !important;transform:none !important;filter:none !important;clip-path:none !important;transition:none !important;}
    [data-reveal-delay]{transition-delay:0s !important;}
    .motri-line-grow{transform:scaleX(1) !important;}
}

/* Loader sutil para o topo da página (evita flash de conteúdo animado) */
.motri-reveal-ready [data-reveal]{transition-duration:0s;}
.motri-reveal-ready.motri-reveal-go [data-reveal]{transition-duration:.9s;}
