*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:#112e42;background:#f5f8f7;font:16px/1.8 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:#006b9f;text-underline-offset:4px}a:hover{color:#00496e}a:focus-visible{outline:3px solid #007fb3;outline-offset:5px}::selection{background:#d8ef4a;color:#112e42}header{background:#081a2b;color:#fff;padding:24px max(24px,calc((100vw - 1180px)/2));display:flex;justify-content:space-between;align-items:center;gap:24px}header a,footer a{color:#e0ed9e}header a:hover,footer a:hover{color:#fff}.brand{font-weight:800;font-size:26px;text-decoration:none;color:#fff}.brand span{display:block;font-size:10px;letter-spacing:.15em}header nav{display:flex;gap:24px;font-size:14px}main{max-width:1180px;margin:auto;padding:52px 24px 72px}.heading{padding-bottom:32px;margin-bottom:40px;border-bottom:1px solid #cbd9dd}.heading h1{font-size:clamp(30px,5vw,44px);letter-spacing:-.025em;line-height:1.15;margin:0 0 16px}.heading p{margin:0;color:#486271}.heading .date{font-size:13px;margin-top:18px}.layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:54px}.contents{align-self:start;position:sticky;top:24px;display:grid;gap:14px;font-size:14px;padding-right:18px}.contents a{text-decoration:none;line-height:1.5}article{max-width:74ch;min-width:0}section{margin-bottom:42px}h2{font-size:23px;line-height:1.35;margin:0 0 16px;letter-spacing:-.015em}p{margin:0 0 16px;overflow-wrap:anywhere}code{font-size:.95em;background:#e5edf0;padding:2px 5px;border-radius:3px}footer{display:flex;justify-content:center;flex-wrap:wrap;gap:18px 32px;background:#081a2b;color:#c3d2db;padding:28px 24px;font-size:13px}.skip{position:absolute;top:-100px;left:20px;background:#fff;padding:12px;z-index:10}.skip:focus{top:12px}@media(max-width:720px){header{padding:20px;align-items:flex-start}header nav{flex-direction:column;gap:10px;font-size:12px}.brand{font-size:23px}main{padding:34px 20px 40px}.heading{margin-bottom:28px;padding-bottom:24px}.layout{grid-template-columns:1fr;gap:36px}.contents{position:static;border-bottom:1px solid #cbd9dd;padding:0 0 26px;gap:12px}h2{font-size:22px}section{margin-bottom:34px}footer{display:grid;text-align:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}