:root{--ink:#252e49;--muted:#52617e;--accent:#485990;--line:#cbd2e4;--paper:#fcfcff;--wash:#e4e5f0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--wash);scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(120deg,#fcfcffbb,#e4e5f0bb),url('../images/fond.jpg') center top/cover fixed;line-height:1.8}a{color:var(--accent);text-underline-offset:4px}a:hover{color:#202c61}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #7462a9;outline-offset:5px} .site-header,.site-footer{max-width:1220px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 32px}.site-header{border-bottom:1px solid var(--line)}.brand{font-weight:700;font-size:21px;letter-spacing:-.6px;text-decoration:none;color:var(--ink)}.brand span{font-size:32px;margin-right:10px;font-weight:400}.site-header nav{display:flex;gap:28px}.site-header nav a{font-size:14px;text-decoration:none}.site-header nav a[aria-current]{text-decoration:underline;font-weight:700}main{max-width:1160px;margin:auto;padding:0 28px 56px}.hero{position:relative;padding:76px 0 64px;overflow:hidden;isolation:isolate}.eyebrow{font-size:11px;letter-spacing:2.5px;font-weight:700;color:var(--muted)}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.15;letter-spacing:-1px}h1{font-size:clamp(38px,5vw,70px);margin:20px 0 24px;position:relative;z-index:1}h1 em{font-weight:400;color:var(--accent)}.hero-sub{font-size:18px;color:var(--muted)}.button{display:inline-flex;gap:38px;align-items:center;background:var(--ink);color:white;border-radius:8px;padding:13px 22px;text-decoration:none;margin-top:20px;font-size:14px}.button:hover{color:white;background:var(--accent)}.orbital{position:absolute;width:340px;height:340px;right:35px;top:70px;border:1px solid #9eaac8;border-radius:50%;background:radial-gradient(circle,#e4e5f0 0,#a0afd344 45%,transparent 70%);z-index:-1;display:grid;place-items:center}.orbital:before,.orbital:after{content:'';position:absolute;border:1px solid #9eaac8;border-radius:50%;inset:40px -20px;transform:rotate(40deg)}.orbital:after{inset:-20px 80px;transform:rotate(-35deg)}.orbital span{font-size:100px;color:#6979a7}.home main>p{max-width:850px;color:var(--muted);margin:24px 0}.chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:28px}.chapter{background:#fcfcffde;border:1px solid #ccd3e5;border-radius:16px;padding:28px;box-shadow:0 8px 26px #33446606}.chapter-number{display:block;font-size:10px;letter-spacing:2px;color:var(--muted);margin-bottom:15px}.chapter>h2>a{font-family:Georgia,serif;font-size:24px;font-weight:400;line-height:1.25;text-decoration:none;color:var(--ink);display:block;min-height:60px}.chapter ol{padding-left:20px;margin:24px 0 0}.chapter li{padding:5px 0 5px 5px;font-size:13px;line-height:1.65}.chapter li::marker{color:#7c87a3;font-size:10px}.chapter li a{text-decoration:none}.chapter li a:hover{text-decoration:underline}.search-box{margin-top:45px;max-width:580px}.search-box label{font-size:13px;font-weight:600}.search-box input{margin-top:8px}#search-status{font-size:13px;color:var(--muted)}.reading main{max-width:880px;padding-top:55px;font-size:17px}.reading h1{font-size:clamp(32px,4vw,48px)}.reading h2{font-size:29px;margin-top:50px;padding-top:20px;border-top:1px solid var(--line)}.reading p{text-align:left}.reading main>p:last-of-type{font-size:13px;color:var(--muted)}.toc{background:#ffffff9e;border:1px solid var(--line);border-radius:12px;padding:18px 24px;margin:28px 0}.toc summary{cursor:pointer;font-size:15px;font-weight:600}.toc ol{font-size:14px;padding-left:20px}.toc:has(ol:empty){display:none}.chapter-nav{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:28px;margin-top:40px;font-size:14px}.site-footer{border-top:1px solid var(--line);font-size:12px;padding-bottom:35px}.site-footer a{text-decoration:none}.skip{position:absolute;top:-100px;left:12px;z-index:10;background:white;padding:12px}.skip:focus{top:12px}input,textarea{width:100%;max-width:100%;padding:13px 15px;border:1px solid #aeb8d0;border-radius:8px;font:inherit;background:var(--paper);color:var(--ink)}input[type=hidden]{display:none}input[type=submit]{width:auto;cursor:pointer;background:var(--ink);color:white;border:0}fieldset{border:1px solid var(--line);border-radius:12px;margin:24px 0;padding:20px}legend{font-weight:600;padding:0 8px}label{display:block}textarea{resize:vertical}[hidden]{display:none!important}a[name],h2{scroll-margin-top:24px}
.home .hero{padding-bottom:12px}
.home main>p>br{display:none}
.home main>p+p{margin-top:36px}
.home .search-box{margin-top:36px}
.astral-illustration{position:absolute;width:380px;height:auto;right:0;top:45px;pointer-events:none}
@media(min-width:951px){.hero h1,.hero .hero-sub{max-width:calc(100% - 390px)}}
@media(max-width:950px){.chapters{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{max-width:650px}.astral-illustration{position:static;display:block;width:280px;max-width:100%;margin:12px auto 0}.home .hero{padding-bottom:0}}
@media(max-width:600px){.site-header{padding:18px 20px;flex-wrap:wrap;gap:8px}.site-header nav{gap:24px;width:100%}.brand{font-size:20px}main{padding:0 20px 35px}.hero{padding:42px 0}.hero h1{font-size:42px}.orbital{right:-190px;top:30px;opacity:.3}.hero-sub{font-size:16px}.chapters{grid-template-columns:1fr}.chapter{padding:24px}.chapter>h2>a{min-height:0}.chapter li{font-size:15px}.reading main{padding-top:32px;font-size:16px}.reading h2{font-size:27px}.site-footer{padding:22px 20px}.chapter-nav{flex-direction:column}.eyebrow{font-size:10px;letter-spacing:1.5px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}@media print{body{background:white;color:black}.site-header,.site-footer,.search-box,.orbital,.button,.toc{display:none}main,.reading main{max-width:none;padding:0}.chapters{display:block}.chapter{break-inside:avoid}a{color:black}}

/* Same card layout with semantic chapter headings. */
.chapter>h2{margin:0;font:inherit;letter-spacing:normal}
