/*Définition des polices en bas*/



html
{
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
}

body{
        margin: 0;
	padding-top :60px;
	overflow-x: hidden;
}

.login-page {
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
}

.login-page .background-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../Resources/msb.jpeg");
  background-size: cover;
  background-position: center;
  opacity: 0.6; /* Adjust opacity as needed */
}

.login-page .login-form {
  max-width: 400px; 
  width: 80%;
   height: 310px;
  background-color: white;
  opacity: 0.85; 
  border-radius: 10px;
  padding: 20px;
}


.login-form h2 {
  text-align: center;
}

.login-form
{
        position: absolute;
        top: 33%;
        left: 50%;
        transform: translate(-50%, -50%);
}

.login_form-form form {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.login_form-form input[type="text"],
.login_form-form input[type="password"],
.login_form-form button {
  max-width: 300px;
  width:100%;
  height: 40px;
  margin-bottom: 10px;
}

button[type="submit"] {
  border-radius: 50px;
  background-color: lightblue;
  padding: 10px 20px;
  border: none;
  color: white;
  transition: background-color 0.3s;
}

button[type="submit"]:hover {
  background-color: darkblue;
}



.login_form-form .password-wrapper {
  position: relative;
      width: 100%;
    max-width: 300px;
    left: -6px;
}

.login_form-form .toggle-password {
  position: absolute;
  top: 45%;
  right: 10px;
  transform: translateY(-50%);
  cursor: pointer;
  color: #999;
}


.error-message {
  position: relative;
  bottom: 0%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: red;
}



/*Accueil*/

.home-container {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  gap: 60px;
  /*margin: 0 auto;
  max-width: 700px;*/
  font-family: 'Montserrat', sans-serif;
  padding-top: 40px;
  font-size: 20px;
  text-align: center;
  line-height: 1.5;
}

.image-home {
  width: 1300px; 
  height: 700px;
  background-image: url("../Resources/img_fairpart.jpg");
  background-size: cover;
  background-position: center;
}

.text-section {
  text-align: center;
}


.home-accueil-text{
  text-align: center;
  /*line-height: 2;*/
  display: flex;
    justify-content: center;
}



.home-accueil-text::before{
  content: "";
  position: absolute;
  width: 90px; /* Set the width for the colored half */
  top: 510px;
  height: 300px;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;

}

.hilight-text{
  color: #e56b84;
}

.accueil-premier-block{
  position: relative;
  width: 90%;
}

.accueil-premier-block::before{	  
  content: "";
  position: absolute;
  left: 0%;
  width: 100%; /* Set the width for the colored half */
  height: 100%;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;
}

.accueil-second-block{
  display: flex;
  gap:30%;
  width: 70%;
}

.accueil-second-block img{
  width: 35%;
  height: auto;
  position: relative;
  object-fit: contain;
}

.accueil-second-block p{
    position: relative;
    margin: 6% 0 0;
    width: 100%;
}

.accueil-troisieme-block{
  position: relative;
  padding-left: 45%;
}

.accueil-troisieme-block img{
  width: 70%;
  height: auto;
  position: relative;
  object-fit: contain;
}

.accueil-quatrieme-block{
  width: 70%;
  display: flex;
  gap: 5%;
  position: relative;
}

.accueil-quatrieme-block img{
  width: 35%;
  height: auto;
  object-fit: contain;
  margin-top: -24%;
}

.accueil-quatrieme-block p{
  padding-top: 3%;
  width: 20%;
}

.accueil-quatrieme-block-bis{
  width: 70%;
  display: flex;
  gap: 30%;
  position: relative;
}

.accueil-quatrieme-block-bis img{
  width: 35%;
  height: auto;
  object-fit: contain;
  margin-top: -30%;
}

.accueil-quatrieme-block-bis p{
  width: 100%;
  margin: 0;
}

@media (min-width: 850px){

.accueil-quatrieme-block-bis::before{
  content: "";
  position: absolute;
  width: 15%; /* Set the width for the colored half */
  height: 450px;
  top: -200px;
  left: 10%;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;
}
}



.fixed-text{
  top: 10%;
  left: 50%;
  position: absolute;
}

.accueil-cinquieme-block{
  width: 70%;
  display: flex;
  position: relative;
  gap: 6%;
}

.accueil-cinquieme-block::before{
  content: "";
  position: absolute;
  width: 70%; /* Set the width for the colored half */
  height: 130px;
  top: 35%;
  left: 0%;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;
}

.accueil-cinquieme-block img{
  width: 35%;
  height: auto;
  object-fit: contain;
      margin-top: -5%;
}

.accueil-cinquieme-block p{
  width: 100%;
      margin: auto 0 auto 30%;
}

.accueil-six-block{
  width: 70%;
  display: flex;
  gap: 30%;
  position: relative;
}


.accueil-six-block img{
  width: 35%;
  height: auto;
  object-fit: contain;
  margin-top: -5%;
}


.accueil-six-block p{
  width: 100%;
  position: relative;
    margin: 7% 0 0;
}

.accueil-sept-block{
  width: 70%;
  display: flex;
  gap: 28.5%;
  position: relative;
}

.accueil-sept-block p{
	width: 100%;
	margin-top: -2%;
    margin-left: 2%;
}


.accueil-sept-block img{
  width: 35%;
  height: auto;
  object-fit: contain;
  margin-top: -25%;
}

@media (min-width: 850px) {

	.accueil-sept-block::before{
	  content: "";
	  position: absolute;
	  left: 11%;
	  width: 15%; /* Set the width for the colored half */
	  height: 500px;
	  top: -360px;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	}
	.mobonly{
		display: none;
	}
}

/*Countdown sur l'accueil*/
.countdown{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
  margin: 40px 0 25px;
  height: 100px;
  font-size: 4em;
  text-align: center;
  font-family: 'Montserrat', sans-serif;
}

.countdown::before{
  content: "";
  position: absolute;
  left: 0%;
  width: 100%; /* Set the width for the colored half */
  height: 100px;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;
}



.accueil-huit-block{
  width: 70%;
  display: flex;
  gap: 15%;
  position: relative;
}


.accueil-huit-block img{
  width: 35%;
  height: auto;
  object-fit: contain;
  margin-top: -5%;
}


.accueil-huit-block p{
  width: 100%;
  margin-top: 14%;
}

.accueil-huit-block::before{
  content: "";
  position: absolute;
  height: 110px;
  left: -10%;
  width: 115%;
  top: 29%;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;
}
.accueil-neuf-block{
  width: 70%;
  display: flex;
  gap: 0;
  position: relative;
}


.accueil-neuf-block img{
  width: 35%;
  height: auto;
  object-fit: contain;
  margin-top: -15%;
}

.accueil-neuf-block p{
  width: 100%;
  margin-left: 260px;
  margin-top: 45px;
}



.accueil-dix-block{
  width: 70%;
  display: flex;
  gap: 0;
  position: relative;
  margin-bottom: 20px;
}

.accueil-dix-block p{
	width: 100%;
	margin-top: 100px;
}

.accueil-dix-block img{
  width: 35%;
  height: auto;
  object-fit: contain;
  margin-top: -10%;
}

.accueil-dix-block::before{
  content: "";
  position: absolute;
  height: 50%;
  left:0;
  width: 90%;
  top: 90px;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;
}




@media only screen and (max-width: 850px) {

	.home-container {
	  display: flex;
	  justify-content: center;
	  flex-direction: column;
	  align-items: center;
	  gap: 60px;
	  margin: 0 auto;
	  font-family: 'Montserrat', sans-serif;
	  padding-top: 40px;
	  font-size: 16px;
	  text-align: center;
	  line-height: 1.5;
	}
	
	.image-home {
	  width: 1300px; 
	  height: 700px;
	  background-image: url("../Resources/img_fairpart.jpg");
	  background-size: cover;
	  background-position: center;
	}
	
	.text-section {
	  text-align: center;
	}
	
	
	.home-accueil-text{
	  text-align: center;
	  /*line-height: 2;*/
	  display: flex;
	    justify-content: center;
	}
	
	
	
	.home-accueil-text::before{
	  content: "";
	  position: absolute;
	  width: 90px; /* Set the width for the colored half */
	  top: 380px;
	  height: 280px;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	
	}
	
	.hilight-text{
	  color: #e56b84;
	}
	
	.accueil-premier-block{
	  position: relative;
	  width: 80%;
	}
	
	.accueil-premier-block::before{	  
	  content: "";
	  position: absolute;
	  left: 0%;
	  width: 100%; /* Set the width for the colored half */
	  height: 100%;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	}
	
	.accueil-second-block{
	  display: flex;
	  gap:0;
	  width: 95%;
	}
	
	.accueil-second-block img{
	  width: 60%;
	  height: auto;
	  position: relative;
	  object-fit: contain;
	}
	
	.accueil-second-block p{
	    position: relative;
	    margin: auto 9%;
	    width: 100%;
	}
	
	.accueil-troisieme-block{
	  width: 95%;
	  position: relative;
	  padding: 0;
	}
	
	.accueil-troisieme-block img{
	  width: 100%;
	  height: auto;
	  position: relative;
	  object-fit: contain;
	}
	
	.accueil-quatrieme-block{
	  width: 95%;
	  display: flex;
	  gap: 0;
	  margin: 0;
	}
	
	.accueil-quatrieme-block img{
	  width: 60%;
	  height: auto;
	  object-fit: contain;
	  margin-top: 0;
	}
	
	.accueil-quatrieme-block p{
	  padding-top: 0;
	  position: relative;
            margin: 15% 9%;
            width: 100%;
	}
	
	.accueil-quatrieme-block::before{
	  content: "";
	  position: absolute;
	  width: 102%; /* Set the width for the colored half */
	  height: 70px;
	  top: 15%;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	}
	
	.accueil-quatrieme-block-bis{
	  width: 95%;
	  display: flex;
	  gap: 0;
	}
	
	.accueil-quatrieme-block-bis img{
	  width: 60%;
	  height: auto;
	  object-fit: contain;
	  margin-top: 0;
	}
	
	.accueil-quatrieme-block-bis p{
	  margin: auto 2%;
  	  width: 100%;
	}
	/*.fixed-text{
	  top: 10%;
	  left: 50%;
	  position: absolute;
	}*/
	
	.accueil-cinquieme-block{
	  width: 95%;
	  display: flex;
	  gap: 0;
	}
	
	.accueil-cinquieme-block::before{
	  content: "";
	  position: absolute;
	  width: 60%; /* Set the width for the colored half */
	  height: 130px;
	  top: 26%;
	  left: -10%;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	}
	
	.accueil-cinquieme-block img{
	  width: 60%;
	  height: auto;
	  object-fit: contain;
	  margin-top: 0;
	}
	
	.accueil-cinquieme-block p{
	  width: 100%;
	  margin: 24% 2% 0;
	}
	
	.accueil-six-block{
	  width: 95%;
	  display: flex;
	  gap: 0;
	  margin-top: 0;
	}
	
	
	.accueil-six-block img{
	  width: 60%;
	  height: auto;
	  object-fit: contain;
	  margin-top: 0;
	}

	.accueil-six-block p{
          position: relative;
            margin: auto 2%;
            width: 100%;
        }
	
	.accueil-sept-block{
	  width: 95%;
	  display: flex;
	  gap: 0;
	}
	
	
	.accueil-sept-block img{
	  width: 60%;
	  height: auto;
	  object-fit: contain;
	  margin-top: 0;
	}

	.accueil-sept-block p{
		width: 100;
		margin: auto 2%;
	}
	
	
	.countdown{
		font-size: 2em;
                gap: 4%;
                margin: 0;
	}

	.accueil-huit-block{
	  width: 95%;
	  display: flex;
	  gap: 0;
	}
	
	
	.accueil-huit-block img{
	  width: 60%;
	  height: auto;
	  object-fit: contain;
	  margin-top: 0;
	}
	
	
	.accueil-huit-block p{
	  width: 100%;
	  margin: auto 2% ;
	}
	
	.accueil-huit-block::before{
	  content: "";
	  position: absolute;
	  height: 40%;
	  left: -10%;
	  width: 115%;
	  top: 30%;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	}

	.accueil-neuf-block{
	  width: 95%;
	  display: flex;
	  gap: 0;
	}
	
	
	.accueil-neuf-block img{
	  width: 60%;
	  height: auto;
	  object-fit: contain;
	  margin-top: 0;
	}
	
	.accueil-neuf-block p{
	  width: 100%;
	  margin: auto 2%;
	}
	
	
	
	.accueil-dix-block{
	  width: 95%;
	  display: flex;
	  gap: 0;
	  margin-bottom: 20px;
	}
	
	
	.accueil-dix-block img{
	  width: 60%;
	  height: auto;
	  object-fit: contain;
	  margin-top: 0;
	}

	.accueil-dix-block p{
          width: 100%;
          margin: auto 2%;
        }
	
	.accueil-dix-block::before{
	  content: "";
	  position: absolute;
	  height: 80%;
	  left: 72.5%;
	  width: 15%;
	  top: 10%;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	}
}


/*Programme*/


.programme-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 60px;
  margin: 0 auto;
  /*max-width: 700px;*/
  padding-top: 40px;
  text-align: center;
  font-family: 'Montserrat', sans-serif;
  font-size: 18px;
  line-height: 2;
}


