:root{color-scheme:dark;--bg: #080a0a;--surface: #101313;--ink: #f1f3ee;--muted: #8a9390;--line: #2a302e;--line-strong: #414946;--acid: #c7ff4a;--cyan: #5ce6f2;--signal: #ff544d;--measure: 1160px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-size:16px;line-height:1.55;margin:0;min-height:100vh;overflow-x:hidden}::selection{background:var(--acid);color:var(--bg)}a{color:inherit;text-underline-offset:.2em}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}.skip-link{background:var(--acid);color:var(--bg);left:1rem;padding:.65rem .9rem;position:fixed;top:-5rem;z-index:100}.skip-link:focus{top:1rem}.site-header{align-items:center;border-bottom:1px solid var(--line);display:flex;height:4.75rem;justify-content:space-between;margin:0 auto;max-width:var(--measure);padding:0 1.25rem;position:relative;z-index:20}.brand{align-items:center;display:inline-flex;font-size:.88rem;font-weight:720;gap:.75rem;text-decoration:none;text-transform:uppercase}.brand-mark{color:var(--acid);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.74rem}.site-nav{align-items:center;display:flex;gap:1.8rem}.site-nav a{color:var(--muted);font-size:.78rem;font-weight:680;text-decoration:none;text-transform:uppercase;transition:color .16s ease}.site-nav a span{color:var(--line-strong);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;margin-right:.3rem}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink)}.home-hero{border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto;margin:0 auto;max-width:var(--measure);min-height:78svh;overflow:hidden;padding:3.4rem 1.25rem 1.25rem;position:relative}.home-hero:before{border-left:1px solid var(--line);content:"";inset:0 auto 0 50%;position:absolute}.hero-copy{align-self:center;max-width:41rem;padding-bottom:3rem;position:relative;z-index:3}.eyebrow{color:var(--muted);display:flex;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.68rem;justify-content:space-between;letter-spacing:0;margin-bottom:1.5rem;text-transform:uppercase}.hero-copy .eyebrow{max-width:24rem}.hero-copy h1{font-size:6.7rem;font-weight:730;line-height:.82;margin:0 0 2rem;text-transform:uppercase}.hero-copy h1 span{display:block}.hero-copy h1 span:last-child{color:transparent;-webkit-text-stroke:1px var(--ink)}.hero-text{color:var(--muted);font-size:1.08rem;max-width:27rem}.text-link,.section-heading>a,.footer-archive{color:var(--acid);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;text-decoration:none;text-transform:uppercase}.text-link span,.section-heading>a span,.footer-archive span{display:inline-block;margin-left:.25rem;transition:transform .16s ease}.text-link:hover span,.section-heading>a:hover span,.footer-archive:hover span{transform:translate(.18rem,-.18rem)}.hero-portrait{align-self:center;display:grid;grid-column:2;grid-row:1 / span 2;min-width:0;place-items:end center;position:relative;transform:translateY(-3.75rem);z-index:2}.portrait-stage{aspect-ratio:1;max-width:18.5rem;position:relative;width:100%}.head-canvas{display:block;height:100%;inset:0;position:absolute;width:100%;z-index:1}.head-fallback{height:100%;object-fit:contain;width:100%}.portrait-index{bottom:8%;color:var(--cyan);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.65rem;position:absolute;right:5%;z-index:2}.hero-domain{align-self:end;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.65rem;grid-column:1;margin:0;text-transform:uppercase}.latest-section,.page-intro,.article-list,.post,.about-grid,.projects-section{margin:0 auto;max-width:var(--measure);padding-left:1.25rem;padding-right:1.25rem}.latest-section{padding-bottom:7rem;padding-top:4rem}.section-heading{align-items:baseline;display:grid;grid-template-columns:8rem 1fr auto;margin-bottom:2.5rem}.section-heading h2{font-size:3.5rem;font-weight:620;line-height:1;margin:0}.section-heading .eyebrow{margin:0}.article-stream,.article-list{border-top:1px solid var(--line-strong)}.article-row,.list-item{align-items:start;border-bottom:1px solid var(--line);display:grid;gap:1.25rem;grid-template-columns:3.2rem 1fr 8rem 2rem;min-height:11rem;padding:1.7rem 0;position:relative;transition:border-color .16s ease,background-color .16s ease}.article-row:hover,.list-item:hover{background:var(--surface);border-color:var(--acid)}.article-number,.article-row time,.list-item time,.post-meta,.post-kicker,.tag-row{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.68rem;text-transform:uppercase}.article-number{color:var(--cyan)}.article-row time,.list-item time{display:flex;flex-direction:column;gap:.25rem;white-space:nowrap}.article-row-main h3,.list-item h2{font-size:1.65rem;font-weight:570;line-height:1.15;margin-bottom:.7rem;overflow-wrap:anywhere}.article-row-main h3 a,.list-item h2 a{text-decoration:none}.article-row-main p,.list-item p{color:var(--muted);margin-bottom:0;max-width:43rem}.row-arrow{color:var(--ink);font-size:1.1rem;text-decoration:none;transition:color .16s ease,transform .16s ease}.article-row:hover .row-arrow,.list-item:hover .row-arrow{color:var(--acid);transform:translate(.18rem,-.18rem)}.page-intro{border-bottom:1px solid var(--line-strong);padding-bottom:4.5rem;padding-top:6rem}.page-intro .eyebrow{margin-bottom:3rem}.page-intro h1{font-size:7rem;font-weight:690;line-height:.86;margin-bottom:2.2rem;text-transform:uppercase}.page-intro>p:last-child{color:var(--muted);font-size:1.1rem;max-width:39rem}.article-list{border-top:0;padding-bottom:7rem;padding-top:0}.list-item{grid-template-columns:3rem 8rem 1fr 2rem;min-height:13rem}.tag-row{display:flex;flex-wrap:wrap;gap:.4rem .9rem;margin-top:1rem}.tag-row span:before{color:var(--line-strong);content:"#"}.projects-section{padding-bottom:2rem;padding-top:5rem}.personal-section{padding-bottom:7rem}.projects-heading{align-items:end;display:grid;grid-template-columns:8rem 1fr;margin-bottom:2.5rem}.projects-heading .eyebrow{grid-column:1 / -1;margin-bottom:2.25rem}.projects-heading h2{font-size:3.5rem;font-weight:620;grid-column:2;line-height:1;margin:0}.link-list{border-top:1px solid var(--line-strong)}.directory-link{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:1.25rem;grid-template-columns:4rem minmax(0,1fr) 18rem 1.25rem;min-width:0;padding:1.7rem 0;text-decoration:none;transition:background-color .16s ease,border-color .16s ease}.directory-link:hover{background:var(--surface);border-color:var(--acid)}.directory-index,.directory-domain{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.7rem;text-transform:uppercase}.directory-index{color:var(--cyan)}.directory-name{font-size:1.55rem;font-weight:570;overflow-wrap:anywhere}.directory-domain{color:var(--muted);overflow-wrap:anywhere}.directory-arrow{color:var(--acid);transition:transform .16s ease}.directory-link:hover .directory-arrow{transform:translate(.18rem,-.18rem)}.reading-progress{background:var(--acid);height:2px;left:0;position:fixed;right:0;top:0;transform:scaleX(0);transform-origin:left;z-index:100}.post{max-width:900px;padding-bottom:7rem;padding-top:5rem}.post-header{border-bottom:1px solid var(--line-strong);margin-bottom:3.5rem;padding-bottom:2.5rem}.post-kicker{display:flex;justify-content:space-between;margin-bottom:3rem}.back-link{color:var(--acid);text-decoration:none}.post-header h1{font-size:4.7rem;font-weight:640;line-height:.98;margin-bottom:1.8rem;overflow-wrap:anywhere}.post-header>p{color:var(--muted);font-size:1.15rem;max-width:45rem}.post-meta{display:flex;flex-wrap:wrap;gap:.7rem 1.4rem;margin-top:2rem}.post-meta a{color:var(--cyan);text-decoration:none}.prose{font-family:Georgia,Times New Roman,serif;font-size:1.22rem;line-height:1.78;max-width:44rem}.prose p{margin-bottom:1.55rem}.prose a{color:var(--cyan)}.prose strong{color:var(--ink)}.prose blockquote{border-left:2px solid var(--acid);color:var(--muted);margin:2.5rem 0;padding-left:1.5rem}.comments{border-top:1px solid var(--line-strong);margin-top:5rem;padding-top:2.5rem}.comments-heading{align-items:baseline;display:grid;gap:1rem;grid-template-columns:8rem 1fr auto;margin-bottom:2rem}.comments-heading p,.comments-heading span,.comment-field label,.comment-item time,.comment-status{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.68rem;text-transform:uppercase}.comments-heading p{color:var(--cyan);margin:0}.comments-heading h2{font-size:2.2rem;font-weight:620;line-height:1;margin:0}.comment-list{border-top:1px solid var(--line)}.comment-empty{color:var(--muted);margin:0;padding:1.5rem 0}.comment-item{border-bottom:1px solid var(--line);padding:1.5rem 0}.comment-item header{align-items:baseline;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.6rem}.comment-item strong{font-size:.88rem;font-weight:650}.comment-item p{color:var(--muted);margin:0;max-width:44rem;white-space:pre-wrap}.comment-form{border-top:1px solid var(--line-strong);margin-top:2.5rem;padding-top:2rem}.comment-field{margin-bottom:1.25rem}.comment-name-field{max-width:22rem}.comment-field label{display:flex;justify-content:space-between;margin-bottom:.55rem}.comment-field label span{color:var(--line-strong)}.comment-field input,.comment-field textarea{background:var(--surface);border:1px solid var(--line-strong);border-radius:2px;color:var(--ink);font:inherit;outline:none;padding:.8rem .9rem;transition:border-color .16s ease;width:100%}.comment-field textarea{min-height:9rem;resize:vertical}.comment-field input:focus,.comment-field textarea:focus{border-color:var(--cyan)}.comment-honeypot{height:1px;left:-10000px;overflow:hidden;position:absolute;width:1px}.comment-form-actions{align-items:center;display:flex;gap:1rem;justify-content:space-between;min-height:2.75rem}.comment-turnstile{min-height:1px;min-width:0}.comment-form button{background:var(--acid);border:1px solid var(--acid);border-radius:2px;color:var(--bg);cursor:pointer;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;font-weight:720;min-height:2.75rem;padding:.7rem 1rem;text-transform:uppercase}.comment-form button:disabled{cursor:wait;opacity:.55}.comment-status{margin:.8rem 0 0;min-height:1.1rem}.post-end{border-top:1px solid var(--line-strong);display:flex;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.7rem;justify-content:space-between;margin-top:4.5rem;padding-top:1rem;text-transform:uppercase}.post-end span{color:var(--signal)}.post-end a{color:var(--acid);text-decoration:none}.site-footer{align-items:end;border-top:1px solid var(--line-strong);display:grid;gap:2rem;grid-template-columns:8rem 1fr auto;margin:0 auto;max-width:var(--measure);padding:3rem 1.25rem}.footer-mark{color:var(--acid);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;margin:0}.site-footer div p,.site-footer div a{color:var(--muted);font-size:.82rem;margin-bottom:.25rem}.site-footer div a:hover{color:var(--ink)}@media(max-width:940px){.home-hero{grid-template-columns:1fr .85fr}.hero-copy h1{font-size:5rem}.page-intro h1{font-size:5.5rem}.post-header h1{font-size:3.8rem}}@media(max-width:720px){.site-header{align-items:flex-start;height:auto;padding-bottom:1rem;padding-top:1rem}.site-nav{gap:1rem}.site-nav a span{display:none}.home-hero{display:block;min-height:auto;padding-top:3rem}.home-hero:before{display:none}.hero-copy{padding-bottom:1rem}.hero-copy h1{font-size:4.2rem}.hero-portrait{margin:0 auto;max-width:17rem;transform:none}.hero-domain{padding-bottom:1rem}.latest-section{padding-bottom:5rem;padding-top:3rem}.section-heading{gap:1rem;grid-template-columns:1fr auto}.section-heading .eyebrow{grid-column:1 / -1}.section-heading h2{font-size:2.6rem}.article-row{grid-template-columns:2.5rem 1fr 1.5rem}.article-row time{grid-column:2;grid-row:2}.article-row .row-arrow{grid-column:3;grid-row:1}.page-intro{padding-bottom:3.5rem;padding-top:4rem}.page-intro h1{font-size:4.5rem}.projects-section{padding-bottom:5rem;padding-top:4rem}.projects-heading{grid-template-columns:1fr}.projects-heading h2{font-size:2.6rem;grid-column:1}.list-item{grid-template-columns:2.5rem 1fr 1.5rem}.list-item time{grid-column:2;grid-row:2}.list-item>div{grid-column:2;grid-row:1}.list-item .row-arrow{grid-column:3;grid-row:1}.post{padding-top:3rem}.post-header h1{font-size:3.15rem}.comments-heading{grid-template-columns:1fr auto}.comments-heading p{grid-column:1 / -1}.site-footer{align-items:start;grid-template-columns:1fr}}@media(max-width:460px){.brand>span:last-child{display:none}.site-nav{font-size:.7rem;gap:.8rem}.hero-copy h1{font-size:3.5rem}.hero-text{font-size:1rem}.page-intro h1{font-size:3.6rem}.article-row-main h3,.list-item h2{font-size:1.35rem}.article-row,.list-item{gap:.8rem}.directory-link{grid-template-columns:2.5rem minmax(0,1fr) 1rem;gap:.8rem}.directory-domain{grid-column:2;grid-row:2}.directory-arrow{grid-column:3;grid-row:1}.directory-name{font-size:1.35rem}.post-kicker{gap:1rem}.post-header h1{font-size:2.65rem}.prose{font-size:1.1rem}.comment-form-actions{align-items:stretch;flex-direction:column}.comment-form button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
