/* Nowaxx - animations pour blocs Gutenberg (independant d'Elementor). */
:root{--nwx-ease:cubic-bezier(.625,.05,0,1);--nwx-dur:1s;--nwx-sticky-top:110px}

/* 1. Titre : apparition mot par mot */
.nwx-js .is-style-nwx-words .nwx-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.nwx-js .is-style-nwx-words .nwx-w>span{display:inline-block;transform:translateY(105%);transition:transform var(--nwx-dur) var(--nwx-ease);transition-delay:calc(var(--i,0)*60ms)}
.nwx-js .is-style-nwx-words.nwx-in .nwx-w>span{transform:none}

/* 2. Apparition en fondu vers le haut (tout bloc) */
.nwx-js .is-style-nwx-fade{opacity:0;transform:translateY(40px);transition:opacity var(--nwx-dur) var(--nwx-ease),transform var(--nwx-dur) var(--nwx-ease)}
.nwx-js .is-style-nwx-fade.nwx-in{opacity:1;transform:none}

/* 3. Groupe / colonnes : enfants en cascade */
.nwx-js .is-style-nwx-stagger>:not(.wp-block-group__inner-container),.nwx-js .is-style-nwx-stagger>.wp-block-group__inner-container>*{opacity:0;transform:translateY(40px);transition:opacity .9s var(--nwx-ease),transform .9s var(--nwx-ease);transition-delay:calc(var(--i,0)*120ms)}
.nwx-js .is-style-nwx-stagger.nwx-in>:not(.wp-block-group__inner-container),.nwx-js .is-style-nwx-stagger.nwx-in>.wp-block-group__inner-container>*{opacity:1;transform:none}

/* 4. Compteur */
.is-style-nwx-counter{font-variant-numeric:tabular-nums;font-weight:500;line-height:1;font-size:clamp(48px,7vw,96px);letter-spacing:-.03em;margin:0}

/* 5. Image : devoilement au defilement + zoom au survol */
.is-style-nwx-reveal{overflow:hidden}
.is-style-nwx-reveal img{transition:transform 1.2s var(--nwx-ease)}
.is-style-nwx-reveal:hover img{transform:scale(1.06)}
.nwx-js .is-style-nwx-reveal{clip-path:inset(100% 0 0 0);transition:clip-path 1.3s var(--nwx-ease)}
.nwx-js .is-style-nwx-reveal img{transform:scale(1.25)}
.nwx-js .is-style-nwx-reveal.nwx-in{clip-path:inset(0 0 0 0)}
.nwx-js .is-style-nwx-reveal.nwx-in img{transform:scale(1)}
.nwx-js .is-style-nwx-reveal.nwx-in:hover img{transform:scale(1.06)}

/* 6. Galerie : defilement infini de logos */
.wp-block-gallery.is-style-nwx-marquee{flex-wrap:nowrap!important;align-items:center;gap:48px!important;overflow:hidden}
.wp-block-gallery.is-style-nwx-marquee img{height:36px!important;width:auto!important;object-fit:contain}
.wp-block-gallery.is-style-nwx-marquee>figure.wp-block-image{width:auto!important;flex:0 0 auto!important}
.wp-block-gallery.is-style-nwx-marquee:has(>.nwx-track){display:block!important;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.is-style-nwx-marquee .nwx-track{display:flex;align-items:center;gap:72px;width:max-content;animation:nwx-marquee var(--nwx-speed,30s) linear infinite}
.is-style-nwx-marquee:hover .nwx-track{animation-play-state:paused}
.is-style-nwx-marquee .nwx-track>figure{margin:0!important;width:auto!important;flex:0 0 auto!important}
.is-style-nwx-marquee .nwx-track img{height:36px!important;width:auto!important;object-fit:contain;opacity:.7;transition:opacity .3s}
.is-style-nwx-marquee .nwx-track img:hover{opacity:1}
@keyframes nwx-marquee{to{transform:translateX(-50%)}}

/* 7. Groupe : cartes empilees au defilement (sticky) */
.is-style-nwx-stack>:not(.wp-block-group__inner-container),.is-style-nwx-stack>.wp-block-group__inner-container>*{position:sticky;top:calc(var(--nwx-sticky-top) + var(--i,0)*24px);margin-block-end:40px!important;transform-origin:top center}
.nwx-js .is-style-nwx-stack>:not(.wp-block-group__inner-container),.is-style-nwx-stack>.wp-block-group__inner-container>*{transition:transform .2s linear,filter .2s linear}

.nwx-stack-js .is-style-nwx-stack>:not(.wp-block-group__inner-container),.nwx-stack-js .is-style-nwx-stack>.wp-block-group__inner-container>*{position:relative;top:auto;transition:none;will-change:transform;z-index:1}\n.nwx-stack-js .is-style-nwx-stack>.wp-block-group__inner-container>*+*{z-index:2}\n\n.nwx-reveal-watch{display:block}
/* Les paragraphes suivent la couleur de texte choisie sur leur groupe (le theme l'ecrase sinon) */
.wp-block-group.has-text-color p:not(.has-text-color){color:inherit;opacity:.8}

/* Accessibilite : pas d'animation si l'utilisateur les desactive */
@media (prefers-reduced-motion:reduce){
 .nwx-js .is-style-nwx-words .nwx-w>span,.nwx-js .is-style-nwx-fade,.nwx-js .is-style-nwx-stagger>:not(.wp-block-group__inner-container),.nwx-js .is-style-nwx-stagger>.wp-block-group__inner-container>*{transform:none!important;opacity:1!important;transition:none!important}
 .nwx-js .is-style-nwx-reveal{clip-path:none!important}
 .is-style-nwx-marquee .nwx-track{animation:none}
}
