:root { font-family: Arial, Helvetica, sans-serif; color: #24334b; background: #f6f8fc; line-height: 1.75; color-scheme: light; }
* { box-sizing: border-box; }
body { margin: 0; }
a { color: #1b3f84; text-underline-offset: 3px; overflow-wrap: anywhere; }
a:hover { color: #102650; }
a:focus-visible { outline: 3px solid #558ce5; outline-offset: 5px; }
header { background: #fff; border-bottom: 1px solid #dce3ee; }
nav, main, footer { width: min(100% - 40px, 900px); margin: auto; }
nav { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px 0; }
.brand { font-size: 24px; font-weight: 700; text-decoration: none; }
main { padding: 56px 0 64px; }
article { padding: 40px; background: #fff; border: 1px solid #dce3ee; }
.eyebrow { color: #1b3f84; font-size: 12px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
h1 { margin: 8px 0; color: #163875; font-size: clamp(30px, 5vw, 44px); line-height: 1.2; }
h2 { margin: 32px 0 8px; color: #163875; font-size: 21px; line-height: 1.4; }
p, ul { margin: 12px 0; }
.updated { color: #5e6b80; font-size: 14px; }
.toc { display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 28px 0; padding: 20px; background: #f0f4fb; }
footer { display: flex; flex-wrap: wrap; gap: 12px 24px; padding: 24px 0; border-top: 1px solid #dce3ee; font-size: 14px; }
@media (max-width: 600px) { article { padding: 24px 20px; } main { padding: 32px 0; } nav { align-items: flex-start; } }
