*{
  margin: 0;
  padding: 0;
  font-family: 'poppins',sans-serif;
  box-sizing: border-box;
  text-align: justify;
  user-select: none;
}

html{
  transition: 0.5s;
  scroll-behavior: smooth;
}
.logo{
  position: fixed;
  width: 100px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}


/* Style de la partie supérieure (UpperPart) de la page */
.UpperPart {
    height: 100%; /* Hauteur de 100% de la vue */
    width: 100%; /* Largeur de 100% de la vue */
    margin: 0; /* Marge extérieure de 0 */
    padding: 0; /* Rembourrage de 0 */
    z-index: 3; /* Ordre d'empilement 3 (en avant-plan) */
    background-color: white; /* Couleur de fond blanche */
  }
  
  /* Style de la partie image (UpperPart-Img) de la partie supérieure */
  .UpperPart-Img {
    padding: 50px; /* Rembourrage de 50px */
  }
  
  /* Style de l'image à l'intérieur de la partie image */
  .UpperPart-Img img {
    height: 100%; /* Hauteur de 100% de son conteneur */
    width: 100%; /* Largeur de 100% de son conteneur */
    border-radius: 20px;
  }
  
  /* Style du texte de la partie supérieure (UpperPart-text) */
  .UpperPart-text {
    height: auto; /* Hauteur automatique (en fonction du contenu) */
    padding: 50px 50px 50px 0px; /* Rembourrage de 50px en haut, 50px à droite, 50px en bas, 0px à gauche */
    text-align: left; /* Texte aligné à gauche */
    line-height: 2; /* Hauteur de ligne de 2 (pour l'espacement des lignes) */
  }
  
  /* Style du titre de la partie supérieure (UpperPart-Title) */
  .UpperPart-Title {
    color: #292929; /* Couleur de police #292929 */
    padding: 20px; /* Rembourrage de 20px */
    margin-left: 50px;
    font-size: 30px; /* Taille de police de 30px */
    font-weight: 600; /* Gras (font-weight) 600 (épaisseur de police) */
  }
  
  /* Style du sous-titre de la partie supérieure (UpperPart-SubTitle) */
  .UpperPart-SubTitle {
    color: #2F2F2F; /* Couleur de police #2F2F2F */
    padding: 20px; /* Rembourrage de 20px */
    font-weight: 500; /* Gras (font-weight) 500 (épaisseur de police) */
  }
  
  /* Style de la description de la partie supérieure (UpperPart-Description) */
  .UpperPart-Description {
    font-size: 20px; /* Taille de police de 20px */
    color: #7D7D7D; /* Couleur de police #7D7D7D */
    padding: 20px; /* Rembourrage de 20px */
  }
  
  /* Styles des lignes horizontales et verticales supérieures */
  /* Il s'agit de séparateurs visuels dans la partie supérieure */
  
  /* Style de la ligne de connexion (connection-line) */
  .connection-line {
    height: 30vh; /* Hauteur de 30% de la vue */
    width: 50%; /* Largeur de 50% de son conteneur */
    background-color: white; /* Couleur de fond blanche */
    margin-top: -10vh; /* Marge supérieure de -10% de la vue (décalage vers le haut) */
    margin-left: 25%; /* Marge gauche de 25% de son conteneur */
    margin-right: 25%; /* Marge droite de 25% de son conteneur */
    border-right: 1.2px solid #0E3B85; /* Bordure droite de 1.2px solide avec couleur #0E3B85 */
    z-index: 3; /* Ordre d'empilement 3 (en avant-plan) */
  }
  
  /* Style des lignes horizontales (horizontal-lines) */
  .horizontal-lines {
    display: block; /* Affichage en tant que bloc */
    width: 0px; /* Largeur de 0px (invisible au départ) */
    height: 1.2px; /* Hauteur de 1.2px */
    margin-top: 30vh; /* Marge supérieure de 30% de la vue */
    position: absolute; /* Position absolue par rapport à son premier ancêtre positionné */
    background-color: #0E3B85; /* Couleur de fond #0E3B85 */
    animation-name: animated-line; /* Nom de l'animation (pour l'effet) */
    -webkit-animation-name: animated-line;
    -ms-animation-name: animated-line;
    -moz-animation-name: animated-line;
    animation-duration: 3s; /* Durée de l'animation de 3 secondes */
    -webkit-animation-duration: 3s;
    -ms-animation-duration: 3s;
    -moz-animation-duration: 3s;
    animation-delay: 1s; /* Délai de 1 seconde avant le démarrage de l'animation */
    -ms-animation-delay: 1s;
    -webkit-animation-delay: 1s;
    -moz-animation-delay: 1s;
    animation-fill-mode: forwards; /* L'animation conserve l'état final */
    -webkit-animation-fill-mode: forwards;
    -ms-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-iteration-count: 1; /* L'animation s'exécute une seule fois */
    -webkit-animation-iteration-count: 1;
    -ms-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
  }
  
  /* Styles des différentes lignes (line-left, line-right, line-center) */
  /* Ces styles sont utilisés pour positionner les lignes horizontales */
  
  #line-left {
    left: 50%; /* Position à gauche de 50% de son conteneur */
  }
  
  #line-right {
    right: 25%; /* Position à droite de 25% de son conteneur */
  }
  
  #line-center {
    margin: auto; /* Marge automatique (centré horizontalement) */
  }
  /* Style de la liste chronologique (timeline) */
