:root{--bg:#0a0a0a;--bg-soft:#111;--line:#1c1c1c;--line-2:#262626;--fg:#f2f0ea;--fg-soft:#b8b6ad;--fg-mute:#6a6a66;--fg-dim:#3a3a38;--accent:#ff9c3e;--accent-soft:#ff9c3e2e;--accent-line:#ff9c3e66;--danger:#ff4d3a;--ok:#5fff8f;--display:"Space Grotesk", "Inter", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--glitch-intensity:1;--grain-opacity:.06;--scan-opacity:.08}@supports (color:lab(0% 0 0)){:root{--accent:lab(73.8254% 33.482 64.1888);--accent-soft:lab(73.8254% 33.482 64.1888/.18);--accent-line:lab(73.8254% 33.482 64.1888/.4)}}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--fg);font-family:var(--display)}html{scroll-behavior:auto;overflow-x:clip}body{font-feature-settings:"ss01", "cv11";-webkit-font-smoothing:antialiased;cursor:none;min-height:100vh;overflow-x:clip}body.no-cursor{cursor:auto}a{color:inherit;text-decoration:none}button{color:inherit;cursor:none;background:0 0;border:none;font-family:inherit}body.no-cursor button,body.no-cursor a{cursor:pointer}.fx-canvas{z-index:0;pointer-events:none;opacity:.5;position:fixed;inset:0}.fx-scan{z-index:90;pointer-events:none;background-image:repeating-linear-gradient(to bottom, rgba(255,255,255,var(--scan-opacity)) 0px, rgba(255,255,255,var(--scan-opacity)) 1px, transparent 1px, transparent 3px);mix-blend-mode:overlay;position:fixed;inset:0}.fx-vignette{z-index:85;pointer-events:none;background:radial-gradient(#0000 50%,#000000b3 100%);position:fixed;inset:0}.fx-grain{z-index:95;pointer-events:none;opacity:var(--grain-opacity);mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-4%)}60%{transform:translate(-1%,3%)}80%{transform:translate(3%,-2%)}to{transform:translate(0)}}.fx-spotlight{z-index:80;pointer-events:none;background:radial-gradient(600px circle at var(--mx,50%) var(--my,50%), var(--accent-soft), transparent 50%);mix-blend-mode:screen;opacity:.6;transition:opacity .4s;position:fixed;inset:0}.cursor-dot,.cursor-ring{pointer-events:none;z-index:200;will-change:transform;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-dot{background:var(--accent);mix-blend-mode:difference;border-radius:50%;width:6px;height:6px}.cursor-ring{border:1px solid var(--fg);border-radius:50%;width:36px;height:36px;transition:width .2s,height .2s,border-color .2s,background .2s}.cursor-ring.hover{border-color:var(--accent);background:var(--accent-soft);width:56px;height:56px}@media (hover:none) and (pointer:coarse){.cursor-dot,.cursor-ring{display:none}body{cursor:auto}a,button{cursor:pointer}.fx-spotlight,.fx-grain{display:none}.fx-scan{animation:none}.ticker-track{will-change:auto}}.chrome-frame{z-index:70;pointer-events:none;border:1px solid var(--line-2);position:fixed;inset:14px}.chrome-frame:before,.chrome-frame:after,.chrome-corner{border:1px solid var(--accent);width:14px;height:14px;position:absolute}.chrome-corner.tl{border-bottom:0;border-right:0;top:-1px;left:-1px}.chrome-corner.tr{border-bottom:0;border-left:0;top:-1px;right:-1px}.chrome-corner.bl{border-top:0;border-right:0;bottom:-1px;left:-1px}.chrome-corner.br{border-top:0;border-left:0;bottom:-1px;right:-1px}.nav-top{z-index:100;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-soft);mix-blend-mode:difference;justify-content:space-between;align-items:center;padding:0 36px;font-size:11px;display:flex;position:fixed;top:28px;left:0;right:0}.nav-top .brand{align-items:center;gap:12px;display:flex}.nav-top .brand .mark{border:1px solid var(--fg);place-items:center;width:22px;height:22px;display:grid;position:relative}.nav-top .brand .mark:before{content:"";background:var(--accent);position:absolute;inset:4px}.nav-top .links{align-items:center;gap:28px;display:flex}.nav-top .links a{padding:4px 2px;position:relative}.nav-top .links a:before{content:"[" attr(data-i) "]";color:var(--fg-mute);margin-right:6px}.nav-top .links a:hover{color:var(--accent)}.nav-top .clock{color:var(--fg-mute)}.nav-top .clock b{color:var(--accent);font-weight:400}.side-rail{z-index:100;font-family:var(--mono);letter-spacing:.1em;color:var(--fg-mute);mix-blend-mode:difference;flex-direction:column;gap:14px;font-size:10px;display:flex;position:fixed;top:50%;left:28px;transform:translateY(-50%)}.side-rail .tick{align-items:center;gap:10px;display:flex}.side-rail .tick .dot{background:currentColor;width:8px;height:1px}.side-rail .tick.active{color:var(--accent)}.side-rail .tick.active .dot{background:var(--accent);width:22px;height:2px}.side-rail-right{z-index:100;font-family:var(--mono);color:var(--fg-mute);letter-spacing:.1em;mix-blend-mode:difference;flex-direction:column;align-items:flex-end;gap:8px;font-size:10px;display:flex;position:fixed;bottom:36px;right:28px}.side-rail-right .vert{writing-mode:vertical-rl;letter-spacing:.3em;transform:rotate(180deg)}section{z-index:2;position:relative}.section-pad{padding:120px 80px}.section-head{font-family:var(--mono);letter-spacing:.15em;color:var(--fg-mute);text-transform:uppercase;border-bottom:1px solid var(--line-2);justify-content:space-between;align-items:flex-end;margin-bottom:60px;padding-bottom:14px;font-size:11px;display:flex}.section-head .id{color:var(--accent)}.eyebrow{font-family:var(--mono);letter-spacing:.2em;color:var(--fg-mute);text-transform:uppercase;align-items:center;gap:8px;font-size:11px;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);width:18px;height:1px}h1,h2,h3{font-family:var(--display);letter-spacing:-.04em;font-weight:600;line-height:.92}.hero{flex-direction:column;justify-content:space-between;gap:48px;min-height:100vh;padding:120px 80px 80px;display:flex;position:relative}.hero-meta{font-family:var(--mono);color:var(--fg-mute);letter-spacing:.1em;text-transform:uppercase;grid-template-columns:repeat(4,1fr);gap:40px;font-size:11px;display:grid}.hero-meta .cell .k{color:var(--fg-dim);margin-bottom:6px;font-size:9px;display:block}.hero-meta .cell .v{color:var(--fg-soft);font-size:11px}.hero-meta .cell .v.ok{color:var(--ok)}.hero-meta .cell .v.acc{color:var(--accent)}.hero-title{letter-spacing:-.06em;margin:0;font-size:clamp(80px,14vw,220px);font-weight:700;line-height:.85;position:relative}.hero-title .line{white-space:nowrap;display:block;position:relative}.hero-title .line.out{color:var(--fg)}.hero-title .line.acc{color:var(--accent);font-style:italic;font-weight:500}.hero-title .line.outline{-webkit-text-stroke:1px var(--fg-soft);color:#0000}.hero-sub{grid-template-columns:1fr auto;align-items:flex-end;gap:40px;margin-top:40px;display:grid}.hero-sub .lead{max-width:540px;font-family:var(--mono);color:var(--fg-soft);font-size:13px;line-height:1.6}.hero-sub .lead b{color:var(--accent);font-weight:500}.cta-row{flex-wrap:wrap;gap:16px;display:flex}.btn{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--fg);align-items:center;gap:12px;padding:16px 22px;font-size:11px;transition:background .3s ease-in-out,color .3s ease-in-out,border-color .3s ease-in-out;display:inline-flex;position:relative}.btn .arr{transition:transform .3s ease-in-out;display:inline-block}.btn:hover{background:var(--fg);color:var(--bg)}.btn:hover .arr{transform:translate(6px)}.btn.acc{background:var(--accent);color:var(--bg);border-color:var(--accent)}.btn.acc:hover{background:var(--fg);border-color:var(--fg);color:var(--bg)}.boot-terminal{font-family:var(--mono);color:var(--fg-soft);border:1px solid var(--line-2);background:#ffffff03;width:min(520px,100%);margin-bottom:40px;padding:18px 22px;font-size:11px;line-height:1.7}.boot-terminal .row{gap:10px;display:flex}.boot-terminal .row .tag{color:var(--accent)}.boot-terminal .row .ok{color:var(--ok)}.boot-terminal .row .dim{color:var(--fg-dim)}.boot-terminal .row .v{color:var(--fg)}.boot-cursor:after{content:"▮";color:var(--accent);margin-left:4px;animation:.9s step-end infinite blink}@keyframes blink{50%{opacity:0}}.ticker{border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);contain:paint;background:var(--bg);padding:22px 0;position:relative;overflow:hidden}.ticker-track{white-space:nowrap;will-change:transform;width:max-content;animation:48s linear infinite marquee;display:flex}.ticker:hover .ticker-track{animation-play-state:paused}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.ticker .item{font-family:var(--display);letter-spacing:-.03em;color:var(--fg);align-items:center;gap:60px;padding-right:60px;font-size:44px;font-weight:600;display:inline-flex}.ticker .item.muted{color:var(--fg-dim);-webkit-text-stroke:1px var(--fg-mute)}.ticker .item .sep{background:var(--accent);width:10px;height:10px;display:inline-block;transform:rotate(45deg)}.about{grid-template-columns:1fr 1.3fr;align-items:flex-start;gap:80px;display:grid}.about .col-l{position:sticky;top:120px}.about .col-l .id-card{border:1px solid var(--line-2);font-family:var(--mono);gap:18px;padding:24px;font-size:11px;display:grid}.about .col-l .id-card .row{justify-content:space-between;gap:20px;display:flex}.about .col-l .id-card .row .k{color:var(--fg-mute)}.about .col-l .id-card .row .v{color:var(--fg);text-align:right}.about .col-l .id-card .row .v.acc{color:var(--accent)}.about .col-l .portrait{aspect-ratio:4/5;border:1px solid var(--line-2);background:linear-gradient(45deg, transparent 49%, var(--line-2) 49%, var(--line-2) 51%, transparent 51%), linear-gradient(-45deg, transparent 49%, var(--line-2) 49%, var(--line-2) 51%, transparent 51%), repeating-linear-gradient(45deg, var(--bg-soft) 0 8px, var(--bg) 8px 16px);place-items:center;margin-top:24px;display:grid;position:relative}.about .col-l .portrait .label{font-family:var(--mono);letter-spacing:.2em;color:var(--fg-mute);border:1px solid var(--line-2);background:var(--bg);padding:8px 12px;font-size:10px}.about .col-l .portrait .crop-corner{border:1px solid var(--accent);width:18px;height:18px;position:absolute}.about .col-l .portrait .crop-corner.tl{border-bottom:0;border-right:0;top:-1px;left:-1px}.about .col-l .portrait .crop-corner.tr{border-bottom:0;border-left:0;top:-1px;right:-1px}.about .col-l .portrait .crop-corner.bl{border-top:0;border-right:0;bottom:-1px;left:-1px}.about .col-l .portrait .crop-corner.br{border-top:0;border-left:0;bottom:-1px;right:-1px}.about .col-r h2{margin-bottom:40px;font-size:clamp(48px,6vw,96px)}.about .col-r h2 em{color:var(--accent);-webkit-text-stroke:0;font-style:italic;font-weight:400}.about .col-r .lede{font-family:var(--display);color:var(--fg);max-width:56ch;margin-bottom:30px;font-size:22px;font-weight:400;line-height:1.4}.about .col-r .body{font-family:var(--mono);color:var(--fg-soft);max-width:60ch;font-size:13px;line-height:1.8}.about .col-r .body p+p{margin-top:18px}.about .col-r .stats{border-top:1px solid var(--line-2);grid-template-columns:repeat(4,1fr);margin-top:60px;display:grid}.about .col-r .stats .stat{border-right:1px solid var(--line-2);padding:24px 20px}.about .col-r .stats .stat:last-child{border-right:0}.about .col-r .stats .stat .n{font-family:var(--display);letter-spacing:-.03em;color:var(--accent);font-size:44px;font-weight:600;line-height:1}.about .col-r .stats .stat .l{font-family:var(--mono);color:var(--fg-mute);letter-spacing:.15em;text-transform:uppercase;margin-top:8px;font-size:10px}.skills-grid{border:1px solid var(--line-2);grid-template-columns:repeat(4,1fr);display:grid}.skills-grid .cell{border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2);flex-direction:column;justify-content:space-between;min-height:240px;padding:28px;transition:background .2s;display:flex;position:relative}.skills-grid .cell:nth-child(4n){border-right:0}.skills-grid .cell:nth-last-child(-n+4){border-bottom:0}.skills-grid .cell:hover{background:var(--bg-soft)}.skills-grid .cell .num{font-family:var(--mono);color:var(--fg-dim);letter-spacing:.1em;font-size:10px}.skills-grid .cell .label{font-family:var(--display);letter-spacing:-.02em;font-size:28px;font-weight:600;line-height:1.05}.skills-grid .cell .label .acc{color:var(--accent)}.skills-grid .cell .tags{font-family:var(--mono);color:var(--fg-mute);flex-wrap:wrap;gap:6px;font-size:10px;display:flex}.skills-grid .cell .tags span{border:1px solid var(--line-2);padding:3px 7px}.skills-grid .cell .glyph{font-family:var(--mono);color:var(--fg-mute);font-size:10px;position:absolute;top:24px;right:24px}.skills-detail{grid-template-columns:200px 1fr;gap:60px;margin-top:80px;display:grid}.skills-detail .label{font-family:var(--mono);color:var(--fg-mute);letter-spacing:.2em;text-transform:uppercase;font-size:11px}.skills-detail .stack-rows{gap:14px;display:grid}.skills-detail .row{font-family:var(--mono);border-bottom:1px dashed var(--line-2);grid-template-columns:200px 1fr 60px;align-items:center;gap:24px;padding-bottom:12px;font-size:12px;display:grid}.skills-detail .row .name{color:var(--fg)}.skills-detail .row .bar{background:var(--line-2);height:3px;position:relative}.skills-detail .row .bar i{background:var(--accent);width:var(--w,80%);position:absolute;top:0;bottom:0;left:0}.skills-detail .row .val{color:var(--accent);text-align:right}.projects-head{grid-template-columns:1fr 1fr;align-items:flex-end;gap:60px;margin-bottom:80px;display:grid}.projects-head h2{font-size:clamp(40px,5vw,84px)}.projects-head .copy{font-family:var(--mono);color:var(--fg-soft);max-width:50ch;font-size:13px;line-height:1.7}.projects-grid{perspective:1200px;grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.proj{aspect-ratio:4/5;border:1px solid var(--line-2);background:var(--bg);transform-style:preserve-3d;will-change:transform;flex-direction:column;justify-content:space-between;padding:22px;transition:border-color .3s;display:flex;position:relative;overflow:hidden}.proj:hover{border-color:var(--accent)}.proj .visual{opacity:.35;background:var(--bg-soft);place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.proj .visual:before{content:"";background-image:linear-gradient(var(--line-2) 1px, transparent 1px), linear-gradient(90deg, var(--line-2) 1px, transparent 1px);opacity:.4;background-size:24px 24px;position:absolute;inset:0}.proj .visual .glyph{font-family:var(--display);color:var(--fg-dim);letter-spacing:-.06em;-webkit-text-stroke:1px var(--fg-mute);-webkit-text-fill-color:transparent;font-size:140px;font-weight:700;position:relative;transform:translateZ(0)}.proj:hover .visual{opacity:.55}.proj:hover .visual .glyph{-webkit-text-stroke-color:var(--accent)}.proj .top,.proj .bot{z-index:2;position:relative}.proj .top{justify-content:space-between;align-items:flex-start;display:flex}.proj .top .num{font-family:var(--mono);color:var(--fg-mute);letter-spacing:.15em;font-size:10px}.proj .top .tag{font-family:var(--mono);border:1px solid var(--accent-line);color:var(--accent);letter-spacing:.15em;text-transform:uppercase;padding:4px 7px;font-size:9px}.proj .bot h3{font-family:var(--display);letter-spacing:-.025em;margin-bottom:12px;font-size:26px;font-weight:600;line-height:1}.proj .bot .meta{font-family:var(--mono);color:var(--fg-mute);letter-spacing:.05em;gap:16px;font-size:10px;display:flex}.proj .bot .meta b{color:var(--fg-soft);font-weight:400}.proj .bot .arrow{font-family:var(--mono);color:var(--accent);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:8px;margin-top:16px;font-size:11px;display:inline-flex}.code-window{border:1px solid var(--line-2);background:var(--bg-soft);grid-template-columns:1fr 1fr;gap:0;margin-top:80px;display:grid}.code-window .pane{min-height:380px;padding:28px 32px}.code-window .pane.l{border-right:1px solid var(--line-2);font-family:var(--mono);font-size:12px;line-height:1.8}.code-window .pane .head{font-family:var(--mono);color:var(--fg-mute);letter-spacing:.15em;text-transform:uppercase;border-bottom:1px solid var(--line-2);justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:10px;font-size:10px;display:flex}.code-window .pane .head .dots{gap:6px;display:flex}.code-window .pane .head .dots span{border:1px solid var(--fg-mute);width:8px;height:8px}.code-window .pane .head .dots span:nth-child(3){background:var(--accent);border-color:var(--accent)}.code-window .pane.r{font-family:var(--display);font-weight:500}.code-window .pane.r .pitch{color:var(--fg);margin-top:12px;font-size:22px;line-height:1.4}.code-window .pane.r .pitch em{color:var(--accent);font-style:italic;font-weight:400}.code-window .pane.r .bullets{font-family:var(--mono);color:var(--fg-soft);gap:12px;margin-top:30px;font-size:12px;display:grid}.code-window .pane.r .bullets li{gap:12px;list-style:none;display:flex}.code-window .pane.r .bullets li:before{content:"▸";color:var(--accent)}.code .kw{color:var(--accent)}.code .fn{color:var(--fg)}.code .str{color:var(--ok)}.code .com{color:var(--fg-mute);font-style:italic}.code .var{color:var(--fg-soft)}.code .num{color:var(--accent)}.code .blink:after{content:"▮";color:var(--accent);margin-left:1px;animation:.9s step-end infinite blink}.code .type-caret{vertical-align:text-bottom;width:0;display:inline-block;position:relative}.code .type-caret:after{content:"";background:var(--accent);width:8px;height:1.05em;animation:.9s step-end infinite blink;position:absolute;bottom:0;left:2px}.exp-wrap{position:relative}.exp-head{justify-content:space-between;align-items:flex-end;margin-bottom:80px;display:flex}.exp-head h2{font-size:clamp(64px,9vw,140px)}.exp-track{border-top:1px solid var(--line-2);gap:0;display:grid;position:relative}.exp-row{border-bottom:1px solid var(--line-2);grid-template-columns:160px 1fr 1fr 1fr;align-items:flex-start;gap:40px;padding:36px 0;transition:padding .3s,background .3s;display:grid;position:relative}.exp-row:hover{background:linear-gradient(90deg, var(--bg-soft), transparent);padding-left:24px}.exp-row .year{font-family:var(--mono);color:var(--accent);letter-spacing:.1em;font-size:14px;font-weight:500}.exp-row .year .span{color:var(--fg-mute);margin-top:4px;font-size:10px;display:block}.exp-row .role h4{font-family:var(--display);letter-spacing:-.02em;font-size:24px;font-weight:600;line-height:1.1}.exp-row .role .at{font-family:var(--mono);color:var(--fg-mute);letter-spacing:.1em;margin-top:6px;font-size:11px}.exp-row .desc{font-family:var(--mono);color:var(--fg-soft);font-size:12px;line-height:1.7}.exp-row .tags{font-family:var(--mono);color:var(--fg-mute);flex-wrap:wrap;align-self:flex-start;gap:6px;font-size:10px;display:flex}.exp-row .tags span{border:1px solid var(--line-2);padding:3px 7px}.footer{border-top:1px solid var(--line-2);padding:120px 80px 60px;position:relative}.footer .big{font-family:var(--display);letter-spacing:-.06em;font-size:clamp(48px,9vw,150px);font-weight:700;line-height:.9}.footer .big .acc{color:var(--accent);font-style:italic;font-weight:500}.footer .big .out{-webkit-text-stroke:1px var(--fg-soft);color:#0000}.footer-grid{border-top:1px solid var(--line-2);font-family:var(--mono);grid-template-columns:1fr 1fr 1fr 1fr;gap:40px;margin-top:80px;padding-top:40px;font-size:12px;display:grid}.footer-grid .col .k{color:var(--fg-mute);letter-spacing:.2em;text-transform:uppercase;margin-bottom:14px;font-size:10px;display:block}.footer-grid .col a{color:var(--fg-soft);padding:6px 0;display:block}.footer-grid .col a:hover{color:var(--accent)}.footer-grid .col a .arr{color:var(--fg-dim);margin-right:6px}.footer-meta{font-family:var(--mono);color:var(--fg-mute);letter-spacing:.15em;text-transform:uppercase;border-top:1px solid var(--line-2);justify-content:space-between;margin-top:60px;padding-top:24px;font-size:10px;display:flex}.footer-meta .right{gap:30px;display:flex}.footer-meta .right .ok{color:var(--ok)}.cmdk-backdrop{z-index:300;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;pointer-events:none;background:#0009;place-items:flex-start center;padding-top:14vh;transition:opacity .2s;display:grid;position:fixed;inset:0}.cmdk-backdrop.open{opacity:1;pointer-events:auto}.cmdk{background:var(--bg);border:1px solid var(--accent-line);width:min(620px,90vw);box-shadow:0 40px 80px #0009, 0 0 0 1px var(--line-2);font-family:var(--mono);transition:transform .25s;transform:translateY(20px)}.cmdk-backdrop.open .cmdk{transform:translateY(0)}.cmdk .input-row{border-bottom:1px solid var(--line-2);align-items:center;gap:12px;padding:16px 18px;display:flex}.cmdk .input-row .prompt{color:var(--accent)}.cmdk .input-row input{font-family:var(--mono);color:var(--fg);caret-color:var(--accent);background:0 0;border:none;outline:none;flex:1;font-size:14px}.cmdk .input-row .esc{border:1px solid var(--line-2);color:var(--fg-mute);letter-spacing:.1em;padding:4px 8px;font-size:10px}.cmdk .list{max-height:320px;padding:8px;overflow-y:auto}.cmdk .item{cursor:pointer;color:var(--fg-soft);justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;display:flex}.cmdk .item.sel,.cmdk .item:hover{background:var(--bg-soft);color:var(--fg)}.cmdk .item .l{align-items:center;gap:12px;display:flex}.cmdk .item .l .ico{color:var(--accent);width:18px}.cmdk .item .kbd{border:1px solid var(--line-2);color:var(--fg-mute);letter-spacing:.1em;padding:3px 6px;font-size:9px}.cmdk .foot{border-top:1px solid var(--line-2);color:var(--fg-mute);letter-spacing:.1em;justify-content:space-between;padding:10px 18px;font-size:10px;display:flex}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(20px)}.reveal.in{opacity:1;transform:translateY(0)}.split-line{display:inline-block;overflow:hidden}.split-line>span{transition:transform .8s cubic-bezier(.2,.7,.2,1);display:inline-block;transform:translateY(110%)}.reveal.in .split-line>span{transform:translateY(0)}.glitch-target{display:inline-block;position:relative}.glitch-target.glitch:before,.glitch-target.glitch:after{content:attr(data-text);pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.glitch-target.glitch:before{color:var(--accent);transform:translate(calc(2px * var(--glitch-intensity)), 0);clip-path:polygon(0 0,100% 0,100% 33%,0 33%)}.glitch-target.glitch:after{color:#00d1da;color:lab(76.0141% -49.8866 -20.4183);transform:translate(calc(-2px * var(--glitch-intensity)), 0);clip-path:polygon(0 66%,100% 66%,100% 100%,0 100%)}.char{line-height:1;display:inline-block;position:relative}.c-out{-webkit-text-stroke:1.6px var(--fg-mute);-webkit-text-fill-color:transparent;opacity:.7;margin:-.3em;padding:.3em;line-height:1;display:inline-block}.c-fill{opacity:0;padding:.3em;line-height:1;display:inline-block;position:absolute;top:-.3em;left:-.3em}.split-word{white-space:nowrap;vertical-align:top;display:inline-block}.split-wrap{vertical-align:top;display:inline-block}.hero-title,.footer .big{line-height:.92}.scroll-progress{z-index:110;pointer-events:none;background:linear-gradient(90deg, var(--bg-soft), var(--bg-soft));width:100%;height:2px;position:fixed;top:0;left:0}.scroll-progress i{height:100%;width:var(--p,0%);background:var(--accent);box-shadow:0 0 12px var(--accent), 0 0 24px var(--accent-soft);transition:width 80ms linear;display:block}.fx-scan{animation:5.2s ease-in-out infinite breathe-scan}.fx-spotlight{animation:6.4s ease-in-out infinite breathe-spot}@keyframes breathe-scan{0%,to{opacity:.7}50%{opacity:1}}@keyframes breathe-spot{0%,to{opacity:.5}50%{opacity:.85}}@media (prefers-reduced-motion:reduce){.ticker-track,.fx-scan,.fx-spotlight,.fx-grain,.agent-feed .pulse{animation:none!important}.ticker-track{will-change:auto}}.agent-feed{z-index:100;font-family:var(--mono);color:var(--fg-mute);letter-spacing:.04em;border:1px solid var(--line-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0a0ab8;width:320px;padding:0;font-size:10px;position:fixed;bottom:28px;left:28px}.agent-feed .head{border-bottom:1px solid var(--line-2);justify-content:space-between;align-items:center;padding:9px 12px;display:flex}.agent-feed .head .title{color:var(--accent);letter-spacing:.12em;align-items:center;gap:8px;font-size:9.5px;display:flex}.agent-feed .head .head-right{align-items:center;gap:10px;display:flex}.agent-feed .head .meta{color:var(--fg-dim);letter-spacing:.08em;font-size:9px}.agent-feed .toggle{font-family:var(--mono);color:var(--fg-mute);border:1px solid var(--line-2);place-items:center;width:18px;height:16px;font-size:11px;line-height:1;display:grid}.agent-feed .toggle:hover{color:var(--accent);border-color:var(--accent-line)}.agent-feed.min{width:auto}.agent-feed.min .head{border-bottom:0}.agent-feed.min .counters,.agent-feed.min .list{display:none}.agent-feed .head .pulse{background:var(--ok);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 0 0 var(--ok)}50%{opacity:.5;box-shadow:0 0 0 4px #0000}}.agent-feed .counters{border-bottom:1px solid var(--line-2);grid-template-columns:repeat(3,1fr);display:grid}.agent-feed .counters .c{border-right:1px solid var(--line-2);flex-direction:column;gap:3px;padding:8px 12px;display:flex}.agent-feed .counters .c:last-child{border-right:0}.agent-feed .counters .c .k{color:var(--fg-dim);letter-spacing:.1em;text-transform:uppercase;font-size:8.5px}.agent-feed .counters .c .v{color:var(--fg);font-variant-numeric:tabular-nums;font-size:13px}.agent-feed .counters .c .v.acc{color:var(--accent)}.agent-feed .list{gap:2px;padding:6px;display:grid}.agent-feed .line{grid-template-columns:26px 50px 1fr;align-items:baseline;gap:8px;padding:4px 6px;line-height:1.4;transition:background .3s;display:grid}.agent-feed .line.fresh{background:var(--accent-soft);animation:.5s ease-out feedIn}@keyframes feedIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.agent-feed .line .age{color:var(--fg-dim);text-align:right;font-size:9px}.agent-feed .line .tag{text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--line-2);color:var(--fg-soft);text-align:center;padding:1px 4px;font-size:9px}.agent-feed .line .tag.a-orion{color:var(--accent);border-color:var(--accent-line)}.agent-feed .line .body{color:var(--fg-soft)}.agent-feed .line .body .verb{color:var(--fg)}.agent-feed .line .body .verb.t-ok{color:var(--ok)}.agent-feed .line .body .verb.t-warn{color:var(--accent)}.agent-feed .line .body .det{color:var(--fg-mute)}@media (max-width:900px){.agent-feed{display:none}}.fx-streams{z-index:1;pointer-events:none;grid-template-columns:repeat(6,1fr);display:grid;position:fixed;inset:0}.fx-streams .stream{font-family:var(--mono);color:var(--fg-dim);writing-mode:vertical-rl;opacity:.18;letter-spacing:.4em;white-space:nowrap;text-align:center;padding:40px 0;font-size:9px;overflow:hidden}.fx-streams .stream.acc{color:var(--accent);opacity:.25}.hero-title .line .char{opacity:0;transform:translateY(100%)}.hero-title .line.shown .char{opacity:1;transform:translateY(0)}.burst{z-index:92;pointer-events:none;background:radial-gradient(circle at 50% 50%, var(--accent-soft) 0%, transparent 40%);opacity:0;mix-blend-mode:screen;position:fixed;inset:0}.burst.go{animation:.7s ease-out forwards burstAnim}@keyframes burstAnim{0%{opacity:0}20%{opacity:1}to{opacity:0}}@media (max-width:900px){.section-pad{padding:80px 24px}.hero{gap:36px;min-height:auto;padding:100px 24px 60px}.footer{padding:80px 24px 40px}.hero-meta{grid-template-columns:repeat(2,1fr);gap:20px}.hero-sub{grid-template-columns:1fr;gap:28px}.cta-row{flex-wrap:wrap;gap:12px}.cta-row .btn{flex:160px;justify-content:center}.boot-terminal{width:100%;margin-bottom:0}.about{grid-template-columns:1fr;gap:40px}.about .col-l{position:relative;top:0}.about .col-r .stats,.skills-grid{grid-template-columns:repeat(2,1fr)}.skills-grid .cell:nth-child(4n){border-right:1px solid var(--line-2)}.skills-grid .cell:nth-child(2n){border-right:0}.projects-grid,.projects-head{grid-template-columns:1fr}.exp-row{grid-template-columns:1fr;gap:12px}.code-window{grid-template-columns:1fr}.code-window .pane.l{border-right:0;border-bottom:1px solid var(--line-2)}.footer-grid{grid-template-columns:repeat(2,1fr)}.nav-top .links,.side-rail,.side-rail-right{display:none}}@media (max-width:600px){.about .col-r .stats .stat{padding:20px 14px}.about .col-r .stats .stat:nth-child(2n){border-right:0}.about .col-r .stats .stat:nth-child(-n+2){border-bottom:1px solid var(--line-2)}.about .col-r .stats .stat .n{font-size:34px}.skills-grid{grid-template-columns:1fr}.skills-grid .cell{border-right:0;min-height:auto;padding:22px}.skills-grid .cell:nth-child(4n){border-right:0}.skills-grid .cell:nth-last-child(-n+4){border-bottom:1px solid var(--line-2)}.skills-grid .cell:last-child{border-bottom:0}.skills-detail{grid-template-columns:1fr;gap:24px;margin-top:56px}.skills-detail .row{grid-template-columns:1fr auto;grid-template-areas:"name val""bar bar";gap:8px 12px}.skills-detail .row .name{grid-area:name}.skills-detail .row .val{grid-area:val}.skills-detail .row .bar{grid-area:bar;height:4px}}:root{--max-w:1600px}.hero,.section-pad,.footer{max-width:var(--max-w);margin-inline:auto}.wechat-reach{display:block;position:relative}.wechat-pop{z-index:200;background:var(--bg);border:1px solid var(--accent-line);width:232px;box-shadow:0 30px 60px #0009, 0 0 0 1px var(--line-2);font-family:var(--mono);opacity:0;pointer-events:none;padding:14px;transition:opacity .2s,transform .2s;position:absolute;bottom:calc(100% + 12px);left:0;transform:translateY(8px)}.wechat-pop.open{opacity:1;pointer-events:auto;transform:translateY(0)}.wechat-pop:after{content:"";border:6px solid #0000;border-top-color:var(--accent-line);position:absolute;top:100%;left:20px}.wechat-pop-bar{letter-spacing:.18em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;padding-bottom:12px;font-size:10px;display:flex}.wechat-pop-bar .dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent);border-radius:50%}.wechat-qr{background:var(--fg);padding:10px;line-height:0;display:block}.wechat-qr svg{width:100%;height:auto;display:block}.wechat-pop-foot{text-align:left;border-top:1px solid var(--line-2);width:100%;font-family:var(--mono);letter-spacing:.1em;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding-top:12px;font-size:10px;display:flex}.wechat-pop-foot .k{color:var(--fg-mute);text-transform:uppercase}.wechat-pop-foot .v{color:var(--fg-soft);transition:color .2s}.wechat-pop-foot:hover .v{color:var(--accent)}@media (max-width:720px){.wechat-pop{width:min(232px,78vw)}}@media (max-width:520px){.exp-head h2{font-size:clamp(34px,12.5vw,64px)}.footer .big{font-size:clamp(30px,11.5vw,48px)}}
