/* RM SP Animations — styles d'appui (chargés seulement sans prefers-reduced-motion) */

/* Le H1 attend son animation (filet de sécurité : la classe saute après 2,5 s si le JS ne vient pas) */
html.sp-anim h1 { visibility: hidden; }

/* Surlignage tracé de gauche à droite */
.sp-trace {
  background-color: transparent !important;
  background-image: linear-gradient(var(--sp-trace-c), var(--sp-trace-c));
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 0% 100%;
}

/* Mots et lettres découpés */
.sp-mot, .sp-lettre { display: inline-block; }

/* Chiffre qui compte : largeur stable */
.sp-compteur { font-variant-numeric: tabular-nums; }

/* Page Métiers : pastille du métier en cours */
.sp-met-ancre.is-active,
.sp-met-ancre.is-active:hover {
  color: var(--sp-blanc);
  background-color: var(--sp-encre);
  border: 1.5px solid var(--sp-encre);
}
.sp-met-ancre .sp-dot { transition: box-shadow .2s; }
.sp-met-ancre.is-active .sp-dot { box-shadow: 0 0 0 2px var(--sp-blanc); }
.sp-met-ancre { transition: border-color .2s, background-color .2s, color .2s; }

/* Page Métiers : sommaire collant sous le header */
.sp-sommaire {
  position: fixed;
  left: 0;
  right: 0;
  top: 76px;
  z-index: 90;
  padding: 10px var(--sp-marge);
  background-color: var(--sp-blanc);
  border-bottom: 1px solid var(--sp-filet-doux);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: opacity .3s var(--sp-ease, ease), transform .3s var(--sp-ease, ease), visibility 0s linear .3s;
}
.sp-sommaire.is-visible {
  opacity: 1;
  visibility: visible;
  transform: none;
  transition: opacity .3s var(--sp-ease, ease), transform .3s var(--sp-ease, ease), visibility 0s;
}
.sp-sommaire .sp-sommaire__liste {
  flex-wrap: nowrap;
  overflow-x: auto;
  scrollbar-width: none;
  margin: 0;
  padding: 0;
}
.sp-sommaire .sp-sommaire__liste::-webkit-scrollbar { display: none; }
@media (max-width: 767px) {
  .sp-sommaire { padding: 8px 0; }
  .sp-sommaire .sp-sommaire__liste { padding: 0 var(--sp-marge); }
}
/* Menu ouvert : le sommaire s'efface */
html.sp-scroll-lock .sp-sommaire { visibility: hidden; opacity: 0; }

/* Accordéon qui se referme : le + revient dès le début du glissement */
details.is-fermeture[open] .sp-plus__ico { transform: none; }

/* Lenis : l'iframe ne capte pas la molette pendant le défilement */
.lenis.lenis-scrolling iframe { pointer-events: none; }