.timeline {
    list-style: none; /* Pas de puces (liste sans style) */
    padding-top: 30vh; /* Rembourrage supérieur de 30% de la vue */
    position: relative; /* Position relative par rapport à son conteneur parent */
    z-index: -3; /* Ordre d'empilement -3 (en arrière-plan) */
  }
  
  /* Style de la ligne verticale à gauche de la chronologie (timeline:before) */
  .timeline:before {
    top: 0; /* En haut de son conteneur */
    bottom: 0; /* En bas de son conteneur */
    position: fixed; /* Position fixe par rapport à la fenêtre du navigateur */
    content: " "; /* Contenu vide (pour la création de la ligne) */
    width: 1.5px; /* Largeur de 1.5px */
    background-color: lightblue; /* Couleur de fond lightblue */
    border: 1.25px solid lightblue; /* Bordure de 1.25px solide avec couleur lightblue */
    left: 50%; /* Position à 50% de la largeur */
    height: 100%; /* Hauteur de 100% de son conteneur */
    z-index: -5; /* Ordre d'empilement -5 (en arrière-plan) */
  }
  
  /* Style de la ligne verticale à droite de la chronologie (timeline:after) */
  .timeline:after {
    top: 0; /* En haut de son conteneur */
    bottom: 0; /* En bas de son conteneur */
    position: fixed; /* Position fixe par rapport à la fenêtre du navigateur */
    content: " "; /* Contenu vide (pour la création de la ligne) */
    width: 1.5px; /* Largeur de 1.5px */
    background-color: #0E3B85; /* Couleur de fond #0E3B85 */
    left: 50%; /* Position à 50% de la largeur */
    border: 1.25px solid #0E3B85; /* Bordure de 1.25px solide avec couleur #0E3B85 */
    height: 50vh; /* Hauteur de 50% de la vue */
    z-index: -5; /* Ordre d'empilement -5 (en arrière-plan) */
  }
  
  /* Style des éléments de la chronologie (timeline>li) */
  .timeline>li {
    position: relative; /* Position relative par rapport à son conteneur parent */
  }
  
  /* Styles pour les pseudos-éléments :before et :after des éléments de la chronologie */
  .timeline>li:before, .timeline>li:after {
    content: " "; /* Contenu vide (pour la création de pseudos-éléments) */
    display: table; /* Affichage en tant que table (pour le centrage vertical) */
  }
  
  .timeline>li:after {
    clear: both; /* Efface tous les éléments flottants précédents (réinitialisation du flottement) */
  }
  
  /* Style des panneaux de la chronologie (timeline-panel) */
  .timeline-panel {
    width: 35%; /* Largeur de 35% de son conteneur */
    height: 500px; /* Hauteur de 500px */
    float: left; /* Flottement à gauche (alignement côte à côte) */
    padding: 50px; /* Rembourrage de 50px */
    position: relative; /* Position relative par rapport à son conteneur parent */
    text-align: justify; /* Texte justifié */
    color: #000000; /* Couleur de police #000000 */
  }
  
  /* Style du pseudo-élément :before des panneaux de la chronologie */
  .timeline-panel:before {
    position: absolute; /* Position absolue par rapport à son conteneur parent */
    top: 29%; /* Position en haut de 29% de la hauteur du panneau */
    right: -6vw; /* Position à 6% de la largeur du panneau (décalage vers la droite) */
    display: inline-block; /* Affichage en ligne (pour la forme ronde) */
    width: 20px; /* Largeur de 20px */
    height: 20px; /* Hauteur de 20px */
    border-radius: 50%; /* Forme ronde (bordure arrondie) */
    border: 1px solid lightblue; /* Bordure de 1px solide avec couleur lightblue */
    content: " "; /* Contenu vide (pour la forme ronde) */
    background-color: white; /* Couleur de fond blanche */
    z-index: 99; /* Ordre d'empilement 99 (en avant-plan) */
  }
  
  /* Style des images à l'intérieur des panneaux de la chronologie (timeline-panel-img img) */
  .timeline-panel-img img {
    width: 100%; /* Largeur de 100% de son conteneur */
    height: auto; /* Hauteur automatique (en proportion) */
    max-width: 40vw; /* Largeur maximale de 40% de la vue */
    max-height: 35vh; /* Hauteur maximale de 35% de la vue */
    left: auto; /* Position à gauche (réinitialisation) */
    right: auto; /* Position à droite (réinitialisation) */
    border-radius: 10px 100px 10px 100px ;
  }
  
  /* Style du pseudo-élément :before des images à l'intérieur des panneaux de la chronologie */
  .timeline-panel-img:before {
    position: absolute; /* Position absolue par rapport à son conteneur parent */
    top: 29%; /* Position en haut de 29% de la hauteur du panneau */
    display: inline-block; /* Affichage en ligne (pour la forme ronde) */
    width: 20px; /* Largeur de 20px */
    height: 20px; /* Hauteur de 20px */
    border-radius: 50%; /* Forme ronde (bordure arrondie) */
    background-color: lightblue; /* Couleur de fond lightblue */
    content: " "; /* Contenu vide (pour la forme ronde) */
  }
