/*
Theme Name: EPSP Dergana
Author: Toi
Description: Thème minimal basé sur ton HTML
Version: 1.0
*/

.page .page-title {
  display: none !important;
}

html { scroll-behavior: smooth; }

.site-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
  background: #f0f8ff;
  border-bottom: 3px solid #0056b3;
  flex-wrap: wrap;
}

/* Logo + texte */
.header-left { 
  display: flex; 
  align-items: center; 
  gap: 5px; 
  height: 100px;
  background: #f0f8ff;
}

.header-left .logo { 
  max-height: 80px; 
  border-radius: 6px; 
  animation: spin 10s linear infinite; 
  filter: drop-shadow(0 20px 8px rgba(0,0,0,0.4));
  background: transparent;
}

/* Texte */

/* RÉPARATION URGENTE - Afficher le titre */
header .header-text h1,
.header-text h1 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #002244 !important;
  font-size: 22px !important;
}

.header-text h2 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #0066cc !important;
  font-size: 16px !important;
}

/* Menu */
.main-menu { 
  margin-left: auto; 
}

.main-menu ul { 
  list-style: none; 
  display: flex; 
  gap: 20px; 
  padding: 0; 
  margin: 0; 
}

.main-menu ul li a { 
  text-decoration: none; 
  font-weight: 600; 
  color: black; 
  padding: 4px 8px; 
  position: relative; 
}

.main-menu ul li a:hover { 
  color: #0080ff; 
}

.main-menu ul li a::after {
  content: attr(data-text);
  position: absolute; 
  top: 100%; 
  left: 0; 
  width: 100%; 
  height: 50%;
  color: rgba(0,0,0,0.2); 
  transform: skewX(-20deg) scaleY(0.4); 
  filter: blur(2px); 
  z-index: -1; 
  pointer-events: none;
}

.main-menu ul li a:hover::after { 
  color: rgba(0,0,0,0.35); 
  transform: skewX(-20deg) scaleY(0.5) translateY(2px); 
  filter: blur(3px); 
}

/* Burger - visible sur mobile, caché sur desktop */
.burger { 
  display: none; 
  font-size: 26px; 
  background: none; 
  border: none; 
  cursor: pointer;
  z-index: 1000;
}

/* Sections */
main { 
  padding: 20px; 
  text-align: center; 
}

.facade-section img { 
  max-width: 90%; 
  height: auto; 
  display: block; 
  margin: 0 auto; 
  border-radius: 6px; 
  box-shadow: 0 2px 6px rgba(0,0,0,0.2); 
}

/* Carte Leaflet */
#map { 
  width: 70% !important; 
  height: 300px !important; 
  margin: 20px auto; 
  border-radius: 10px; 
  box-shadow: 0 4px 15px rgba(0,0,0,0.2); 
}

.map-facade {
  width: 70% !important; 
  height: 600px !important; 
  margin: 20px auto; 
  border-radius: 10px; 
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
}

/* Footer */
.site-footer { 
  text-align: center; 
  margin-top: 40px; 
}

.site-footer hr { 
  border: 3px solid #004080; 
  margin-bottom: 5px; 
}

.site-footer p { 
  color: #444; 
  font-size: 14px; 
}

/* Animation logo */
@keyframes spin { 
  from { transform: rotateY(0deg); } 
  to { transform: rotateY(360deg); } 
}

/* ===== DROPDOWN LANGUE ===== */
.has-dropdown {
  position: relative;
}

.has-dropdown > .dropdown {
  display: none;
  position: absolute;
  top: 100%;
  right: 0;
  min-width: 140px;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.12);
  padding: 6px 0;
  z-index: 1000;
}

.has-dropdown:hover > .dropdown {
  display: block;
}

.has-dropdown > .dropdown li a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  color: #222;
  text-decoration: none;
}

/* ===== CORRECTIONS RESPONSIVE ===== */
@media (max-width: 768px) {
  /* Correction hauteur footer */
  .site-footer {
    position: relative;
    padding: 15px 0;
    margin-top: 20px;
  }
  
  /* Ajustement de la carte */
  #map {
    height: 200px !important;
    margin: 10px auto;
  }
  
  /* Ajustement image facade */
  .facade-section img {
    height: 180px !important;
    margin: 10px auto;
  }
  
  /* Réduction espacement sections */
  main {
    padding: 15px 10px;
  }
  
  /* Ajustement header */
  .site-header {
    padding: 8px 5px;
  }
  
  .header-left {
    height: 80px;
  }
  
  .header-text h1 {
    font-size: 14px !important;
  }
  
  .header-text h2 {
    font-size: 11px !important;
  }
}

/* Correction supplémentaire pour très petits écrans */
@media (max-width: 480px) {
  .site-footer {
    padding: 10px 0;
    margin-top: 15px;
  }
  
  .site-footer p {
    font-size: 12px;
  }
  
  #map {
    height: 180px !important;
  }
  
  .facade-section img {
    height: 150px !important;
  }
  
  .burger {
    right: 10px !important;
    top: 30px !important;
    font-size: 24px !important;
  }
  
  .main-menu {
    padding: 15px !important;
  }
  
  .main-menu ul li a {
    font-size: 16px !important;
    padding: 10px !important;
  }
}