/*
 * Aube de l'Espoir — Premium header V13
 * Fixes header placement by taking the header out of document flow (fixed top)
 * and adds a cleaner desktop + mobile navigation.
 */
:root{
  --aube-v13-orange:#f36a0b;
  --aube-v13-orange-deep:#d95700;
  --aube-v13-amber:#ffad2f;
  --aube-v13-navy:#102b46;
  --aube-v13-ink:#18283c;
  --aube-v13-muted:#6f7f91;
  --aube-v13-border:rgba(16,43,70,.10);
  --aube-v13-soft:#fff8ef;
  --aube-v13-header-height:82px;
  --aube-v13-admin-offset:0px;
}

body.admin-bar{--aube-v13-admin-offset:32px}
@media(max-width:782px){body.admin-bar{--aube-v13-admin-offset:46px}}

/* Hide legacy headers only after V13 is confirmed active. */
body.aube-premium-header-active-v13>#site-header,
body.aube-premium-header-active-v13>.site-header,
body.aube-premium-header-active-v13>#masthead,
body.aube-premium-header-active-v13>.elementor-location-header,
body.aube-premium-header-active-v13>.hfe-header,
body.aube-premium-header-active-v13>.hfe-site-header,
body.aube-premium-header-active-v13>.main-header,
body.aube-premium-header-active-v13>.site-header-wrap,
body.aube-premium-header-active-v13>header:not(.aube-header--v13){display:none!important}
.aube-legacy-header-hidden-v13{display:none!important}

/* Critical placement fix: always at the very top of the viewport. */
html body.aube-premium-header-active-v13{
  padding-top:var(--aube-v13-header-height)!important;
}
.aube-header--v13{
  position:fixed!important;
  top:var(--aube-v13-admin-offset)!important;
  left:0!important;
  right:0!important;
  bottom:auto!important;
  width:100%!important;
  max-width:none!important;
  height:var(--aube-v13-header-height)!important;
  margin:0!important;
  padding:0!important;
  z-index:2147482000!important;
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid rgba(16,43,70,.075)!important;
  box-shadow:0 8px 32px rgba(16,43,70,.055)!important;
  backdrop-filter:blur(20px) saturate(150%)!important;
  -webkit-backdrop-filter:blur(20px) saturate(150%)!important;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  transform:none!important;
}
.aube-header--v13.is-scrolled{
  background:rgba(255,255,255,.985)!important;
  box-shadow:0 12px 38px rgba(16,43,70,.095)!important;
}
.aube-header--v13 *{box-sizing:border-box!important}
.aube-header--v13 a{text-decoration:none!important}

.aube-header--v13 .aube-header__inner{
  width:min(100% - 36px,1340px)!important;
  max-width:1340px!important;
  height:100%!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:24px!important;
}