/************************************************************************************/
/* Style pour l'élément après du panneau de la chronologie */
.timeline-panel:after {
    position: absolute; /* Position fixe par rapport à son parent */
    top: 31%; /* Positionné à 31% du haut de son conteneur */
    right: -14.25vw; /* Positionné à 14.25% de la largeur de la vue à droite de son conteneur */
    display: inline-block; /* Affichage en ligne avec des propriétés de bloc */
    width: 8.3vw; /* Largeur de 8.3% de la largeur de la vue */
    height: 1px; /* Hauteur de 1 pixel */
    background-color: lightblue; /* Couleur de fond lightblue */
    content: " "; /* Contenu vide pour afficher l'élément */
    z-index: -3; /* Ordre d'empilement -3 (en arrière-plan) */
  }
  /************************************************************************************/
  
  /* Style pour le badge de la chronologie lorsqu'il est actif */
  .timeline-badge.active {
    color: #0E3B85; /* Couleur du texte #0E3B85 */
    /* Animations pour le badge actif */
    animation-name: lines; /* Nom de l'animation */
    /* Compatible avec différents navigateurs */
    -webkit-animation-name: lines;
    -ms-animation-name: lines;
    -moz-animation-name: lines;
    /* Durée de l'animation */
    animation-duration: 1s;
    /* Compatible avec différents navigateurs */
    -webkit-animation-duration: 1s;
    -ms-animation-duration: 1s;
    -moz-animation-duration: 1s;
    /* Délai avant le début de l'animation */
    animation-delay: 0s;
    /* Compatible avec différents navigateurs */
    -ms-animation-delay: 0s;
    -webkit-animation-delay: 0s;
    -moz-animation-delay: 0s;
    /* Mode de remplissage de l'animation */
    animation-fill-mode: forwards;
    /* Compatible avec différents navigateurs */
    -webkit-animation-fill-mode: forwards;
    -ms-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    /* Nombre d'itérations de l'animation */
    animation-iteration-count: 1;
    /* Compatible avec différents navigateurs */
    -webkit-animation-iteration-count: 1;
    -ms-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
  }
  
  /************************************************************************************/
  /* Opacité du corps du panneau de la chronologie */
  .timeline-panel-body {
    opacity: 1; /* Complètement opaque */
  }
  
  /************************************************************************************/
  /* Animation pour l'élément après du panneau de la chronologie lorsqu'il est actif */
  .timeline-panel.active:after {
    /* Propriétés d'animation détaillées similaires à celles du badge actif */
    animation-name: lines2;
    -webkit-animation-name: lines2;
    -ms-animation-name: lines2;
    -moz-animation-name: lines2;
    animation-duration: 1s;
    -webkit-animation-duration: 1s;
    -ms-animation-duration: 1s;
    -moz-animation-duration: 1s;
    animation-delay: 0.5s;
    -ms-animation-delay: 0.5s;
    -webkit-animation-delay: 0.5s;
    -moz-animation-delay: 0.5s;
    animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
    -ms-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-iteration-count: 1;
    -webkit-animation-iteration-count: 1;
    -ms-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
  }
  
  /************************************************************************************/
  /* Animation pour l'élément avant du panneau de la chronologie lorsqu'il est actif */
  .timeline-panel.active:before {
    /* Propriétés d'animation détaillées similaires à celles du badge et de l'élément après du panneau actif */
    animation-name: lines3;
    -webkit-animation-name: lines3;
    -ms-animation-name: lines3;
    -moz-animation-name: lines3;
    animation-duration: 1s;
    -webkit-animation-duration: 1s;
    -ms-animation-duration: 1s;
    -moz-animation-duration: 1s;
    animation-delay: 1s;
    -ms-animation-delay: 1s;
    -webkit-animation-delay: 1s;
    -moz-animation-delay: 1s;
    animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
    -ms-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-iteration-count: 1;
    -webkit-animation-iteration-count: 1;
    -ms-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
  }
  
  /************************************************************************************/
