
.roxane-body{--rx-ink:#091423;--rx-violet:#af70e1;--rx-paper:#f5f1ed;--rx-aqua:#9be0df;background:var(--rx-ink);color:#f3ecf9}
.roxane-body main{overflow:hidden}
.rx-hero{background:radial-gradient(ellipse at 75% 34%,#672e974a,transparent 52%),linear-gradient(135deg,#091423,#131a2d 60%,#211438);color:#f8f3fd;padding:clamp(72px,9vw,132px) 0 98px;position:relative}
.rx-eyebrow{font:800 11px var(--mono,monospace);letter-spacing:.16em;text-transform:uppercase;color:#b3e5e0;margin:0 0 22px}
.rx-hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:5%;align-items:center}
.rx-hero h1{font:900 clamp(65px,10vw,155px)/.82 var(--display,system-ui);letter-spacing:-.095em;margin:0 0 34px;text-transform:uppercase}
.rx-hero h1 em{display:block;font-size:.36em;line-height:1.35;color:#d9b7ec;font-style:normal;letter-spacing:-.04em;padding-top:12px}
.rx-hero .rx-lede{max-width:690px;font-size:clamp(18px,2vw,23px);color:#e5dced;line-height:1.7;margin:0 0 26px}
.rx-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.rx-button{border:1px solid #cba7eb;padding:14px 20px;text-decoration:none;color:#fff;font-weight:750;display:inline-flex;align-items:center;gap:10px;transition:background .2s}
.rx-button:hover,.rx-button:focus-visible{background:#7924c7}.rx-button--pale{background:#f5f1ed;color:#131c2c;border-color:#f5f1ed}.rx-button--pale:hover{color:#fff}
.rx-orbit{aspect-ratio:1;position:relative;display:grid;place-items:center;isolation:isolate}
.rx-orbit:before,.rx-orbit:after{content:"";position:absolute;inset:10%;border:1px solid #b88cdd80;border-radius:50%;transform:rotate(-24deg) scaleX(.85)}
.rx-orbit:after{inset:0;border-color:#9be0df4d;transform:rotate(36deg) scaleX(.82)}
.rx-core{width:48%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 32%,#dfc5f4,#9251cb 36%,#251642 72%);box-shadow:0 0 90px #9753ce5c,0 0 0 20px #af70e10d;position:relative}
.rx-core:after{content:"R";position:absolute;inset:0;display:grid;place-items:center;font:900 clamp(78px,12vw,168px)/1 var(--display,system-ui);color:#160f2c9e}
.rx-orbit-label{position:absolute;bottom:5%;right:0;border-top:1px solid #bda9d899;padding-top:12px;color:#b1c5d1;font:700 11px var(--mono,monospace)}
.rx-section{padding:clamp(64px,8vw,108px) 0}
.rx-section--paper{background:var(--rx-paper);color:#1a2435}
.rx-section--ink{background:#101e30;color:#f7f1fa}
.rx-section--night{background:#091423;color:#f5ecfa}
.rx-section .rx-heading{font:900 clamp(34px,5vw,67px)/1.02 var(--display,system-ui);letter-spacing:-.055em;margin:0 0 26px}
.rx-section .rx-intro{font-size:17px;line-height:1.75;max-width:800px;margin:0 0 32px;color:inherit}
.rx-pill{display:inline-block;border:1px solid currentColor;border-radius:99px;padding:7px 12px;font:800 10px var(--mono,monospace);letter-spacing:.08em;margin-bottom:16px}
.rx-triptych{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.rx-card{display:flex;flex-direction:column;border:1px solid #74829780;background:#16263c;padding:30px;min-height:340px;text-decoration:none;color:#fff;transition:transform .2s,border-color .2s}
.rx-card:hover,.rx-card:focus-visible{transform:translateY(-5px);border-color:#cda5ee}
.rx-card .rx-card-num{font:800 12px var(--mono,monospace);color:#b0e5df}
.rx-card h2,.rx-card h3{font:900 clamp(32px,3vw,48px)/1.02 var(--display,system-ui);letter-spacing:-.05em;margin:50px 0 16px}
.rx-card p{color:#d6dce5;line-height:1.7;margin:0 0 30px}
.rx-card strong{margin-top:auto;color:#d8b2f3;font:800 12px var(--mono,monospace)}
.rx-smallnav{display:flex;flex-wrap:wrap;align-items:center;gap:18px;justify-content:space-between;background:#101d30;border-bottom:1px solid #ffffff24;padding:13px max(25px,calc((100vw - 1240px)/2))}
.rx-smallnav .rx-word{font:900 16px var(--display,system-ui);letter-spacing:.02em;color:#fff;text-decoration:none}
.rx-smallnav nav{display:flex;flex-wrap:wrap;gap:20px}
.rx-smallnav nav a{font:800 11px var(--mono,monospace);text-decoration:none;color:#d2d6e1}
.rx-smallnav nav a[aria-current],.rx-smallnav nav a:hover{color:#c7a0ee;text-decoration:underline;text-underline-offset:5px}
.rx-chapters{display:grid;gap:0}
.rx-chapter{display:grid;grid-template-columns:100px 1fr auto;gap:25px;align-items:start;border-top:1px solid #52617a66;padding:32px 0}
.rx-chapter .rx-n{font:900 40px/.9 var(--display,system-ui);color:#b27be2}
.rx-chapter h2{font:850 clamp(28px,3.5vw,44px)/1 var(--display,system-ui);letter-spacing:-.04em;margin:0 0 10px}
.rx-chapter p{margin:0;line-height:1.75;max-width:750px;color:#cbd2df}
.rx-status{border:1px solid #728399;border-radius:99px;font:800 10px var(--mono,monospace);padding:8px 10px;white-space:nowrap;color:#b8efe7}
.rx-status--future{color:#f0d5c1}
.rx-research-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.rx-research-grid article{padding:32px;border:1px solid #bac0cc;background:#fff;color:#172339}
.rx-research-grid h2{font:800 30px var(--display,system-ui);margin:0 0 15px;letter-spacing:-.03em}
.rx-research-grid p,.rx-research-grid li{line-height:1.75;color:#384358}
.rx-research-grid ul{padding-left:20px}
.rx-evidence{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.rx-evidence img{width:100%;height:auto;object-fit:contain;border:1px solid #475a70;background:#101c2d}
.rx-caption{font:700 11px var(--mono,monospace);letter-spacing:.05em;color:#bbcadc;margin-top:10px;line-height:1.6}
.rx-log{display:grid;gap:12px}
.rx-log article{border-left:3px solid #ab64de;background:#17273b;padding:26px 30px}
.rx-log time{font:800 11px var(--mono,monospace);color:#a6eee6}
.rx-log h2{margin:12px 0;font:850 30px var(--display,system-ui);letter-spacing:-.03em}
.rx-log p{line-height:1.75;color:#dce1ec;margin:0}
.rx-disclaimer{font-size:14px;line-height:1.75;color:#cbd1df;border-top:1px solid #ffffff47;padding-top:22px;margin-top:38px;max-width:900px}
.rx-attribution{font:700 12px var(--mono,monospace);letter-spacing:.06em;color:#b6a6cd;margin-top:25px}
@media(max-width:900px){.rx-hero-grid,.rx-evidence,.rx-research-grid{grid-template-columns:1fr}.rx-triptych{grid-template-columns:1fr}.rx-orbit{max-width:480px;width:100%;margin:auto}.rx-card{min-height:260px}.rx-card h2,.rx-card h3{margin-top:28px}.rx-chapter{grid-template-columns:60px 1fr}.rx-status{grid-column:2;justify-self:start}}
@media(max-width:520px){.rx-hero h1{font-size:clamp(54px,17vw,84px)}.rx-smallnav{padding:15px 20px}.rx-smallnav nav{gap:13px}.rx-chapter{grid-template-columns:1fr}.rx-status{grid-column:1}.rx-section{padding:64px 0}}
@media(prefers-reduced-motion:reduce){.rx-card,.rx-button{transition:none}}

/* Navigation Roxane : contraste indépendant du thème sombre des contenus. */
.roxane-body .header{color:#0c1929;background:#f6f3ed;border-bottom:1px solid #d4d0c8}
.roxane-body .header .desktop-nav a{color:#243246}
.roxane-body .header .desktop-nav a[aria-current="page"]{color:#6721a8;border-bottom:2px solid #7924c7}
.roxane-body .header .desktop-nav a:hover,.roxane-body .header .desktop-nav a:focus-visible{color:#6721a8}
.roxane-body .header .header-cta{color:#fff;background:#0c1929}
.roxane-body .header .mobile-nav{color:#243246;background:#f6f3ed}
.roxane-body .header .mobile-nav a{color:#243246}
.roxane-body .header .mobile-nav a:hover,.roxane-body .header .mobile-nav a:focus-visible{color:#6721a8}
.roxane-body .rx-smallnav{position:sticky;top:90px;z-index:40;background:#101d30;box-shadow:0 8px 18px #0914233b}
.roxane-body .rx-smallnav nav a{padding:9px 0;display:inline-flex;align-items:center;min-height:36px}
.roxane-body .rx-smallnav nav a[aria-current="page"]{color:#e7c7ff;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}
@media(max-width:950px){.roxane-body .header-inner{gap:18px}.roxane-body .desktop-nav{gap:14px}}
@media(max-width:850px){.roxane-body .rx-smallnav{top:77px;gap:7px;padding:12px 27px}.roxane-body .rx-smallnav .rx-word{font-size:14px}.roxane-body .rx-smallnav nav{width:100%;display:flex;flex-wrap:nowrap;gap:21px;overflow-x:auto;scrollbar-width:thin;padding-bottom:3px}.roxane-body .rx-smallnav nav a{white-space:nowrap;flex-shrink:0}}
@media(max-width:650px){.roxane-body .rx-smallnav{top:72px;padding:12px 20px}.roxane-body .mobile-nav{max-height:calc(100dvh - 72px);overflow-y:auto}}

/* Cahiers publics : components éditoriaux, sans données techniques sensibles. */
.rx-eyebrow--ink{color:#6b2e9e}
.rx-hero--notebook{background:radial-gradient(circle at 70% 30%,#5f45785c,transparent 50%),linear-gradient(140deg,#10192b,#241436)}
.rx-method-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:28px 0}
.rx-method-grid article{background:#fff;border:1px solid #d5ccd9;padding:22px;color:#202b3a}
.rx-method-grid h3{font:850 22px/1.1 var(--display,system-ui);margin:14px 0 12px}
.rx-method-grid p{font-size:14px;line-height:1.75;color:#445063;margin:0}
.rx-method-number{font:850 13px var(--mono,monospace);color:#7535af}
.rx-caution{border-left:4px solid #7924c7;background:#e8e0ec;color:#242c3a;padding:20px 23px;line-height:1.75;margin:30px 0 0}
.rx-paper-heading{display:flex;align-items:start;gap:25px;justify-content:space-between;margin-bottom:30px}
.rx-paper-heading h2{margin-bottom:0}
.rx-research-state{flex-shrink:0;border:1px solid #cab5d9;color:#e2c1fa;border-radius:2px;padding:9px 12px;font:800 11px var(--mono,monospace);letter-spacing:.04em}
.rx-research-state--observed{border-color:#8fdbca;color:#a6eedf}
.rx-paper-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.rx-paper-layout h3{font:850 clamp(21px,3vw,28px) var(--display,system-ui);letter-spacing:-.025em;margin:0 0 13px}
.rx-paper-layout p,.rx-paper-layout li{font-size:16px;line-height:1.8;color:#d6dbe5}
.rx-paper-layout p{margin:0 0 24px}
.rx-paper-method{background:#1b2a3c;border:1px solid #5a7187;padding:28px}
.rx-paper-method ol{padding-left:23px;margin:0 0 22px}
.rx-paper-method li{padding-left:4px;margin-bottom:10px}
.rx-paper-method p{font-size:14px;margin-bottom:0;color:#f0dfea}
.rx-button--ink{background:#142439;color:#fff;border-color:#142439}
@media(max-width:1000px){.rx-method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.rx-paper-layout{grid-template-columns:1fr;gap:18px}.rx-paper-heading{flex-direction:column;gap:12px}.rx-method-grid{grid-template-columns:1fr 1fr}}
@media(max-width:440px){.rx-method-grid{grid-template-columns:1fr}.rx-paper-method{padding:20px}}

/* Dossiers et guide public de Roxane */
.rx-dossier-grid,.rx-evaluation-grid,.rx-interpretation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}
.rx-dossier{display:flex;flex-direction:column;min-height:300px;padding:27px;background:#1b2b40;color:#f8f3fb;border:1px solid #65758a;text-decoration:none;transition:transform .2s,border-color .2s}
.rx-dossier:hover,.rx-dossier:focus-visible{transform:translateY(-4px);border-color:#d5a9ed}
.rx-dossier span,.rx-evaluation-grid span{font:800 11px var(--mono,monospace);letter-spacing:.04em;color:#a7e3dd}
.rx-dossier h3{font:900 30px/1.1 var(--display,system-ui);letter-spacing:-.04em;margin:38px 0 16px}
.rx-dossier p{color:#dce3e9;line-height:1.72;margin:0 0 24px}
.rx-dossier b{font:800 11px var(--mono,monospace);color:#d9b2fa;margin-top:auto}
.rx-evaluation-grid article,.rx-interpretation article{padding:26px;border:1px solid #c4bccb;background:#fff;color:#213046}
.rx-evaluation-grid article span{color:#793daf}
.rx-evaluation-grid article h3{font:850 26px/1.1 var(--display,system-ui);margin:20px 0 12px}
.rx-evaluation-grid article p,.rx-interpretation p{font-size:15px;line-height:1.75;color:#37465b;margin:0}
.rx-evaluation-grid article a{color:#6534a2;display:inline-block;font-weight:750;margin-top:16px;border-bottom:1px solid #6534a2}
.rx-interpretation article{background:#17283e;color:#fff;border-color:#607489}
.rx-interpretation strong{display:block;font-size:18px;margin-bottom:12px;color:#e1b8f8}
.rx-interpretation p{color:#d8e1e8}
@media(max-width:860px){.rx-dossier-grid,.rx-evaluation-grid,.rx-interpretation{grid-template-columns:1fr}.rx-dossier{min-height:250px}.rx-dossier h3{margin-top:25px}}
@media(prefers-reduced-motion:reduce){.rx-dossier{transition:none}}
