
body {
  font-family: Arial;
  margin: 0;
  padding: 0;
}
p{
  text-align: justify;
  word-spacing: normal;
  hyphens: auto; /* Ajoute la césure automatique des mots */
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
}
  /*****************************************************************************************************/
/* Style du héros avec l'image de fond */
.hero {
  margin-top: 50%;
  position: relative;
  height: 100vh; /* Hauteur initiale du héros */
  background-image: url('/assets/Images/IT-BootCamp/sous-page1.jpg'); /* Remplace avec ton image */
  background-size: cover;
  background-position: center;
  margin-top: 0px;

  /* Animation */
  opacity: 0; /* Début avec une opacité de 0 */
  animation: fadeInHero 2s ease-out forwards; /* Animation de fondu en entrée */
}

@keyframes fadeInHero {
  0% {
      opacity: 0; /* Invisible au début */
      transform: translateY(-20px); /* Légèrement déplacé vers le haut */
  }
  100% {
      opacity: 1; /* Complètement visible à la fin */
      transform: translateY(0); /* Revenu à sa position initiale */
  }
}
  /* Overlay pour la couleur semi-transparente */
  .hero::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 98, 51, 0.2); /* Couleur avec faible opacité */
  }
  
  /* Style du contenu du héros (au-dessus de l'image) */
  .hero-content {
    position: absolute;
    top: 50%;
    margin-left: 30%;
    transform: translate(-50%, -50%);
    z-index: 1; /* Pour placer le contenu au-dessus de l'overlay */
    padding: 20px;
    color: white;
  }
  .hero-content h1 {
    font-size: 2vw;
    font-weight: bold;
    margin-top: 180px;
    text-transform: uppercase;
    position: relative; /* Nécessaire pour l'animation */
    animation: slideDown 2s ease-out forwards; /* Animation de glissement du haut vers le bas */
}

@keyframes slideDown {
    0% {
        transform: translateY(-100%); /* Commence hors de la vue, en haut */
        opacity: 0; /* Invisible au début */
    }
    100% {
        transform: translateY(0); /* Se termine à sa position initiale */
        opacity: 1; /* Entièrement visible à la fin */
    }
}

  .title{
    font-size: 1.9em; /* Taille de police du titre */
    font-weight: bold; /* Gras pour le titre principal */
    margin: 25px auto;
    color: #15171C;
  }

  
  /* Media Queries pour la responsive design */
  @media only screen and (max-width: 1300px) {
    .hero {
      height: 700px;
    }
  
  }
  @media only screen and (max-width: 768px) {
    .hero-content {
      padding: 10px; /* Rembourrage réduit pour les écrans plus petits */
    }
    .hero {
      height: 400px;
    }
  
    .hero-content h1 {
      font-size: 25px; /* Taille de police réduite */
      margin-left: 10%;
      margin-top: 100px;
      width: 100%;
    }
  }
  
  @media only screen and (max-width: 480px) {
    .hero {
      height: 150px;
      margin-top: 100px;
    }
    .hero-content {
      padding: 5px; /* Rembourrage encore plus réduit */
    }
  
    .hero-content h1 {
      font-size: 20px; /* Taille de police encore plus petite */
      margin-left: 10%;
      margin-top: 70px;
      width: 100%;
    }
  }
  /* Style du titre */
.title {
    color: #15171C;
    text-align: center;
    text-transform:uppercase ;
  }
  
  /* Media Queries pour la responsive design */
  @media only screen and (max-width: 768px) {
    .title {
      font-size: 30px; /* Taille de police pour les écrans jusqu'à 768px */
    }
  }
  @media only screen and (max-width: 480px) {
    .title {
      font-size: 20px; /* Taille de police pour les écrans jusqu'à 480px */
      padding-bottom: 15px;
    }
  }
  /***************************************************************************************************/
  /* Style de la section avec deux blocs */
.section {
    display: flex;
    justify-content: space-between;
  }
  .section-container{
    max-width: 1200px; /* Limite la largeur à 1200px */
    margin: 0 auto;    /* Centre horizontalement */
    padding: 20px;     /* Ajoute du padding pour l'espacement */
  }
  
  /* Style du bloc de gauche */
  .left-block {
    flex: 1;
    padding: 20px 90px;
    text-align: left;
  }
  
  /* Style du titre du bloc gauche */
  .left-block h2 {
    color: black;
    text-align: center;
  }
  @media only screen and (max-width: 480px) {
    .left-block {
      padding: 20px 20px;
      text-align: justify;
    }
    .left-block h2 {
     font-size: 18px;
     margin-bottom: 10px;
    }
    .section .left-block{
      margin-top: -50px;
    }
  }
  
  /* Style des sous-titres et du contenu du bloc gauche */
  .left-block h3 {
    color: #15171C;
    text-align: center;
  }