/************************************************************************************/
/* Animation pour l'élément avant du panneau de la chronologie lorsqu'il est actif */
.timeline-panel-img.active:before {
    animation-name: ani-img; /* Nom de l'animation */
    -webkit-animation-name: ani-img; /* Compatible avec Webkit */
    -ms-animation-name: ani-img; /* Compatible avec Microsoft Edge */
    -moz-animation-name: ani-img; /* Compatible avec Mozilla Firefox */
    animation-duration: 1s; /* Durée de l'animation : 1 seconde */
    -webkit-animation-duration: 1s; /* Compatible avec Webkit */
    -ms-animation-duration: 1s; /* Compatible avec Microsoft Edge */
    -moz-animation-duration: 1s; /* Compatible avec Mozilla Firefox */
    animation-delay: 1s; /* Délai avant le début de l'animation : 1 seconde */
    -ms-animation-delay: 1s; /* Compatible avec Microsoft Edge */
    -webkit-animation-delay: 1s; /* Compatible avec Webkit */
    -moz-animation-delay: 1s; /* Compatible avec Mozilla Firefox */
    animation-fill-mode: forwards; /* Mode de remplissage de l'animation : forwards (conserver l'état final) */
    -webkit-animation-fill-mode: forwards; /* Compatible avec Webkit */
    -ms-animation-fill-mode: forwards; /* Compatible avec Microsoft Edge */
    -moz-animation-fill-mode: forwards; /* Compatible avec Mozilla Firefox */
    animation-iteration-count: 1; /* Nombre d'itérations de l'animation : 1 (une seule fois) */
    -webkit-animation-iteration-count: 1; /* Compatible avec Webkit */
    -ms-animation-iteration-count: 1; /* Compatible avec Microsoft Edge */
    -moz-animation-iteration-count: 1; /* Compatible avec Mozilla Firefox */
  }
  
  /************************************************************************************/
  
  /* Style pour le badge de la chronologie */
  .timeline-badge {
    color: lightblue; /* Couleur du texte : lightblue */
    width: 100px; /* Largeur de 100 pixels */
    height: 100px; /* Hauteur de 100 pixels */
    border-radius: 50%; /* Rayon de bordure pour créer un cercle */
    line-height: 100px; /* Hauteur de ligne pour centrer le contenu verticalement */
    font-size: 12px; /* Taille de police : 1,2 em (1,2 fois la taille de la police par défaut) */
    text-align: center; /* Alignement du texte au centre */
    position: absolute; /* Position absolue par rapport à son conteneur */
    top: 20%; /* Positionné à 20% du haut de son conteneur */
    left: 50%; /* Positionné à 50% de la largeur de son conteneur */
    margin-left: -60px; /* Marge à gauche pour centrer horizontalement */
    background-color: white; /* Couleur de fond : blanc */
    border: 1px solid lightblue; /* Bordure de 1 pixel solide avec couleur lightblue */
    z-index: 100; /* Ordre d'empilement : 100 (en avant-plan) */
  }
  
  /************************************************************************************/
  
  /* Style pour le texte du corps de la chronologie */
  .timeline-body p {
    font-size: 8px; /* Taille de police : 1.2 em */
    line-height: 2; /* Hauteur de ligne : 2 (double interligne) */
    text-align: justify; /* Alignement du texte justifié */
  }
  
  /************************************************************************************/
  
  /* Style pour les panneaux de la chronologie inversée */
  .timeline-panel.timeline-inverted, .timeline-inverted>.timeline-panel {
    float: right; /* Alignement des panneaux à droite */
  }
  
  /* Style pour l'élément avant des panneaux de la chronologie inversée */
  .timeline-panel.timeline-inverted:before, .timeline-inverted>.timeline-panel:before {
    left: -6vw; /* Positionné à -6% de la largeur de la vue à gauche */
    right: auto; /* Positionnement à droite désactivé */
  }
  
  /* Style pour l'élément après des panneaux de la chronologie inversée */
  .timeline-panel.timeline-inverted:after, .timeline-inverted>.timeline-panel:after {
    background-color: lightblue; /* Couleur de fond : lightblue */
    left: -15.2vw; /* Positionné à -15.2% de la largeur de la vue à gauche */
    right: auto; /* Positionnement à droite désactivé */
    width: 10vw; /* Largeur de 10% de la largeur de la vue */
  }
  
  /* Style pour le titre de la chronologie */
  .timeline-title{
    font-size: 2em; /* Taille de police : 2 em */
    line-height: 1.5; /* Hauteur de ligne : 1.5 */
    text-align: center; /* Alignement du texte au centre */
    font-weight: 600; /* Poids de la police : 600 (gras) */
  }
  
  
  /************************************************************************************/
  /* Animation pour les lignes horizontales */
  @keyframes animated-line {
    0% {
      width: 0px; /* Largeur de départ de 0 pixels */
    }
    100% {
      width: 25%; /* Largeur finale de 25% */
    }
  }