/* Brand */
.aube-header--v13 .aube-brand{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  flex:0 0 auto!important;
  min-width:245px!important;
  color:var(--aube-v13-orange)!important;
}
.aube-header--v13 .aube-brand__mark{
  width:54px!important;
  height:54px!important;
  object-fit:contain!important;
  flex:0 0 auto!important;
  filter:drop-shadow(0 6px 12px rgba(243,106,11,.16))!important;
}
.aube-header--v13 .aube-brand__copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
}
.aube-header--v13 .aube-brand__name{
  color:var(--aube-v13-orange)!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:25px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:-.5px!important;
  white-space:nowrap!important;
}
.aube-header--v13 .aube-brand__tagline{
  margin-top:4px!important;
  color:#8995a2!important;
  font-size:9.5px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

/* Desktop navigation */
.aube-header--v13 .aube-nav{
  margin-left:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:14px!important;
  min-width:0!important;
}
.aube-header--v13 .aube-nav__list{
  display:flex!important;
  align-items:center!important;
  gap:2px!important;
  list-style:none!important;
  padding:0!important;
  margin:0!important;
}
.aube-header--v13 .aube-nav__list>li{
  position:relative!important;
  margin:0!important;
  padding:0!important;
}
.aube-header--v13 .aube-nav__list>li>a{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:44px!important;
  padding:10px 10px!important;
  border-radius:12px!important;
  color:var(--aube-v13-ink)!important;
  font-size:13.25px!important;
  line-height:1!important;
  font-weight:800!important;
  white-space:nowrap!important;
  transition:background .18s ease,color .18s ease,transform .18s ease!important;
}
.aube-header--v13 .aube-nav__list>li>a:after{
  content:""!important;
  position:absolute!important;
  left:12px!important;
  right:12px!important;
  bottom:4px!important;
  height:2px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,var(--aube-v13-orange),var(--aube-v13-amber))!important;
  transform:scaleX(0)!important;
  transform-origin:center!important;
  transition:transform .18s ease!important;
}
.aube-header--v13 .aube-nav__list>li>a:hover,
.aube-header--v13 .aube-nav__list>li.current-menu-item>a,
.aube-header--v13 .aube-nav__list>li.is-current>a{
  background:#fff7ee!important;
  color:var(--aube-v13-orange-deep)!important;
}
.aube-header--v13 .aube-nav__list>li>a:hover:after,
.aube-header--v13 .aube-nav__list>li.current-menu-item>a:after,
.aube-header--v13 .aube-nav__list>li.is-current>a:after{
  transform:scaleX(1)!important;
}
.aube-header--v13 .aube-nav-chevron{
  display:inline-block!important;
  color:var(--aube-v13-orange)!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:950!important;
  transition:transform .18s ease!important;
}
.aube-header--v13 .aube-nav-actions:hover .aube-nav-chevron,
.aube-header--v13 .aube-nav-actions:focus-within .aube-nav-chevron,
.aube-header--v13 .aube-nav-actions.is-submenu-open .aube-nav-chevron{transform:rotate(180deg)!important}

