/* NextLevel Dev — lettres en « hyper-vitesse » : elles jaillissent d'un point de fuite comme une nuée d'étoiles,
   étirées en traînées, puis se posent à leur place. La vitesse de défilement accentue l'effet.
   Actif uniquement si html.lt-on (pas de reduced-motion). */
html.lt-on, html.lt-on body { overflow-x: clip; }
.lt-on .lt-w { display: inline-block; white-space: nowrap; }
.lt-on .lt {
  display: inline-block;
  pointer-events: none;
  opacity: 0;
  color: var(--lc, inherit);
  text-shadow: 0 0 .55em var(--lc, transparent);
  transform: translate3d(var(--tx, 0px), var(--ty, 0px), 0) rotate(var(--sa, 0deg)) scale(var(--sx, .1), var(--sy, .1)) rotate(calc(var(--sa, 0deg) * -1));
}
.lt-on .lt-warm .lt { will-change: transform, opacity; }
.lt-on .lt-in .lt {
  opacity: 1;
  color: inherit;
  text-shadow: 0 0 0 transparent;
  transform: translate3d(0, 0, 0) rotate(var(--sa, 0deg)) scale(1, 1) rotate(calc(var(--sa, 0deg) * -1));
  transition: transform var(--dur, 1.3s) cubic-bezier(.07,.78,.1,1) var(--ld, 0s),
              opacity .3s ease-out var(--ld, 0s),
              text-shadow 1.2s ease-out var(--ld, 0s),
              color 1.5s ease-out var(--ld, 0s);
}
/* dégradé aux couleurs du site : titre d'accueil (.grad) + dernier mot des titres (.lt-acc) */
.lt-on .grad .lt, .lt-on .lt-acc {
  background: linear-gradient(100deg, var(--chrome) 10%, var(--violet-2) 55%, var(--cyan) 90%);
  background-size: calc(var(--gn, 2) * 100%) 100%;
  background-position: calc(var(--gi, 0) / (var(--gn, 2) - 1) * 100%) 0;
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.lt-on .lt-in .grad .lt, .lt-on .lt-in .lt.lt-acc { color: transparent; }
