
*{
  
    box-sizing: border-box;
    margin : 0 ;
    padding: 0;

}


body {
    overflow-x: hidden;
  }

@keyframes apparaitre {

    from {
        opacity: 0;
       /*scale: 0.5*/
       transform: translateX(-100px);
    }

    to {
        opacity: 1;
        /*scale: 1;*/
        transform: translateX(0px);
    }
    
}

@keyframes apparaitre2 {

    from {
       opacity: 0;
       scale: 0.5;
       
    }

    to {
        opacity: 1;
        scale: 1;
       
    }
    
}
  

@keyframes wobble-horizontal {
    0% { transform: translateX(0); }
    15% { transform: translateX(-6px); }
    30% { transform: translateX(5px); }
    45% { transform: translateX(-4px); }
    60% { transform: translateX(3px); }
    75% { transform: translateX(-2px); }
    100% { transform: translateX(0); }
  }

/*-----------------------NAVBAR-----------------------------------*/

li , a {

    font-family: 'League Spartan' ;
    font-size: 16px ;
    color:white ;
    text-decoration: none;

}



.nav_links {
    width: 100%;
    height: 65px;
    display : flex ; 
    justify-content: space-between;
    align-items: center;
    padding :  15px 75px ;  
    background-color: #3b8c6e;
    list-style: none;
    
}

.nav_links img {
    height: 150px;
    width: 150px;
}


.nav_links li  {
    display: inline-block;
    padding : 0px 20px ;
}

.nav_links ul li a {
    position: relative;
    color: white;  /* adapte la couleur si besoin */
    text-decoration: none;
    transition: color 0.3s ease;
  }

  .nav_links ul li button::after {
    content: none !important;
  }


.nav_links ul li a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -3px;    /* un peu en dessous du texte */
    width: 0;
    height: 2px;
    background-color: white;  /* couleur de l'underline */
    transition: width 0.3s ease, left 0.3s ease;
  }
  
  .nav_links ul li a:hover::after {
    width: 100%;
    left: 0;
  }


  .nav_links ul li button {
    font-family: 'League Spartan';
    border-radius: 20px;
    height: 30px;
    width: 130px;
    background-color: #d4d45f;
    border-color: #d4d45f;
    color: white;
    border : 3px solid #d4d45f ;

  }

  .nav_links ul li button:hover {
    animation: wobble-horizontal 0.6s;
  }

/*---------------------------------------------------------*/

/*---------------------SECTION 1-----------------------------*/


.section_1 img {

    max-width: 100%;
    max-height: 100vh; /* empêche de dépasser la hauteur de l'écran */
    height: auto;
    width: auto;
    display: block; /* évite les marges parasites */
}

.section_1 h1{

    font-family: 'Bebas Neue';
    position: absolute;
    top: 50%; /* Centre le texte verticalement */
    left: 30%; /* Centre le texte horizontalement */
    transform: translate(-50%, -50%);
    color : white;
    font-size: 75px;
}


.section_1 h3{

    font-family: 'League Spartan';
    position: absolute;
    top: 55%; /* Centre le texte verticalement */
    left: 18%; /* Centre le texte horizontalement */
    transform: translate(-50%, -50%);
    color : white;
    font-size: 25px;
    
}

.section_1 button{

    font-family: 'League Spartan';
    position: absolute;
    top: 75%; /* Centre le texte verticalement */
    left: 10%; /* Centre le texte horizontalement */
    transform: translate(-50%, -50%);
    color : white;
    background-color: #3b8c6e;
    font-size: 25px;
    border: 20px;
    height: 40px;
    width: 180px;
    border-radius: 20px;
    
}

/*---------------------------------------------------------*/

/*---------------------SECTION 2-----------------------------*/


.section_2 {
    display: flex;
    gap: 80px;
    animation: apparaitre2 linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
   
}

.section_2 img {

    max-width: 100%;
    max-height: 100vh; /* empêche de dépasser la hauteur de l'écran */
    height: auto;
    width: auto;
    display: block; /* évite les marges parasites */
    padding-left: 150px ; 
}

.sec_1 {
    display : grid ;
    grid-template-columns: 300px; /*pour réduire la largeur de tous les objects du grid*/
    grid-row-gap: 10px; /*Espace entre chaque objets*/
}

.sec_1 h2 {
    font-family: 'Bebas Neue';
    padding-top: 130px;
    font-size: 47px;
}

.sec_1 p { 
    font-family: 'League Spartan';
    font-size: 25px;
}

.sec_1 button {
    font-family: 'League Spartan';
    background-color: #3b8c6e;
    font-size: 25px;
    border: 20px;
    height: 50px;
    width: 300px;
    border-radius: 20px;
    color : white ; 


}