/* Mega menu */
.aube-header--v13 .aube-mega-menu{
  position:absolute!important;
  top:calc(100% + 14px)!important;
  left:50%!important;
  transform:translate(-50%,10px)!important;
  width:470px!important;
  padding:12px!important;
  margin:0!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
  background:rgba(255,255,255,.995)!important;
  border:1px solid var(--aube-v13-border)!important;
  border-radius:22px!important;
  box-shadow:0 28px 80px rgba(16,43,70,.18)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important;
  overflow:visible!important;
}
.aube-header--v13 .aube-mega-menu:before{
  content:""!important;
  position:absolute!important;
  top:-7px!important;
  left:50%!important;
  width:14px!important;
  height:14px!important;
  background:#fff!important;
  border-left:1px solid var(--aube-v13-border)!important;
  border-top:1px solid var(--aube-v13-border)!important;
  transform:translateX(-50%) rotate(45deg)!important;
}
.aube-header--v13 .aube-nav-actions:hover>.aube-mega-menu,
.aube-header--v13 .aube-nav-actions:focus-within>.aube-mega-menu{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translate(-50%,0)!important;
}
.aube-header--v13 .aube-mega-menu__item{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
  padding:12px!important;
  border-radius:15px!important;
  background:#fff!important;
  border:1px solid transparent!important;
  transition:.17s ease!important;
}
.aube-header--v13 .aube-mega-menu__item:hover{
  background:#fff8ef!important;
  border-color:rgba(243,106,11,.12)!important;
  transform:translateX(2px)!important;
}
.aube-header--v13 .aube-mega-menu__icon{
  display:grid!important;
  place-items:center!important;
  width:46px!important;
  height:46px!important;
  border-radius:14px!important;
  background:#fff0df!important;
  color:var(--aube-v13-orange)!important;
  font-size:20px!important;
  font-weight:950!important;
}
.aube-header--v13 .aube-mega-menu__item--water .aube-mega-menu__icon{background:#eaf7fb!important;color:#247b9b!important}
.aube-header--v13 .aube-mega-menu__item--orphan .aube-mega-menu__icon{background:#eff7ec!important;color:#628e58!important}
.aube-header--v13 .aube-mega-menu__item span:last-child{display:flex!important;flex-direction:column!important;gap:4px!important;min-width:0!important}
.aube-header--v13 .aube-mega-menu__item strong{color:var(--aube-v13-navy)!important;font-size:14px!important;line-height:1.2!important;font-weight:900!important}
.aube-header--v13 .aube-mega-menu__item small{color:#6c7d90!important;font-size:11.5px!important;line-height:1.45!important;font-weight:600!important}
.aube-header--v13 .aube-mega-menu__all{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-height:48px!important;
  padding:11px 14px!important;
  border-radius:13px!important;
  background:linear-gradient(135deg,#102b46,#174f69)!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:850!important;
}

/* Donation CTA */
.aube-header--v13 .aube-nav__donate{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:176px!important;
  min-height:54px!important;
  padding:7px 13px 7px 8px!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#f05d00 0%,#ff7d18 55%,#f7a928 100%)!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(243,106,11,.25)!important;
  overflow:hidden!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
  isolation:isolate!important;
}
.aube-header--v13 .aube-nav__donate:before{
  content:""!important;
  position:absolute!important;
  inset:-1px auto -1px -35%!important;
  width:32%!important;
  transform:skewX(-18deg)!important;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent)!important;
  transition:left .45s ease!important;
  z-index:-1!important;
}
.aube-header--v13 .aube-nav__donate:hover{transform:translateY(-2px)!important;box-shadow:0 17px 36px rgba(243,106,11,.34)!important}
.aube-header--v13 .aube-nav__donate:hover:before{left:115%!important}
.aube-header--v13 .aube-nav__donate-heart{
  display:grid!important;
  place-items:center!important;
  width:39px!important;
  height:39px!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.18)!important;
  color:#fff!important;
  flex:0 0 auto!important;
  font-size:14px!important;
}
.aube-header--v13 .aube-nav__donate-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;line-height:1.02!important;min-width:0!important}
.aube-header--v13 .aube-nav__donate-copy strong{color:#fff!important;font-size:13.5px!important;font-weight:900!important;white-space:nowrap!important}
.aube-header--v13 .aube-nav__donate-copy small{margin-top:4px!important;color:rgba(255,255,255,.84)!important;font-size:9px!important;font-weight:700!important;white-space:nowrap!important}
.aube-header--v13 .aube-nav__donate-arrow{font-size:16px!important;margin-left:auto!important;color:#fff!important}

/* Mobile toggle */
.aube-header--v13 .aube-menu-toggle{
  display:none!important;
  width:46px!important;
  height:46px!important;
  border:1px solid rgba(16,43,70,.12)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 8px 18px rgba(16,43,70,.07)!important;
  align-items:center!important;
  justify-content:center!important;
  flex-direction:column!important;
  gap:5px!important;
  cursor:pointer!important;
  margin-left:auto!important;
  padding:0!important;
}
.aube-header--v13 .aube-menu-toggle span{width:20px!important;height:2px!important;border-radius:2px!important;background:var(--aube-v13-navy)!important;transition:transform .18s ease,opacity .18s ease!important}
.aube-header--v13 .aube-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)!important}
.aube-header--v13 .aube-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0!important}
.aube-header--v13 .aube-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)!important}

.aube-menu-backdrop-v13{
  position:fixed!important;
  top:calc(var(--aube-v13-admin-offset) + var(--aube-v13-header-height))!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:2147481800!important;
  background:rgba(11,32,52,.42)!important;
  backdrop-filter:blur(2px)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .18s ease,visibility .18s ease!important;
}
.aube-menu-backdrop-v13.is-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
html.aube-menu-open-v13,html.aube-menu-open-v13 body{overflow:hidden!important}

/* Medium desktop: reduce brand + spacing before switching to mobile. */
@media(max-width:1240px){
  .aube-header--v13 .aube-header__inner{width:min(100% - 28px,1180px)!important;gap:14px!important}
  .aube-header--v13 .aube-brand{min-width:210px!important}
  .aube-header--v13 .aube-brand__name{font-size:22px!important}
  .aube-header--v13 .aube-brand__tagline{font-size:8.5px!important}
  .aube-header--v13 .aube-nav__list>li>a{padding:10px 8px!important;font-size:12.5px!important}
  .aube-header--v13 .aube-nav__donate{min-width:158px!important}
  .aube-header--v13 .aube-nav__donate-copy small{display:none!important}
}

