html  {
        font-family: sans-serif;
        text-decoration: none;
      }

      body 
      {
        margin: 0;
		background-image: url('../image/clouds.png');
		background-size: cover; /* Vous pouvez ajuster la taille selon vos besoins */
		background-attachment: fixed;	
      }
      
 /* image centrale */
.container 
{
  width: 90%; /* Largeur de la zone d'image */
  max-width: 800px; /* Largeur maximale de la zone d'image */
  height: 70vh; /* Hauteur de la zone d'image */
  border: 2px solid black; /* Bordure autour de la zone */
  overflow: hidden; /* Cache toute partie de l'image dépassant de la zone */
  
  display: flex;
  justify-content: center;
  align-items: center;
  
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: auto;
}

/* Media query pour les écrans plus petits, comme les téléphones */
@media only screen and (max-width: 932px) 
{
  .container {
    width: 90%; /* Ajuster la largeur pour s'adapter à l'écran plus petit */
    max-width: none; /* Supprimer la largeur maximale pour les petits écrans */
    height: 70vh; /* Ajuster la hauteur pour s'adapter à l'écran plus petit */
    top: 55%; /* Réinitialiser la position verticale */
    left: 50%; /* Réinitialiser la position horizontale */
    transform: translate(-50%, -50%); /* Réinitialiser la transformation */
  }
}
.imagetitre
{
    position: absolute;
    top: 50%;
    left: 35%;
    transform: translate(-50%, -50%);
    max-width: 70%; /* Ajoutez cette règle */
    height: auto; /* Pour conserver le ratio hauteur/largeur */
}

/* Fin image centrale */

/* PC */

