/* Start custom CSS *//* Construire durable — effets sans équivalent natif V4 (CSS pur, compatible tous navigateurs) */

/* Hero : léger zoom de la photo au survol (comme Qui sommes-nous et Notre raison d’être) */
.elementor [data-id="5b350155"] > .e-image-base { transition: transform 1.25s cubic-bezier(.2,.7,.2,1); }
.elementor [data-id="5b350155"]:hover > .e-image-base { transform: scale(1.02); }

/* Citation : « aujourd’hui » et « demain » soulignés en jaune */
.elementor .silk-dur-quote u { text-decoration-line: underline; text-decoration-color: #F9D500; text-decoration-thickness: 3px; text-underline-offset: 0.14em; text-decoration-skip-ink: none; }

/* Manifeste : 5 mots écrits tour à tour (largeur animée) + curseur jaune clignotant — 5 s par mot */
.elementor .silk-dur-typed { width: auto; font-size: clamp(32px, 3vw, 45px); }
.elementor .silk-dur-typed .silk-dur-word { animation: silkDurType 25s linear infinite; }
.elementor .silk-dur-typed .silk-dur-word:nth-child(2) { animation-delay: 5s; }
.elementor .silk-dur-typed .silk-dur-word:nth-child(3) { animation-delay: 10s; }
.elementor .silk-dur-typed .silk-dur-word:nth-child(4) { animation-delay: 15s; }
.elementor .silk-dur-typed .silk-dur-word:nth-child(5) { animation-delay: 20s; }
@keyframes silkDurType { 0% { max-width: 0; } 6% { max-width: 30em; } 17% { max-width: 30em; } 20% { max-width: 0; } 100% { max-width: 0; } }
.elementor .silk-dur-typed::after { content: ""; display: inline-block; align-self: center; width: 2px; height: 0.95em; margin-left: 5px; background: #F9D500; animation: silkDurCaret .8s steps(1, end) infinite; }
@keyframes silkDurCaret { 0%, 48% { opacity: 1; } 49%, 100% { opacity: 0; } }

/* Mobile : les mots longs passent à la ligne, apparition en fondu */
@media (max-width: 767px) {
  .elementor .silk-dur-typed { width: 100%; font-size: clamp(30px, 9vw, 42px); }
  .elementor .silk-dur-typed::after { display: none; }
  .elementor .silk-dur-typed .silk-dur-word { white-space: normal; max-width: none; max-height: 0; opacity: 0; animation-name: silkDurTypeMobile; }
}
@keyframes silkDurTypeMobile { 0% { max-height: 0; opacity: 0; } 4% { max-height: 4em; opacity: 1; } 17% { max-height: 4em; opacity: 1; } 20% { max-height: 0; opacity: 0; } 100% { max-height: 0; opacity: 0; } }

@media (prefers-reduced-motion: reduce) {
  .elementor .silk-dur-typed .silk-dur-word, .elementor .silk-dur-typed::after { animation: none; }
  .elementor .silk-dur-typed .silk-dur-word:first-child { max-width: none; max-height: none; opacity: 1; }
  .elementor [data-id="5b350155"] > .e-image-base { transition: none; }
}/* End custom CSS */