/* Mobile / tablet navigation */
@media(max-width:1100px){
  :root{--aube-v13-header-height:74px}
  .aube-header--v13 .aube-header__inner{width:100%!important;padding:0 16px!important;gap:12px!important}
  .aube-header--v13 .aube-brand{min-width:0!important;gap:9px!important}
  .aube-header--v13 .aube-brand__mark{width:47px!important;height:47px!important}
  .aube-header--v13 .aube-brand__name{font-size:21px!important}
  .aube-header--v13 .aube-brand__tagline{font-size:8px!important;margin-top:3px!important}
  .aube-header--v13 .aube-menu-toggle{display:flex!important}
  .aube-header--v13 .aube-nav{
    position:fixed!important;
    top:calc(var(--aube-v13-admin-offset) + var(--aube-v13-header-height) + 10px)!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    max-width:520px!important;
    margin:0 0 0 auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:12px!important;
    padding:12px!important;
    max-height:calc(100dvh - var(--aube-v13-header-height) - var(--aube-v13-admin-offset) - 28px)!important;
    overflow:auto!important;
    overscroll-behavior:contain!important;
    background:rgba(255,255,255,.995)!important;
    border:1px solid rgba(16,43,70,.10)!important;
    border-radius:22px!important;
    box-shadow:0 28px 80px rgba(16,43,70,.22)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-10px) scale(.985)!important;
    transform-origin:top right!important;
    transition:opacity .18s ease,visibility .18s ease,transform .18s ease!important;
    z-index:2147481900!important;
  }
  .aube-header--v13 .aube-nav.is-open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0) scale(1)!important;
  }
  .aube-header--v13 .aube-nav__list{display:grid!important;gap:2px!important;width:100%!important}
  .aube-header--v13 .aube-nav__list>li>a{
    min-height:48px!important;
    padding:12px 13px!important;
    border-radius:13px!important;
    font-size:15px!important;
    justify-content:space-between!important;
  }
  .aube-header--v13 .aube-nav__list>li>a:after{display:none!important}
  .aube-header--v13 .aube-mega-menu{
    position:static!important;
    width:auto!important;
    transform:none!important;
    padding:8px!important;
    margin:4px 0 8px!important;
    border-radius:16px!important;
    box-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    display:none!important;
    background:#fff8ef!important;
    border-color:rgba(243,106,11,.11)!important;
  }
  .aube-header--v13 .aube-mega-menu:before{display:none!important}
  .aube-header--v13 .aube-nav-actions.is-submenu-open>.aube-mega-menu{display:grid!important}
  .aube-header--v13 .aube-mega-menu__item{grid-template-columns:42px minmax(0,1fr)!important;padding:10px!important}
  .aube-header--v13 .aube-mega-menu__icon{width:42px!important;height:42px!important;border-radius:12px!important}
  .aube-header--v13 .aube-nav__donate{
    width:100%!important;
    min-width:0!important;
    min-height:58px!important;
    border-radius:16px!important;
    justify-content:flex-start!important;
  }
  .aube-header--v13 .aube-nav__donate-copy small{display:block!important;font-size:9.5px!important}
  body.aube-premium-header-active-v13 .aube-mobile-donate{display:none!important}
}

@media(max-width:560px){
  :root{--aube-v13-header-height:70px}
  .aube-header--v13 .aube-header__inner{padding:0 12px!important}
  .aube-header--v13 .aube-brand__mark{width:44px!important;height:44px!important}
  .aube-header--v13 .aube-brand__name{font-size:19px!important}
  .aube-header--v13 .aube-brand__tagline{display:none!important}
  .aube-header--v13 .aube-menu-toggle{width:44px!important;height:44px!important;border-radius:13px!important}
  .aube-header--v13 .aube-nav{left:8px!important;right:8px!important;top:calc(var(--aube-v13-admin-offset) + var(--aube-v13-header-height) + 8px)!important;padding:10px!important;border-radius:18px!important;max-height:calc(100dvh - var(--aube-v13-header-height) - var(--aube-v13-admin-offset) - 20px)!important}
  .aube-header--v13 .aube-nav__list>li>a{font-size:14.5px!important;min-height:46px!important}
  .aube-header--v13 .aube-mega-menu__item small{font-size:11px!important}
  .aube-header--v13 .aube-nav__donate{min-height:56px!important}
}

@media(prefers-reduced-motion:reduce){
  .aube-header--v13 *,
  .aube-menu-backdrop-v13{transition:none!important;scroll-behavior:auto!important}
}


