@font-face{font-family:Geist;src:url(fonts/geist-400.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Geist;src:url(fonts/geist-600.woff2) format('woff2');font-weight:600;font-display:swap}
:root{--nit:#0D1430;--blanc:#F6F5F2;--corall:#FF6A4D;--corall-text:#C2412A;--soft:#3A4361;--tint:#ECE9E3;--ease-out:cubic-bezier(.23,1,.32,1)}
*{box-sizing:border-box}
html{background:var(--blanc);scroll-behavior:smooth;scroll-padding-top:24px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--blanc);color:var(--nit);font-family:Geist,system-ui,sans-serif;font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased}
::selection{background:var(--corall);color:var(--nit)}
:focus-visible{outline:2px solid var(--corall-text);outline-offset:3px;border-radius:4px}
a{color:var(--nit);text-decoration:underline;text-decoration-color:var(--corall);text-decoration-thickness:2px;text-underline-offset:3px;transition:text-decoration-color .15s ease}
@media (hover:hover) and (pointer:fine){a:hover{text-decoration-color:var(--nit)}}
.top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px clamp(16px,4.5vw,72px)}
.top .logo{display:block;text-decoration:none}
.top .logo svg{display:block;height:28px;width:auto}
.top .back{font-size:16px;text-decoration:none;color:var(--soft)}
@media (hover:hover) and (pointer:fine){.top .back:hover{color:var(--nit)}}
.page{display:grid;grid-template-columns:minmax(0,230px) minmax(0,68ch);gap:clamp(32px,6vw,96px);padding:clamp(40px,7vw,96px) clamp(16px,4.5vw,72px) clamp(80px,10vw,140px);max-width:1280px}
.side nav{position:sticky;top:32px;display:flex;flex-direction:column;gap:6px;font-size:16px}
.side a{text-decoration:none;color:var(--soft);padding:6px 0}
.side a[aria-current="page"]{color:var(--nit);font-weight:600}
@media (hover:hover) and (pointer:fine){.side a:hover{color:var(--nit)}}
h1{font-size:clamp(40px,5.4vw,72px);line-height:1;letter-spacing:-.04em;font-weight:600;margin:0 0 20px;text-wrap:balance}
.intro{font-size:20px;color:var(--soft);margin:0 0 12px;max-width:60ch}
.date{font-size:15px;color:var(--soft);margin:0 0 56px}
h2{font-size:clamp(24px,2.4vw,30px);line-height:1.15;letter-spacing:-.02em;font-weight:600;margin:56px 0 14px;text-wrap:balance}
h3{font-size:19px;font-weight:600;margin:28px 0 6px}
p,li{max-width:68ch}
ul{padding-left:1.2em}
li{margin:6px 0}
li::marker{color:var(--corall-text)}
dl{display:grid;grid-template-columns:max-content 1fr;gap:8px 28px;margin:0;padding:24px 28px;background:var(--tint);border-radius:18px}
dt{font-weight:600}
dd{margin:0}
.box{background:var(--nit);color:var(--blanc);border-radius:22px;padding:28px 30px;margin:32px 0}
.box p{margin:0}
.box a{color:var(--blanc)}
mark.pend{background:#FCE5DE;color:var(--nit);padding:0 4px;border-radius:4px}
.table{width:100%;border-collapse:collapse;font-size:16px;margin:16px 0}
.table th,.table td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid #DCD8D0}
.table th{font-weight:600}
footer{background:var(--nit);color:#A9B1C8;padding:48px clamp(16px,4.5vw,72px) 40px;font-size:15px}
footer .row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 32px;max-width:1280px}
footer nav{display:flex;flex-wrap:wrap;gap:8px 22px}
footer a{color:#D5DAE8;text-decoration:none}
@media (hover:hover) and (pointer:fine){footer a:hover{color:var(--blanc)}}
@media (max-width:820px){.page{grid-template-columns:1fr}.side nav{position:static;flex-direction:row;flex-wrap:wrap;gap:4px 18px}dl{grid-template-columns:1fr;gap:2px}dd{margin-bottom:10px}.table{font-size:15px}}
