/* Style spécifique aux départements sans sous-groupes */
section h2, section h3 {
  font-family: 'Merriweather', serif; /* police plus formelle */
}

.bg-gray-50 {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.bg-gray-50:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 15px rgba(0,0,0,0.15);
}

/* Bouton d'adhésion */
button {
  font-weight: 600;
  cursor: pointer;
}
button:hover {
  transform: scale(1.05);
  transition: transform 0.2s ease;
}

/* Styles globaux */
body {
  margin: 0;
  font-family: 'Open Sans', sans-serif;
  background-color: #f5f5f5;
  color: #333;
}

/* Navbar */
.navbar {   
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.nav-links {
  list-style: none;
  display: flex;
  gap: 1.5rem;
}
.nav-links a {
  text-decoration: none;
  color: white;
  font-weight: 600;
  transition: 0.3s;
}
.nav-links a:hover {
  color: #c8e6c9;
}

/* Sections */
section {
  margin-bottom: 2rem;
}

/* Footer */
footer {
  background-color: #2e7d32;
  color: white;
  text-align: center;
  padding: 1rem;
  margin-top: 2rem;
}

/* Carte des responsables */
section .bg-white {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
section .bg-white:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 15px rgba(0,0,0,0.15);
}

/* Responsive */
@media (max-width: 768px) {
  .nav-links {
    flex-direction: column;
    gap: 1rem;
  }
}
@media (max-width: 480px) {
  body {
    font-size: 14px;
  }
}

/* =================================
THEME TOGGLE
================================ */

.theme-toggle{

 background:rgba(255,255,255,0.15);

 border:none;

 color:white;

 padding:6px 10px;

 border-radius:8px;

 cursor:pointer;

 font-size:1rem;

 margin-right:10px;

}


.theme-toggle:hover{

 background:rgba(255,255,255,0.3);

}


/* =================================
DARK MODE VARIABLES
================================ */

.dark{

 --soft-bg:#0f172a;

 --card-bg:#1e293b;

 --text-dark:#e5e7eb;

 --text-soft:#94a3b8;

 --primary:#22c55e;

 --primary-light:#16a34a;

}


/* fond général */

.dark body{

 background:#0f172a;

 color:#e5e7eb;

}


/* cartes */

.dark .card,
.dark .relative.bg-white,
.dark .event-card,
.dark .visionnaire-container,
.dark #verset-content{

 background:#1e293b;

 color:#e5e7eb;

}


/* navbar */

.dark .navbar{

 background:linear-gradient(
 135deg,
 #14532d,
 #166534
 );

}


/* footer */

.dark footer{

 background:linear-gradient(
 135deg,
 #14532d,
 #166534
 );

}


/* inputs */

.dark input,
.dark textarea,
.dark select{

 background:#020617;

 color:white;

 border:1px solid #334155;

}