/* Unified beige header — final harmonisation 2026-08-27
   Loaded last on every page and intentionally uses !important to neutralize
   legacy generic header/nav rules that still exist in older page stylesheets. */
.global-site-header{
  position:sticky !important;
  top:0 !important;
  z-index:1000 !important;
  width:100% !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  background:#f7f2e8 !important;
  border:0 !important;
  border-bottom:1px solid #dfc995 !important;
  border-radius:0 !important;
  box-shadow:0 4px 18px rgba(12,34,58,.07) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  overflow:visible !important;
  font-family:Arial,Helvetica,sans-serif !important;
  color:#13233a !important;
}
.global-site-header::before,.global-site-header::after{content:none !important;display:none !important}
.global-site-header *{box-sizing:border-box}
.global-site-header__inner{
  width:100% !important;
  max-width:1180px !important;
  min-height:66px !important;
  margin:0 auto !important;
  padding:9px 24px !important;
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.global-site-header__brand{
  display:inline-flex !important;
  flex:0 0 auto !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  min-width:max-content !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:#13233a !important;
  text-decoration:none !important;
  font-weight:800 !important;
  letter-spacing:-.01em !important;
}
.global-site-header__brand::before,.global-site-header__brand::after{content:none !important;display:none !important}
.global-site-header__brand img{
  display:block !important;
  width:42px !important;
  height:42px !important;
  max-width:42px !important;
  max-height:42px !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:cover !important;
  border:0 !important;
  border-radius:8px !important;
  filter:none !important;
  box-shadow:none !important;
}
.global-site-header__brand-text{
  display:inline !important;
  color:#13233a !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1.05 !important;
  white-space:nowrap !important;
  text-shadow:none !important;
}
.global-site-header__brand-text strong{color:#b66f00 !important;font-weight:800 !important}
.global-site-header__nav{
  position:static !important;
  display:flex !important;
  flex:0 1 auto !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:5px !important;
  width:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  white-space:nowrap !important;
  overflow:visible !important;
}
.global-site-header__nav::before,.global-site-header__nav::after{content:none !important;display:none !important}
.global-site-header__nav>a,
.global-site-header__nav>a:not(.btn-3d){
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:0 !important;
  min-height:38px !important;
  margin:0 !important;
  padding:8px 10px !important;
  background:transparent !important;
  border:0 !important;
  border-radius:10px !important;
  box-shadow:none !important;
  color:#26374e !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:13px !important;
  font-weight:750 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  text-decoration:none !important;
  text-transform:none !important;
  text-shadow:none !important;
  white-space:nowrap !important;
  transition:background .18s ease,color .18s ease,transform .18s ease !important;
}
.global-site-header__nav>a::before,.global-site-header__nav>a::after{content:none !important;display:none !important}
.global-site-header__nav>a:not(.global-site-header__cta):hover,
.global-site-header__nav>a:not(.global-site-header__cta):focus-visible{
  background:#eee5d4 !important;
  color:#0d2b5c !important;
  outline:none !important;
}
.global-site-header__nav>a.global-site-header__cta,
.global-site-header__nav>a.global-site-header__cta:not(.btn-3d){
  margin-left:5px !important;
  padding:9px 16px !important;
  min-height:40px !important;
  background:linear-gradient(180deg,#ffd977 0%,#efad1c 62%,#d78d00 100%) !important;
  border:1px solid #c98500 !important;
  border-radius:11px !important;
  color:#10243b !important;
  box-shadow:0 3px 0 #b67600,0 5px 12px rgba(143,92,0,.16) !important;
  font-weight:850 !important;
}
.global-site-header__nav>a.global-site-header__cta:hover,
.global-site-header__nav>a.global-site-header__cta:focus-visible{
  background:linear-gradient(180deg,#ffe39a 0%,#f4bb37 62%,#df9808 100%) !important;
  color:#10243b !important;
  transform:translateY(-1px) !important;
  outline:2px solid #0d2b5c !important;
  outline-offset:2px !important;
}
/* Bouton hamburger — ajouté après audit du 2026-09-02 (Correction 1).
   Injecté par mobile-nav.js juste avant .global-site-header__nav ; masqué au-dessus de 680px. */
.global-site-header__toggle{
  display:none !important;
  flex:0 0 auto !important;
  width:38px !important;
  height:38px !important;
  margin:0 0 0 8px !important;
  padding:0 !important;
  align-items:center !important;
  justify-content:center !important;
  flex-direction:column !important;
  gap:5px !important;
  background:transparent !important;
  border:1px solid #dfc995 !important;
  border-radius:9px !important;
  cursor:pointer !important;
}
.global-site-header__toggle:focus-visible{
  outline:2px solid #0d2b5c !important;
  outline-offset:2px !important;
}
.global-site-header__toggle-bar{
  display:block !important;
  width:18px !important;
  height:2px !important;
  margin:0 !important;
  background:#13233a !important;
  border-radius:2px !important;
  transition:transform .18s ease,opacity .18s ease !important;
}
.global-site-header__toggle.is-open .global-site-header__toggle-bar:nth-child(1){transform:translateY(7px) rotate(45deg) !important}
.global-site-header__toggle.is-open .global-site-header__toggle-bar:nth-child(2){opacity:0 !important}
.global-site-header__toggle.is-open .global-site-header__toggle-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg) !important}
@media(max-width:900px){
  .global-site-header__inner{padding:8px 14px !important;gap:14px !important}
  .global-site-header__brand-text{display:none !important}
  .global-site-header__nav{gap:2px !important}
  .global-site-header__nav>a,.global-site-header__nav>a:not(.btn-3d){padding:8px 7px !important;font-size:12px !important}
  .global-site-header__nav>a.global-site-header__cta{padding:9px 12px !important}
}
@media(max-width:680px){
  .global-site-header__inner{min-height:auto !important;display:grid !important;grid-template-columns:auto 1fr !important;align-items:center !important;padding:7px 10px !important}
  .global-site-header__brand img{width:36px !important;height:36px !important;max-width:36px !important;max-height:36px !important}
  .global-site-header__nav{overflow-x:auto !important;justify-content:flex-start !important;scrollbar-width:none !important;-webkit-overflow-scrolling:touch !important;padding:2px 0 !important}
  .global-site-header__nav::-webkit-scrollbar{display:none !important}
  .global-site-header__nav>a,.global-site-header__nav>a:not(.btn-3d){min-height:34px !important;padding:7px 8px !important}
  .global-site-header__nav>a.global-site-header__cta{position:sticky !important;right:0 !important;background:linear-gradient(180deg,#ffd977 0%,#efad1c 62%,#d78d00 100%) !important;box-shadow:-8px 0 10px #f7f2e8,0 3px 0 #b67600 !important}
}

/* Mobile final: keep the identity and the conversion action readable, and expose the rest of the
   navigation (Ratgeber, FAQ, ...) through a real hamburger menu instead of hiding it outright.
   Revised after audit du 2026-09-02 — Correction 1 (menu principal invisible sous 680px). */
@media(max-width:680px){
  .global-site-header{overflow:visible !important}
  .global-site-header__inner{display:flex !important;justify-content:space-between !important;gap:10px !important;padding:7px 12px !important;position:relative !important}
  .global-site-header__toggle{display:inline-flex !important;order:2 !important}
  .global-site-header__nav{width:auto !important;overflow:visible !important;justify-content:flex-end !important;padding:0 !important;margin-left:auto !important;order:1 !important}
  .global-site-header__nav>a.global-site-header__cta{position:static !important;right:auto !important;margin:0 !important;padding:9px 12px !important;box-shadow:0 3px 0 #b67600,0 5px 12px rgba(143,92,0,.16) !important}

  /* Fermé par défaut (et avant chargement de mobile-nav.js) : seul le CTA reste visible dans la barre. */
  .global-site-header__nav>a:not(.global-site-header__cta){display:none !important}

  /* Ouvert (data-mobile-open="true", posé par mobile-nav.js) : panneau déroulant sous le header. */
  .global-site-header__nav[data-mobile-open="true"]{
    position:absolute !important;
    top:100% !important;
    left:0 !important;
    right:0 !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    background:#f7f2e8 !important;
    border-bottom:1px solid #dfc995 !important;
    box-shadow:0 14px 22px rgba(12,34,58,.14) !important;
    padding:6px 12px 14px !important;
    gap:2px !important;
    max-height:calc(100vh - 100%) !important;
    overflow-y:auto !important;
  }
  .global-site-header__nav[data-mobile-open="true"]>a:not(.global-site-header__cta){
    display:flex !important;
    width:100% !important;
    justify-content:flex-start !important;
    min-height:44px !important;
    padding:12px 10px !important;
    border-bottom:1px solid rgba(19,35,58,.08) !important;
    font-size:15px !important;
  }
  .global-site-header__nav[data-mobile-open="true"]>a.global-site-header__cta{
    order:-1 !important;
    width:100% !important;
    justify-content:center !important;
    margin:0 0 8px !important;
  }
}
