:root { color-scheme: light; font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:#202827; background:#fff; letter-spacing:0; }
* { box-sizing:border-box; }
body { margin:0; }
a { color:#146b58; text-underline-offset:4px; }
a:hover { color:#0b4639; }
a:focus-visible { outline:3px solid #e49f37; outline-offset:5px; }
header,main,footer { max-width:920px; margin:auto; padding:24px; }
header { display:flex; align-items:center; justify-content:space-between; gap:24px; border-bottom:1px solid #dce4e0; }
.brand { color:#202827; text-decoration:none; font-size:17px; font-weight:650; }
nav { display:flex; flex-wrap:wrap; gap:20px; font-size:14px; }
main { padding-top:56px; padding-bottom:64px; min-height:65vh; }
h1 { font-size:36px; line-height:1.2; font-weight:650; margin:0 0 24px; overflow-wrap:anywhere; }
h2 { font-size:21px; line-height:1.4; font-weight:600; margin:32px 0 12px; }
p,li { font-size:16px; line-height:1.75; }
p { margin:12px 0; }
ul { padding-left:24px; }
.intro { font-size:19px; line-height:1.65; max-width:740px; }
.meta { color:#65706a; font-size:14px; }
.rule { margin-top:32px; border-top:1px solid #dce4e0; padding-top:12px; }
footer { border-top:1px solid #dce4e0; color:#65706a; font-size:13px; display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; }
@media(max-width:580px) { header { align-items:flex-start; flex-direction:column; gap:18px; } main { padding-top:36px; } h1 { font-size:29px; } nav { gap:16px; } }