.programme-container h3{
  color: #e56b84;
  font-family: 'Bodoni Moda', serif;
  font-size: 30px;
}

.change-font{
  font-family: 'Bodoni Moda', serif;
}

.vendredi-all{
      display: flex;
    flex-direction: row;
    width: 60%;
    align-items: center;
}

.vendredi-premier-block{
  width: 80%;
  background: linear-gradient(to right,#f3967a10 50%, #ffffff 50%);
}

.vendredi-second-block{
  width: 80%;
  position: relative;
}

.vendredi-second-block::before{
  content: "";
  position: absolute;
  top: 15%;
  width: 50%; /* Set the width for the colored half */
  height: 70%;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;
}

.samedi{
  display: flex;
    width: 80%;
    align-items: center;
    gap: 60px;
    flex-direction: column;
}


.samedi-all{
    display: flex;
    flex-direction: row;
    gap: 15%;
        align-items: center;
}

.samedi-text-all{
  display: flex;
  flex-direction: column;
  align-items: center;
    gap: 60px;
}


.samedi-premier-block{
  width: 80%;
  position: relative;
}

.samedi-premier-block::before{
  content: "";
  position: absolute; 
  left: 40%;
  width: 20%; /* Set the width for the colored half */
  height: 100%;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;
}


.samedi-second-block{
  width: 50%;
  display: flex;
  flex-direction: column;
}

.samedi-image-container{
  width: 100%;
  box-sizing: border-box;
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.samedi-image-container img{
  max-width: 100%;
  height: auto;
}

.samedi-troisieme-block{
  width: 100%;
  position: relative;
}

.samedi-troisieme-block::before{
  content: "";
  position: absolute;
  top: 25%;
  width: 50%; /* Set the width for the colored half */
  height: 75%;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;
}

.samedi-quatrieme-block{
  width: 100%;
  position: relative;
}

.samedi-quatrieme-block::before{
  content: "";
  position: absolute; 
  left: 35%;
  width: 30%; /* Set the width for the colored half */
  height: 105%;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;
}

.samedi-cinquieme-block{
  width: 100%;
  position: relative;
  margin-top: 30px;
  margin-bottom: 65px;
}

.samedi-cinquieme-block::before{
  content: "";
  position: absolute;
  top: 0%;
  width: 50%; /* Set the width for the colored half */
  height: 100%;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;
}
.dimanche-premier-block{
  width: 80%;
  margin-bottom: 65px;
}


@media (min-width: 1000px){
	.dimanche-premier-block::before{
	  content: "";
	  position: absolute;
	  left: 25%;
	  width: 50%; /* Set the width for the colored half */
	  height: 150px;
	  margin: 60px 0;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	}

	.mobile-br{
		display: none;
	}
}


@media only screen and (max-width: 1000px){
	.programme-container {
	  display: flex;
	  flex-direction: column;
	  justify-content: center;
	  align-items: center;
	  gap: 60px;
	  margin: 0 auto;
	  max-width: 700px;
	  padding-top: 40px;
	  text-align: center;
	  font-family: 'Montserrat', sans-serif;
	  /*font-size: 20px;*/
	  line-height: 2;
	}
	
	.vendredi-all{
	    width: 100%;
    	  display: flex;
    	  flex-direction: column;
    	  gap: 60px;
    	  align-items: center;
	}

	.samedi {
            width: 100%;
          display: flex;
          flex-direction: column;
          gap: 60px;
          align-items: center;
        }
	
	.samedi-all{
	    width: 100%;
    	  display: flex;
    	  flex-direction: column;
    	  gap: 60px;
    	  align-items: center;
	}

	.samedi-text-all{
	    display: flex;
	    flex-direction: column;
	    gap: 60px;
	    align-items: center;
	}

	.programme-container h3{
	  color: #e56b84;
	  font-family: 'Bodoni Moda', serif;
	  font-size: 25px;
	}
	
	.change-font{
	  font-family: 'Bodoni Moda', serif;
	}
	
	.vendredi-premier-block{
	  width: 80%;
	  background: linear-gradient(to right,#f3967a10 50%, #ffffff 50%);
	}
	
	.vendredi-second-block{
	  width: 80%;
	  position: relative;
	  margin-bottom: 65px;
	}
	
	.vendredi-second-block::before{
	  content: "";
	  position: absolute;
	  top: 15%;
	  width: 50%; /* Set the width for the colored half */
	  height: 70%;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	}
	
	.samedi-premier-block{
	  width: 80%;
	  position: relative;
	}
	
	.samedi-premier-block::before{
	  content: "";
	  position: absolute; 
	  left: 30%;
	  width: 40%; /* Set the width for the colored half */
	  height: 100%;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	}
	
	
	.samedi-second-block{
	  width: 80%;
	  display: flex;
	  flex-direction: column;
	}
	
	.samedi-image-container{
	  width: 100%;
	  box-sizing: border-box;
	  padding: 10px;
	  display: flex;
	  justify-content: center;
	  align-items: center;
	}
	
	.samedi-image-container img{
	  max-width: 100%;
	  height: auto;
	}
	
	.samedi-troisieme-block{
	  width: 80%;
	  position: relative;
	}
	
	.samedi-troisieme-block::before{
	  content: "";
	  position: absolute;
	  top: 25%;
	  width: 50%; /* Set the width for the colored half */
	  height: 75%;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	}
	
	.samedi-quatrieme-block{
	  width: 80%;
	  position: relative;
	}
	
	.samedi-quatrieme-block::before{
	  content: "";
	  position: absolute; 
	  left: 35%;
	  width: 30%; /* Set the width for the colored half */
	  height: 105%;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	}
	
	.samedi-cinquieme-block{
	  width: 80%;
	  position: relative;
	  margin-top: 30px;
	  margin-bottom: 65px;
	}
	
	.samedi-cinquieme-block::before{
	  content: "";
	  position: absolute;
	  top: 0%;
	  width: 50%; /* Set the width for the colored half */
	  height: 100%;
	  background-color: #f3967a10; /* Change this to your desired color for the left half */
	  z-index: -1;
	}
	.dimanche-premier-block{
	  width: 80%;
	  background: linear-gradient(to right,#f3967a10 60%, #ffffff 40%);
	  margin-bottom: 65px;
	}

}

/*Inscription form*/
.rsvp_form-form {
  max-width: 800px;
  padding: 30px;
  display: flex;
  border-radius: 10px;
  flex-direction: column;
  align-items: center;
  background-color: white;
  opacity: 0.85;
  text-align: center;
}

@media(min-width:880px){
  	.rsvp_form-form{
  	  margin: 50px auto;
  	}
}
@media only screen and (max-width: 880px){
  	.rsvp_form-form{
  	  margin: 50px 10px;
  	}

}
.rsvp_form-form p {
  margin-bottom: 20px;
}

.small-line {
  height: 2px;
  width: 25%; 
  background-color: lightblue;
  margin: 30px auto; 
}

input,
select {
  width: 100%;
  padding: 10px 0px 10px 10px;
  margin-top: 5px;

}

button {
  display: block;
  margin-top: 10px;
}

.option-container {
  display: flex;
  margin: auto;
}

.option-container label {
  margin-right: 10px;
  margin-top:18px;
}

.option-container input[type="radio"] {
  margin-right: 5px;
  width: 25px;
  height: 25px;
  margin-top: 15px;
}

/*Minigame page*/



.minigame-container {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 26px;
}


.minijeux-block img{
  width: 80%;
}

.minijeux-block p{
  color: #e56b84; 
  font-family: 'Bodoni Moda', serif;
}


.minijeux-block::before{
  content: "";
  position: absolute;
  transform: translateX(-50%);
  width: 28%;
  aspect-ratio: 1 / 1;
  background-color: #f3967a10;
  z-index: -1;
}


.minijeux-block:hover{
  cursor: pointer;
  box-shadow: 0 0.4rem 1.4rem 0 rgba(243, 150, 122, 1);
  transform: translateY(-0.1rem);
  transition: transform 150ms;
}


.p-minigame{
  font-size: 19px;
  margin-bottom: 60px;
}


@media  (min-width: 925px) {
	.p-minigame br{
	  display: none;
	}
}

@media  (min-width: 850px) {

	.minigame-container{
	  flex-direction: row;
	}
	
	.minijeux-block{
	  width: 33%;
	}
	
	.minijeux-block::before{
	  width: 28%;
	  margin-top: 85px;
	}


}

@media only screen and (max-width: 850px) {

	.minigame-container{
	  flex-direction: column;
	}
	
	.minijeux-block{
	  width: 60%;
	}
	
	.minijeux-block::before{
	  width: 50%;
	  margin-top: 93px;
	}

}


#top-bar-text {
  color: #e56b84;
  font-family: 'Montserrat', sans-serif;
}

#top-bar-text a {
  color: #e56b84;
  text-decoration: none;
}

#top-bar-text a:hover {
  color: black;
  text-decoration: none;
}

.nav_bar_li a {
  color: black;
  text-decoration: none;
}

.nav_bar_li a:hover {
  color: lightblue;
  text-decoration: underline;
}



/*Noce*/
.jap-images{
  position: relative;
  /*display: flex;
  gap: 2%;*/
  margin-bottom: 2%;
}

.jap-images img{
  width: 20%;
  height: auto;
  object-fit: contain;
  padding: 40px 1%;
}

.countdown-noce{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
  /*margin: 0 auto;
  max-width: 700px;
  padding-top: 40px;*/
  margin: 40px 0 25px;
  height: 100px;
  font-size: 4em;
  text-align: center;
  font-family: 'Montserrat', sans-serif;
}



.noce-container {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  font-family: 'Montserrat', sans-serif;
  padding: 0 2% 50px;
  text-align: center;
  line-height: 2;
  font-size: 17px;
}

.noce-accueil-text{
  text-align: center;
  /*line-height: 2;*/
  display: flex;
    justify-content: center;
}



.noce-accueil-text::before{
  content: "";
  position: absolute;
  width: 100%; /* Set the width for the colored half */
  height: 130px;
  background-color: #f3967a10; /* Change this to your desired color for the left half */
  z-index: -1;

}

@media only screen and (max-width: 850px) {

	.jap-images{
		display: flex;
  		gap: 0.5%;
	}

	.jap-images img{
		 width: 33%;
		 padding: 0;
	}

	.noce-container {
		font-size: 13px;
	}

	.noce-size{
		font-size: 19px;
	}

	.noce-accueil-text::before{
		height: 105px;
	}

	.countdown-noce{
		font-size: 2em;
		gap: 4%;
		margin: 0;
	}

}	

@media (min-width: 850px) {
	.line-break-mobile{
		display: none;
	}

	.noce-size{
		font-size: 22px;
	}
}




/*Modification of the website for mobile*/
@media (min-width: 850px) {
	#top-bar {
	  background-color: white;
	  padding: 20px;
	  position: fixed;
	  top: 0;
	  left: 0;
	  z-index: 100;
	}
	
	
	#nav-container {
	  background-color: white;
	  padding-top: 20px;
	  height: 40px;
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100%;
	  z-index: 99;
	  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
	}
	
	#nav {
	  display: flex;
	  justify-content: right;
	  padding-right: 50px;
	}
	
	.nav_bar {
	  list-style: none;
	  padding: 0;
	  margin: 0;
	  display: flex;
	  justify-content: space-between;
	}
	
	.nav_bar_li {
	  margin-right: 40px;
	}
	
	
	.mobile-nav-toggle{
	  display: none;
	}
}


