/* ============================================================
   Jetons Registre (valeurs de frontend/registre-tokens.css)
   ============================================================ */
:root{
  color-scheme: light dark;
  --rs-surface-canvas:#FAFAF9;
  --rs-surface-raised:#FFFFFF;
  --rs-surface-subtle:#F4F4F2;
  --rs-surface-selected:#EDEDEB;
  --rs-text-primary:#111214;
  --rs-text-secondary:#4E4F52;
  --rs-text-muted:#6B6C6E;
  --rs-text-link:#3A5C7E;
  --rs-border-separator:rgba(17,18,20,.08);
  --rs-border-hover:rgba(17,18,20,.12);
  --rs-border-outline:rgba(17,18,20,.16);
  --rs-border-control:rgba(17,18,20,.48);
  --rs-action-background:#1D3B5A;
  --rs-action-hover:#152D46;
  --rs-action-pressed:#0C1A29;
  --rs-action-text:#FFFFFF;
  --rs-focus-shadow:0 0 0 2px #FFFFFF,0 0 0 4px #1D3B5A;
  --rs-elevation-rest:0 0 0 1px rgba(17,18,20,.08);
  --rs-elevation-floating:0 0 0 1px rgba(17,18,20,.08),0 1px 1px 0 rgba(17,18,20,.02),0 4px 8px -4px rgba(17,18,20,.08),0 16px 24px -8px rgba(17,18,20,.1);
  --rs-elevation-product:0 0 0 1px rgba(17,18,20,.08),0 20px 36px -10px rgba(29,59,90,.25),0 10px 18px -10px rgba(17,18,20,.18);
  --rs-state-caution:#8A4B05;
  --rs-state-caution-background:#FCF6EC;
  --rs-state-neutral:#6B6C6E;
  --rs-radius-control:6px;
  --rs-radius-card:12px;
  --rs-radius-pill:9999px;
  --rs-motion-fast:150ms;
  --rs-font-sans:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;
  /* Alias propres à l'accueil */
  --lp-header-bg:rgba(250,250,249,.8);
  --lp-band-bg:#111214;
  --lp-band-text:#FAFAF9;
  --lp-band-text-2:#C5C6C8;
  --lp-band-link:#93A9C1;
  --lp-band-rule:rgba(255,255,255,.08);
  --lp-band-soft:rgba(255,255,255,.06);
  --lp-band-focus:0 0 0 2px #111214,0 0 0 4px #93A9C1;
  --lp-demo-banner-bg:#111214;
  --lp-demo-banner-text:#FAFAF9;
  --lp-slot-hatch:rgba(17,18,20,.035);
  --lp-veil:rgba(17,18,20,.48);
  /* Flèche des liens : décorative, en masque SVG au trait de 1,5 (le caractère U+2192 n'existe pas
     dans les sous-ensembles Archivo servis ; il tomberait sur la police système et serait lu). */
  --lp-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4'/%3E%3C/svg%3E");
}
/* Thème sombre (valeurs de [data-theme="dark"] de registre-tokens.css) */
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --rs-surface-canvas:#0B0C0E;
    --rs-surface-raised:#141518;
    --rs-surface-subtle:#1B1C20;
    --rs-surface-selected:#23252A;
    --rs-text-primary:#FAFAF9;
    --rs-text-secondary:#C5C6C8;
    --rs-text-muted:#A1A1A0;
    --rs-text-link:#93A9C1;
    --rs-border-separator:rgba(255,255,255,.05);
    --rs-border-hover:rgba(255,255,255,.08);
    --rs-border-outline:rgba(255,255,255,.12);
    --rs-border-control:rgba(255,255,255,.36);
    --rs-action-background:#D3DDE8;
    --rs-action-hover:#BCCBDC;
    --rs-action-pressed:#93A9C1;
    --rs-action-text:#0C1A29;
    --rs-focus-shadow:0 0 0 2px #0B0C0E,0 0 0 4px #93A9C1;
    --rs-elevation-rest:0 0 0 1px rgba(255,255,255,.12);
    --rs-elevation-floating:0 0 0 1px rgba(255,255,255,.08),0 16px 24px -8px rgba(0,0,0,.48);
    --rs-elevation-product:0 0 0 1px rgba(255,255,255,.12);
    --rs-state-caution:#F2D8AE;
    --rs-state-caution-background:#2A2216;
    --rs-state-neutral:#A1A1A0;
    --lp-header-bg:rgba(11,12,14,.8);
    --lp-band-bg:#141518;
    --lp-band-focus:0 0 0 2px #141518,0 0 0 4px #93A9C1;
    --lp-slot-hatch:rgba(255,255,255,.035);
    --lp-veil:rgba(0,0,0,.64);
  }
}
:root[data-theme="dark"]{
  --rs-surface-canvas:#0B0C0E;
  --rs-surface-raised:#141518;
  --rs-surface-subtle:#1B1C20;
  --rs-surface-selected:#23252A;
  --rs-text-primary:#FAFAF9;
  --rs-text-secondary:#C5C6C8;
  --rs-text-muted:#A1A1A0;
  --rs-text-link:#93A9C1;
  --rs-border-separator:rgba(255,255,255,.05);
  --rs-border-hover:rgba(255,255,255,.08);
  --rs-border-outline:rgba(255,255,255,.12);
  --rs-border-control:rgba(255,255,255,.36);
  --rs-action-background:#D3DDE8;
  --rs-action-hover:#BCCBDC;
  --rs-action-pressed:#93A9C1;
  --rs-action-text:#0C1A29;
  --rs-focus-shadow:0 0 0 2px #0B0C0E,0 0 0 4px #93A9C1;
  --rs-elevation-rest:0 0 0 1px rgba(255,255,255,.12);
  --rs-elevation-floating:0 0 0 1px rgba(255,255,255,.08),0 16px 24px -8px rgba(0,0,0,.48);
  --rs-elevation-product:0 0 0 1px rgba(255,255,255,.12);
  --rs-state-caution:#F2D8AE;
  --rs-state-caution-background:#2A2216;
  --rs-state-neutral:#A1A1A0;
  --lp-header-bg:rgba(11,12,14,.8);
  --lp-band-bg:#141518;
  --lp-band-focus:0 0 0 2px #141518,0 0 0 4px #93A9C1;
  --lp-slot-hatch:rgba(255,255,255,.035);
  --lp-veil:rgba(0,0,0,.64);
}
:root[data-theme="light"]{color-scheme:light}
:root[data-theme="dark"]{color-scheme:dark}

