/* Override GLOBAL pour TOUS les boutons - ULTRA AGRESSIF */
/* Charge EN DERNIER dans headerPage.php pour garantir spécificité maximale */
/* SOLUTION : Désactive les ombres sombres qui rendent le texte illisible */

/* ===== ÉTAPE 1 : Désactiver TOUTES les ombres qui rendent le texte illisible ===== */
.btn,
button,
a.btn,
input.btn,
[type="button"],
[type="submit"],
[type="reset"],
.btn-primary,
.btn-outline-primary,
a[class*="btn"] {
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  background-image: none !important;
  filter: none !important;
  text-shadow: none !important;
}

/* ===== ÉTAPE 1.5 : Force background AVANT le hover ===== */
.btn:not(:hover),
.btn:not(:focus),
.btn:not(:active),
.btn:not(.active),
a.btn:not(:hover),
button.btn:not(:hover),
.btn-primary:not(:hover),
.btn-outline-primary:not(:hover),
a.btn-outline-primary:not(:hover),
.btn-sm:not(:hover) {
  background: var(--primary) !important;
  background-color: var(--primary) !important;
  color: #ffffff !important;
  border-color: var(--primary) !important;
}

/* ===== ÉTAPE 2 : Fond primaire pour TOUS les boutons ===== */
.btn,
button.btn,
a.btn,
input.btn,
a[class*="btn"],
button[class*="btn"],
.btn-primary,
.btn-outline-primary,
.btn-secondary,
.btn-success,
.btn-danger,
.btn-warning,
.btn-info,
.btn-sm,
.btn-md,
.btn-lg {
  background: var(--primary) !important;
  background-color: var(--primary) !important;
  border-color: var(--primary) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
}