@media only screen and (max-width: 850px) {

	#top-bar {
	  background-color: white;
	  padding: 20px 0;
	  position: fixed;
	  top: 0;
	  z-index: 100;
	  text-align: center;
	  width:100%;
	  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
	}
	
	
	.nav_bar{
	  position: fixed;
	  inset: 0 0 0 70%;
	  z-index: 99;
	  flex-direction: column;
	  display: flex;
	  padding-top: 70px;
	  padding-left: 8vw;
	  margin-bottom: 0;
	  background: hsl(14 60% 85% /1);
	  transform: translateX(100%);
	  transition: transform 350ms ease-out;
	}
	
	.nav_bar[data-visible="true"]{
	  transform: translateX(0%);
	}
	
	
	
	.nav_bar_li{
	  padding: 2vh 0;
	}
	
	
	
	
	
	.nav_bar {
	  list-style: none;
	}
	
	
	.mobile-nav-toggle{
	  display: block;
	  position: fixed;
	  background: url("../Resources/nav-open.svg");
	  background-repeat: no-repeat;
	  background-size: cover;
	  border: 0;
	  width: 30px;
	  aspect-ratio: 1;
	  z-index:200;
	  margin-top: 0;
	  top: 13px;
	  right: 30px;
	}
	
	.mobile-nav-toggle[aria-expanded="true"]{
	  background: url("../Resources/nav-close.svg");
	  background-size: cover;
	}

}