/* ============================================================
   Base
   ============================================================ */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px;-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--rs-surface-canvas);
  color:var(--rs-text-primary);
  font:400 16px/26px var(--rs-font-sans);
  font-variant-numeric:tabular-nums;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,p,ol,ul,dl,dd,figure{margin:0}
h1,h2,h3,strong,th{font-weight:560}
a{color:var(--rs-text-link);text-underline-offset:4px;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
img,svg{display:block;max-width:100%}
button,input,textarea{font:inherit;color:inherit}
:where(a,button,summary,input,textarea,select):focus-visible{
  outline:2px solid transparent;
  box-shadow:var(--rs-focus-shadow);
  border-radius:var(--rs-radius-control);
}
.lp-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.lp-skip{position:fixed;top:-100px;left:16px;z-index:100;background:var(--rs-surface-raised);color:var(--rs-text-primary);padding:12px 16px;border-radius:var(--rs-radius-control);box-shadow:var(--rs-elevation-floating)}
.lp-skip:focus{top:8px}
.lp-wrap{max-width:1248px;margin:0 auto;padding:0 24px}

/* Variantes France / Maroc : masquage seul, piloté par data-facade="ma", que seule la route /ma pose
   (main.py:3745). Jamais par data-country : il suit le cookie rs_country (écrit par applyCountry à
   chaque visite de /ma) et CF-IPCountry, et ferait servir la variante Maroc sur l'URL française. */
html:not([data-facade="ma"]) .lp-ma-only{display:none}
html[data-facade="ma"] .lp-fr-only{display:none}

/* ============================================================
   Boutons, pastilles, états
   ============================================================ */
.lp-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  height:40px;padding:0 16px;border-radius:var(--rs-radius-control);
  border:1px solid transparent;
  font:560 14px/1 var(--rs-font-sans);letter-spacing:0;
  text-decoration:none;white-space:nowrap;cursor:pointer;
  transition:background-color var(--rs-motion-fast),border-color var(--rs-motion-fast),color var(--rs-motion-fast);
}
.lp-btn--sm{height:36px;padding:0 12px}
.lp-btn--primary{background:var(--rs-action-background);color:var(--rs-action-text)}
.lp-btn--primary:hover{background:var(--rs-action-hover);text-decoration:none}
.lp-btn--primary:active{background:var(--rs-action-pressed)}
.lp-btn--secondary{background:var(--rs-surface-raised);color:var(--rs-text-primary);border-color:var(--rs-border-outline)}
.lp-btn--secondary:hover{background:var(--rs-surface-subtle);border-color:var(--rs-border-control);text-decoration:none}
.lp-btn--ghost{background:transparent;color:var(--rs-text-secondary)}
.lp-btn--ghost:hover{background:var(--rs-surface-subtle);color:var(--rs-text-primary);text-decoration:none}
.lp-btn[disabled]{opacity:.5;cursor:not-allowed}

.lp-pill{
  display:inline-flex;align-items:center;gap:6px;
  padding:2px 8px 2px 6px;border:1px solid var(--rs-border-outline);border-radius:var(--rs-radius-pill);
  background:var(--rs-surface-raised);color:var(--rs-text-primary);
  font-size:12px;line-height:16px;font-weight:560;white-space:nowrap;
}
.lp-pill::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;border:1px solid currentColor}
.lp-pill[data-state="disponible"]::before{background:currentColor}
.lp-pill[data-state="beta"]::before{background:linear-gradient(90deg,currentColor 50%,transparent 50%)}
.lp-pill[data-state="apercu"]::before{background:transparent}

.lp-flag{
  display:inline-flex;align-items:center;
  padding:2px 8px;border-radius:var(--rs-radius-pill);border:1px solid var(--rs-border-outline);
  font-size:12px;line-height:16px;font-weight:560;color:var(--rs-text-primary);white-space:nowrap;
}
.lp-flag[data-tone="caution"]{background:var(--rs-state-caution-background);color:var(--rs-state-caution);border-color:transparent}
.lp-flag[data-tone="muted"]{color:var(--rs-text-muted)}

/* ============================================================
   En-tête
   ============================================================ */
.lp-header{position:sticky;top:0;z-index:50;height:64px;border-bottom:1px solid var(--rs-border-separator)}
/* Le flou est porté par ::before et non par l'en-tête : un backdrop-filter sur l'en-tête en ferait le
   bloc conteneur du menu en position:fixed, écrasé à la hauteur de l'en-tête (64 px). */
.lp-header::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--lp-header-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.lp-header__inner{height:64px;display:flex;align-items:center;gap:32px}
.lp-brand{display:inline-flex;align-items:center;color:var(--rs-text-primary);text-decoration:none;flex:none}
.lp-brand:hover{text-decoration:none}
/* Logotype vectorisé (IDENTITE-REGISTRE §5) : symbole Secteur (dessin 32) + « RiskSonnar » en Archivo 560,
   approche -0,025 em, converti en tracés ; proportions de logotype-horizontal.svg (Ø 40 u, corps 44 u, espace 15 u). */
