:root[data-theme=dark]{--bg: #11110f;--bg-2: #171613;--bg-raised: #1d1b17;--bg-card: #1a1915;--ink: #f0eadf;--ink-soft: #beb4a6;--ink-faint: #83796d;--ink-faintest: #554f47;--line: rgba(240, 234, 223, .09);--line-strong: rgba(240, 234, 223, .2);--accent: #c17a54;--accent-2: #6f8f98;--accent-3: #9a7f43;--accent-soft: rgba(212, 154, 114, .12);--copper: var(--accent);--copper-deep: var(--accent);--copper-soft: var(--accent-soft);--header-bg: rgba(17, 17, 15, .84);--footer-bg: #11110f;--code-bg: rgba(193, 122, 84, .12);--aside-bg: rgba(193, 122, 84, .08);--selection-bg: var(--accent);--selection-fg: #11110f;--grain-opacity: .14;color-scheme:dark}:root[data-theme=light]{--bg: #f5f0e7;--bg-2: #ebe4d8;--bg-raised: #fffaf1;--bg-card: #fbf4e9;--ink: #201d18;--ink-soft: #5a5045;--ink-faint: #8c8174;--ink-faintest: #c5b9aa;--line: rgba(32, 29, 24, .11);--line-strong: rgba(32, 29, 24, .24);--accent: #8a553c;--accent-2: #557782;--accent-3: #8d743b;--accent-soft: rgba(157, 95, 61, .12);--copper: var(--accent);--copper-deep: var(--accent);--copper-soft: var(--accent-soft);--header-bg: rgba(245, 240, 231, .9);--footer-bg: #ebe4d8;--code-bg: rgba(138, 85, 60, .1);--aside-bg: rgba(138, 85, 60, .055);--selection-bg: var(--ink);--selection-fg: #fffaf1;--grain-opacity: .1;color-scheme:light}:root{--display: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--sans: var(--display);--serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--mono: "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace;--max: 1240px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{min-height:100vh;background:linear-gradient(90deg,rgba(32,29,24,.026) 1px,transparent 1px) 0 0 / 96px 96px,linear-gradient(0deg,rgba(32,29,24,.026) 1px,transparent 1px) 0 0 / 96px 96px,linear-gradient(180deg,var(--bg),var(--bg-2) 78rem);color:var(--ink);font-family:var(--sans);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;transition:background-color .2s ease,color .2s ease;overflow-x:clip}body:before{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;opacity:var(--grain-opacity);mix-blend-mode:soft-light;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.42 0'/></filter><rect width='180' height='180' filter='url(%23n)'/></svg>")}body:after{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 0,rgba(255,255,255,.035) 50%,transparent 100%);background-size:100% 6px;opacity:.08}main,.site-header,.site-footer{position:relative;z-index:2}::selection{background:var(--selection-bg);color:var(--selection-fg)}.container{width:min(var(--max),calc(100vw - 40px));margin:0 auto}a{color:inherit}.site-header{position:relative;top:0;z-index:20;border-bottom:1px solid var(--line);background:var(--header-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.header-dateline{display:none}.header-dateline .container{display:grid;grid-template-columns:auto auto 1fr auto auto;gap:12px;align-items:center}.header-dateline .hd-sep{color:var(--line-strong)}.site-header .header-dateline span:last-child{justify-self:end;color:var(--accent)}.header-inner{min-height:74px;display:grid;grid-template-columns:minmax(140px,1fr) auto;gap:24px;align-items:center}.brand{display:inline-flex;align-items:center;color:var(--ink);text-decoration:none}.brand-text{display:grid;gap:2px;line-height:1}.brand-name{font-family:var(--display);font-size:19px;font-weight:700;letter-spacing:0;text-transform:none}.brand-name:before{content:""}.brand-tag{display:none}nav ul{list-style:none;display:flex;gap:20px}nav a{display:inline-flex;min-height:34px;align-items:center;padding:0;color:var(--ink-soft);font-family:var(--sans);font-size:13px;letter-spacing:0;text-decoration:none;text-transform:lowercase;transition:color .16s ease,background .16s ease}nav a:hover,nav a.active{color:var(--accent);background:transparent}nav a.active:after{display:none}.crumb{padding:26px 0 0;font-family:var(--mono);font-size:10px;color:var(--ink-faint);letter-spacing:.04em;text-transform:lowercase}.crumb a{color:var(--ink-soft);text-decoration:none}.crumb a:hover{color:var(--accent)}.crumb .sep{margin:0 10px;color:var(--line-strong)}body .page-hero.page-hero{padding:44px 0 34px;border-bottom:1px solid var(--line-strong);background:transparent}body .page-hero.page-hero .container{display:grid;grid-template-columns:minmax(0,.92fr) minmax(240px,.38fr);gap:48px;align-items:end}body .page-hero.page-hero .page-dateline{grid-column:1;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;color:var(--ink-faint);font-family:var(--mono);font-size:10px;letter-spacing:.04em;text-transform:lowercase}body .page-hero.page-hero .page-dateline:before{display:none}body .page-hero.page-hero .pdl-sep{color:var(--line-strong)}body .page-hero.page-hero h1.page-title,body .page-hero.page-hero .page-title{grid-column:1;max-width:920px;color:var(--ink);font-family:var(--serif);font-size:clamp(32px,4vw,48px);font-weight:620;letter-spacing:0;line-height:1.04;text-transform:none;overflow-wrap:break-word;font-variation-settings:normal}body .page-hero.page-hero .page-sub{grid-column:1;max-width:760px;margin-top:24px;color:var(--ink-soft);font-family:var(--serif);font-size:clamp(15px,1.4vw,18px);font-style:italic;font-weight:400;line-height:1.55;font-variation-settings:normal}body .page-hero.page-hero .container:after{display:none}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:56px;padding:0 0 14px;border-top:0;border-bottom:1px solid var(--line-strong)}.section-head:before{display:none}.section-head h2{color:var(--ink);font-family:var(--serif);font-size:24px;font-weight:620;letter-spacing:0;line-height:1.1;text-transform:none}.section-head .meta{color:var(--ink-faint);font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-align:right;text-transform:lowercase}.entry{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;padding:24px 0;border-bottom:1px solid var(--line);color:inherit;text-decoration:none;cursor:pointer;transition:transform .17s ease,background .17s ease,padding .17s ease}.entry:before{display:none}.entry:hover{padding-left:0;background:transparent}.entry-date{grid-row:auto;margin:0 0 4px;color:var(--ink-faint);font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:.02em;line-height:1.6;text-transform:none}.entry-title{grid-column:1;margin:0 0 8px;color:var(--ink);font-family:var(--serif);font-size:clamp(21px,2vw,28px);font-weight:620;letter-spacing:0;line-height:1.05;text-transform:none;font-variation-settings:normal}.entry-dek{grid-column:1;max-width:760px;color:var(--ink-soft);font-size:14px;font-weight:400;line-height:1.55}.entry-copy{grid-column:2}.entry-copy .entry-title,.entry-copy .entry-dek{grid-column:auto}.feed{padding:0 0 40px}.feed:last-of-type{padding-bottom:88px}.feed .entry:first-of-type{padding-top:28px}.feed-more{display:inline-flex;align-items:center;min-height:30px;margin-top:28px;padding:0;border:0;border-bottom:1px solid var(--line-strong);color:var(--ink);background:transparent;font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-decoration:none;text-transform:lowercase;transition:border-color .15s ease,background .15s ease,color .15s ease}.feed-more:hover{border-bottom-color:var(--accent);background:transparent;color:var(--accent)}.term{color:inherit!important;text-decoration:none!important;border-bottom:1px dotted var(--accent)!important;cursor:help;position:relative}.term:hover{color:var(--accent)!important}@media(hover:hover){.term:after{content:attr(data-def);position:absolute;bottom:calc(100% + 10px);left:50%;z-index:100;width:max-content;max-width:320px;padding:12px 14px;border:1px solid var(--line-strong);background:var(--bg-raised);color:var(--ink);font-family:var(--sans);font-size:13px;font-style:normal;font-weight:400;letter-spacing:0;line-height:1.5;opacity:0;pointer-events:none;text-align:left;text-transform:none;transform:translate(-50%);transition:opacity .18s ease;white-space:normal}.term:hover:after{opacity:1}}.site-footer{margin-top:40px;padding:52px 0 72px;border-top:1px solid var(--line-strong);background:var(--footer-bg)}.footer-grid{display:grid;grid-template-columns:minmax(0,1.5fr) 1fr 1fr;gap:40px}.footer-brand{margin-bottom:12px;color:var(--ink);font-family:var(--serif);font-size:clamp(28px,3vw,40px);font-weight:620;letter-spacing:0;line-height:.9;text-transform:none}.footer-brand:before{content:""}.footer-blurb{max-width:380px;color:var(--ink-soft);font-family:var(--serif);font-size:16px;letter-spacing:0;line-height:1.7;text-transform:none}.footer-col-title{margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line-strong);color:var(--accent);font-family:var(--mono);font-size:10px;letter-spacing:.04em;text-transform:lowercase}.footer-links{display:flex;flex-direction:column;gap:9px}.footer-links a{color:var(--ink-soft);font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-decoration:none;text-transform:lowercase}.footer-links a:hover{color:var(--accent)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:48px;padding-top:18px;border-top:1px solid var(--line);color:var(--ink-faint);font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:lowercase}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:1ms!important}}@media(max-width:980px){body .page-hero.page-hero .container{grid-template-columns:1fr;gap:28px}body .page-hero.page-hero .container:after{grid-column:1;grid-row:auto;justify-self:start;text-align:left}}@media(max-width:720px){.container{width:min(var(--max),calc(100vw - 28px))}.header-dateline .container{grid-template-columns:1fr;gap:4px}.header-dateline .hd-sep,.header-dateline span:nth-child(3){display:none}.site-header .header-dateline span:last-child{justify-self:start}.brand-name{font-size:17px}.brand-tag{display:none}.header-inner{grid-template-columns:1fr;gap:8px;padding:14px 0}nav{overflow-x:auto}nav ul{width:max-content}nav a{min-height:36px}.section-head,.entry{grid-template-columns:1fr}.entry-date,.entry-title,.entry-dek,.entry-copy{grid-column:auto;grid-row:auto}.section-head .meta{text-align:left}.entry:hover{padding-left:0}.footer-grid,.footer-bottom{grid-template-columns:1fr;flex-direction:column}}