/*Memory css code*/

.programme-container-mem {
  display: flex;
  flex-direction: column;
  text-align: center;
  font-family: 'Montserrat', sans-serif;
}


.programme-container-mem h3{
  color: #e56b84;
  font-family: 'Bodoni Moda', serif;
  font-size: 25px;
}


.game-frame{
    text-align: center;
    margin: 0px auto;
}

.actions {
    display: flex;
    justify-content: center;
}

.actions button {
    border-radius: 50px;
    background-color: lightblue;
    border: none;
    text-align: center;
    color: white;
    transition: background-color 0.3s;
    padding: 10px 10px;
    text-decoration: none;
    width: 90px;
}

/*Change grid for mobile 4x4 ->?x? or change grid size*/


.card {
  /*height: 150px;*/
  width: 150px;
  aspect-ratio: 1 / 1;
  border-radius: 10px;
  background-color: white;
  position: relative;
  transform-style: preserve-3d;
  transition: all 0.5s ease-in-out;
  border: solid 1px;
  border-color: #e56b84;
}


.card.flipped {
  transform: rotateY(180deg);
}

.front, .back {
    backface-visibility: hidden;
    position: absolute;
    border-radius: 10px;
    top: 0;
    left: 0;
    /*height: 100%;*/
    width: 100%;
    aspect-ratio: 1 / 1;
}