.lp-logo{display:block;height:20px;width:auto;fill:currentColor}
.lp-nav{display:flex;align-items:center;gap:24px}
.lp-nav a{font-size:14px;line-height:20px;color:var(--rs-text-secondary);text-decoration:none;padding:8px 0}
.lp-nav a:hover{color:var(--rs-text-primary);text-decoration:underline}
.lp-header__actions{margin-left:auto;display:flex;align-items:center;gap:8px}
.lp-menu-btn{display:none;height:36px;min-width:44px;padding:0 12px;border:1px solid var(--rs-border-outline);border-radius:var(--rs-radius-control);background:var(--rs-surface-raised);color:var(--rs-text-primary);font-size:14px;font-weight:560;cursor:pointer}
.lp-menu{position:fixed;top:64px;left:0;right:0;bottom:0;z-index:45;overflow:auto;background:var(--rs-surface-canvas);padding:8px 16px 32px}
.lp-menu[hidden]{display:none}
.lp-menu__link{display:flex;align-items:center;min-height:48px;border-bottom:1px solid var(--rs-border-separator);color:var(--rs-text-primary);text-decoration:none;font-size:16px}
.lp-menu__actions{display:grid;gap:12px;margin-top:24px}
.lp-menu__actions .lp-btn{width:100%;height:48px}

/* ============================================================
   Sections communes
   ============================================================ */
.lp-section{padding:96px 0}
.lp-eyebrow,.lp-kicker{font-size:13px;line-height:16px;font-weight:560;color:var(--rs-text-secondary)}
.lp-eyebrow{margin-bottom:12px}
.lp-h2{font-size:32px;line-height:40px;letter-spacing:-.02em}
.lp-h3{font-size:20px;line-height:26px;letter-spacing:-.01em}
.lp-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:end;margin-bottom:32px}
.lp-head__title{grid-column:1/span 6}
.lp-head__intro{grid-column:8/span 5;color:var(--rs-text-secondary);max-width:60ch}
.lp-note{font-size:13px;line-height:18px;color:var(--rs-text-muted)}
.lp-textlink{font-size:15px;line-height:24px}
.lp-textlink::after,.lp-trustlinks a::after{content:"";display:inline-block;flex:none;width:14px;height:14px;margin-left:6px;vertical-align:-2px;background:currentColor;-webkit-mask:var(--lp-arrow) no-repeat center/contain;mask:var(--lp-arrow) no-repeat center/contain}
.lp-card{background:var(--rs-surface-raised);box-shadow:var(--rs-elevation-rest);border-radius:var(--rs-radius-card);padding:24px}

/* Cadre de capture */
.lp-shot figcaption{font-size:13px;line-height:18px;color:var(--rs-text-muted);margin-top:12px}
.lp-shot__frame{display:flex;flex-direction:column;border-radius:var(--rs-radius-card);overflow:hidden;box-shadow:var(--rs-elevation-product);background:var(--rs-surface-raised)}
.lp-shot__frame > picture{flex:1;min-height:0;display:block}
.lp-shot__frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:top left}
/* Emplacement légendé (maquette seulement : un cadre sans image n'est pas permis en production) */
.lp-demo-banner{flex:none;background:var(--lp-demo-banner-bg);color:var(--lp-demo-banner-text);font-size:12px;line-height:16px;padding:8px 16px}
.lp-slot{
  flex:1;display:flex;align-items:center;justify-content:center;padding:24px;
  background:repeating-linear-gradient(135deg,var(--lp-slot-hatch) 0 1px,transparent 1px 12px),var(--rs-surface-raised);
}
.lp-slot__legend{max-width:560px;text-align:center;font-size:13px;line-height:20px;color:var(--rs-text-secondary);background:var(--rs-surface-raised);border:1px solid var(--rs-border-outline);border-radius:var(--rs-radius-control);padding:16px 20px}
.lp-slot__legend strong{display:block;font-size:14px;line-height:20px;color:var(--rs-text-primary);margin-bottom:4px}
.lp-slot__legend code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px}
.lp-slot__mob{display:none}

/* ============================================================
   Hero (géométrie E16 à 1440×900 : H1 à y≈228, capture à y≈492)
   ============================================================ */
.lp-hero{padding:124px 0 96px}
.lp-kicker{margin-bottom:24px}
.lp-h1{font-size:64px;line-height:64px;letter-spacing:-.03em;max-width:15.5em;margin-bottom:24px}
.lp-hero__row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:start}
.lp-lead{grid-column:1/span 7;font-size:18px;line-height:28px;color:var(--rs-text-secondary);max-width:60ch}
.lp-hero__actions{grid-column:8/span 5}
.lp-actions{display:flex;flex-wrap:wrap;gap:12px}
.lp-micro{font-size:13px;line-height:18px;color:var(--rs-text-muted);margin-top:12px}
.lp-shot--c1{margin-top:24px}
.lp-shot--c1 .lp-shot__frame{aspect-ratio:1200/680}
.lp-state{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}
.lp-state h3{font-size:16px;line-height:24px;margin:12px 0 4px}
.lp-state p{font-size:15px;line-height:24px;color:var(--rs-text-secondary)}
.lp-state__note{grid-column:1/-1}

/* ============================================================
   Constat
   ============================================================ */