/* Animation pour l'image de l'élément actif */
@keyframes ani-img {
    0% {
      background-color: lightblue; /* Couleur de fond au début : lightblue */
      transform: scale(1, 1); /* Transformation initiale à l'échelle 1 */
      -ms-transform: scale(1, 1); /* Compatible avec Microsoft Edge */
      -webkit-transform: scale(1, 1); /* Compatible avec Webkit */
      -moz-transform: scale(1, 1); /* Compatible avec Mozilla Firefox */
    }
    50% {
      background-color: #7390BF; /* Couleur de fond à 50% : #7390BF */
      transform: scale(2, 2); /* Transformation à l'échelle 2 */
      -ms-transform: scale(2, 2); /* Compatible avec Microsoft Edge */
      -webkit-transform: scale(2, 2); /* Compatible avec Webkit */
      -moz-transform: scale(2, 2); /* Compatible avec Mozilla Firefox */
    }
    100% {
      background-color: #0E3B85; /* Couleur de fond à la fin : #0E3B85 */
      transform: scale(1, 1); /* Transformation finale à l'échelle 1 */
      -ms-transform: scale(1, 1); /* Compatible avec Microsoft Edge */
      -webkit-transform: scale(1, 1); /* Compatible avec Webkit */
      -moz-transform: scale(1, 1); /* Compatible avec Mozilla Firefox */
    }
  }
  
  /* Animation pour le panneau de l'élément actif */
  @keyframes ani-panel {
    0% {
      color: #7390BF; /* Couleur au début : #7390BF */
      opacity: 0; /* Opacité au début : 0 (transparent) */
    }
    50% {
      color: #7390BF; /* Couleur à 50% : #7390BF */
      opacity: 0.5; /* Opacité à 50% : 0.5 (semi-transparent) */
    }
    100% {
      color: #7390BF; /* Couleur à la fin : #7390BF */
      opacity: 1; /* Opacité à la fin : 1 (complètement visible) */
    }
  }
  
  /* Animation pour le corps de l'élément actif */
  @keyframes ani-body {
    0% {
      color: lightblue; /* Couleur au début : lightblue */
    }
    50% {
      color: #7390BF; /* Couleur à 50% : #7390BF */
    }
    100% {
      color: #0E3B85; /* Couleur à la fin : #0E3B85 */
    }
  }
  
  /* Animation pour l'élément avant des panneaux de la chronologie */
  @keyframes lines3 {
    0% {
      border: 1px solid lightblue; /* Bordure au début : 1px solide lightblue */
      transform: scale(1, 1); /* Transformation initiale à l'échelle 1 */
      -ms-transform: scale(1, 1); /* Compatible avec Microsoft Edge */
      -webkit-transform: scale(1, 1); /* Compatible avec Webkit */
      -moz-transform: scale(1, 1); /* Compatible avec Mozilla Firefox */
    }
    50% {
      border: 1.25px solid #7390BF; /* Bordure à 50% : 1.25px solide #7390BF */
      transform: scale(2, 2); /* Transformation à l'échelle 2 */
      -ms-transform: scale(2, 2); /* Compatible avec Microsoft Edge */
      -webkit-transform: scale(2, 2); /* Compatible avec Webkit */
      -moz-transform: scale(2, 2); /* Compatible avec Mozilla Firefox */
    }
    100% {
      border: 1.5px solid #0E3B85; /* Bordure à la fin : 1.5px solide #0E3B85 */
      transform: scale(1, 1); /* Transformation finale à l'échelle 1 */
      -ms-transform: scale(1, 1); /* Compatible avec Microsoft Edge */
      -webkit-transform: scale(1, 1); /* Compatible avec Webkit */
      -moz-transform: scale(1, 1); /* Compatible avec Mozilla Firefox */
    }
  }
  
  /* Animation pour le badge de la chronologie lorsqu'il est actif */
  @keyframes lines {
    0% {
      border: 1px solid lightblue; /* Bordure au début : 1px solide lightblue */
      transform: scale(1, 1); /* Transformation initiale à l'échelle 1 */
      -ms-transform: scale(1, 1); /* Compatible avec Microsoft Edge */
      -webkit-transform: scale(1, 1); /* Compatible avec Webkit */
      -moz-transform: scale(1, 1); /* Compatible avec Mozilla Firefox */
    }
    50% {
      border: 1.25px solid #7390BF; /* Bordure à 50% : 1.25px solide #7390BF */
      transform: scale(1.5, 1.5); /* Transformation à l'échelle 1.5 */
      -ms-transform: scale(1.5, 1.5); /* Compatible avec Microsoft Edge */
      -webkit-transform: scale(1.5, 1.5); /* Compatible avec Webkit */
      -moz-transform: scale(1.5, 1.5); /* Compatible avec Mozilla Firefox */
    }
    100% {
      border: 1.5px solid #0E3B85; /* Bordure à la fin : 1.5px solide #0E3B85 */
      transform: scale(1, 1); /* Transformation finale à l'échelle 1 */
      -ms-transform: scale(1, 1); /* Compatible avec Microsoft Edge */
      -webkit-transform: scale(1, 1); /* Compatible avec Webkit */
      -moz-transform: scale(1, 1); /* Compatible avec Mozilla Firefox */
    }
  }
