@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&display=swap);:root{--bg:#05060a;--bg-elev:#0b0d14;--surface:hsla(0,0%,100%,.035);--surface-strong:hsla(0,0%,100%,.06);--border:hsla(0,0%,100%,.08);--border-strong:hsla(0,0%,100%,.16);--text:#eef0f6;--text-muted:#9aa0b4;--text-dim:#646a80;--cyan:#22d3ee;--violet:#8b5cf6;--pink:#f472b6;--lime:#a3e635;--gradient:linear-gradient(120deg,#22d3ee,#8b5cf6 50%,#f472b6);--font-display:"Space Grotesk","Inter",system-ui,sans-serif;--font-body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;--radius:20px;--radius-sm:12px;--ease-out:cubic-bezier(0.16,1,0.3,1);--container:1200px;--header-h:84px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px;scroll-padding-top:var(--header-h)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#05060a;background:var(--bg);color:#eef0f6;color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-family:var(--font-body);font-size:16px;line-height:1.6;overflow-x:hidden}body.is-locked{overflow:hidden}::selection{background:rgba(139,92,246,.45);color:#fff}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{background:none;border:0;color:inherit;cursor:pointer;font:inherit}ol,ul{list-style:none}:focus-visible{border-radius:6px;outline:2px solid #22d3ee;outline:2px solid var(--cyan);outline-offset:3px}main:focus{outline:none}html{scrollbar-color:#2a2d3a #05060a;scrollbar-color:#2a2d3a var(--bg);scrollbar-width:thin}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#05060a;background:var(--bg)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#22d3ee,#8b5cf6);background:linear-gradient(180deg,var(--cyan),var(--violet));border:3px solid #05060a;border:3px solid var(--bg);border-radius:10px}code{font-family:JetBrains Mono,ui-monospace,Menlo,Consolas,monospace;font-family:var(--font-mono)}.skip-link{background:#22d3ee;background:var(--cyan);border-radius:8px;color:#000;font-weight:700;left:-9999px;padding:.65rem 1rem;position:absolute;top:.75rem;z-index:10000}.skip-link:focus{left:.75rem}.container{margin:0 auto;max-width:1200px;max-width:var(--container);padding:0 24px;width:100%}@media(max-width:600px){.container{padding:0 16px}}.section{overflow-x:clip;padding:120px 0;position:relative}@media(max-width:768px){.section{padding:80px 0}}.gradient-text{-webkit-animation:gradient-pan 6s linear infinite;animation:gradient-pan 6s linear infinite;background:linear-gradient(120deg,#22d3ee,#8b5cf6 50%,#f472b6);background:var(--gradient);-webkit-background-clip:text;background-clip:text;background-size:200% auto;color:transparent}@-webkit-keyframes gradient-pan{to{background-position:200%}}@keyframes gradient-pan{to{background-position:200%}}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.reveal{opacity:0;transition:opacity .9s cubic-bezier(.16,1,.3,1),-webkit-transform .9s cubic-bezier(.16,1,.3,1),-webkit-filter .9s cubic-bezier(.16,1,.3,1);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1),-webkit-transform .9s cubic-bezier(.16,1,.3,1),-webkit-filter .9s cubic-bezier(.16,1,.3,1);transition:opacity .9s var(--ease-out),-webkit-transform .9s var(--ease-out),-webkit-filter .9s var(--ease-out);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out),filter .9s var(--ease-out);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out),filter .9s var(--ease-out),-webkit-transform .9s var(--ease-out),-webkit-filter .9s var(--ease-out);transition-delay:0ms;transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform}.reveal--up{-webkit-transform:translateY(40px);transform:translateY(40px)}.reveal--down{-webkit-transform:translateY(-30px);transform:translateY(-30px)}.reveal--left{-webkit-transform:translateX(-50px);transform:translateX(-50px)}.reveal--right{-webkit-transform:translateX(50px);transform:translateX(50px)}.reveal--zoom{-webkit-transform:scale(.92);transform:scale(.92)}.reveal--blur{-webkit-filter:blur(12px);filter:blur(12px);-webkit-transform:translateY(20px);transform:translateY(20px)}.reveal.is-visible{-webkit-filter:none;filter:none;opacity:1;-webkit-transform:none;transform:none}.btn{align-items:center;border-radius:999px;display:inline-flex;font-family:Space Grotesk,Inter,system-ui,sans-serif;font-family:var(--font-display);font-size:.98rem;font-weight:600;gap:10px;isolation:isolate;justify-content:center;letter-spacing:.01em;padding:14px 26px;position:relative;transition:box-shadow .3s cubic-bezier(.16,1,.3,1),background .3s,border-color .3s,color .3s,-webkit-transform .3s cubic-bezier(.16,1,.3,1);transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1),background .3s,border-color .3s,color .3s;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1),background .3s,border-color .3s,color .3s,-webkit-transform .3s cubic-bezier(.16,1,.3,1);transition:box-shadow .3s var(--ease-out),background .3s,border-color .3s,color .3s,-webkit-transform .3s var(--ease-out);transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out),background .3s,border-color .3s,color .3s;transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out),background .3s,border-color .3s,color .3s,-webkit-transform .3s var(--ease-out);white-space:nowrap}.btn svg{transition:-webkit-transform .3s cubic-bezier(.16,1,.3,1);transition:transform .3s cubic-bezier(.16,1,.3,1);transition:transform .3s cubic-bezier(.16,1,.3,1),-webkit-transform .3s cubic-bezier(.16,1,.3,1);transition:-webkit-transform .3s var(--ease-out);transition:transform .3s var(--ease-out);transition:transform .3s var(--ease-out),-webkit-transform .3s var(--ease-out)}.btn:hover svg{-webkit-transform:translateX(3px);transform:translateX(3px)}.btn--primary{background:linear-gradient(120deg,#22d3ee,#8b5cf6 50%,#f472b6);background:var(--gradient);background-size:200% auto;box-shadow:0 10px 40px -10px rgba(139,92,246,.7);color:#05060a}.btn--primary:hover{background-position:100%;box-shadow:0 16px 50px -10px rgba(34,211,238,.7)}.btn--ghost{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.035);background:var(--surface);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--border-strong);color:#eef0f6;color:var(--text)}.btn--ghost:hover{background:rgba(34,211,238,.08);border-color:rgba(34,211,238,.6)}.btn--sm{font-size:.88rem;padding:10px 18px}.chip{align-items:center;background:hsla(0,0%,100%,.035);background:var(--surface);border:1px solid hsla(0,0%,100%,.08);border:1px solid var(--border);border-radius:999px;color:#9aa0b4;color:var(--text-muted);display:inline-flex;font-family:JetBrains Mono,ui-monospace,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:.74rem;gap:6px;padding:5px 12px;white-space:nowrap}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{-webkit-animation-duration:.001ms!important;animation-duration:.001ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal{-webkit-filter:none;filter:none;opacity:1;-webkit-transform:none;transform:none}}.header{-webkit-animation:header-in 1s var(--ease-out) backwards;animation:header-in 1s var(--ease-out) backwards;left:0;padding:18px 24px;position:fixed;right:0;top:0;transition:padding .4s var(--ease-out);z-index:1000}.header--scrolled{padding-top:12px}.header__bar{align-items:center;border:1px solid transparent;border-radius:999px;display:flex;gap:16px;justify-content:space-between;margin:0 auto;max-width:var(--container);padding:10px 10px 10px 18px;position:relative;transition:background .4s,border-color .4s,box-shadow .4s,-webkit-backdrop-filter .4s;transition:background .4s,border-color .4s,box-shadow .4s,backdrop-filter .4s;transition:background .4s,border-color .4s,box-shadow .4s,backdrop-filter .4s,-webkit-backdrop-filter .4s;z-index:2}.header--open .header__bar,.header--scrolled .header__bar{backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);background:rgba(10,12,18,.72);border-color:var(--border);box-shadow:0 20px 50px -20px rgba(0,0,0,.8)}.header__logo{align-items:center;display:inline-flex;font-family:var(--font-display);font-size:1.2rem;font-weight:700;gap:10px;letter-spacing:-.02em}.header__logo-mark{-webkit-animation:gradient-pan 6s linear infinite;animation:gradient-pan 6s linear infinite;background:var(--gradient);background-size:200% auto;border-radius:12px;color:#05060a;display:grid;font-size:.85rem;height:38px;place-items:center;transition:-webkit-transform .5s var(--ease-out);transition:transform .5s var(--ease-out);transition:transform .5s var(--ease-out),-webkit-transform .5s var(--ease-out);width:38px}.header__logo:hover .header__logo-mark{-webkit-transform:rotate(-12deg) scale(1.08);transform:rotate(-12deg) scale(1.08)}.header__logo-dot{color:var(--cyan)}.header__nav ul{display:flex;gap:4px}.header__nav a{border-radius:999px;color:var(--text-muted);display:block;font-size:.92rem;font-weight:500;padding:8px 16px;position:relative;transition:color .3s,background .3s}.header__nav a:hover{background:var(--surface-strong);color:var(--text)}.header__nav a.is-active{background:hsla(0,0%,100%,.08);color:var(--text)}.header__nav a.is-active:after{background:var(--cyan);border-radius:50%;bottom:2px;box-shadow:0 0 10px var(--cyan);content:"";height:4px;left:50%;margin-left:-2px;position:absolute;width:4px}.header__actions{align-items:center;display:flex;gap:8px}.header__burger{background:var(--surface-strong);border:1px solid var(--border);border-radius:50%;display:none;height:44px;position:relative;width:44px}.header__burger span{background:var(--text);border-radius:2px;height:2px;left:13px;position:absolute;transition:top .4s var(--ease-out),-webkit-transform .4s var(--ease-out);transition:transform .4s var(--ease-out),top .4s var(--ease-out);transition:transform .4s var(--ease-out),top .4s var(--ease-out),-webkit-transform .4s var(--ease-out);width:18px}.header__burger span:first-child{top:17px}.header__burger span:last-child{top:25px}.header__burger[aria-expanded=true] span:first-child{top:21px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.header__burger[aria-expanded=true] span:last-child{top:21px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.header__mobile{-webkit-animation:menu-in .5s var(--ease-out) both;animation:menu-in .5s var(--ease-out) both;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:rgba(5,6,10,.96);display:flex;flex-direction:column;inset:0;justify-content:space-between;padding:120px 24px 40px;position:fixed;z-index:1}.header__mobile[hidden]{display:none}.header__mobile li{-webkit-animation:menu-item-in .6s var(--ease-out) both;animation:menu-item-in .6s var(--ease-out) both;-webkit-animation-delay:calc(var(--i)*60ms + .1s);animation-delay:calc(var(--i)*60ms + .1s);border-bottom:1px solid var(--border)}.header__mobile li a{align-items:baseline;display:flex;font-family:var(--font-display);font-size:clamp(2rem,9vw,2.8rem);font-weight:600;gap:16px;letter-spacing:-.03em;padding:18px 0}.header__mobile-index{color:var(--cyan);font-family:var(--font-mono);font-size:.8rem}.header__mobile-footer{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.header__mobile-social{display:flex;gap:10px}.header__mobile-social a{border:1px solid var(--border-strong);border-radius:50%;display:grid;font-size:1.2rem;height:48px;place-items:center;width:48px}@media(max-width:900px){.header{padding:12px 16px}.header__nav{display:none}.header__burger{display:block}}@media(max-width:420px){.header__resume{display:none}}@-webkit-keyframes header-in{0%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}}@keyframes header-in{0%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}}@-webkit-keyframes menu-in{0%{opacity:0}}@keyframes menu-in{0%{opacity:0}}@-webkit-keyframes menu-item-in{0%{opacity:0;-webkit-transform:translateY(24px);transform:translateY(24px)}}@keyframes menu-item-in{0%{opacity:0;-webkit-transform:translateY(24px);transform:translateY(24px)}}.hero{align-items:center;display:flex;min-height:100vh;min-height:100svh;overflow:hidden;padding:calc(var(--header-h) + 24px) 0 90px;position:relative}.hero__container{grid-gap:48px;align-items:center;display:grid;gap:48px;grid-template-columns:1.25fr 1fr}.hero__anim{opacity:0}.hero__word{display:inline-block;-webkit-transform:translateY(110%) rotate(6deg);transform:translateY(110%) rotate(6deg)}body.is-ready .hero .hero__anim{-webkit-animation:hero-fade-up 1s var(--ease-out) both;animation:hero-fade-up 1s var(--ease-out) both;-webkit-animation-delay:calc(var(--d)*90ms + .15s);animation-delay:calc(var(--d)*90ms + .15s)}body.is-ready .hero .hero__word{-webkit-animation:hero-word 1.1s var(--ease-out) forwards;animation:hero-word 1.1s var(--ease-out) forwards;-webkit-animation-delay:calc(var(--w)*90ms + .2s);animation-delay:calc(var(--w)*90ms + .2s)}.hero__badge{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--surface);border:1px solid var(--border-strong);border-radius:999px;color:var(--text-muted);display:inline-flex;flex-wrap:wrap;font-size:.85rem;gap:10px;margin-bottom:22px;padding:8px 16px}.hero__badge svg{color:var(--cyan)}.hero__badge-loc{align-items:center;display:inline-flex;gap:10px}@media(max-width:480px){.hero__badge-loc{display:none}}.hero__badge-reloc{align-items:center;color:var(--text);display:inline-flex;gap:10px}.hero__badge-reloc svg{color:var(--lime)!important}@media(max-width:480px){.hero__badge-reloc .hero__badge-sep{display:none}}.hero__open{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}.hero__open-label{align-items:center;color:var(--lime);display:inline-flex;font-family:var(--font-mono);font-size:.74rem;gap:8px;letter-spacing:.12em;margin-right:4px;text-transform:uppercase}.hero__open-role{background:linear-gradient(135deg,rgba(34,211,238,.12),rgba(139,92,246,.12));border:1px solid rgba(139,92,246,.35);border-radius:8px;color:var(--text);font-size:.86rem;font-weight:600;padding:6px 13px;transition:border-color .3s,-webkit-transform .3s var(--ease-out);transition:transform .3s var(--ease-out),border-color .3s;transition:transform .3s var(--ease-out),border-color .3s,-webkit-transform .3s var(--ease-out)}.hero__open-role:hover{border-color:var(--cyan);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.hero__badge-sep{background:var(--border-strong);height:14px;width:1px}.hero__pulse{height:8px;position:relative;width:8px}.hero__pulse,.hero__pulse:after{background:var(--lime);border-radius:50%}.hero__pulse:after{-webkit-animation:pulse 2s ease-out infinite;animation:pulse 2s ease-out infinite;content:"";inset:0;position:absolute}.hero__hello{color:var(--text-muted);font-size:1.15rem;margin-bottom:14px}.hero__hello strong{color:var(--text);font-weight:600}.hero__wave{-webkit-animation:wave 2.4s ease-in-out 2s infinite;animation:wave 2.4s ease-in-out 2s infinite;display:inline-block;-webkit-transform-origin:70% 70%;transform-origin:70% 70%}.hero__title{font-family:var(--font-display);font-size:clamp(2.7rem,6.4vw,5.4rem);font-weight:700;letter-spacing:-.045em;line-height:.98;margin-bottom:26px}.hero__word-mask{display:inline-block;margin-bottom:-.08em;overflow:hidden;padding-bottom:.08em;vertical-align:top}.hero__role{color:var(--text);font-family:var(--font-mono);font-size:clamp(.95rem,2vw,1.15rem);margin-bottom:22px;min-height:1.6em}.hero__role-prefix{color:var(--cyan)}.hero__description{color:var(--text-muted);font-size:1.06rem;margin-bottom:36px;max-width:580px}.hero__description span{color:var(--text);font-weight:500}.hero__core{display:flex;flex-wrap:wrap;gap:8px;margin:-12px 0 22px}.hero__core li{align-items:center;background:var(--surface);border:1px solid var(--border-strong);border-radius:999px;display:inline-flex;font-size:.86rem;font-weight:600;gap:8px;padding:7px 14px;transition:border-color .3s,-webkit-transform .3s var(--ease-out);transition:border-color .3s,transform .3s var(--ease-out);transition:border-color .3s,transform .3s var(--ease-out),-webkit-transform .3s var(--ease-out)}.hero__core li:hover{border-color:var(--c);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.hero__core li span{background:var(--c);border-radius:50%;box-shadow:0 0 10px var(--c);height:8px;width:8px}.hero__core-more{border-style:dashed!important;color:var(--text-muted);font-weight:500!important}.hero__cta{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:44px}.hero__stats{grid-gap:12px 36px;display:grid;gap:12px 36px;grid-template-columns:repeat(4,auto);justify-content:start}.hero__stats div{border-left:1px solid var(--border-strong);display:flex;flex-direction:column-reverse;padding-left:16px}.hero__stats dd{font-family:var(--font-display);font-size:clamp(1.7rem,3vw,2.3rem);font-weight:700;letter-spacing:-.03em;line-height:1.1}.hero__stats dt{color:var(--text-dim);font-size:.78rem;line-height:1.35;max-width:120px}.hero__visual{display:flex;justify-content:center;-webkit-perspective:1200px;perspective:1200px}.hero__portrait{--size:min(420px,38vw);--r:calc(var(--size)/2 + 26px);height:var(--size);position:relative;-webkit-transform:rotateX(0deg) rotateY(0deg);transform:rotateX(0deg) rotateY(0deg);-webkit-transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));-webkit-transform-style:preserve-3d;transform-style:preserve-3d;transition:-webkit-transform .6s var(--ease-out);transition:transform .6s var(--ease-out);transition:transform .6s var(--ease-out),-webkit-transform .6s var(--ease-out);width:var(--size)}.hero__ring{-webkit-animation:spin 8s linear infinite;animation:spin 8s linear infinite;background:conic-gradient(from 0deg,var(--cyan),var(--violet),var(--pink),var(--cyan));-webkit-filter:blur(1px);filter:blur(1px);inset:-14px}.hero__ring,.hero__ring:after{border-radius:50%;position:absolute}.hero__ring:after{background:inherit;content:"";-webkit-filter:blur(50px);filter:blur(50px);inset:-30px;opacity:.45}.hero__photo{background:var(--bg-elev);border:6px solid var(--bg);border-radius:50%;inset:0;overflow:hidden;position:absolute;-webkit-transform:translateZ(30px);transform:translateZ(30px)}.hero__photo img{height:100%;object-fit:cover;transition:-webkit-transform .8s var(--ease-out);transition:transform .8s var(--ease-out);transition:transform .8s var(--ease-out),-webkit-transform .8s var(--ease-out);width:100%}.hero__portrait:hover .hero__photo img{-webkit-transform:scale(1.06);transform:scale(1.06)}.hero__orbit{-webkit-animation:spin 40s linear infinite;animation:spin 40s linear infinite;inset:0;pointer-events:none;position:absolute}.hero__orbit li{--a:calc(360deg/var(--n)*var(--i));height:52px;left:50%;margin:-26px 0 0 -26px;position:absolute;top:50%;-webkit-transform:rotate(var(--a)) translateX(var(--r)) rotate(calc(var(--a)*-1));transform:rotate(var(--a)) translateX(var(--r)) rotate(calc(var(--a)*-1));width:52px}.hero__orbit span{animation:spin 40s linear infinite reverse;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:rgba(12,14,22,.85);box-shadow:0 10px 30px -10px var(--c);color:var(--c);display:grid;font-size:1.45rem;height:100%;place-items:center;width:100%}.hero__float,.hero__orbit span{border:1px solid var(--border-strong);border-radius:16px}.hero__float{align-items:center;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:rgba(12,14,22,.78);box-shadow:0 20px 40px -20px rgba(0,0,0,.8);display:flex;gap:12px;padding:12px 16px;position:absolute;-webkit-transform:translateZ(60px);transform:translateZ(60px);white-space:nowrap}.hero__float strong{display:block;font-family:var(--font-display);font-size:.92rem}.hero__float small{color:var(--text-muted);font-size:.75rem}.hero__float--top{-webkit-animation:float 6s ease-in-out infinite;animation:float 6s ease-in-out infinite;left:-18%;top:6%}.hero__float--bottom{-webkit-animation:float 7s ease-in-out 1s infinite;animation:float 7s ease-in-out 1s infinite;bottom:4%;right:-14%}.hero__float-dot{background:var(--lime);border-radius:50%;box-shadow:0 0 12px var(--lime);height:10px;width:10px}.hero__float-emoji{font-size:1.3rem}.hero__scroll{align-items:center;bottom:28px;color:var(--text-dim);display:flex;flex-direction:column;font-family:var(--font-mono);font-size:.7rem;gap:8px;left:50%;letter-spacing:.25em;position:absolute;text-transform:uppercase;-webkit-transform:translateX(-50%);transform:translateX(-50%);transition:color .3s}.hero__scroll:hover{color:var(--text)}.hero__scroll-mouse{border:2px solid;border-radius:14px;display:flex;height:38px;justify-content:center;padding-top:6px;width:24px}.hero__scroll-mouse span{-webkit-animation:scroll-dot 1.8s ease-in-out infinite;animation:scroll-dot 1.8s ease-in-out infinite;background:var(--cyan);border-radius:2px;height:8px;width:3px}@media(max-height:1000px){.hero__scroll{display:none}}@media(max-width:1024px){.hero__container{gap:56px;grid-template-columns:1fr}.hero__visual{order:-1}.hero__portrait{--size:min(320px,62vw)}.hero__float--top{left:-22%}.hero__float--bottom{right:-20%}.hero__stats{grid-template-columns:repeat(2,auto)}.hero__scroll{display:none}}@media(max-width:600px){.hero{padding-bottom:64px}.hero__br{display:none}.hero__portrait{--size:min(240px,60vw);--r:calc(var(--size)/2 + 18px)}.hero__orbit li{height:40px;margin:-20px 0 0 -20px;width:40px}.hero__orbit span{border-radius:12px;font-size:1.1rem}.hero__float{gap:8px;padding:8px 12px}.hero__float strong{font-size:.78rem}.hero__float small{font-size:.66rem}.hero__float--top{left:-16%;top:-4%}.hero__float--bottom{bottom:-4%;right:-16%}.hero__cta .btn{flex:1 1 100%}.hero__stats{gap:20px;grid-template-columns:1fr 1fr}.hero__stats div{padding-left:12px}}@-webkit-keyframes hero-fade-up{0%{-webkit-filter:blur(6px);filter:blur(6px);opacity:0;-webkit-transform:translateY(30px);transform:translateY(30px)}to{-webkit-filter:none;filter:none;opacity:1;-webkit-transform:none;transform:none}}@keyframes hero-fade-up{0%{-webkit-filter:blur(6px);filter:blur(6px);opacity:0;-webkit-transform:translateY(30px);transform:translateY(30px)}to{-webkit-filter:none;filter:none;opacity:1;-webkit-transform:none;transform:none}}@-webkit-keyframes hero-word{to{-webkit-transform:translateY(0) rotate(0);transform:translateY(0) rotate(0)}}@keyframes hero-word{to{-webkit-transform:translateY(0) rotate(0);transform:translateY(0) rotate(0)}}@-webkit-keyframes spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes float{50%{-webkit-transform:translateZ(60px) translateY(-14px);transform:translateZ(60px) translateY(-14px)}}@keyframes float{50%{-webkit-transform:translateZ(60px) translateY(-14px);transform:translateZ(60px) translateY(-14px)}}@-webkit-keyframes pulse{to{opacity:0;-webkit-transform:scale(3);transform:scale(3)}}@keyframes pulse{to{opacity:0;-webkit-transform:scale(3);transform:scale(3)}}@-webkit-keyframes wave{0%,60%,to{-webkit-transform:rotate(0);transform:rotate(0)}10%,30%{-webkit-transform:rotate(14deg);transform:rotate(14deg)}20%{-webkit-transform:rotate(-8deg);transform:rotate(-8deg)}40%{-webkit-transform:rotate(-4deg);transform:rotate(-4deg)}50%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}@keyframes wave{0%,60%,to{-webkit-transform:rotate(0);transform:rotate(0)}10%,30%{-webkit-transform:rotate(14deg);transform:rotate(14deg)}20%{-webkit-transform:rotate(-8deg);transform:rotate(-8deg)}40%{-webkit-transform:rotate(-4deg);transform:rotate(-4deg)}50%{-webkit-transform:rotate(10deg);transform:rotate(10deg)}}@-webkit-keyframes scroll-dot{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}70%{opacity:0;-webkit-transform:translateY(12px);transform:translateY(12px)}to{opacity:0}}@keyframes scroll-dot{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}70%{opacity:0;-webkit-transform:translateY(12px);transform:translateY(12px)}to{opacity:0}}.typewriter__caret{-webkit-animation:caret 1s steps(1) infinite;animation:caret 1s steps(1) infinite;background:var(--cyan);display:inline-block;height:1.1em;margin-left:3px;vertical-align:-.15em;width:2px}@-webkit-keyframes caret{50%{opacity:0}}@keyframes caret{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.hero__anim{opacity:1}.hero__word{-webkit-transform:none;transform:none}}.section-heading{margin-bottom:64px;max-width:760px}.section-heading--center{margin-left:auto;margin-right:auto;text-align:center}.section-heading--center .section-heading__eyebrow{justify-content:center}.section-heading__eyebrow{align-items:center;color:var(--cyan);display:flex;font-family:var(--font-mono);font-size:.82rem;gap:12px;letter-spacing:.18em;margin-bottom:18px;text-transform:uppercase}.section-heading__index{color:var(--text-dim)}.section-heading__line{background:linear-gradient(90deg,var(--cyan),transparent);height:1px;width:40px}.section-heading__title{font-family:var(--font-display);font-size:clamp(2.3rem,5.5vw,4.2rem);font-weight:700;letter-spacing:-.035em;line-height:1.04}.section-heading__description{color:var(--text-muted);font-size:1.08rem;margin-top:20px;max-width:620px}.section-heading--center .section-heading__description{margin-left:auto;margin-right:auto}@media(max-width:768px){.section-heading{margin-bottom:44px}}.spotlight-card{--mx:50%;--my:50%;background:linear-gradient(180deg,hsla(0,0%,100%,.045),hsla(0,0%,100%,.015));border:1px solid var(--border);border-radius:var(--radius);isolation:isolate;position:relative;transition:border-color .4s,box-shadow .5s var(--ease-out),-webkit-transform .5s var(--ease-out);transition:border-color .4s,transform .5s var(--ease-out),box-shadow .5s var(--ease-out);transition:border-color .4s,transform .5s var(--ease-out),box-shadow .5s var(--ease-out),-webkit-transform .5s var(--ease-out)}.spotlight-card:before{background:radial-gradient(500px circle at var(--mx) var(--my),rgba(139,92,246,.14),transparent 45%);inset:0}.spotlight-card:after,.spotlight-card:before{border-radius:inherit;content:"";opacity:0;position:absolute;transition:opacity .4s;z-index:-1}.spotlight-card:after{background:radial-gradient(380px circle at var(--mx) var(--my),rgba(34,211,238,.8),rgba(139,92,246,.4) 40%,transparent 70%);inset:-1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px;pointer-events:none}.spotlight-card:hover{box-shadow:0 30px 60px -30px rgba(0,0,0,.9)}.spotlight-card:hover:after,.spotlight-card:hover:before{opacity:1}.spotlight-card--tilt{-webkit-transform:perspective(1000px) rotateX(0deg) rotateY(0deg);transform:perspective(1000px) rotateX(0deg) rotateY(0deg);-webkit-transform:perspective(1000px) rotateX(var(--tx,0deg)) rotateY(var(--ty,0deg));transform:perspective(1000px) rotateX(var(--tx,0deg)) rotateY(var(--ty,0deg))}.spotlight-card--tilt:hover{-webkit-transform:perspective(1000px) rotateX(0deg) rotateY(0deg) translateY(-4px);transform:perspective(1000px) rotateX(0deg) rotateY(0deg) translateY(-4px);-webkit-transform:perspective(1000px) rotateX(var(--tx,0deg)) rotateY(var(--ty,0deg)) translateY(-4px);transform:perspective(1000px) rotateX(var(--tx,0deg)) rotateY(var(--ty,0deg)) translateY(-4px)}.about__bento{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(6,1fr)}.about__cell{display:flex}.about__cell--intro,.about__cell--years{grid-column:span 3}.about__cell--location{grid-column:span 2}.about__cell--pillars{grid-column:span 4;grid-row:span 2}.about__cell--edu{grid-column:span 2}.about__card{display:flex;flex-direction:column;gap:14px;overflow:hidden;padding:32px;width:100%}.about__card h3{font-family:var(--font-display);font-size:clamp(1.5rem,2.6vw,2rem);letter-spacing:-.03em;line-height:1.15}.about__card p{color:var(--text-muted)}.about__card--center{justify-content:center}.about__num{color:var(--text-dim);font-family:var(--font-mono);font-size:.75rem;letter-spacing:.15em;text-transform:uppercase}.about__more{align-items:center;color:var(--cyan);display:inline-flex;font-weight:600;gap:8px;margin-top:auto}.about__more svg{transition:-webkit-transform .3s var(--ease-out);transition:transform .3s var(--ease-out);transition:transform .3s var(--ease-out),-webkit-transform .3s var(--ease-out)}.about__card:hover .about__more svg{-webkit-transform:translateX(6px);transform:translateX(6px)}.about__big{color:var(--text)!important;font-family:var(--font-display);font-size:clamp(4rem,9vw,6.5rem)!important;font-weight:700;letter-spacing:-.05em;line-height:1}.about__card--location{position:relative}.about__globe{-webkit-animation:spin 60s linear infinite;animation:spin 60s linear infinite;color:rgba(34,211,238,.08);font-size:9rem;position:absolute;right:-30px;top:-30px}.about__clock{align-items:center;display:flex;font-family:var(--font-mono);font-size:.9rem;gap:8px}.about__clock time{color:var(--text)}.about__clock-dot{-webkit-animation:blink 2s ease-in-out infinite;animation:blink 2s ease-in-out infinite;background:var(--lime);border-radius:50%;box-shadow:0 0 10px var(--lime);height:8px;width:8px}.about__muted{font-size:.9rem}.about__pillars{grid-gap:26px;display:grid;gap:26px;margin-top:10px}.about__pillars li{display:flex;gap:18px}.about__pillars h4{font-family:var(--font-display);font-size:1.15rem;margin-bottom:4px}.about__pillars p{font-size:.96rem}.about__edu-icon,.about__pillar-icon{background:linear-gradient(135deg,rgba(34,211,238,.15),rgba(139,92,246,.15));border:1px solid var(--border-strong);border-radius:14px;color:var(--cyan);display:grid;flex:none;font-size:1.15rem;height:48px;place-items:center;transition:-webkit-transform .4s var(--ease-out);transition:transform .4s var(--ease-out);transition:transform .4s var(--ease-out),-webkit-transform .4s var(--ease-out);width:48px}.about__pillars li:hover .about__pillar-icon{-webkit-transform:rotate(-8deg) scale(1.08);transform:rotate(-8deg) scale(1.08)}.about__edu{grid-gap:20px;display:grid;gap:20px}.about__edu li{display:flex;gap:14px}.about__edu h4{font-size:.98rem;font-weight:600;line-height:1.3}.about__edu a{color:var(--text-muted);display:block;font-size:.88rem;transition:color .3s}.about__edu a:hover{color:var(--cyan)}.about__edu small{color:var(--text-dim);font-family:var(--font-mono);font-size:.75rem}.about__edu-icon{font-size:1rem;height:40px;width:40px}@media(max-width:1024px){.about__cell--edu,.about__cell--intro,.about__cell--location,.about__cell--pillars,.about__cell--years{grid-column:span 3;grid-row:auto}.about__cell--pillars{grid-column:span 6;order:5}}@media(max-width:700px){.about__bento{gap:14px;grid-template-columns:1fr}.about__cell--edu,.about__cell--intro,.about__cell--location,.about__cell--pillars,.about__cell--years{grid-column:auto}.about__card{padding:24px}}@-webkit-keyframes blink{50%{opacity:.35}}@keyframes blink{50%{opacity:.35}}.timeline__list{--progress:0;position:relative}.timeline__items{grid-gap:24px;display:grid;gap:24px}.timeline__layout{grid-gap:64px;align-items:start;display:grid;gap:64px;grid-template-columns:.85fr 1.15fr}.timeline__intro{position:-webkit-sticky;position:sticky;top:130px}.timeline__intro .section-heading{margin-bottom:32px}.timeline__line{background:var(--border);border-radius:2px;bottom:8px;left:9px;margin-left:-1px;overflow:hidden;position:absolute;top:8px;width:2px}.timeline__line span{background:linear-gradient(180deg,var(--cyan),var(--violet),var(--pink));display:block;height:100%;-webkit-transform:scaleY(var(--progress));transform:scaleY(var(--progress));-webkit-transform-origin:top;transform-origin:top;width:100%}.timeline__item{padding-left:44px;position:relative}.timeline__dot{background:var(--bg);border:2px solid var(--violet);border-radius:50%;box-shadow:0 0 0 6px rgba(139,92,246,.12);height:18px;left:9px;margin-left:-9px;position:absolute;top:30px;width:18px;z-index:1}.timeline__dot--current{border-color:var(--lime);box-shadow:0 0 0 6px rgba(163,230,53,.15),0 0 20px var(--lime)}.timeline__dot--current:after{-webkit-animation:pulse 2s ease-out infinite;animation:pulse 2s ease-out infinite;border:2px solid var(--lime);border-radius:50%;content:"";inset:-2px;position:absolute}.timeline__card{padding:28px}.timeline__card h3{font-family:var(--font-display);font-size:1.4rem;letter-spacing:-.02em;line-height:1.25;margin:10px 0 4px}.timeline__top{align-items:center;display:flex;gap:10px}.timeline__period{color:var(--cyan);font-family:var(--font-mono);font-size:.8rem}.timeline__now{background:rgba(163,230,53,.1);border:1px solid rgba(163,230,53,.3);border-radius:999px;color:var(--lime);font-size:.7rem;font-weight:600;letter-spacing:.08em;padding:2px 10px;text-transform:uppercase}.timeline__company{color:var(--text-muted)}.timeline__company a{align-items:center;color:var(--text);display:inline-flex;font-weight:600;gap:6px;transition:color .3s}.timeline__company a svg{font-size:.7em;opacity:.6}.timeline__company a:hover{color:var(--cyan)}.timeline__note{color:var(--text-dim);font-size:.85rem;font-style:italic}.timeline__projects{grid-gap:10px;border-bottom:1px dashed var(--border);border-top:1px dashed var(--border);display:grid;gap:10px;margin:18px 0;padding:16px 0}.timeline__projects li{grid-gap:2px;display:grid;font-size:.92rem;gap:2px}.timeline__projects strong{font-weight:600}.timeline__projects span{color:var(--text-muted)}.timeline__stack{display:flex;flex-wrap:wrap;gap:6px}@media(max-width:1024px){.timeline__layout{gap:0;grid-template-columns:1fr}.timeline__intro{margin-bottom:44px;position:static}}@media(max-width:600px){.timeline__item{padding-left:34px}.timeline__card{padding:22px}}.marquee{background:hsla(0,0%,100%,.015);border-bottom:1px solid var(--border);border-top:1px solid var(--border);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);overflow:hidden;padding:28px 0;position:relative}.marquee__row{display:flex;overflow:hidden}.marquee__row+.marquee__row{margin-top:14px}.marquee__track{-webkit-animation:marquee 40s linear infinite;animation:marquee 40s linear infinite;display:flex;flex:none;gap:44px;padding-right:44px}.marquee__track li{align-items:center;color:var(--text-dim);display:inline-flex;font-family:var(--font-display);font-size:clamp(1.3rem,3vw,2.1rem);font-weight:600;gap:44px;letter-spacing:-.02em;transition:color .3s;white-space:nowrap}.marquee__track li:hover{color:var(--text)}.marquee__row--reverse .marquee__track{animation-direction:reverse;-webkit-animation-duration:46s;animation-duration:46s}.marquee__row--reverse .marquee__track li{-webkit-text-stroke:1px hsla(0,0%,100%,.25);color:transparent}.marquee__row--reverse .marquee__track li:hover{-webkit-text-stroke:0;color:var(--text)}.marquee:hover .marquee__track{-webkit-animation-play-state:paused;animation-play-state:paused}.marquee__star{-webkit-text-stroke:0;color:var(--violet);font-size:.7em}@-webkit-keyframes marquee{to{-webkit-transform:translateX(-50%);transform:translateX(-50%)}}@keyframes marquee{to{-webkit-transform:translateX(-50%);transform:translateX(-50%)}}.ai-lab{padding-bottom:60px}.ai-lab .section-heading{margin-bottom:36px}.ai-lab+.works{padding-top:80px}.ai-lab__grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}@media(max-width:420px){.ai-lab__grid{grid-template-columns:1fr}}.ai-card{--accent:var(--cyan);display:flex}.ai-card--procurement{--accent:#c084fc}.ai-card--baggage{--accent:#22d3ee}.ai-card--support-rag{--accent:#a3e635}.ai-card--kiosk-assistant{--accent:#f472b6}.ai-lab__grid:not(.is-in) .ai-card{opacity:0}.ai-lab__grid.is-in .ai-card{-webkit-animation:card-in .8s var(--ease-out) both;animation:card-in .8s var(--ease-out) both;-webkit-animation-delay:calc(var(--order)*80ms);animation-delay:calc(var(--order)*80ms)}.ai-card__inner{display:flex;flex-direction:column;padding:20px 22px;width:100%}.ai-card__head{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.ai-card__icon{background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:11px;color:var(--accent);display:grid;font-size:.95rem;height:38px;place-items:center;transition:-webkit-transform .5s var(--ease-out);transition:transform .5s var(--ease-out);transition:transform .5s var(--ease-out),-webkit-transform .5s var(--ease-out);width:38px}.ai-card__inner:hover .ai-card__icon{-webkit-transform:rotate(-10deg) scale(1.1);transform:rotate(-10deg) scale(1.1)}.ai-card__status{border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.06em;padding:4px 11px;text-transform:uppercase}.ai-card__status--built{background:var(--lime);color:#05060a}.ai-card__status--live{background:rgba(163,230,53,.1);border:1px solid rgba(163,230,53,.4);color:var(--lime)}.ai-card__status--case{border:1px solid var(--border-strong);color:var(--text-muted)}.ai-card__kind{color:var(--accent);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;margin-bottom:4px;text-transform:uppercase}.ai-card__title{font-family:var(--font-display);font-size:1.12rem;letter-spacing:-.02em;line-height:1.25}.ai-card__summary{color:var(--text-muted);font-size:.88rem;line-height:1.5;margin-top:6px}.ai-card__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:14px}.project-card{--accent:var(--violet)}.works__grid:not(.is-in) .project-card{opacity:0}.works__grid.is-in .project-card{-webkit-animation:card-in .8s var(--ease-out) both;animation:card-in .8s var(--ease-out) both;-webkit-animation-delay:calc(min(var(--order),8)*70ms);animation-delay:calc(min(var(--order),8)*70ms)}.project-card--aviation{--accent:#22d3ee}.project-card--ecommerce{--accent:#f472b6}.project-card--logistics{--accent:#a3e635}.project-card--platforms{--accent:#8b5cf6}.project-card--mobile{--accent:#fbbf24}.project-card__inner{display:flex;flex-direction:column;height:100%;padding:28px}.project-card__head{align-items:center;display:flex;justify-content:space-between;margin-bottom:22px}.project-card__icon{background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:14px;color:var(--accent);display:grid;font-size:1.15rem;height:48px;place-items:center;transition:-webkit-transform .5s var(--ease-out);transition:transform .5s var(--ease-out);transition:transform .5s var(--ease-out),-webkit-transform .5s var(--ease-out);width:48px}.project-card__inner:hover .project-card__icon{-webkit-transform:rotate(-10deg) scale(1.1);transform:rotate(-10deg) scale(1.1)}.project-card__index{-webkit-text-stroke:1px hsla(0,0%,100%,.14);color:transparent;font-family:var(--font-display);font-size:2.6rem;font-weight:700;line-height:1;transition:-webkit-text-stroke-color .4s}.project-card__inner:hover .project-card__index{-webkit-text-stroke-color:var(--accent)}.project-card__cats{display:flex;gap:8px;margin-bottom:10px}.project-card__cats li{color:var(--accent);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.project-card__cats li+li:before{color:var(--text-dim);content:"/";margin-right:8px}.project-card__title{font-family:var(--font-display);font-size:1.4rem;letter-spacing:-.02em;line-height:1.2}.project-card__subtitle{color:var(--text-muted);font-size:.92rem;margin-top:4px}.project-card__desc{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:var(--text-muted);display:-webkit-box;font-size:.94rem;margin-top:16px;overflow:hidden}.project-card__desc--open{-webkit-line-clamp:unset;display:block}.project-card__toggle{align-self:flex-start;border-bottom:1px solid var(--border-strong);color:var(--text);font-size:.85rem;font-weight:600;margin-top:8px;transition:color .3s,border-color .3s}.project-card__toggle:hover{border-color:var(--accent);color:var(--accent)}.project-card__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}.project-card__footer{margin-top:auto;padding-top:22px}.project-card__cta{align-items:center;color:var(--accent);display:inline-flex;font-size:.92rem;font-weight:600;gap:8px}.project-card__cta svg{font-size:.8em;transition:-webkit-transform .3s var(--ease-out);transition:transform .3s var(--ease-out);transition:transform .3s var(--ease-out),-webkit-transform .3s var(--ease-out)}.project-card__cta:hover svg{-webkit-transform:translate(3px,-3px);transform:translate(3px,-3px)}.project-card__cta--internal{color:var(--text-dim);font-weight:500}@-webkit-keyframes card-in{0%{opacity:0;-webkit-transform:translateY(30px) scale(.97);transform:translateY(30px) scale(.97)}}@keyframes card-in{0%{opacity:0;-webkit-transform:translateY(30px) scale(.97);transform:translateY(30px) scale(.97)}}.works__filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:40px}.works__filter{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:999px;color:var(--text-muted);display:inline-flex;font-size:.92rem;font-weight:500;gap:10px;padding:10px 18px;transition:color .3s,background .3s,border-color .3s,-webkit-transform .3s var(--ease-out);transition:color .3s,background .3s,border-color .3s,transform .3s var(--ease-out);transition:color .3s,background .3s,border-color .3s,transform .3s var(--ease-out),-webkit-transform .3s var(--ease-out)}.works__filter:hover{border-color:var(--border-strong);color:var(--text);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.works__filter.is-active{background:var(--text);border-color:var(--text);color:#05060a}.works__filter-count{background:hsla(0,0%,100%,.08);border-radius:999px;display:grid;font-family:var(--font-mono);font-size:.7rem;height:22px;min-width:22px;padding:0 6px;place-items:center}.works__filter.is-active .works__filter-count{background:rgba(0,0,0,.12)}.works__grid{grid-gap:22px;align-items:start;display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(330px,1fr))}@media(max-width:420px){.works__grid{grid-template-columns:1fr}}.skill__layout{grid-gap:28px;align-items:start;display:grid;gap:28px;grid-template-columns:1.2fr 1fr}.skill__explorer{grid-gap:8px;background:linear-gradient(180deg,hsla(0,0%,100%,.045),hsla(0,0%,100%,.015));border:1px solid var(--border);border-radius:var(--radius);display:grid;gap:8px;grid-template-columns:240px 1fr;min-height:520px;padding:10px}.skill__tabs{display:flex;flex-direction:column;gap:4px;padding:6px}.skill__tab{align-items:center;border-radius:12px;color:var(--text-muted);display:flex;font-size:.92rem;font-weight:500;gap:12px;padding:12px 14px;text-align:left;transition:color .3s,background .3s}.skill__tab svg{flex:none;transition:color .3s;width:16px}.skill__tab span{flex:1 1;line-height:1.3}.skill__tab small{color:var(--text-dim);font-family:var(--font-mono);font-size:.72rem}.skill__tab:hover{background:var(--surface);color:var(--text)}.skill__tab.is-active{background:hsla(0,0%,100%,.07);box-shadow:inset 2px 0 0 var(--cyan);color:var(--text)}.skill__tab.is-active svg{color:var(--cyan)}.skill__panel{-webkit-animation:panel-in .5s var(--ease-out) both;animation:panel-in .5s var(--ease-out) both;background:rgba(0,0,0,.25);border:1px solid var(--border);border-radius:14px;padding:18px 20px}.skill__bars{grid-gap:14px;display:grid;gap:14px}.skill__bars li{-webkit-animation:panel-in .5s var(--ease-out) both;animation:panel-in .5s var(--ease-out) both;-webkit-animation-delay:calc(var(--i)*40ms);animation-delay:calc(var(--i)*40ms)}.skill__bar-label{display:flex;font-size:.9rem;gap:12px;justify-content:space-between;margin-bottom:6px}.skill__bar-years{color:var(--text-dim);font-family:var(--font-mono);font-size:.78rem;white-space:nowrap}.skill__bar-track{background:hsla(0,0%,100%,.06);border-radius:6px;height:6px;overflow:hidden}.skill__bar-track span{background:var(--gradient);border-radius:inherit;display:block;height:100%;-webkit-transform-origin:left;transform-origin:left;transition:-webkit-transform 1.2s var(--ease-out);transition:transform 1.2s var(--ease-out);transition:transform 1.2s var(--ease-out),-webkit-transform 1.2s var(--ease-out);transition-delay:calc(var(--i)*50ms + .1s)}.skill__extra{border-top:1px dashed var(--border);margin-top:22px;padding-top:18px}.skill__extra p{color:var(--text-dim);font-family:var(--font-mono);font-size:.74rem;letter-spacing:.12em;margin-bottom:10px;text-transform:uppercase}.skill__extra ul{display:flex;flex-wrap:wrap;gap:8px}.skill__chip{-webkit-animation:panel-in .5s var(--ease-out) both;animation:panel-in .5s var(--ease-out) both;-webkit-animation-delay:calc(var(--i)*40ms);animation-delay:calc(var(--i)*40ms);background:rgba(139,92,246,.1);border-color:rgba(139,92,246,.4);color:var(--text)}.skill__sphere{background:radial-gradient(circle at 50% 50%,rgba(139,92,246,.12),transparent 65%),hsla(0,0%,100%,.015);border:1px solid var(--border);border-radius:var(--radius);display:grid;height:560px;overflow:hidden;place-items:center;position:relative;position:-webkit-sticky;position:sticky;top:120px}.skill__sphere-glow{-webkit-animation:spin 14s linear infinite;animation:spin 14s linear infinite;aspect-ratio:1;background:conic-gradient(from 0deg,rgba(34,211,238,.25),rgba(139,92,246,.25),rgba(244,114,182,.25),rgba(34,211,238,.25));border-radius:50%;-webkit-filter:blur(60px);filter:blur(60px);position:absolute;width:60%}.skill__cloud{cursor:grab;position:relative;z-index:1}.skill__cloud .tagcloud{font-family:var(--font-display);font-size:1rem;font-weight:600;letter-spacing:.01em}.skill__cloud .tagcloud--item{border-radius:6px;color:var(--text);padding:2px 8px;transition:color .3s,background .3s}.skill__cloud .tagcloud--item:nth-child(3n){color:var(--cyan)}.skill__cloud .tagcloud--item:nth-child(3n+1){color:#c4b5fd}.skill__cloud .tagcloud--item:hover{background:var(--cyan);color:#05060a!important}.skill__sphere-hint{bottom:16px;color:var(--text-dim);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.2em;position:absolute;text-transform:uppercase}@media(max-width:1100px){.skill__layout{grid-template-columns:1fr}.skill__sphere{height:460px;position:relative;top:0}}@media(max-width:700px){.skill__explorer{grid-template-columns:1fr;min-height:0}.skill__tabs{flex-direction:row;overflow-x:auto;padding:4px;scrollbar-width:none}.skill__tabs::-webkit-scrollbar{display:none}.skill__tab{flex:none;white-space:nowrap}.skill__tab.is-active{box-shadow:inset 0 -2px 0 var(--cyan)}.skill__panel{padding:16px}.skill__sphere{height:380px}.skill__cloud .tagcloud{font-size:.82rem}}@-webkit-keyframes panel-in{0%{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}}@keyframes panel-in{0%{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}}.contact__panel{background:linear-gradient(180deg,hsla(0,0%,100%,.05),hsla(0,0%,100%,.01));border:1px solid var(--border-strong);border-radius:32px;isolation:isolate;overflow:hidden;padding:clamp(40px,7vw,88px);position:relative;text-align:center}.contact__panel:before{-webkit-animation:border-spin 6s linear infinite;animation:border-spin 6s linear infinite;background:conic-gradient(from 0deg,transparent 60%,var(--cyan),var(--violet),var(--pink),transparent);background:conic-gradient(from var(--angle,0deg),transparent 60%,var(--cyan),var(--violet),var(--pink),transparent);border-radius:inherit;content:"";inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px;pointer-events:none;position:absolute}.contact__orb{border-radius:50%;height:420px;opacity:.5;position:absolute;width:420px;z-index:-1}.contact__orb--1{-webkit-animation:float-orb 12s ease-in-out infinite alternate;animation:float-orb 12s ease-in-out infinite alternate;background:radial-gradient(circle,rgba(139,92,246,.5),transparent 65%);left:-120px;top:-200px}.contact__orb--2{animation:float-orb 14s ease-in-out infinite alternate-reverse;background:radial-gradient(circle,rgba(34,211,238,.4),transparent 65%);bottom:-220px;right:-120px}.contact__eyebrow{color:var(--cyan);font-family:var(--font-mono);font-size:.82rem;letter-spacing:.18em;margin-bottom:20px;text-transform:uppercase}.contact__eyebrow span{color:var(--text-dim)}.contact__title{font-family:var(--font-display);font-size:clamp(2.1rem,5.5vw,4.4rem);font-weight:700;letter-spacing:-.04em;line-height:1.05}.contact__lead{color:var(--text-muted);font-size:1.08rem;margin:24px auto 40px;max-width:580px}.contact__cta{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.contact__big-btn{font-size:1.05rem;padding:18px 34px}.contact__grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(3,1fr);margin-top:22px}.contact__grid>div{display:flex}.contact__card{display:flex;flex-direction:column;gap:6px;padding:26px;width:100%}.contact__icon{background:rgba(34,211,238,.1);border:1px solid rgba(34,211,238,.25);border-radius:12px;color:var(--cyan);display:grid;height:44px;margin-bottom:10px;place-items:center;width:44px}.contact__label{color:var(--text-dim);font-family:var(--font-mono);font-size:.74rem;letter-spacing:.15em;text-transform:uppercase}.contact__value{font-weight:500;word-break:break-word}.contact__social{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:40px}.contact__social a{align-items:center;border:1px solid var(--border-strong);border-radius:999px;color:var(--text-muted);display:inline-flex;font-weight:500;gap:10px;padding:12px 20px;transition:color .3s,border-color .3s,background .3s,-webkit-transform .3s var(--ease-out);transition:color .3s,border-color .3s,transform .3s var(--ease-out),background .3s;transition:color .3s,border-color .3s,transform .3s var(--ease-out),background .3s,-webkit-transform .3s var(--ease-out)}.contact__social a svg{font-size:1.2rem}.contact__social a:hover{background:rgba(34,211,238,.08);border-color:var(--cyan);color:var(--text);-webkit-transform:translateY(-3px);transform:translateY(-3px)}.contact__toast{align-items:center;background:var(--lime);border-radius:999px;bottom:28px;box-shadow:0 20px 40px -10px rgba(163,230,53,.5);color:#05060a;display:inline-flex;font-weight:500;gap:10px;left:50%;opacity:0;padding:12px 20px;pointer-events:none;position:fixed;-webkit-transform:translate(-50%,120px);transform:translate(-50%,120px);transition:opacity .3s,visibility 0s linear .5s,-webkit-transform .5s var(--ease-out);transition:transform .5s var(--ease-out),opacity .3s,visibility 0s linear .5s;transition:transform .5s var(--ease-out),opacity .3s,visibility 0s linear .5s,-webkit-transform .5s var(--ease-out);visibility:hidden;z-index:1500}.contact__toast.is-shown{opacity:1;-webkit-transform:translate(-50%);transform:translate(-50%);transition:opacity .3s,visibility 0s,-webkit-transform .5s var(--ease-out);transition:transform .5s var(--ease-out),opacity .3s,visibility 0s;transition:transform .5s var(--ease-out),opacity .3s,visibility 0s,-webkit-transform .5s var(--ease-out);visibility:visible}@media(max-width:900px){.contact__grid{grid-template-columns:1fr}}@media(max-width:600px){.contact__cta .btn{flex:1 1 100%}}@property --angle{syntax:"<angle>";initial-value:0deg;inherits:false}@-webkit-keyframes border-spin{to{--angle:360deg}}@keyframes border-spin{to{--angle:360deg}}@-webkit-keyframes float-orb{to{-webkit-transform:translate(80px,60px) scale(1.15);transform:translate(80px,60px) scale(1.15)}}@keyframes float-orb{to{-webkit-transform:translate(80px,60px) scale(1.15);transform:translate(80px,60px) scale(1.15)}}.footer{border-top:1px solid var(--border);overflow:hidden;padding:40px 0 32px;position:relative}.footer__brand{background:linear-gradient(180deg,hsla(0,0%,100%,.14),hsla(0,0%,100%,0));-webkit-background-clip:text;background-clip:text;color:transparent;font-family:var(--font-display);font-size:clamp(3rem,14vw,11rem);font-weight:700;letter-spacing:-.06em;line-height:.9;margin-bottom:28px;text-align:center;-webkit-user-select:none;user-select:none;white-space:nowrap}.footer__brand span{color:rgba(34,211,238,.35)}.footer__row{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.footer__copy{color:var(--text-dim);font-size:.88rem}.footer__links{align-items:center;display:flex;gap:8px}.footer__links a{border:1px solid var(--border);border-radius:50%;color:var(--text-muted);display:grid;height:40px;place-items:center;transition:color .3s,border-color .3s;width:40px}.footer__links a:hover{border-color:var(--cyan);color:var(--text)}.footer__top{align-items:center;border:1px solid var(--border);border-radius:999px;color:var(--text-muted);display:inline-flex;font-size:.86rem;gap:8px;padding:10px 16px;transition:color .3s,border-color .3s}.footer__top svg{transition:-webkit-transform .3s var(--ease-out);transition:transform .3s var(--ease-out);transition:transform .3s var(--ease-out),-webkit-transform .3s var(--ease-out)}.footer__top:hover{border-color:var(--cyan);color:var(--text)}.footer__top:hover svg{-webkit-transform:translateY(-3px);transform:translateY(-3px)}.about-intro__header{margin-bottom:56px}.about-intro__eyebrow{color:var(--cyan);font-family:var(--font-mono);font-size:.82rem;letter-spacing:.18em;margin-bottom:16px;text-transform:uppercase}.about-intro__title{font-family:var(--font-display);font-size:clamp(3rem,9vw,7rem);font-weight:700;letter-spacing:-.05em;line-height:1}.about-intro__grid{grid-gap:64px;align-items:start;display:grid;gap:64px;grid-template-columns:.8fr 1.2fr}.about-intro__photo{border:1px solid var(--border-strong);border-radius:28px;box-shadow:0 40px 80px -40px rgba(139,92,246,.6);overflow:hidden;position:-webkit-sticky;position:sticky;top:110px}.about-intro__photo img{aspect-ratio:4/5;object-fit:cover;width:100%}.about-intro__body{grid-gap:22px;color:var(--text-muted);display:grid;font-size:1.1rem;gap:22px}.about-intro__body strong{color:var(--text)}.about-intro__lead{color:var(--text);font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.1rem);letter-spacing:-.02em;line-height:1.25}.about-intro__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}@media(max-width:900px){.about-intro__grid{gap:40px;grid-template-columns:1fr}.about-intro__photo{max-width:360px;position:static}}.experience__header{margin-bottom:64px}.experience__eyebrow{color:var(--cyan);font-family:var(--font-mono);font-size:.82rem;letter-spacing:.18em;margin-bottom:16px;text-transform:uppercase}.experience__title{font-family:var(--font-display);font-size:clamp(2.6rem,7vw,5.5rem);font-weight:700;letter-spacing:-.045em;line-height:1.02}.experience__list{grid-gap:32px;display:grid;gap:32px;padding-left:44px;position:relative}.experience__list:before{background:linear-gradient(180deg,var(--cyan),var(--violet),var(--pink),transparent);bottom:10px;content:"";left:9px;opacity:.6;position:absolute;top:10px;width:2px}.experience__item{position:relative}.experience__dot{background:var(--bg);border:2px solid var(--violet);border-radius:50%;box-shadow:0 0 0 6px rgba(139,92,246,.12);height:20px;left:-44px;position:absolute;top:30px;width:20px}.experience__dot--current{border-color:var(--lime);box-shadow:0 0 0 6px rgba(163,230,53,.15),0 0 20px var(--lime)}.experience__card{padding:clamp(22px,4vw,36px)}.experience__card h2{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);letter-spacing:-.02em;margin:8px 0 4px}.experience__period{align-items:center;color:var(--cyan);display:flex;font-family:var(--font-mono);font-size:.82rem;gap:8px}.experience__company{color:var(--text-muted)}.experience__company a{color:var(--text);font-weight:600;transition:color .3s}.experience__company a svg{font-size:.7em;opacity:.6}.experience__company a:hover{color:var(--cyan)}.experience__note{color:var(--text-dim);font-style:italic}.experience__stack{display:flex;flex-wrap:wrap;gap:6px;margin:20px 0 8px}.experience__project{border-top:1px dashed var(--border);margin-top:24px;padding-top:24px}.experience__project h3{font-family:var(--font-display);font-size:1.2rem}.experience__summary{color:var(--text-muted);margin:4px 0 14px}.experience__points{grid-gap:10px;display:grid;gap:10px}.experience__points li{color:var(--text-muted);font-size:.96rem;padding-left:22px;position:relative}.experience__points li:before{background:var(--gradient);border-radius:2px;content:"";height:8px;left:0;position:absolute;top:.62em;-webkit-transform:rotate(45deg);transform:rotate(45deg);width:8px}.experience__cta{margin-top:56px;text-align:center}@media(max-width:600px){.experience__list{padding-left:32px}.experience__dot{left:-32px}}.subpage__nav{padding:16px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.subpage__bar{align-items:center;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:rgba(10,12,18,.72);border:1px solid var(--border);border-radius:999px;display:flex;gap:12px;justify-content:space-between;margin:0 auto;max-width:var(--container);padding:8px 8px 8px 20px}.subpage__back{align-items:center;color:var(--text-muted);display:inline-flex;font-weight:500;gap:10px;transition:color .3s}.subpage__back svg{transition:-webkit-transform .3s var(--ease-out);transition:transform .3s var(--ease-out);transition:transform .3s var(--ease-out),-webkit-transform .3s var(--ease-out)}.subpage__back:hover{color:var(--text)}.subpage__back:hover svg{-webkit-transform:translateX(-4px);transform:translateX(-4px)}.subpage__main{min-height:70vh;padding:60px 0 120px}@media(max-width:600px){.subpage__nav{padding:12px 16px}}.not-found{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:60vh;text-align:center}.not-found h1{font-family:var(--font-display);font-size:clamp(6rem,20vw,12rem);letter-spacing:-.06em;line-height:1}.not-found p{color:var(--text-muted);font-size:1.15rem}.bg-fx{background:var(--bg);inset:0;overflow:hidden;pointer-events:none;position:fixed;z-index:-1}.bg-fx__aurora{border-radius:50%;height:60vmax;opacity:.32;position:absolute;width:60vmax;will-change:transform}.bg-fx__aurora--1{-webkit-animation:aurora-1 22s ease-in-out infinite alternate;animation:aurora-1 22s ease-in-out infinite alternate;background:radial-gradient(circle,rgba(139,92,246,.55) 0,transparent 62%);left:-15vmax;top:-25vmax}.bg-fx__aurora--2{-webkit-animation:aurora-2 26s ease-in-out infinite alternate;animation:aurora-2 26s ease-in-out infinite alternate;background:radial-gradient(circle,rgba(34,211,238,.42) 0,transparent 62%);right:-25vmax;top:10vmax}.bg-fx__aurora--3{-webkit-animation:aurora-3 30s ease-in-out infinite alternate;animation:aurora-3 30s ease-in-out infinite alternate;background:radial-gradient(circle,rgba(244,114,182,.3) 0,transparent 62%);bottom:-30vmax;left:20vmax}.bg-fx__grid{background-image:linear-gradient(hsla(0,0%,100%,.035) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.035) 1px,transparent 0);background-size:64px 64px;inset:0;mask-image:radial-gradient(ellipse 80% 60% at 50% 0,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 0,#000 30%,transparent 75%);position:absolute}.bg-fx__grain{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");inset:-50%;opacity:.06;position:absolute}@-webkit-keyframes aurora-1{to{-webkit-transform:translate(18vmax,14vmax) scale(1.15);transform:translate(18vmax,14vmax) scale(1.15)}}@keyframes aurora-1{to{-webkit-transform:translate(18vmax,14vmax) scale(1.15);transform:translate(18vmax,14vmax) scale(1.15)}}@-webkit-keyframes aurora-2{to{-webkit-transform:translate(-16vmax,20vmax) scale(.9);transform:translate(-16vmax,20vmax) scale(.9)}}@keyframes aurora-2{to{-webkit-transform:translate(-16vmax,20vmax) scale(.9);transform:translate(-16vmax,20vmax) scale(.9)}}@-webkit-keyframes aurora-3{to{-webkit-transform:translate(-10vmax,-18vmax) scale(1.2);transform:translate(-10vmax,-18vmax) scale(1.2)}}@keyframes aurora-3{to{-webkit-transform:translate(-10vmax,-18vmax) scale(1.2);transform:translate(-10vmax,-18vmax) scale(1.2)}}.cursor-glow{background:radial-gradient(circle,rgba(34,211,238,.09) 0,rgba(139,92,246,.05) 35%,transparent 65%);border-radius:50%;height:520px;left:0;margin:-260px 0 0 -260px;opacity:0;pointer-events:none;position:fixed;top:0;transition:opacity .4s;width:520px;will-change:transform;z-index:0}.scroll-progress{background:var(--gradient);height:3px;left:0;position:fixed;right:0;top:0;-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:0 50%;transform-origin:0 50%;z-index:1001}.preloader{background:var(--bg);-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0);display:grid;inset:0;place-items:center;position:fixed;transition:-webkit-clip-path .9s var(--ease-out);transition:clip-path .9s var(--ease-out);transition:clip-path .9s var(--ease-out),-webkit-clip-path .9s var(--ease-out);z-index:2000}.preloader--leaving{-webkit-clip-path:inset(0 0 100% 0);clip-path:inset(0 0 100% 0)}.preloader__inner{text-align:center;width:min(420px,80vw)}.preloader__name{-webkit-animation:preloader-in .8s var(--ease-out) both;animation:preloader-in .8s var(--ease-out) both;font-family:var(--font-display);font-size:clamp(2rem,6vw,3.2rem);font-weight:700;letter-spacing:-.03em}.preloader__bar{background:var(--border);border-radius:2px;height:2px;margin:24px 0 14px;overflow:hidden}.preloader__bar span{background:var(--gradient);display:block;height:100%;-webkit-transform-origin:0 50%;transform-origin:0 50%}.preloader__count{color:var(--text-dim);font-family:var(--font-mono);font-size:.85rem;letter-spacing:.3em}@-webkit-keyframes preloader-in{0%{-webkit-filter:blur(8px);filter:blur(8px);opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}}@keyframes preloader-in{0%{-webkit-filter:blur(8px);filter:blur(8px);opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}}
/*# sourceMappingURL=main.f6ef3adb.css.map*/