.card .front {
  display: flex;
  justify-content: center;
  align-items: center;
}


.card .front {
  transform: rotateY(180deg);
}


/*@media (min-width: 700px) {*/
.grid-container {
  display: grid;
  justify-content: center;
  grid-gap: 16px;
  grid-template-columns: repeat(4, 150px);
}
.card .back {
  background-image: url("../Memory/assets/logo.png");
  width: 150px;
  /*height: 150px;*/
  aspect-ratio: 1 / 1;
  background-position: center center;
  background-size: cover;
  backface-visibility: hidden;
}
.front-image {
  width: 140px;
  /*height: 140px;*/
  aspect-ratio: 1 / 1;
}

/*}*/


@media (min-width: 870px){
	.grid-container {
		grid-template-columns: repeat(5, 150px);
	}
}

@media only screen and (max-width: 700px) {

	.game-frame{
	  margin: 0px 2% !important;
	}
	
	
	.grid-container {
	  grid-gap: 2% !important;
	  grid-template-columns: repeat(4,22.5%)!important;
	  margin-bottom: 10%;
	}
	
	.card{
	  width: 100% !important;
	}
	
	.back{
	  width: 100% !important;
	}
	
	.front{
	  width: 100% !important;
	}
	.front-image{
	  width: 95% !important;
	}
	
}





