/* État par défaut des blocs de texte */
.effect-text {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.4s ease;
}

/* Bloc texte actif */
.effect-text.effect-text-active,
.effect-text.is-active {
    opacity: 1;
    pointer-events: auto;
}

/* On peut garder ta classe inactive si tu l’utilises déjà */
.effect-text.effect-text-inactive,
.effect-text.is-inactive {
    opacity: 0;
    pointer-events: none;
}

/* Animations internes */
.effect-text .elementor-widget-heading,
.effect-text .elementor-widget-divider,
.effect-text .elementor-widget-text-editor {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.4s ease, transform 0.4s ease;
}
.effect-text .elementor-widget-text-editor {
  max-width: 360px!important;
}

/* Quand le bloc devient actif, on déclenche les animations internes */
.effect-text.is-active .elementor-widget-heading:nth-of-type(1) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.05s;
}

.effect-text.is-active .elementor-widget-heading:nth-of-type(2) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.15s;
}

/* Divider */
.effect-text .elementor-widget-divider .elementor-divider-separator {
    display: block;
    width: 10%;              /* état initial */
    transition: width 0.5s ease;
    transform-origin: left center;
  	max-width: 360px;
}

.effect-text.is-active .elementor-widget-divider .elementor-divider-separator {
    width: 100%;             /* quand la section devient active */
    transition-delay: 0.25s;
}

/* Texte qui monte */
.effect-text.is-active .elementor-widget-text-editor {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.35s;
}
.effect-text.is-active .elementor-widget-divider {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.20s;
}

.effect-section{
      align-items: start;
}

.effect-section img{
  max-height: 100vh;
}