.lp-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.lp-num{display:block;font-size:13px;line-height:18px;color:var(--rs-text-muted);margin-bottom:12px}
.lp-card h3{margin-bottom:8px}
.lp-card p{font-size:15px;line-height:24px;color:var(--rs-text-secondary)}
.lp-legal{margin-top:32px;padding-top:16px;border-top:1px solid var(--rs-border-separator);display:flex;flex-wrap:wrap;gap:8px 32px;justify-content:space-between;align-items:baseline}

/* ============================================================
   Le dossier
   ============================================================ */
.lp-dossier{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:start}
.lp-dossier__table{grid-column:1/span 7}
.lp-dossier__shot{grid-column:8/span 5;position:sticky;top:96px}
.lp-shot--c2 .lp-shot__frame{aspect-ratio:4/5}
.lp-table{width:100%;border-collapse:collapse;font-size:15px;line-height:24px}
.lp-table thead th{height:36px;padding:8px 16px 8px 0;text-align:left;font-size:14px;line-height:20px;color:var(--rs-text-secondary);border-bottom:1px solid var(--rs-border-hover)}
.lp-table tbody th,.lp-table td{padding:12px 16px 12px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--rs-border-separator)}
.lp-table tbody th{width:26%;font-size:15px;color:var(--rs-text-primary)}
.lp-table .lp-desc{color:var(--rs-text-secondary)}
.lp-table .lp-status{width:30%;padding-right:0}
.lp-status small{display:block;font-size:13px;line-height:18px;color:var(--rs-text-muted);margin-top:6px}
.lp-after-table{margin-top:24px;display:grid;gap:12px}
.lp-links{display:flex;flex-wrap:wrap;gap:8px 24px}

/* ============================================================
   Méthode
   ============================================================ */
.lp-journey{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--rs-border-outline)}
.lp-journey li{position:relative;padding:24px 24px 0 0}
.lp-journey li::before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:var(--rs-state-neutral)}
.lp-journey li.is-accent::before{background:var(--rs-action-background)}
.lp-journey .lp-num{margin-bottom:4px}
.lp-journey h3{font-size:16px;line-height:24px;letter-spacing:0;margin-bottom:8px}
.lp-journey p{font-size:14px;line-height:22px;color:var(--rs-text-secondary)}
.lp-rail{margin:56px auto 0;max-width:720px;text-align:center}
.lp-rail ol{list-style:none;padding:0;display:flex;align-items:center;justify-content:center}
.lp-rail li{position:relative;display:flex;align-items:center;gap:10px;padding:6px 16px 6px 6px;border:1px solid var(--rs-border-outline);border-radius:var(--rs-radius-pill);background:var(--rs-surface-raised);text-align:left}
.lp-rail li+li{margin-left:40px}
.lp-rail li+li::before{content:"";position:absolute;left:-41px;top:50%;width:40px;height:1px;background:var(--rs-border-outline)}
.lp-avatar{flex:none;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--rs-surface-subtle);font-size:12px;line-height:1;font-weight:560;color:var(--rs-text-secondary)}
.lp-avatar svg{width:16px;height:16px}
.lp-rail strong{display:block;font-size:13px;line-height:18px}
.lp-rail small{display:block;font-size:12px;line-height:16px;color:var(--rs-text-muted)}
.lp-rail figcaption{margin-top:12px}
.lp-center{text-align:center;margin-top:24px}

/* ============================================================
   Sources
   ============================================================ */
.lp-sources{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:start}
.lp-sources__head{grid-column:1/span 5;position:sticky;top:96px}
.lp-sources__head .lp-h2{margin-bottom:16px}
.lp-sources__head p{color:var(--rs-text-secondary)}
.lp-sources__body{grid-column:6/span 7}
.lp-srctable{width:100%;border-collapse:collapse;font-size:15px;line-height:24px}
.lp-srctable th,.lp-srctable td{text-align:left;vertical-align:top;padding:12px 16px 12px 0;border-bottom:1px solid var(--rs-border-separator)}
.lp-srctable thead th{height:36px;padding-top:8px;padding-bottom:8px;font-size:14px;line-height:20px;color:var(--rs-text-secondary);border-bottom-color:var(--rs-border-hover)}
.lp-srctable tbody th{width:200px;font-size:14px;line-height:22px}
.lp-srctable td{color:var(--rs-text-primary)}
.lp-states-title{font-size:16px;line-height:24px;margin:40px 0 16px}
.lp-states{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}
.lp-states div{display:grid;gap:8px;align-content:start}
.lp-states dt{line-height:0}
.lp-states dd{font-size:14px;line-height:22px;color:var(--rs-text-secondary)}
.lp-sources__foot{margin-top:24px;display:grid;gap:12px}

/* Bloc Maroc injecté à la place du marqueur FACADE_CONTEXT, sur /ma seulement (classes backend conservées, restylées) */
.facade-evidence{padding:0 0 96px}
.facade-evidence-inner{max-width:1248px;margin:0 auto;padding:0 24px}
.facade-evidence .editorial-kicker{font-size:13px;line-height:16px;font-weight:560;color:var(--rs-text-secondary);margin-bottom:12px}
.facade-evidence-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:end;margin-bottom:32px}
.facade-evidence-head h2{grid-column:1/span 6;font-size:32px;line-height:40px;letter-spacing:-.02em}
.facade-evidence-head p{grid-column:8/span 5;color:var(--rs-text-secondary)}
.facade-evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.facade-evidence-grid article{background:var(--rs-surface-raised);box-shadow:var(--rs-elevation-rest);border-radius:var(--rs-radius-card);padding:24px}
.facade-evidence-grid span{display:block;font-size:13px;line-height:18px;color:var(--rs-text-muted);margin-bottom:12px}
.facade-evidence-grid h3{font-size:20px;line-height:26px;letter-spacing:-.01em;margin-bottom:8px}
.facade-evidence-grid p{font-size:15px;line-height:24px;color:var(--rs-text-secondary)}
.facade-evidence-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:24px;font-size:15px}

