:root{
  --bg1:#0a1124; --bg2:#0b1020; --text:#e8eeff; --muted:#a9b4d0;
  --accent:#7c9cff; --accent2:#55e0c6; --border:#223055;
  --card:rgba(255,255,255,.02); --radius:16px; --shadow:0 10px 30px rgba(0,0,0,.25);
  --max:1120px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:linear-gradient(180deg,var(--bg1),var(--bg2));color:var(--text);font:16px/1.6 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,system-ui,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
.container{max-width:var(--max);margin:0 auto;padding:0 20px}
header.site{position:sticky;top:0;z-index:50;background:rgba(10,17,36,.65);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}
nav{display:flex;align-items:center;gap:18px;height:68px}
.brand{display:flex;align-items:center;gap:12px;font-weight:700}.brand img{height:32px}
nav ul{margin-left:auto;display:flex;gap:16px;list-style:none;padding:0}
nav ul a{display:inline-block;padding:8px 12px;border-radius:10px}
nav ul a:hover,nav ul a.active{background:rgba(255,255,255,.05)}
.lang{display:flex;gap:8px;align-items:center;margin-left:10px}
.flag{width:24px;height:16px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.3);cursor:pointer;opacity:.9;transition:transform .05s ease}
.flag.active{outline:2px solid var(--accent2)} .flag:active{transform:scale(.96)}
.cta{display:inline-block;background:linear-gradient(90deg,var(--accent),var(--accent2));color:#0a0f24;padding:10px 16px;border-radius:999px;font-weight:700;box-shadow:var(--shadow);border:0}
.cta.secondary{background:transparent;color:var(--text);border:1px solid var(--border)}
.hero{padding:80px 0 40px;border-bottom:1px solid var(--border)}
h1{font-size:clamp(28px,4vw,44px);line-height:1.15;margin:0 0 10px}
.lead{color:var(--muted);font-size:clamp(16px,2vw,20px);max-width:820px}
.grid{display:grid;gap:18px}
.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.split{display:grid;gap:24px;grid-template-columns:1.1fr .9fr}
.section{padding:48px 0}
.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}
.kicker{color:var(--accent2);text-transform:uppercase;letter-spacing:.15em;font-size:12px;font-weight:700;margin-bottom:6px}
h2{font-size:clamp(22px,3vw,32px);margin:0 0 14px}
.hero-illus{border-radius:var(--radius);min-height:220px;border:none;display:flex;align-items:center;justify-content:center}
.hero-illus img{width:100%;max-width:300px;height:auto;filter:drop-shadow(0 0 10px rgba(85,224,198,.3))}
.icon{flex:0 0 72px;height:72px;border-radius:10px;background:rgba(124,156,255,.06);display:flex;align-items:center;justify-content:center;border:1px solid var(--border)}
.feature{display:flex;gap:14px;align-items:flex-start}
blockquote{margin:0;padding:14px 16px;border-left:4px solid var(--accent);background:rgba(255,255,255,.03);border-radius:10px}
footer{border-top:1px solid var(--border);padding:28px 0;color:var(--muted);font-size:14px}
footer a{color:var(--muted)}footer a:hover{color:var(--text)}
html[data-lang="fr"] .lang-en{display:none}html[data-lang="en"] .lang-fr{display:none}
@media (max-width:900px){.split{grid-template-columns:1fr}.cols-3,.cols-2{grid-template-columns:1fr}nav ul{display:none}}
.bold{font-weight:800;font-size:1.05rem}
.success{background:#102a1a;border:1px solid #234a32;padding:20px;border-radius:12px}
.error{background:#2a1010;border:1px solid #4a2323;padding:20px;border-radius:12px}
