:root{--dark: #3d3d3d;--sidebar: #e1e1e1;--paper: #fafafa;--ink: #222222;--muted: #666;--display: "Space Mono", monospace;--body: "IBM Plex Sans", sans-serif;--pad: clamp(1.75rem, 3.3vw, 4.25rem);color:var(--ink);background:var(--paper);font-family:var(--body);font-synthesis:none}*{box-sizing:border-box}html{background:var(--paper)}body{margin:0;min-width:320px;font-size:17px;line-height:1.65;text-rendering:optimizeLegibility}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}a:hover{text-decoration-thickness:2px}a:focus-visible{outline:2px solid currentColor;outline-offset:4px}img{display:block;max-width:100%;height:auto}figure{margin:0}::selection{background:var(--dark);color:var(--paper)}.site-layout{display:grid;grid-template-columns:19% 19% minmax(0,1fr);min-height:100vh}.identity-column{background:var(--dark);color:var(--paper);display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:2.65rem clamp(1.2rem,2vw,2.5rem) 2rem}.wordmark{display:block;width:fit-content;font:700 clamp(1.4rem,2.1vw,2rem)/1.13 var(--display);letter-spacing:-.065em;text-decoration:none}.wordmark span{display:block}.identity-footer{font:400 .68rem/1.7 var(--display);text-transform:uppercase;letter-spacing:.01em}.identity-footer p{margin:0 0 1.1rem}.identity-footer p:last-child{margin-bottom:0}.index-column{background:var(--sidebar);padding:2.75rem clamp(1.2rem,2vw,2.5rem) 3rem;font-family:var(--display);font-size:.78rem;line-height:1.6}.index-column h2{margin:0 0 1.15rem;font:700 .82rem/1.4 var(--display);letter-spacing:.07em;text-transform:uppercase}.index-column h2 a{text-decoration:none}.index-column h2 a:hover,.index-column [aria-current=page]{text-decoration:underline}.sidebar-about p{margin:0;max-width:25ch}.sidebar-tags{margin-top:4rem}.sidebar-tags ul{list-style:none;padding:0;margin:0}.sidebar-tags li{margin:0 0 .46rem}.sidebar-tags a{display:flex;justify-content:space-between;gap:1rem;text-decoration:none}.sidebar-tags a:hover span:first-child{text-decoration:underline}.sidebar-tags a span:last-child{color:#555;font-size:.72rem}.content-column{min-width:0;background:var(--paper);padding:2.65rem var(--pad) 6rem}.content-inner{width:100%;max-width:920px;margin:0 auto}.archive-heading{margin:0 0 3.7rem}.eyebrow,.entry-date,.entry-tags,.read-link,.archive-row p{font-family:var(--display);font-size:.7rem;line-height:1.6;text-transform:uppercase;letter-spacing:.025em}.eyebrow{margin:0 0 .85rem;color:var(--muted)}.archive-heading h1,.page-head h1{margin:0;font:700 clamp(1.6rem,3vw,2.5rem)/1.2 var(--display);letter-spacing:-.045em;text-transform:uppercase}.feed-entry{display:grid;grid-template-columns:148px minmax(0,1fr);gap:1.65rem;padding:1.7rem 0;border-top:1px solid #ccc}.feed-entry:last-child{border-bottom:1px solid #ccc}.entry-date{margin:0 0 .35rem;color:var(--muted)}.feed-entry h2{margin:0 0 .45rem;font:700 clamp(1.15rem,1.8vw,1.55rem)/1.3 var(--display);letter-spacing:-.04em}.feed-entry h2 a,.archive-row h2 a{text-decoration:none}.feed-entry h2 a:hover,.archive-row h2 a:hover{text-decoration:underline}.entry-tags{margin:.55rem 0 .5rem;color:#555}.entry-tags a{text-decoration:none}.entry-tags a:hover{text-decoration:underline}.feed-image{display:block;width:148px;height:148px;aspect-ratio:1;overflow:hidden}.feed-image img{width:100%;height:100%;object-fit:cover}.entry-excerpt{max-width:64ch;margin:0;font-size:.95rem;line-height:1.55}.read-link{font-weight:700;text-decoration:none}.read-link:hover{text-decoration:underline}.archive-list{max-width:690px}.archive-row{margin:0 0 2.1rem}.archive-row h2{margin:0 0 .25rem;font:700 clamp(1.1rem,2vw,1.45rem)/1.3 var(--display);letter-spacing:-.04em}.archive-row p{margin:0;color:var(--muted)}.detail-title,.page-head{max-width:920px;margin:0 auto 2.3rem}.detail-title h1{margin:0 0 .9rem;font:700 clamp(1.7rem,3.1vw,2.65rem)/1.15 var(--display);letter-spacing:-.05em;text-transform:uppercase}.detail-title .entry-tags{margin-bottom:2rem}.article-hero{margin:0 0 2.6rem}.article-hero img{width:100%;max-height:620px;object-fit:contain;object-position:left center}.prose-wrap{max-width:920px;margin:0 auto}.prose{max-width:68ch}.prose p,.prose li{font-family:var(--body);font-size:1.06rem;line-height:1.78}.prose p{margin:0 0 1.35rem}.prose h2,.prose h3{margin:2.6rem 0 .7rem;font:700 1.28rem/1.35 var(--display);letter-spacing:-.025em}.prose h3{font-size:1.05rem}.prose blockquote{margin:1.5rem 0 1.5rem 1.4rem;padding-left:1rem;border-left:2px solid #aaa}.prose figure,.journal-embed{width:min(900px,calc(62vw - 2 * var(--pad)));margin:2.1rem 0}.prose figure img{width:100%}.prose figcaption{margin-top:.55rem;color:#555;font-size:.82rem;line-height:1.5}.prose pre{overflow:auto;background:#eee;padding:1rem;font:.82rem/1.5 var(--display)}.prose code{font-family:var(--display);font-size:.88em}.journal-embed iframe{display:block;width:100%;height:min(70vh,680px);min-height:500px;border:0}.journal-open-link{margin-top:2.5rem!important;font:700 .82rem/1.6 var(--display)!important;text-transform:uppercase}.resource-box{margin-top:2.5rem}.resource-box h2{font:700 .8rem/1.4 var(--display);text-transform:uppercase}.resource-box ul{list-style:none;padding:0}.resource-box li{margin:.4rem 0}.shell{width:100%;max-width:920px;margin:0 auto}.page-head{padding:0}.page-head p:not(.eyebrow){max-width:64ch}.section{max-width:920px;margin:0 auto}.empty{color:var(--muted);font-style:italic}@media(max-width:900px){.site-layout{grid-template-columns:minmax(0,1fr)}.identity-column{min-height:0;padding:1.3rem 1.5rem}.wordmark{font-size:1.5rem}.identity-footer{display:none}.index-column{padding:1.5rem}.sidebar-about p{max-width:60ch}.sidebar-tags{margin-top:1.6rem}.sidebar-tags ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:.2rem 1.3rem}.content-column{padding:2rem 1.5rem 4rem}.prose figure,.journal-embed{width:100%}}@media(max-width:560px){body{font-size:16px}.archive-heading{margin-bottom:2.5rem}.feed-entry{grid-template-columns:96px minmax(0,1fr);gap:1rem;padding:1.35rem 0}.feed-image{width:96px;height:96px}.feed-entry h2{font-size:1.08rem}.entry-date,.feed-entry .entry-tags,.feed-entry .read-link{font-size:.62rem}.entry-excerpt{font-size:.88rem}.journal-embed iframe{min-height:430px}}
