:root{color-scheme:light;--base:#f5f0e4;--contrast:#0e1626;--amber:#955b16;--teal:#24737b;--slate:#4a5d85;--muted:#5c6578;--surface:#fbf8f0;--ink-panel:#0e1626;--on-panel:#ece3ce;--brand-amber:#eba23c;--brand-teal:#3c9ba3;--brand-cream:#ece3ce;--band-bg:#ece3ce;--band-ink:#0e1626;--band-muted:#5c6578;--band-line:#cdc2a8;--wm-amber:#b06f12;--wm-teal:#2f8a92;--rule:color-mix(in srgb, var(--contrast) 18%, transparent);--font-display:Fraunces, Georgia, serif;--font-body:"Source Serif 4", Georgia, serif;--content:680px;--wide:1200px;--space-20:8px;--space-30:16px;--space-40:24px;--space-50:clamp(24px, 4vw, 40px);--space-60:clamp(32px, 6vw, 64px);--space-70:clamp(48px, 7vw, 80px);--small:.8125rem;--medium:clamp(.9375rem, .938rem + ((1vw - .2rem) * .227), 1.0625rem);--large:clamp(1.125rem, 1.125rem + ((1vw - .2rem) * .342), 1.3125rem);--x-large:clamp(1.5rem, 1.5rem + ((1vw - .2rem) * .682), 1.875rem);--xx-large:clamp(2rem, 2rem + ((1vw - .2rem) * 1.364), 2.75rem)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--base:#0e1626;--contrast:#ece3ce;--amber:#eba23c;--teal:#4fb0b8;--slate:#8a9cc2;--muted:#8f98ab;--surface:#1c2433;--ink-panel:#1c2433;--on-panel:#ece3ce;--band-bg:#0e1626;--band-ink:#ece3ce;--band-muted:#a7adbb;--band-line:#3a4253;--wm-amber:#eba23c;--wm-teal:#3c9ba3}}:root[data-theme=dark]{color-scheme:dark;--base:#0e1626;--contrast:#ece3ce;--amber:#eba23c;--teal:#4fb0b8;--slate:#8a9cc2;--muted:#8f98ab;--surface:#1c2433;--ink-panel:#1c2433;--on-panel:#ece3ce;--band-bg:#0e1626;--band-ink:#ece3ce;--band-muted:#a7adbb;--band-line:#3a4253;--wm-amber:#eba23c;--wm-teal:#3c9ba3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--base);min-width:0;color:var(--contrast);font-family:var(--font-body);font-size:var(--medium);letter-spacing:0;margin:0;padding-top:3px;font-weight:400;line-height:1.7}body:before{content:"";z-index:9999;background:linear-gradient(90deg, var(--brand-teal) 0%, var(--brand-amber) 50%, var(--brand-teal) 100%);pointer-events:none;height:3px;display:block;position:fixed;inset:0 0 auto}::selection{background:var(--amber);color:var(--base)}a{color:currentColor;text-underline-offset:.1em;text-decoration:underline 1px}a:hover{color:var(--amber);text-decoration:none}a:focus-visible{outline:2px solid var(--amber);outline-offset:4px}img{max-width:100%;height:auto}.skip-link{z-index:10000;clip-path:inset(50%);color:#444;background:#eee;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link:focus{clip-path:none;width:auto;height:auto;margin:0;padding:15px 23px 14px;top:5px;left:5px}.masthead-band{background:var(--band-bg);color:var(--band-ink);border-bottom:1px solid var(--band-line)}.masthead-inner,.site-header nav{width:min(var(--wide), calc(100% - (2 * var(--space-50))));margin-inline:auto}.masthead-top{align-items:center;gap:var(--space-30);color:var(--band-muted);font-size:var(--small);grid-template-columns:1fr auto;padding-top:12px;display:grid}.masthead-top .est{font-style:italic}.theme-toggle{border:1px solid var(--band-line);color:inherit;cursor:pointer;font:italic var(--small) var(--font-body);background:0 0;border-radius:99px;justify-self:end;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.theme-toggle:hover{color:var(--wm-amber);border-color:currentColor}.theme-toggle:focus-visible{outline:2px solid var(--wm-amber);outline-offset:2px}.theme-toggle svg{width:14px;height:14px}.theme-toggle .to-light,:root[data-theme-current=dark] .theme-toggle .to-dark{display:none}:root[data-theme-current=dark] .theme-toggle .to-light{display:inline}:root:not([data-theme-current]) .theme-toggle{visibility:hidden}.masthead{padding:var(--space-40) 0 var(--space-40);text-align:center}.wordmark{font-family:var(--font-body);font-variation-settings:"opsz" 60;letter-spacing:-.005em;margin:0;font-size:clamp(2.75rem,7.5vw,6rem);font-weight:600;line-height:1}.wordmark a{color:var(--band-ink);text-decoration:none}.wordmark a:hover{color:var(--band-ink)}.wordmark a:focus-visible{outline-color:var(--wm-amber)}.wm-bracket{font-weight:300}.wm-a{color:var(--wm-amber)}.wm-p{color:var(--wm-teal)}.site-tagline{color:var(--band-muted);font-size:var(--large);letter-spacing:.01em;margin:12px 0 0;font-style:italic}.site-byline{color:var(--band-muted);font-size:var(--small);margin:2px 0 0}.site-byline a{color:var(--band-ink);text-decoration:none}.site-byline a:hover{color:var(--wm-amber)}.site-header nav{border-top:3px double var(--contrast);border-bottom:1px solid var(--contrast);letter-spacing:.16em;text-transform:uppercase;flex-wrap:wrap;justify-content:center;gap:6px 30px;margin-top:6px;padding:10px 0;font-size:.75rem;font-weight:600;display:flex}.site-header nav a{text-decoration:none}.site-header nav a[aria-current=page]{color:var(--amber)}.site-header.compact .wordmark{font-size:clamp(2rem,4.5vw,3rem)}.site-header.compact .masthead{padding:10px 0 18px}.site-header.compact .site-tagline,.site-header.compact .site-byline{display:none}.post-feed,.reading-column{width:min(var(--content), calc(100% - (2 * var(--space-50))));margin-inline:auto}.post-feed{margin-top:var(--space-60);margin-bottom:var(--space-70)}.post-card{margin-bottom:var(--space-70)}.post-thumbnail{margin:0 0 var(--space-30)}.post-thumbnail a,.post-thumbnail img{display:block}.post-thumbnail img{width:100%}.post-card h2,.article h1,.archive-page h1,.not-found h1,.comments h2,.article-body h2,.article-body h3{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:pretty;font-weight:500;line-height:1.2}.post-card h2{margin:var(--space-30) 0 0;font-size:var(--x-large)}.post-card h2 a{text-decoration:none;transition:color .25s}.post-date,.article-meta,.comment-date{margin:var(--space-30) 0 0;color:var(--muted);font-size:var(--small);font-style:italic;line-height:1.7}.post-excerpt{max-height:5.2em;margin:var(--space-30) 0 0;color:var(--muted);line-height:1.6;overflow:hidden}.post-excerpt:first-letter{float:left;color:var(--amber);font-family:var(--font-display);margin-top:.05em;margin-right:.06em;font-size:2.4em;font-weight:600;line-height:.75}.continue{margin:var(--space-30) 0 0}.continue a{font-size:var(--small);font-weight:600}.pagination{justify-content:space-between;align-items:center;gap:var(--space-30);padding-top:var(--space-40);border-top:1px solid var(--rule);font-size:var(--small);display:flex}.single-page{margin-top:var(--space-60);margin-bottom:var(--space-70)}.article-header h1{font-size:var(--xx-large);margin:0}.article-header h1:first-letter,.archive-page h1:first-letter{color:var(--amber)}.article-meta a{color:var(--muted);text-decoration:underline}.featured-image{margin:var(--space-40) 0 0}.featured-image img{aspect-ratio:3/2;object-fit:cover;width:100%;display:block}.migration-note{margin:var(--space-30) 0;border-left:3px solid var(--teal);color:var(--muted);font-size:var(--small);padding:10px 14px}.article-body{margin-top:var(--space-40)}.article-body,.comment-body{overflow-wrap:anywhere}.article-body:not(.plain-opening)>p:first-of-type:first-letter{float:left;color:var(--amber);font-family:var(--font-display);margin:.12em .08em 0 0;font-size:3.5em;font-style:normal;font-weight:600;line-height:.8}@supports (initial-letter:2) or (-webkit-initial-letter:2){.article-body:not(.plain-opening)>p:first-of-type:first-letter{float:none;font-size:inherit;font-weight:500;line-height:inherit;-webkit-initial-letter:2;initial-letter:2;margin:0 .1em 0 0}}.article-body h2{font-size:var(--x-large);margin:2.2em 0 .7em}.article-body h3{font-size:var(--large);margin:2em 0 .6em}.article-body p,.article-body ul,.article-body ol,.article-body blockquote,.article-body pre,.article-body figure,.article-body table,.article-body .captioned-image-container,.article-body .callout-block,.article-body .datawrapper-wrap{margin-top:1.5em;margin-bottom:0}.article-body .captioned-image-container>figure{margin-top:0}.article-body figure img{width:auto;max-height:75vh;margin-inline:auto;display:block}.article-body .callout-block{padding:var(--space-30) var(--space-40);border-left:2px solid var(--amber);background:var(--surface)}.article-body .callout-block>p:first-child{margin-top:0}.article-body hr{margin:var(--space-50) 0;border:0;border-top:1px solid var(--rule)}.article-body blockquote:empty,.article-body figcaption:empty{display:none}.article-body iframe.video-embed{aspect-ratio:16/9;background:var(--surface);border:0;width:100%;height:auto;margin-top:1.5em;display:block}.article-body .embed-gone{color:var(--muted)}.article-body blockquote{padding-left:var(--space-30);border-left:2px solid var(--teal);color:var(--muted);margin-inline:0}.article-body pre{max-width:100%;padding:var(--space-30);background:var(--surface);font-size:.88em;overflow-x:auto}.article-body table{border-collapse:collapse;width:100%}.article-body th,.article-body td{border:1px solid var(--rule);text-align:left;vertical-align:top;padding:8px}.article-body figcaption{color:var(--muted);font-size:var(--small);text-align:center;margin-top:8px;font-style:italic;line-height:1.5}.comments{width:min(var(--content), calc(100% - (2 * var(--space-50))));margin:var(--space-70) auto}.comments h2{margin:0 0 var(--space-40);font-size:var(--x-large)}.comment-list,.comment-children{margin:0;padding:0;list-style:none}.comment{padding:var(--space-30) 0;border-top:1px solid var(--rule)}.comment article>header{justify-content:space-between;align-items:baseline;gap:var(--space-30);display:flex}.comment-author{font-family:var(--font-display);margin:0;font-weight:600}.comment-date{margin:0;text-decoration:none}.comment-body p{margin:8px 0 0}.comment-children{margin-left:var(--space-40);padding-left:var(--space-30);border-left:1px solid var(--teal)}.comments-closed{color:var(--muted);font-size:var(--small);font-style:italic}.archive-page,.not-found{margin-top:var(--space-60);margin-bottom:var(--space-70)}.archive-page h1,.not-found h1{font-size:var(--xx-large);margin:0}.standfirst{margin:var(--space-30) 0 0;color:var(--muted);font-size:var(--large)}.archive-list{margin-top:var(--space-60)}.article-body a,.comment-body a,.standfirst a{color:var(--teal)}.article-body a:hover,.comment-body a:hover{color:var(--contrast)}.archive-index{margin-top:var(--space-50)}.archive-year{padding-top:var(--space-40)}.archive-year h2{font-family:var(--font-display);font-size:var(--x-large);letter-spacing:-.01em;margin:0 0 4px;font-weight:500}.archive-year ol{border-top:1px solid var(--contrast);margin:0;padding:0;list-style:none}.archive-year li{column-gap:var(--space-30);border-bottom:1px solid var(--rule);grid-template-columns:6.5em minmax(0,1fr);padding:10px 0;display:grid}.archive-year time{color:var(--muted);font-size:var(--small);grid-row:span 2;padding-top:3px;font-style:italic}.archive-year li>a{font-family:var(--font-display);font-weight:500;line-height:1.3;text-decoration:none}.archive-year li>a:hover{color:var(--teal)}.archive-year li p{color:var(--muted);font-size:var(--small);text-overflow:ellipsis;white-space:nowrap;grid-column:2;margin:2px 0 0;line-height:1.5;overflow:hidden}.elsewhere .archive-year{padding-top:var(--space-50)}.elsewhere .archive-year li{grid-template-columns:3.5em minmax(0,1fr)}.elsewhere .work-year{color:var(--muted);font-size:var(--small);grid-row:span 3;padding-top:3px;font-style:italic}.elsewhere .archive-year li p{white-space:normal}.elsewhere .work-links a{color:var(--teal)}.elsewhere .work-links a:hover{color:var(--contrast)}.elsewhere .work-links .free{color:var(--muted);font-style:italic}.cv .cv-note{margin:var(--space-30) 0 0;color:var(--muted);font-size:var(--small)}.cv .cv-note a{color:var(--teal)}.cv .archive-year li{grid-template-columns:7.5em minmax(0,1fr)}.cv h1:first-letter{color:inherit}.cv h1 .initial{color:var(--amber)}.cv .cv-title{font-family:var(--font-display);font-weight:500;line-height:1.3}.cv .archive-year h3{margin:var(--space-40) 0 4px;color:var(--muted);font-size:var(--small);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.cv .archive-year h2+h3{margin-top:var(--space-30)}@media print{body:has(.cv) :is(.site-header,.site-footer,.skip-link),.cv .cv-note{display:none}.cv h2,.cv h3{break-after:avoid}.cv{width:100%;margin:0}.cv .archive-year{break-inside:auto;padding-top:14pt}.cv .archive-year li{break-inside:avoid;padding:4pt 0}.cv .archive-year ol li{grid-template-columns:7.5em minmax(0,1fr)}.cv .archive-year ol .work-year{grid-row:span 3;padding-top:2pt}.cv .archive-year ol li p{grid-column:2}.cv a{color:inherit;text-decoration:none}}.taxonomy-index{margin:var(--space-50) 0 0;border-top:1px solid var(--contrast);padding:0;list-style:none}.taxonomy-index li{justify-content:space-between;align-items:baseline;gap:2px var(--space-30);border-bottom:1px solid var(--rule);flex-wrap:wrap;padding:10px 0;display:flex}.taxonomy-index li>a{overflow-wrap:anywhere;min-width:0;font-family:var(--font-display);font-weight:500;line-height:1.3;text-decoration:none}.taxonomy-index li>a:hover{color:var(--teal)}.taxonomy-meta{color:var(--muted);font-size:var(--small);flex-shrink:0;font-style:italic}.site-footer{width:min(var(--wide), calc(100% - (2 * var(--space-50))));min-height:126px;margin:var(--space-40) auto 0;padding:var(--space-40) 0;gap:var(--space-40);border-top:1px solid var(--teal);font-size:var(--small);grid-template-columns:repeat(3,1fr);display:grid}.site-footer p{margin:0}.site-footer p:nth-child(2){text-align:center}.site-footer p:last-child{text-align:right}@media (width<=700px){.masthead-inner,.site-header nav{width:calc(100% - 32px)}.masthead-top .est{display:none}.site-tagline{font-size:var(--medium)}.archive-year li{grid-template-columns:minmax(0,1fr)}.archive-year time{grid-row:auto;padding-top:0}.archive-year li p{grid-column:1}.elsewhere .archive-year li{grid-template-columns:minmax(0,1fr)}.elsewhere .work-year{grid-row:auto;padding-top:0}.site-header nav{letter-spacing:.1em;gap:8px 18px}.post-feed,.reading-column,.comments{width:min(var(--content), calc(100% - 32px))}@supports not ((initial-letter:2) or (-webkit-initial-letter:2)){.article-body:not(.plain-opening)>p:first-of-type:first-letter{font-size:2.8em}}.comment article>header{flex-direction:column;align-items:flex-start;gap:0}.comment-children{margin-left:8px;padding-left:12px}.site-footer{gap:var(--space-20);grid-template-columns:1fr;width:calc(100% - 32px)}.site-footer p:nth-child(2),.site-footer p:last-child{text-align:left}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.post-card h2 a{transition:none}}#density-essay .density-controls{background:var(--surface);border:1px solid var(--rule);border-radius:8px;flex-direction:column;gap:.4rem;margin-bottom:2rem;padding:.75rem 1rem;display:flex}#density-essay .density-controls-row{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}#density-essay .density-controls-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:600;font-family:var(--font-display)}#density-essay .density-toggle{border:1px solid var(--rule);background:var(--base);border-radius:999px;display:inline-flex;overflow:hidden}#density-essay .density-toggle button{cursor:pointer;font-family:var(--font-display);color:var(--contrast);background:0 0;border:none;padding:.4rem 1.1rem;font-size:.9rem;font-weight:500;transition:background .15s,color .15s}#density-essay .density-toggle button:hover{background:var(--surface)}#density-essay .density-toggle button[aria-checked=true]{background:var(--contrast);color:var(--base)}#density-essay .density-toggle button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}#density-essay .density-help{color:var(--muted);font-size:.82rem;line-height:1.45;font-family:var(--font-body)}#density-essay .density-word-count{color:var(--muted);font-size:.75rem;font-family:var(--font-display);margin-left:auto}#density-essay .density-sticky{background:var(--surface);border:1px solid var(--rule);z-index:100;backdrop-filter:blur(6px);border-radius:999px;gap:.15rem;padding:.2rem;display:none;position:fixed;bottom:1.2rem;right:1.2rem;box-shadow:0 2px 14px #0000003d}#density-essay .density-sticky.visible{display:inline-flex}#density-essay .density-sticky button{color:var(--muted);cursor:pointer;font-family:var(--font-display);background:0 0;border:none;border-radius:999px;padding:.35rem .95rem;font-size:.85rem;font-weight:500}#density-essay .density-sticky button[aria-checked=true]{background:var(--contrast);color:var(--base)}#density-essay .density-sticky button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}#density-essay[data-mode=short] .density-block.long-only,#density-essay[data-mode=short] .density-variant-long,#density-essay[data-mode=full] .density-block.short-only,#density-essay[data-mode=full] .density-variant-short{display:none}#density-essay .density-block{border-left:3px solid #0000;margin-left:-.85rem;padding-left:.85rem;transition:border-color .25s,background-color .25s}#density-essay .density-block.density-anchor-flash{border-left-color:var(--amber);background-color:#c49a3a14}@media (prefers-reduced-motion:reduce){#density-essay *,#density-essay .density-anchor-flash{transition:none!important}}#density-essay .density-block p{margin:0 0 1.1em}#density-essay .density-block .density-subtitle{color:var(--muted);font-size:.97em}#density-essay .density-block blockquote{border-left:2px solid var(--teal);padding-left:var(--space-30);color:var(--muted);margin-left:0;font-style:italic}#density-essay .density-block h1{margin-bottom:.3rem}#density-essay .density-block hr{border:none;border-top:1px solid var(--rule);margin:1.5rem 0}#density-essay .density-announce{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (width<=640px){#density-essay .density-controls-row{gap:.55rem .75rem}#density-essay .density-word-count{flex-basis:100%;margin-left:0}#density-essay .density-sticky{left:50%;right:auto;bottom:calc(.75rem + env(safe-area-inset-bottom));max-width:calc(100vw - 1.5rem);transform:translate(-50%)}#density-essay .density-sticky button{padding:.35rem .85rem}}.media-embed{margin:var(--space-50) 0}.media-embed iframe,.media-embed video{border:1px solid var(--rule);background:var(--surface);border-radius:4px;width:100%;max-width:100%;height:auto;display:block}.media-embed figcaption{margin-top:var(--space-20);color:var(--muted);font-size:var(--small)}.media-embed .media-fallback{margin:var(--space-20) 0 0;text-align:center;font-size:var(--small)}.media-player iframe{min-height:360px}
