@font-face{font-family:Crimson Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/5bde35a59d0f161b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Crimson Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/19d1df89b922a96a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Crimson Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/3296bccdacdd55f7-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Crimson Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5bde35a59d0f161b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Crimson Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/19d1df89b922a96a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Crimson Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/3296bccdacdd55f7-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Crimson Pro;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/5bde35a59d0f161b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Crimson Pro;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/19d1df89b922a96a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Crimson Pro;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/3296bccdacdd55f7-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Crimson Pro Fallback;src:local("Times New Roman");ascent-override:90.96%;descent-override:21.80%;line-gap-override:0.00%;size-adjust:98.56%}.__className_ff1b35{font-family:Crimson Pro,Crimson Pro Fallback;font-style:normal}.__variable_ff1b35{--font-head:"Crimson Pro","Crimson Pro Fallback"}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Manrope Fallback;src:local("Arial");ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.00%;size-adjust:103.19%}.__className_ebfcd2{font-family:Manrope,Manrope Fallback;font-style:normal}.__variable_ebfcd2{--font-body:"Manrope","Manrope Fallback"}@font-face{font-family:Shadows Into Light;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/3c0a36d4615ad53c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Shadows Into Light;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/cedc0d4e6b719cc0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Shadows Into Light Fallback;src:local("Arial");ascent-override:138.94%;descent-override:51.05%;line-gap-override:0.00%;size-adjust:84.56%}.__className_2e9024{font-family:Shadows Into Light,Shadows Into Light Fallback;font-weight:400;font-style:normal}.__variable_2e9024{--font-script:"Shadows Into Light","Shadows Into Light Fallback"}:root{--zine-bg-light:#f5f5f5;--zine-text-light:#000000;--zine-muted-light:#2f2f2f;--zine-rule-light:rgba(0,0,0,0.18);--zine-bg-dark:#111111;--zine-text-dark:#f2f2f2;--zine-muted-dark:#cdcdcd;--zine-rule-dark:rgba(255,255,255,0.22);--zine-accent:#d30800;--bg:var(--zine-bg-light);--text:var(--zine-text-light);--text-muted:var(--zine-muted-light);--rule:var(--zine-rule-light);--accent:var(--zine-accent)}.dark{--bg:var(--zine-bg-dark);--text:var(--zine-text-dark);--text-muted:var(--zine-muted-dark);--rule:var(--zine-rule-dark)}*{box-sizing:border-box}body,html{margin:0;padding:0}body,html{background:var(--bg)}body{color:var(--text);font-family:var(--font-body),system-ui,sans-serif;font-size:18px;line-height:1.62;letter-spacing:.001em;position:relative}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.16;background-image:radial-gradient(circle at 18% 22%,rgba(0,0,0,.1) 0 1px,transparent 1px 100%),radial-gradient(circle at 72% 78%,rgba(0,0,0,.08) 0 1px,transparent 1px 100%),repeating-radial-gradient(circle at center,rgba(0,0,0,.055) 0 .65px,transparent .65px 3px);mix-blend-mode:multiply;will-change:opacity;contain:strict}.dark body:before{opacity:.11;mix-blend-mode:screen}main{min-height:calc(100dvh - 140px)}a{color:inherit;text-decoration:none}.action-row a,.annotated-link,.brand,.home-blurb a,.home-link-row a,.site-nav a{position:relative;display:inline-block}.action-row a:after,.annotated-link:after,.brand:after,.home-blurb a:after,.home-link-row a:after,.site-nav a:after{content:"";position:absolute;left:0;bottom:-.16em;width:100%;height:2px;background:var(--accent);transform:skewX(-16deg) rotate(-.7deg) scaleX(0);transform-origin:left;transition:transform .18s ease}.action-row a:hover,.annotated-link:hover,.brand:hover,.home-blurb a:hover,.home-link-row a:hover,.site-nav a:hover{color:var(--accent)}.action-row a:hover:after,.annotated-link:hover:after,.brand:hover:after,.home-blurb a:hover:after,.home-link-row a:hover:after,.site-nav a:hover:after{transform:skewX(-16deg) rotate(-.7deg) scaleX(1)}h1,h2,h3,h4,p{margin:0;color:var(--text)}h1,h2,h3,h4{font-family:var(--font-head),Georgia,serif;font-weight:500;line-height:1.18;letter-spacing:-.01em}h1{font-size:clamp(2.2rem,5.2vw,3.45rem)}h2{font-size:clamp(1.65rem,3.5vw,2.35rem)}h3{font-size:clamp(1.2rem,2.2vw,1.5rem)}.container{width:min(980px,92vw);margin:0 auto}.site-shell{display:flex;flex-direction:column;min-height:100dvh}.site-header{--header-drawer-duration:0.46s;--header-drawer-ease:cubic-bezier(0.33,1,0.28,1);z-index:200;border:0}.site-header,.site-header-inner{position:relative;background:var(--bg)}.site-header-inner{z-index:10;display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:.9rem;gap:.9rem;padding:1.2rem 0 .6rem}.site-header-inner.is-home{grid-template-columns:1fr auto}.site-header-spacer{min-height:1px}.site-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.35rem;flex-shrink:0}.site-header-actions>*{flex-shrink:0}.site-header-actions .theme-toggle-skeleton{border:1px solid color-mix(in srgb,var(--rule) 80%,transparent);box-sizing:border-box}.site-header-menu-btn{display:none;width:40px;height:40px;border:none;border-radius:0;background:transparent;color:var(--text);align-items:center;justify-content:center;cursor:pointer;transition:color .14s ease}.site-header-menu-btn:hover{color:var(--accent)}.site-header-menu-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.site-header-drawer-backdrop{display:none;position:fixed;inset:0;z-index:1;background:rgba(0,0,0,.4);opacity:0;pointer-events:none;transition:opacity var(--header-drawer-duration) var(--header-drawer-ease)}.site-header-drawer-backdrop.is-open{opacity:1;pointer-events:auto}.site-header-drawer{display:none;position:fixed;top:0;right:0;z-index:2;flex-direction:column;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:0 1.35rem max(1.25rem,env(safe-area-inset-bottom,0px));box-sizing:border-box;background:var(--bg);box-shadow:-10px 0 40px rgba(0,0,0,.14);overflow:hidden;overscroll-behavior:contain;transform:translate3d(100%,0,0);transition:transform var(--header-drawer-duration) var(--header-drawer-ease)}.site-header-drawer.is-open{transform:translateZ(0)}.site-header-drawer-top{display:flex;justify-content:flex-end;align-items:center;flex-shrink:0;padding-top:max(.65rem,env(safe-area-inset-top,0px));padding-bottom:.85rem;margin-bottom:.35rem;background:var(--bg)}.site-header-drawer-nav-wrap{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}.site-header-drawer-social{display:flex;flex-shrink:0;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.85rem;padding-top:1.15rem;margin-top:auto;border-top:1px solid var(--rule)}.site-header-drawer-social-link{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;color:var(--text-muted);background:color-mix(in srgb,var(--text) 7%,var(--bg));transition:color .16s ease,background .16s ease,transform .16s ease}.site-header-drawer-social-link:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--bg));transform:translateY(-1px)}.site-header-drawer-social-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.site-header-drawer-close{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin:0;padding:0;border:none;border-radius:0;background:transparent;color:var(--text);cursor:pointer;transition:color .14s ease,transform .14s ease}.site-header-drawer-close:hover{color:var(--accent)}.site-header-drawer-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dark .site-header-drawer-backdrop{background:rgba(0,0,0,.58)}.site-nav-mobile-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.15rem;gap:.15rem}.site-nav-mobile-link{display:block;font-family:var(--font-head),Georgia,serif;font-size:1.35rem;font-weight:500;letter-spacing:-.02em;color:var(--text);padding:.75rem 0;border-bottom:1px solid var(--rule);transition:color .14s ease}.site-nav-mobile-list li:last-child .site-nav-mobile-link{border-bottom:0}.site-nav-mobile-link:focus-visible,.site-nav-mobile-link:hover{color:var(--accent)}.site-nav-mobile-link[aria-current=page]{color:var(--accent)}.brand{font-family:var(--font-head),Georgia,serif;font-weight:600;font-size:1.02rem;letter-spacing:.01em}.site-nav,.site-nav>ul{margin:0;padding:0}.site-nav>ul{list-style:none;display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.site-nav a{font-size:.93rem;color:var(--text-muted)}.theme-toggle-icon-btn{width:40px;height:40px;border:none;border-radius:0;background:transparent;color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .14s ease}.theme-toggle-icon-btn:hover{color:var(--accent)}.theme-toggle-icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-toggle-skeleton{width:40px;height:40px}.section{padding:2.35rem 0}.section-header{display:grid;grid-gap:.42rem;gap:.42rem;margin-bottom:1rem}.prose{display:grid;grid-gap:1rem;gap:1rem;max-width:68ch}.prose li,.prose p{color:var(--text)}.grid{display:grid;grid-gap:1.6rem;gap:1.6rem}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{border:0;background:transparent;box-shadow:none;padding:0;display:grid;grid-gap:.8rem;gap:.8rem}.eyebrow{font-family:var(--font-head),Georgia,serif;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem}.eyebrow,.work-role{color:var(--text-muted)}.work-role{font-size:.98rem;font-weight:500}.work-highlights-compact{margin:0;padding-left:1.15rem;display:grid;grid-gap:.24rem;gap:.24rem}.work-highlights-compact li{color:var(--text)}.action-row,.filter-row,.tag-row{display:flex;flex-wrap:wrap;gap:.6rem}.tag{display:inline-block;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;padding:.18rem .55rem;border:1px solid var(--rule);border-radius:999px;line-height:1.4}.filter-chip,.tag{color:var(--text-muted);background:transparent}.filter-chip{border:0;border-radius:0;padding:0;font-size:.94rem}.filter-chip.is-active{color:var(--accent);font-weight:600}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.link-preview{display:block;border:1px solid var(--rule);border-radius:.4rem;overflow:hidden;text-decoration:none;color:inherit;background:transparent;transition:border-color .12s ease,transform .12s ease;max-width:100%}.link-preview:hover{border-color:var(--text-muted)}.link-preview-image{width:100%;aspect-ratio:1200/630;background-size:cover;background-position:50%;background-color:var(--rule)}.link-preview-body{padding:.8rem 1rem .95rem;display:grid;grid-gap:.3rem;gap:.3rem}.link-preview-site{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0}.link-preview-title{font-size:1rem;font-weight:600;line-height:1.3;-webkit-line-clamp:2}.link-preview-description,.link-preview-title{margin:0;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.link-preview-description{font-size:.9rem;color:var(--text-muted);line-height:1.4;-webkit-line-clamp:3}.auto-link{color:var(--accent);text-decoration:underline;text-underline-offset:2px;word-break:break-word}.auto-link:hover{text-decoration-thickness:2px}.youtube-embed{position:relative;width:100%;aspect-ratio:16/9;border-radius:.4rem;overflow:hidden;background:#000}.youtube-embed-shorts{aspect-ratio:9/16;max-width:360px;margin-left:auto;margin-right:auto}.youtube-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.list-header{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.7rem}.skip-link{position:absolute;top:-100%;left:0;padding:.5rem 1rem;background:var(--bg);color:var(--text);z-index:100;border:1px solid var(--rule);font-size:.9rem}.skip-link:focus{top:0}.site-footer{margin-top:2.8rem}.site-footer-inner{display:flex;justify-content:flex-start;padding:1.6rem 0;color:var(--text-muted);font-size:.92rem}.home-gateway{padding:clamp(2rem,6vw,4.8rem) 0 2.4rem}.home-stack{max-width:600px;margin:0 auto;display:grid;grid-gap:1.35rem;gap:1.35rem}.home-intro{font-family:var(--font-script),cursive;font-weight:400;font-size:clamp(3.15rem,13vw,6.1rem);line-height:.92;letter-spacing:.01em;width:-moz-fit-content;width:fit-content;max-width:100%;white-space:nowrap;overflow:hidden;max-inline-size:0;animation:intro-write 1.05s steps(24) forwards}.home-portrait{width:min(460px,100%);margin:0}.home-portrait img{display:block;width:100%;height:auto}.home-blurb{font-size:clamp(1rem,1.8vw,1.11rem);line-height:1.58;max-width:56ch}.home-link-row{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.2rem}.home-link-row li{display:inline-flex;align-items:center}.home-link-row li:before{content:"";width:.34rem;height:.34rem;margin-right:.44rem;background:var(--accent);transform:rotate(8deg)}.home-link-row li:not(:last-child):after{content:"·";margin:0 .58rem 0 .68rem;color:var(--text-muted)}.home-link-row a{font-size:1rem;line-height:1.4}.work-entry{display:grid;grid-gap:.55rem;gap:.55rem;padding-bottom:1.35rem;border-bottom:1px solid var(--rule)}.work-entry:last-child{border-bottom:0;padding-bottom:0}.work-timeline{list-style:none;margin:0;padding:0;display:grid;grid-gap:1.55rem;gap:1.55rem}.work-timeline-item{position:relative;margin:0;padding:0 0 0 1.4rem;border-left:1px solid var(--rule)}.work-timeline-item:before{content:"";position:absolute;left:-.32rem;top:.42rem;width:.52rem;height:.52rem;border-radius:50%;background:var(--bg);border:2px solid var(--accent);box-sizing:border-box}.work-timeline-item .work-entry{border-bottom:0;padding-bottom:0}.work-timeline--scroll{--work-timeline-reveal-ms:680ms;--work-timeline-reveal-ease:cubic-bezier(0.22,1,0.36,1)}.work-timeline--scroll .work-timeline-item{border-left:none;padding-left:1.45rem}.work-timeline--scroll .work-timeline-item:before{content:none}.work-timeline--scroll .work-timeline-rail{position:absolute;left:0;top:0;bottom:0;width:1px;pointer-events:none}.work-timeline--scroll .work-timeline-rail-fill{position:absolute;inset:0;width:100%;background:var(--rule);transform:scaleY(0);transform-origin:top center;transition-property:transform;transition-duration:var(--work-timeline-reveal-ms);transition-timing-function:var(--work-timeline-reveal-ease)}.work-timeline--scroll .work-timeline-item--lead .work-timeline-rail-fill,.work-timeline--scroll .work-timeline-item.is-revealed .work-timeline-rail-fill{transform:scaleY(1)}.work-timeline--scroll .work-timeline-dot{position:absolute;left:50%;top:.42rem;width:.52rem;height:.52rem;margin:0;border-radius:50%;background:var(--bg);border:2px solid var(--accent);box-sizing:border-box;opacity:0;transform:translate3d(-50%,0,0) scale(.88);transition-property:opacity,transform;transition-duration:var(--work-timeline-reveal-ms);transition-timing-function:var(--work-timeline-reveal-ease)}.work-timeline--scroll .work-timeline-item--lead .work-timeline-dot,.work-timeline--scroll .work-timeline-item.is-revealed .work-timeline-dot{opacity:1;transform:translate3d(-50%,0,0) scale(1)}.work-timeline--scroll .work-timeline-item-body{opacity:0;transform:translate3d(0,14px,0);transition-property:opacity,transform;transition-duration:var(--work-timeline-reveal-ms);transition-timing-function:var(--work-timeline-reveal-ease)}.work-timeline--scroll .work-timeline-item--lead .work-timeline-item-body,.work-timeline--scroll .work-timeline-item.is-revealed .work-timeline-item-body{opacity:1;transform:translateZ(0)}@keyframes intro-write{0%{max-inline-size:0}to{max-inline-size:20ch}}@media (max-width:960px){.site-header-inner:not(.is-home){grid-template-columns:minmax(0,1fr) auto;align-items:center}.site-header-inner.is-home{grid-template-columns:1fr auto}.site-header-spacer{display:none}.site-header-inner.is-home .site-header-spacer{display:block}.site-nav--desktop{display:none!important}.site-header-menu-btn{display:inline-flex}.site-header-drawer-backdrop{display:block}.site-header-drawer{display:flex}.site-header-drawer-backdrop:not(.is-open),.site-header-drawer:not(.is-open){pointer-events:none}.grid.cols-2,.grid.cols-3{grid-template-columns:1fr}.home-intro{white-space:normal;max-inline-size:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.home-intro{animation:none!important;max-inline-size:100%!important}.work-timeline--scroll .work-timeline-item[data-timeline-follow] .work-timeline-rail-fill{transform:scaleY(1)}.work-timeline--scroll .work-timeline-item[data-timeline-follow] .work-timeline-dot{opacity:1;transform:translate3d(-50%,0,0) scale(1)}.work-timeline--scroll .work-timeline-item[data-timeline-follow] .work-timeline-item-body{opacity:1;transform:none}}