/*Quiz game*/
.quiz-container{
  margin: 0 auto 100px;
  width: 80%;
  max-width: 1000px;
  font-family: 'Montserrat', sans-serif;
}

.quiz-container h2{
  margin-bottom: 4rem;
}

.quiz.game{
  justify-content: center;
  display: flex;
  flex-direction: column;
}


.choice-container{
  display: flex;
  /*margin-bottom: 0.5rem;
  width: 100%;*/
  margin: 10px 50px;
  font-size: 1.8rem;
  border: 0.1rem solid rgb(86, 165, 235, 0.25);
  background-color: white;
}


@media (min-width 850px){

	.choice-container:hover{
	  cursor: pointer;
	  box-shadow: 0 0.4rem 1.4rem 0 rgba(86, 185, 235, 0.5);
	  transform: translateY(-0.1rem);
	  transition: transform 150ms;
	}
}

.choice-prefix{
  padding: 1.5rem 2.5rem;
  background-color:#e56b84;
  color: white;
  margin: 0 0;
}

.choice-text{
  padding: 1.3rem;
  margin: 0 0;
}


.correct{
  background-color: #28a745;
}

.incorrect{
  background-color: #dc3545;
}

.hud{
  display: flex;
  justify-content: space-between;
  padding: 0 10%;
}

