/* Surlignage au rythme de l’accroche, sans modifier la largeur des mots. */
.hero-title strong {
  background-image:linear-gradient(100deg,#ffbe72b3,#ffda9ebf);
  background-position:0 91%;
  background-repeat:no-repeat;
  background-size:100% .28em;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
}
.hero-title[data-hero-state="waiting"] strong { background-size:0 .28em; }
.hero-title[data-hero-state="playing"] strong {
  animation:homeMarker 1.1s cubic-bezier(.16,1,.3,1) .85s both;
}
.hero-title[data-hero-state="playing"] strong + strong { animation-delay:1.12s; }
.hero-title[data-hero-state="playing"] .hero-title__fragment {
  animation-duration:.95s;
  animation-timing-function:cubic-bezier(.16,1,.3,1);
}
@keyframes homeMarker { from { background-size:0 .28em; } to { background-size:100% .28em; } }

/* Apparitions progressives ; les séquences métier des trois étapes restent actives. */
body:has(.hero-v3) [data-entrance="pending"] {
  opacity:.12;
  transform:translateY(24px);
}
body:has(.hero-v3) [data-entrance="shown"] {
  animation:homeEntrance .9s cubic-bezier(.16,1,.3,1) both;
}
body:has(.hero-v3) [data-entrance="immediate"] { opacity:1; transform:none; animation:none; }
@keyframes homeEntrance {
  from { opacity:.12; transform:translateY(24px); filter:blur(3px); }
  to { opacity:1; transform:none; filter:none; }
}
.hero-feats[data-audience-motion] .hero-item {
  transition:opacity .8s ease,transform .9s cubic-bezier(.16,1,.3,1);
}
.hero-feats[data-audience-motion] .hero-item[data-audience-state="pending"],
.hero-feats[data-audience-motion] .hero-item[data-audience-state="queued"] { transform:translateY(18px); }
#etapes[data-steps-motion] .step-card {
  transition:opacity .8s ease,transform .95s cubic-bezier(.16,1,.3,1),color .35s ease;
}
#etapes[data-steps-motion] .step-card[data-motion-state="pending"] { transform:translateY(22px); }
@media (prefers-reduced-motion:reduce) {
  .hero-title[data-hero-motion] strong { animation:none; background-size:100% .28em; }
  body:has(.hero-v3) [data-entrance] { opacity:1; transform:none; filter:none; animation:none; }
  .hero-feats[data-audience-motion] .hero-item[data-audience-state],
  #etapes[data-steps-motion] .step-card[data-motion-state] { transform:none; transition:none; }
}