/*---------------------------------------------------------*/

/*---------------------SECTION 3-----------------------------*/


.section_3 {
    background-color: #3b8c6e;
    border-radius: 20px;
    display : block ;
    height: 650px ;
    width: 100vw ;
    justify-items : center;
    text-align: center;
    gap:20px ;
    animation: apparaitre linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;

}



.section_3 h2 {
    text-align: center;
    margin-top: 50px;
    padding-top: 70px;
    font-family: 'League Spartan';
    color: white;
    left : 200px, ;
    padding-top : 20px ; 
    font-size: 30px;
}

.sousSection_1 {
  margin-top: 50px; /*plus c'est grand , plus ça descends en bas */
   font-family: 'League Spartan' ;
   color: white;
   display: flex;
   flex-direction: column;
   align-items: center;
   max-width: 300px;
   gap : 30px ;
}

.sousSection_1 img {
    height: 285px ;
    width: 285px;
 }
 

.sousSection_2 {
   margin-top: 50px; /*plus c'est grand , plus ça descends en bas */
   font-family: 'League Spartan' ;
   color: white;
   display: flex;
   flex-direction: column;
   align-items: center;
   max-width: 300px;
   gap : 30px ;
   
   
    
}

.sousSection_2 img {
    height: 285px ;
    width: 285px;
 }


.sousSection_3 {
    margin-top: 50px; /*plus c'est grand , plus ça descends en bas */
    font-family: 'League Spartan' ;
    color: white;
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 300px;
    gap : 30px ;
 
}

.sousSection_3 img {
    height: 285px ;
    width: 285px;

 }

 .lesSousSection {
    display: flex;
    gap: 150px;
    justify-content: center;
    padding-top: 80px;
}


 /*---------------------------------------------------------*/

/*---------------------SECTION 4-----------------------------*/



.section_4 {
    overflow: hidden;
    position: relative;
    border-radius: 20px;
    display: block;
    justify-content: center;   /* centré horizontalement */
    align-items: flex-start;   /* aligné en haut */
    padding-top: 80px;         /* pousse un peu vers le bas */
    height: 650px;
    width: 100vw;
    margin-left: 15px;
    margin-right: 15px;
    font-family: 'League Spartan';
    text-align: center;
    animation: apparaitre linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
  }


  .section_4 video {
    height: 650px;
    width: 100vw;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
  }

  .ensemble {
    display: flex;
    gap: 40px;
    justify-content: center;
    padding-top: 45px;
    
    
  }


  .ensemble .carre_1 {
    background-color: rgba(59, 140, 110, 0.25); 
    height: 300px;
    width: 300px;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
  }
  


  .ensemble .carre_1 img {
    height: 200px ;
    width: 200px;
  }
  

  .ensemble .carre_2 {
    background-color: rgba(59, 140, 110, 0.25); 
    height: 300px;
    width: 300px;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
  }

  .ensemble .carre_2 img {
    height: 200px ;
    width: 200px;
  }

  .ensemble .carre_3 {
    background-color: rgba(59, 140, 110, 0.25); 
    height: 300px;
    width: 300px;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
  }
  .ensemble .carre_3 img {
    height: 200px ;
    width: 200px;
  }

  .ensemble .carre_4 {
    background-color: rgba(59, 140, 110, 0.25); 
    height: 300px;
    width: 300px;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
  }

  .ensemble .carre_4 img {
    height: 200px ;
    width: 200px;
  }

  #titreSEC3 {
    position: relative;  
    text-align: center;
    margin-top: 30px;
    color: black;
    font-family: 'League Spartan';
    z-index: 10;

  }

 



 /*---------------------------------------------------------*/

/*---------------------FOOTER----------------------------*/

footer {

    background-color: #3b8c6e;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100vw ;
    font-family: 'League Spartan' ; 
  
    
}

footer img {
    align-items: baseline;
    height: 200px;
    width: 200px;
    padding-left: 20px;
}

footer #inst {

    height: 70px;
    width: 80px ;
    padding-left: 30px;
}

footer #xx{

    height: 90px;
    width: 100px ;
    padding-left: 30px;
}

footer #disc {

    height: 120px;
    width: 110px ;
    padding-left: 30px;
}




.sousPartie_1 ul {
   
    list-style: none;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    gap:20px ;
    
}

.sousPartie_2 ul {
   
    list-style: none;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    gap:20px ;
    
}

.sousPartie_3 {
    color :white;  
    padding-right : 70px;
    gap: 5px ;
    

}

.sousPartie_3 h3{
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 10px;

}

.sousPartie_3 img {
    height: 70px;
    width: 80px;
    margin-right: 10px;
  }
  







