:root { font-family: 'DM Sans', system-ui, sans-serif; color: #102840; background: #fff; font-synthesis: none; }
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; }
a { color: #087b52; text-underline-offset: 3px; }
a:focus-visible { outline: 3px solid #087b52; outline-offset: 4px; }
header { align-items: center; border-bottom: 1px solid #dfe7e4; display: flex; gap: 24px; justify-content: space-between; padding: 20px max(24px, calc((100% - 1040px) / 2)); }
header > a { min-height: 44px; display: inline-flex; align-items: center; }
.brand { color: #0b2948; display: flex; gap: 12px; text-decoration: none; font-weight: 800; }
.brand img { object-fit: contain; }
.brand small { display: block; font-size: .65rem; font-weight: 500; margin-top: 3px; }
main { margin: auto; max-width: 800px; padding: 58px 24px 64px; }
.eyebrow { color: #087b52; text-transform: uppercase; letter-spacing: .13em; font-size: .73rem; font-weight: 700; }
h1, h2 { font-family: 'Manrope', system-ui, sans-serif; color: #0b2948; }
h1 { font-size: clamp(2.1rem, 5vw, 3.1rem); line-height: 1.1; letter-spacing: -.055em; margin: 0 0 16px; }
h2 { font-size: 1.25rem; line-height: 1.4; margin: 0 0 12px; }
p, li, aside { font-size: .95rem; line-height: 1.75; color: #536375; }
.updated { font-size: .78rem; margin-bottom: 26px; }
section { margin-top: 36px; }
ul { padding-left: 22px; }
li + li { margin-top: 12px; }
code { overflow-wrap: anywhere; }
.back { display: inline-flex; align-items: center; min-height: 44px; margin-top: 20px; font-weight: 700; }
footer { background: #071c32; color: #d0dbe4; font-size: .76rem; line-height: 1.7; padding: 26px 24px; text-align: center; }
footer a { color: #75dfad; font-weight: 700; }
@media (max-width: 450px) { header { gap: 12px; padding: 16px; } header > a:last-child { font-size: .8rem; } .brand { font-size: .92rem; gap: 8px; } main { padding-top: 36px; } }
