.u-section-1 .u-sheet-1 {
  min-height: 606px;
}

.u-section-1 .u-image-1 {
  width: 450px;
  height: 220px;
  --animation-custom_in-translate_x: 0px;
  --animation-custom_in-translate_y: -300px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
  margin: 179px auto 60px;
}

@media (max-width: 575px) {
  .u-section-1 .u-sheet-1 {
    min-height: 552px;
  }

  .u-section-1 .u-image-1 {
    width: 340px;
    height: 166px;
  }
} .u-section-2 {
  background-image: none;
}

.u-section-2 .u-sheet-1 {
  min-height: 80px;
}

.u-section-2 .u-image-1 {
  width: 40px;
  height: 38px;
  --animation-custom_in-translate_x: 0px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 180deg;
  --animation-custom_in-scale: 1;
  margin: 21px auto 0 510px;
}

.u-section-2 .u-text-1 {
  font-size: 1.25rem;
  letter-spacing: 20px;
  --animation-custom_in-translate_x: 0px;
  --animation-custom_in-translate_y: 300px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
  margin: -33px 0 22px;
}

@media (max-width: 1199px) {
  .u-section-2 .u-image-1 {
    margin-left: 411px;
  }
}

@media (max-width: 991px) {
  .u-section-2 .u-image-1 {
    margin-left: 298px;
  }
}

@media (max-width: 767px) {
  .u-section-2 .u-image-1 {
    margin-left: 207px;
  }
}

@media (max-width: 575px) {
  .u-section-2 .u-image-1 {
    margin-left: 109px;
  }
} .u-section-3 {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.u-section-3 .u-sheet-1 {
  min-height: 26px;
}

.u-section-3 .u-custom-html-1 {
  margin-bottom: 0;
  margin-top: 0;
}

@media (max-width: 1199px) {
   .u-section-3 {
    --color-var: #64c9c3;
  }
}.flash {
}
.InfoFond {
}
.INFO-texte.INFO-lien {
}
@keyframes floating-pause {
  0%, 50%, 100% { 
    transform: translateY(0px); 
  }
  25% { 
    transform: translateY(-10px); 
  }
}
.INFO-texte {
  /* On garde le ease-in-out pour la douceur */
  animation: floating-pause 4s ease-in-out infinite;
}
/* --- Définition de l'animation Rebond --- */
@keyframes slideInLeftBounce {
  0% {
    opacity: 0;
    /* Départ loin à gauche et invisible */
    transform: translateX(-150px); 
  }
  60% {
    opacity: 1;
    /* Dépasse légèrement la position finale (Rebond 1) */
    transform: translateX(15px); 
  }
  80% {
    /* Revient un peu en arrière (Rebond 2) */
    transform: translateX(-5px); 
  }
  100% {
    /* Arrivée finale stable à l'opacité 100% */
    opacity: 1;
    transform: translateX(0);
  }
}
/* 1. Définition de l'animation de rebond par en haut */
@keyframes slideInBounce {
  0% {
    opacity: 0;
    transform: translatey(-400px);
  }
  60% {
    opacity: 1;
    transform: translatey(20px); /* Rebond */
  }
  80% {
    transform: translatey(-5px); /* Contre-rebond */
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
/* 2. La classe magique qui détecte l'entrée à l'écran */
.reveal-on-scroll {
  /* On prépare l'état invisible */
  opacity: 0;
  
  /* On lie l'animation au défilement de la vue */
  view-timeline-name: --revealing;
  view-timeline-axis: block;
  /* On déclenche l'animation quand l'élément entre dans les 20% du bas de l'écran */
  animation: slideInBounce both;
  animation-timeline: --revealing;
  animation-range: entry 10% cover 30%; 
}
/* 3. Sécurité : Si le navigateur est trop vieux ou mode "Réduire animations" */
@media (prefers-reduced-motion: reduce) {
  .reveal-on-scroll {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}