:root {
  --pine: #1a2e3b;
  --pine-2: #2d4a5e;
  --ivory: #ffffff;
  --ivory-2: #f8fafc;
  --brass: #c8a84b;
  --brass-2: #b08e36;
  --ink: #1a2e3b;
  --clay: #c8a84b;
  --paper: #ffffff;
  --rule: #e2e8f0;
  --mute: #64748b;
  --shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ═══════════════════════════════════════
   DRAWER LOGIN + LANG (mobile)
   Loaded on all pages via /css/modern.css
═══════════════════════════════════════ */
.dlogin-row{
  margin-top:28px; padding:24px 0;
  border-top:1px solid var(--rule); border-bottom:1px solid var(--rule);
  display:flex; flex-direction:column; gap:12px;
}
.dlogin-text{
  font-family:'JetBrains Mono', ui-monospace, monospace;
  font-size:11px; letter-spacing:.18em; text-transform:uppercase;
  color:var(--mute);
}
.drawer .dlogin-cta{
  display:inline-flex !important; align-items:center; gap:8px;
  padding:14px 20px; border:1px solid var(--pine); border-radius:4px;
  background:var(--pine); color:#ffffff;
  font-size:15px; font-weight:500;
  text-decoration:none;
  justify-content:center;
  transition:background .2s, transform .15s;
  width:100%;
}
.drawer .dlogin-cta:hover{background:var(--pine-2); transform:translateY(-1px)}
.drawer .dlogin-cta svg{width:16px; height:16px; flex-shrink:0; stroke:currentColor}

.dlang-row{
  margin-top:18px; display:flex; flex-direction:column; gap:10px;
}
.drawer .lang-drawer{
  display:inline-flex !important;
  flex-wrap:wrap; gap:6px; align-items:center;
  border:1px solid var(--rule); border-radius:999px;
  padding:10px 16px; font-size:13px;
  font-family:'JetBrains Mono', ui-monospace, monospace;
  letter-spacing:.18em;
  width:fit-content;
}
.drawer .lang-drawer a{color:var(--pine); opacity:.65; padding:2px 4px; text-decoration:none}
.drawer .lang-drawer a:hover{opacity:1}
.drawer .lang-drawer b{color:var(--brass-2); font-weight:500; opacity:1}
.drawer .lang-drawer > span{opacity:.35; margin:0 2px}

/* Header login link (desktop only) */
.nav-login{
  display:inline-flex; align-items:center; gap:6px;
  font-size:13px; color:var(--pine); opacity:.75;
  padding:8px 10px; border-radius:999px;
  text-decoration:none;
  transition:opacity .2s, background .2s;
}
.nav-login:hover{opacity:1; background:var(--ivory-2)}
.nav-login svg{width:14px; height:14px; stroke:currentColor}
@media (max-width:960px){ .nav-login{display:none} }

/* Already client notice (on inscription + choix-plan pages) */
.already-client{
  margin:28px auto; max-width:720px; padding:22px 26px;
  background:#f8fafc; border:1px solid #e2e8f0; border-radius:6px;
  display:flex; flex-wrap:wrap; gap:18px; align-items:center; justify-content:space-between;
}
.already-client .text{display:flex; flex-direction:column; gap:4px; flex:1 1 250px}
.already-client .t{font-weight:500; color:var(--pine); font-size:15px}
.already-client .s{color:var(--mute); font-size:13px}
.already-client .cta{
  display:inline-flex; align-items:center; gap:8px;
  padding:12px 20px; background:var(--pine); color:#ffffff;
  border-radius:4px; font-size:14px; font-weight:500;
  white-space:nowrap; text-decoration:none;
  transition:background .2s;
}
.already-client .cta:hover{background:var(--pine-2)}
