:root{color-scheme:light;--cream:#FFFAF1;--forest:#2F6F57;--charcoal:#171714;--stone:#E3E0D8;--porcelain:#F2F0EA;--muted:#68716C}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,"Helvetica Neue",Arial,sans-serif;background:var(--cream);color:var(--charcoal);-webkit-font-smoothing:antialiased}
a{color:var(--forest);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}
header{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--stone);padding:23px max(28px,calc((100vw - 1110px)/2));background:var(--cream)}
.wordmark{font-size:25px;font-weight:850;letter-spacing:-.065em;text-decoration:none;color:var(--charcoal)}.wordmark span{color:var(--forest)}
.toplink{font-size:13px;font-weight:650;text-decoration:none;white-space:nowrap}
main{max-width:840px;margin:auto;padding:76px 32px 100px}small.kicker{display:block;color:var(--forest);font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;margin-bottom:22px}
h1{font-size:clamp(40px,7vw,70px);line-height:1.02;letter-spacing:-.065em;margin:0 0 23px;font-weight:740}
h2{font-size:24px;letter-spacing:-.035em;line-height:1.25;margin:50px 0 15px}
h3{font-size:16px;margin:24px 0 10px}
p,li{color:#3F4541;font-size:15px;line-height:1.85;margin:0 0 16px}ul{padding-left:21px}li{padding-left:5px;margin:0 0 7px}
.intro{font-size:18px;line-height:1.75;color:var(--muted)}
.meta{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border-radius:999px;background:var(--porcelain);font-size:12px;font-weight:650;color:var(--muted);margin-top:14px}
.notice{margin:33px 0;padding:24px 26px;border:1px solid var(--stone);border-radius:16px;background:var(--porcelain)}
.notice p{margin-bottom:0}section{scroll-margin-top:35px}
footer{border-top:1px solid var(--stone);display:flex;gap:20px;align-items:center;justify-content:space-between;padding:30px max(28px,calc((100vw - 1110px)/2));font-size:12px;color:var(--muted)}
footer nav{display:flex;gap:16px;flex-wrap:wrap}footer a{text-decoration:none;font-weight:600}
@media(max-width:640px){header{padding:21px 24px}main{padding:54px 24px 70px}footer{padding:25px 24px;display:block}footer nav{margin-top:14px}}