/* ---------------Ent^te -  Menu pour la navigation  ------------------------- */
.main-nav {
  position: fixed;
  top: 0;
  width: 100%;
  background-color: var(--color-off-white);
  /*padding: 10px 20px;*/
  padding: 10px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 99;
  height: 80px;
}

.logo-desktop {
  position: absolute;
  left: 50px;
  width: 100px;
}

.main-nav ul {
  display: flex;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.main-nav li {
  padding: 0 20px;
  cursor: pointer;
}

/* --Traitement du bouton "Nous rejoindre" -----*/
#btn-rejoindre {
  padding: 15px 40px;
  border-radius: 20px;
  background-color: var(--color-yellow);
  font-size: var(--fs-18);
  text-decoration: none;
  color: var(--color-blue);
  font-weight: 600;
}

#btn-rejoindre:hover {
  background-color: var(--color-blue);
  color: var(--color-white);
}

.main-nav .underline-link {
  text-decoration: none;
  color: var(--color-blue);
  padding: 0 10px;
  font-weight: 500;
  font-size: var(--fs-18);
  position: relative;
}

.underline-link::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -5px;
  width: 100%;
  height: 3px;
  background: var(--color-blue);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 500ms ease-out;
}

.underline-link:hover::after {
  transform: scaleX(1);
}

.logo-burger {
  display: none;
}
.nav-toggler {
  display: none;
}
/* -----------Fin menu de navigation------------------------------------------------ */

/* --------------------Responsive pour menu de navigation -------------------------*/
@media (max-width: 1400px) {
  .main-nav li {
    padding: 0 10px;
  }
  .logo-desktop {
    left: 20px;
    width: 80px;
  }
}

@media (max-width: 1250px) {
  .main-nav {
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    background-color: var(--color-off-white);
  }

  .logo-desktop {
    display: none;
  }

  .logo-burger {
    display: block;
    width: 80px;
  }

  .nav-toggler {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: auto;
    background: none;
    border: none;
    cursor: pointer;
  }

  .nav-toggler img {
    width: 35px;
  }

  .main-nav ul {
    display: none;
    flex-direction: column;
    align-items: center;

    position: absolute;
    top: 100%;
    left: 0;

    margin: 0;
    padding: 30px 0;
  }

  .main-nav.active ul {
    width: 100%;

    background-color: var(--color-blue);

    list-style: none;
    margin: 0;
    padding: 30px 0;
  }

  .main-nav.active ul {
    display: flex;
  }

  .main-nav ul li {
    margin: 20px 0;
  }
  .main-nav .underline-link {
    font-size: 20px;
    color: var(--color-off-white);
  }
}
/*----------------------------------------------------------------------------------------------------------*/

/*********************************** Section Footer ***************************************************/

#pied-page {
  background-color: var(--color-footer);
  color: var(--color-off-white);
  width: 100%;
  padding: 50px 20px;
  box-sizing: border-box;

  padding-bottom: 0 !important; /* Force la suppression du vide tout en bas (avec l'ajout du sub-footer*/
}

.footer-container {
  width: 100%;
  display: flex;
  justify-content: space-evenly;
  /*align-items: flex-start;*/
  align-items: center;
  gap: 40px;
  flex-wrap: wrap;
}

/*************** Partie 1 ***************/

#footer-one-part {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.footer-container img {
  width: 100px;
  padding-bottom: 25px;
}

.footer-container h3 {
  color: var(--color-off-white);
  /* font-size: 24px; */
  line-height: 1.4;
}

/*************** Navigation ***************/
#liens-utiles {
  color: var(--color-off-white);
  padding-bottom: 20px;
}
#footer-navlist {
  display: flex;
  flex-direction: column;
  align-items: center;

  list-style: none;
  padding: 0;
  margin: 0;
}

#footer-navlist li {
  margin-bottom: 10px;
}

#footer-navlist a {
  color: var(--color-off-white);
  text-decoration: none;
}

/*************** Partie 3 ***************/

#footer-third-part {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

#footer-third-part h3 {
  padding-bottom: 20px;
}

#footer-third-part p {
  padding-bottom: 5px;
  color: var(--color-off-white);
}

/******************Partie subfooter*******************/




/*////////////////////////////////////////*/

/****************** Partie subfooter *******************/




.sub-footer {
  display: flex;
  justify-content: center; 
  align-items: center; /* Centre parfaitement les textes verticalement */
  gap: 100px;
  
  /* On écrase toute hauteur parasite */
  height: auto; 
  min-height: 0;
  
  /* On met un padding vertical minuscule et identique en haut et en bas */
  padding: 10px 2rem; 
  
  /* On force le sub-footer à se coller tout en bas sans marge interne résiduelle */
  margin: 0; 
  
  border-top: 1px solid rgba(255, 255, 255, 0.1); 
  font-size: var(--fs-14); 
  color: rgba(255, 255, 255, 0.6); 
  background-color: transparent; /* Assure qu'il n'y a pas un fond qui triche */
}
.sub-footer {
  display: flex;
  justify-content: center; 
  align-items: center; /* Centre parfaitement les textes verticalement */
  gap: 100px;
  
  /* On écrase toute hauteur parasite */
  height: auto; 
  min-height: 0;
  
  /* On met un padding vertical minuscule et identique en haut et en bas */
  padding: 10px 2rem; 
  
  /* On force le sub-footer à se coller tout en bas sans marge interne résiduelle */
  margin: 0; 
  
  border-top: 1px solid rgba(255, 255, 255, 0.1); 
  font-size: var(--fs-14); 
  color: rgba(255, 255, 255, 0.6); 
  background-color: transparent; /* Assure qu'il n'y a pas un fond qui triche */
}

/* Style du lien "Mentions légales" */
.lien-legal {
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  transition: color 0.3s ease;
}

/* Effet au survol */
.lien-legal:hover {
  color: var(--color-white); 
  text-shadow: 0 0 5px rgba(255, 255, 255, 0.3);
}




/********************** Responsive du Footer**************************/

@media (max-width: 1200px) {
  .footer-container {
    flex-direction: column;
    align-items: center;
    justify-content: center;

    text-align: center;
    gap: 50px;
  }
}
/* Version Mobile (Responsive) */
@media (max-width: 768px) {
  .sub-footer {
    flex-direction: column; 
    gap: 10px; /* Réduit l'espace entre le copyright et le lien sur mobile */
    text-align: center;
    padding: 1.5rem 1rem; /* Évite un trop grand espace vide sur smartphone */
  }
}



