:root{color:#233e35;--line:#cfd7cb;--paper:#fffefa;--accent:#a6573c;background:#f5f4ec;font:16px/1.85 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:.25em}a:focus-visible,input:focus-visible{outline-offset:5px;outline:3px solid #ad7944}.skip{z-index:4;background:#fff;padding:15px;position:absolute;top:-80px;left:20px}.skip:focus{top:10px}.header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;max-width:1440px;margin:auto;padding:24px 4.5vw;display:flex}.brand{white-space:nowrap;letter-spacing:-.04em;font:26px/1.1 Georgia,serif;text-decoration:none;display:grid}.brand>span{letter-spacing:.24em;text-transform:uppercase;font:11px/1.5 system-ui}.brand small{letter-spacing:.19em;margin-top:6px;font:8px/2 system-ui}.header nav{align-items:center;gap:30px;font-size:13px;display:flex}.button{color:#fff;background:#315b48;border:1px solid #315b48;border-radius:3px;justify-content:space-between;align-items:center;gap:30px;padding:15px 22px;font-size:14px;text-decoration:none;display:inline-flex}.small{padding:10px 16px}.hero{border-bottom:1px solid var(--line);max-width:1320px;margin:auto;padding:64px 5vw 58px}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:#8c583e;margin:0 0 22px;font-size:11px}.hero h1{letter-spacing:-.045em;max-width:1100px;margin:0 0 26px;font-family:Georgia,Noto Serif CJK JP,serif;font-size:clamp(34px,4.8vw,68px);font-weight:400;line-height:1.18}.hero .intro{color:#4b6155;max-width:760px;font-size:clamp(17px,1.6vw,21px);line-height:1.85}.meta{color:#65776b;font-size:12px}.crumb{color:#647466;flex-wrap:wrap;gap:12px;margin-bottom:32px;font-size:12px;display:flex}.crumb a{color:inherit}.languages{gap:20px;margin-top:24px;font-size:13px;display:flex}.languages a[aria-current]{text-decoration-thickness:2px}.layout{grid-template-columns:220px minmax(0,760px);gap:clamp(36px,5vw,90px);max-width:1280px;margin:auto;padding:52px 5vw 80px;display:grid}.toc{align-self:start;font-size:12px;position:sticky;top:30px}.toc h2{text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:600}.toc ol{padding-left:18px}.toc li{padding:7px 0}.article section{margin-bottom:45px;scroll-margin-top:24px}.article h2{letter-spacing:-.03em;margin-top:0;font-size:clamp(22px,2.4vw,30px);font-weight:500;line-height:1.5}.article p{margin:16px 0}.article li{margin:12px 0}.article ul{padding-left:24px}.number{color:#97684b;letter-spacing:.12em;margin-bottom:12px;font-size:11px;display:block}.checklist{background:#e9eedf;border:1px solid #c9d5c0;border-radius:4px;padding:28px}.checklist label{cursor:pointer;align-items:start;gap:12px;margin:16px 0;display:flex}.checklist input{accent-color:#315b48;min-width:18px;height:18px;margin-top:6px}.cta{color:#f6f4e9;background:#233f34;border-radius:4px;padding:32px}.cta h2{color:inherit}.cta .button{color:#233f34;background:#f4efe3}.cta p{font-size:15px}.sources{border-top:1px solid var(--line);overflow-wrap:anywhere;padding-top:26px;font-size:13px}.sources h2{font-size:19px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1320px;margin:auto;padding:48px 5vw 72px;display:grid}.card{background:var(--paper);border:1px solid var(--line);flex-direction:column;gap:14px;padding:32px;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.card:hover{border-color:#697f66;transform:translateY(-3px)}.card h2{letter-spacing:-.03em;margin:0;font:400 clamp(24px,2.8vw,36px)/1.4 Georgia,Noto Serif CJK JP,serif}.card p{color:#5b6d60;font-size:15px}.card .read{margin-top:auto;font-size:13px}.related{border-top:1px solid var(--line);flex-wrap:wrap;gap:20px;padding:20px 0;font-size:14px;display:flex}footer{border-top:1px solid var(--line);background:#e9eddf;padding:42px 6vw}footer>p{color:#566a5b;max-width:850px;font-size:13px}.footer-brand{margin-bottom:20px;font:32px Georgia,serif}.footer-links,footer nav{flex-wrap:wrap;gap:22px;margin:22px 0;font-size:12px;display:flex}@media (max-width:850px){.layout{grid-template-columns:1fr;gap:25px}.toc{border-bottom:1px solid var(--line);padding-bottom:20px;position:static}.toc ol{grid-template-columns:1fr 1fr;gap:0 22px;display:grid}.cards{grid-template-columns:1fr}.hero{padding-top:42px}.header nav{gap:16px}.header nav>a:first-child{display:none}.header{padding:20px 5vw}.brand{font-size:23px}.article section{margin-bottom:36px}.cta,.checklist{padding:24px}.hero h1{font-size:clamp(32px,7.5vw,52px)}.card{padding:26px}}@media (prefers-reduced-motion:reduce){.card{transition:none}.card:hover{transform:none}}
