/* ===== Text Animations #5 (Codrops) — les lettres arrivent en désordre depuis des
   positions aléatoires, puis s'assemblent en place. Appliqué à tous les grands titres
   (classe .fx5). Sans dépendance : découpe + offsets aléatoires en JS, transition en CSS. */
.fx5{ }
/* un mot = un bloc insécable : le titre ne coupe jamais un mot au milieu */
.fx5 .fx5-word{ display:inline-block; white-space:nowrap; }
.fx5 .fx5-char{
  display:inline-block; white-space:pre;
  opacity:0;
  transform:translate(var(--tx,0), var(--ty,0));
  will-change:transform, opacity;
  transition:transform .95s cubic-bezier(.19,.7,.2,1) var(--d,0s),
             opacity .8s ease var(--d,0s);
}
.fx5.in .fx5-char{ opacity:1; transform:none; }

@media (prefers-reduced-motion:reduce){
  .fx5 .fx5-char{ opacity:1; transform:none; transition:none; }
}