.hud-prefix{
  text-align: center;
  font-size: 1.5rem;
}

.hud-main-text{
  text-align: center;
  font-size: 1.5rem;
}


.quiz-end{
  display: flex;
  flex-direction: column;
  max-width: 800px;
  margin: auto;
  justify-content: center;
  align-items: center;
}


.quiz-end input,
.quiz-end button {
  width: 300px;
  height: 40px;
  margin: 10px auto;
  font-size: 1.2rem;
}

#question{
	text-align: center;
	    font-size: 1.5rem;
}

.quiz-end h3{
  font-size: 2rem;
}


.quiz-end a{
  border-radius: 50px;
  background-color: lightblue;
  border: none;
  text-align: center;
  color: white;
  transition: background-color 0.3s;
   width: 300px;
  margin: 10px auto;
  padding: 10px 0;
  font-size: 1.2rem;
  text-decoration: none;
}

.quiz-end a:hover{
  background-color: darkblue;
}


@media only screen and (max-width: 850px) {

	.choice-container{
		 margin: 10px 0;
		 font-size: 1.3rem;
	 }

	 #question{
            font-size: 1.2rem !important;
	}

	.hud-prefix{
		font-size: 1.2rem;
	}

	.hud-main-text{
		font-size: 1.2rem;
	}


}

/*Crossword*/


.programme-container-cross {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  text-align: center;
  font-family: 'Montserrat', sans-serif;
  padding: 0 5%;
}


.programme-container-cross h3{
  color: #e56b84;
  font-family: 'Bodoni Moda', serif;
  font-size: 25px;
}


.crossword-container{
  width: auto;
  max-width: 1300px;
  margin: auto;
  padding-bottom: 30px;
}


#puzzle {
	width:100%;
	margin: 0;
	padding: 10px;
	border: 1px solid black;
}

.square{
	width:30px;
	height:30px;
	margin: 0;
	padding: 0;
	border-collapse: collapse;
    position: relative;
}