header {
    background: linear-gradient(90deg, rgba(95,92,142,1) 0%, rgba(203,173,190,1) 33%, rgba(128,163,191,1) 66%, rgba(80,116,158,1) 100%);
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

nav ul 
{
    list-style: none;
    margin: 0;
    padding: 0;
}

nav ul li 
{
    display: inline-block;
    margin-right: 20px;
}

nav ul li a 
{
    color: white;
    text-decoration: none;
    font-size: 18px;
    padding: 5px 10px;
}

nav ul li a:hover 
{
    background-color: rgba(255, 255, 255, 0.2);
    border-radius: 5px;
}

/* Fin PC */


							/* Mobile Menu Hamburger */
.navbar 
{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 20px;
}

.hamburger {
    display: none; /* Masqué par défaut */
    flex-direction: column;
    cursor: pointer;
}

.hamburger .bar {
    width: 25px;
    height: 3px;
    background-color: white;
    margin: 3px 0;
    transition: background-color 0.3s;
}

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

.menu li {
    margin-right: 20px; /* Espace entre les éléments */
}

.menu li:last-child {
    margin-right: 0;
}

@media screen and (max-width: 768px) {
    .menu {
        display: none; /* Masque le menu en version mobile */
        flex-direction: column;
        align-items: flex-end;
        position: absolute;
        top: 50px; /* Ajustez si nécessaire */
        right: 0;
        background-color: rgba(0, 0, 0, 0.8);
        padding: 20px;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
        z-index: 1;
    }

    .menu.show {
        display: flex; /* Affiche le menu en version mobile lorsqu'il est cliqué */
    }

    .menu.show li {
        margin-bottom: 10px; /* Espace entre chaque élément du menu déroulant */
    }

    .hamburger {
        display: flex; /* Affiche le bouton hamburger en version mobile */
    }
}



								/* Fin Hamburger Mobile */

/* Texte */
      h1 
      {
        text-align: left;
        color: white;
        line-height: 50px;
        margin: 0;
      }
      
      h2 
      {
		color: white;
		font-size: 30px;
		font-family: Kitsch;
		text-align: center;	
		margin: auto;
		}	
      

      article 
      {
        padding: 10px;
        margin: 10px;
        background: none;
        position: relative;
        top: 110px;
        text-align: center;
      }

      /* Flexbox CSS ici */

      section 
      {
        display: block;
      }

      article 
      {
        flex: 1 200px;
      }

      article:nth-of-type(3) 
      {
        flex: 3 200px;
        display: flex;
        flex-flow: column;
      }

      article:nth-of-type(3) div:first-child 
      {
        flex: 1 100px;
        display: flex;
        flex-flow: row wrap;
        align-items: center;
        justify-content: space-around;
      }
      	
		footer 
		{
		position: fixed;
		bottom: 0;
		width: 100%;
		padding: 10px;
		text-align: center;
		z-index: 1;
		}


												/* Page HTML Connexion */

.login-bar 
{
  width: 90%; /* Largeur de la zone d'image */
  max-width: 600px; /* Largeur maximale de la zone d'image */
  height: 55vh; /* Hauteur de la zone d'image */
  border: 1px solid black; /* Bordure autour de la zone */
  overflow: hidden; /* Cache toute partie de l'image dépassant de la zone */
  
  display: flex;
  justify-content: center;
  align-items: center;
  
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: auto;
  padding: 10px;
}

/* Style des libellés */
.login-bar label 
{
    display: block; /* Affiche les libellés sur une nouvelle ligne */
    margin-bottom: 5px; /* Ajoute un espace entre chaque libellé et son champ d'entrée */
}

/* Styles des éléments du formulaire */
.login-bar input[type="text"],
.login-bar input[type="password"],
.login-bar button 
{
    width: 100%; /* Ajuste la largeur des champs d'entrée et du bouton pour remplir la largeur de leur conteneur */
    padding: 5px;
    margin-bottom: 10px; /* Ajoute un espace entre chaque champ d'entrée */
    border: none;
    border-radius: 4px;
    font-size: 16px;
}

/* Style du bouton de connexion */
.login-bar button 
{
    background-color: #4CAF50;
    color: white;
    cursor: pointer;
    transition: background-color 0.3s ease;

	
}

/* Au survol du bouton */
.login-bar button:hover 
{
    background-color: #45a049;

}

form
{
	color: white;
	font-weight: bold;
}

.inscription
{
	position: fixed;
	bottom: 0;
	font-size: 26px;
	font-weight: bold;
}	

.reussite
{
	font-weight: bold;
	font-size: 50px;
	color:  #3eea0b ;
}
	
																/* Fin page Connexion */
																
																/* Defilement barre */			
																
.notice
{
	white-space: nowrap;
	background: linear-gradient(90deg, rgba(95,92,142,1) 0%, rgba(203,173,190,1) 33%, rgba(128,163,191,1) 66%, rgba(80,116,158,1) 100%);
	position: fixed;
	top:80%;
	width: 100%;
	padding: 20px;
    align-items: center;
    justify-content: space-between;
    border: 1px solid white;  
    overflow: hidden;
}



.notice span a
{
	font-weight: 600;
	padding: 0 20px;
	font-size: 19px;
}
a
{
	margin: 0;
	color: #ffffff;
}


.defilement	
{
  white-space: nowrap;
  animation: scroll 12s linear;
  animation-iteration-count: infinite;
  animation-delay: -6s;

}

@keyframes scroll {
  -% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(-100%);
  }
}


.bibliographie
{
  width: 100%; /* Largeur de la zone d'image */
  max-width: 1400px; /* Largeur maximale de la zone d'image */
  height: 55vh; /* Hauteur de la zone d'image */
  overflow: hidden; /* Cache toute partie de l'image dépassant de la zone */
  
  display: flex;
  justify-content: center;
  align-items: center;
  
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: auto;
  padding: 5px;
  color: white;
  font-weight: bold;
}

.texte-bibliographie
{
	color: solid black;
	font-size: 25px;
	position: relative;	
	text-align: center;
}

		
							/* Partie CSS Musique */
							
.image-album 
{
  width: 100%; /* Largeur de la zone d'image */
  max-width: 2000px; /* Largeur maximale de la zone d'image */
  height: 30vh; /* Hauteur de la zone d'image */
  border: 2px solid black; /* Bordure autour de la zone */
  overflow: hidden; /* Cache toute partie de l'image dépassant de la zone */
  
  display: flex;
  justify-content: center;
  align-items: center;
  
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: auto;
  padding: 10px;
}