/* V13 — aligned header rail + forgiving desktop submenu */
:root{--aube-v13-shell:1180px}
.aube-header--v13 .aube-header__inner{width:min(var(--aube-v13-shell),calc(100% - 40px))!important;max-width:var(--aube-v13-shell)!important;padding-left:0!important;padding-right:0!important}
@media(min-width:1101px){
  .aube-header--v13 .aube-nav-actions{position:relative!important}
  .aube-header--v13 .aube-nav-actions:after{content:"";position:absolute;left:-24px;right:-24px;top:100%;height:24px;background:transparent;pointer-events:auto}
  .aube-header--v13 .aube-mega-menu{top:calc(100% + 10px)!important}
  .aube-header--v13 .aube-nav-actions.is-submenu-hover-open>.aube-mega-menu,
  .aube-header--v13 .aube-nav-actions:hover>.aube-mega-menu,
  .aube-header--v13 .aube-nav-actions:focus-within>.aube-mega-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,0)!important}
}
@media(max-width:1100px){.aube-header--v13 .aube-header__inner{width:100%!important;max-width:none!important;padding-left:16px!important;padding-right:16px!important}}
@media(max-width:560px){.aube-header--v13 .aube-header__inner{padding-left:12px!important;padding-right:12px!important}}


/* =========================================================
   V13 — definitive footer cleanup + forgiving actions menu
   ========================================================= */

/* Keep only the redesigned Aube footer. This removes the older theme / Elementor
   footer that was still rendering above the new prefooter + navy footer. */
.aube-legacy-footer-hidden-v13{display:none!important}
body.aube-premium-footer-active-v13 footer:not(.aube-footer),
body.aube-premium-footer-active-v13 #colophon:not(.aube-footer),
body.aube-premium-footer-active-v13 .site-footer:not(.aube-footer),
body.aube-premium-footer-active-v13 .elementor-location-footer:not(.aube-footer),
body.aube-premium-footer-active-v13 [data-elementor-type="footer"]:not(.aube-footer),
body.aube-premium-footer-active-v13 .hfe-footer:not(.aube-footer),
body.aube-premium-footer-active-v13 .hfe-site-footer:not(.aube-footer),
body.aube-premium-footer-active-v13 .footer-wrap:not(.aube-footer),
body.aube-premium-footer-active-v13 .footer-wrapper:not(.aube-footer),
body.aube-premium-footer-active-v13 .footer-area:not(.aube-footer){display:none!important}

@media(min-width:1101px){
  /* Larger invisible corridor so the pointer can travel comfortably from
     “Nos actions” to the panel without crossing a dead zone. */
  .aube-header--v13 .aube-nav-actions{position:relative!important}
  .aube-header--v13 .aube-nav-actions:after{
    content:""!important;
    position:absolute!important;
    left:-34px!important;
    right:-34px!important;
    top:100%!important;
    height:46px!important;
    background:transparent!important;
    pointer-events:auto!important;
  }

  .aube-header--v13 .aube-mega-menu{
    top:calc(100% + 8px)!important;
    transition:opacity .14s ease,transform .14s ease,visibility 0s linear .14s!important;
  }

  /* The JS state is authoritative. Hover remains only as a progressive fallback;
     clicked menus stay pinned until outside click / Escape / second click. */
  .aube-header--v13 .aube-nav-actions.is-submenu-hover-open>.aube-mega-menu,
  .aube-header--v13 .aube-nav-actions.is-submenu-open>.aube-mega-menu,
  .aube-header--v13 .aube-nav-actions:focus-within>.aube-mega-menu,
  .aube-header--v13 .aube-nav-actions:hover>.aube-mega-menu{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate(-50%,0)!important;
    transition-delay:0s!important;
  }

  .aube-header--v13 .aube-nav-actions.is-submenu-hover-open .aube-nav-chevron,
  .aube-header--v13 .aube-nav-actions.is-submenu-open .aube-nav-chevron{
    transform:rotate(180deg)!important;
  }
}

/* Mobile/tablet: no hover race at all; one tap opens, one tap closes. */
@media(max-width:1100px){
  .aube-header--v13 .aube-nav-actions:hover>.aube-mega-menu{display:none!important}
  .aube-header--v13 .aube-nav-actions.is-submenu-open>.aube-mega-menu{
    display:grid!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}
