:root { color-scheme: light; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #252525; background: #fafafa; line-height: 1.65; }
* { box-sizing: border-box; }
body { margin: 0; }
main, header, footer { width: min(100% - 40px, 720px); margin-inline: auto; }
header { padding-block: 32px 20px; }
header a { color: inherit; font-size: 20px; font-weight: 700; text-decoration: none; }
main { padding-block: 28px 60px; min-height: 55vh; }
h1 { font-size: clamp(32px, 7vw, 44px); line-height: 1.15; letter-spacing: -.035em; margin: 0 0 24px; }
h2 { margin: 32px 0 10px; font-size: 21px; line-height: 1.35; }
p, ul { margin: 0 0 18px; }
li { margin-bottom: 8px; }
a { color: #24573d; text-underline-offset: 4px; overflow-wrap: anywhere; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible { outline: 3px solid #24573d; outline-offset: 5px; }
.muted { color: #666; }
.notice { border-left: 3px solid #9c6c18; padding: 12px 16px; background: #fff5de; }
footer { border-top: 1px solid #dedede; padding-block: 22px 32px; font-size: 14px; }
nav { display: flex; gap: 12px 24px; flex-wrap: wrap; margin-bottom: 14px; }
@media (max-width: 400px) { main, header, footer { width: calc(100% - 32px); } }
