@font-face{font-family:Syne;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ab624315db63c58d-s.1487dfs7-.~d~.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Syne;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e94b8ab81811a983-s.02fsf_1p_avhz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Syne;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Syne;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ab624315db63c58d-s.1487dfs7-.~d~.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Syne;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e94b8ab81811a983-s.02fsf_1p_avhz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Syne;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Syne;font-style:normal;font-weight:800;font-display:swap;src:url(../media/ab624315db63c58d-s.1487dfs7-.~d~.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Syne;font-style:normal;font-weight:800;font-display:swap;src:url(../media/e94b8ab81811a983-s.02fsf_1p_avhz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Syne;font-style:normal;font-weight:800;font-display:swap;src:url(../media/0c795a286deabae8-s.p.14tvuu96~wkr0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Syne Fallback;src:local(Arial);ascent-override:93.93%;descent-override:27.93%;line-gap-override:0.0%;size-adjust:98.47%}.syne_2de5eeb2-module__thR7Ua__className{font-family:Syne,Syne Fallback;font-style:normal}.syne_2de5eeb2-module__thR7Ua__variable{--font-syne:"Syne", "Syne Fallback"}
@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b12e986493c137cf-s.0unhoe1q6hp6-.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/36363bfb06833f56-s.p.0-pny06~-x26a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b2fa3ef4ca165ab4-s.0cnogfwvi2_o-.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a73419dd2ba2d841-s.p.0x-0vqtj_fzf1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono Fallback;src:local(Arial);ascent-override:73.71%;descent-override:23.03%;line-gap-override:0.0%;size-adjust:134.59%}.dm_mono_4cbaa3a1-module__vJ39pq__className{font-family:DM Mono,DM Mono Fallback;font-style:normal}.dm_mono_4cbaa3a1-module__vJ39pq__variable{--font-dm-mono:"DM Mono", "DM Mono Fallback"}
.Navigation{z-index:999;background-color:#0000;border-bottom:0;justify-content:space-between;align-items:center;width:100%;height:60px;padding:20px 48px;transition:background-color .1s,border-bottom .1s;display:flex;position:fixed;top:0;left:0;right:0}.Navigation--scrolled{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background-color:#0a0c10d9}.Navigation:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffffbf 50%,#0000);width:120px;height:1px;animation:7s linear infinite nav-shooting-star;position:absolute;bottom:-1px;left:0}@media (max-width:768px){.Navigation{padding:0 16px}}@keyframes nav-shooting-star{0%,88%{opacity:0;transform:translate(-120px)}90%{opacity:1}to{opacity:0;transform:translate(calc(100vw + 120px))}}.NavLinks__list{gap:2rem;font-size:clamp(11px,.9vw,13px);list-style-type:none;display:flex}.NavLinks__link{color:var(--text);text-transform:uppercase;text-decoration:none;transition:color .3s ease-in-out}.NavLinks__link:hover{color:var(--accent)}.NavLogo{font-family:var(--font-syne);color:var(--text);letter-spacing:-.5px;font-size:18px;font-weight:800;text-decoration:none;transition:transform .3s;position:relative}.NavLogo>span{color:var(--accent)}.NavLogo:after{content:"";background-color:var(--text);transform-origin:0;width:100%;height:2px;transition:transform .3s;position:absolute;bottom:-6px;left:0;transform:scaleX(0)}.NavLogo:hover:after{transform:scaleX(1)}.NavigationMobile{z-index:998;border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background-color:#0a0c10d9;border-radius:6px;padding:36px;display:none;position:fixed;top:60px;right:8px}.NavigationMobile__list{flex-direction:column;align-items:center;gap:2rem;font-size:clamp(13px,.9vw,15px);list-style-type:none;display:flex}.NavigationMobile__link{color:var(--muted);text-transform:uppercase;cursor:pointer;-webkit-tap-highlight-color:#3ef0a440;border-radius:4px;padding:8px;text-decoration:none;transition:color .3s ease-in-out}.NavigationMobile__link:hover{color:var(--surface);background-color:var(--accent)}@media (max-width:768px){.NavigationMobile{display:block}}.HamburgerIcon{border:1px solid var(--border2);cursor:pointer;background:0 0;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:40px;height:40px;transition:border-color .2s;display:flex;position:relative}.HamburgerIcon:hover{border-color:var(--accent)}.HamburgerIcon__bar{background:var(--text);transform-origin:50%;border-radius:2px;width:18px;height:2px;transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .2s,width .3s;display:block}.HamburgerIcon--open{border-color:var(--accent)}.HamburgerIcon--open .HamburgerIcon__bar:first-child{transform:translateY(4px)rotate(45deg)}.HamburgerIcon--open .HamburgerIcon__bar:nth-child(2){transform:translateY(-4px)rotate(-45deg)}.Box{max-width:1200px;margin:0 auto}.Hero{grid-template-columns:1fr 1fr;place-items:center;width:100%;min-height:100vh;padding:120px 48px 80px;display:grid;position:relative;overflow:hidden}.Hero:before{content:"";background-image:linear-gradient(var(--border) 1px, transparent 1px),linear-gradient(90deg, var(--border) 1px, transparent 1px);opacity:.3;background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80%,#000 0%,#0000 100% 100%);mask-image:radial-gradient(80% 80%,#000 0%,#0000 100% 100%)}.Hero__content{z-index:1;width:100%;position:relative}.Hero__content-name{letter-spacing:-2px;color:var(--text);text-shadow:0 0 12px #d4dbe826;margin-bottom:20px;font-size:clamp(42px,5vw,72px);font-weight:800;line-height:1.05}.Hero__content-name>span{color:var(--accent);text-shadow:0 0 32px #3ef0a426}.Hero__content-sub{color:var(--muted);max-width:420px;margin-bottom:40px;font-size:15px;line-height:1.8}.Hero__content-cta{gap:16px;display:flex}.Hero__code{justify-items:center}@media (min-width:1025px){.Hero:after{content:"";pointer-events:none;opacity:.045;will-change:transform;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:300px 300px;width:200%;height:200%;animation:.6s step-end infinite grain;position:absolute;inset:-50%}}@media (max-width:1024px){.Hero{grid-template-columns:1fr;padding:0 16px 80px}.Hero .Orb{animation:none!important}.Hero__content{text-align:center;justify-items:center}.Hero__content-name{text-align:center}.Hero__content-cta{justify-content:center}.Hero__code{align-self:start;width:80%}}@media (max-width:768px){.Hero{grid-template-columns:1fr;padding:120px 8px 80px}.Hero__code{width:100%}}@media (max-width:480px){.Hero{min-height:100vh}.Hero__code{display:none}}@media (min-width:1025px){@keyframes grain{0%{transform:translate(0)}10%{transform:translate(-2%,-3%)}20%{transform:translate(3%,2%)}30%{transform:translate(-1%,4%)}40%{transform:translate(4%,-1%)}50%{transform:translate(-3%,2%)}60%{transform:translate(2%,-4%)}70%{transform:translate(-4%,3%)}80%{transform:translate(3%,-2%)}90%{transform:translate(-2%,4%)}}}.Orb{position:absolute}.Button{min-width:2.5rem;height:2.5rem;color:var(--text);will-change:transform;cursor:pointer;background-color:#000;border:none;outline:none;justify-content:center;align-items:center;padding-inline:2.5rem;font-size:13px;line-height:1.25rem;text-decoration:none;transition:background-color .3s ease-in-out,transform .4s cubic-bezier(.25,.46,.45,.94),box-shadow .3s ease-in-out;display:inline-flex}.Button__arrow{margin-left:8px;font-size:16px}.fullWidth{width:100%!important}.disabled,.loading{opacity:.5;cursor:not-allowed}.colors-primary{background-color:var(--accent);color:var(--muted)}.colors-secondary{color:#fff;background-color:#0ff}.colors-success{color:#fff;background-color:green}.colors-warning{color:#fff;background-color:orange}.colors-danger{color:#fff;background-color:red}.variants-solid{color:var(--surface);font-weight:500}.variants-solid:hover{box-shadow:0 8px 32px #3ef0a44d}.variants-outline{color:var(--text);border:1px solid var(--border2);background-color:#0000;transition:transform .4s cubic-bezier(.25,.46,.45,.94),border .3s ease-in-out,color .3s ease-in-out}.variants-outline:hover{color:var(--accent);border:1px solid var(--accent)}.variants-ghost,.variants-plain{color:#000;background-color:#0000;border:none}.variants-plain:hover{background-color:#0000}.radius-none{border-radius:0}.radius-small{border-radius:4px}.radius-medium{border-radius:8px}.radius-large{border-radius:12px}.radius-full{border-radius:9999px}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.CodeCard{background-color:var(--surface);border:1px solid var(--border);width:380px;box-shadow:0 24px 80px #00000080,0 0 0 1px var(--border);border-radius:12px;overflow:hidden}.CodeCard__bar{background-color:var(--surface2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;display:flex}.CodeCard__bar-dots{gap:8px;display:flex}.CodeCard__bar-dot{border-radius:50%;width:10px;height:10px}.CodeCard__bar-file{color:var(--muted);font-size:11px}.CodeCard__body{padding:20px}.CodeCard__lines{flex-direction:column;font-size:12px;line-height:2;display:flex}.CodeCard__line{white-space:pre;opacity:0;transition:opacity .6s,transform .6s;transform:translateY(4px)}.CodeCard__line--visible{opacity:1;transform:none}.CodeCard .dot-r{background-color:#ff5f57}.CodeCard .dot-y{background-color:#febc2e}.CodeCard .dot-g{background-color:#28c840}@media (max-width:480px){.CodeCard{width:100%}}.StatsBar{border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:0;padding:24px 40px;display:flex}@media (max-width:640px){.StatsBar{flex-wrap:wrap;padding:0}}.StatsBar__stat{border-right:1px solid var(--border);flex:1;padding:20px 32px}@media (max-width:640px){.StatsBar__stat{border-bottom:1px solid var(--border);flex:0 0 50%;padding:16px 20px}.StatsBar__stat:nth-child(2){border-right:none}}.StatsBar__stat-num{color:var(--text);letter-spacing:-1px;font-family:Syne,sans-serif;font-size:36px;font-weight:800}.StatsBar__stat-num>span{color:var(--accent)}.StatsBar__stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.1rem;margin-top:4px;font-size:11px}.Section{width:100%;padding:0 48px}.Section--paddingTop{padding-top:100px}.Section--paddingBottom{padding-bottom:100px}.Section__inner{grid-template-columns:1fr 1fr;align-items:center;gap:80px;display:grid}.Section__tag{color:var(--accent);letter-spacing:.15rem;text-transform:uppercase;margin-bottom:12px;font-size:11px}.Section__title{font-family:var(--font-syne),sans-serif;color:var(--text);letter-spacing:-1px;margin-bottom:16px;font-size:clamp(28px,3vw,44px);font-weight:800}.Section__sub{color:var(--muted);max-width:520px;margin-bottom:60px;font-size:clamp(13px,1.1vw,15px)}.Section--contact{background-color:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.Section--contact .Section__title{font-size:clamp(37px,5vw,54px)}@media (max-width:1024px){.Section{padding:0 8px}.Section__inner{grid-template-columns:1fr;gap:20px}.Section--paddingTop{padding-top:68px}.Section--paddingBottom{padding-bottom:68px}.Section .Section{padding:0 8px}.Section .Section__inner{grid-template-columns:1fr;gap:20px}.Section .Section--paddingTop{padding-top:68px}.Section .Section--paddingBottom{padding-bottom:68px}}.Skills{background:var(--border);border:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:60px;display:grid;overflow:hidden}@media (max-width:640px){.Skills{grid-template-columns:1fr}}.Cell{background-color:var(--surface);flex-direction:column;gap:10px;padding:28px 24px;transition:background-color .2s;display:flex;position:relative;overflow:hidden}.Cell:hover{background-color:var(--surface2)}.Cell:hover:after{transform:scaleX(1)}.Cell:focus-visible{background-color:var(--surface2);outline:2px solid var(--accent);outline-offset:-2px}.Cell:focus-visible:after{transform:scaleX(1)}.Cell:after{content:"";background-color:var(--accent);transform-origin:0;height:2px;transition:transform .3s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.Cell__icon{font-size:22px}.Cell__name{color:var(--text);font-family:Syne,sans-serif;font-size:clamp(12px,1vw,16px);font-weight:700}.Cell__tags{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.Cell__tag{background-color:var(--border);color:var(--muted);letter-spacing:.05rem;border-radius:3px;padding:2px 8px;font-size:clamp(12px,1vw,14px)}.ProjectCard{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (max-width:640px){.ProjectCard{grid-template-columns:1fr}}.ProjectCard__wrapper{background-color:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:flex-start;padding:32px;text-decoration:none;transition:border-color .3s,transform .3s;display:flex;position:relative;overflow:hidden}.ProjectCard__wrapper:before{content:"";pointer-events:none;background:radial-gradient(circle,#3ef0a426 0%,#0000 70% 70%);border-radius:50%;width:80px;height:80px;transition:width .3s,height .3s;position:absolute;top:-16px;right:-16px;transform:translate(30%,-30%)}.ProjectCard__wrapper:hover{border-color:var(--border2);transform:translateY(-3px)}@media (hover:hover) and (min-width:641px){.ProjectCard__wrapper:hover .ProjectCard__tech-item{opacity:1;transform:translateY(0)}}.ProjectCard__wrapper:hover .ProjectCard__arrow{border-color:var(--accent);color:var(--accent);transform:rotate(-45deg)}.ProjectCard__wrapper:hover:before{width:200px;height:200px}.ProjectCard__arrow{border:1px solid var(--border2);width:32px;height:32px;color:var(--border2);border-radius:50%;justify-content:center;align-items:center;font-size:16px;line-height:1;transition:border-color .2s,color .2s,transform .2s;display:flex;position:absolute;top:28px;right:28px}.ProjectCard__label{letter-spacing:.15rem;text-transform:uppercase;color:var(--accent);margin-bottom:12px;font-size:10px}.ProjectCard__title{color:var(--text);letter-spacing:-.5px;margin-bottom:12px;font-family:Syne,sans-serif;font-size:22px;font-weight:700}.ProjectCard__desc{color:var(--muted);margin-bottom:20px;font-size:clamp(12px,1vw,16px);line-height:1.8}.ProjectCard__tech{flex-wrap:wrap;gap:8px;display:flex}.ProjectCard__tech-item{border:1px solid var(--border2);color:var(--text);border-radius:99px;padding:4px 12px;font-size:clamp(12px,1vw,14px)}@media (hover:hover) and (min-width:641px){.ProjectCard__tech-item{opacity:0;transition:opacity .2s,transform .2s;transition-delay:calc(var(--i)*55ms);transform:translateY(6px)}}@media (max-width:480px){.ProjectCard__arrow{top:18px;right:18px}}.ContactLinks{flex-direction:column;gap:16px;display:flex}.ContactLinks__item{background-color:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:8px;justify-content:space-between;align-items:center;padding:20px 24px;text-decoration:none;transition:border-color .2s,transform .2s;display:flex}.ContactLinks__item:hover{border-color:var(--accent);transform:translate(4px)}.ContactLinks__item:hover .ContactLinks__item-icon{color:var(--accent)}.ContactLinks__item-label{color:var(--muted);margin-bottom:2px;font-size:12px}.ContactLinks__item-value{font-family:Syne,sans-serif;font-size:15px;font-weight:600}.ScrollToTop{background:var(--surface);width:44px;height:44px;color:var(--text);cursor:pointer;z-index:99;border:1px solid #3ef0a459;border-radius:50%;justify-content:center;align-items:center;font-size:18px;transition:border-color .2s,color .2s,transform .2s,box-shadow .2s;display:flex;position:fixed;bottom:32px;right:32px;box-shadow:0 0 22px #3ef0a44d}.ScrollToTop:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-3px);box-shadow:0 0 22px #3ef0a499}@media (max-width:768px){.ScrollToTop{bottom:12px;right:12px}}.Footer{color:var(--muted);justify-content:center;align-items:center;gap:2.5rem;padding:32px 48px;font-size:12px;display:flex}.Footer__heart{color:var(--accent)}@media screen and (max-width:640px){.Footer{justify-content:space-between}}.Cursor{background:var(--accent);pointer-events:none;z-index:9999;mix-blend-mode:screen;border-radius:50%;width:10px;height:10px;transition:width .2s,height .2s;position:fixed;transform:translate(-50%,-50%)}.Cursor--hover{width:16px;height:16px}.CursorRing{pointer-events:none;z-index:9998;border:1px solid #3ef0a466;border-radius:50%;width:36px;height:36px;transition:width .25s,height .25s,border-color .2s;position:fixed;transform:translate(-50%,-50%)}.CursorRing--hover{border-color:#3ef0a4b3;width:52px;height:52px}:root{--bg:#0a0c10;--surface:#0f1218;--surface2:#161b24;--border:#1e2530;--border2:#2a3340;--text:#d4dbe8;--muted:#777e88;--accent:#3ef0a4;--glow-accent:#3ef0a426}*,:before,:after{box-sizing:border-box;margin:0;padding:0}@media (pointer:fine){*{cursor:none}}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:var(--font-dm-mono),monospace;background:var(--bg)}h1,h2{font-family:var(--font-syne),sans-serif}.skip-to-main{background:var(--accent);color:var(--bg);z-index:9999;padding:.5rem 1rem;font-weight:700;text-decoration:none;position:absolute;top:-100%;left:1rem}.skip-to-main:focus{top:1rem}.accent{color:var(--accent)}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.reveal.visible{opacity:1;transform:none}@media (max-width:768px){.Cursor,.CursorRing{display:none}*{cursor:auto}}@keyframes pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}
