@font-face{font-family:"Fraunces";font-style:normal;font-weight:400 600;font-display:swap;src:url("/fonts/fraunces-400-normal.woff2") format("woff2")}@font-face{font-family:"Fraunces";font-style:italic;font-weight:400 600;font-display:swap;src:url("/fonts/fraunces-400-italic.woff2") format("woff2")}@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/inter-400-normal.woff2") format("woff2")}@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/inter-500-normal.woff2") format("woff2")}@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/inter-600-normal.woff2") format("woff2")}:root{--surface: #16131e;--raised: #1d1926;--ink: #ece8f4;--muted: #9990ad;--accent: #7c3aed;--bright: #caa9ff;--hair: rgba(255, 255, 255, .08);--measure: 68ch;--space: 1.5rem}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--surface);color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:18px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:var(--bright);text-decoration-color:rgba(202,169,255,.4);text-underline-offset:3px}em{font-style:italic}.dot{margin:0 .5em;opacity:.5}.site-header,.site-footer{max-width:var(--measure);margin:0 auto;padding:var(--space);display:flex;align-items:center;justify-content:space-between;gap:1rem}.site-header{border-bottom:1px solid var(--hair)}.brand{display:flex;align-items:center;gap:.6rem;color:var(--bright);text-decoration:none}.brand .sigil{width:30px;height:30px;flex:none}.brand-name{font-family:Fraunces,serif;font-weight:600;font-size:1.05rem;color:var(--ink)}.site-nav{display:flex;gap:1.1rem}.site-nav a,.foot-links a{color:var(--muted);text-decoration:none;font-size:.85rem;letter-spacing:.01em}.site-nav a:hover,.foot-links a:hover{color:var(--bright)}.site-footer{border-top:1px solid var(--hair);margin-top:4rem;color:var(--muted);font-size:.85rem}.foot-links{display:flex;gap:1.1rem}main{max-width:var(--measure);margin:0 auto;padding:0 var(--space) 2rem}.intro{padding:2.5rem 0 1.5rem}.display{font-family:Fraunces,serif;font-weight:600;font-size:clamp(2rem,6vw,3rem);line-height:1.08;margin:0 0 .5rem}.display em{color:var(--bright)}.lede{color:var(--muted);font-size:1.05rem;margin:0;max-width:52ch}.post-list{list-style:none;padding:0;margin:0}.post-item{border-top:1px solid var(--hair)}.post-link{display:block;padding:1.6rem 0;text-decoration:none;color:inherit}.post-link:hover .post-title{color:var(--bright)}.post-title{font-family:Fraunces,serif;font-weight:600;font-size:1.5rem;line-height:1.15;margin:0 0 .35rem;transition:color .15s ease}.post-desc{color:var(--ink);opacity:.82;margin:0 0 .6rem}.post-meta{color:var(--muted);font-size:.8rem;margin:0}.tag{display:inline-block;background:rgba(124,58,237,.18);color:var(--bright);border-radius:999px;padding:.1em .7em;font-size:.72rem;margin-right:.35rem}.post-head{padding:2.5rem 0 1.5rem;border-bottom:1px solid var(--hair)}.kicker{text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:600;margin:0 0 .6rem}.kicker a{color:var(--bright);text-decoration:none}.post-h1{font-family:Fraunces,serif;font-weight:600;font-size:clamp(2rem,5.5vw,2.8rem);line-height:1.1;margin:0 0 .6rem}.prose{padding:2rem 0}.prose p{margin:0 0 1.3rem}.prose h2,.prose h3{font-family:Fraunces,serif;font-weight:600;line-height:1.2;margin:2.2rem 0 .8rem}.prose h2{font-size:1.6rem}.prose h3{font-size:1.3rem}.prose a{font-weight:500}.prose blockquote{margin:1.6rem 0;padding:.2rem 0 .2rem 1.2rem;border-left:3px solid var(--accent);color:var(--muted);font-style:italic}.prose code{background:var(--raised);border-radius:5px;padding:.12em .4em;font-size:.9em}.prose pre{background:var(--raised);border:1px solid var(--hair);border-radius:10px;padding:1.1rem 1.2rem;overflow-x:auto;line-height:1.5}.prose pre code{background:none;padding:0}.prose img{max-width:100%;height:auto;border-radius:10px}.prose figure{margin:1.8rem 0}.prose figure img{display:block;width:100%}.prose figcaption{color:var(--muted);font-size:.85rem;text-align:center;margin-top:.55rem}.post-foot{border-top:1px solid var(--hair);padding:1.5rem 0}.back{color:var(--muted);text-decoration:none}.back:hover{color:var(--bright)}.related{margin:2.5rem 0 1rem}.related-h{font-family:Fraunces,serif;font-weight:600;font-size:1.1rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0 0 .4rem}.related-list{list-style:none;padding:0;margin:0}.related-list li{border-top:1px solid var(--hair)}.related-list a{display:block;padding:1.1rem 0;text-decoration:none;color:inherit}.related-list a:hover .r-title{color:var(--bright)}.r-title{display:block;font-family:Fraunces,serif;font-weight:600;font-size:1.2rem;line-height:1.2;transition:color .15s ease}.r-desc{display:block;color:var(--muted);font-size:.92rem;margin-top:.25rem}.r-tags{display:block;margin-top:.5rem}.tag-cloud{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.7rem}.tag-cloud a{background:var(--raised);border:1px solid var(--hair);border-radius:999px;padding:.4em 1em;color:var(--ink);text-decoration:none}.tag-cloud .count{color:var(--muted);font-size:.8em}@media (max-width: 640px){body{font-size:17px}.site-nav{gap:.8rem;font-size:.8rem}}