/* ===== ÉTAPE 3 : Texte blanc ultra-lisible ===== */
.btn,
button,
a.btn,
input.btn,
a[class*="btn"],
button[class*="btn"] {
  color: #ffffff !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

/* ===== ÉTAPE 4 : Boutons .btn-outline-primary (le cas problématique) ===== */
.btn-outline-primary,
a.btn-outline-primary,
button.btn-outline-primary,
input.btn-outline-primary,
.btn-outline-primary.btn-sm,
a.btn-outline-primary.btn-sm,
.btn.btn-outline-primary,
a.btn.btn-outline-primary {
  background: var(--primary) !important;
  background-color: var(--primary) !important;
  border-color: var(--primary) !important;
  color: #ffffff !important;
  border-width: 2px !important;
  border-style: solid !important;
  box-shadow: none !important;
}

/* Force outline-primary AVANT le hover */
.btn-outline-primary:not(:hover),
a.btn-outline-primary:not(:hover),
button.btn-outline-primary:not(:hover) {
  background: var(--primary) !important;
  background-color: var(--primary) !important;
  color: #ffffff !important;
}

/* ===== ÉTAPE 5 : Petits boutons .btn-sm ===== */
.btn-sm,
button.btn-sm,
a.btn-sm,
input.btn-sm,
.btn-sm.btn-primary,
.btn-sm.btn-outline-primary,
a.btn-sm.btn-outline-primary {
  background: var(--primary) !important;
  background-color: var(--primary) !important;
  border-color: var(--primary) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

/* Force .btn-sm AVANT le hover */
.btn-sm:not(:hover),
.btn-sm.btn-outline-primary:not(:hover),
a.btn-sm.btn-outline-primary:not(:hover) {
  background: var(--primary) !important;
  background-color: var(--primary) !important;
  color: #ffffff !important;
}

/* ===== ÉTAPE 5.5 : ULTRA SPÉCIFIQUE - Combinaison exacte .btn.btn-outline-primary.btn-sm ===== */
a.btn.btn-outline-primary.btn-sm,
a.btn.btn-outline-primary.btn-sm.me-2,
button.btn.btn-outline-primary.btn-sm,
a.btn-outline-primary.btn-sm,
.btn-outline-primary.btn-sm,
.btn.btn-outline-primary.btn-sm,
a.btn.btn-outline-primary.btn-sm:not(:hover),
a.btn.btn-outline-primary.btn-sm.me-2:not(:hover) {
  background: var(--primary) !important;
  background-color: var(--primary) !important;
  color: #ffffff !important;
  border-color: var(--primary) !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  display: inline-block !important;
}

/* ===== ÉTAPE 5.6 : TOUS les liens .btn - force display ===== */
a.btn,
a.btn-primary,
a.btn-outline-primary,
a.btn-sm,
a.btn-primary.btn-sm,
a.btn-outline-primary.btn-sm,
a[class*="btn-"] {
  display: inline-block !important;
  background: var(--primary) !important;
  background-color: var(--primary) !important;
  color: #ffffff !important;
  border-color: var(--primary) !important;
  box-shadow: none !important;
}

/* ===== ÉTAPE 6 : Hover states ===== */
.btn:hover,
.btn:focus,
.btn:active,
.btn.active,
a.btn:hover,
a.btn:focus,
button.btn:hover,
button.btn:focus,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active,
a.btn-outline-primary:hover,
button.btn-outline-primary:hover,
a[class*="btn"]:hover,
.btn-sm:hover,
.btn-sm:focus,
.btn-sm.btn-outline-primary:hover {
  background-color: var(--secondary) !important;
  border-color: var(--secondary) !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

/* ===== ÉTAPE 7 : Force sur toutes les variantes ===== */
.btn[class*="btn-"],
button[class*="btn-"],
a[class*="btn-"],
input[class*="btn-"] {
  color: #ffffff !important;
  background-color: var(--primary) !important;
  border-color: var(--primary) !important;
  box-shadow: none !important;
}

/* ===== ÉTAPE 8 : Override Bootstrap classes defaults ===== */
a.btn,
button.btn {
  background-color: var(--primary) !important;
  border-color: var(--primary) !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

/* ===== ÉTAPE 9 : Enlever les ombres des conteneurs ===== */
.doc-card,
.doc-actions,
.news-card,
.axes-card {
  box-shadow: none !important;
}

/* ===== ÉTAPE 10 : FIX FOOTER - Restaurer cohérence sur TOUTES les pages ===== */
/* Le footer doit être identique sur la page d'accueil et les autres pages */
footer.footer {
  background: #1A76D1 !important;
  color: #ffffff !important;
  padding-top: 100px !important;
  padding-bottom: 0 !important;
  position: relative !important;
}

footer.footer::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background: #000;
  opacity: 0.1;
  pointer-events: none;
}

footer.footer .footer-top {
  padding: 100px 0 !important;
  position: relative !important;
  border-bottom: none !important;
  margin-bottom: 0 !important;
}

footer.footer .single-footer {
  position: relative;
  z-index: 1;
}

footer.footer .single-footer h2 {
  color: #ffffff !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  margin-bottom: 40px !important;
  padding-bottom: 20px !important;
  padding-left: 0 !important;
  position: relative !important;
  cursor: default !important;
  border-left: none !important;
  border-bottom: none !important;
  transform: none !important;
}

footer.footer .single-footer h2:hover {
  border-left: none !important;
  transform: none !important;
}

footer.footer .single-footer p {
  color: rgba(255, 255, 255, 0.85) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin-bottom: 15px !important;
}

footer.footer .single-footer a {
  color: #ffffff !important;
  text-decoration: none !important;
  transition: all 0.4s ease !important;
}

footer.footer .single-footer a:hover {
  color: #ffffff !important;
  text-decoration: underline !important;
}

/* Social icons - style épuré, sans carrés */
footer.footer .social {
  display: flex !important;
  gap: 20px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 25px 0 0 0 !important;
}

footer.footer .social li {
  display: inline-block !important;
  list-style: none !important;
  margin: 0 !important;
}

footer.footer .social li a {
  display: inline-block !important;
  color: #ffffff !important;
  font-size: 22px !important;
  transition: all 0.4s ease !important;
  border: none !important;
  border-radius: 0 !important;
  width: auto !important;
  height: auto !important;
  line-height: normal !important;
  text-align: center !important;
  padding: 0 !important;
  background: transparent !important;
}

footer.footer .social li a i {
  font-size: 22px !important;
  display: inline-block !important;
}

footer.footer .social li a:hover {
  color: #ffc107 !important;
  transform: translateY(-3px) !important;
  text-shadow: 0 4px 8px rgba(0, 0, 0, 0.2) !important;
}

/* Lien utiles */
footer.footer .single-footer.f-link li {
  display: block !important;
  margin-bottom: 12px !important;
}

footer.footer .single-footer.f-link li:last-child {
  margin: 0 !important;
}

footer.footer .single-footer.f-link li a {
  display: block !important;
  color: #ffffff !important;
  text-transform: capitalize !important;
  font-weight: 400 !important;
  padding-left: 0 !important;
  transition: all 0.4s ease !important;
}

footer.footer .single-footer.f-link li a i {
  margin-right: 10px !important;
}

footer.footer .single-footer.f-link li a:hover {
  padding-left: 8px !important;
}

/* Copyright */
footer.footer .copyright {
  background: rgba(0, 0, 0, 0.15) !important;
  padding: 30px 0 !important;
  margin-top: 0 !important;
  border-top: none !important;
}

footer.footer .copyright-content {
  color: rgba(255, 255, 255, 0.85) !important;
  font-size: 13px !important;
  text-align: center !important;
}

footer.footer .copyright-content p {
  margin: 0 !important;
}

footer.footer .copyright-content a {
  color: #ffffff !important;
  text-decoration: none !important;
}

footer.footer .copyright-content a:hover {
  color: #ffffff !important;
  text-decoration: underline !important;
}

/* ===== ÉTAPE 11 : FORCE TOTALE DU FOOTER - Identique PARTOUT ===== */
/* Cette section écrase TOUT ce qui pourrait interférer avec le footer */

html footer.footer,
body footer.footer,
.container footer.footer,
main footer.footer,
footer {
  background: #1A76D1 !important;
  color: #ffffff !important;
}

footer.footer,
footer#footer {
  background: #1A76D1 !important;
  color: #ffffff !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  box-shadow: none !important;
}

footer.footer * {
  box-sizing: border-box !important;
}

footer.footer .container {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 15px !important;
}

footer.footer .row {
  display: flex !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
}

footer.footer .col-lg-3,
footer.footer .col-md-6,
footer.footer .col-12 {
  padding: 0 15px !important;
  margin-bottom: 20px !important;
}

footer.footer .single-footer {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

footer.footer .single-footer h2::before {
  display: block !important;
  position: absolute !important;
  content: "" !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 50px !important;
  height: 3px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  border-radius: 999px !important;
}

footer.footer .single-footer h2::after {
  display: none !important;
  content: none !important;
}
