@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-2317fa4b.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-68944396.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-8fa40e5d.woff2) format("woff2-variations");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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-824f485b.woff2) format("woff2-variations");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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-19f9c925.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-cd880099.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-4866787f.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-5bb66d83.woff2) format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-d39b6088.woff2) format("woff2-variations");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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-1a189eb9.woff2) format("woff2-variations");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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-684ad5b5.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-ext-400-normal-290e6267.woff2) format("woff2"),url(/assets/instrument-serif-latin-ext-400-normal-1719ae18.woff) format("woff");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:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-normal-5eb09b5a.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-normal-6d0b022a.woff) format("woff");unicode-range:U+0000-00FF,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:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-ext-400-italic-d0014821.woff2) format("woff2"),url(/assets/instrument-serif-latin-ext-400-italic-f393f76d.woff) format("woff");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:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-italic-5a51946d.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-italic-9bc25f74.woff) format("woff");unicode-range:U+0000-00FF,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}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}:root{--bg: #0c0c0b;--bg-2: #141413;--fg: #ecebe6;--muted: #8b8a84;--line: rgba(236, 235, 230, .12);--line-strong: rgba(236, 235, 230, .24);--accent: #ff5b1f;--accent-2: #7cd4bd;--live: #53e08b;--sans: "Geist Variable", "Inter", system-ui, -apple-system, sans-serif;--mono: "Geist Mono Variable", ui-monospace, "SF Mono", Menlo, monospace;--serif: "Instrument Serif", "Times New Roman", serif;--gutter: clamp(16px, 3vw, 44px);--ease: cubic-bezier(.16, 1, .3, 1);--ease-io: cubic-bezier(.76, 0, .24, 1);color-scheme:dark}:root[data-theme=light]{--bg: #ecebe6;--bg-2: #e3e2dc;--fg: #121211;--muted: #6c6b66;--line: rgba(18, 18, 17, .12);--line-strong: rgba(18, 18, 17, .26);--accent: #e8470c;--accent-2: #13866b;--live: #16a34a;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;background:var(--bg);overflow-x:clip;transition:background-color .6s var(--ease)}body{margin:0;color:var(--fg);font-family:var(--sans);font-size:16px;line-height:1.5;overflow-x:clip;transition:color .6s var(--ease)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}h1,h2,h3,p{margin:0}em{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.01em}::selection{background:var(--accent);color:#0c0c0b}:focus-visible{outline:1px dashed var(--accent);outline-offset:4px}.mono{font-family:var(--mono);font-size:12px;letter-spacing:.02em;text-transform:uppercase}.muted{color:var(--muted)}.accent{color:var(--accent)}.mask{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .06em .1em;margin:0 -.06em -.1em}.mask>*{display:inline-block}.caret{display:inline-block;width:.6em;height:1.05em;margin-left:4px;vertical-align:text-bottom;background:var(--accent);animation:blink 1s steps(1) infinite}.dot-live{position:relative;display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--live);vertical-align:1px}.dot-live:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--live);animation:pulse 2s var(--ease) infinite}@keyframes blink{50%{opacity:0}}@keyframes pulse{0%{transform:scale(1);opacity:.6}to{transform:scale(3);opacity:0}}.grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain .9s steps(3) infinite}:root[data-theme=light] .grain{opacity:.1}@keyframes grain{0%{background-position:0 0}33%{background-position:-37px 23px}66%{background-position:29px -41px}}.guides{position:fixed;inset:0 var(--gutter);z-index:-1;display:grid;grid-template-columns:repeat(6,1fr);pointer-events:none}.guides span{border-left:1px solid var(--line);opacity:.45}.guides span:last-child{border-right:1px solid var(--line)}main,.footer{position:relative}html.has-cursor,html.has-cursor *{cursor:none!important}html.has-cursor input,html.has-cursor textarea{cursor:text!important}.cursor{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;opacity:0;mix-blend-mode:difference;transition:opacity .3s}.cursor.is-visible{opacity:1}.cursor__dot,.cursor__ring{position:absolute;top:0;left:0}.cursor__dot{width:5px;height:5px;margin:-2.5px 0 0 -2.5px;border-radius:50%;background:#fff}.cursor__ring-inner{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;border:1px solid #fff;border-radius:50%;transition:background-color .3s,border-color .3s}.cursor--hover .cursor__ring-inner{background:#fff}.cursor--label{mix-blend-mode:normal}.cursor--label .cursor__ring-inner{background:var(--accent);border-color:var(--accent)}.cursor--label .cursor__dot,.cursor--hidden .cursor__dot{opacity:0}.cursor__label{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;color:#0c0c0b;opacity:0;transition:opacity .2s}.cursor--label .cursor__label{opacity:1}.cursor__coords{position:absolute;top:22px;left:22px;font-size:9.5px;color:#fff;white-space:nowrap;opacity:.75;transition:opacity .2s}.cursor:not(.cursor--idle) .cursor__coords{opacity:0}.preloader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;grid-template-rows:1fr auto;padding:var(--gutter);background:#0c0c0b;color:#ecebe6;--accent: #ff5b1f}.preloader__log{font-size:13px;line-height:1.9;text-transform:none}.preloader__line{white-space:pre}.preloader__meta{display:flex;flex-direction:column;gap:4px;align-self:end;color:#8b8a84}.preloader__count{position:absolute;right:var(--gutter);bottom:calc(var(--gutter) - .08em);font-size:clamp(96px,20vw,300px);font-weight:500;line-height:.8;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.preloader__bar{position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--accent);transform-origin:left}.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:grid;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:32px;padding:20px var(--gutter);color:#fff;mix-blend-mode:difference}.nav__brand{display:inline-flex;align-items:center;gap:12px;justify-self:start;font-weight:500;letter-spacing:-.01em}.nav__mark{display:grid;place-items:center;width:30px;height:30px;border:1px solid currentColor;font-family:var(--mono);font-size:11px;font-weight:600;transition:background .3s,color .3s}.nav__brand:hover .nav__mark{background:#fff;color:#000}.nav__links{display:flex;justify-content:flex-end;gap:28px;margin:0;padding:0;list-style:none}.nav__links a{position:relative;display:inline-block;padding:4px 0}.nav__links a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}.nav__links a:hover:after{transform:scaleX(1);transform-origin:left}.nav__actions{display:flex;align-items:center;gap:20px}.nav .dot-live,.nav .dot-live:after{background:#fff}.nav__progress{font-variant-numeric:tabular-nums;opacity:.7}.nav__menu{display:none;font-family:var(--mono);font-size:12px;text-transform:uppercase}.theme-toggle{position:relative;width:18px;height:18px;border:1px solid currentColor;border-radius:50%;overflow:hidden}.theme-toggle span{position:absolute;top:0;right:50%;bottom:0;left:0;background:currentColor;transition:transform .7s var(--ease-io);transform-origin:right center}:root[data-theme=light] .theme-toggle span{transform:rotate(180deg)}.menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;flex-direction:column;justify-content:space-between;padding:110px var(--gutter) var(--gutter);background:var(--bg-2)}.menu ul{margin:0;padding:0;list-style:none}.menu li{display:block;border-bottom:1px solid var(--line)}.menu li a{display:flex;align-items:baseline;gap:16px;padding:6px 0;font-size:clamp(44px,12vw,96px);font-weight:500;line-height:1;letter-spacing:-.05em}.menu__foot{display:flex;flex-wrap:wrap;gap:24px}.section{position:relative;padding:clamp(100px,11vw,170px) var(--gutter) 0}.section-head__bar{display:flex;align-items:center;gap:16px}.section-head__line{flex:1;height:1px;background:var(--line-strong);transform-origin:left}.section-head__title{margin:.45em 0 .55em;font-size:clamp(46px,8.4vw,140px);font-weight:500;line-height:.92;letter-spacing:-.05em}.section-head__title .mask{display:block}.section-head__title em{letter-spacing:-.03em}.hero{position:relative;display:grid;grid-template-rows:auto 1fr auto auto;min-height:100svh;padding:100px var(--gutter) 28px;overflow:hidden}.hero__meta{position:relative;z-index:2;display:flex;justify-content:space-between;gap:24px;padding-top:12px;border-top:1px solid var(--line)}.hero__stage{position:relative;grid-row:3}.hero__name{position:relative;z-index:2;margin:0 -.045em;color:#fff;mix-blend-mode:difference;font-size:clamp(60px,21.4vw,560px);font-weight:600;line-height:.84;letter-spacing:-.065em;-webkit-user-select:none;user-select:none;pointer-events:none}.hero__word{display:block;white-space:nowrap}.hero__torus{position:absolute;right:-1vw;bottom:-2%;z-index:1;width:46%;height:78%}.hero__torus-cap{position:absolute;right:1vw;bottom:-2.4vw;font-size:10.5px}.ascii-torus{width:100%;height:100%;touch-action:pan-y}.ascii-torus canvas{display:block}.hero__foot{position:relative;z-index:2;grid-row:4;display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-top:3vw;padding-top:20px;border-top:1px solid var(--line)}.hero__intro{max-width:30ch;font-size:clamp(19px,1.9vw,30px);line-height:1.2;letter-spacing:-.02em}.hero__scroll{display:inline-flex;align-items:center;gap:14px}.hero__scroll-line{position:relative;width:48px;height:1px;overflow:hidden;background:var(--line-strong)}.hero__scroll-line:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent);animation:scan 2.2s var(--ease-io) infinite}@keyframes scan{0%{transform:translate(-100%)}60%,to{transform:translate(100%)}}.marquee{position:relative;z-index:1;overflow:hidden;padding:clamp(18px,2.4vw,36px) 0;border-block:1px solid var(--line);background:var(--bg)}.marquee__track{display:flex;width:max-content;white-space:nowrap}.marquee__item{display:inline-flex;align-items:center;gap:.5em;padding-right:.5em;font-size:clamp(40px,7vw,116px);font-weight:500;line-height:1;letter-spacing:-.045em}.marquee__item:nth-child(2n){color:transparent;-webkit-text-stroke:1px var(--fg)}.marquee__star{font-size:.45em;-webkit-text-stroke:0;color:var(--accent)}.about__grid{display:grid;grid-template-columns:minmax(0,236px) minmax(0,1fr);align-items:start;gap:clamp(32px,6vw,110px);margin-top:clamp(40px,5vw,80px)}.ascii-portrait{position:relative;aspect-ratio:4 / 5;overflow:hidden;border:1px solid var(--line);background:#ecebe6;touch-action:pan-y}.ascii-portrait canvas{display:block}.about__card{overflow:hidden;border:1px solid var(--line-strong);border-radius:10px;background:var(--bg-2)}.about__card .ascii-portrait{border:0;border-bottom:1px solid var(--line)}.about__whoami{display:grid;gap:6px;margin:0;padding:14px;font-size:10.5px}.about__whoami div{display:flex;justify-content:space-between;gap:12px}.about__whoami dt{color:var(--muted)}.about__whoami dd{margin:0;text-align:right}.about__caption{margin-top:12px;font-size:10.5px}.about__lead{font-size:clamp(26px,3.15vw,52px);font-weight:450;line-height:1.1;letter-spacing:-.035em}.about__body{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:clamp(40px,5vw,72px);color:var(--muted);font-size:16px;line-height:1.6}.about__traits{display:flex;flex-wrap:wrap;gap:10px;margin-top:40px}.about__traits>span{padding:9px 14px;border:1px solid var(--line-strong);border-radius:999px}.stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(80px,10vw,160px);border-top:1px solid var(--line-strong)}.stat{padding:28px 28px 36px 0;border-bottom:1px solid var(--line)}.stat:not(:nth-child(4n+1)){padding-left:28px;border-left:1px solid var(--line)}.stat__value{font-size:clamp(56px,7vw,112px);font-weight:500;line-height:1;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.stat__label{margin-top:20px}.stat__note{margin-top:4px;font-size:14px}.rows{border-top:1px solid var(--line-strong)}.row{position:relative;display:grid;grid-template-columns:64px minmax(0,1fr) 280px;gap:24px;padding:clamp(28px,3vw,44px) 0;border-bottom:1px solid var(--line);transition:opacity .5s var(--ease)}.rows:hover .row:not(:hover){opacity:.32}.row__index{padding-top:.9em}.row__title{display:flex;align-items:flex-start;gap:.2em;font-size:clamp(38px,6.2vw,104px);font-weight:500;line-height:.95;letter-spacing:-.055em}.row__title-text{transition:transform .7s var(--ease)}.row__arrow{font-size:.45em;opacity:0;transform:translate(-.6em,.6em);transition:transform .7s var(--ease),opacity .4s}.row:hover .row__title-text{transform:translate(.18em)}.row:hover .row__arrow{opacity:1;transform:translate(.18em)}.row__desc{max-width:54ch;margin-top:18px;color:var(--muted);font-size:16px}.row--public{cursor:pointer}.row__title-link{display:inline-block}.row__links{display:flex;gap:18px;margin-top:16px}.row__links a{border-bottom:1px solid var(--line-strong);transition:color .3s,border-color .3s}.row__links a:hover{color:var(--accent);border-color:var(--accent)}.row__meta{display:flex;flex-direction:column;align-items:flex-end;gap:10px;padding-top:.9em;text-align:right}.row__stack{max-width:26ch;text-transform:none;letter-spacing:0}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--line-strong);border-radius:999px;font-size:10.5px}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--live)}.badge--private:before{border-radius:1px;background:var(--muted)}.preview{position:fixed;top:0;left:0;z-index:60;pointer-events:none}.preview__window{--t-bg: #0b0b0a;--t-fg: #e9e7df;width:clamp(300px,26vw,380px);margin:-24px 0 0 32px;overflow:hidden;border:1px solid rgba(233,231,223,.18);border-radius:10px;background:var(--t-bg);color:var(--t-fg);box-shadow:0 30px 80px -20px #0000008c;transform-origin:left center}.preview__chrome{display:flex;align-items:center;gap:12px;height:30px;padding:0 12px;border-bottom:1px solid rgba(233,231,223,.1);font-size:10.5px;text-transform:none}.preview__dots{display:inline-flex;gap:5px}.preview__dots i{width:8px;height:8px;border-radius:50%;background:rgba(233,231,223,.2)}.preview__dots i:first-child{background:var(--accent)}.preview__vis{margin-left:auto;padding:1px 8px;border-radius:999px;font-size:9.5px;text-transform:uppercase;letter-spacing:.06em}.preview__vis--public{background:rgba(83,224,139,.15);color:#53e08b}.preview__vis--private{background:rgba(255,91,31,.15);color:#ff7a45}.preview__body{min-height:196px;padding:14px 16px 16px;font-size:11.5px;line-height:1.7;text-transform:none;letter-spacing:0}.preview__line{color:#e9e7dfeb;white-space:pre-wrap}.preview__line--accent{color:#ff7a45}.preview__line--ok{color:#7cd4bd}.preview__line--muted{color:#85847e}.preview__body .accent{color:#ff7a45}.archive{margin-top:clamp(64px,8vw,120px)}.archive__head{display:flex;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--line-strong)}.archive ul{margin:0;padding:0;list-style:none}.archive__row{position:relative;display:grid;grid-template-columns:64px minmax(0,220px) minmax(0,1fr) minmax(0,240px) 24px;align-items:baseline;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);isolation:isolate}.archive__row:before{content:"";position:absolute;inset:0 calc(-1 * var(--gutter));z-index:-1;background:var(--fg);transform:scaleY(0);transform-origin:bottom;transition:transform .45s var(--ease)}.archive__row:hover:before{transform:scaleY(1)}.archive__row:hover,.archive__row:hover .muted{color:var(--bg)}.archive__row:hover .archive__go{color:var(--accent)}.archive__title{font-size:19px;font-weight:500;letter-spacing:-.02em}.archive__what{color:var(--muted);font-size:15px;transition:color .3s}.archive__row:hover .archive__what{color:var(--bg)}.archive__stack{text-transform:none;letter-spacing:0}.archive__go{text-align:right;transition:transform .4s var(--ease)}.archive__row.is-link:hover .archive__go{transform:translate(3px,-3px)}.gitlog{overflow:hidden;border:1px solid var(--line-strong);border-radius:14px;background:var(--bg-2)}.gitlog__cmd{padding:16px 24px;border-bottom:1px solid var(--line);font-size:13px;text-transform:none}.gitlog__list{margin:0;padding:8px 0 16px;list-style:none}.commit{display:grid;grid-template-columns:72px minmax(0,1fr)}.commit__graph{position:relative}.commit__graph:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;margin-left:-1px;background:var(--accent);opacity:.55}.commit:first-child .commit__graph:before{top:34px}.commit:last-child .commit__graph:before{bottom:auto;height:34px}.commit__node{position:absolute;top:28px;left:50%;z-index:1;width:13px;height:13px;margin-left:-6.5px;border:2px solid var(--accent);border-radius:50%;background:var(--bg-2);transition:background .3s,transform .4s var(--ease)}.commit.is-open .commit__node{background:var(--accent);transform:scale(1.25)}.commit--branch .commit__node{margin-left:10px;border-color:var(--accent-2)}.commit--branch.is-open .commit__node{background:var(--accent-2)}.commit--branch .commit__graph:after{content:"";position:absolute;top:18px;left:calc(50% + 1px);width:12px;height:16px;border-top:2px solid var(--accent-2);border-right:2px solid var(--accent-2);border-top-right-radius:10px;opacity:.8}.commit__head{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto 20px;align-items:baseline;gap:14px;width:100%;padding:22px 24px 22px 0;border-bottom:1px dashed var(--line);text-align:left}.commit:last-child .commit__head{border-bottom:0}.commit__ref{color:var(--accent-2);text-transform:none}.commit__title{font-size:clamp(17px,1.65vw,24px);letter-spacing:-.02em;transition:transform .5s var(--ease)}.commit__head:hover .commit__title{transform:translate(6px)}.commit__date{white-space:nowrap}.commit__toggle{font-size:16px;text-align:center}.commit__detail{overflow:hidden}.commit__detail-inner{display:grid;grid-template-columns:220px minmax(0,1fr);gap:32px;padding:24px 24px 36px 0;border-bottom:1px dashed var(--line)}.commit__info{display:flex;flex-direction:column;gap:8px}.commit__logo{width:48px;height:48px;margin-bottom:8px;border-radius:10px;object-fit:contain;background:#fff;filter:grayscale(1);transition:filter .4s}.commit:hover .commit__logo{filter:none}.commit__summary{font-size:18px;letter-spacing:-.01em}.commit__points{margin:16px 0 0;padding:0;list-style:none;color:var(--muted)}.commit__points li{display:flex;gap:12px;padding:5px 0}.edu{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,64px);margin-top:clamp(40px,5vw,80px)}.edu__card{padding-top:28px;border-top:1px solid var(--line-strong)}.edu__years{font-family:var(--serif);font-size:clamp(60px,7.5vw,128px);font-style:italic;line-height:.95;letter-spacing:-.03em}.edu__head{display:flex;align-items:center;gap:16px;margin:32px 0 18px}.edu__logo{width:52px;height:52px;border-radius:12px;object-fit:contain;background:#fff;filter:grayscale(1);transition:filter .4s}.edu__card:hover .edu__logo{filter:none}.edu__degree{font-size:clamp(22px,2.1vw,32px);font-weight:500;letter-spacing:-.03em}.edu__grade{padding:12px 0;border-block:1px solid var(--line)}.edu__items{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px;margin:16px 0 0;padding:0;list-style:none;text-transform:none;font-size:12.5px}.edu__items li{padding:6px 0;color:var(--muted)}.edu__items li:before{content:"→ ";color:var(--accent)}.toolkit__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3vw,48px)}.toolkit__col{padding-top:20px;border-top:1px solid var(--line-strong)}.toolkit__label{margin-bottom:24px;font-weight:400}.toolkit__also{margin-top:40px;padding-top:16px;border-top:1px dashed var(--line-strong);text-transform:none;letter-spacing:0;font-size:13px}.toolkit__col ul{margin:0;padding:0;list-style:none}.chip{display:inline-flex;margin:0 6px 8px 0;padding:8px 15px;border:1px solid var(--line-strong);border-radius:999px;font-size:15px;transition:background .35s var(--ease),color .35s var(--ease),border-color .35s}.chip:hover{background:var(--fg);border-color:var(--fg);color:var(--bg)}.certs a{display:grid;grid-template-columns:1fr auto;gap:4px 16px;padding:14px 0;border-bottom:1px solid var(--line);font-size:17px;letter-spacing:-.01em}.certs a .mono{grid-column:1 / -1}.certs a span:last-child{transition:transform .4s var(--ease)}.certs a:hover span:last-child{transform:translate(3px,-3px)}.term{--t-bg: #0b0b0a;--t-fg: #e9e7df;--t-muted: #85847e;overflow:hidden;border:1px solid var(--line-strong);border-radius:14px;background:var(--t-bg);color:var(--t-fg);box-shadow:0 40px 120px -40px #ff5b1f40}.term .muted{color:var(--t-muted)}.term__bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(233,231,223,.1);font-size:11px;text-transform:none}.term__bar>:last-child{justify-self:end}.term__bar .preview__dots i{background:rgba(233,231,223,.2)}.term__body{height:clamp(380px,58vh,580px);overflow-y:auto;padding:20px 24px;font-size:13.5px;line-height:1.65;text-transform:none;letter-spacing:0;overscroll-behavior:contain}.term__line{white-space:pre-wrap;word-break:break-word}.term__out{color:#e9e7dfdb}.term__input{display:flex;align-items:center}.term__input input{flex:1;min-width:0;margin-left:1ch;padding:0;border:0;outline:0;background:transparent;color:inherit;font:inherit;caret-color:var(--accent)}.term__link{border-bottom:1px solid currentColor;color:var(--accent-2)}:root[data-theme=light] .term__link{color:#7cd4bd}.term__neofetch{display:flex;flex-wrap:wrap;gap:8px 40px;padding:8px 0}.term__neofetch pre{margin:0;font:inherit;line-height:1}.term__swatches{display:flex;margin-top:10px}.term__swatches i{width:24px;height:14px}.term__swatches i:nth-child(1){background:#0b0b0a;outline:1px solid #333}.term__swatches i:nth-child(2){background:#ff5b1f}.term__swatches i:nth-child(3){background:#7cd4bd}.term__swatches i:nth-child(4){background:#53e08b}.term__swatches i:nth-child(5){background:#85847e}.term__swatches i:nth-child(6){background:#e9e7df}.contact__title{margin:.35em 0 .45em;font-size:clamp(58px,12.5vw,230px);font-weight:500;line-height:.88;letter-spacing:-.06em}.contact__title .mask{display:block}.contact__title em{color:var(--accent);letter-spacing:-.035em}.contact__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,6vw,110px)}.contact__lede{max-width:36ch;color:var(--muted);font-size:18px}.contact__email{position:relative;display:inline-block;margin-top:36px;font-size:clamp(22px,2.5vw,40px);letter-spacing:-.03em}.contact__email:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform-origin:right;transition:transform .6s var(--ease)}.contact__email:hover:after{transform:scaleX(0)}.contact__copied{position:absolute;left:0;top:calc(100% + 14px);font-size:11px;letter-spacing:.04em}.contact__resume{display:inline-block;margin-top:56px;padding:12px 18px;border:1px solid var(--line-strong);border-radius:999px}.field{position:relative;padding:20px 0 14px;border-bottom:1px solid var(--line-strong)}.field:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease)}.field:focus-within:after{transform:scaleX(1)}.field label{display:block;margin-bottom:6px}.field input,.field textarea{width:100%;padding:6px 0;border:0;outline:0;background:transparent;color:var(--fg);font:inherit;font-size:clamp(20px,2vw,28px);letter-spacing:-.02em;resize:vertical}.field ::placeholder{color:var(--muted);opacity:.45}.form__foot{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:40px}.form__status{max-width:34ch;text-transform:none;font-size:13px}.form__status.error{color:#ff6b6b}.form__foot>:last-child{margin-left:auto}.send{position:relative;display:grid;place-items:center;width:clamp(120px,11vw,160px);aspect-ratio:1;overflow:hidden;border-radius:50%;background:var(--accent);color:#0c0c0b;font-size:20px;font-weight:500;letter-spacing:-.02em}.send>span{position:relative;z-index:1;grid-area:1 / 1}.send__arrow{transform:translate(28px,-22px);font-size:16px}.send:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--fg);transform:translateY(101%);transition:transform .6s var(--ease)}.send:hover:before{transform:translateY(0)}.send:hover{color:var(--bg)}.send:disabled{opacity:.6}.footer{margin-top:clamp(120px,14vw,220px);overflow:hidden;border-top:1px solid var(--line-strong)}.footer__top{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:32px var(--gutter)}.footer__col{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer__col a,.footer__col button{font:inherit;text-transform:inherit;transition:color .3s}.footer__col a:hover,.footer__col button:hover{color:var(--accent)}.footer__col--end{align-items:flex-end;text-align:right}.footer__mark{padding:0 var(--gutter);font-size:clamp(60px,21.4vw,560px);font-weight:600;line-height:.74;letter-spacing:-.065em;text-align:center;white-space:nowrap;height:.8em;overflow:hidden}.footer__mark span{display:block}@media (max-width: 1100px){.nav{grid-template-columns:1fr auto auto}.nav__links{display:none}.nav__menu{display:inline-block}.row{grid-template-columns:44px minmax(0,1fr)}.row__meta{grid-column:2;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:6px 16px;padding-top:0;text-align:left}.row__stack{max-width:none}.archive__row{grid-template-columns:52px minmax(0,1fr) 20px;gap:4px 16px}.archive__what,.archive__stack{grid-column:2}.archive__go{grid-column:3;grid-row:1}.toolkit__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.commit__head{grid-template-columns:auto minmax(0,1fr) 20px}.commit__ref{display:none}.commit__date{grid-column:2;grid-row:2}.commit__toggle{grid-column:3;grid-row:1}.commit__detail-inner{grid-template-columns:1fr;gap:16px}.commit__info{flex-direction:row;align-items:center;gap:14px}.commit__logo{margin:0;width:36px;height:36px}}@media (max-width: 860px){.hero__torus{right:-2vw;bottom:40%;width:70%;height:150%}.hero__torus-cap{display:none}.hero__meta span:nth-child(2){display:none}.hero__foot{flex-direction:column;align-items:flex-start}.about__grid,.contact__grid,.edu{grid-template-columns:1fr}.about__card{display:grid;grid-template-columns:140px minmax(0,1fr);max-width:440px}.about__card .ascii-portrait{border-bottom:0;border-right:1px solid var(--line)}.about__whoami{align-content:center}.about__body{grid-template-columns:1fr;gap:20px}.stats{grid-template-columns:repeat(2,1fr)}.stat,.stat:not(:nth-child(4n+1)){padding:24px 16px 28px 0;border-left:0}.stat:nth-child(2n){padding-left:16px;border-left:1px solid var(--line)}.preview{display:none}.rows:hover .row:not(:hover){opacity:1}.footer__top{grid-template-columns:1fr 1fr;row-gap:32px}}@media (max-width: 600px){.nav__clock,.nav__progress,.nav__name{display:none}.hero{padding-top:84px}.hero__meta{font-size:10.5px}.hero__meta span:first-child{display:none}.stat__value{font-size:44px}.toolkit__grid,.edu__items{grid-template-columns:1fr}.term__bar{grid-template-columns:auto 1fr;gap:12px}.term__bar>:last-child{display:none}.term__body{padding:16px;font-size:12px}.commit{grid-template-columns:44px minmax(0,1fr)}.commit__head{padding-right:16px;gap:4px 10px}.commit__detail-inner{padding-right:16px}.gitlog__cmd{padding:14px 16px;font-size:11.5px}.form__foot{flex-direction:column;align-items:flex-start}.footer__col--end{align-items:flex-start;text-align:left}}@media (prefers-reduced-motion: reduce){.grain,.dot-live:after,.hero__scroll-line:after,.caret{animation:none}}