.empty{
    background-color:white;
}

.letter{
    border: 1px solid black;
    text-align: center;
    cursor: pointer;
}



#buttons_container{
    clear: both;
    padding-top: 20px;
    display: flex;
    flex-direction: row;
    gap: 30px;
    justify-content: center;

}


@media (min-width: 1300px){
	#hints_container{
	  float: left;
	    margin-left: 25px;
	}
	
	#puzzle_container{
	        float: left;
	}

}

@media (min-width: 726px) and (max-width: 1300px) {
	#hints_container{
	  float: left;
	  display: flex;
	    margin: auto;
	    width: 100%;
	    justify-content: center;
	    gap: 30px;
	}
	
	
	#puzzle_container{
	    margin: auto;
	    display: flex;
	    justify-content: center;
	    width: 890px;
	}

}


@media (max-width: 726px){

	#buttons_container{
	  gap: 10px;
	  padding: 20px 10px;
	}
	
	.hint{
	    justify-content: center;
	    display: flex;
	}
	
	#vertical_hints_container h3{
	  display: flex;
	    justify-content: center;
	}
	#horizontal_hints_container h3{
	  display: flex;
	    justify-content: center;
	}

}

.btn-cross{
border-radius: 50px;
    background-color: lightblue;
    border: none;
    text-align: center;
    color: white;
    transition: background-color 0.3s;
    padding: 10px 10px;
    text-decoration: none;
    width: 90px;
}

.btn-cross:hover{
  background-color: darkblue;
}

.active{
    border-color: red;
}

.question_number{
    position: absolute;
    font-size: 12px;
    color: grey;
    left: 3px;
    top: 3px;
}

td{
    position:relative;
}






/*Where's BBD ?*/

#waldo-image{
  width: 95%;
}

.game-frame_waldo{
    text-align: center;
    margin: 0px auto;
    padding-bottom: 100px;
}




/*Waldo page*/



.waldo-container {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 26px;
}


.waldo-block img{
  width: 80%;
}

.waldo-block p{
  color: #e56b84; 
  font-family: 'Bodoni Moda', serif;
}


.waldo-block::before{
  content: "";
  position: absolute;
  transform: translateX(-50%);
  width: 28%;
  aspect-ratio: 3 / 2;
  background-color: #f3967a10;
  z-index: -1;
}


.waldo-block:hover{
  cursor: pointer;
  box-shadow: 0 0.4rem 1.4rem 0 rgba(243, 150, 122, 1);
  transform: translateY(-0.1rem);
  transition: transform 150ms;
}


.p-waldo{
  font-size: 19px;
  margin-bottom: 60px;
}


@media  (min-width: 925px) {
	.p-waldo br{
	  display: none;
	}
}

@media  (min-width: 850px) {

	.waldo-container{
	  flex-direction: row;
	}
	
	.waldo-block{
	  width: 45%;
	}
	
	.waldo-block::before{
	  width: 39%;
	  margin-top: 85px;
	}

	.waldo-pad{
	  padding-top: 30px;
	}


}

@media only screen and (max-width: 850px) {

	.waldo-container{
	  flex-direction: column;
	}
	
	.waldo-block{
	  width: 60%;
	}
	
	.waldo-block::before{
	  width: 50%;
	  margin-top: 93px;
	}

}




/* Popup for wedding picture */

#popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1;

}

#popup-overlay[popup_hidden="true"] {
    display: none;
}

#popup {
    max-width: 400px;
    width: 80%;
    height: 310px;
    background-color: white;
    opacity: 0.9;
    border-radius:10px;
    padding: 20px;
    position: absolute;
    top: 40%;
    left:50%;
    transform: translate(-50%, -50%);
    z-index: 99;
}

#popup[popup_hidden="true"] {
    display: none;
}
#popup-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 20px;
}

#popup h2 {
    text-align: center;
    font-family:'Montserrat', sans-serif;
}

#popup p {
    text-align: center;
    font-family:'Montserrat', sans-serif;
    padding: 15px 35px;
}

#open-drive-btn {
    max-width: 300px;
    width: 100%;
    height: 40px;
    margin-bottom: 10px;
    border-radius: 50px;
    background-color: lightblue;
    padding: 10px 20px;
    color: white;
    border: 0;
}


#open-drive-btn:hover {
    background-color: darkblue;
}


#close-popup {
    display: block;
    position: fixed;
    background:url("../Resources/nav-close.svg");
    width: 20px;
    aspect-ratio: 1;
    z-index: 200;
    background-size: cover;
    border: 0;
    top: 5%;
    right: 5%;

}