/* ============================================================
   Confiance (seule bande sombre)
   ============================================================ */
.lp-band-dark{background:var(--lp-band-bg);color:var(--lp-band-text);border-top:1px solid var(--lp-band-rule);border-bottom:1px solid var(--lp-band-rule)}
.lp-band-dark .lp-eyebrow{color:var(--lp-band-text-2)}
.lp-band-dark .lp-h2,.lp-band-dark h3{color:var(--lp-band-text)}
.lp-band-dark p,.lp-band-dark li,.lp-band-dark .lp-note{color:var(--lp-band-text-2)}
.lp-band-dark a{color:var(--lp-band-link)}
.lp-band-dark :where(a,button):focus-visible{box-shadow:var(--lp-band-focus)}
.lp-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}
.lp-trust h3{margin-bottom:8px}
.lp-trust p,.lp-trust li{font-size:15px;line-height:24px}
.lp-trust ul{padding-left:18px;display:grid;gap:8px}
.lp-trust ul li::marker{color:var(--lp-band-text-2)}
.lp-flagrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:40px;padding-top:24px;border-top:1px solid var(--lp-band-rule)}
.lp-band-dark .lp-flag{border-color:rgba(255,255,255,.12);color:var(--lp-band-text-2)}
.lp-band-dark .lp-flag[data-tone="caution"]{background:#2A2216;color:#F2D8AE;border-color:transparent}
.lp-founders{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;margin-top:40px;padding-top:24px;border-top:1px solid var(--lp-band-rule);align-items:center}
.lp-founders h3{grid-column:1/span 3;font-size:16px;line-height:24px}
.lp-founders ul{grid-column:4/span 9;list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:16px 40px;align-items:center}
.lp-founders li{display:flex;align-items:center;gap:12px;font-size:15px;line-height:22px}
.lp-founders .lp-avatar{width:40px;height:40px;background:var(--lp-band-soft);color:var(--lp-band-text);font-size:13px}
.lp-founders strong{color:var(--lp-band-text)}
.lp-trustlinks{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:24px;font-size:15px}

/* ============================================================
   Accès pilote
   ============================================================ */
.lp-pilot{background:var(--rs-surface-subtle)}
.lp-pilot__card{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;background:var(--rs-surface-raised);box-shadow:var(--rs-elevation-rest);border-radius:var(--rs-radius-card);padding:48px}
.lp-pilot__text{grid-column:1/span 7}
.lp-pilot__text .lp-h2{margin-bottom:16px}
.lp-pilot__text > p{color:var(--rs-text-secondary)}
.lp-pilot__steps-title{font-size:16px;line-height:24px;margin:32px 0 12px}
.lp-steps{list-style:none;padding:0;counter-reset:s;display:grid;gap:12px}
.lp-steps li{counter-increment:s;display:grid;grid-template-columns:28px 1fr;gap:8px;font-size:15px;line-height:24px;color:var(--rs-text-secondary)}
.lp-steps li::before{content:counter(s,decimal-leading-zero);font-size:13px;line-height:24px;color:var(--rs-text-muted)}
.lp-not{margin-top:24px;padding:16px;border-radius:var(--rs-radius-control);background:var(--rs-surface-subtle)}
.lp-not h3{font-size:14px;line-height:20px;margin-bottom:4px}
.lp-not p{font-size:14px;line-height:22px;color:var(--rs-text-secondary)}
.lp-pilot__action{grid-column:8/span 5;align-self:start;display:grid;gap:12px;padding:24px;border:1px solid var(--rs-border-separator);border-radius:var(--rs-radius-card)}
.lp-pilot__action .lp-btn{width:100%}
.lp-pilot__action .lp-note+.lp-note{margin-top:-4px}

/* ============================================================
   Questions fréquentes
   ============================================================ */
.lp-faq{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:start}
.lp-faq__head{grid-column:1/span 4}
.lp-faq__head .lp-h2{margin-bottom:12px}
.lp-faq__list{grid-column:5/span 8;max-width:680px;border-top:1px solid var(--rs-border-separator)}
.lp-faq details{border-bottom:1px solid var(--rs-border-separator)}
.lp-faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:16px 0;font-size:16px;line-height:24px;font-weight:560;cursor:pointer}
.lp-faq summary::-webkit-details-marker{display:none}
.lp-faq summary svg{flex:none;width:16px;height:16px;color:var(--rs-text-muted);transition:transform var(--rs-motion-fast)}
.lp-faq details[open] summary svg{transform:rotate(180deg)}
.lp-faq details p{padding:0 32px 20px 0;color:var(--rs-text-secondary)}

/* ============================================================
   Pied de page
   ============================================================ */
