html,body{margin:0;padding:0;background:#070707}img{content-visibility:auto}section{contain:layout paint}@media(max-width:768px){.webgl canvas{transform:scale(.98)}}html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none;width:0;height:0}html:not(.is-touch),html:not(.is-touch) a,html:not(.is-touch) button,html:not(.is-touch) input,html:not(.is-touch) textarea,html:not(.is-touch) [role=button]{cursor:none}html.is-touch .nav-pill a,html.is-touch .sound,html.is-touch .socials a{min-height:44px}html.is-touch body{-webkit-overflow-scrolling:touch}html.is-touch .cursor{display:none}html.is-ios .webgl canvas,html.is-ios .loader canvas{-webkit-transform:translateZ(0);transform:translateZ(0)}html.is-firefox .loader canvas{animation:fadeInCanvas .4s ease both}@keyframes fadeInCanvas{0%{opacity:0}to{opacity:1}}html.is-reduced-motion .marquee-track{animation:none!important}html.is-reduced-motion .cursor{transition:none!important}html.is-low-power .nav-shell,html.is-low-power .sound{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#141416db!important}.github-showcase{padding-top:16vh;padding-bottom:14vh}.github-head{display:grid;grid-template-columns:1.3fr .7fr;gap:6vw;align-items:end;margin-top:7vh}.github-title{font:clamp(54px,7.2vw,112px) var(--serif);line-height:.88;letter-spacing:-.045em;margin:0}.github-title em{color:var(--acid)}.github-lead{color:var(--muted);font-size:14px;line-height:1.7;max-width:390px;border-top:1px solid var(--line);padding-top:16px}.github-profile-link{display:inline-flex;align-items:center;gap:10px;margin-top:18px;font:10px var(--mono);letter-spacing:.12em;color:var(--fg);border-bottom:1px solid rgba(167,139,250,.35);padding-bottom:8px}.github-profile-link:hover{color:var(--acid)}.github-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:8vh}.github-card{position:relative;min-height:250px;padding:30px;border:1px solid rgba(255,255,255,.09);border-radius:24px;background:linear-gradient(140deg,#ffffff0e,#ffffff03);overflow:hidden;transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .3s ease,background .3s ease}.github-card:before{content:"";position:absolute;width:180px;height:180px;right:-40px;top:-65px;border-radius:50%;background:radial-gradient(circle,rgba(167,139,250,.18),transparent 68%);pointer-events:none}.github-card:hover{transform:translateY(-5px);border-color:#a78bfa47;background:linear-gradient(140deg,#a78bfa14,#ffffff05)}.github-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.github-index,.github-kind{font:10px var(--mono);letter-spacing:.12em;color:var(--muted)}.github-kind{color:var(--acid)}.github-name{position:relative;z-index:1;margin:38px 0 14px;font:clamp(28px,3vw,46px) var(--serif);line-height:.94;letter-spacing:-.025em}.github-summary{position:relative;z-index:1;max-width:560px;color:var(--muted);font-size:13px;line-height:1.6}.github-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px}.github-tag{font:9px var(--mono);letter-spacing:.06em;color:var(--muted);border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:7px 9px}.github-open{position:absolute;right:26px;bottom:24px;font:10px var(--mono);letter-spacing:.1em;color:var(--fg);opacity:.75;transition:opacity .25s,color .25s}.github-card:hover .github-open{opacity:1;color:var(--acid)}.github-strip{display:grid;grid-template-columns:.55fr 1.2fr auto;align-items:center;gap:20px;margin-top:16px;padding:18px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.github-strip span,.github-strip strong,.github-strip a{font:10px var(--mono);letter-spacing:.1em}.github-strip span{color:var(--muted)}.github-strip strong{font-weight:400;color:var(--fg)}.github-strip a{color:var(--acid);justify-self:end}.github-strip a:hover{text-decoration:underline}.blog-showcase{padding-top:14vh;padding-bottom:16vh}.blog-head{display:grid;grid-template-columns:1fr .8fr;gap:8vw;align-items:end;margin-top:7vh}.blog-title{font:clamp(58px,8vw,124px) var(--serif);line-height:.82;letter-spacing:-.05em;margin:0}.blog-title em{color:var(--acid)}.blog-lead{color:var(--muted);font-size:14px;line-height:1.7;max-width:430px}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:8vh}.blog-card{display:flex;flex-direction:column;min-height:390px;padding:26px;border:1px solid rgba(255,255,255,.09);border-radius:24px;background:#ffffff07;transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .3s ease,background .3s ease}.blog-card:hover{transform:translateY(-5px);border-color:#a78bfa4d;background:#a78bfa0e}.blog-meta{display:flex;justify-content:space-between;align-items:center;gap:10px}.blog-kicker,.blog-read{font:9px var(--mono);letter-spacing:.12em;color:var(--muted)}.blog-kicker{color:var(--acid)}.blog-card h3{margin:54px 0 16px;font:clamp(28px,2.7vw,42px) var(--serif);line-height:.94;letter-spacing:-.025em}.blog-excerpt{margin:0;color:var(--muted);font-size:13px;line-height:1.7}.blog-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:28px;border-top:1px solid var(--line)}.blog-tags{display:flex;flex-wrap:wrap;gap:6px}.blog-tag{font:8px var(--mono);letter-spacing:.08em;color:var(--muted);padding:6px 8px;border:1px solid rgba(255,255,255,.1);border-radius:999px}.blog-read-link{flex:0 0 auto;font:9px var(--mono);letter-spacing:.1em;color:var(--fg)}.blog-card:hover .blog-read-link{color:var(--acid)}.blog-more{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:16px;padding:18px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.blog-more span{font:10px var(--mono);letter-spacing:.12em;color:var(--muted)}.blog-more a{font:10px var(--mono);letter-spacing:.1em;color:var(--acid)}.blog-page,.article-page{position:relative;z-index:5;max-width:1180px;margin:0 auto;padding:11vh 6vw 12vh}.blog-page .page-kicker,.article-page .page-kicker{font:10px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.blog-page h1{margin:7vh 0 4vh;max-width:940px;font:clamp(64px,10vw,142px) var(--serif);line-height:.82;letter-spacing:-.05em}.blog-page h1 em,.article-page h1 em{color:var(--acid)}.blog-page-intro{max-width:620px;color:var(--muted);font-size:15px;line-height:1.75}.blog-page-list{display:grid;gap:14px;margin-top:8vh}.blog-page-card{display:grid;grid-template-columns:150px 1fr 120px;gap:24px;align-items:center;padding:24px 0;border-top:1px solid var(--line)}.blog-page-card:last-child{border-bottom:1px solid var(--line)}.blog-page-card .num,.blog-page-card .read-time{font:9px var(--mono);letter-spacing:.12em;color:var(--muted)}.blog-page-card h2{margin:0 0 10px;font:clamp(30px,4vw,54px) var(--serif);line-height:.92;letter-spacing:-.03em}.blog-page-card p{margin:0;max-width:740px;color:var(--muted);font-size:13px;line-height:1.7}.blog-page-card a{display:inline-block}.blog-page-card a:hover h2{color:var(--acid)}.blog-back{display:inline-flex;margin-top:8vh;font:9px var(--mono);letter-spacing:.12em;color:var(--acid)}.article-page{max-width:960px}.article-top{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-top:2vh}.article-top span{font:9px var(--mono);letter-spacing:.12em;color:var(--muted)}.article-page h1{margin:8vh 0 3vh;max-width:900px;font:clamp(54px,8vw,108px) var(--serif);line-height:.86;letter-spacing:-.045em}.article-deck{max-width:720px;color:var(--muted);font-size:16px;line-height:1.8}.article-body{max-width:760px;margin-top:8vh}.article-body p{margin:0 0 28px;font-size:16px;line-height:1.9;color:#f3f0e8d1}.article-body p:first-child:first-letter{float:left;font:54px var(--serif);line-height:.8;padding:7px 10px 0 0;color:var(--acid)}.article-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:6vh}.article-tag{font:9px var(--mono);letter-spacing:.08em;color:var(--muted);border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:7px 9px}.article-cta{margin-top:9vh;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:18px}.article-cta p{margin:0;color:var(--muted);font-size:13px}.article-cta a{flex:0 0 auto;padding:11px 15px;border:1px solid rgba(167,139,250,.35);border-radius:999px;font:9px var(--mono);letter-spacing:.1em;color:var(--acid)}.article-cta a:hover{background:#a78bfa14}@media(max-width:900px){.github-head,.blog-head{grid-template-columns:1fr;gap:5vh}.github-grid{grid-template-columns:1fr}.github-strip{grid-template-columns:1fr;align-items:start}.github-strip a{justify-self:start}.blog-grid{grid-template-columns:1fr}.blog-card{min-height:330px}.blog-page-card{grid-template-columns:1fr;gap:12px}.blog-page-card .read-time{display:none}.article-top,.article-cta{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.github-showcase,.blog-showcase{padding-top:11vh;padding-bottom:12vh}.github-head,.blog-head{margin-top:5vh}.github-card{min-height:280px;padding:24px}.github-name{margin-top:42px}.blog-card{padding:22px}.blog-page,.article-page{padding-left:6vw;padding-right:6vw}.blog-page h1{margin-top:5vh}.article-page h1{margin-top:6vh}.article-body p{font-size:15px;line-height:1.85}}.glass-zone{position:relative;isolation:isolate}.glass-zone:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 20% 15%,rgba(167,139,250,.16),transparent 35%),radial-gradient(circle at 85% 45%,rgba(255,255,255,.07),transparent 32%),#ffffff05;backdrop-filter:blur(10px) saturate(125%);-webkit-backdrop-filter:blur(10px) saturate(125%)}.glass-zone .section,.glass-zone .projects,.glass-zone .contact{position:relative}.glass-zone .section:before,.glass-zone .projects:before,.glass-zone .contact:before{content:"";position:absolute;inset:4vh 3vw;z-index:-1;border-radius:42px;background:linear-gradient(135deg,#ffffff13,#ffffff03);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px #ffffff1f,0 35px 100px #00000059}footer{position:relative;z-index:10;background:#0707078c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:0;overflow:hidden}.wheel-node{color:#f3f0e8d1;padding:8px 12px;border-radius:999px;background:linear-gradient(135deg,#0a0a0e9e,#0a0a0e47);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);text-shadow:0 0 12px rgba(0,0,0,.95),0 2px 8px rgba(0,0,0,.85);transition:.35s ease}.wheel-node:hover{color:#fff;background:#a78bfa24;border-color:#a78bfa59;box-shadow:0 0 25px #a78bfa2e}.skills-wheel{filter:drop-shadow(0 0 40px rgba(0,0,0,.45))}.skills-wheel:before{content:"";position:absolute;inset:10%;border-radius:50%;background:radial-gradient(circle,rgba(0,0,0,.18),transparent 65%);pointer-events:none;z-index:-1}::selection{background:var(--acid);color:#09090b}.nav-shell{transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease}.nav-shell:after{content:"";position:absolute;left:12%;right:12%;bottom:-3px;height:8px;border-radius:50%;background:radial-gradient(circle,rgba(167,139,250,.24),transparent 68%);filter:blur(8px);opacity:.45;pointer-events:none}.nav-pill a:focus-visible,.brand:focus-visible,.sound:focus-visible,.loader-sound:focus-visible{outline:1px solid var(--acid);outline-offset:3px}.nav-pill a.active .nav-icon{filter:drop-shadow(0 0 7px rgba(167,139,250,.38))}.hero-content,.section,.marquee,.contact,footer{will-change:transform}@media(max-width:600px){.nav{padding:10px 8px}.nav-shell{width:100%;justify-content:center;padding:6px;gap:3px}.brand{padding-left:4px;padding-right:3px}.brand-mark{width:25px;height:25px}.nav-pill{gap:0}.nav-pill a{height:36px;padding:0 8px}.active-pill{height:36px}.nav-icon{width:15px;height:15px}.hero-title{letter-spacing:-.065em}.section{padding-top:11vh;padding-bottom:11vh}.projects{padding-top:13vh}}.hero-title .accent,.giant em{color:var(--acid)}.contact{min-height:120svh!important;display:grid!important;grid-template-columns:.85fr 1fr!important;gap:5vw!important;align-items:start!important;padding-top:12vh!important;padding-bottom:4vh!important}.contact-left{display:flex;flex-direction:column}.contact-title{font-size:clamp(64px,7vw,110px)!important;line-height:.86!important;margin:3vh 0!important}.contact-title span{margin-left:4vw!important}.contact-info{max-width:420px}.contact-card{margin-top:3vh!important;padding:0!important;background:transparent!important;border:0!important;backdrop-filter:none!important}.contact-card-row{height:72px!important;margin-bottom:10px!important;padding:0 18px!important;align-items:center;display:flex!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:16px!important;background:#ffffff09!important}.contact-card-row span:last-child{color:var(--fg)}.social-title{margin-top:30px;font:11px var(--mono);letter-spacing:.16em;color:var(--muted)}.socials{display:flex;gap:12px;margin-top:16px}.socials a{width:52px;height:52px;border:1px solid rgba(255,255,255,.12);border-radius:14px;display:grid;place-items:center;background:#ffffff0a;color:var(--acid);font:14px var(--mono)}.contact-form{height:fit-content;margin-top:4vh!important;padding:38px!important;border-radius:34px!important}.contact-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form .form-grid input{margin:0}.contact-form input,.contact-form textarea{margin-bottom:14px!important}.contact-bottom{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:30px!important;padding:38px!important;margin-top:2vh;border:1px solid rgba(255,255,255,.12);border-radius:30px;background:#ffffff09}@media(max-width:900px){.contact{display:flex!important}.contact-bottom{display:flex!important;flex-direction:column!important}.contact-form .form-grid{grid-template-columns:1fr}}:root{--bg:#070707;--fg:#f3f0e8;--muted:#99978f;--acid:#a78bfa;--line:rgba(243,240,232,.13);--serif:"DM Serif Display",serif;--sans:"DM Sans",sans-serif;--mono:"Space Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:auto;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--sans);overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0}.noise{position:fixed;inset:0;z-index:60;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}.cursor{position:fixed;z-index:100;left:0;top:0;width:14px;height:14px;border:1px solid var(--acid);border-radius:50%;pointer-events:none;mix-blend-mode:difference;transform:translate(-50%,-50%);opacity:0;transition:width .25s,height .25s,background .25s}.cursor.big{width:54px;height:54px;background:var(--acid);mix-blend-mode:normal;opacity:.88}.loader{position:fixed;inset:0;z-index:200;background:#070707;overflow:hidden;opacity:1;visibility:visible;transition:opacity 1.15s cubic-bezier(.22,1,.36,1),visibility 1.15s}.loader.hide{opacity:0;visibility:hidden;pointer-events:none}.loader canvas{position:absolute;inset:0;width:100%;height:100%;display:block}#loader-vignette{position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,transparent 35%,rgba(7,7,7,.55) 75%,rgba(7,7,7,.92) 100%);pointer-events:none;z-index:5}body.is-loading .nav,body.is-loading .hero-content,body.is-loading footer,body.is-loading .section,body.is-loading .marquee{opacity:0;visibility:hidden;pointer-events:none}body.is-loading{overflow:hidden}.nav,.hero-content{transition:none}.nav{position:fixed;inset:0 0 auto;z-index:70;display:flex;justify-content:center;align-items:center;padding:16px 18px;pointer-events:none}.nav>*{pointer-events:auto}.nav-shell{position:relative;display:flex;align-items:center;gap:8px;padding:7px;border-radius:999px;background:#1c1c1e75;backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%);border:1px solid rgba(255,255,255,.16);box-shadow:0 24px 70px #00000047,0 8px 24px #00000038,inset 0 1px #ffffff38,inset 0 -1px #ffffff0d;overflow:hidden}.nav-shell:before{content:"";position:absolute;inset:1px 1px auto;height:46%;border-radius:999px 999px 24px 24px;background:linear-gradient(180deg,rgba(255,255,255,.2),transparent);pointer-events:none}.nav-glare{position:absolute;inset:0;border-radius:999px;pointer-events:none;background:radial-gradient(circle 120px at var(--navx,50%) var(--navy,50%),rgba(255,255,255,.22),transparent 72%);mix-blend-mode:screen;opacity:0;transition:opacity .25s ease}.nav-shell:hover .nav-glare{opacity:1}.brand{display:flex;align-items:center;gap:9px;padding:0 10px 0 7px;font:10px var(--mono);letter-spacing:.14em;white-space:nowrap;position:relative;z-index:4}.brand-dot{width:9px;height:9px;background:var(--acid);border-radius:50%;box-shadow:0 0 20px #a78bfabf,0 0 42px #a78bfa29;animation:brandPulse 2.2s ease-in-out infinite}.brand-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.22),rgba(255,255,255,.02) 55%,transparent 70%);font:11px var(--mono);color:var(--fg);box-shadow:inset 0 1px #ffffff38}.nav-pill{position:relative;display:flex;gap:3px;padding:0;z-index:3}.active-pill{position:absolute;left:0;top:0;height:40px;border-radius:999px;background:#fffffff0;box-shadow:0 6px 20px #00000038,inset 0 1px 1px #ffffffe6;transition:transform .5s cubic-bezier(.34,1.2,.64,1),width .5s cubic-bezier(.34,1.2,.64,1)}.nav-pill a{position:relative;display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 13px;border-radius:999px;color:#ffffff8a;font-size:10px;font-weight:600;letter-spacing:.02em;z-index:2;transition:color .28s ease,transform .2s ease;white-space:nowrap}.nav-pill a.active,.nav-pill a:hover{color:#070707}.nav-pill a:active{transform:scale(.94)}.nav-icon{width:14px;height:14px;display:block;opacity:.82;transition:transform .45s cubic-bezier(.34,1.2,.64,1),opacity .25s ease}.nav-pill a:hover .nav-icon{transform:translateY(-1px) rotate(-7deg) scale(1.06);opacity:1}.nav-meta{display:flex;align-items:center;gap:8px;padding:0 7px 0 4px;font:9px var(--mono);color:#ffffff6b;letter-spacing:.12em;white-space:nowrap;position:relative;z-index:3}.nav-pulse{width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 12px #ffffffa6;animation:brandPulse 1.8s ease-in-out infinite}.sound{position:relative!important;right:auto!important;bottom:auto!important;margin-left:2px;padding:8px 10px!important;z-index:4!important}@keyframes brandPulse{0%,to{transform:scale(.82);opacity:.55}50%{transform:scale(1.14);opacity:1}}.hero{height:125svh;position:relative;overflow:hidden}.webgl{position:fixed;inset:0;z-index:0;pointer-events:none}.hero-content{position:relative;z-index:5;height:100%;display:flex;align-items:flex-end;padding:0 5vw 8vh}.eyebrow{font:10px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.hero-title{font:clamp(74px,15vw,220px) var(--serif);font-weight:400;letter-spacing:-.055em;line-height:.78;margin:14px 0 0;max-width:1100px}.hero-title span{display:block}.hero-title .accent{color:var(--acid);font-style:italic;margin-left:7vw}.hero-note{position:absolute;right:5vw;bottom:8vh;max-width:290px;color:var(--muted);font-size:13px;line-height:1.5}.hero-note strong{color:var(--fg);font-weight:500}.scroll-cue{position:absolute;left:5vw;top:50%;font:10px var(--mono);color:var(--muted);letter-spacing:.18em;transform:rotate(-90deg) translate(-50%);transform-origin:left center}.scroll-cue:after{content:"";display:inline-block;width:50px;height:1px;background:var(--fg);vertical-align:middle;margin-left:10px;opacity:.6}.section{position:relative;z-index:5;padding:18vh 6vw}.section-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:end}.big-copy{font-size:clamp(30px,4.3vw,65px);line-height:1;max-width:850px}.big-copy em{font-family:var(--serif);font-weight:400}.side-copy{color:var(--muted);font-size:14px;line-height:1.6;border-top:1px solid var(--line);padding-top:16px}.side-copy strong{color:var(--fg);font-weight:500}.line-reveal{overflow:hidden}.line-reveal>span{display:block}.marquee{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);white-space:nowrap;padding:14px 0;position:relative;z-index:5}.marquee-track{display:inline-flex;align-items:center;gap:28px;animation:marq 26s linear infinite}.marquee span{font:10px var(--mono);letter-spacing:.15em;color:var(--muted)}.marquee b{width:5px;height:5px;background:var(--acid);border-radius:50%}@keyframes marq{to{transform:translate(-50%)}}.sticky-stage{height:220vh;position:relative;z-index:5}.sticky{position:sticky;top:0;height:100svh;display:grid;align-items:center;overflow:hidden}.skills-left{padding:0 6vw;position:relative;z-index:3}.giant{font:clamp(72px,13vw,180px) var(--serif);line-height:.78;letter-spacing:-.05em}.giant em{color:var(--acid)}.skills-wheel{position:absolute;right:-8vw;top:50%;transform:translateY(-50%);width:min(64vw,820px);aspect-ratio:1}.wheel-line{position:absolute;inset:0;border:1px solid var(--line);border-radius:50%}.wheel-line.i2{inset:10%;border-color:#a78bfa1c}.wheel-line.i3{inset:24%;border-color:#f3f0e814}.wheel-center{position:absolute;inset:38%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f4f0ff 0,#8b5cf6 15%,#211b35 42%,#080908 73%);box-shadow:0 0 100px #a78bfa26}.wheel-node{position:absolute;left:50%;top:50%;font:10px var(--mono);color:var(--muted);white-space:nowrap;display:flex;align-items:center;gap:8px;transform-origin:0 0}.wheel-node b{width:7px;height:7px;border-radius:50%;background:var(--acid);box-shadow:0 0 18px #a78bfa73}.wn1{transform:rotate(0) translate(310px)}.wn2{transform:rotate(60deg) translate(310px)}.wn3{transform:rotate(120deg) translate(310px)}.wn4{transform:rotate(180deg) translate(310px)}.wn5{transform:rotate(240deg) translate(310px)}.wn6{transform:rotate(300deg) translate(310px)}.projects{background:var(--fg);color:#0a0a09;padding-top:18vh}.projects .eyebrow{color:#6f706a}.projects-wrap{margin-top:7vh}.project-list{border-top:1px solid rgba(10,10,9,.18)}.project-row{display:grid;grid-template-columns:80px 1fr 150px;gap:22px;align-items:center;border-bottom:1px solid rgba(10,10,9,.18);padding:22px 0;position:relative;overflow:hidden}.project-row:before{content:"";position:absolute;inset:0;background:#a78bfa;transform:translateY(102%);transition:transform .45s cubic-bezier(.22,1,.36,1)}.project-row:hover:before{transform:translateY(0)}.project-index,.project-type{position:relative;z-index:2;font:10px var(--mono);letter-spacing:.12em}.project-type{text-align:right}.project-name{position:relative;z-index:2;font:clamp(32px,5vw,72px) var(--serif);line-height:.9}.project-row:hover .project-name{transform:translate(10px);transition:transform .45s cubic-bezier(.22,1,.36,1)}.project-art{position:absolute;right:10%;top:50%;width:180px;height:120px;transform:translateY(-50%) rotate(-5deg) scale(.8);opacity:0;pointer-events:none;transition:.45s cubic-bezier(.22,1,.36,1);background:radial-gradient(circle at 30% 30%,#efffaa 0,#9bb623 20%,#232807 48%,transparent 68%)}.project-row:hover .project-art{opacity:1;transform:translateY(-50%) rotate(4deg) scale(1)}.story{padding-top:20vh}.story-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}.story-quote{font:clamp(52px,7vw,105px) var(--serif);line-height:.85}.story-quote em{color:var(--acid)}.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.fact{border-top:1px solid var(--line);padding-top:13px}.fact .num{font:clamp(54px,7vw,100px) var(--serif)}.fact p{color:var(--muted);font-size:12px;line-height:1.5}.distort-text{position:relative;display:inline-block;isolation:isolate;--dx:0px;--dy:0px;--skew:0deg;--rgbx:0px}.distort-text:before,.distort-text:after{content:attr(data-text);position:absolute;inset:0;pointer-events:none;opacity:0;white-space:inherit;font:inherit;letter-spacing:inherit;line-height:inherit}.distort-text:before{color:#ffffffb8;transform:translate3d(calc(var(--dx) * -1),var(--dy),0) skew(calc(var(--skew) * -1));mix-blend-mode:screen;clip-path:inset(0 0 48% 0)}.distort-text:after{color:#c4b5fd94;transform:translate3d(var(--rgbx),calc(var(--dy) * -1),0) skew(var(--skew));mix-blend-mode:multiply;clip-path:inset(52% 0 0 0)}.distort-text.distorting:before,.distort-text.distorting:after{opacity:.34}.project-name.distort-text:before,.project-name.distort-text:after{opacity:0}.project-row:hover .project-name.distort-text:before,.project-row:hover .project-name.distort-text:after{opacity:.28}.hero-title .distort-text{filter:drop-shadow(0 0 26px rgba(216,255,71,.08))}.distort-scan{position:absolute;left:0;right:0;height:2px;top:50%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);opacity:0;pointer-events:none;transform:translateY(-50%) translateY(var(--scan,0px));mix-blend-mode:screen}.distort-text.distorting+.distort-scan{opacity:.2}@media(max-width:900px){.distort-text:before,.distort-text:after{opacity:0!important}.distort-text.distorting{transform:none!important}}.mobile-only{display:none}.sound{position:fixed;right:18px;bottom:18px;z-index:75;padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:#0707078c;backdrop-filter:blur(14px);font:10px var(--mono);color:var(--muted)}.sound.on{color:var(--acid);border-color:#a78bfa59}@media(max-width:900px){.nav-shell{max-width:calc(100vw - 20px)}.brand{padding-right:5px}.brand>span:last-child{display:none}.nav-pill,.nav-meta{display:none}.mobile-only{display:block}.sound{display:inline-flex!important;right:14px;bottom:14px}.hero-content{padding:0 6vw 7vh}.hero-title{font-size:clamp(64px,17vw,120px)}.hero-note{position:static;max-width:330px;margin:0 0 0 auto;padding-bottom:0;transform:translateY(-2vh)}.hero-content{display:block;padding-top:42vh}.scroll-cue{display:none}.section{padding:14vh 6vw}.section-grid,.story-grid{grid-template-columns:1fr;gap:8vh}.skills-wheel{right:-25vw;width:120vw;opacity:.72}.skills-left{padding:0 6vw}.project-row{grid-template-columns:42px 1fr}.project-type,.project-art{display:none}.contact-title{font-size:clamp(64px,17vw,120px)}.contact-bottom{flex-direction:column}.nav{left:14px;right:14px}.brand{font-size:10px}.facts{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
