:root { font-family: ui-sans-serif, system-ui, sans-serif; color: #18362e; background: #f2f0e7; }
* { box-sizing: border-box; }
body { margin: 0; border-top: 8px solid #255c48; }
main { max-width: 960px; margin: auto; padding: clamp(32px, 8vw, 96px) 24px; }
.eyebrow { font-size: .75rem; font-weight: 700; letter-spacing: .18em; }
h1 { margin: 48px 0 24px; font-size: clamp(2.5rem, 7vw, 5rem); line-height: 1.05; letter-spacing: -.045em; }
.intro { font-size: 1.25rem; max-width: 38rem; line-height: 1.6; }
section { margin-top: 48px; padding: 32px; background: #fffef8; border: 1px solid #d8dfd4; border-radius: 8px; }
h2 { display: inline; font-size: 1.25rem; }
.signal { display: inline-block; width: 10px; height: 10px; margin-right: 8px; border-radius: 50%; background: #28744c; }
section p, footer { line-height: 1.7; }
dl { margin: 24px 0; } dt { font-size: .8rem; font-weight: 700; } dd { margin: 8px 0; overflow-wrap: anywhere; }
a { color: #18563e; text-underline-offset: .2em; }
a:focus-visible { outline: 3px solid #b55128; outline-offset: 4px; }
footer { margin-top: 32px; font-size: .85rem; color: #52675c; }
