@font-face{font-family:courier prime;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/courier-prime-latin-400-normal.woff2)format("woff2")}@font-face{font-family:courier prime;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/courier-prime-latin-400-italic.woff2)format("woff2")}@font-face{font-family:courier prime;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/courier-prime-latin-700-normal.woff2)format("woff2")}@font-face{font-family:courier prime;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/courier-prime-latin-700-italic.woff2)format("woff2")}@font-face{font-family:im fell english;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/im-fell-english-latin-400-normal.woff2)format("woff2")}@font-face{font-family:ibm plex mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-400-normal.woff2)format("woff2")}@font-face{font-family:ibm plex mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-700-normal.woff2)format("woff2")}:root{--paper:#f5efe2;--ink:#1a1612;--ink-soft:#6a635a;--rule:#d4ccb6;--accent:#b8351a;--code-bg:#ebe2cc;--measure:38rem;--type:"Courier Prime", "American Typewriter", "Courier New", Courier, ui-monospace, monospace;--code-type:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace}:root[data-theme=dark]{--paper:#14110d;--ink:#e6dec9;--ink-soft:#968d78;--rule:#2c2620;--accent:#ec7a55;--code-bg:#1d1813}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#14110d;--ink:#e6dec9;--ink-soft:#968d78;--rule:#2c2620;--accent:#ec7a55;--code-bg:#1d1813}}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--type);font-size:17px;line-height:1.7;font-feature-settings:"kern"}nav,main,header.site-header,footer{max-width:var(--measure);margin:0 auto;padding:0 1.5rem}nav{padding-top:2rem;font-size:.78rem;letter-spacing:.04em;color:var(--ink-soft)}nav.back a{color:var(--ink-soft);border-bottom:1px dotted color-mix(in srgb,var(--ink-soft) 35%,transparent)}nav.back a:hover{color:var(--ink);border-bottom-color:var(--ink)}header.site-header{padding-top:4rem;padding-bottom:2.2rem;border-bottom:1px solid var(--rule);box-shadow:0 2px 0 var(--paper),0 3px 0 var(--rule)}header.site-header h1{margin:0;font-size:1.7rem;font-weight:700;letter-spacing:-.015em;text-transform:lowercase}.tagline{margin:.55rem 0 0;color:var(--ink-soft);font-style:italic;font-size:.92rem;max-width:32rem}main{padding-top:2.5rem;padding-bottom:4rem}a{color:var(--accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 30%,transparent);transition:border-color 120ms ease}a:hover{border-bottom-color:var(--accent)}.intro{margin:.5rem 0 2.6rem;font-size:1rem;line-height:1.65;color:var(--ink)}.intro p{margin:0 0 1em}.intro p:last-child{margin-bottom:0}.latest{margin-top:.5rem;margin-bottom:2.6rem}.latest-entry{padding:1.2rem 0 1.4rem;border-bottom:1px dotted var(--rule)}.latest-entry:last-child{border-bottom:none;padding-bottom:.4rem}.latest-title{display:inline-block;font-size:1.18rem;font-weight:700;color:var(--accent);border-bottom:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}.latest-meta{margin:.4rem 0 .8rem;font-size:.8rem;color:var(--ink-soft);letter-spacing:.01em}.latest-summary{margin:0;line-height:1.65;color:var(--ink);max-height:4lh;overflow:hidden;mask-image:linear-gradient(to bottom,black 65%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 65%,transparent 100%)}.taglink-sep{margin:0 .4em;color:color-mix(in srgb,var(--ink-soft) 55%,var(--paper))}.archive-intro{margin:0 0 2rem;color:var(--ink-soft);font-style:italic}.archive-intro p{margin:0 0 .8em}.archive-intro p:last-child{margin-bottom:0}.archive-empty{color:var(--ink-soft);font-style:italic}.archive{margin-top:.5rem}.plate{display:flex;align-items:baseline;gap:1rem;margin:0 0 1.4rem;font-size:.72rem;font-weight:400;letter-spacing:.22em;text-transform:lowercase;color:var(--ink-soft)}.plate::after{content:"";flex:1;height:0;border-bottom:1px solid var(--rule);transform:translateY(-.25em)}.entries{list-style:none;padding:0;margin:0;counter-reset:entry}.entry{position:relative;padding:1.1rem 0 1.2rem;border-bottom:1px dotted var(--rule);counter-increment:entry}.entry::before{content:"▸";position:absolute;left:-1.1rem;top:1.25rem;color:var(--accent);font-size:.85rem;opacity:0;transform:translateX(-.25rem);transition:opacity 160ms ease,transform 160ms ease}.entry:hover::before{opacity:1;transform:translateX(0)}.entry-title{display:inline-block;font-size:1.05rem;color:var(--accent);border-bottom:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}.entry:hover .entry-title{border-bottom-color:var(--accent)}.entry-meta{margin:.35rem 0 0;font-size:.8rem;color:var(--ink-soft);letter-spacing:.01em}.entry-date{font-style:italic}.entry-sep{margin:0 .5em;color:color-mix(in srgb,var(--ink-soft) 55%,var(--paper))}.entry-tag{color:var(--ink-soft);border-bottom:1px dotted color-mix(in srgb,var(--ink-soft) 35%,transparent)}.entry-tag:hover{color:var(--ink);border-bottom-color:var(--ink)}.post-header{margin:.5rem 0 2.6rem;padding-bottom:1.4rem;border-bottom:1px solid var(--rule);box-shadow:0 2px 0 var(--paper),0 3px 0 var(--rule)}.post-title{margin:0 0 .55rem;font-size:1.85rem;font-weight:700;line-height:1.15;letter-spacing:-.015em;text-transform:lowercase;color:var(--ink)}.post-strapline{margin:0 0 .55rem;font-size:1.08rem;font-weight:400;font-style:italic;line-height:1.35;color:var(--ink-soft);letter-spacing:.005em;max-width:var(--measure)}.post-subtitle{margin:0;font-size:.92rem;color:var(--ink-soft);font-style:italic;letter-spacing:.01em}.post-date{font-style:italic}.post-filed{margin:.6rem 0 0;font-size:.72rem;letter-spacing:.16em;text-transform:lowercase;color:var(--ink-soft)}.post-filed-label{color:color-mix(in srgb,var(--ink-soft) 65%,var(--paper));margin-right:.6em}.post-filed-sep{margin:0 .45em;color:color-mix(in srgb,var(--ink-soft) 55%,var(--paper))}.post-filed-tag{color:var(--ink-soft);border-bottom:1px dotted color-mix(in srgb,var(--ink-soft) 35%,transparent)}.post-filed-tag:hover{color:var(--ink);border-bottom-color:var(--ink)}.post-content h1,.post-content h2,.post-content h3{font-weight:700;line-height:1.3;margin-top:2.4em;margin-bottom:.4em;text-transform:lowercase}.post-content h1{font-size:1.5rem;margin-top:.5em}.post-content h2{font-size:1.18rem;position:relative;padding-left:1.2em}.post-content h2::before{content:"§";position:absolute;left:0;top:.05em;color:var(--accent);font-weight:400;font-size:.95em}.post-content h3{font-size:1rem;color:var(--ink-soft)}.post-content p{margin:1em 0}.post-content ul,.post-content ol{padding-left:1.4em}.post-content li{margin:.3em 0}.post-content strong{font-weight:700}.post-content>p:first-of-type::first-letter,.intro>p:first-of-type::first-letter{float:left;font-family:im fell english,eb garamond,Georgia,serif;font-weight:400;font-size:3.8em;line-height:.82;padding:.04em .12em 0 0;color:var(--accent)}.post-replies{margin:2.6rem 0 0;font-size:.88rem;font-style:italic;color:var(--ink-soft);letter-spacing:.01em;text-align:right}.post-nav{display:flex;gap:1.5rem;margin-top:3.5rem;padding-top:1.6rem;border-top:1px dotted var(--rule)}.post-nav-link{flex:1;border-bottom:none;color:var(--ink);min-width:0}.post-nav-prev{text-align:left}.post-nav-next{text-align:right;margin-left:auto}.post-nav-label{display:block;font-size:.7rem;letter-spacing:.18em;text-transform:lowercase;color:var(--ink-soft);margin-bottom:.3rem}.post-nav-prev .post-nav-label::before{content:"← ";color:var(--accent)}.post-nav-next .post-nav-label::after{content:" →";color:var(--accent)}.post-nav-title{display:inline-block;font-size:.95rem;color:var(--accent);border-bottom:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}.post-nav-link:hover .post-nav-title{border-bottom-color:var(--accent)}code{font-family:var(--code-type);font-size:.92em;background:var(--code-bg);padding:.1em .35em;border-radius:2px}pre{font-family:var(--code-type);background:var(--code-bg);font-size:.82rem;line-height:1.55;padding:1.1rem 1.25rem;border-radius:3px;overflow-x:auto;border-left:2px solid var(--accent)}pre code{background:0 0;padding:0;font-size:inherit}blockquote{margin:1.5em 0;padding:.2em 1.2em;border-left:2px solid var(--accent);color:var(--ink-soft);font-style:italic}hr{border:0;border-top:1px solid var(--accent);height:0;background:0 0;overflow:visible;text-align:center;margin:2.5em 0}hr::after{content:"❦";display:inline-block;position:relative;top:-.7em;padding:0 .75em;background:var(--paper);color:var(--accent);font-size:1.5em}img{max-width:100%;height:auto;display:block;margin:1.5em auto}table{border-collapse:collapse;width:100%;margin:1.5em 0;font-size:.95em}th,td{text-align:left;padding:.5em .75em;border-bottom:1px solid var(--rule)}th{font-weight:700;font-size:.9em;text-transform:lowercase}.taglink{margin:2.4rem 0 0;font-size:.82rem;color:var(--ink-soft);text-align:right;font-style:italic}.page-title{font-size:1.05rem;font-weight:700;text-transform:lowercase;margin:.5em 0 1.5em}.taglist{list-style:none;padding:0;margin:0}.taglist li{padding:.6rem 0;border-bottom:1px dotted var(--rule);display:flex;justify-content:space-between;align-items:baseline}.tag-count{color:var(--ink-soft);font-size:.85rem}.theme-toggle button{background:0 0;border:none;padding:0;margin:0;font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--accent);cursor:pointer;border-bottom:1px dotted color-mix(in srgb,var(--accent) 35%,transparent)}.theme-toggle button:hover{border-bottom-color:var(--accent)}:root[data-theme=light] .theme-toggle button[data-theme-set=light],:root[data-theme=dark] .theme-toggle button[data-theme-set=dark]{color:var(--ink-soft);cursor:default;border-bottom:none}.theme-toggle-sep{margin:0 .4em;color:color-mix(in srgb,var(--ink-soft) 55%,var(--paper))}footer{padding-top:2rem;padding-bottom:4rem}.back-home{margin:0 0 1rem;text-align:center;font-size:.85rem;letter-spacing:.04em}.back-home a{color:var(--accent);border-bottom:1px dotted color-mix(in srgb,var(--accent) 35%,transparent)}.back-home a:hover{border-bottom-color:var(--accent)}.colophon{margin:.6rem 0 0;text-align:center;font-size:.7rem;letter-spacing:.14em;text-transform:lowercase;color:var(--ink-soft)}::selection{background:var(--accent);color:var(--paper)}