.lp-footer{border-top:1px solid var(--rs-border-separator);padding:64px 0 32px}
.lp-footer__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}
.lp-footer__brand{grid-column:1/span 3}
.lp-footer__brand .lp-logo{height:24px}
.lp-footer__brand p{font-size:14px;line-height:22px;color:var(--rs-text-secondary);margin-top:16px;max-width:36ch}
.lp-footer__cols{grid-column:4/span 9;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.lp-footer__title{font-size:12px;line-height:16px;font-weight:560;color:var(--rs-text-primary);margin-bottom:12px}
.lp-footer ul{list-style:none;padding:0;display:grid;gap:8px}
.lp-footer li a{font-size:14px;line-height:22px;color:var(--rs-text-secondary);text-decoration:none}
.lp-footer li a:hover{color:var(--rs-text-primary);text-decoration:underline}
.lp-footer__bottom{margin-top:48px;padding-top:24px;border-top:1px solid var(--rs-border-separator);display:grid;gap:12px;font-size:13px;line-height:18px;color:var(--rs-text-muted)}
.lp-footer__bottom a{color:var(--rs-text-secondary)}
.lp-countries{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center}
.lp-countries span{color:var(--rs-text-muted)}

/* ============================================================
   Barre mobile, fenêtre pilote
   ============================================================ */
.lp-mobilebar{display:none}
.lp-dialog{border:0;padding:0;width:min(440px,calc(100vw - 32px));border-radius:var(--rs-radius-card);background:var(--rs-surface-raised);color:var(--rs-text-primary);box-shadow:var(--rs-elevation-floating)}
.lp-dialog::backdrop{background:var(--lp-veil,rgba(17,18,20,.48))}
.lp-dialog form{display:grid;gap:12px;padding:24px}
.lp-dialog__head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.lp-dialog__head h2{font-size:20px;line-height:26px;letter-spacing:-.01em}
.lp-dialog__close{display:inline-flex;align-items:center;justify-content:center;flex:none;width:36px;height:36px;border:0;border-radius:var(--rs-radius-control);background:transparent;color:var(--rs-text-secondary);cursor:pointer}
.lp-dialog__close:hover{background:var(--rs-surface-subtle)}
.lp-dialog__close svg{width:16px;height:16px}
.lp-dialog__intro{font-size:14px;line-height:20px;color:var(--rs-text-secondary)}
.lp-field{display:grid;gap:6px}
.lp-field label{font-size:13px;line-height:18px;font-weight:560}
.lp-field input,.lp-field textarea{width:100%;min-height:40px;padding:8px 12px;border:1px solid var(--rs-border-control);border-radius:var(--rs-radius-control);background:var(--rs-surface-raised);font-size:16px;line-height:24px}
.lp-field textarea{resize:vertical}
.lp-field input::placeholder,.lp-field textarea::placeholder{color:var(--rs-text-muted)}
.lp-dialog .lp-btn{width:100%}
.lp-dialog__small{font-size:12px;line-height:18px;color:var(--rs-text-muted)}
.lp-dialog__mock{font-size:13px;line-height:18px;color:var(--rs-state-caution);background:var(--rs-state-caution-background);border-radius:var(--rs-radius-control);padding:8px 12px}
.lp-dialog__mock[hidden]{display:none}

/* ============================================================
   Points de rupture
   ============================================================ */
/* En-tête complet dès 1 120 px : mesuré en Archivo, logo 141 + 5 liens 364 + 3 boutons 452 + écarts 64 ≈ 1 021 px,
   plus que le conteneur à 1 000 px (952 px, 935 px avec une barre de défilement). */
@media (max-width:1119px){
  .lp-nav,.lp-header__actions .lp-btn--secondary,.lp-header__actions .lp-btn--ghost{display:none}
  .lp-menu-btn{display:inline-flex;align-items:center}
}
@media (max-width:999px){
  /* Une colonne : douze colonnes à gouttière de 24 px exigent 264 px de gouttières, plus que la carte
     pilote à 320 px (256 px utiles). */
  .lp-hero__row,.lp-head,.lp-dossier,.lp-sources,.lp-pilot__card,.lp-faq,.lp-footer__grid,.lp-founders,.facade-evidence-head{grid-template-columns:minmax(0,1fr)}
  .lp-h1{font-size:48px;line-height:52px;letter-spacing:-.025em}
  .lp-lead,.lp-hero__actions{grid-column:1/-1}
  .lp-head__title,.lp-head__intro{grid-column:1/-1}
  .lp-dossier__table,.lp-dossier__shot{grid-column:1/-1}
  .lp-dossier__shot{position:static;order:-1;max-width:520px}
  .lp-sources__head,.lp-sources__body{grid-column:1/-1;position:static}
  .lp-pilot__text,.lp-pilot__action{grid-column:1/-1}
  .lp-faq__head,.lp-faq__list{grid-column:1/-1}
  .lp-footer__brand,.lp-footer__cols{grid-column:1/-1}
  .lp-footer__cols{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lp-grid-3,.lp-trust,.facade-evidence-grid{grid-template-columns:1fr}
  .lp-founders h3,.lp-founders ul{grid-column:1/-1}
  .facade-evidence-head h2,.facade-evidence-head p{grid-column:1/-1}
  .lp-journey{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:32px}
}
@media (max-width:719px){
  .lp-wrap,.facade-evidence-inner{padding:0 16px}
  .lp-section{padding:64px 0}
  .facade-evidence{padding-bottom:64px}
  .lp-header__actions .lp-btn--primary{display:none}
  .lp-logo{height:18px}
  .lp-menu-btn{height:44px}
  .lp-hero{padding:48px 0 64px}
  .lp-h1{font-size:36px;line-height:40px;letter-spacing:-.02em}
  .lp-lead{font-size:16px;line-height:26px}
  .lp-actions{flex-direction:column}
  .lp-actions .lp-btn{width:100%;height:48px}
  .lp-shot--c1 .lp-shot__frame{aspect-ratio:328/520}
  .lp-shot--c2 .lp-shot__frame{aspect-ratio:328/420}
  .lp-slot__desk{display:none}
  .lp-slot__mob{display:inline}
  .lp-state{grid-template-columns:1fr;gap:16px}
  .lp-h2,.facade-evidence-head h2{font-size:28px;line-height:34px}
  .lp-grid-3{gap:16px}
  /* Tableau du dossier en cartes */
  .lp-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .lp-table,.lp-table tbody,.lp-table tr,.lp-table tbody th,.lp-table td{display:block;width:auto}
  .lp-table tr{padding:16px 0;border-bottom:1px solid var(--rs-border-separator)}
  .lp-table tbody th,.lp-table td{padding:0;border:0}
  .lp-table tbody th{font-size:16px;line-height:24px}
  .lp-table .lp-desc{margin-top:4px}
  .lp-table .lp-status{margin-top:8px;width:auto}
  .lp-srctable thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .lp-srctable,.lp-srctable tbody,.lp-srctable tr,.lp-srctable th,.lp-srctable tbody th,.lp-srctable td{display:block;width:auto}
  .lp-srctable tr{padding:12px 0;border-bottom:1px solid var(--rs-border-separator)}
  .lp-srctable th,.lp-srctable td{padding:0;border:0}
  .lp-srctable td{margin-top:4px}
  .lp-states{grid-template-columns:1fr}
  .lp-journey{display:block;border-top:0}
  .lp-journey li{border-left:1px solid var(--rs-border-outline);padding:0 0 24px 24px}
  .lp-journey li::before{left:-4px;top:6px}
  .lp-journey li:last-child{border-left-color:transparent;padding-bottom:0}
  .lp-rail ol{flex-direction:column;align-items:stretch}
  .lp-rail li+li{margin:24px 0 0}
  .lp-rail li+li::before{left:20px;top:-25px;width:1px;height:24px}
  .lp-pilot__card{padding:24px 16px}
  .lp-pilot__action{padding:16px}
  .lp-pilot__action .lp-btn{height:48px}
  .lp-faq summary{min-height:48px}
  .lp-footer__cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lp-footer li a{display:inline-flex;align-items:center;min-height:44px}
  .lp-footer ul{gap:0}
  .lp-mobilebar{
    display:block;position:fixed;left:0;right:0;bottom:0;z-index:40;
    padding:12px 16px max(12px,env(safe-area-inset-bottom));
    background:var(--lp-header-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);
    border-top:1px solid var(--rs-border-separator);
    transform:translateY(110%);opacity:0;visibility:hidden;
    transition:transform var(--rs-motion-fast),opacity var(--rs-motion-fast),visibility 0s linear var(--rs-motion-fast);
  }
  .lp-mobilebar.is-visible{transform:none;opacity:1;visibility:visible;transition:transform var(--rs-motion-fast),opacity var(--rs-motion-fast)}
  .lp-mobilebar .lp-btn{width:100%;height:48px}
  body.has-mobilebar{padding-bottom:72px}
  /* Cibles tactiles de 44 px pour les liens isolés et la fermeture de la fenêtre */
  .lp-textlink,.lp-trustlinks a,.facade-evidence-links a,.lp-countries a{display:inline-flex;align-items:center;min-height:44px}
  .lp-dialog__close{width:44px;height:44px}
}
@media (min-width:1120px){.lp-menu{display:none}}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:0s!important;animation-duration:0s!important}
}


