/* ============================================================
   Pages legacy avec Bootstrap 4 dans le <body> uniquement.
   À charger APRÈS bootstrap.min.css pour rétablir topbar / header / footer SAPRESSI.
   Volées du menu interne (niv. 3) : js/sapressi-new.js + css/sapressi-new.css (évite doublons ici).
   ============================================================ */

.topbar,
.topbar *,
.site-header,
.site-header * {
  box-sizing: border-box;
}

.topbar a {
  color: inherit !important;
  text-decoration: none !important;
}

.site-header a.header__logo {
  color: inherit !important;
}

.site-header .main-nav a {
  text-decoration: none !important;
}

.site-header .main-nav__item > a {
  color: var(--grey-700) !important;
}

.site-header .main-nav__item > a:hover,
.site-header .main-nav__item--active > a {
  color: var(--blue) !important;
}

.site-header .main-nav__item--active > a {
  color: var(--red) !important;
}

.site-header .main-nav__item--internal-menu > a {
  color: var(--white) !important;
}

.site-header .main-nav__item--internal-menu > a:hover {
  color: var(--white) !important;
}

.site-header .main-nav__list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.site-header .dropdown li {
  margin: 0;
}

.site-header .dropdown li a {
  color: var(--grey-700) !important;
}

/* Footer : surcharges Bootstrap ciblées (éviter color: inherit sur .btn / contact) */
.footer .footer__links a:not(.btn):not(.footer__link--devis) {
  color: var(--footer-text-muted, #252b38) !important;
  font-weight: 600 !important;
}

.footer .footer__links a:not(.btn):not(.footer__link--devis):hover {
  color: var(--blue) !important;
}

.footer .footer__links a.footer__link--devis {
  color: var(--red) !important;
  font-weight: 700 !important;
}

.footer .footer__links a.footer__link--devis:hover {
  color: var(--blue) !important;
}

.footer .footer__contact-item a {
  color: var(--footer-text-link, #1a1f2a) !important;
  font-weight: 600 !important;
}

.footer .footer__contact-item a:hover {
  color: var(--blue) !important;
}

.footer .footer__links a.btn--primary,
.footer .footer__links .btn.btn--primary {
  color: #fff !important;
}
.footer .footer__links a.btn--primary:hover,
.footer .footer__links a.btn--primary:focus,
.footer .footer__links .btn.btn--primary:hover,
.footer .footer__links .btn.btn--primary:focus {
  color: #fff !important;
}

/* ============================================================
   Overrides layout (Bootstrap 4 peut casser le header moderne)
   ============================================================ */

.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 200000 !important;
  background: var(--white) !important;
  border-bottom: 1px solid var(--grey-200) !important;
}

.site-header .header__inner {
  padding-right: 4.35rem !important;
  display: flex !important;
  align-items: center !important;
  gap: 1.25rem !important;
  height: 96px !important;
  overflow: visible !important;
}

.site-header .main-nav {
  margin-left: auto !important;
  margin-right: 1rem !important;
  flex: 1 !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: visible !important;
}

.site-header .main-nav__list {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: .15rem !important;
}

.site-header .main-nav__item {
  position: relative !important;
}

.site-header .main-nav__item > a {
  display: flex !important;
  align-items: center !important;
  gap: 0.12rem !important;
  padding: 0.36rem 0.26rem !important;
  font-family: var(--font-display) !important;
  font-size: .92rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.018em !important;
  text-transform: uppercase !important;
  color: var(--grey-700) !important;
  border-radius: var(--radius-sm) !important;
  transition: var(--transition) !important;
  white-space: nowrap !important;
}

/* Pages internes : nav encore plus compacte (header_accueil.php) */
.site-header.site-header--inner .main-nav__list {
  gap: 0 !important;
}

.site-header.site-header--inner .main-nav__item > a {
  padding: 0.28rem 0.22rem !important;
}
.site-header.site-header--personnel .header__inner {
  padding-right: 7.6rem !important;
}
.site-header.site-header--personnel .main-nav {
  margin-right: 3.6rem !important;
}
.site-header.site-header--personnel .main-nav__item--internal-menu,
.site-header.site-header--personnel .main-nav__item--user {
  z-index: 2147483300 !important;
}
.sapressi-internal-menu-follow-scroll .site-header {
  position: static !important;
}
.site-header .header__cta--personnel {
  z-index: 1200 !important;
}

/* Rendre le comportement hover du dropdown fiable malgré Bootstrap */
.has-dropdown:hover .dropdown {
  opacity: 1 !important;
  pointer-events: all !important;
  transform: translateX(-50%) translateY(0) !important;
}

.dropdown {
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translateX(-50%) translateY(-8px) !important;
}

.main-nav__item--internal-menu.has-dropdown:hover > .dropdown.dropdown--internal {
  transform: none !important;
  left: auto !important;
  right: 0 !important;
  top: calc(100% + .75rem) !important;
}

.dropdown--internal {
  position: absolute !important;
  top: calc(100% + .75rem) !important;
  right: 0 !important;
  left: auto !important;
  transform: none !important;
  max-height: none !important;
  overflow-y: visible !important;
  overflow-x: visible !important;
  background: var(--internal-menu-l2-bg) !important;
  border: 1px solid var(--internal-menu-l2-border) !important;
  z-index: 2147483000 !important;
}

/* Menu interne niveau 3 : texte force en blanc pur */
.dropdown--internal .sub-menu li > a,
.main-nav__item--internal-menu > .dropdown.dropdown--internal .sub-menu > li > a,
ul.sub-menu.sapressi-internal-flyout li > a {
  color: #FFFFFF !important;
  font-weight: 600 !important;
}
