/* Menu principal avec sous-menus numérotés (accueil et pages de services) */
.menu-list{display:flex;gap:26px;list-style:none;margin:0;padding:0;align-items:center}
.menu-list>li>a,.sub-btn{font:inherit;font-size:15px;font-weight:500;color:inherit;text-decoration:none;background:none;border:0;padding:6px 0;cursor:pointer;display:inline-flex;align-items:center;gap:7px}
.menu-list>li>a:hover,.sub-btn:hover,.menu-list>li>a[aria-current]{color:var(--vert-d)}
.sub-btn svg{width:10px;height:10px;transition:transform .3s var(--ease)}
.has-sub{position:relative}
.sub{position:absolute;top:calc(100% + 16px);left:-20px;min-width:370px;background:var(--calque);border:1px solid var(--terre);padding:8px 0;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s,transform .35s var(--ease),visibility .25s;box-shadow:0 22px 40px -24px rgba(28,15,10,.45);z-index:70}
.sub::before{content:"";position:absolute;left:0;right:0;top:-17px;height:17px}
.has-sub:hover .sub,.has-sub:focus-within .sub,.has-sub.is-open .sub{opacity:1;visibility:visible;transform:none}
.has-sub:hover .sub-btn svg,.has-sub.is-open .sub-btn svg{transform:rotate(180deg)}
.sub ol{list-style:none;margin:0;padding:0}
.sub a{display:grid;grid-template-columns:38px 1fr;align-items:baseline;padding:12px 20px;text-decoration:none;font-weight:500;font-size:15px;color:var(--ink);transition:background .2s,color .2s}
.sub a:hover,.sub a[aria-current]{background:var(--calque-2);color:var(--vert-d)}
.sub .num{font-family:var(--f-mono);font-size:12px;color:var(--vert-d)}
.burger{display:none;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;color:var(--ink);padding:0}
.burger span{display:block;width:22px;height:2px;background:currentColor;transition:transform .3s var(--ease),opacity .2s}
.menu-open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-open .burger span:nth-child(2){opacity:0}
.menu-open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.menu-open .nav{transform:none!important}

/* Pied de page commun */
.foot{grid-template-columns:2fr 1fr 1fr 1fr!important}
.foot .foot-h{margin:0 0 12px;font-family:var(--f-sans);font-size:13px;font-weight:500;letter-spacing:0;color:var(--on-dark-muted)}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
@media (max-width:860px){.foot{grid-template-columns:1fr 1fr!important}.foot>div:first-child,.foot .legal{grid-column:1/-1}}

@media (max-width:1100px){
  .burger{display:inline-flex}
  .menu{position:fixed;left:0;right:0;top:76px;bottom:0;background:var(--calque);overflow-y:auto;padding:12px var(--pad) 110px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .3s,transform .4s var(--ease),visibility .3s;z-index:55}
  .menu-open .menu{opacity:1;visibility:visible;transform:none}
  .menu-open{overflow:hidden}
  .menu-list{flex-direction:column;align-items:stretch;gap:0}
  .menu-list>li{border-bottom:1px solid var(--line)}
  .menu-list>li>a,.sub-btn{width:100%;justify-content:space-between;padding:16px 0;font-size:20px;font-weight:700;font-stretch:110%}
  .sub-btn svg{width:14px;height:14px}
  .sub{position:static;display:none;min-width:0;opacity:1;visibility:visible;transform:none;border:0;box-shadow:none;background:none;padding:0 0 12px}
  .sub::before{display:none}
  .has-sub.is-open .sub{display:block}
  .has-sub:hover .sub-btn svg{transform:none}
  .has-sub.is-open .sub-btn svg{transform:rotate(180deg)}
  .sub a{padding:12px 0;font-size:17px}
}
@media (max-width:860px){.menu{top:64px}}
