/* Appliquer un fond de page avec une superposition semi-transparente */
body {
  margin: 0;
  padding: 0;
  min-height: 100vh; 
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: url("/images/longueuil-background.jpg") no-repeat center center /
    cover; /* Image de fond */
  font-family: "Roboto", sans-serif;
  position: relative; 
  overflow: hidden; 
}

/* Superposition semi-transparente */
body::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(
    circle,
    rgba(70, 106, 120, 0.2) 0%, /* Opacité réduite de 0.4 à 0.2 */
    rgba(148, 187, 233, 0.5) 100% /* Opacité réduite de 0.8 à 0.5 */
);

  z-index: 1; /* Assure que la superposition est en dessous du contenu */
}

/* Style pour le logo */
.logo {
  position: fixed; 
  top: 10px; 
  left: 50%; 
  transform: translateX(-50%) scale(1); 
  max-width: 600px; 
  height: 400px;
  z-index: 10; 
  animation: bounce 3s infinite ease-in-out; 
  align-items: center;
  width: 300px;
}

/* Conteneur principal */
.accueil {
  position: relative;
  z-index: 5; 
  text-align: center;
  margin-top: 200px; 
  animation: slide-up 1.5s ease-out; 
}

/* Texte et boutons dans un conteneur */
.contenu {
  display: inline-block;
  padding: 20px 30px;
  background-color: rgba(0, 0, 0, 0.5); 
  border-radius: 10px; 
  z-index: 5;
  animation: fade-in 2s ease-in-out; 
}

/* Style pour le texte */
.contenu p {
  font-size: 1.5rem;
  margin-bottom: 20px;
  color: white; 
  animation: text-fade 3s infinite; 
}

/* Styles pour les boutons */
.btn {
  background-color: transparent; 
  color: white; 
  padding: 10px 20px;
  margin: 10px;
  border: 1px solid white; 
  border-radius: 6px; 
  cursor: grab;
  font-size: 1rem;
  transition: background-color 0.3s ease, transform 0.3s ease,
    box-shadow 0.3s ease;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3); 
}

/* Effet au survol (hover) */
.btn:hover {
  background-color: rgba(
    255,
    255,
    255,
    0.1
  ); 
  border-color: rgba(
    255,
    255,
    255,
    0.8
  ); 
}

/* Animations */
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes slide-up {
  from {
    transform: translateY(50px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    transform: translateX(-50%) translateY(0) scale(1);
  }
  40% {
    transform: translateX(-50%) translateY(-15px) scale(1.05);
  }
  60% {
    transform: translateX(-50%) translateY(-10px) scale(1.02);
  }
}

@keyframes text-fade {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.7;
  }
}

/* Media Queries pour les appareils plus petits */
@media (max-width: 768px) {
  .logo {
    max-width: 300px; 
    top: 20px;
    height: 100%;
    align-items: center;
    width: 500px;
    height: auto;
  }

  .accueil {
    margin-top: 200 px; 
  }

  .contenu {
    padding: 25px 10px; 
  }

  .contenu p {
    font-size: 1rem; 
    font-weight: 50;
  }

  .btn {
    padding: 4px 5px; 
    font-size: 0.9rem; 
    background-color: transparent;
  }
}
