:root { --ink:#1f2933; --muted:#5f6b76; --bg:#f3f5f7; --line:#d9dee3; --accent:#0b5fa5; --card:#ffffff; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--ink); font:15px/1.6 "Segoe UI", Helvetica, Arial, sans-serif; }
header, main, footer { max-width:960px; margin:0 auto; padding:0 24px; }
header { padding-top:28px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--line); padding-bottom:16px; flex-wrap:wrap; gap:10px; }
.logo { font-weight:700; font-size:19px; letter-spacing:.02em; color:var(--ink); text-decoration:none; display:flex; align-items:center; gap:10px; }
.logo svg { width:28px; height:28px; }
nav a { color:var(--muted); text-decoration:none; margin-left:20px; font-size:14px; }
nav a.current, nav a:hover { color:var(--accent); }
h1 { font-weight:600; font-size:30px; line-height:1.25; margin:44px 0 12px; max-width:680px; }
h2 { font-weight:600; font-size:21px; margin:40px 0 12px; }
h3 { font-weight:600; margin:0 0 6px; font-size:16px; }
.lead { color:var(--muted); max-width:640px; margin-bottom:36px; font-size:16px; }
.grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:20px; margin:0 0 40px; }
.card { background:var(--card); border:1px solid var(--line); border-radius:6px; padding:18px; }
.card p { margin:0; color:var(--muted); font-size:14px; }
.card svg { display:block; width:100%; height:auto; margin-bottom:12px; border-radius:4px; }
.prose { max-width:680px; } .prose p { margin:0 0 16px; }
table { border-collapse:collapse; width:100%; background:var(--card); border:1px solid var(--line); font-size:14px; }
th, td { text-align:left; padding:10px 12px; border-bottom:1px solid var(--line); vertical-align:top; }
th { color:var(--muted); font-weight:600; font-size:12.5px; text-transform:uppercase; letter-spacing:.04em; }
tr:last-child td { border-bottom:0; }
a.dl { color:var(--accent); text-decoration:none; font-weight:600; }
.note { background:#eaf2fa; border-left:4px solid var(--accent); padding:12px 16px; border-radius:4px; font-size:14px; margin:20px 0; }
dl.facts { display:grid; grid-template-columns:160px 1fr; gap:6px 16px; max-width:680px; margin:20px 0; }
dl.facts dt { color:var(--muted); } dl.facts dd { margin:0; }
footer { border-top:1px solid var(--line); margin-top:44px; padding:18px 24px 44px; color:var(--muted); font-size:13px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; }
footer a, .prose a { color:var(--accent); }
@media (max-width:600px){ h1{font-size:25px} nav a{margin-left:12px} }
