@charset "UTF-8";

/**********************************************************************************************/
#toggle {
 display: none;
 visibility: hidden;
}
#toggle:checked + .btn > span {
 transform: rotate(45deg);
}
#toggle:checked + .btn > span::before {
 top: 0;
 transform: rotate(0deg);
}
#toggle:checked + .btn > span::after {
 top: 0;
 transform: rotate(90deg);
}
#toggle:checked ~ .box {
 left: 0 !important;
}

.btn {
  display: block;
  position: relative;
  left: calc(100% - 40px);
  top: 10px;
  width: 40px;
  height: 40px;
  cursor: pointer;
  background-color: #c0c0c0;
  z-index: 1;
}

.btn > span, .btn > span::before, .btn > span::after {
  display: block;
  position: absolute;
  top: 19px;
  width: 100%;
  height: 4px;
  background-color: #5c5c5c;
  transition-duration: .25s;
}
.btn > span::before {
  content: '';
  top: -10px;
}
.btn > span::after {
  content: '';
  top: 10px;
}

.box {
  display: block;
  position: absolute;
  left: -200px;
  list-style: none;
  background-color: #ECEFF1;
  transition: left .25s;
  transition-duration: .25s;
  z-index: 2;
}

@media screen and (min-width: 600px) {
	.box {
	position: relative;
	overflow: none;
	left: 10px;
	margin: 0px;
	}
	#menu-accordeon{
	display: flex ;
	flex-direction: row;
    /* Positionnement relative des elements de menu pour pouvoir positionner les 
       sous-menu correctement en absolu */
    position:   relative;
    padding: 0px;
    margin: 0px;
	}
	#menu-accordeon ul{		
	display: flex ;   /* P,ositionnement du sous-menu */
	flex-direction: column;
    position: absolute;
    max-width: 9em;
    z-index: 3; /* Gestion de la superposition des sous-menus par rapport au reste de la page */
    }
   
    #menu-accordeon li {
    background-color: rgb(254, 255, 255); 
    }
    
    .btn {
    display: none;
    position: absolute;
    left: 0px;
    }
}

#menu-accordeon {
  margin-left:10px;
  list-style:none;
  text-align: center;
}
#menu-accordeon ul {
  list-style: none;
  text-align: center;
}
#menu-accordeon li {
   /*min-width: 9em;*/
   background-color: rgba(245, 245, 220, 1); 
   /*border-radius: 6px;
   margin-bottom:2px;
   border:solid 1px #000000;*/
}
#menu-accordeon li li {
   max-height:0px;
   overflow: hidden;
   transition: all .5s;
   border-radius:0;
   background: #444;
   box-shadow: none;
   border:none;
}
#menu-accordeon a {
   display:block;                /* Transformation en block */
   min-width: 9em;             /* Largeur minimale des liens */   
   padding: 0.4rem 0;            /* Marges internes (2 valeurs = haut/bas et gauche/droite)*/
   text-align: center;           /* Centrage du texte */   
   background-color: #434444;    /* Couleur d'arrière-plan */
   color: rgb(255, 255, 255);                  /* Couleur du texte */
   text-decoration: none;        /* Suppression du soulignement */
   border: 1px solid #fff;       /* Ajout d'une bordure */
   border-radius: 4px;           /* Arrondis des bordures */
   font-family: verdana;
   font-size:1em
}
#menu-accordeon ul li a, #menu-accordeon li:hover li a {
  font-size:0.75em
}
#menu-accordeon li:hover {
	background-color: #ffffff;
}

#menu-accordeon li li:hover {
   background: #999;
}
#menu-accordeon ul li:last-child {
   border-radius: 0 0 6px 6px;
   border:none;
}
#menu-accordeon li:hover li {
  max-height: 15em;
}

.footer {
  margin-top: 40px;
  background-color: #2c3e50;
  color: white;
  padding: 10px 0;
  text-align: center;
  position: relative;
  bottom: 0;
  width: 100%;
    border-radius: 5px;
    border: 2px solid gray;
    background-size: contain;
    /*background-color: lightgray;*/
    overflow:hiden;
}

.footer-container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.footer-logo .logo {
  max-width: 200px;
  height: auto;
}

.footer a {
  color: #3498db;
  text-decoration: none;
}
.footer a:hover {
  text-decoration: underline;
}
 .footer .about {
  margin: 5px 0;
}
 .footer .copyright {
  margin-top: 5px;
  font-size: .75em;
}

/* Style pour le bouton de retour en haut */
#backToTopBtn {
  position: fixed;
  bottom: 20px;
  right: 20px;
  display: bloc;
  background-color: #333;
  color: white;
  border: none;
  padding: 10px 20px;
  border-radius: 5px;
  cursor: pointer;
  z-index: 1000;
}

#backToTopBtn:hover {
  background-color: #555;
}