/* Animation pour les panneaux d'éléments actifs sur les appareils mobiles */
@keyframes lines2 {
    0% {
      height: 1px; /* Hauteur au début : 1px */
    }
    50% {
      height: 1.25px; /* Hauteur à 50% : 1.25px */
      background-color: #7390BF; /* Couleur de fond à 50% : #7390BF */
    }
    100% {
      height: 1.5px; /* Hauteur à la fin : 1.5px */
      background-color: #0E3B85; /* Couleur de fond à la fin : #0E3B85 */
    }
  }
  
  /* Styles pour les appareils mobiles avec une largeur d'écran maximale de 1023 pixels et un rapport de pixels minimum de 1 (Webkit) */
  @media (max-width: 1023px) and (-webkit-min-device-pixel-ratio: 1) {
    /* Masquer la ligne de connexion sur les appareils mobiles */
    .connection-line {
      display: none;
    }
    /* Ajuster le décalage supérieur de la chronologie sur les appareils mobiles */
    .timeline {
      padding-top: 50px;
      margin-left: 0;
    }
    /* Masquer la ligne verticale fixe à gauche de la chronologie sur les appareils mobiles */
    .timeline:before {
      left: 50%;
      display: none;
    }
    /* Masquer la ligne verticale fixe à droite de la chronologie sur les appareils mobiles */
    .timeline:after {
      left: 50%;
      display: none;
    }
    /* Ajuster l'espacement entre les éléments de la chronologie sur les appareils mobiles */
    .timeline>li {
      padding-bottom: 10%;
    }
    /* Styles pour le badge de la chronologie sur les appareils mobiles */
    .timeline>li>.timeline-badge {
      width: 125px;
      height: 125px;
      border-radius: 70%;
      line-height: 125px;
      font-size: 0.9em;
      left: 50%;
      top: 0;
      margin-bottom: 50px;
      position: relative;
    }
    /* Animation pour le badge de la chronologie lorsqu'il est actif sur les appareils mobiles */
    .timeline-badge.active {
      color: #0E3B85;
      animation-name: lines-mob;
      -webkit-animation-name: lines-mob;
      -ms-animation-name: lines-mob;
      -moz-animation-name: lines-mob;
      animation-duration: 1s;
      -webkit-animation-duration: 1s;
      -ms-animation-duration: 1s;
      -moz-animation-duration: 1s;
      animation-delay: 0s;
      -ms-animation-delay: 0s;
      -webkit-animation-delay: 0s;
      -moz-animation-delay: 0s;
      animation-fill-mode: forwards;
      -webkit-animation-fill-mode: forwards;
      -ms-animation-fill-mode: forwards;
      -moz-animation-fill-mode: forwards;
      animation-iteration-count: 1;
      -webkit-animation-iteration-count: 1;
      -ms-animation-iteration-count: 1;
      -moz-animation-iteration-count: 1;
    }
    /* Styles pour le panneau de la chronologie sur les appareils mobiles */
    .timeline>li>.timeline-panel {
      width: 100vw;
      height: 35vh;
      float: none;
      left: 0%;
      background-color: white;
      z-index: 5;
      display: block;
      padding: 5%;
      height: auto;
      text-align: justify;
    }
    /* Styles pour les panneaux de la chronologie inversée sur les appareils mobiles */
    .timeline>li>.timeline-panel.timeline-inverted, .timeline>li.timeline-inverted>.timeline-panel {
      float: none;
    }
    /* Masquer l'élément avant du panneau de la chronologie sur les appareils mobiles */
    .timeline>li>.timeline-panel::before {
      display: none;
    }
    /* Masquer l'élément après du panneau de la chronologie sur les appareils mobiles */
    .timeline>li>.timeline-panel::after {
      display: none;
    }
    /* Masquer l'élément avant de l'image du panneau de la chronologie sur les appareils mobiles */
    .timeline>li>.timeline-panel-img::before {
      display: none;
    }
    /* Masquer l'élément après de l'image du panneau de la chronologie sur les appareils mobiles */
    .timeline>li>.timeline-panel-img::after {
      display: none;
    }
    /* Styles pour le texte du corps de la chronologie sur les appareils mobiles */
    .timeline-body p {
      font-size: 90%;
      line-height: 1.25;
    }
    /* Styles pour le titre de la chronologie sur les appareils mobiles */
    .timeline-title {
      text-align: center;
      font-size: 1.5em;
    }
  }
