/* ═══════════════════════════════════════════════════════════════
   Page « Notre entreprise » — survols et états interactifs
   ═══════════════════════════════════════════════════════════════ */

/* Haut de page : bouton secondaire */
.entreprise-btn-ghost:hover { background: rgba(255,255,255,.1) !important; border-color: #fff !important; }

/* ── Histoire : frise ───────────────────────────────────────── */
html:not(.js) .entreprise-histoire__nav { display: none !important; }
.entreprise-histoire [data-hist]:disabled { opacity: .3; cursor: default !important; }

/* Jalons hors de la fenêtre de 4 (masqués par le script) */
.js .entreprise-jalon.is-hidden { display: none; }

/* Jalon sélectionné : point rouge, titre foncé */
.entreprise-jalon.is-open .entreprise-jalon__dot { background: #e30713 !important; box-shadow: 0 0 0 1px #e30713 !important; }
.entreprise-jalon.is-open .entreprise-jalon__titre { color: #141414 !important; }
.entreprise-jalon:focus-visible { outline: 2px solid #e30713; outline-offset: 4px; }

/* Texte détaillé : un seul affiché quand le script est actif */
.js .entreprise-jalon-detail:not(.is-active) { display: none !important; }
.js .entreprise-jalon-detail.is-active { animation: fu .5s cubic-bezier(.16,1,.3,1); }

/* ── Bandeau photo : léger zoom arrière à l'apparition ───────── */
.js .entreprise-band img { transform: scale(1.08); }
.js .entreprise-band.is-visible img { transform: scale(1); }

/* ── Chiffres : apparition plus courte que les autres blocs ──── */
.js .entreprise-stat.reveal {
  transform: translateY(20px);
  transition: opacity .7s cubic-bezier(.16,1,.3,1) var(--reveal-delay, 0s), transform .7s cubic-bezier(.16,1,.3,1) var(--reveal-delay, 0s);
}
.js .entreprise-stat.reveal.is-visible { transform: translateY(0); }

/* ── Taille humaine : points forts empilés sur mobile ────────── */
@media (max-width: 860px) {
  .entreprise-fidelite { border-left: none !important; padding-left: 0 !important; padding-bottom: 8px !important; }
  .entreprise-jalon-detail { padding: 24px !important; gap: 24px !important; }
}

/* ─────────────────────────────────────────────────────
   Frise (ordinateur) : bande de dates qui glisse vers la gauche / la droite
   --hist-start = première date visible, --hist-size = nombre de dates visibles
   ───────────────────────────────────────────────────── */
.entreprise-histoire.is-slider .entreprise-histoire__viewport { overflow: hidden; overflow-x: clip; overflow-y: visible; }
.entreprise-histoire.is-slider .entreprise-histoire__track {
  display: flex !important;
  flex-wrap: nowrap;
  gap: 24px !important;
  transform: translateX(calc(var(--hist-start, 0) * -1 * (100% + 24px) / var(--hist-size, 4)));
  transition: transform .7s cubic-bezier(.65,0,.35,1);
}
.entreprise-histoire.is-slider .entreprise-jalon {
  flex: 0 0 calc((100% - (var(--hist-size, 4) - 1) * 24px) / var(--hist-size, 4));
  transition: opacity .5s ease;
}
.entreprise-histoire.is-slider .entreprise-jalon.is-outside { opacity: 0; pointer-events: none; }

/* Texte détaillé : arrive par la droite (on avance) ou par la gauche (on recule) */
@keyframes hist-from-right { from { opacity: 0; transform: translateX(48px); } to { opacity: 1; transform: none; } }
@keyframes hist-from-left  { from { opacity: 0; transform: translateX(-48px); } to { opacity: 1; transform: none; } }
.js .entreprise-jalon-detail.is-active.from-right { animation: hist-from-right .6s cubic-bezier(.16,1,.3,1); }
.js .entreprise-jalon-detail.is-active.from-left  { animation: hist-from-left .6s cubic-bezier(.16,1,.3,1); }

@media (prefers-reduced-motion: reduce) {
  .entreprise-histoire.is-slider .entreprise-histoire__track,
  .entreprise-histoire.is-slider .entreprise-jalon { transition: none; }
  .js .entreprise-jalon-detail.is-active.from-right,
  .js .entreprise-jalon-detail.is-active.from-left { animation: none; }
}

/* Toutes les dates de la frise alignées en haut (un bouton centre son contenu par défaut) */
.entreprise-histoire__track { align-items: start !important; }
.entreprise-jalon { align-self: flex-start; }

/* Nos valeurs : textes lisibles sans gonfler la section */
.entreprise-valeurs .entreprise-valeur__texte { font-size: 17px !important; line-height: 1.65 !important; }
@media (max-width: 860px) {
  .entreprise-valeurs .reveal[style*="sticky"] { position: static !important; }
  .entreprise-valeurs .entreprise-valeur__texte { font-size: 16px !important; }
}
