@import"https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,700;0,9..144,900;1,9..144,400&family=Libre+Franklin:wght@400;500&display=swap";:root{--bg: #141210;--fg: #ede9e0;--fg2: #a09b90;--fg3: #635f56;--border: #2e2a24;--accent: #c4705a;--display: "Fraunces", Georgia, serif;--body: "Libre Franklin", -apple-system, system-ui, sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--fg);font-family:var(--body);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:#fff}a{color:inherit;text-decoration:none;transition:color .15s}img{max-width:100%;height:auto}.page{max-width:880px;margin:0 auto;padding:0 24px}.nav{padding:20px 0;display:flex;justify-content:space-between;align-items:baseline;font-size:13px;border-bottom:1px solid var(--fg)}.nav-name{font-family:var(--display);font-weight:700;font-size:15px;color:var(--fg)}.nav-links{display:flex;gap:18px}.nav-links a{color:var(--fg2);font-weight:500}.nav-links a:hover{color:var(--fg)}.masthead{padding:48px 0 32px;border-bottom:3px double var(--fg2)}.masthead h1{font-family:var(--display);font-size:32px;font-weight:700;line-height:1.25;letter-spacing:-.02em;max-width:620px;margin-bottom:16px}.masthead .dek{font-size:15px;color:var(--fg2);line-height:1.6;max-width:580px}.masthead .byline{margin-top:14px;font-size:13px;color:var(--fg3)}.masthead .byline a{color:var(--fg2);margin:0 5px}.masthead .byline a:hover{color:var(--accent)}.cols{display:grid;grid-template-columns:3fr 2fr;gap:0 36px}.main{padding:28px 36px 28px 0;border-right:1px solid var(--border)}.sidebar{padding:28px 0}@media(max-width:680px){.cols{grid-template-columns:1fr}.main{border-right:none;padding-right:0;border-bottom:1px solid var(--border)}.masthead h1{font-size:26px}}.section-head{font-family:var(--display);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding-bottom:8px;border-bottom:2px solid var(--fg2);margin-bottom:16px}.sidebar-head{font-family:var(--display);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding-bottom:6px;border-bottom:1px solid var(--fg2);margin-bottom:12px}.project{margin-bottom:22px;padding-bottom:22px;border-bottom:1px solid var(--border)}.project:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.project-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.project-name{font-family:var(--display);font-size:19px;font-weight:700;line-height:1.2}.project-name:hover{color:var(--accent)}.project-year{font-size:12px;color:var(--fg3)}.project-desc{color:var(--fg2);font-size:14px;margin-top:5px;line-height:1.6}.project-links{margin-top:7px;font-size:12px;font-weight:500}.project-links a{color:var(--fg3);margin-right:14px}.project-links a:hover{color:var(--accent)}.sidebar-section{margin-bottom:28px}.post-item{padding:5px 0;font-size:13px}.post-item a{color:var(--fg2)}.post-item a:hover{color:var(--accent)}.post-item .date{color:var(--fg3);font-size:11px;display:block}.archive-item{font-size:12px;color:var(--fg3);line-height:1.9}.archive-item a{color:var(--fg2)}.archive-item a:hover{color:var(--accent)}.contact-link{display:block;font-size:12px;color:var(--fg2);padding:2px 0}.contact-link:hover{color:var(--accent)}.footer{padding:20px 0;font-size:11px;color:var(--fg3);text-align:center;border-top:1px solid var(--border)}.page-title{font-family:var(--display);font-size:32px;font-weight:700;letter-spacing:-.02em;margin-bottom:8px}.category-filters{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.category-btn{font-family:var(--body);font-size:13px;padding:4px 14px;border:1px solid var(--border);border-radius:100px;background:transparent;color:var(--fg3);cursor:pointer;transition:all .15s}.category-btn:hover{border-color:var(--fg3);color:var(--fg2)}.category-btn.active{border-color:var(--fg2);color:var(--fg)}.blog-post-link{display:block;padding:16px 0;border-bottom:1px solid var(--border)}.blog-post-link:hover .blog-post-title{color:var(--accent)}.blog-post-title{font-family:var(--display);font-size:20px;font-weight:700;line-height:1.25;margin-bottom:4px;transition:color .15s}.blog-post-snippet{font-size:14px;color:var(--fg2);margin-bottom:4px}.blog-post-meta{font-size:12px;color:var(--fg3)}.prose{max-width:680px}.prose h1{font-family:var(--display);font-size:36px;font-weight:700;line-height:1.15;letter-spacing:-.02em;margin-bottom:12px}.prose h2{font-family:var(--display);font-size:24px;font-weight:700;margin-top:40px;margin-bottom:12px}.prose h3{font-family:var(--display);font-size:19px;font-weight:700;margin-top:32px;margin-bottom:8px}.prose p{color:var(--fg2);font-size:15px;line-height:1.75;margin-bottom:16px}.prose a{color:var(--fg);text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:3px}.prose a:hover{text-decoration-color:var(--accent)}.prose strong{color:var(--fg);font-weight:500}.prose ul,.prose ol{color:var(--fg2);padding-left:20px;margin-bottom:16px}.prose li{margin-bottom:6px;font-size:15px;line-height:1.7}.prose blockquote{border-left:2px solid var(--accent);padding-left:16px;margin:20px 0;color:var(--fg2);font-style:italic}.prose img{border-radius:4px;margin:24px 0}.prose code{font-size:13px;background:#ffffff0f;padding:2px 6px;border-radius:3px;color:var(--fg)}.prose pre{margin:20px 0;border-radius:4px;overflow-x:auto}.prose pre code{background:none;padding:0}.related-articles{margin-top:48px;padding-top:28px;border-top:1px solid var(--border)}.related-articles h2{font-family:var(--display);font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fg3);margin-bottom:16px}.related-link{display:block;padding:8px 0}.related-link:hover .related-title{color:var(--accent)}.related-title{font-family:var(--display);font-size:17px;font-weight:700;transition:color .15s}.related-meta{font-size:12px;color:var(--fg3);margin-top:2px}