/* Mode application Verify : le DOM fonctionnel reste hors du parcours marketing
   tant que l'identité n'est pas établie. Les styles historiques ne sont chargés
   qu'à l'entrée dans ce mode. */
#verify-app[hidden]{display:none!important}
#verify-app{color-scheme:light;min-height:calc(100vh - 64px);background:#FAFAF9;color:#111214;padding:32px 20px 72px;--rs-surface-canvas:#FAFAF9;--rs-surface-raised:#FFFFFF;--rs-surface-subtle:#F4F4F2;--rs-surface-selected:#EDEDEB;--rs-text-primary:#111214;--rs-text-secondary:#4E4F52;--rs-text-muted:#6B6C6E;--rs-text-link:#3A5C7E;--rs-border-separator:rgba(17,18,20,.08);--rs-border-hover:rgba(17,18,20,.12);--rs-border-outline:rgba(17,18,20,.16);--rs-border-control:rgba(17,18,20,.48);--rs-action-background:#1D3B5A;--rs-action-hover:#152D46;--rs-action-pressed:#0C1A29;--rs-action-text:#FFFFFF;--rs-focus-shadow:0 0 0 2px #FFFFFF,0 0 0 4px #1D3B5A}
#verify-app .rs-app-shell{width:min(1120px,100%);margin:0 auto}
#verify-app .rs-app-intro{margin:0 auto 24px;max-width:720px}
#verify-app .rs-app-intro h1{font-size:clamp(32px,5vw,52px);line-height:1.05;letter-spacing:-.035em;margin:0 0 12px}
#verify-app .rs-app-intro p{color:var(--rs-text-secondary);font-size:16px;line-height:24px;margin:0}
html.rs-app .lp-marketing,
html.rs-app .facade-evidence,
html.rs-app .lp-mobilebar{display:none!important}
html.rs-app #verify-app{display:block!important}
html.rs-app .lp-header{position:sticky}
html.rs-app .lp-nav,
html.rs-app [data-pilot-open]{display:none!important}
html.rs-app .lp-header__actions>.lp-btn:not(.lp-app-only){display:none!important}
.lp-app-only{display:none!important}
.lp-app-link{align-items:center;justify-content:center;min-height:36px;padding:0 14px;border-radius:var(--rs-radius-control);background:var(--rs-action-background);color:var(--rs-action-text);font-size:13px;font-weight:560;text-decoration:none}
html.rs-app .lp-app-only{display:inline-flex!important}
html.rs-app #userBtn{align-items:center!important;gap:8px!important}
html.rs-app #userBtn a{background:var(--rs-surface-subtle)!important;border-color:var(--rs-border-outline)!important;color:var(--rs-text-primary)!important}
html.rs-app #userBtn a span:last-child{color:var(--rs-text-primary)!important}
html.rs-app #userBtn button{background:transparent!important;border-color:var(--rs-border-outline)!important;color:var(--rs-text-secondary)!important}
#verify-app .ic-inline{display:inline-block;width:14px;height:14px;margin-right:4px;vertical-align:-2px}
#verify-app .dd-more{margin-top:12px;padding-top:8px;border-top:1px solid var(--rs-border-separator)}
#verify-app .dd-more-toggle{display:flex;align-items:center;gap:7px;width:100%;min-height:40px;padding:6px 0;border:0;background:transparent;color:var(--rs-text-secondary);font:inherit;font-size:13px;text-align:left;cursor:pointer}
#verify-app .dd-more-toggle:hover{color:var(--rs-text-primary)}
#verify-app .dd-more-chev{display:inline-block;transition:transform var(--rs-motion-fast)}
#verify-app .dd-more-toggle[aria-expanded="true"] .dd-more-chev{transform:rotate(90deg)}
#verify-app .dd-more-panel{padding-top:12px}
.rs-app-css-marker{display:none}

