
:root {
  --col_border: rgba(255, 255, 0, 0.202);
}
.bold{
  font-weight: bold;
}
body, #fiche_intro{
  overflow-x: hidden;
}



#audio{
  position: absolute;
  visibility: hidden;
}
#section_btn{
  width: 100%;
  text-align: center;
}








/* */
#fiche_intro{
  width: 100%;
  height:100%; 
  position: relative;
  height:auto;
  margin-top: 5%;
  display: flex;
  justify-content: center;
  align-items: center;
  align-items: stretch;
  overflow: hidden;
}
#container_fiche{
  width: 90%;
  align-items: stretch;
  display: flex;
}
.container_half{
  height: auto;
  width: 50%;
  position: relative;
  padding: 1%;
}
#intro_left{
  width: 60%;
  padding: 2%;
  height: auto;
}
#intro_right{
  width: 40%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: start;
  padding-top: 5%;
}

.line{
  position: absolute;
  background-color: white;
  transition: height 1s ease;
  width: 1px;
  height:0;
  top:0;
}
.line_height{
  height: 100%;
}
#line_left{
  left:0;
}
#line_center{
  right: 0;
}
#line_right{
  right: 0;
}
#text_bottom{
  position: relative;
  width: 95%;
  margin-top: 20%;
}

#container_arrow{
  position: relative;
  justify-content: end;
  align-items: center;
  padding-right: 3%;
  display: flex;
  gap:2%;
  width: 100%;
  cursor: pointer;
  margin-top: 5%;
}
#arrow{
  width: 3vw;
  height:auto;
}








/* */


#music{
  width: 100%;
  height:5%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  bottom: 2%;
  cursor: pointer;
  transition: height 0.5s ease, 
  width 0.5s ease;
  z-index: 999;
}
#background_music{
  width: 6%;
  background-color: rgb(26, 26, 26);
  cursor: pointer;
  border-radius: 20px;
  height:90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: height 0.5s ease, 
  width 0.5s ease;
  border: 1px solid white;
  gap:1%;
  position: relative;
  overflow: hidden;
}
.ic_play{
  height:80%;
  width: auto;
  position: absolute;
  transition: left 1s ease;
  left: 50%;
  transform: translateX(-50%);
}

#music:hover{
  height:8%;
}
#music:hover #background_music{
  width: 30%;
}
#background_music:hover .ic_play{
  left:8%;
}
#is_titre_musique{
  transform: translateX(200%);
  transition: transform 1s ease, 
    opacity 0.1s ease;
  opacity: 0;
}
#background_music:hover #is_titre_musique{
  transform: translateX(0%);
  opacity:1;
}


/* */


.img_icone{
  width: 50%;
  height: auto;
  cursor: pointer;
  aspect-ratio: 1/1;
}
.youtube_ic{
  width: 60%;
  height: auto;
  cursor: pointer;
  aspect-ratio: 1/1;
}
.img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter:grayscale(100%);
}
#process_section{
  width: 100%;
  height:20vh;
  margin-top: 5%;
  display: flex;
  justify-content: center;
  align-items: center;
}
#container_process{
  width: fit-content;
  height:100%;
  display: flex;
  position: relative;
  gap:10%;
  margin-left: -5%;
}
#time_line{
  position: absolute;
  width: 100%;
  left:0%;
  height:1px;
  top:50%;
  background-color: white;
}
#fin{
  position: absolute;
  top:50%;
  transform: translateY(-50%);
  right: -5%;
}
.process{
  width: auto;
  height:100%;
  width: 12vw;
}
.proc{
  width: 100%;
}
.circle{
  border-radius: 50%;
  border: 1px solid white;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3vw;
  height:3vw;
  aspect-ratio: 1;
  background-color: black;
}
.right{
  display: flex;
  align-items: end;
}
#container_img{
  width: 70%;
  height:70%;
  position: relative;
  max-height: 400px;
}
.img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter:grayscale(100%);
}

#container_reso{
  position: absolute;
  width: 20%;
  height:100%;
  right: 5%;
  display: flex;
  flex-direction: column;
  align-items: end;
  justify-content: start;
  row-gap: 0.5%;
  padding-top: 8%;
}


/* */
#presentation{
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 10vh;
  flex-direction: column;
  
}
#container_presentation{
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: start;
  padding-left: 5%;
}
.container_video{
  width: 90%;
  height:60vh;
  border-radius: 20px;
  overflow: hidden;
  min-height: 450px;
}
.vid{
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
}

/* */
#section_resum{
  width: 100%;
  margin-top: 20vh;
  height:auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