/* Style du bouton du bloc gauche */
.left-block .button {
    display: inline-block;
    background-color: #ff6233;
    border-radius: 20px;
    color: #15171C;
    border: none;
    padding: 10px 20px;
    margin-top: 10px;
    text-decoration: none;
    cursor: pointer;
    text-align: center;
  }
  .left-block .button:hover {
    background-color: #ffb133; /* Couleur au survol */
  }
  
  /* Style du bloc de droite */
  .right-block {
    flex: 1;
    padding: 20px;
    text-align: center;
    border: 1px solid black;
  }
  
  /* Style de l'image du bloc de droite */
  .right-block img {
    max-width: 80%;
    height: auto;
    position: relative; /* Ajoute position relative pour utiliser left */
    animation: slideIn 1s ease-out forwards; /* Animation pour faire glisser l'image de la droite vers la gauche */
}

@keyframes slideIn {
    from {
        transform: translateX(100%); /* Commence en dehors de la vue à droite */
        opacity: 0; /* Commence avec une opacité de 0 */
    }
    to {
        transform: translateX(0); /* Se déplace à son état initial */
        opacity: 1; /* Terminer avec une opacité de 1 */
    }
}

  /* Media Queries pour la responsive design */
@media only screen and (max-width: 768px) {
    .section {
      flex-direction: column;
     justify-content: center;
     align-items: center;
     padding: Opx 5px;
    }
  
    .left-block, .right-block {
      flex: auto;
      width: 100%;
    }
  }
/**************************************************************************************************/
/* Style de la section avec trois blocs */
.section-three-blocks {
  display: flex;
  justify-content: space-around; /* Aligne les éléments avec de l'espace autour */
  align-items: center; /* Centre verticalement les éléments */
  padding: 10px 0;
  background-color: #f9f9f9;
  max-width: 1200px; /* Limite la largeur à 1200px */
  margin: 0 auto; /* Centre horizontalement la section */
}


  
  
  .section-three-blocks .block {
    flex: 1 1 calc(33.333% - 20px);
    margin: 10px;
    padding: 20px;
    background-color: rgba(84, 84, 84, 0.1);
    text-align: center;
    border-radius: 10px;
    transition: transform 0.3s ease, box-shadow 0.3s ease; /* Ajouter des transitions pour l'animation */
}

.section-three-blocks .block:hover {
    transform: scale(1.05); /* Agrandir légèrement le bloc */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* Ajouter une ombre pour l'effet de survol */
}

  
  /* Style des images des blocs */
  .section-three-blocks .block img {
    max-width: 100%;
    height: auto;
    margin-bottom: 15px;
    border-radius: 10px; /* Ajouter un border-radius aux images */
    position: relative;
    top: -100px; /* Initialement, placez l'image en dehors de la vue en haut */
    opacity: 0; /* Initialement, rendez l'image invisible */
    animation: dropIn 1s ease-out forwards; /* Définir l'animation */
}

/* Définir l'animation */
@keyframes dropIn {
    0% {
        top: -100px;
        opacity: 0;
    }
    100% {
        top: 0;
        opacity: 1;
    }
}
  /* Style des sous-titres des blocs */
  .section-three-blocks .block h3 {
    color: #545454;
    margin-bottom: 10px;
  }
  
  /* Style du contenu des blocs */
  .section-three-blocks .block p {
    margin-bottom: 15px;
  }
  
  /* Style des lignes de séparation */
  .section-three-blocks .block hr {
    margin: 20px 0;
    border: 0;
    border-top: 1px solid #ccc;
  }
  
  /* Style des liens des blocs */
  .section-three-blocks .block .link {
    display: inline-block;
    font-weight: bold;
    margin-top: 15px;
    color: #545454;
    text-decoration: none;
    transition: color 0.3s ease;
  }

  
  .section-three-blocks .block .link:hover {
    color: #3b3a3a;
  }
  
  .section-three-blocks .block .link i {
    margin-left: 5px; /* Ajouter plus d'espace entre le texte et l'icône */
  }
  
  /* Media Queries pour la responsive design */
  @media only screen and (max-width: 768px) {
    .section-three-blocks {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
    }
  
    .section-three-blocks .block {
      flex: 1 1 100%;
      margin: 10px 0;
    }
  }
  /*************************************************************************************************************/
  /* Style de la section de témoignages */
