@charset "utf-8";
/* CSS Document */

	  * {
  margin: 0;
  padding: 0;
  box-sizing: border-box;  /* Permet une gestion plus prévisible de la taille des éléments */
}
	  
    /* 
       1) Page pleine, fond #151515 
    */
    html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  background-color: #151515;
  overflow: hidden;
		font-family: 'Montserrat', sans-serif;
}
	  
	  /* Header - placé en haut de la page */
#header {
  width: 100%;
  background-color: #232323;
  color: #ffffff;
  text-align: center;
  padding: 0;
  position: relative;
	background-color: blue;
	background-color:#171717;
	min-height: 50px;
	font-size: clamp(1rem, 1vw, 1.5rem);
	
	  /* Flexbox pour centrer le texte verticalement et horizontalement */
  display: flex;
  align-items: center;   /* Centre verticalement */
  justify-content: center; /* Centre horizontalement */
	white-space: nowrap;
	border-bottom: 5px #000000 solid;
}
	  
	  #header a
	  {
		  text-decoration:underline;
		  color: gold;
		  
	  }

/* Section centrale - prendra l'espace restant entre le header et le footer */
#mainContent {
  width: 100%;
	  height: calc(100vh - 15%); /* Utilisation d'unités relatives pour garantir une hauteur fluide */
  
  
  overflow-y: auto; /* Permet le défilement dans la section centrale si le contenu dépasse */
  
  box-sizing: border-box;
  background-color: #000000;
	
  color: white;
  text-align: center;
}

/* Conteneur spécifié en haut de la page */
.container {
  position: fixed;
      bottom: 0;  /* Placer le conteneur en bas de la page */
      left: 0;
  width: 100%;
  height: 15%; /* 25% de la hauteur de la page */
	min-height: 85px;
	background-color: red;
	background-color:#171717;
	  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
	border-top: 5px #000000 solid;
}

/* Positionnement des éléments dans la .container (centrés) */
.display-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

/* L’ANNÉE (toujours au centre, mais dans la nouvelle zone) */
#countdown {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1);
  font-size: 60vh;
	
  font-family: 'Montserrat', sans-serif;
  text-transform: uppercase;
  font-weight: 800;
  color: #ffffff;
  -webkit-text-stroke: 1px #232323;
  text-stroke: 1px #232323;
  transition: none;
  opacity: 1;
  line-height: 1;
}

/* Le mot (toujours centré, au-dessus de l’année) */
#word {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1);
  font-size: 5vh;
	font-size: clamp(0px,5vh, 2rem);
	
  font-family: 'Montserrat', sans-serif;
  text-transform: uppercase;
  font-weight: 800;
  color: #ffffff;
  z-index: 999;
  transition: none;
  opacity: 0;
  line-height: 1;
	white-space: nowrap;
}

/* Message final */
#finalMessage {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #ffffff;
  font-family: 'Montserrat', sans-serif;
  text-transform: uppercase;
  font-size: 5vw;
  font-weight: 800;
  text-align: center;
}

/* Lien “Passer l’introduction” */
#skipLink {
  color: #fff;
  text-decoration: underline;
  position: absolute;
  bottom: 10px;
  left: 10px;
  font-family: sans-serif;
  z-index: 9999;
  cursor: pointer;
}
	  
	  
	  #logo-container, #intro, .ligne {
    width: 75vw; /* Toujours 75% de la largeur de la fenêtre */
    max-width: 920px; /* Limite maximale */
    min-width: 260px; /* Limite minimale pour les petits écrans */
    margin: 0 auto; /* Centre horizontalement */
    text-align: center; /* Aligne le texte au centre si nécessaire */
}

	#logo-container{
		margin-top: 2%;
	}	
	
/* Styles spécifiques pour #intro */
#intro {
    padding-top: 20px;
	padding-bottom: 20px;
    
	font-size: clamp(8px, 3vw, 40px);
    font-style: italic;
    color: #999999;
	color: white;
}

/* Styles spécifiques pour .ligne */
.ligne {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #0c0c0c;
    border-radius: 15px;
    padding: 7px;
    padding-bottom: 0px;
    margin: 4px auto;
	text-align: left;
	transition: transform 0.3s;
}

.ligne:hover {
	transform: scale(1.05);
}

#logo {
    width: 100%; /* Le logo prend toute la largeur de son conteneur */
    height: auto; /* Conserve le ratio d'origine */
}
	
