/* Barre de navigation commune (pages en site.css) — identique à chic.css */
header.nav{--ink:#0E0E0E;--line:rgba(250,250,248,.09);--line2:rgba(250,250,248,.16);--white:#FAFAF8;--mute:#8E8A83;--mute2:#B5B1A9;--brunc:#B88A62;--ease:cubic-bezier(.2,.7,.2,1);
 font-family:Inter,system-ui,sans-serif;font-weight:300;color:var(--white);position:sticky!important;min-height:0;background:rgba(14,14,14,.94)!important;box-shadow:none}
header.nav .wrap{max-width:1360px;margin:0 auto;padding:0 48px;min-height:0;flex-wrap:nowrap}
header.nav a{color:inherit;text-decoration:none}
header.nav .menu{font-size:13px;color:inherit;flex-wrap:nowrap}
header.nav .menu a.on{box-shadow:none}
@media (max-width:820px){header.nav .wrap{padding:0 20px}}
/* ---------- navigation ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .4s,border-color .4s,backdrop-filter .4s;border-bottom:1px solid transparent}
.nav.solid{background:rgba(14,14,14,.78);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border-bottom-color:var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;height:76px}
.brand{display:flex;align-items:center;gap:16px}
.brand img{height:34px;width:auto}
.brand span{font-family:'Space Grotesk';font-weight:400;font-size:11px;letter-spacing:.42em}
.menu{display:flex;gap:34px}
.menu a{font-size:13px;font-weight:400;color:var(--mute2);position:relative;padding:6px 0;transition:color .3s}
.menu a:after{content:'';position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--brunc);transition:right .4s var(--ease)}
.menu a:hover{color:var(--white)}.menu a:hover:after{right:0}
.nav-r{display:flex;gap:10px;align-items:center}
.lnk{height:40px;padding:0 16px;display:inline-flex;align-items:center;border:1px solid var(--line2);font-family:'IBM Plex Mono';font-size:10px;letter-spacing:.2em;text-transform:uppercase;transition:border-color .3s,background .3s,color .3s}
.lnk:hover{border-color:var(--white)}
.lnk.fill{background:var(--white);color:var(--ink);border-color:var(--white)}
.lnk.fill:hover{background:var(--brunc);border-color:var(--brunc)}
@media (max-width:1060px){.menu{display:none}}

/* menu : sous-menu espace client */
.menu{align-items:center}
.menu a.on{color:var(--white)}.menu a.on:after{right:0}
.menu .dd{position:relative}
.menu .dd>a{display:inline-flex;align-items:center;gap:8px}
.menu .dd .car{width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .3s}
.menu .dd:hover .car,.menu .dd:focus-within .car{transform:rotate(225deg) translateY(-1px)}
.menu .dd.on>a{color:var(--white)}
.menu .sub{position:absolute;top:calc(100% + 14px);left:-20px;min-width:260px;background:#121212;border:1px solid var(--line2);padding:8px 0;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .25s,transform .25s,visibility .25s;box-shadow:0 24px 48px rgba(0,0,0,.4)}
.menu .sub:before{content:'';position:absolute;left:0;right:0;top:-16px;height:16px}
.menu .dd:hover .sub,.menu .dd:focus-within .sub{opacity:1;visibility:visible;transform:none}
.menu .sub a{display:block;padding:11px 20px;color:var(--mute2);font-size:13px}
.menu .sub a:after{display:none}
.menu .sub a:hover{color:var(--white);background:rgba(250,250,248,.05)}
.menu .sub small{display:block;font-family:'IBM Plex Mono';font-size:10px;letter-spacing:.08em;color:var(--mute);margin-top:3px}
.menu .sub .sep{display:block;height:1px;background:var(--line2);margin:6px 0}

.soc{display:inline-flex;gap:18px;flex-wrap:wrap}.soc a{border-bottom:1px solid #B88A62;padding-bottom:2px}.soc a:hover{color:#FAFAF8}

.csub2{background:#141414;border-bottom:1px solid #2A2927}
.csub2 .wrap{display:flex;overflow-x:auto;max-width:1360px;margin:0 auto;padding:0 48px}
.csub2 a{padding:16px 0 15px;margin-right:26px;color:#B5B1A9;font:400 14px Inter;white-space:nowrap;border-bottom:2px solid transparent;text-decoration:none}
.csub2 a.on,.csub2 a:hover{color:#FAFAF8;border-bottom-color:#B88A62}
@media (max-width:820px){.csub2 .wrap{padding:0 20px}}
/* bouton de langue : drapeau de la langue de la page en légère transparence derrière le texte */
.lnk.lang{position:relative;overflow:hidden;isolation:isolate;font-weight:500}
.lnk.lang::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.32;background-size:cover;background-position:center;transition:opacity .3s}
.lnk.lang:hover::before{opacity:.55}
.lnk.lang[hreflang=fr]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 30' preserveAspectRatio='none'%3E%3CclipPath id='t'%3E%3Cpath d='M30,15h30v15zv15h-30zh-30v-15zv-15h30z'/%3E%3C/clipPath%3E%3Cpath d='M0,0v30h60v-30z' fill='%23012169'/%3E%3Cpath d='M0,0 60,30M60,0 0,30' stroke='%23fff' stroke-width='6'/%3E%3Cpath d='M0,0 60,30M60,0 0,30' clip-path='url(%23t)' stroke='%23C8102E' stroke-width='4'/%3E%3Cpath d='M30,0v30M0,15h60' stroke='%23fff' stroke-width='10'/%3E%3Cpath d='M30,0v30M0,15h60' stroke='%23C8102E' stroke-width='6'/%3E%3C/svg%3E")}
.lnk.lang[hreflang=en]::before{background-image:linear-gradient(90deg,#0055A4 0 33.34%,#fff 33.34% 66.66%,#EF4135 66.66%)}

/* menu mobile (bouton « Menu » ajouté par assets/api.js sous 1060 px) */
.mbtn{display:none;height:40px;padding:0 14px;align-items:center;border:1px solid var(--line2,rgba(250,250,248,.16));background:transparent;color:#FAFAF8;font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer}
@media (max-width:1060px){.mbtn{display:inline-flex}}
.mpan{position:fixed;inset:0;z-index:120;background:#0E0E0E;color:#FAFAF8;display:flex;flex-direction:column;overflow-y:auto;font-family:Inter,system-ui,sans-serif;font-weight:300}
.mpan[hidden]{display:none}
.mpan .mh{display:flex;justify-content:space-between;align-items:center;height:76px;padding:0 20px;border-bottom:1px solid rgba(250,250,248,.09);flex:none}
.mpan .mh img{height:30px}
.mpan nav{padding:12px 20px 40px}
.mpan a{display:block;color:#FAFAF8;text-decoration:none;font:300 26px/1.2 'Space Grotesk',sans-serif;letter-spacing:-.02em;padding:14px 0;border-bottom:1px solid rgba(250,250,248,.09)}
.mpan a.on{color:#B88A62}
.mpan .mk{font:400 10px 'IBM Plex Mono',monospace;letter-spacing:.2em;text-transform:uppercase;color:#B88A62;margin:26px 0 4px}
.mpan .sub a{font:400 17px Inter,sans-serif;padding:12px 0;color:#E4E0D8}
.mpan .sub a small{display:block;font:400 11px 'IBM Plex Mono',monospace;letter-spacing:.06em;color:#8E8A83;margin-top:3px}
body.mopen{overflow:hidden}
.mpan .mh a{border:0;padding:0}