#container_under_resum{
  width: 80%;
  height:100%;
}
#container_data{
  width: 100%;
  height:100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap:1%;
}
.container_resum{
  display: flex;
  overflow: hidden;
  position: relative;
}
#right_anim, #left_anim{
  transition: transform 0.5s ease;
}
#left_anim{
  left:0;
} 
#right_anim{
  right:0;
}
#s_letter{
  left:0;
}
.letter_anim{
  transition: transform 0.5s ease;
}
.go_to_bottom{
  transform: translateY(100%);
}
.go_to_right{
  left:100%!important;
}
.go_to_left{
  right:100%!important;
}

#label{
  order: 99;
  flex-basis: 100%;   /* ⬅️ force LABEL à passer à la ligne d'en dessous */
  text-align: center;
  display: flex;
  gap:10%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2vh;
}






/* */
#time_line_section{
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
  margin-top: 10%;
  position: relative;
}
#container_time{
  width: 60%;
  position: relative;
  padding-bottom: 5vh;
}
.container_times{
  width: 100%;
  height:auto;
  display: flex;
  gap:10%;
  margin-top: 5vh;
  overflow: hidden;
  display: flex;

  align-items: center;
}
.right_of_psr{
  margin-left: 2%;
}
.cirle{
  width: 3vw;
  height:3vw;
  aspect-ratio: 1;
  border-radius: 50%;
  border: 1px solid white;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: transform 0.5s ease;
  transform: translateX(-100%);
}
.text_time{
  width: 80%;
}
#line_container_time{
  width: 1px;
  position: absolute;
  height:0%;
  background-color: white;
  left: 25%;
  transition: height 1s ease;
  z-index: 1;
}






/* */
#container_reso{
  width: 10%;
  position: absolute;
  right:3%;
}




/* */
.is_titre_section{
  width: 100%;
  height:auto;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 10%;
  flex-direction: column;
}

.container_titre_section{
  width: 70%;
  
}
.undertitre_section{
  display: flex;
  margin-top: 1%;
}
.text_right{
  width: 20%;
}
.text_under{
  width: 70%;
  margin-top: 1%;
}





@media (max-width: 1280px) and (max-height:1024px){
  #container_img{
    height:60%;
  }
  .mini_text{
    font-size: clamp(10px, 1.2vw, 100px);
  }
  .container_titre_section{
    width: 80%;
  }
  .text_under{
    width: 80%;
  }
  #line_container_time{
    left:17%;
  }
  #container_time{
    width: 80%;
  }
  #container_img{
    height:70%;
  }
}
@media (max-width: 1280px) and (max-height:960px){
  #container_img{
    height:70%;
  }
}
@media (max-width: 1280px) and (max-height:768px){
  #container_img{
    height:70%;
    width: 50%;
  }
}
@media (max-width: 1280px) and (max-height:768px){
  #container_img{
    width: 60%;
    height:70%;
  }
}
@media (max-width: 1176px){

  .container_titre_section{
    width: 65%;
  }
  .text_under{
    width: 65%;
  }
  #line_container_time{
    left:24%;
  }
  #container_time{
    width: 65%;
  }
}
@media (max-width: 1176px){
  #container_img{
    height:65%;
  }
}
@media (max-width: 800px){
  .container_titre_section{
    width: 75%;
  }
  .text_under{
    width: 75%;
  }
  #line_container_time{
    left:19%;
  }
  #container_time{
    width: 75%;
  }
}


@media (max-width: 700px){
  .line{
    display: none;
  }

  #fiche_intro{
    height: 100%;
    min-height: auto;
    margin-top: 100px;
  }
  #container_fiche{
    flex-direction: column-reverse;
  }
  #intro_right{
    width: 100%;
  }
  .container_half{
    height: 50vh;
    min-height: auto;
  }
  #container_img{
    height:90%;
  }
  #intro_left{
    width: 100%;
    height:80vh;
  }


  /* */
  .vid{
    margin-top: -30%;
    height:200%;
  }
  .container_titre_section,
  .text_under,
  #container_time {
    width: 90%;
  }
  #grid_filter{
    width: 100%;
  }
  .cirle{
    width: 8vw;
    height:8vw;
  }

  /* */
  #container_fiche{
    width: 100%;
  }
  #container_img{
    width: 100%;
    height:60vh;
    min-height: 400px;
    min-width: 90%;
  }
  .container_half{
    width: 100%;
  }
  .img{
    border-radius: 20px;
    border: 1px solid white;
    width: 100%;
  }
  #fiche_intro{
    margin-top: 5%;
  }

  /* */
  #intro_left{
    margin-top: 5%;
    width: 95%;
    margin-left: 2.5%;
  }
  #text_bottom{
    margin-top: 5%;
  }
}