#conteneur-donnees {
	position: relative;
	margin: 20px;
	margin-bottom: 100px;
}

.ligne-donnees {
	padding: 10px;
	border: 1px solid #ccc;
	margin-bottom: 10px;
	background-color: #f9f9f9;
}
		
		


.numero {
	font-size: 35px;
	width: 12%;
	font-size: clamp(8px, 2vw, 35px);
	
	color:#B1B1B1;
	font-style: italic;
	text-align: center;
}

.image {
	width: 150px;
	height: 150px;
	    width: 75%; /* Le logo prend toute la largeur de son conteneur */
    height: auto; /* Conserve le ratio d'origine */
	object-fit: cover;
	cursor: pointer;
	border:2px solid #0c0c0c; border-radius:15px;
}

.titre {
	flex-grow: 1;
	padding: 1%;
	font-size: 25px;
	font-size: clamp(8px, 2vw, 20px);
	font-weight: normal;
}		
	
	.subtitle {
	
font-size: clamp(8px, 2vw, 22px);
		color:#666666;
		
		 font-style:italic;
		padding-top: 10px;
		
	}
		
#loader {
	display: none;
	position: fixed;
	top: 75%;
	left: 93%;
	transform: translate(-50%, -50%);
	z-index: 1000;
}


.spinner {
	border: 8px solid rgba(255, 255, 255, 0.3);
	border-top: 8px solid #ffffff;
	border-radius: 50%;
	width: 60px;
	height: 60px;
	animation: spin 1s linear infinite;
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}
		
.double-spinner {
	width: 60px;
	height: 60px;
	position: relative;
	margin: 0 auto;
}

.double-bounce1, .double-bounce2 {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: white;
    opacity: 0.6;
    position: absolute;
    top: 0;
    left: 0;
    animation: doubleBounce 2s infinite ease-in-out;
}

.double-bounce2 {
    animation-delay: -1s;
}

@keyframes doubleBounce {
    0%, 100% {
        transform: scale(0);
    }
    50% {
        transform: scale(1);
    }
}
		
#barre-recherche {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-bottom: 2%;
}
#message-resultat
	{
		 text-align: center;
		color: #9C0002;
		font-size: clamp(20px, 4vw, 30px);
		margin-top: 2%;
		font-family: 'Montserrat', sans-serif;
  text-transform: uppercase;
	}
#icone-loupe {
    display: flex;
    align-items: center;
    padding: 0 10px;
    color: white;
	display: none;
}

#champ-recherche {
    background-color: transparent;
    border: none;
    border-bottom: 1px solid #666666;
    color: white;
    padding: 8px;
    font-size: 16px;
	font-size: clamp(8px, 2vw, 16px);
    width: 60vw; /* Toujours 75% de la largeur de la fenêtre */
    max-width: 800px; /* Limite maximale */
    min-width: 170px; /* Limite minimale pour les petits écrans */
    box-sizing: border-box; /* Inclut le padding dans le calcul de la largeur */
    transition: background-color 0.3s ease;
}

#champ-recherche:focus {
    outline: none;
}

#conteneur-effacer {
    display: flex;
    align-items: center;
    position: relative;
}

#effacer-recherche {
    display: none;
    cursor: pointer;
    color: #9C0C0E;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    padding: 0;
}

#effacer-recherche:hover {
    color: #ff0000;
}
	

	
	.picture
	{
		width: 18%;
	}
	
	@media (max-width: 319px) {
    .picture {
        display: none; /* Masque l'image complètement sur les petits écrans */
    }
		
		.numero
		{
			display: none;
		}
		.titre
		{
			margin: 3%;
		}
		
		.subtitle
		{display:none;}
		

		
}
		.titre a, .titre a:visited
		{
			text-decoration: underline;
			color:white;
		}
	  
	  		.titre a:hover
		{
			text-decoration: none;
			
			
		}
	  
/* Largeur de la barre de défilement */
::-webkit-scrollbar {
    width: 10px;
}

/* Couleur de fond de la barre de défilement */
::-webkit-scrollbar-track {
    background: #181818; /* Fond sombre */
    border-radius: 5px;
}

/* Couleur de la poignée de défilement */
::-webkit-scrollbar-thumb {
    background: #333; /* Gris foncé */
    border-radius: 5px;
}

/* Couleur de la poignée de défilement au survol */
::-webkit-scrollbar-thumb:hover {
    background: #555;
}