/* ==========================================================================
   FONTS LOCAL — EB GARAMOND (VARIABLE)
   ========================================================================== */
@font-face{
  font-family:"EB Garamond";
  src:url("/wp-content/themes/maison-le-dore/assets/fonts/EBGaramond-Variable.woff2") format("woff2");
  font-weight:100 900;
  font-style:normal;
  font-display:swap;
}

/* ==========================================================================
   0) VARIABLES GLOBALES
   ========================================================================== */
:root{
  --dld-header-h:70px;
  --dld-adminbar-h:0px;
}

@media (max-width:980px){
  :root{
    --dld-header-h:62px;
  }
}

/* Admin bar */
body.admin-bar{
  --dld-adminbar-h:32px;
}

@media (max-width:782px){
  body.admin-bar{
    --dld-adminbar-h:46px;
  }
}

/* ==========================================================================
   1) HEADER FIXE + COMPENSATION LAYOUT
   ========================================================================== */
#main-header,
#main-header.et-fixed-header{
  position:fixed!important;
  top:0;
  left:0;
  right:0;
  width:100%;
  z-index:99999;
  margin-top:0!important;
  will-change:transform;
  min-height:var(--dld-header-h)!important;
}

#page-container{
  padding-top:calc(var(--dld-header-h) + var(--dld-adminbar-h))!important;
}

.et-fixed-header,
.et-header--fixed,
#main-header{
  transition:none!important;
}

/* Admin bar */
body.admin-bar #main-header,
body.admin-bar #main-header.et-fixed-header{
  top:var(--dld-adminbar-h)!important;
}

/* ==========================================================================
   2) HEADER — MOBILE (Divi centered header)
   ========================================================================== */
@media (max-width:980px){

  #main-header,
  #main-header.et-fixed-header{
    min-height:var(--dld-header-h)!important;
    padding:6px 12px!important;
  }

  #main-header .container{
    padding:0!important;
    position:relative!important;
  }

  /* Logo sizing */
  #main-header #logo{
    max-height:150px!important;
    height:auto!important;
    width:auto!important;
  }

  #main-header .logo_container a,
  #main-header #logo,
  #main-header .site-logo{
    display:inline-block!important;
    vertical-align:middle!important;
    transform:none!important;
    margin:0!important;
  }

  /* Hide "Select Page" label */
  #et_mobile_nav_menu .select_page,
  #et_mobile_nav_menu .mobile_nav .select_page,
  #main-header .mobile_nav .select_page,
  span.select_page{
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    overflow:hidden!important;
  }

  /* Mobile nav wrapper clean */
  #et_mobile_nav_menu,
  #et_mobile_nav_menu .mobile_nav{
    background:transparent!important;
    box-shadow:none!important;
  }

  #et_mobile_nav_menu .mobile_nav{
    padding:0!important;
    margin:0!important;
    min-height:0!important;
    border:0!important;
  }

  #et_mobile_nav_menu .mobile_nav:before{
    display:none!important;
  }

  /* ==========================================================================
     PATCH MOBILE NAV (burger + panel width) — version finale
     ========================================================================== */

  /* Burger: zone + icône centrées */
  #et_mobile_nav_menu .mobile_menu_bar{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:44px!important;
    height:44px!important;
    line-height:44px!important;
    padding:0!important;
    margin:0!important;
    position:relative!important;
    top:0!important;
    right:0!important;
    transform:none!important;
    touch-action:manipulation;
  }

  #et_mobile_nav_menu .mobile_menu_bar:before{
    position:relative!important;
    top:0!important;
    font-size:26px!important;
    line-height:1!important;
  }

  /* Bloc navigation (burger) calé à droite, centré verticalement */
  #main-header #et-top-navigation{
    position:absolute!important;
    right:10px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    text-align:right!important;
    clear:none!important;
    float:none!important;
  }

  .et_header_style_centered #et_mobile_nav_menu,
  .et_header_style_centered #et_mobile_nav_menu .mobile_nav{
    float:none!important;
    text-align:right!important;
  }

  /* Panneau menu moins large */
  header#main-header #et_mobile_nav_menu .et_mobile_menu{
    position:fixed!important;
    top:calc(var(--dld-header-h) + var(--dld-adminbar-h) + 12px)!important;
    right:12px!important;
    left:auto!important;
    width:min(78vw,300px)!important;
    min-width:0!important;
    max-height:calc(100vh - var(--dld-header-h) - var(--dld-adminbar-h) - 16px)!important;
    overflow:auto!important;
    background:#fff!important;
    border-top:2px solid #2ea3f2!important;
    box-shadow:0 10px 30px rgba(0,0,0,.14)!important;
    border-radius:12px!important;
    z-index:100001!important;
  }

  header#main-header #et_mobile_nav_menu .et_mobile_menu,
  header#main-header #et_mobile_nav_menu .et_mobile_menu li,
  header#main-header #et_mobile_nav_menu .et_mobile_menu li a{
    text-align:left!important;
  }

  header#main-header #et_mobile_nav_menu .et_mobile_menu li a{
    padding:12px 14px!important;
    line-height:1.25!important;
  }

  header#main-header #et_mobile_nav_menu .et_mobile_menu a{
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }

  #et-main-area{
    padding-top:0!important;
  }
}

/* Desktop logo max-height */
@media (min-width:981px){
  #main-header #logo{
    max-height:60px!important;
    height:auto!important;
  }
}