:root{--ink:#161616;--bg:#fff;--red:#d92b1f;--rule:#e3e3e0;--muted:#777}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16.5px/1.66 Helvetica,Arial,-apple-system,sans-serif}
.frame{max-width:860px;margin:0 auto;padding:0 26px}
header.site{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;padding:26px 0 16px;border-bottom:1px solid var(--ink)}
.wordmark{font-weight:700;font-size:16px;color:var(--ink);text-decoration:none}
.wordmark span{color:var(--red)}
nav.main{font-size:12.5px;letter-spacing:.04em}
nav.main a{color:var(--muted);text-decoration:none;margin-left:16px}
nav.main a:hover{color:var(--ink)}nav.main a.here{color:var(--red)}
h1{font-size:44px;line-height:1.04;letter-spacing:-.025em;margin:40px 0 16px;font-weight:700}
.deck{font-size:18px;color:var(--muted);max-width:600px;margin:0 0 12px}
.colophon{font-size:12.5px;color:var(--muted);padding:10px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin:18px 0 8px}
.colophon a{color:var(--red);text-decoration:none;word-break:break-all}
main{padding-bottom:70px}
.sec{border-top:1px solid var(--rule);margin-top:36px;padding-top:10px}
.sec .k{font-size:11.5px;letter-spacing:.18em;color:var(--red);font-weight:700}
h2{font-size:19px;margin:6px 0 12px;font-weight:700}
p{margin:0 0 15px;max-width:640px}
a{color:var(--red)}
aside.callout{max-width:640px;margin:26px 0;padding:14px 0;border-top:2px solid var(--ink);border-bottom:1px solid var(--rule);font-size:16px}
aside.callout::before{content:"*";color:var(--red);font-size:26px;line-height:0;vertical-align:-6px;margin-right:8px}
figure.lede{margin:26px 0 8px}figure.lede img{width:100%;height:auto;display:block}
figure.video{margin:26px 0;max-width:640px}
figure.video .frame2{position:relative;padding-top:56.25%;background:#111}
figure.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
figcaption{font-size:12.5px;color:var(--muted);margin-top:6px}
table.idx{width:100%;border-collapse:collapse;margin:30px 0}
table.idx td{border-top:1px solid var(--rule);padding:14px 10px 14px 0;vertical-align:top}
table.idx td.n{width:44px;color:var(--red);font-weight:700;font-size:14px}
table.idx a{font-weight:700;font-size:17px;color:var(--ink);text-decoration:none}
table.idx a:hover{color:var(--red)}
table.idx p{margin:3px 0 0;font-size:13.5px;color:var(--muted)}
footer.site{border-top:1px solid var(--ink)}
footer.site .inner{padding:20px 0 30px;font-size:12.5px;color:var(--muted)}
@media(max-width:640px){h1{font-size:30px}}
