@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/source-serif-4-roman-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/source-serif-4-roman-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/source-serif-4-italic-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/source-serif-4-italic-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-normal-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-normal-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-normal-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-normal-500-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{color-scheme:light;--ink:#22211c;--muted:#5d5a4e;--faint:#8a8574;--rule:#e4ddc9;--rule-strong:#c9c2ac;--bg:#faf6ec;--accent:#1c6b52;--margin:208px;--main:632px;--gutter:44px}*{box-sizing:border-box;margin:0;padding:0}html:focus-within{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:"Source Serif 4",Georgia,serif;font-size:20px;line-height:1.66;-webkit-font-smoothing:antialiased}.wrap{padding:0 32px 110px}.band{display:grid;grid-template-columns:var(--margin) var(--main);column-gap:var(--gutter);justify-content:center}.m{grid-column:1;text-align:right;font-family:IBM Plex Mono,monospace;min-width:0}.c{grid-column:2;min-width:0}.runhead{padding:26px 0 12px;border-bottom:1px solid var(--rule-strong);margin-bottom:74px;font-size:12.5px;letter-spacing:.02em}.runhead .brand{color:var(--ink);text-decoration:none}.runhead .brand .dot{color:var(--accent)}.runhead .links{display:flex;justify-content:flex-end;gap:22px;font-family:IBM Plex Mono,monospace}.runhead .links a{color:var(--muted);text-decoration:none;transition:color .18s}.runhead .links a:hover{color:var(--ink)}.titleblock{margin-bottom:56px}.titleblock .m{text-align:left}.portrait{width:104px;height:104px;object-fit:cover;border-radius:3px;filter:saturate(.75)}h1{font-size:44px;font-weight:600;letter-spacing:-.015em;line-height:1.08;margin-bottom:12px}.subtitle{font-family:IBM Plex Mono,monospace;font-size:13px;color:var(--muted);letter-spacing:.05em;text-transform:uppercase}.marglinks{display:flex;flex-direction:column;gap:9px;font-size:12.5px;padding-top:10px}.marglinks a{color:var(--muted);text-decoration:none;transition:color .18s}.marglinks a .ext{color:var(--faint);font-size:11px;margin-right:4px}.marglinks a:hover,.marglinks a:hover .ext{color:var(--ink)}p{margin-bottom:22px}.c p{text-align:justify;hyphens:auto}.lead{text-align:left!important;hyphens:none}.lead:first-letter{float:left;font-size:66px;line-height:.85;padding:8px 12px 0 0;color:var(--accent);font-weight:600}.sect{margin-top:84px}.label,h2{font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:14px;line-height:1.6}.intro,.section-intro{color:var(--ink);font-size:17px;margin-bottom:6px}.chip{display:inline-block;background:var(--accent);color:var(--bg);font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;padding:3px 7px;line-height:1.6}.row{padding:16px 0}.row .c{border-top:1px solid var(--rule);padding-top:14px;margin-top:-16px}.row .m{padding-top:5px;font-size:12px;color:var(--faint);letter-spacing:.03em}.row .plabel{display:block;color:var(--faint);font-size:11px;margin-top:6px}.row h3{font-size:19px;font-weight:600}.row h3 a{color:inherit;text-decoration:none;transition:color .18s}.row h3 a:hover{color:var(--accent)}.row h3 .ext{color:var(--faint);font-size:14px;margin-left:6px}.row .desc{color:var(--ink);font-size:16.5px;margin:3px 0 0;text-align:left!important;hyphens:none}.section-link{margin-top:16px;font-family:IBM Plex Mono,monospace;font-size:13.5px}.section-link a{color:var(--muted);text-decoration:none;border-bottom:1px solid var(--rule-strong);padding-bottom:1px;transition:color .2s,border-color .2s}.section-link a:hover{color:var(--ink);border-color:var(--ink)}.tipin{margin-top:84px}.tipin .c{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:26px 0 28px}.tipin .m{padding-top:32px}.margnote{display:block;font-size:11px;line-height:1.7;color:var(--faint);letter-spacing:.02em}.tipin .intro{margin-bottom:20px;max-width:52ch}.subscribe{display:flex;align-items:baseline;gap:24px;max-width:440px;min-height:44px;border-bottom:1.5px solid var(--rule-strong);transition:border-color .2s}.subscribe:focus-within{border-color:var(--accent)}.subscribe input{flex:1;min-width:0;border:0;background:transparent;font-family:IBM Plex Mono,monospace;font-size:14px;color:var(--ink);padding:12px 0}.subscribe input:focus{outline:0}.subscribe input::placeholder{color:var(--faint)}.subscribe button{border:0;background:transparent;color:var(--accent);font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:500;padding:12px 0;cursor:pointer;white-space:nowrap}.subscribe button:hover{text-decoration:underline}.subscribe-status{display:flex;align-items:center;max-width:440px;min-height:45.5px;font-family:IBM Plex Mono,monospace;font-size:14px;color:var(--accent)}.subscribe-status.is-error{color:#a63d2a}.subscribe-status[hidden]{display:none}.now-stamp{display:block;font-size:11.5px;color:var(--faint);letter-spacing:.05em;padding-top:4px}.nowline{padding:7px 0}.nowline .m{padding-top:6px}.nowline .c{color:var(--ink)}.shelf{color:var(--ink);font-size:17px;margin-bottom:2px}.shelf .who{color:var(--faint)}.shelf-more{margin-top:40px}.colophon{margin-top:110px;text-align:center}.colophon .asterism{color:var(--rule-strong);font-size:15px;letter-spacing:14px;margin-bottom:26px}.motto{font-style:italic;color:var(--ink);font-size:17px;margin-bottom:26px}.colophon .fine{font-family:IBM Plex Mono,monospace;font-size:11.5px;color:var(--faint);line-height:2}.backlink{display:inline-block;font-family:IBM Plex Mono,monospace;font-size:12.5px;color:var(--muted);text-decoration:none;transition:color .18s;padding-top:8px}.backlink:hover{color:var(--ink)}.empty-state{margin-top:8px}.page-title{font-size:30px;font-weight:600;letter-spacing:-.01em;margin-bottom:8px}.page-date{font-family:IBM Plex Mono,monospace;font-size:12px;letter-spacing:.05em;color:var(--faint);text-transform:uppercase;margin-bottom:40px}.prose{font-size:19px;line-height:1.7}.prose p{text-align:justify;hyphens:auto}.prose h2{color:var(--ink);font-family:"Source Serif 4",Georgia,serif;font-size:22px;font-weight:600;letter-spacing:0;text-transform:none;margin:40px 0 14px}.prose h3{font-size:19px;font-weight:600;margin:32px 0 12px}.prose a{color:var(--accent);text-decoration:none;border-bottom:1px solid rgba(28,107,82,.3)}.prose a:hover{border-color:var(--accent)}.prose ul,.prose ol{margin:0 0 22px 1.2em}.prose li{margin-bottom:6px}.prose blockquote{border-left:2px solid var(--rule-strong);padding-left:18px;color:var(--muted);font-style:italic;margin:0 0 22px}.prose code{font-family:IBM Plex Mono,monospace;font-size:.85em;background:#f1ecdd;padding:1px 5px;border-radius:3px}.link-accent{color:var(--accent);text-decoration:none;border-bottom:1px solid rgba(28,107,82,.3);padding-bottom:1px;transition:border-color .2s}.link-accent:hover{border-color:var(--accent)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.subscribe input:focus-visible{outline:0}::selection{background:var(--accent);color:var(--bg)}@media(max-width:960px){body{font-size:18.5px}.wrap{padding:0 24px 90px}.band{grid-template-columns:1fr;column-gap:0;justify-content:start}.m,.c{grid-column:1;text-align:left}.runhead{display:flex;justify-content:space-between;margin-bottom:52px}.runhead .links{justify-content:flex-start}.titleblock .m{order:2;margin-top:18px}.portrait{width:88px;height:88px}.marglinks{flex-direction:row;flex-wrap:wrap;gap:18px;padding:0 0 26px}.sect{margin-top:60px}.sect .m,.tipin .m{order:2}.row .m{padding:0 0 4px;font-size:11.5px}.row .plabel{display:inline;margin-left:10px}.row .c{margin-top:0}.tipin .m{padding-top:14px}.nowline .m{padding:14px 0 4px}.colophon{margin-top:80px}.c p,.prose p{text-align:left;hyphens:none}.backlink{padding:0 0 24px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}