#verify-app .toast{position:fixed;left:50%;right:auto;top:auto;bottom:24px;z-index:1100;display:block;max-width:min(440px,calc(100vw - 32px));transform:translate(-50%,16px);opacity:0;pointer-events:none;padding:12px 16px;border:1px solid rgba(17,18,20,.16);border-radius:6px;background:#111214;color:#FAFAF9;font-size:14px;line-height:20px;box-shadow:var(--rs-elevation-floating);transition:opacity var(--rs-motion-fast),transform var(--rs-motion-fast)}
#verify-app .toast.on{transform:translate(-50%,0);opacity:1}

.rs-measurement-consent{position:fixed;right:16px;bottom:16px;z-index:1200;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;width:min(620px,calc(100vw - 32px));padding:16px;border:1px solid var(--rs-border-outline);border-radius:var(--rs-radius-card);background:var(--rs-surface-raised);color:var(--rs-text-primary);box-shadow:var(--rs-elevation-floating)}
.rs-measurement-consent strong{display:block;margin-bottom:4px;font-size:14px}
.rs-measurement-consent p{margin:0;color:var(--rs-text-secondary);font-size:13px;line-height:19px}
.rs-measurement-consent a{display:inline-flex;min-height:32px;align-items:center;color:var(--rs-text-link);font-size:13px}
.rs-measurement-actions{display:flex;align-items:center;gap:8px}
.rs-measurement-actions button{min-height:40px;padding:0 12px;border:1px solid var(--rs-border-outline);border-radius:var(--rs-radius-control);background:var(--rs-surface-raised);color:var(--rs-text-primary);font:inherit;font-size:13px;cursor:pointer}
.rs-measurement-actions .rs-measurement-accept{border-color:var(--rs-action-background);background:var(--rs-action-background);color:var(--rs-action-text)}

/* La modale de demande pilote est générée par app-runtime.js ; son habillage
   s'appuie uniquement sur les jetons Registre. */
.rs-lead-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px;background:rgba(11,12,14,.62)}
.rs-lead-dialog{width:min(480px,100%);max-height:min(720px,calc(100vh - 32px));overflow:auto;background:var(--rs-surface-raised);color:var(--rs-text-primary);border:1px solid var(--rs-border-outline);border-radius:var(--rs-radius-card);box-shadow:var(--rs-elevation-floating);padding:24px}
.rs-lead-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}
.rs-lead-head h2{font-size:22px;line-height:28px;letter-spacing:-.02em;margin:0}
.rs-lead-close{flex:0 0 44px;width:44px;height:44px;margin:-10px -10px 0 0;border:0;border-radius:var(--rs-radius-control);background:transparent;color:var(--rs-text-secondary);font:inherit;font-size:22px;cursor:pointer}
.rs-lead-close:hover{background:var(--rs-surface-selected)}
.rs-lead-intro,.rs-lead-notice{color:var(--rs-text-secondary);font-size:14px;line-height:21px}
.rs-lead-form{display:grid;gap:12px;margin-top:20px}
.rs-lead-field{display:grid;gap:6px}
.rs-lead-field label{font-size:13px;font-weight:560}
.rs-lead-field input,.rs-lead-field textarea,.rs-lead-field select{width:100%;box-sizing:border-box;border:1px solid var(--rs-border-control);border-radius:var(--rs-radius-control);background:var(--rs-surface-raised);color:var(--rs-text-primary);font:inherit;font-size:16px;padding:11px 12px}
.rs-lead-field textarea{resize:vertical}
.rs-lead-submit{min-height:44px;border:0;border-radius:var(--rs-radius-control);background:var(--rs-action-background);color:var(--rs-action-text);font:inherit;font-weight:560;cursor:pointer}
.rs-lead-submit:hover{background:var(--rs-action-hover)}
.rs-lead-submit:disabled{opacity:.56;cursor:wait}
.rs-lead-foot{margin:16px 0 0;text-align:center;color:var(--rs-text-muted);font-size:13px}
.rs-lead-foot a{color:var(--rs-text-link)}
.rs-lead-error{margin:0;color:var(--rs-semantic-negative-text);font-size:13px;line-height:18px}
.rs-lead-success{padding:20px 0;text-align:center;color:var(--rs-semantic-positive-text);font-weight:560}
@media(max-width:719px){
  #verify-app{padding:24px 16px 48px}
  .rs-lead-dialog{padding:20px 16px}
  .rs-measurement-consent{grid-template-columns:1fr}
  .rs-measurement-actions{justify-content:flex-end;flex-wrap:wrap}
}
