:root { --deep:#06121b; --panel:#102438; --ink:#e7f0f8; --muted:#b7c6d5; --accent:#94bee3; --line:rgba(148,190,227,.19); --sans:Inter,Arial,sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--deep); color:var(--ink); font:400 16px/1.7 var(--sans); }
.shell { width:min(880px,calc(100% - 40px)); margin-inline:auto; }
.skip-link { position:fixed; top:-60px; left:12px; z-index:10; background:#d0e2f2; color:#06121b; padding:8px 12px; border-radius:4px; }.skip-link:focus { top:12px; }
.header { position:sticky; top:0; z-index:5; background:rgba(6,18,27,.88); backdrop-filter:blur(14px); border-bottom:1px solid var(--line); }
.nav { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:20px; }.brand { display:flex; align-items:center; color:var(--ink); text-decoration:none; font-weight:700; }.brand img { display:block; width:164px; height:49px; object-fit:cover; object-position:center 50%; mix-blend-mode:screen; }.back { color:var(--accent); font-size:13px; font-weight:700; text-decoration:none; }.back:hover { color:#d0e2f2; }
main { padding:86px 0 72px; }.eyebrow { color:var(--accent); font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin:0 0 16px; }.eyebrow:before { content:''; display:inline-block; height:1px; width:24px; background:currentColor; vertical-align:middle; margin-right:9px; }.title { font-size:clamp(38px,6vw,62px); line-height:1.05; letter-spacing:-.055em; margin:0; }.updated { color:var(--muted); font-size:13px; margin:15px 0 44px; }.card { background:var(--panel); border:1px solid var(--line); border-radius:8px; padding:clamp(24px,5vw,44px); }.card h2 { font-size:23px; line-height:1.25; letter-spacing:-.03em; margin:38px 0 12px; }.card h2:first-child { margin-top:0; }.card p,.card li { color:#d1deea; }.card ul { padding-left:21px; }.card a { color:var(--accent); }.notice { padding:16px 18px; background:rgba(148,190,227,.08); border-left:2px solid var(--accent); color:#d1deea; font-size:14px; }.footer { border-top:1px solid var(--line); padding:27px 0; color:var(--muted); font-size:12px; }.footer div { display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; }.footer a { color:inherit; text-decoration:none; }.footer a:hover { color:var(--accent); }:where(a):focus-visible { outline:3px solid #d0e2f2; outline-offset:3px; }
@media(max-width:650px) { .shell { width:min(100% - 32px,880px); }.nav { min-height:67px; }.brand img { width:145px; height:44px; } main { padding-top:58px; }.card { padding:24px 20px; } }
