/* ERBS Désamiantage — jaune soleil + vert, inspiré de l'identité originale. */
:root { --erbs-jaune:#FCBE2C; --erbs-vert:#1EB434; --erbs-noir:#101C14; }
/* En-tête clair : logo horizontal bien cadré, navigation alignée au centre. */
.header-style-four { z-index:10000; }
.header-style-four .header-top {background:var(--erbs-noir);}
.header-style-four .header-top .top-right {padding:5px 0;}
.header-style-four .header-top .top-right li a:hover { color:var(--erbs-jaune)!important; }
.header-style-four .header-lower,
.header-style-four.fixed-header .header-lower {background:#fff!important; box-shadow:0 3px 18px rgba(16,28,20,.15); border-bottom:3px solid var(--erbs-jaune);}
.header-style-four .header-lower .main-box {display:flex; align-items:center; justify-content:space-between; min-height:100px; gap:18px;}
.main-header .logo-box {float:none!important; flex:0 0 auto; min-width:0;}
.header-style-four .logo-box .logo,
.header-style-four.fixed-header .logo-box .logo {padding:9px 0!important; margin:0;}
.main-header .logo-box .logo img.erbs-site-logo,
.header-style-four.fixed-header .logo-box .logo img.erbs-site-logo {width:355px!important; max-width:100%; height:auto!important; display:block; vertical-align:middle;}
.header-style-four .nav-outer {position:relative; float:none; flex:1 1 auto; min-width:0; display:flex; justify-content:flex-end; align-items:center;}
.header-style-four .main-menu {float:none;}
.header-style-four .main-menu .navigation > li { margin-left:17px; }
.header-style-four .main-menu .navigation > li > a,
.header-style-four.fixed-header .main-menu .navigation > li > a {color:var(--erbs-noir)!important; padding:32px 0!important; font-size:13px; font-weight:700; white-space:nowrap;}
.header-style-four .main-menu .navigation > li.current > a,
.header-style-four .main-menu .navigation > li:hover > a,
.header-style-four.fixed-header .main-menu .navigation > li.current > a,
.header-style-four.fixed-header .main-menu .navigation > li:hover > a {color:var(--erbs-vert)!important;}
.header-style-four .main-menu .navigation > li.current > a:after {content:''; position:absolute; bottom:23px; left:0; right:0; height:3px; background:var(--erbs-jaune);}
.header-style-four.fixed-header .logo-box .logo img.erbs-site-logo {width:330px!important;}
.header-style-four.fixed-header .header-lower .main-box {min-height:88px;}
.header-style-four .navbar-toggler .icon {color:var(--erbs-vert)!important;}
.header-style-four .navbar-toggler {border:0; padding:8px; cursor:pointer;}
/* Signature jaune et vert partout sans rouge. */
.erbs-map-route { padding:12px 18px; margin:0; background:#f5fff5; font-size:15px; border-top:3px solid var(--erbs-jaune);}
.erbs-map-route a {color:#158528!important; font-weight:700; text-decoration:underline;}
.main-footer .footer-logo img {width:280px!important; max-width:100%; height:auto!important;}
.main-header .contact-info li a:hover {color:var(--erbs-jaune)!important;}
.btn-style-one {background-color:var(--erbs-jaune); color:var(--erbs-noir); border-color:var(--erbs-jaune);}
.btn-style-one:hover {color:#fff;}
/* Empêcher les éléments de navigation d'empiéter sur le grand logo. */
@media(min-width:1200px) and (max-width:1350px) {
 .main-header .logo-box .logo img.erbs-site-logo {width:305px!important;}
 .header-style-four .main-menu .navigation > li {margin-left:10px;}
 .header-style-four .main-menu .navigation > li > a {font-size:12px;}
}
/* Téléphone/tablette : barre logo + menu qui reste toujours visible au scroll. */
@media(max-width:1199px) {
 .header-style-four,
 .header-style-four.fixed-header {position:sticky!important; top:0!important; left:0; z-index:10000; width:100%; background:#fff!important; animation:none!important;}
 .header-style-four .header-top {display:none!important;}
 .header-style-four .header-lower,
 .header-style-four.fixed-header .header-lower {position:relative!important; top:auto!important; left:auto!important; width:100%!important; background:#fff!important; animation:none!important;}
 .header-style-four .header-lower .main-box,
 .header-style-four.fixed-header .header-lower .main-box {min-height:86px!important; display:flex!important; align-items:center!important; flex-wrap:nowrap!important; gap:8px!important;}
 .header-style-four .logo-box { flex:0 1 auto!important; width:auto!important; }
 .header-style-four .logo-box .logo,
 .header-style-four.fixed-header .logo-box .logo {padding:8px 0!important;}
 .header-style-four .logo-box .logo img.erbs-site-logo,
 .header-style-four.fixed-header .logo-box .logo img.erbs-site-logo {width:310px!important; max-width:min(310px, calc(100vw - 92px))!important; height:auto!important;}
 .header-style-four .nav-outer, .main-header .nav-outer {position:relative!important; float:none!important; width:auto!important; margin:0!important; flex:0 0 auto;}
 .header-style-four .main-menu, .main-header .main-menu {width:auto!important; padding:0!important; margin:0!important; float:none!important;}
 .main-menu .navbar-header {display:block!important; float:none!important; width:auto!important; padding:0!important; right:auto!important;}
 .navbar-expand-md .navbar-toggler {display:block!important;}
 .navbar-expand-md .navbar-collapse {display:none!important; position:absolute!important; right:0!important; top:calc(100% + 23px)!important; left:auto!important; width:min(390px,calc(100vw - 22px))!important; max-height:calc(100dvh - 94px); overflow-y:auto!important; background:#fff!important; box-shadow:0 14px 28px rgba(0,0,0,.22); border-top:4px solid var(--erbs-jaune)!important; border-radius:0 0 12px 12px!important; z-index:10002!important; padding:4px 0!important; margin:0!important; float:none!important;}
 .navbar-expand-md .navbar-collapse.show {display:block!important;}
 .header-style-four .main-menu .navigation {display:block!important; width:100%!important; margin:0!important; padding:0!important; border:0!important; float:none!important;}
 .header-style-four .main-menu .navigation > li {display:block!important; width:100%!important; float:none!important; margin:0!important; padding:0!important; border-bottom:1px solid #e4ede4!important;}
 .header-style-four .main-menu .navigation > li > a,
 .header-style-four.fixed-header .main-menu .navigation > li > a {display:block!important; color:var(--erbs-noir)!important; font-size:14px!important; padding:13px 16px!important; text-align:left!important; white-space:normal!important;}
 .header-style-four .main-menu .navigation > li.current > a:after {display:none!important;}
 .header-style-four .main-menu .navigation > li > ul {position:relative!important; width:100%!important; left:auto!important; right:auto!important; top:auto!important; padding:0!important; margin:0!important; float:none!important; opacity:1!important; visibility:visible!important; background:#eaffec!important; border:none!important; transform:none!important;}
 .header-style-four .main-menu .navigation > li > ul > li > a {color:#17331b!important; padding:10px 22px!important;}
 .header-style-four .main-menu .navigation li.dropdown > .dropdown-btn {right:5px!important; top:5px!important; color:var(--erbs-vert)!important; z-index:2; cursor:pointer;}
}
@media(max-width:480px) {
 .header-style-four .header-lower .main-box,
 .header-style-four.fixed-header .header-lower .main-box {min-height:78px!important;}
 .header-style-four .logo-box .logo img.erbs-site-logo,
 .header-style-four.fixed-header .logo-box .logo img.erbs-site-logo {width:280px!important; max-width:min(280px,calc(100vw - 85px))!important;}
 .navbar-expand-md .navbar-collapse {top:calc(100% + 20px)!important;}
}

/* sticky can fail when the outer page-wrapper uses overflow:hidden as a scroll container */
@media(max-width:1199px){.page-wrapper {overflow:clip!important;} }
@supports not (overflow:clip) { @media(max-width:1199px){.page-wrapper {overflow:visible!important;} } }
.btn-style-one {background:var(--erbs-jaune)!important;color:var(--erbs-noir)!important;}
.btn-style-one:hover {background:var(--erbs-vert)!important;color:#fff!important;}
.erbs-valeurs {display:flex; flex-direction:column; align-items:center; justify-content:center; gap:15px; min-height:160px;}
.erbs-valeurs span {font-weight:800; color:#197e29; border-left:5px solid var(--erbs-jaune); padding:5px 16px; background:#f1fff1; letter-spacing:1px;}


/* ERBS — bandeau contact mobile visible en haut, puis logo + menu seuls au scroll.
   Header sticky décalé de la hauteur fixe du bandeau : il disparaît naturellement
   lorsqu’on fait défiler la page sans masquer le logo ni le menu. */
@media (max-width:1199px) {
  .header-style-four { --erbs-mobile-topbar-height:46px; }
  .header-style-four,
  .header-style-four.fixed-header {
    position:sticky!important;
    top:calc(-1 * var(--erbs-mobile-topbar-height))!important;
    z-index:10000!important;
  }
  .header-style-four .header-top,
  .header-style-four.fixed-header .header-top {
    display:block!important;
    position:relative!important;
    height:var(--erbs-mobile-topbar-height)!important;
    min-height:var(--erbs-mobile-topbar-height)!important;
    overflow:hidden;
    background:var(--erbs-noir)!important;
    border-bottom:2px solid var(--erbs-vert);
  }
  .header-style-four .header-top .auto-container {
    height:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    padding-left:12px;
    padding-right:12px;
  }
  .header-style-four .header-top .top-right {
    display:block!important;
    position:relative;
    width:100%!important;
    float:none!important;
    text-align:left!important;
    padding:0!important;
    margin:0!important;
  }
  .header-style-four .header-top .contact-info {
    float:none!important;
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    width:100%;
    padding:0!important;
    margin:0!important;
  }
  .header-style-four .header-top .contact-info li,
  .main-header .header-top .contact-info li {
    display:block!important;
    float:none!important;
    width:auto!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    white-space:nowrap;
    font-size:12px!important;
    line-height:22px!important;
  }
  .header-style-four .header-top .contact-info li span {
    float:none!important;
    display:inline!important;
    width:auto!important;
    height:auto!important;
    line-height:inherit!important;
    text-align:inherit!important;
    border:0!important;
    margin:0!important;
    padding:0!important;
  }
  .header-style-four .header-top .contact-info li a {
    display:inline-flex!important;
    align-items:center;
    color:#fff!important;
    font-size:12px!important;
    line-height:22px!important;
    font-weight:700!important;
    text-decoration:none!important;
    white-space:nowrap;
  }
  .header-style-four .header-top .contact-info li:last-child a {
    color:var(--erbs-jaune)!important;
    font-weight:800!important;
  }
  .header-style-four .header-top .contact-info li a:hover,
  .header-style-four .header-top .contact-info li a:focus {
    color:#92ef86!important;
    text-decoration:underline!important;
  }
  .header-style-four .header-lower,
  .header-style-four.fixed-header .header-lower {
    position:relative!important;
    top:auto!important;
    transform:none!important;
    animation:none!important;
  }
}
@media (max-width:359px) {
  .header-style-four .header-top .auto-container {padding-left:8px;padding-right:8px;}
  .header-style-four .header-top .contact-info {gap:6px;}
  .header-style-four .header-top .contact-info li a {font-size:11px!important;}
}

/* Menu mobile ancré au conteneur complet, jamais tronqué à gauche. */
@media (max-width:1199px) {
  .header-style-four .header-lower .main-box {position:relative!important;}
  .header-style-four .nav-outer,
  .main-header.header-style-four .nav-outer,
  .header-style-four .main-menu {position:static!important;}
  .header-style-four .navbar-toggler {
    display:flex!important;align-items:center;justify-content:center;
    width:44px!important;height:44px!important; min-width:44px!important;
    background:transparent!important; border:0!important; box-shadow:none!important;
  }
  .header-style-four .navbar-toggler .icon {
    display:block!important;position:relative!important;
    width:24px!important;height:3px!important;line-height:0!important;
    font-size:0!important;border-radius:3px;
    background:var(--erbs-vert)!important;
    box-shadow:0 -8px 0 var(--erbs-vert),0 8px 0 var(--erbs-vert);
  }
  .header-style-four .navbar-toggler .icon:before {content:''!important;}
  .header-style-four .navbar-collapse {
    right:0!important;left:auto!important;top:100%!important;
    width:min(390px, calc(100vw - 30px))!important;
  }
}
