:root{--bg:#0f0b0a;--bg2:#14100e;--bg3:#1a0e0c;--burgundy:#5c1a1b;--burgundy-dark:#3d0f10;--burgundy-light:#7a2324;--rust:#8b3a1f;--gold:#c9a961;--gold-soft:#b89550;--ink:#e8ddc9;--ink-dim:#a89a82;--ink-faint:#726452;--line:#2a201d;--green:#2d5a3d;--green-light:#4a8560;--blue:#1c2433;--blue-mid:#2a3a52;--blue-light:#4568a0;--steel:#3d5066;--purple:#3d2a4d;--purple-light:#6b4a82}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--ink);font-family:'Inter',sans-serif;line-height:1.75;padding:40px 20px;min-height:100vh;background-image:radial-gradient(ellipse at top right,rgba(69,104,160,0.10),transparent 50%),radial-gradient(ellipse at bottom left,rgba(139,58,31,0.08),transparent 50%)}
.wrapper{max-width:1100px;margin:0 auto}
.hero{background:linear-gradient(135deg,#1a0e0c 0%,#2a110f 60%,#3d0f10 100%);border:1px solid var(--burgundy-light);border-radius:14px;padding:36px 40px;margin-bottom:28px;text-align:center}
.hero .label{color:var(--gold-soft);font-family:'Cormorant Garamond',serif;font-style:italic;font-size:14px;margin-bottom:6px;letter-spacing:1px}
.hero h1{font-family:'Playfair Display',serif;font-size:34px;color:var(--ink);margin-bottom:12px;font-weight:700}
.hero p{color:var(--ink-dim);font-size:15px;max-width:780px;margin:0 auto;line-height:1.85}
.hero p em{color:var(--gold-soft);font-style:italic}
.hero p b{color:var(--gold)}
.card{background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:28px 32px;margin-bottom:24px}
.card-title{display:flex;align-items:center;gap:12px;padding-bottom:16px;margin-bottom:20px;border-bottom:1px solid var(--burgundy-dark)}
.card-title .num{background:var(--burgundy);color:var(--ink);width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0;font-family:'Playfair Display',serif}
.card-title h2{font-family:'Playfair Display',serif;font-size:22px;color:var(--ink);flex:1;font-weight:700}
.card p{color:var(--ink);font-size:14.5px;line-height:1.85;margin-bottom:10px}
.card p b{color:var(--gold-soft)}
.card p em{color:var(--blue-light);font-style:italic}
.schema{background:#0f0b0a;border:1px solid var(--line);border-radius:10px;padding:20px;margin:14px 0}
.schema h3{font-family:'Playfair Display',serif;color:var(--ink);font-size:17px;font-weight:600;margin-bottom:6px;line-height:1.6}
.quote{background:rgba(74,104,160,0.08);border-left:3px solid var(--blue-light);padding:12px 16px;margin:10px 0;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:15px;color:var(--ink);line-height:1.8}
.quote::before{content:"« ";color:var(--gold)}
.quote::after{content:" »";color:var(--gold)}
.reform{background:#0f0b0a;border-left:4px solid var(--gold);border-radius:6px;padding:16px 20px;margin:16px 0}
.reform .label{color:var(--gold);font-family:'Playfair Display',serif;font-size:14px;font-weight:700;margin-bottom:8px;letter-spacing:0.5px}
.reform p{color:var(--ink);font-size:14px;line-height:1.85}
.reform p b{color:var(--gold-soft)}
.reform p em{color:var(--blue-light);font-style:italic}
table.contexte{width:100%;border-collapse:collapse;margin:10px 0;font-size:13.5px}
table.contexte th{background:var(--burgundy-dark);color:var(--gold);padding:10px 14px;text-align:left;font-family:'Playfair Display',serif;font-weight:600;border:1px solid var(--burgundy)}
table.contexte td{padding:10px 14px;border:1px solid var(--line);color:var(--ink);background:rgba(20,16,14,0.6)}
table.contexte td em{color:var(--blue-light);font-style:italic}
table.contexte td b{color:var(--gold-soft)}
.synthesis{background:linear-gradient(135deg,#1a0b0a,#1c2433);border:2px solid var(--gold);border-radius:12px;padding:28px 32px;margin-top:20px}
.synthesis .card-title{border-bottom:1px solid var(--gold-soft)}
.synthesis .card-title h2{color:var(--gold)}
.synthesis p{font-size:14.5px;color:var(--ink);line-height:1.9}
.corrige{background:rgba(74,133,96,0.1);padding:1em;border-radius:6px;margin-top:0.7em}
.corrige .tag{color:#6ba577;font-weight:700;margin-bottom:8px}
.footer-note{text-align:center;color:var(--ink-faint);font-family:'Cormorant Garamond',serif;font-style:italic;font-size:13px;margin-top:30px;padding:10px}
.nav-fixed{position:fixed;top:20px;z-index:9999;background:rgba(15,11,10,0.95);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:8px 18px;border-radius:8px;text-decoration:none;font-family:'Playfair Display',serif;font-size:14px;font-weight:700;transition:all 0.2s;box-shadow:0 2px 8px rgba(0,0,0,0.3)}
.nav-fixed.home{right:20px;border:1px solid #c9a961;color:#c9a961}
.nav-fixed.exams{right:160px;border:1px solid #b89550;color:#b89550}
.nav-fixed.home:hover{background:#c9a961;color:#0f0b0a}
.nav-fixed.exams:hover{background:#b89550;color:#0f0b0a}
@media(max-width:820px){body{padding:20px 10px}.card{padding:20px 18px}.hero{padding:24px 20px}.hero h1{font-size:24px}table.contexte th,table.contexte td{padding:8px 10px;font-size:12.5px}.nav-fixed{font-size:12px;padding:6px 12px}.nav-fixed.exams{right:130px}}
