.border-glow-card{--edge-proximity: 0;--cursor-angle: 45deg;--edge-sensitivity: 30;--color-sensitivity: calc(var(--edge-sensitivity) + 20);--border-radius: 8px;--glow-padding: 34px;--cone-spread: 25;position:relative;isolation:isolate;display:grid;border:1px solid rgb(255 255 255 / 13%);border-radius:var(--border-radius);background:var(--card-bg, #0e1117);box-shadow:#00000029 0 1px 2px,#00000029 0 8px 16px,#0003 0 24px 60px;overflow:visible;transform:translateZ(.01px)}.border-glow-card:before,.border-glow-card:after,.border-glow-card>.edge-light{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;transition:opacity .25s ease-out;z-index:-1}.border-glow-card:not(:hover):not(.sweep-active):before,.border-glow-card:not(:hover):not(.sweep-active):after,.border-glow-card:not(:hover):not(.sweep-active)>.edge-light{opacity:0;transition:opacity .75s ease-in-out}.border-glow-card:before{border:1px solid transparent;background:linear-gradient(var(--card-bg, #0e1117) 0 100%) padding-box,linear-gradient(#fff0,#fff0) border-box,var(--gradient-one, radial-gradient(at 80% 55%, #69d2df 0px, transparent 50%)) border-box,var(--gradient-two, radial-gradient(at 69% 34%, #f3d36b 0px, transparent 50%)) border-box,var(--gradient-three, radial-gradient(at 8% 6%, #ff6b9a 0px, transparent 50%)) border-box,var(--gradient-four, radial-gradient(at 41% 38%, #69d2df 0px, transparent 50%)) border-box,var(--gradient-five, radial-gradient(at 86% 85%, #f3d36b 0px, transparent 50%)) border-box,var(--gradient-six, radial-gradient(at 82% 18%, #ff6b9a 0px, transparent 50%)) border-box,var(--gradient-seven, radial-gradient(at 51% 4%, #f3d36b 0px, transparent 50%)) border-box,var(--gradient-base, linear-gradient(#69d2df 0 100%)) border-box;opacity:calc((var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)));-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center,black calc(var(--cone-spread) * 1%),transparent calc((var(--cone-spread) + 15) * 1%),transparent calc((100 - var(--cone-spread) - 15) * 1%),black calc((100 - var(--cone-spread)) * 1%));mask-image:conic-gradient(from var(--cursor-angle) at center,black calc(var(--cone-spread) * 1%),transparent calc((var(--cone-spread) + 15) * 1%),transparent calc((100 - var(--cone-spread) - 15) * 1%),black calc((100 - var(--cone-spread)) * 1%))}.border-glow-card:after{border:1px solid transparent;background:var(--gradient-one, radial-gradient(at 80% 55%, #69d2df 0px, transparent 50%)) padding-box,var(--gradient-two, radial-gradient(at 69% 34%, #f3d36b 0px, transparent 50%)) padding-box,var(--gradient-three, radial-gradient(at 8% 6%, #ff6b9a 0px, transparent 50%)) padding-box,var(--gradient-four, radial-gradient(at 41% 38%, #69d2df 0px, transparent 50%)) padding-box,var(--gradient-five, radial-gradient(at 86% 85%, #f3d36b 0px, transparent 50%)) padding-box,var(--gradient-six, radial-gradient(at 82% 18%, #ff6b9a 0px, transparent 50%)) padding-box,var(--gradient-seven, radial-gradient(at 51% 4%, #f3d36b 0px, transparent 50%)) padding-box,var(--gradient-base, linear-gradient(#69d2df 0 100%)) padding-box;-webkit-mask-image:linear-gradient(to bottom,#000,#000),radial-gradient(ellipse at 50% 50%,black 40%,transparent 65%),radial-gradient(ellipse at 66% 66%,black 5%,transparent 40%),radial-gradient(ellipse at 33% 33%,black 5%,transparent 40%),radial-gradient(ellipse at 66% 33%,black 5%,transparent 40%),radial-gradient(ellipse at 33% 66%,black 5%,transparent 40%),conic-gradient(from var(--cursor-angle) at center,transparent 5%,black 15%,black 85%,transparent 95%);mask-image:linear-gradient(to bottom,#000,#000),radial-gradient(ellipse at 50% 50%,black 40%,transparent 65%),radial-gradient(ellipse at 66% 66%,black 5%,transparent 40%),radial-gradient(ellipse at 33% 33%,black 5%,transparent 40%),radial-gradient(ellipse at 66% 33%,black 5%,transparent 40%),radial-gradient(ellipse at 33% 66%,black 5%,transparent 40%),conic-gradient(from var(--cursor-angle) at center,transparent 5%,black 15%,black 85%,transparent 95%);-webkit-mask-composite:source-out,source-over,source-over,source-over,source-over,source-over;mask-composite:subtract,add,add,add,add,add;mix-blend-mode:soft-light;opacity:calc(var(--fill-opacity, .32) * (var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)))}.border-glow-card>.edge-light{inset:calc(var(--glow-padding) * -1);pointer-events:none;z-index:1;-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center,black 2.5%,transparent 10%,transparent 90%,black 97.5%);mask-image:conic-gradient(from var(--cursor-angle) at center,black 2.5%,transparent 10%,transparent 90%,black 97.5%);mix-blend-mode:plus-lighter;opacity:calc((var(--edge-proximity) - var(--edge-sensitivity)) / (100 - var(--edge-sensitivity)))}.border-glow-card>.edge-light:before{content:"";position:absolute;inset:var(--glow-padding);border-radius:inherit;box-shadow:inset 0 0 0 1px var(--glow-color, hsl(188deg 72% 68% / 100%)),inset 0 0 1px 0 var(--glow-color-60, hsl(188deg 72% 68% / 60%)),inset 0 0 3px 0 var(--glow-color-50, hsl(188deg 72% 68% / 50%)),inset 0 0 6px 0 var(--glow-color-40, hsl(188deg 72% 68% / 40%)),inset 0 0 15px 0 var(--glow-color-30, hsl(188deg 72% 68% / 30%)),inset 0 0 25px 2px var(--glow-color-20, hsl(188deg 72% 68% / 20%)),inset 0 0 50px 2px var(--glow-color-10, hsl(188deg 72% 68% / 10%)),0 0 1px 0 var(--glow-color-60, hsl(188deg 72% 68% / 60%)),0 0 3px 0 var(--glow-color-50, hsl(188deg 72% 68% / 50%)),0 0 6px 0 var(--glow-color-40, hsl(188deg 72% 68% / 40%)),0 0 15px 0 var(--glow-color-30, hsl(188deg 72% 68% / 30%)),0 0 25px 2px var(--glow-color-20, hsl(188deg 72% 68% / 20%)),0 0 50px 2px var(--glow-color-10, hsl(188deg 72% 68% / 10%))}.border-glow-inner{position:relative;z-index:2;display:flex;flex-direction:column;overflow:hidden;border-radius:inherit}.animated-gradient-text{display:inline-block;max-width:fit-content}.animated-gradient-text__content{display:inline-block;background-image:var(--gradient-text-image);background-position:0% 50%;background-repeat:repeat;background-size:var(--gradient-text-size);-webkit-background-clip:text;background-clip:text;color:transparent;animation:gradient-text-shift var(--gradient-text-duration) ease-in-out infinite alternate}.animated-gradient-text--pause-on-hover:hover .animated-gradient-text__content{animation-play-state:paused}@keyframes gradient-text-shift{to{background-position:100% 50%}}@media(prefers-reduced-motion:reduce){.animated-gradient-text__content{animation:none}}:root{color:#f7f7fb;background:#03030a;font-family:Montserrat,PingFang SC,Microsoft YaHei,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--body-font: "Montserrat", "PingFang SC", "Microsoft YaHei", ui-sans-serif, system-ui, sans-serif;--display-font: "Unbounded", "PingFang SC", "Microsoft YaHei", ui-sans-serif, system-ui, sans-serif;--bg: #03030a;--panel: #0e0e16;--panel-2: #171521;--line: rgba(129, 83, 254, .18);--muted: #aaa0bf;--text: #f7f7fb;--accent: #8153FE;--accent-2: #6F3DF2;--warm: #f1ecff;--olive: #221b33;--cyan: var(--accent);--yellow: var(--accent);--pink: #94DC23;--green: #94DC23}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:1180px;overflow-x:hidden;font-family:var(--body-font);background:#03030a}main{position:relative;overflow:hidden;isolation:isolate}.siteBackground{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;opacity:1;background:radial-gradient(circle at 16% 8%,rgba(129,83,254,.58),transparent 32%),radial-gradient(circle at 88% 14%,rgba(148,220,35,.32),transparent 30%),linear-gradient(135deg,#03030a,#151020 46%,#05070a);pointer-events:none;overflow:hidden}main>:not(.siteBackground):not(.siteNav){position:relative;z-index:1}.siteBackground:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:linear-gradient(115deg,transparent 0 36%,rgba(148,220,35,.08) 48%,transparent 62%),radial-gradient(circle at 22% 6%,rgba(129,83,254,.08),transparent 24%),radial-gradient(circle at 86% 18%,rgba(148,220,35,.06),transparent 26%),linear-gradient(180deg,#03030a6b,#03030aad 48%,#03030ae6)}.liquidBlob{position:absolute;z-index:1;display:block;border-radius:48% 52% 44% 56%/58% 44% 56% 42%;filter:blur(56px);mix-blend-mode:screen;opacity:.38;transform:translateZ(0);animation:liquid-drift 18s ease-in-out infinite alternate}.liquidBlobOne{left:-12%;top:2%;width:48vw;height:48vw;background:#8153feb8}.liquidBlobTwo{right:-14%;top:12%;width:42vw;height:42vw;background:#94dc236b;animation-duration:22s;animation-delay:-6s}.liquidBlobThree{left:26%;bottom:-24%;width:52vw;height:34vw;background:#8153fe6b;animation-duration:26s;animation-delay:-11s}@keyframes liquid-drift{0%{border-radius:48% 52% 44% 56%/58% 44% 56% 42%;transform:translate3d(-2%,-1%,0) rotate(0) scale(1)}50%{border-radius:58% 42% 56% 44%/46% 60% 40% 54%;transform:translate3d(5%,3%,0) rotate(9deg) scale(1.08)}to{border-radius:42% 58% 48% 52%/54% 42% 58% 46%;transform:translate3d(1%,-4%,0) rotate(-7deg) scale(.96)}}h1,h2,h3,h4,.brand,.statCard strong{font-family:var(--display-font)}a{color:inherit;text-decoration:none}img,video{max-width:100%}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.liquidBlob{display:none}}.shell{width:min(1700px,calc(100% - 400px));margin:0 auto}.siteNav{position:fixed;top:20px;left:50%;z-index:50;width:min(680px,calc(100vw - 48px));height:auto;background:transparent;box-shadow:none;transform:translate(-50%)}.siteNavInner{display:flex;width:100%;align-items:center;justify-content:center}.navPill{position:relative;z-index:2;display:flex;width:100%;min-height:46px;align-items:center;justify-content:center;gap:0;border:1px solid rgba(189,169,255,.3);border-radius:999px;background:#1713219e;padding:4px 10px;color:#ffffffeb;box-shadow:none;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);pointer-events:auto}.siteNav nav{display:flex;flex:1;align-items:center;justify-content:center;gap:0;color:inherit;font-size:12px;font-weight:850}.siteNav nav a{min-height:36px;display:inline-flex;align-items:center;border-radius:999px;padding:0 clamp(12px,1.05vw,17px);transition:background .18s ease,color .18s ease;white-space:nowrap}.siteNav nav a:hover{background:#ffffff29;color:#fff}.navPill .navContact:hover{border-color:transparent;background:#ffffff2e;color:#fff}.resumeLink:hover,.talkButton:hover{border-color:#94dc239e;background:#94dc2324;color:var(--pink)}.navContact,.resumeLink,.talkButton{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:8px;background:#8153fe1a;padding:0 18px;color:#fff;font-size:14px;font-weight:900}.navPill .navContact{min-height:36px;border:0;border-radius:999px;background:transparent;padding:0 17px;color:#fff;box-shadow:none;font-size:12px}.hero{position:relative;isolation:isolate;height:86vh;min-height:620px;max-height:820px;overflow:hidden;background:transparent}.heroInner{display:grid;grid-template-columns:minmax(0,1fr) minmax(480px,680px);grid-template-rows:minmax(0,1fr);align-items:center;column-gap:clamp(60px,7vw,130px);height:100%;min-height:0;padding:108px 0 52px}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;pointer-events:none;z-index:1}.hero:after{content:none}.heroLeft,.heroRight{position:relative;z-index:2}.heroCopy{position:relative;z-index:2;grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:flex-start;gap:clamp(24px,3vh,34px);transform:translateY(-12px)}.heroLeft{display:grid;max-width:560px;justify-items:start;text-align:left}.heroRight{display:grid;justify-self:start;width:min(100%,560px);justify-items:start;margin-top:24px;text-align:left}.heroPortraitFrame{grid-column:2;grid-row:1;position:relative;align-self:end;justify-self:end;width:min(100%,620px);height:min(76vh,790px);transform:translate(clamp(20px,3vw,58px),-54px);isolation:isolate}.heroPortrait{position:absolute;z-index:1;right:-6%;bottom:-9%;width:100%;height:auto;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 26px 34px rgba(3,3,10,.42))}.heroLeft p,.heroRight p,.sectionTitle p,.contactLayout>div:first-child p{margin:0 0 14px;color:var(--cyan);font-size:15px;font-weight:900}.heroLeft p,.heroRight p{color:#bda9ff}.heroRight .heroRoleEn{margin:14px 0 0;color:var(--pink)}.eyebrowEn{display:inline-block;margin-left:10px;color:#eee9ff;font-size:.68em;font-weight:800}.heroLeft h1{display:flex;align-items:flex-end;gap:14px;margin:-.06em 0;padding:.06em 0 .08em;color:#fff;font-size:clamp(62px,5.2vw,104px);font-weight:800;line-height:1;white-space:nowrap}.heroLeft h1 .heroEnglishName{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-left:0;color:var(--pink);font-size:.34em;letter-spacing:0;line-height:1.05;white-space:nowrap}.heroEnglishName small{color:#c8bedf;font-family:var(--body-font);font-size:14px;font-weight:600;line-height:1}.heroSocial{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:32px}.heroSocial a{display:inline-flex;min-height:42px;align-items:center;border:1px solid rgba(220,208,255,.34);border-radius:8px;background:#08051247;padding:0 16px;color:#fff;font-size:13px;font-weight:850;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.heroSocial a:hover{border-color:#94dc2394;background:#94dc231a;color:var(--pink)}.heroRight h2{display:flex;align-items:baseline;gap:0;margin:0;color:#fff;font-size:clamp(44px,4vw,76px);font-weight:800;line-height:.92;white-space:nowrap}.heroRight h2 span{display:block;margin-left:0;color:#fff;white-space:nowrap}.roleTags{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:34px}.roleTags span{width:fit-content;border:1px solid rgba(220,208,255,.34);border-radius:8px;background:#08051247;padding:10px 14px;color:#fff;font-size:14px;font-weight:850;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.softwareStrip{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0;position:relative;z-index:6}.softwareTitle{display:grid;gap:7px}.softwareTitle span{color:var(--pink);font-size:13px;font-weight:950;text-transform:uppercase}.softwareTitle strong{color:#fff;font-family:var(--display-font);font-size:20px;font-weight:800}.softwareList{display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.softwareMarquee{display:flex;flex:0 0 auto;gap:12px;min-width:max-content;padding-right:12px;animation:software-scroll 28s linear infinite}.softwareList:hover .softwareMarquee{animation-play-state:paused}.softwareItem{display:grid;flex:0 0 104px;min-height:88px;place-items:center;gap:7px;border:1px solid rgba(129,83,254,.16);border-radius:8px;background:radial-gradient(circle at 50% 0%,rgba(129,83,254,.15),transparent 58%),#8153fe0b;padding:10px 8px;transition:transform .18s ease,border-color .18s ease,background .18s ease}@keyframes software-scroll{0%{transform:translate(0)}to{transform:translate(-100%)}}.softwareItem:hover{transform:translateY(-4px);border-color:#94dc238f;background:radial-gradient(circle at 50% 0%,rgba(148,220,35,.22),transparent 60%),#8153fe13}.softwareIcon{width:44px;height:44px;object-fit:contain}.softwareIcon--kling{border-radius:8px}.softwareIcon--github{color:#fff;stroke-width:1.8}.softwareItem span{color:#d6cfee;font-size:10px;font-weight:850;text-align:center}.aboutSection,.projectsSection,.experienceSection,.methodologySection{padding:110px 0}.aboutSection{position:relative;display:block;border-top:0;padding-top:64px;padding-bottom:86px}.aboutSection:before{content:none}.aboutSection>*{position:relative;z-index:1}.aboutCopy{width:min(820px,100%);margin:0 auto;text-align:center}.aboutCopy .sectionTitle{margin-bottom:22px}.experienceSection{padding-top:58px}.projectsSection{padding-bottom:48px}.methodologySection{padding-top:48px;padding-bottom:96px}.aboutCopy h2,.sectionTitle h2,.contactLayout h2{margin:0;color:#fff;font-size:clamp(34px,3.3vw,60px);font-weight:800;line-height:1.02}.aboutCopy h2 span{display:block;color:var(--cyan)}.aboutDescription{max-width:870px;margin:0 auto;color:#bdb7ca;font-size:15px;line-height:1.75}.aboutStats{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;align-items:center;margin-top:76px;padding:24px 18px 30px;isolation:isolate}.aboutStats:before{content:"";position:absolute;z-index:-1;top:16%;bottom:8%;left:50%;width:100vw;transform:translate(-50%);background:linear-gradient(90deg,#8153fea3 0,#8153fea3 18%,#94dc238f 28%,#94dc238f 42%,#8153fe99 52%,#8153fe99 70%,#94dc236b 82%,#94dc236b);background-size:220% 100%;background-position:0% 50%;clip-path:polygon(0 40%,15% 26%,31% 41%,47% 30%,63% 44%,81% 27%,100% 40%,100% 62%,82% 48%,64% 65%,47% 50%,31% 61%,15% 47%,0 62%);opacity:.55;filter:blur(1px);animation:about-wave-flow 13s linear infinite;will-change:background-position}@keyframes about-wave-flow{to{background-position:220% 50%}}.statCard,.experienceCard,.educationCard,.contactCards a,.contactCards div{border:1px solid var(--line);border-radius:8px;background:#8153fe0f;box-shadow:0 24px 70px #0000003d}.statCard{display:flex;min-width:0;min-height:284px;align-items:center;justify-content:center;flex-direction:column;border-radius:110px 110px 10px 10px;background:linear-gradient(180deg,#211c32eb,#0c0b16e6);padding:42px 18px 28px;text-align:center;box-shadow:0 22px 54px #00000047;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.statGlow{min-width:0;min-height:284px}.statGlow .border-glow-inner{min-height:100%;z-index:5}.statGlow .statCard{width:100%;min-height:100%;border:0;border-radius:inherit;box-shadow:none}.statGlow.border-glow-card:before,.statGlow.border-glow-card:after{z-index:3;pointer-events:none}.statGlow.border-glow-card>.edge-light{z-index:4}.statGlow.border-glow-card:hover:before{opacity:.9;-webkit-mask-image:none;mask-image:none}.statGlow.border-glow-card:hover:after{opacity:.16;-webkit-mask-image:none;mask-image:none}.statGlow.border-glow-card:hover>.edge-light{opacity:.75;-webkit-mask-image:none;mask-image:none}.statGlow:nth-child(2n){transform:translateY(22px)}.statGlow:nth-child(3),.statGlow:nth-child(5){transform:translateY(-8px)}.statCard strong{display:block;color:#fff;font-size:clamp(24px,2vw,34px);line-height:.98;white-space:nowrap}.statCard span{display:block;margin-top:24px;color:var(--pink);font-size:12px;font-weight:900}.statCard small{display:block;margin-top:6px;color:#aaa0bfb8;font-family:var(--body-font);font-size:10px;font-weight:500;line-height:1.25;text-transform:uppercase}.sectionTitle{position:relative;isolation:isolate;margin-bottom:52px}.sectionTitle>:not(.sectionTitleGhost),.contactLayout>div:first-child>:not(.sectionTitleGhost){position:relative;z-index:1}.sectionTitleGhost{position:absolute;z-index:-1;bottom:-.1em;left:50%;width:max-content;margin:0;color:#f4f1ff0e;font-family:var(--display-font);font-size:clamp(58px,8.5vw,148px);font-weight:900;letter-spacing:-.08em;line-height:.76;text-align:center;white-space:nowrap;pointer-events:none;transform-origin:center center}.contactLayout>div:first-child{position:relative;isolation:isolate}.sectionTitleGhost--contact{top:-.08em;bottom:auto}.siteNav,.heroLeft h1,.heroEnglishName,.heroRight h2,.heroRoleEn,.resumeDownload,.heroEducation,.heroPortrait,.sectionTitleGhost,.sectionTitle h2,.sectionTitle>p,.contactLayout h2,.contactLayout>div:first-child>p,.statCard,.experienceCard,.projectRow,.methodologyPillar,.contactCards>*,.softwareStrip,.projectImage img,.projectImage video{will-change:transform,opacity,clip-path}.projectList{display:grid;gap:42px}.projectRow{display:grid;grid-template-columns:minmax(300px,.36fr) minmax(0,.64fr);gap:44px;align-items:stretch;border-top:1px solid var(--line);padding-top:42px}.projectInfo{display:flex;flex-direction:column;justify-content:flex-start;max-width:430px;padding-top:10px}.projectMeta{display:grid;gap:12px;margin-bottom:24px}.projectMeta span{color:var(--cyan);font-size:14px;font-weight:950}.projectNumber{font-family:var(--display-font);font-size:70px;font-weight:800;line-height:1}.projectInfo h3{max-width:360px;margin:0 0 18px;color:#fff;font-size:clamp(28px,2.35vw,44px);line-height:1.08}.projectInfo p{margin:0;color:#c8bedf;font-size:15px;line-height:1.75}.projectInfo small{display:block;margin-top:24px;color:var(--pink);font-size:13px;font-weight:900;line-height:1.5}.projectImage{position:relative;overflow:hidden;min-height:390px;border:1px solid var(--line);border-radius:8px;background:#0e0e16}.projectImage img,.projectImage video{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;border-radius:inherit;object-fit:cover;transition:transform .6s ease,filter .6s ease}.projectRow:hover .projectImage img,.projectRow:hover .projectImage video{transform:scale(1.04);filter:saturate(1.1)}.projectImage>button{position:absolute;right:20px;bottom:20px;display:inline-flex;min-height:52px;align-items:center;gap:10px;border:0;border-radius:8px;background:var(--pink);color:#03030a;padding:0 16px;font:inherit;font-size:13px;font-weight:900;cursor:pointer;transition:transform .18s ease,background-color .18s ease}.projectImage>button:hover{transform:translateY(-2px);background:#a5ed32}.galleryBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;overflow-y:auto;overscroll-behavior:contain;background:#03030ae0;padding:28px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.galleryPanel{width:min(1480px,100%);min-height:calc(100svh - 56px);margin:0 auto;border:1px solid rgba(129,83,254,.32);border-radius:8px;background:radial-gradient(circle at 10% 4%,rgba(129,83,254,.22),transparent 26%),radial-gradient(circle at 92% 6%,rgba(148,220,35,.12),transparent 24%),#080710f5;padding:32px;box-shadow:0 40px 110px #0000008c}.galleryHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.galleryHeader span{color:var(--pink);font-size:11px;font-weight:900;text-transform:uppercase}.galleryHeader h2{margin:8px 0 0;color:#fff;font-size:clamp(28px,3vw,48px);line-height:1.05}.galleryClose{display:inline-grid;flex:0 0 auto;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:#12101dc7;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.galleryTabs{display:flex;gap:8px;margin:30px 0 26px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.galleryTabs::-webkit-scrollbar{display:none}.galleryTabs button{min-height:40px;flex:0 0 auto;border:1px solid rgba(129,83,254,.28);border-radius:6px;background:#8153fe0f;padding:0 18px;color:#c8bedf;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.galleryTabs button.isActive{border-color:var(--pink);background:var(--pink);color:#05070a}.galleryFilters{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0 22px}.galleryFilters button{min-height:34px;border:1px solid rgba(190,186,202,.22);border-radius:5px;background:#bebaca0d;padding:0 14px;color:#aaa3b8;font:inherit;font-size:12px;font-weight:750;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,color .18s ease}.galleryFilters button:hover{border-color:#94dc2380;color:#fff}.galleryFilters button.isActive{border-color:#94dc23c7;background:#94dc231f;color:var(--pink)}.galleryGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.galleryTile{position:relative;overflow:hidden;aspect-ratio:16 / 10;border:1px solid rgba(129,83,254,.24);border-radius:8px;background:#0e0e16;padding:0;color:#fff;cursor:zoom-in}.galleryTile img,.galleryTile video{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease,filter .4s ease}.galleryTile--video video{background:#050508;object-fit:contain}.galleryTile img.galleryImage--show-full{object-fit:contain}.galleryTile:hover img,.galleryTile:hover video{transform:scale(1.035);filter:saturate(1.08)}.galleryTile:hover img.galleryImage--show-full{transform:none}.galleryTile--expanded{grid-column:span 2;z-index:2;aspect-ratio:16 / 10;cursor:default;box-shadow:0 16px 42px #0000006b}.galleryTile--expanded img,.galleryTile--expanded video{object-fit:contain;transform:none;filter:none}.galleryTileClose{position:absolute;top:10px;right:10px;z-index:3;display:grid;width:32px;height:32px;place-items:center;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:#07060eb8;color:#fff;cursor:pointer}.galleryTileClose:hover{background:#8153fe73}.galleryTile:after{content:"";position:absolute;top:45%;right:0;bottom:0;left:0;background:linear-gradient(transparent,#03030ae0);pointer-events:none}.galleryTile span{position:absolute;left:16px;right:68px;bottom:14px;z-index:1;overflow:hidden;font-size:13px;font-weight:800;text-align:left;text-overflow:ellipsis;white-space:nowrap}.galleryTile small{position:absolute;right:12px;bottom:12px;z-index:1;border-radius:4px;background:var(--pink);padding:4px 7px;color:#03030a;font-size:10px;font-weight:900}.experienceTimeline{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;padding-top:70px}.experienceTimeline:before{content:"";position:absolute;left:0;right:0;top:28px;height:1px;background:linear-gradient(90deg,#bebaca1f,#bebaca80,#bebaca1f)}.experienceCard{position:relative;min-height:0;border:0;background:transparent;box-shadow:none;padding:0 10px 0 0}.timelineDot{position:absolute;left:0;top:-50px;width:15px;height:15px;border-radius:50%;background:#827d8e;box-shadow:0 0 0 5px #bebaca14,0 0 14px #bebaca3d}.experienceCard:nth-child(3) .timelineDot{background:var(--pink);animation:timelinePulse 2.2s ease-in-out infinite}@keyframes timelinePulse{0%,to{transform:scale(.9);box-shadow:0 0 0 4px #94dc2314,0 0 12px #94dc2357}50%{transform:scale(1.12);box-shadow:0 0 0 8px #94dc2324,0 0 30px #94dc23e6}}.experienceMeta{display:flex;min-height:0;align-items:flex-start;flex-direction:column;gap:12px}.companyLogo{display:inline-flex;min-width:74px;min-height:30px;align-items:center;justify-content:center;border:1px solid rgba(129,83,254,.26);border-radius:6px;background:#8153fe14;padding:0 10px;color:#fff;font-family:var(--display-font);font-size:11px;font-weight:900;letter-spacing:0}.companyProductLogos{display:flex;align-items:center;gap:10px}.companyProductLogos img{display:block;width:38px;height:38px;border-radius:8px;object-fit:cover}.companyLogo--riley{color:#fff;font-family:var(--body-font);font-size:12px;font-weight:950}.companyLogo--riley:first-letter{color:var(--pink)}.companyLogo--huafang{color:#03030a;background:var(--pink)}.companyLogo--whoswho{color:#ff4a5f;background:#ff4a5f14}.experienceCard span,.educationCard span{color:var(--pink);font-size:13px;font-weight:900}.experienceCard h3{margin:22px 0 12px;color:#fff;font-size:24px;line-height:1.08}.experienceCard strong{color:var(--cyan);font-size:15px}.experienceCard p,.educationCard p{color:#c8bedf;font-size:14px;line-height:1.75}.experienceCard p{font-size:13px;line-height:1.7}.educationCard{display:flex;gap:22px;margin-top:20px;padding:28px}.heroEducation{position:relative;z-index:2;width:fit-content;max-width:100%;margin-top:0;align-items:center;text-align:left;border:0;background:transparent;box-shadow:none;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none;transform:translateY(clamp(60px,12vh,110px))}.heroEducation{gap:16px}.heroEducation h3{margin:0;position:relative;z-index:3;font-family:PingFang SC,Microsoft YaHei,sans-serif;font-size:clamp(20px,1.4vw,24px);font-weight:300;white-space:nowrap}.heroEducation .educationLogo{flex-basis:56px;width:56px;height:56px;border:0;background:transparent;box-shadow:none}.resumeDownload{display:inline-flex;align-items:center;gap:10px;min-height:52px;margin-top:clamp(4px,1vh,10px);border:0;border-radius:999px;background:#94dc23;padding:0 25px;color:#07100a;font-size:15px;font-weight:850;letter-spacing:.04em;box-shadow:0 10px 28px #94dc2338;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.resumeDownload:hover{background:#b5f24e;color:#07100a;box-shadow:0 12px 32px #94dc2366;transform:translateY(-2px)}.resumeDownload:focus-visible{outline:3px solid rgba(148,220,35,.5);outline-offset:4px}.educationLogo{display:block;flex:0 0 64px;width:64px;height:64px;object-fit:contain;border:1px solid rgba(148,220,35,.42);border-radius:50%;background:radial-gradient(circle at 50% 45%,rgba(148,220,35,.18),transparent 56%),#8153fe14;color:var(--pink);font-family:var(--display-font);font-size:13px;font-weight:900}.educationCard h3{margin:10px 0 8px;color:#fff;font-size:22px}.methodologyGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(180,177,190,.24);border-bottom:1px solid rgba(180,177,190,.16)}.methodologyPillar{position:relative;min-width:0;padding:32px 28px 36px;border-left:1px solid rgba(180,177,190,.2);transition:background .36s ease,box-shadow .36s ease}.methodologyPillar:first-child{border-left:0}.methodologyPillar:hover{z-index:1;background:radial-gradient(circle at 50% 48%,rgba(148,220,35,.09),transparent 68%);box-shadow:0 0 30px #94dc2329}.methodologyNumber{display:block;color:var(--pink);font-family:var(--display-font);font-size:14px;font-weight:900;line-height:1}.methodologyPillar h3{margin:44px 0 8px;color:#fff;font-size:clamp(21px,1.5vw,27px);line-height:1.15}.methodologyPillar small{display:block;min-height:30px;color:#aaa0bfc7;font-size:10px;font-weight:850;line-height:1.4;text-transform:uppercase}.methodologyPillar p{margin:24px 0 0;color:#c8bedf;font-size:13px;line-height:1.75}.methodologyPillar ul{display:grid;gap:8px;margin:24px 0 0;padding:0;list-style:none}.methodologyPillar li{position:relative;padding-left:14px;color:#d7d2e2b8;font-size:11px;font-weight:700}.methodologyPillar li:before{content:"";position:absolute;left:0;top:.58em;width:4px;height:4px;border-radius:50%;background:var(--pink);box-shadow:0 0 10px #94dc2373}.contactSection{position:relative;isolation:isolate;overflow:hidden;min-height:auto;border-top:1px solid var(--line);background:radial-gradient(circle at 16% 18%,rgba(129,83,254,.2),transparent 28%),radial-gradient(circle at 78% 80%,rgba(148,220,35,.13),transparent 28%),#03030a;padding:84px 0 72px}.contactFerrofluid{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.8;mix-blend-mode:screen}.contactLayout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.52fr);gap:10px 48px;align-items:start}.contactLayout h2{max-width:780px;font-size:clamp(34px,2.8vw,52px);line-height:1.08}.contactCards{display:grid;gap:10px}.contactCards a,.contactCards div{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px 14px;align-items:center;padding:18px 20px}.contactCards svg{color:var(--pink)}.contactCards span{color:var(--muted);font-size:13px;font-weight:900;text-transform:uppercase}.contactCards strong{grid-column:2 / -1;color:#fff;font-size:16px;word-break:break-word}.talkButton{width:fit-content;margin-top:30px;background:var(--pink);color:#03030a}@media(max-width:1280px){body{min-width:0}.shell{width:min(100% - 96px,1120px)}.navPill{width:100%}.heroInner{grid-template-columns:minmax(0,1fr) minmax(340px,460px);column-gap:54px;row-gap:24px}.hero{height:78vh;min-height:600px;max-height:720px}.heroCopy{gap:22px;transform:translateY(-12px)}.heroPortraitFrame{align-self:center;width:82%;height:min(62vh,560px);transform:translate(18px,10px)}.heroEducation{transform:translateY(clamp(32px,6vh,54px))}.projectRow{grid-template-columns:minmax(260px,.38fr) minmax(0,.62fr)}.projectImage{grid-column:auto}.softwareStrip{grid-template-columns:1fr}}@media(max-width:1100px){.methodologyGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.methodologyPillar:nth-child(odd){border-left:0}.methodologyPillar:nth-child(n+3){border-top:1px solid rgba(180,177,190,.2)}.hero{height:auto;min-height:100svh;max-height:none}.heroInner{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(420px,1fr);gap:28px;height:auto;min-height:100svh;padding:132px 0 38px}.heroCopy,.heroPortraitFrame{grid-column:1}.heroCopy{grid-row:1;transform:none}.heroPortraitFrame{grid-row:2;align-self:end;justify-self:center;width:min(64vw,520px);height:min(58vh,620px);transform:none}.heroPortrait{right:auto;bottom:4%;left:6%;width:88%}.heroEducation{transform:none}}@media(max-width:900px){body{min-width:0}.shell{width:min(100% - 32px,760px)}.siteNav{top:12px;width:calc(100vw - 24px)}.siteNavInner{width:100%}.navPill{width:min(100%,520px);min-height:42px;overflow:hidden;padding:3px 6px}.siteNav nav{display:flex;flex:1;gap:0;overflow-x:auto;scrollbar-width:none}.siteNav nav::-webkit-scrollbar{display:none}.siteNav nav a{min-height:34px;padding:0 11px;font-size:11px}.navContact{min-height:34px;padding:0 12px;font-size:11px}.hero{height:auto;min-height:0;max-height:none}.heroInner{grid-template-columns:1fr;grid-template-rows:auto 330px;gap:14px;height:auto;min-height:0;padding:118px 0 24px;transform:none}.heroCopy,.heroPortraitFrame{grid-column:1}.heroCopy{grid-row:1;transform:none}.heroLeft,.heroRight{justify-self:stretch;justify-items:start;text-align:left}.heroRight{margin-top:0}.heroPortraitFrame{grid-row:2;width:min(72vw,320px);height:330px;justify-self:center;transform:none}.heroPortrait{right:auto;bottom:2%;left:3%;width:94%;filter:none}.heroLeft h1{font-size:clamp(42px,12vw,54px)}.hero:before{top:0;right:0;bottom:0;left:0;width:auto;height:auto}.hero:after{right:2%;width:72vw}.heroRight h2{font-size:clamp(30px,9vw,40px)}.heroEducation{gap:12px}.heroEducation h3{font-size:clamp(12px,3.4vw,15px)}.heroEducation .educationLogo{flex-basis:48px;width:48px;height:48px}.aboutSection,.projectsSection,.experienceSection,.methodologySection,.contactSection{padding:72px 0}.aboutSection{padding-top:52px}.aboutSection,.contactLayout{grid-template-columns:1fr;gap:34px}.aboutCopy h2,.sectionTitle h2,.contactLayout h2{font-size:clamp(30px,8vw,42px)}.aboutDescription{font-size:15px;line-height:1.75}.aboutStats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:42px;padding:0}.aboutStats:before{content:none}.statCard,.statCard:nth-child(2n),.statCard:nth-child(3),.statCard:nth-child(5){min-height:210px;transform:none}.experienceTimeline{grid-template-columns:1fr;gap:38px;padding-top:0;padding-left:22px}.experienceTimeline:before{left:0;right:auto;top:0;bottom:0;width:1px;height:auto;background:linear-gradient(180deg,#94dc23d1,#94dc2314)}.softwareStrip{gap:18px;padding:28px 0}.softwareList{gap:10px}.softwareItem{flex-basis:92px;min-height:82px}.softwareItem img{width:38px;height:38px}.projectRow{grid-template-columns:1fr;gap:18px}.projectInfo{max-width:none;padding-top:0}.projectMeta strong{font-size:48px}.projectInfo h3{max-width:none;font-size:clamp(28px,8vw,40px)}.projectImage{grid-column:auto;min-height:260px}.galleryBackdrop{padding:12px}.galleryPanel{min-height:calc(100svh - 24px);padding:22px 16px}.galleryHeader h2{font-size:clamp(26px,7vw,36px)}.galleryGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.experienceCard{min-height:0}.experienceMeta{align-items:flex-start;flex-direction:column}.timelineDot{left:-29px;top:7px}.experienceCard h3{margin-top:22px}.methodologyGrid{grid-template-columns:1fr}.methodologyPillar{padding:28px 16px 30px;border-left:0;border-top:1px solid rgba(180,177,190,.2)}.methodologyPillar:first-child{border-top:0}.methodologyPillar h3{margin-top:28px}.methodologyPillar small{min-height:0}.methodologyPillar p{max-width:100%;overflow-wrap:anywhere;word-break:break-word}.contactCards a,.contactCards div{grid-template-columns:24px minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:520px){.heroSocial a,.roleTags span{font-size:12px}.aboutStats{grid-template-columns:1fr;gap:10px}.statGlow,.statGlow .border-glow-inner,.statGlow .statCard{min-height:172px}.statCard{padding:28px 16px 22px;border-radius:88px 88px 10px 10px}.statCard strong{font-size:36px}.statCard span{margin-top:14px}.projectImage{min-height:230px}.projectImage>button{right:12px;bottom:12px;min-height:44px;padding:0 13px;font-size:12px}.galleryGrid{grid-template-columns:1fr}.galleryTile{aspect-ratio:16 / 9}.galleryTile--expanded{grid-column:span 1}.contactCards strong{font-size:15px}}@media(prefers-reduced-motion:reduce){.timelineDot{animation:none}}
