/* bastien.io — pages légales publiques (autonomes, hors application).
   Mêmes tokens que la page d'attente et que css/bastien.css. */
:root{
  --green-200:#C4E6B0; --green-300:#97D178; --green-500:#4FAE38; --green-700:#2F7D18;
  --ink-950:#0F1511; --ink-900:#161E19; --ink-800:#1F2A24; --ink-700:#33403A;
  --ink-500:#6C7A73; --ink-400:#8F9C95; --ink-200:#D7DED9; --ink-100:#E9EEEB;
  --ink-50:#F4F7F5; --white:#FFFFFF;
  --text-strong:var(--ink-950); --text-body:var(--ink-800); --text-muted:var(--ink-500);
  --text-brand:var(--green-700);
  --surface-page:var(--ink-50); --surface-card:var(--white);
  --border-subtle:var(--ink-100); --border-default:var(--ink-200);
  --font-display:'Bricolage Grotesque','Manrope',system-ui,sans-serif;
  --font-body:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;
  --radius-lg:16px; --radius-pill:999px;
  --shadow-sm:0 1px 3px rgba(15,21,17,.08),0 1px 2px rgba(15,21,17,.04);
}
@media (prefers-color-scheme: dark){
  :root{
    --text-strong:#F4F7F5; --text-body:var(--ink-200); --text-muted:var(--ink-400);
    --text-brand:var(--green-300);
    --surface-page:var(--ink-950); --surface-card:var(--ink-900);
    --border-subtle:var(--ink-800); --border-default:var(--ink-700);
  }
  .brand img{border-radius:22%}
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:var(--font-body);font-size:15px;line-height:1.5;
  color:var(--text-body);background:var(--surface-page);
  -webkit-font-smoothing:antialiased;min-height:100dvh;display:flex;flex-direction:column}
::selection{background:var(--green-200);color:var(--ink-950)}
header{border-bottom:1px solid var(--border-subtle);padding:16px 24px}
.brand{display:flex;align-items:center;gap:10px;max-width:820px;margin:0 auto;text-decoration:none}
.brand img{height:32px;width:auto;display:block}
.wordmark{font-family:var(--font-display);font-weight:800;font-size:19px;
  letter-spacing:-.03em;color:var(--text-strong)}
.wordmark .dot{color:var(--green-500)}
main{flex:1;max-width:820px;width:100%;margin:0 auto;padding:40px 24px 56px}
h1{font-family:var(--font-display);font-weight:800;font-size:clamp(28px,5vw,40px);
  line-height:1.1;letter-spacing:-.03em;color:var(--text-strong);margin:0 0 8px;text-wrap:balance}
.sous{color:var(--text-muted);font-size:14px;margin:0 0 28px}
.card{background:var(--surface-card);border:1px solid var(--border-subtle);
  border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:26px;display:grid;gap:15px;
  line-height:1.7;font-size:14.5px}
.card p{margin:0;text-wrap:pretty}
.card strong{color:var(--text-strong)}
.card ol,.card ul{margin:0;padding-left:20px;display:grid;gap:9px}
a{color:var(--text-brand);font-weight:600}
.note{color:var(--text-muted);font-size:12.5px}
.encart{background:color-mix(in srgb,var(--green-500) 8%,transparent);
  border:1px solid var(--green-300);border-radius:var(--radius-lg);padding:18px 20px}
footer{border-top:1px solid var(--border-subtle);padding:22px 24px;text-align:center;
  font-size:12.5px;color:var(--text-muted)}
footer a{margin:0 8px}
