:root { --ink:#152033; --muted:#526176; --brand:#087f5b; --surface:#ffffff; --line:#dce3ec; --soft:#f4f8f7; }
* { box-sizing:border-box; }
body { margin:0; background:var(--soft); color:var(--ink); font:16px/1.7 system-ui,-apple-system,"Segoe UI",sans-serif; }
a { color:#086a4f; }
.shell { max-width:820px; margin:auto; padding:24px; }
header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:6px 0 26px; }
.brand { color:var(--ink); font-size:20px; font-weight:800; text-decoration:none; }
.brand span { color:var(--brand); }
.back { font-size:14px; }
main { background:var(--surface); border:1px solid var(--line); border-radius:16px; padding:clamp(24px,6vw,56px); box-shadow:0 8px 30px rgb(28 48 71 / 7%); }
h1 { font-size:clamp(28px,5vw,42px); line-height:1.15; margin:0 0 16px; letter-spacing:-.03em; }
h2 { margin:34px 0 10px; font-size:22px; line-height:1.3; }
h3 { margin:24px 0 6px; font-size:18px; }
p, li { color:var(--muted); }
li + li { margin-top:7px; }
.lede { font-size:19px; color:#3b4c63; }
.notice { margin:24px 0; padding:16px 18px; background:#edf8f4; border-left:4px solid var(--brand); color:#264a3e; }
.cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:14px; margin:22px 0; }
.card { padding:18px; border:1px solid var(--line); border-radius:12px; }
.card h2 { margin:0 0 8px; font-size:18px; }
footer { padding:24px 0 4px; color:var(--muted); font-size:13px; }
footer nav { display:flex; flex-wrap:wrap; gap:8px 16px; }
