:root{--paper: #f4f0e6;--ink: #1b2420;--evergreen: #1f4a38;--secondary: #414944;--muted: #8a8676;--nav-muted: #5c665f;--border: #d8d2c2;--border-light: #e2dccd;--max-width: 760px;--site-padding: clamp(28px, 5vw, 64px)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--paper);color:var(--ink);font-family:Hanken Grotesk,system-ui,sans-serif;font-size:17px;line-height:1.6;min-height:100vh}a{color:inherit;text-decoration:none}a:hover{color:var(--evergreen)}img{max-width:100%;height:auto;display:block}.site{padding:40px var(--site-padding) 80px;position:relative}.site:after{content:"";position:fixed;inset:0;pointer-events:none;opacity:.04;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");z-index:0}.site>*{position:relative;z-index:1}.nav{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:clamp(40px,7vw,90px)}.nav-wordmark{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:18px;letter-spacing:-.01em}.nav-links{display:flex;gap:26px;font-size:13px}.nav-links a{color:var(--nav-muted)}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--ink)}.hero{max-width:var(--max-width)}.eyebrow{font-family:IBM Plex Mono,monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--evergreen);margin-bottom:22px}.hero h1{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:clamp(34px,5.4vw,60px);line-height:1.04;letter-spacing:-.015em;margin-bottom:22px}.hero h1 em{font-style:italic;color:var(--evergreen)}.hero p{font-size:clamp(16px,1.6vw,19px);line-height:1.6;color:var(--secondary);max-width:540px}.cta{display:inline-flex;align-items:center;gap:10px;margin-top:30px;font-size:14px;font-weight:600;padding:13px 22px;border-radius:999px;background:var(--evergreen);color:var(--paper);transition:opacity .15s ease}.cta:hover{opacity:.88;color:var(--paper)}.writing-section{margin-top:clamp(46px,7vw,80px);padding-top:26px;border-top:1px solid var(--border);max-width:var(--max-width)}.writing-head{font-family:IBM Plex Mono,monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:22px}.essay-list{list-style:none}.essay-item{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0;gap:24px;border-bottom:1px solid var(--border-light)}.essay-title{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:clamp(17px,2vw,20px);display:block}.essay-title:hover{color:var(--evergreen)}.essay-date{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--muted);white-space:nowrap}.essay-description{font-size:15px;color:var(--secondary);margin-top:6px;max-width:540px}.page-header{max-width:var(--max-width);margin-bottom:clamp(32px,5vw,56px)}.page-header h1{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:clamp(32px,4.5vw,48px);line-height:1.08;letter-spacing:-.015em}.page-header p{margin-top:16px;color:var(--secondary);font-size:clamp(16px,1.6vw,18px);max-width:540px}.article{max-width:640px}.article-header{margin-bottom:40px}.article-header h1{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:clamp(30px,4vw,42px);line-height:1.1;letter-spacing:-.015em;margin-bottom:12px}.article-meta{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--muted)}.article-description{margin-top:16px;color:var(--secondary);font-size:18px;line-height:1.5}.article-body h2{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:24px;margin-top:40px;margin-bottom:16px;letter-spacing:-.01em}.article-body h3{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:20px;margin-top:32px;margin-bottom:12px}.article-body p{margin-bottom:20px;color:var(--secondary)}.article-body ul,.article-body ol{margin-bottom:20px;padding-left:24px;color:var(--secondary)}.article-body li{margin-bottom:8px}.article-body strong{color:var(--ink);font-weight:600}.article-body code{font-family:IBM Plex Mono,monospace;font-size:.88em;background:#ece7d8;padding:2px 6px;border-radius:4px}.article-body pre{margin-bottom:24px;padding:20px;background:#ece7d8;border-radius:8px;overflow-x:auto}.article-body pre code{background:none;padding:0;font-size:13px;line-height:1.6}.article-body blockquote{margin:24px 0;padding-left:20px;border-left:3px solid var(--evergreen);color:var(--secondary);font-style:italic}.about-grid{display:grid;grid-template-columns:200px 1fr;gap:clamp(32px,5vw,56px);max-width:720px;align-items:start}.about-photo{width:200px;aspect-ratio:4 / 5;background:#ece7d8;border-radius:4px;overflow:hidden}.about-photo img{width:100%;height:100%;object-fit:cover}.about-bio p{margin-bottom:20px;color:var(--secondary)}.about-bio p:last-child{margin-bottom:0}.about-oss{margin-top:40px;padding-top:24px;border-top:1px solid var(--border);max-width:720px}.about-oss h2{font-family:IBM Plex Mono,monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.about-oss p{color:var(--secondary);font-size:15px}.about-oss a{color:var(--evergreen);font-weight:500}.contact-content{max-width:var(--max-width)}.contact-email{font-family:Fraunces,Georgia,serif;font-size:clamp(24px,3vw,32px);font-weight:500}.contact-email a{color:var(--evergreen)}.contact-email a:hover{text-decoration:underline}.footer{margin-top:clamp(60px,10vw,100px);padding-top:24px;border-top:1px solid var(--border);font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--muted)}@media (max-width: 640px){.essay-item{flex-direction:column;align-items:flex-start;gap:6px}.about-grid{grid-template-columns:1fr}.about-photo{width:160px}}
