/* Bandeau commun hors workspace (chantier coquille 2026-09-30, spec §3.6, D1/D2).
   Source : règles .nav/.brand de la landing (web/index.html). TOUT est scopé sous .nav : les 10 autres pages
   chargent /assets/styles.css, dont .btn (pill), .brand et .wrap (1600 px) ne doivent pas être touchés.
   Tokens posés sur .nav (pas :root) pour ne jamais écraser un token homonyme d'une page.
   Fragment HTML canonique, copié à l'identique sur 11 pages et vérifié par functions/test/web/site-nav.test.ts ;
   sur /login : <header class="nav nav--no-login">. */
.nav{
  --ink:#0B1220; --ink-edge:#1E2E45; --ink-fg:#DDE6F2; --ink-mut:#7C8DA6;
  --blue:#1A63D6; --blue-dp:#134FB4; --blue-br:#4E9BFF; --edge2:#BCC6D6; --white:#FFFFFF; --fg:#0D1524;
  --fUI:'IBM Plex Sans',system-ui,-apple-system,sans-serif; --fM:'IBM Plex Mono',ui-monospace,monospace;
  background:var(--ink);color:var(--ink-fg);position:sticky;top:0;z-index:60;border-bottom:1px solid var(--ink-edge);
  font-family:var(--fUI);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased
}
.nav .wrap{max-width:1240px;margin:0 auto;padding:0 28px;display:flex;align-items:center;gap:26px;height:60px}
.nav .brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}
.nav .brand img{display:block}
.nav .brand b{font-size:17px;font-weight:600;letter-spacing:-.02em;line-height:1.1;display:block}
.nav .brand .o{color:var(--blue-br)}
.nav .brand small{display:block;font-family:var(--fM);font-size:7.5px;letter-spacing:.17em;text-transform:uppercase;color:var(--ink-mut)}
.nav nav{display:flex;gap:22px;margin-left:16px}
.nav nav a{color:#9FB2CA;text-decoration:none;font-size:14px}
.nav nav a:hover{color:#fff}
.nav .grow{flex:1}
.nav .login{color:#9FB2CA;text-decoration:none;font-size:14px}
.nav .login:hover{color:#fff}
.nav--no-login .login{display:none}
.nav .btn{display:inline-block;font-size:14.5px;font-weight:600;padding:11px 19px;border:1px solid var(--edge2);
  background:var(--white);color:var(--fg);text-decoration:none;border-radius:2px;transition:background .15s,border-color .15s;line-height:1.55}
.nav .btn.pri{background:var(--blue);border-color:var(--blue);color:#fff}
.nav .btn.pri:hover{background:var(--blue-dp)}
.nav .btn:focus-visible{outline:2px solid var(--blue-br);outline-offset:2px}
.nav .btn .cta-short{display:none}
@media(max-width:980px){
  .nav nav{display:none}
}
@media(max-width:640px){
  .nav .wrap{gap:10px;height:56px}
  .nav .brand small{display:none}
  .nav .login{white-space:nowrap;font-size:13.5px}
  .nav .btn{white-space:nowrap;padding:9px 12px;font-size:13.5px}
  .nav .btn .cta-full{display:none}
  .nav .btn .cta-short{display:inline}
}
