:root{--bg: #ffffff;--bg-soft: #f5f5f7;--ink: #1d1d1f;--ink-2: #6e6e73;--ink-3: #86868b;--line: rgba(0, 0, 0, .08);--navy: #0b1020;--navy-2: #121a33;--cyan: #00e5ff;--sky: #2997ff;--violet: #6c5ce7;--indigo: #5c32f2;--grad: linear-gradient(100deg, #0aa5ff 0%, #6c5ce7 55%, #a855f7 100%);--font: "Inter", -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, sans-serif;--mono: "JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;--ease: cubic-bezier(.28, .11, .32, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--radius: 28px;--container: 1120px;--gutter: clamp(18px, 4vw, 40px)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);letter-spacing:-.011em;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}ul,ol,dl,dd{margin:0;padding:0;list-style:none}::selection{background:#6c5ce733}.container{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}.gradient-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.eyebrow{font-size:15px;font-weight:600;color:var(--violet);letter-spacing:-.01em;margin-bottom:14px}.eyebrow a{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.eyebrow--light{color:#a7a3ff}.btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 24px;border-radius:980px;border:1px solid transparent;font:inherit;font-size:16px;font-weight:500;letter-spacing:-.01em;white-space:nowrap;cursor:pointer;transition:transform .35s var(--ease),background-color .3s ease,box-shadow .35s ease,color .3s ease}.btn:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translate(-120%);transition:transform .75s var(--ease)}.btn:hover{transform:scale(1.035)}.btn:hover:after{transform:translate(120%)}.btn:active{transform:scale(.98)}.btn--sm{min-height:38px;padding:0 18px;font-size:14px}.btn--primary{color:#fff;background:#0071e3}.btn--primary:hover{background:#0077ed;box-shadow:0 12px 30px -12px #0071e3b3}.btn--ghost{color:var(--ink);background:#0000000a;border-color:var(--line)}.btn--ghost:hover{background:#00000012}.btn--light{color:var(--navy);background:#fff}.btn--light:hover{box-shadow:0 0 0 1px #00e5ff4d,0 14px 40px -10px #00e5ff73}.nav{position:fixed;inset:0 0 auto;z-index:50;transition:background-color .35s ease,border-color .35s ease,backdrop-filter .35s ease;border-bottom:1px solid transparent}.nav--scrolled,.nav--open{background:#ffffffb8;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom-color:var(--line)}.nav__inner{max-width:var(--container);margin:0 auto;padding:0 var(--gutter);height:60px;display:flex;align-items:center;gap:24px}.nav__brand{display:flex;align-items:center;gap:10px;font-weight:600;font-size:17px;letter-spacing:-.02em}.nav__brand img{width:28px;height:28px;border-radius:50%;object-fit:cover}.nav__links{display:flex;gap:28px;margin-left:auto;font-size:14px;color:var(--ink-2)}.nav__links a{transition:color .25s ease}.nav__links a:hover{color:var(--ink)}.nav__toggle{display:none;margin-left:auto;width:40px;height:40px;border:0;border-radius:12px;background:transparent;color:var(--ink);cursor:pointer}.hero{position:relative;overflow:hidden;padding:clamp(120px,16vw,168px) 0 clamp(72px,10vw,112px);text-align:center;background:var(--bg)}.hero__glow{position:absolute;inset:-20% -10% auto;height:720px;background:radial-gradient(40% 50% at 30% 30%,rgba(0,200,255,.18),transparent 70%),radial-gradient(40% 50% at 70% 25%,rgba(108,92,231,.2),transparent 70%),radial-gradient(30% 40% at 50% 60%,rgba(168,85,247,.12),transparent 70%);filter:blur(10px);pointer-events:none}.hero__inner{position:relative;display:flex;flex-direction:column;align-items:center}.hero__photo{position:relative;margin-bottom:28px}.hero__photo img{width:168px;height:168px;border-radius:44px;object-fit:cover;box-shadow:0 0 0 6px #fff,0 30px 60px -20px #241e5a73,0 0 80px -10px #6c5ce773;transition:transform .6s var(--ease-out)}.hero__photo:hover img{transform:scale(1.04) rotate(-2deg)}.hero__status{position:absolute;left:50%;bottom:-14px;transform:translate(-50%);display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:980px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px -10px #0003;font-size:12px;font-weight:600;white-space:nowrap}.hero__status i{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 #22c55e99;animation:pulse 2s infinite}.hero__title{font-size:clamp(42px,7.4vw,88px);line-height:1.04;font-weight:700;letter-spacing:-.045em;max-width:980px}.hero__lead{margin-top:24px;max-width:640px;font-size:clamp(18px,2.2vw,22px);line-height:1.45;color:var(--ink-2)}.hero__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:36px}.hero__stats{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 56px;margin-top:64px}.hero__stats div{display:flex;flex-direction:column;align-items:center}.hero__stats dt{font-size:40px;font-weight:700;letter-spacing:-.04em}.hero__stats dd{font-size:14px;color:var(--ink-3)}.dcodea{position:relative;color:#f5f5f7;background:radial-gradient(50% 80% at 10% 0%,rgba(0,229,255,.18),transparent 70%),radial-gradient(50% 80% at 90% 100%,rgba(108,92,231,.28),transparent 70%),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px) 0 0 / 44px 44px,linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px) 0 0 / 44px 44px,var(--navy);padding:clamp(64px,9vw,104px) 0}.dcodea__inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:36px}.dcodea__inner h2{font-size:clamp(32px,4.6vw,52px);font-weight:700;letter-spacing:-.04em;line-height:1.08}.dcodea__mark{width:88px;height:88px;filter:drop-shadow(0 12px 40px rgba(0,229,255,.45));animation:float 6s var(--ease) infinite}.dcodea__text{margin-top:14px;max-width:560px;font-size:17px;line-height:1.6;color:#f5f5f7ad}.section{padding:clamp(88px,12vw,144px) 0}.section--tint{background:var(--bg-soft)}.section--dark{color:#f5f5f7;background:var(--navy)}.section--dark .section__title{color:#f5f5f7}.section__head{max-width:760px;margin-bottom:clamp(48px,7vw,80px)}.section__title{font-size:clamp(36px,5.6vw,64px);font-weight:700;line-height:1.05;letter-spacing:-.045em}.section__lead{margin-top:20px;font-size:clamp(17px,2vw,21px);line-height:1.5;color:var(--ink-2)}.about{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(32px,6vw,96px);align-items:start}.about__body{display:grid;gap:20px;font-size:clamp(18px,1.9vw,21px);line-height:1.55;color:var(--ink-2)}.about__body p:first-child{color:var(--ink)}.about__facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.about__facts li{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:980px;background:var(--bg-soft);font-size:14px;color:var(--ink)}.projects{display:grid;gap:clamp(28px,4vw,40px)}.project{--accent: #6c5ce7;position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,64px);align-items:center;padding:clamp(28px,4.5vw,56px);border-radius:36px;background:#fff;overflow:hidden;box-shadow:0 1px 2px #0000000a,0 30px 60px -40px #1e1e3c40;transition:transform .6s var(--ease-out),box-shadow .6s var(--ease)}.project:before{content:"";position:absolute;inset:auto -20% -60% 30%;height:90%;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 22%,transparent),transparent);pointer-events:none}.project:hover{transform:translateY(-4px);box-shadow:0 1px 2px #0000000a,0 40px 80px -40px color-mix(in srgb,var(--accent) 55%,transparent)}.project--flip{grid-template-columns:1.1fr .9fr}.project--flip .project__copy{order:2}.project--flip:before{inset:auto 30% -60% -20%}.project__copy{position:relative}.project__kicker{font-size:14px;font-weight:600;color:var(--accent);margin-bottom:8px}.project__name{font-size:clamp(30px,3.6vw,44px);font-weight:700;letter-spacing:-.04em;line-height:1.05}.project__summary{margin-top:14px;font-size:17px;line-height:1.55;color:var(--ink-2)}.project__highlights{display:grid;gap:8px;margin-top:20px}.project__highlights li{display:flex;gap:8px;align-items:flex-start;font-size:15px;line-height:1.45}.project__highlights li svg{flex-shrink:0;margin-top:3px;color:var(--accent)}.project__stack{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}.project__stack li{padding:5px 11px;border-radius:980px;font-family:var(--mono);font-size:12px;color:color-mix(in srgb,var(--accent) 80%,black);background:color-mix(in srgb,var(--accent) 10%,white)}.project__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.project__visual{position:relative;padding-bottom:12%}.project__second{position:absolute;width:46%;right:-4%;bottom:0;transform:rotate(2deg);transition:transform .6s var(--ease-out)}.project--flip .project__second{right:auto;left:-4%;transform:rotate(-2deg)}.project:hover .project__second{transform:translateY(-8px) rotate(0)}.frame{border-radius:14px;overflow:hidden;background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 30px 60px -30px #14143273,0 0 0 1px #fff9 inset}.frame img{width:100%;aspect-ratio:16 / 10;object-fit:cover;object-position:top center}.frame__bar{display:flex;align-items:center;gap:12px;height:30px;padding:0 12px;background:#f2f2f4;border-bottom:1px solid rgba(0,0,0,.06)}.frame__dots{display:flex;gap:6px}.frame__dots i{width:9px;height:9px;border-radius:50%;background:#ff5f57}.frame__dots i:nth-child(2){background:#febc2e}.frame__dots i:nth-child(3){background:#28c840}.frame__url{flex:1;max-width:280px;margin:0 auto;padding:3px 10px;border-radius:6px;background:#fff;font-size:11px;color:var(--ink-3);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.academic{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;margin-top:clamp(28px,4vw,40px);padding:28px 32px;border-radius:28px;background:#fff;--accent: #e76f00}.academic h3{font-size:24px;letter-spacing:-.03em}.academic p:last-child{margin-top:6px;color:var(--ink-2)}.academic .project__stack{margin-top:0;justify-content:flex-end}.academic__icon{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;color:#fff;background:linear-gradient(135deg,#f89820,#e76f00)}.journey{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(32px,5vw,64px);align-items:start}.timeline{position:relative;display:grid;gap:28px;padding-left:44px}.timeline:before{content:"";position:absolute;left:15px;top:8px;bottom:8px;width:2px;background:linear-gradient(var(--sky),var(--violet),transparent)}.timeline__item{position:relative;padding:26px 28px;border-radius:24px;background:var(--bg-soft)}.timeline__item h3{font-size:21px;letter-spacing:-.03em}.timeline__item h3 span{color:var(--ink-2);font-weight:500}.timeline__item ul{display:grid;gap:10px;margin-top:16px}.timeline__item li{position:relative;padding-left:18px;font-size:15.5px;line-height:1.55;color:var(--ink-2)}.timeline__item li:before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--violet)}.timeline__dot{position:absolute;left:-44px;top:26px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:#fff;background:var(--grad);box-shadow:0 0 0 5px #fff}.timeline__period{margin-top:4px;font-size:14px;color:var(--ink-3)}.education{padding:28px;border-radius:24px;border:1px solid var(--line)}.education h3{display:flex;align-items:center;gap:10px;font-size:21px;letter-spacing:-.03em;margin-bottom:18px}.education li{display:grid;gap:2px;padding:16px 0;border-top:1px solid var(--line)}.education strong{font-size:16px}.education span{color:var(--ink-2);font-size:15px}.education em{font-style:normal;font-size:13px;color:var(--violet);font-weight:600}.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.bento__card{grid-column:span 2;position:relative;padding:28px;border-radius:28px;background:linear-gradient(160deg,#ffffff12,#ffffff05);border:1px solid rgba(255,255,255,.1);overflow:hidden;transition:transform .5s var(--ease-out),border-color .4s ease}.bento__card:hover{transform:translateY(-4px);border-color:#00e5ff59}.bento__card h3{margin-top:18px;font-size:22px;letter-spacing:-.03em}.bento__card ul{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.bento__card li{padding:6px 12px;border-radius:980px;font-size:14px;color:#f5f5f7d9;background:#ffffff12}.bento__card--0,.bento__card--1{grid-column:span 3}.bento__card--0{background:radial-gradient(80% 90% at 100% 0%,rgba(0,229,255,.22),transparent 70%),linear-gradient(160deg,#ffffff12,#ffffff05)}.bento__card--1{background:radial-gradient(80% 90% at 100% 0%,rgba(108,92,231,.32),transparent 70%),linear-gradient(160deg,#ffffff12,#ffffff05)}.bento__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;color:#fff;background:var(--grad)}.lang{margin-top:16px}.lang>div:first-child{display:flex;justify-content:space-between;font-size:15px}.lang>div:first-child span{color:#f5f5f799}.lang__bar{height:6px;margin-top:8px;border-radius:6px;background:#ffffff1a}.lang__bar i{display:block;height:100%;border-radius:6px;background:var(--grad)}.bento__note{margin-top:18px;font-size:14px;color:#f5f5f799}.contact{background:radial-gradient(40% 60% at 50% 100%,rgba(108,92,231,.14),transparent 70%),var(--bg)}.contact__inner{display:flex;flex-direction:column;align-items:center;text-align:center}.contact__title{font-size:clamp(56px,11vw,132px);font-weight:700;letter-spacing:-.06em;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.contact__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:36px}.contact__list{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px;margin-top:32px;color:var(--ink-2);font-size:15px}.contact__list li,.contact__list a{display:inline-flex;align-items:center;gap:8px}.contact__list a:hover{color:var(--ink)}.footer{padding:28px 0 36px;background:var(--bg-soft);font-size:13px;color:var(--ink-3)}.footer__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.footer__dcodea{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border-radius:980px;color:#f5f5f7cc;background:var(--navy);transition:transform .3s var(--ease),box-shadow .3s ease}.footer__dcodea img{width:22px;height:22px;border-radius:7px}.footer__dcodea strong{background:linear-gradient(100deg,#00e5ff,#8b7bff);-webkit-background-clip:text;background-clip:text;color:transparent}.footer__dcodea:hover{transform:translateY(-2px);box-shadow:0 12px 30px -10px #00e5ff80}.rise{animation:rise 1s var(--ease-out) both}.reveal{opacity:0;transform:translateY(32px);transition:opacity 1s var(--ease-out),transform 1s var(--ease-out)}.reveal.is-in{opacity:1;transform:none}@keyframes rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes float{50%{transform:translateY(-10px) rotate(3deg)}}@keyframes pulse{70%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}@media(max-width:900px){.nav__links,.nav__cta{display:none}.nav__toggle{display:grid;place-items:center}.nav--open .nav__links{display:flex;position:absolute;top:60px;left:0;right:0;flex-direction:column;gap:0;padding:8px var(--gutter) 20px;background:#ffffffeb;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--line)}.nav--open .nav__links a{padding:14px 0;font-size:18px;color:var(--ink);border-bottom:1px solid var(--line)}.dcodea__inner{grid-template-columns:1fr;text-align:left;gap:24px}.about,.journey,.project,.project--flip{grid-template-columns:1fr}.project--flip .project__copy{order:0}.academic{grid-template-columns:auto 1fr}.academic .project__stack{grid-column:1 / -1;justify-content:flex-start}.bento__card,.bento__card--0,.bento__card--1{grid-column:span 3}}@media(max-width:600px){.hero__stats{gap:16px 32px}.hero__stats dt{font-size:32px}.project{border-radius:28px}.project__second{display:none}.project__visual{padding-bottom:0}.timeline{padding-left:0}.timeline:before{display:none}.timeline__dot{display:none}.bento__card,.bento__card--0,.bento__card--1{grid-column:1 / -1}.academic{grid-template-columns:1fr}.contact__actions .btn{width:100%}}
