.elementor-kit-6{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Cache le curseur par défaut sur les conteneurs cibles */
.video-hover-zone {
  cursor: none !important;
}

/* Le curseur custom */
#custom-cursor {
  position: fixed;
  top: 0;
  left: 0;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: rgba(100, 100, 100, 0.5);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  transform: translate(-50%, -50%) scale(0);
  transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.2s ease;
  opacity: 0;
  z-index: 99999;
  font-family: sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #fff;
  text-align: center;
  line-height: 1.3;
}

#custom-cursor.visible {
  transform: translate(-50%, -50%) scale(1);
  opacity: 1;
}

/* Conteneur grille en position relative */
.timeline-grid {
  position: relative;
}

/* Ligne grise de fond */
.timeline-grid::before {
  content: '';
  position: absolute;
  top: 35px; /* moitié de la hauteur de tes cercles */
  left: 12%;
  right: 12%;
  height: 2px;
  background: #444444;
  z-index: 0;
}

/* Ligne blanche de progression */
.timeline-grid::after {
  content: '';
  position: absolute;
  top: 35px;
  left: 12%;
  width: 0%;
  height: 2px;
  background: #ffffff;
  z-index: 1;
  transition: width 1.2s linear;
}

/* Icônes au-dessus des lignes */
.timeline-grid .elementor-grid-item {
  position: relative;
  z-index: 2;
}

.ligne-scroll {
  width: 0%;
  height: 2px;
  background: #fff;
  transition: width 1.2s ease;
  margin: 0 auto;
}

.ligne-scroll.visible {
  width: 100%;
}

<script>
document.addEventListener("DOMContentLoaded", function () {
  const titres = document.querySelectorAll(".cool-split h2");

  const observer = new IntersectionObserver(
    function (entries) {
      entries.forEach(function (entry) {
        if (entry.isIntersecting) {
          entry.target.classList.add("is-visible");
        } else {
          entry.target.classList.remove("is-visible");
        }
      });
    },
    {
      threshold: 0.3,
    }
  );

  titres.forEach(function (titre) {
    observer.observe(titre);
  });
});
</script>/* End custom CSS */