/* Styles pour améliorer la visibilité du texte sur le hero */
.hero-background::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1;
}

/* Assurer que le contenu du hero est au-dessus de l'overlay */
.hero-content {
  position: relative;
  z-index: 2;
}

/* Améliorer la visibilité du texte du hero */
.hero-content h1, .hero-content h2, .hero-content p {
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);
  color: #ffffff;
}

/* Améliorer la visibilité du menu de navigation */
.header-sticky {
  background-color: rgba(0, 0, 0, 0.85);
  box-shadow: 0 3px 15px rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}

.header-sticky .nav-link {
  color: white !important;
  font-weight: 500;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}

.header-sticky .nav-link:hover {
  transform: translateY(-2px);
  transition: all 0.3s ease;
}

/* Ajuster le header pour qu'il ait un fond plus foncé */
#header {
  background-color: rgba(26, 26, 26, 0.95) !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  transition: all 0.4s ease;
}

/* Styles pour les liens de navigation */
.nav-link {
  position: relative;
  color: #ffffff !important;
  font-weight: 500;
  padding: 8px 12px;
  transition: all 0.3s ease;
}

.nav-link::after {
  content: '';
  position: absolute;
  width: 0;
  height: 2px;
  bottom: 0;
  left: 50%;
  background-color: #ffffff;
  transition: all 0.3s ease;
  transform: translateX(-50%);
}

.nav-link:hover::after {
  width: 70%;
}

.nav-link:hover {
  transform: translateY(-2px);
}

#header.sticky {
  background-color: rgba(26, 26, 26, 0.98) !important;
}

/* Améliorer la navigation lors du défilement */
#header.header-hidden {
  transform: translateY(-100%) !important;
  transition: transform 0.3s ease-out !important;
}

#header.header-visible {
  transform: translateY(0) !important;
  transition: transform 0.3s ease-in !important;
}

/* Améliorer la visibilité des textes dans la section à propos */
.about-text p {
  color: #000000 !important;
  font-weight: 700 !important;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.8) !important;
  background-color: rgba(255, 255, 255, 0.9) !important;
  padding: 15px !important;
  border-radius: 5px !important;
  margin-bottom: 15px !important;
  border: 1px solid rgba(0, 0, 0, 0.1) !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1) !important;
}

/* Améliorer le fond de la section à propos */
#about {
  background-color: rgba(255, 255, 255, 0.95) !important;
  position: relative;
  z-index: 1;
}

/* Ajouter un fond semi-transparent à la section about */
#about::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.85);
  z-index: -1;
}

/* Ajuster l'espacement pour une meilleure lisibilité */
.about-content {
  background-color: rgba(255, 255, 255, 0.9) !important;
  padding: 20px !important;
  border-radius: 10px !important;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1) !important;
  position: relative !important;
  z-index: 10 !important;
  display: flex !important;
  flex-wrap: wrap !important;
}

/* S'assurer que l'image est visible */
.about-image {
  position: relative !important;
  z-index: 11 !important;
  width: 100% !important;
  max-width: 45% !important;
}

.about-image img {
  width: 100% !important;
  height: auto !important;
  border-radius: 8px !important;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2) !important;
  border: 3px solid white !important;
  display: block !important;
  object-fit: cover !important;
}

/* Styles pour améliorer la visibilité des images de la galerie */
.galerie-container {
  background-color: rgba(255, 255, 255, 0.9);
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 5;
}

.galerie-item {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
  border: 2px solid #ffffff;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  cursor: pointer;
}

.galerie-item:hover {
  transform: translateY(-5px) scale(1.02);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
}

.galerie-item img {
  width: 100%;
  height: 250px;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}

.galerie-item:hover img {
  transform: scale(1.1);
  filter: brightness(1.1);
}

.galerie-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.1) 100%);
  padding: 20px 15px;
  transition: all 0.3s ease;
}

.galerie-item:hover .galerie-overlay {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.6) 60%, rgba(0, 0, 0, 0.2) 100%);
}

.galerie-info h3 {
  transform: translateY(0);
  transition: transform 0.3s ease;
}

.galerie-item:hover .galerie-info h3 {
  transform: translateY(-5px);
}

.about-text {
  width: 100% !important;
  max-width: 55% !important;
  padding-right: 30px !important;
}

/* Améliorer la visibilité des titres dans toutes les sections */
.section-header h2 {
  color: #000000 !important;
  font-weight: 700 !important;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.8) !important;
}

/* Améliorer la visibilité des textes dans toutes les sections */
p, h3, h4, h5, h6, .value-item p, .filieres-item p, .projet-item p, .actualite-item p {
  color: #000000 !important;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5) !important;
}

/* Renforcer le contraste des sections avec fond clair */
.section {
  background-color: rgba(255, 255, 255, 0.95) !important;
}

/* Renforcer le contraste des sections avec fond foncé */
.section.bg-dark {
  background: linear-gradient(135deg, rgba(26, 26, 26, 0.95), rgba(44, 62, 80, 0.95)) !important;
}

.section.bg-dark p, .section.bg-dark h3, .section.bg-dark h4 {
  color: #FFFFFF !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5) !important;
}