.texte-musique
{
color: black;
text-align: center;
}

.album-taille
{
	width: 220px;
	height: auto;
	padding: 20px;
}

.album-taille
{
  white-space: nowrap;
  animation: scroll 1s linear infinite;

}

@keyframes scroll {
  0% {
    transform: translateX(0%);
    opacity: 0;
  }
  100% {
    transform: translateX(-100%);
    opacity: 1;
  }
}


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

.album-taille
	{
		padding: 20px;
		transform: scale(15);
	}

}


/* Partie Boutique */
.gallery {
    width: 100%;
    position: relative;
}

.gallery-container {
    align-items: center;
    display: flex;
    height: 400px;
    margin: 0 auto;
    max-width: 1000px;
    position: relative;
}

.gallery-item {
    height: 200px;
    opacity: 0;
    position: absolute;
    transition: all 0.3s ease-in-out;
    width: 330px;
    z-index: 0;
    border-radius: 15px;
    background-size: contain;
}

.gallery-item-1 {
    left: 15%;
    opacity: 0.4;
    transform: translateX(-50%);
}

.gallery-item-2,
.gallery-item-4 {
    height: 250px;
    opacity: 0.8;
    width: 380px;
    z-index: 1;
}

.gallery-item-2 {
    left: 30%;
    transform: translateX(-50%);
}

.gallery-item-3 {
    box-shadow: -2px 5px 33px 6px rgba(0, 0, 0, 0.35);
    height: 300px;
    opacity: 1;
    left: 50%;
    transform: translateX(-50%);
    width: 430px;
    z-index: 2;
}

.gallery-item-4 {
    left: 70%;
    transform: translateX(-50%);
}

.gallery-item-5 {
    left: 85%;
    opacity: 0.4;
    transform: translateX(-50%);
}

.gallery-controls-container {
    display: flex;
    justify-content: center;
    margin-top: 10px;
    position: absolute;
    bottom: -50px; /* Ajuster selon vos besoins */
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
}

.gallery-controls {
    display: flex;
}

.gallery-controls button {
    background-color: transparent;
    border: 0;
    cursor: pointer;
    font-size: 30px;
    margin: 0 50px;
    padding: 0 12px;
    text-transform: capitalize;
    position: relative;
    left: 35%;
}

.gallery-controls-previous::before,
.gallery-controls-next::before {
    border: solid #000;
    border-width: 0 5px 5px 0;
    content: '';
    display: inline-block;
    height: 15px;
    padding: 10px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 15px;
}

.gallery-controls-previous::before {
    left: -30px;
    transform: rotate(135deg) translateY(-50%);
    top: -15px;
}

.gallery-controls-previous:hover::before {
    left: -40px;
}

.gallery-controls-next::before {
    right: -30px;
    top: 15px;
    transform: rotate(-45deg) translateY(-50%);
}

.gallery-controls-next:hover::before {
    right: -40px;
}

.gallery-nav {
    bottom: -15px;
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0;
    position: absolute;
    width: 100%;
}

.gallery-nav li {
    background: #ccc;
    border-radius: 50%;
    height: 10px;
    margin: 0 16px;
    width: 10px;
}

.gallery-nav li.gallery-item-selected {
    background: #555;
}

						/* Section Contact */
						
.contact-section {
    color: white;
    padding: 50px;
    text-align: center;
}

.texte-contact h2 {
    font-size: 30px;
    margin-bottom: 20px;
}

.texte-contact p {
    font-size: 18px;
    margin-bottom: 40px;
}

.contact-form-container {
    max-width: 600px;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.1);
    padding: 20px;
    border-radius: 10px;
}

.contact-form label {
    display: block;
    font-weight: bold;
    margin-bottom: 10px;
}

.contact-form input,
.contact-form textarea {
    width: 100%;
    padding: 10px;
    margin-bottom: 20px;
    border: none;
    border-radius: 5px;
    font-size: 16px;
}

.contact-form button {
    background-color: #4CAF50;
    color: white;
    padding: 15px 30px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 18px;
}

.contact-form button:hover {
    background-color: #45a049;
}