.testimonials-section {
    text-align: center;
    padding: 50px;
    background-color: #f9f9f9;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  
  /* Style du titre de la section de témoignages */
  .testimonials-section h2 {
    color: #ff6233;
    margin-bottom: 40px;
    font-size: 36px;
  }
  
  /* Style du conteneur de témoignages */
  .testimonial-container {
    position: relative;
    width: 80%; /* Ajuster la largeur selon les besoins */
    max-width: 600px; /* Limiter la largeur maximale */
    height: 250px; /* Ajuster selon le contenu */
  }
  
  /* Style de chaque témoignage */
  .testimonial {
    display: none;
    position: absolute;
    width: 100%;
    padding: 20px;
    background-color: #fff;
    border-radius: 60px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    text-align: left;
  }
  
  .testimonial.active {
    display: block;
  }
  
  /* Style des images des témoignages */
  .testimonial img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    margin-bottom: 20px;
    display: block;
    margin: 0 auto; /* Centrer l'image */
  }
  
  /* Style des citations des témoignages */
  .testimonial .quote {
    font-style: italic;
    margin-bottom: 15px;
  }
  
  /* Style des auteurs des témoignages */
  .testimonial .author {
    font-weight: bold;
    color: #555;
  }
  
  /* Style des boutons de navigation */
  button.prev{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: #e5532a;
    color: #fff;
    border: none;
    padding: 10px;
    cursor: pointer;
    border-radius: 20px;
  }
  
 button.next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: #e5532a;
    color: #fff;
    border: none;
    padding: 10px;
    cursor: pointer;
    border-radius: 20px;
  }
  
  button.prev {
    left: 40px; /* Ajuster pour centrer le bouton */
  }
  
  button.next {
    right: 40px; /* Ajuster pour centrer le bouton */
  }
  
  button.prev:hover, button.next:hover {
    background-color: #ffbd59;
  }
  
  /* Media Queries pour la responsive design */
  @media only screen and (max-width: 768px) {
    .testimonial-container {
      width: 80%;
      margin-right: 10px;
    }
  
    button.prev {
      left: -6px; /* Ajuster pour centrer le bouton */
    }
  
    button.next {
      right: -8px; /* Ajuster pour centrer le bouton */
    }
  }
  
  @media only screen and (max-width: 480px) {
    .testimonial-container {
      width: 100%;
      margin-right: 20px;
    }
  
    button.prev, button.next {
      left: 10px;
      right: 10px;
      top: auto;
      bottom: -20px;
      transform: none;
      width: 40%;
      display: block;
      margin: 0 auto; /* Centrer l'image */
      
    }
  
    button.prev {
      bottom: 20px; /* Ajuster pour centrer le bouton */
    }
  
    button.next {
      bottom: 305px; /* Ajuster pour centrer le bouton */
      margin-bottom: 15px;
    }
  }
  


  /********************************************** Styles de la section des partenaires *******************************/
.partners-section {
  text-align: center; /* Centre le texte à l'intérieur de la section */
  padding: 20px; /* Ajoute un espacement de 20px autour de la section */
  background-color: #f9f9f9; /* Couleur de fond pour la section */
}

.partners-section h2 {
  font-size: 1.9em; /* Taille de la police du titre */
  margin-bottom: 10px; /* Ajoute un espacement en bas du titre */
  font-weight: bold; /* Rend le texte du titre en gras */
  text-transform: uppercase; /* Met le texte du titre en majuscules */
  color: #ff6233; /* Couleur du texte du titre */
}

.partners-container {
  display: flex; /* Utilise Flexbox pour la disposition des logos */
  flex-wrap: wrap; /* Permet aux logos de passer à la ligne suivante si nécessaire */
  justify-content: center; /* Centre les logos horizontalement */
  gap: 20px; /* Ajoute un espacement entre les logos */
}

.partner-logo {
  flex: 1 1 calc(25% - 20px); /* Les logos occupent 25% de la largeur moins l'espacement */
  display: flex; /* Utilise Flexbox pour centrer les images à l'intérieur du conteneur */
  justify-content: center; /* Centre les images horizontalement */
  align-items: center; /* Centre les images verticalement */
  max-width: 200px; /* Limite la largeur maximale des logos */
  padding: 10px; /* Ajoute un espacement interne */
  box-sizing: border-box; /* Inclut le padding dans la largeur et la hauteur des éléments */
}

.partner-logo img {
  max-width: 100%; /* Assure que l'image ne dépasse pas la largeur du conteneur */
  height: auto; /* Maintient le ratio de l'image */
}

/* Styles responsifs pour les écrans plus petits */
@media (max-width: 768px) {
  .partner-logo {
      flex: 1 1 calc(50% - 20px); /* Les logos occupent 50% de la largeur moins l'espacement */
  }
}

@media (max-width: 480px) {
  .partner-logo {
      flex: 1 1 100%; /* Les logos occupent 100% de la largeur */
  }
}

/* styles.css */
.description {
  display: none;
  padding: 10px;
  text-align: left;
}

.btn-bouton{
  text-decoration: none;
  color: #333;
}


/* Style pour masquer le contenu par défaut */
#deroulement-cours {
  display: none;
  padding: 10px;
  margin-top: 10px;
}