/* Styles pour les images dans les panneaux de la chronologie sur les appareils mobiles */
.timeline-panel-img img {
    width: 100%;
    height: auto;
    max-width: 90vw; /* Largeur maximale de l'image : 90% de la largeur de la vue */
  
    left: auto; /* Ajustement de la position à gauche (non défini) */
    right: auto; /* Ajustement de la position à droite (non défini) */
  }
  
  /* Animation pour le badge de la chronologie sur les appareils mobiles */
  @keyframes lines-mob {
    0% {
      border: 1px solid lightblue;
      transform: scale(1, 1);
      -ms-transform: scale(1, 1);
      -webkit-transform: scale(1, 1);
      -moz-transform: scale(1, 1);
    }
    50% {
      border: 1.25px solid #7390BF;
      transform: scale(1.2, 1.2);
      -ms-transform: scale(1.2, 1.2);
      -webkit-transform: scale(1.2, 1.2);
      -moz-transform: scale(1.2, 1.2);
    }
    100% {
      border: 1.5px solid #0E3B85;
      transform: scale(1, 1);
      -ms-transform: scale(1, 1);
      -webkit-transform: scale(1, 1);
      -moz-transform: scale(1, 1);
    }
  }
  
  /* Styles pour le texte du corps de la chronologie sur les appareils mobiles */
  .timeline-body p {
    font-size: 0.9em; /* Taille de police : 1em */
    line-height: 1.4; /* Hauteur de ligne : 1.4 */
    text-align: justify; /* Alignement du texte justifié */
  }
            