/* Consolith — coquille commune des pages (tokens v1.1) */
:root{
  --navy:#0A1628; --gold:#C9A04E; --cream:#FAF7F2; --bg:#F5F6F8; --surface:#FFFFFF;
  --border:#E3E6EB; --border-control:#C9CFD8;
  --accent:#2E6BD6; --accent-hover:#2559B4; --accent-active:#1F4A99;
  --success:#1F6F50; --text:#1C2433; --text-2:#4A5261; --text-3:#9AA3B0;
  --focus-ring:0 0 0 3px rgba(46,107,214,0.18);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--surface);font-family:'Inter Tight',system-ui,sans-serif;color:var(--text);font-size:13px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
a:hover{color:var(--accent-hover);text-decoration:underline}
a,button,input,select,.card{transition:color .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
section{scroll-margin-top:80px}
.wrap{max-width:1312px;margin:0 auto;padding:0 32px}
.eyebrow{font-size:11px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-2)}
.h-section{font-size:22px;font-weight:600;letter-spacing:-0.01em;margin-top:8px}
.btn{display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 14px;border:none;border-radius:4px;background:var(--accent);color:#fff;font-family:inherit;font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer}
.btn:hover{background:var(--accent-hover);color:#fff;text-decoration:none}
.btn:active{background:var(--accent-active);transform:scale(0.985)}
.btn.secondary{background:var(--surface);color:var(--text);border:1px solid var(--border-control)}
.btn.secondary:hover{background:var(--bg);color:var(--text)}
.btn:focus-visible,a:focus-visible,button:focus-visible{outline:none;box-shadow:var(--focus-ring)}

/* En-tête */
header{position:sticky;top:0;z-index:20;height:64px;background:rgba(255,255,255,0.86);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--border);transition:box-shadow .18s ease}
header.scrolled{box-shadow:0 1px 2px rgba(10,22,40,0.05)}
.nav{height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.logo{display:flex;align-items:center;gap:12px;color:var(--navy)}
.logo:hover{text-decoration:none;color:var(--navy)}
.logo span{font-size:19px;font-weight:400;letter-spacing:-0.01em}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a:not(.btn){font-size:13px;font-weight:500;color:var(--text-2)}
.nav-links a:not(.btn):hover,.nav-links a[aria-current="page"]{color:var(--text);text-decoration:none}

/* Bandeau de page */
.page-hero{background:var(--navy);padding:clamp(56px,7vw,88px) 0}
.page-hero .eyebrow{color:var(--text-3)}
.page-hero h1{margin:8px 0 0;font-size:clamp(26px,2.6vw,34px);font-weight:600;line-height:1.2;letter-spacing:-0.02em;color:#fff;max-width:760px;text-wrap:balance}
.page-hero p{margin:16px 0 0;font-size:14px;line-height:1.6;color:var(--text-3);max-width:640px;text-wrap:pretty}

/* Bandeau d'appel final */
.cta-band{background:var(--cream);padding:clamp(56px,6vw,80px) 0;text-align:center}
.cta-band .h-section{margin-top:0}
.cta-band p{margin:8px 0 20px;font-size:13px;color:var(--text-2)}

/* Pied de page */
footer{background:var(--navy);padding:40px 0}
.foot{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.foot .logo span{color:#fff;font-size:16px}
.foot-links{display:flex;align-items:center;gap:24px;font-size:12px;flex-wrap:wrap}
.foot-links a,.foot-links span{color:var(--text-3)}
.foot-links a:hover{color:#fff;text-decoration:none}

@media (max-width:820px){
  .nav-links a:not(.btn){display:none}
  .wrap{padding:0 20px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none !important;animation:none !important}
}
