@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_8b3a0b;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Fallback_8b3a0b;src:local("Arial");ascent-override:90.49%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:107.06%}.__className_8b3a0b{font-family:__Inter_8b3a0b,__Inter_Fallback_8b3a0b;font-style:normal}.__variable_8b3a0b{--font-inter:"__Inter_8b3a0b","__Inter_Fallback_8b3a0b"}*,:after,:before{margin:0;padding:0;box-sizing:border-box}:root{--white:#fff;--off-white:#f8fafc;--blue-50:#f0f7ff;--blue-100:#e0efff;--blue-200:#baddff;--blue-300:#7cc0f5;--blue-400:#5baee8;--blue-500:#3b96d4;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono","Fira Code",monospace;--shadow-sm:0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 12px rgba(0,0,0,.06);--shadow-lg:0 8px 24px rgba(0,0,0,.08);--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--transition:0.25s ease}html{scroll-behavior:smooth;scroll-padding-top:72px}body{font-family:var(--font-sans);color:var(--gray-700);background:var(--white);line-height:1.7;font-size:17px;-webkit-font-smoothing:antialiased}a{color:var(--blue-500);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--blue-400)}img{max-width:100%;display:block}h1,h2,h3,h4{color:var(--gray-900);line-height:1.3;font-weight:600}.container{max-width:1100px;margin:0 auto;padding:0 24px}.nav{position:fixed;top:0;left:0;right:0;height:64px;background:hsla(0,0%,100%,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--gray-200);z-index:1000;transition:box-shadow var(--transition)}.nav.scrolled{box-shadow:var(--shadow-sm)}.nav .container{display:flex;align-items:center;justify-content:space-between;height:100%}.nav-logo{font-size:18px;font-weight:700;color:var(--gray-900);letter-spacing:-.3px}.nav-logo span{color:var(--blue-500)}.nav-links{display:flex;align-items:center;gap:32px;list-style:none}.nav-links a{font-size:14px;font-weight:500;color:var(--gray-500);position:relative;padding:4px 0;transition:color var(--transition)}.nav-links a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--blue-400);border-radius:1px;transition:width var(--transition)}.nav-links a.active,.nav-links a:hover{color:var(--gray-900)}.nav-links a.active:after,.nav-links a:hover:after{width:100%}.nav-cta{display:inline-flex;align-items:center;gap:6px;font-size:13px!important;font-weight:600!important;letter-spacing:.2px;color:var(--blue-500)!important;background:transparent;padding:8px 16px!important;border:1.5px solid var(--blue-300);border-radius:999px;box-shadow:0 1px 2px rgba(37,99,235,.06);transition:color var(--transition),background var(--transition),border-color var(--transition),box-shadow var(--transition),transform var(--transition)!important}.nav-cta:after{display:none!important}.nav-cta:before{display:none}.nav-cta:hover{color:var(--white)!important;background:var(--blue-500);border-color:var(--blue-500);box-shadow:0 8px 20px -8px rgba(37,99,235,.5);transform:translateY(-1px)}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:4px}.nav-toggle span{display:block;width:22px;height:2px;background:var(--gray-700);border-radius:2px;transition:var(--transition)}.nav-toggle span+span{margin-top:5px}.hero{padding:120px 0 80px;background:linear-gradient(170deg,var(--white) 0,var(--blue-50) 100%);position:relative;overflow:hidden;min-height:75vh;display:flex;align-items:center}.hero:before{top:-30%;right:-20%;width:720px;height:720px;background:radial-gradient(circle,var(--blue-200) 0,transparent 65%);opacity:.35;animation:blob 14s ease-in-out infinite}.hero:after,.hero:before{content:"";position:absolute;pointer-events:none}.hero:after{bottom:-20%;left:-10%;width:520px;height:520px;background:radial-gradient(circle,var(--blue-100) 0,transparent 70%);opacity:.5;animation:blob 18s ease-in-out infinite reverse}@keyframes blob{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-20px) scale(1.05)}66%{transform:translate(-20px,20px) scale(.95)}}.hero-content{position:relative;z-index:1;max-width:760px;width:100%}.hero-container{display:flex;align-items:center;justify-content:space-between;gap:64px}.hero-content{flex:1 1;min-width:0}.hero-photo{position:relative;z-index:1;flex-shrink:0;width:400px;height:400px;border-radius:50%;overflow:hidden;background:var(--white);box-shadow:0 30px 60px -25px rgba(37,99,235,.35),0 0 0 6px var(--white),0 0 0 8px var(--blue-200);animation:slideUp .7s ease .2s both;transition:transform .4s ease,box-shadow .4s ease}.hero-photo:after{content:"";position:absolute;inset:-22px;border-radius:50%;border:1px dashed var(--blue-300);opacity:.5;pointer-events:none;transition:inset .4s ease,opacity .4s ease}.hero-photo:hover{transform:translateY(-6px);box-shadow:0 40px 70px -25px rgba(37,99,235,.45),0 0 0 6px var(--white),0 0 0 8px var(--blue-300)}.hero-photo:hover:after{inset:-28px;opacity:1}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:30% 25%;display:block}@media (max-width:1100px){.hero-photo{width:320px;height:320px}}@media (max-width:900px){.hero-container{flex-direction:column-reverse;gap:40px;align-items:flex-start}.hero-photo{width:220px;height:220px}}.hero-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--gray-700);background:hsla(0,0%,100%,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--gray-200);padding:6px 14px 6px 10px;border-radius:20px;margin-bottom:24px;letter-spacing:.2px}.hero-label .dot{width:8px;height:8px;border-radius:50%;background:#22c55e;position:relative}.hero-label .dot:after{content:"";position:absolute;inset:-3px;border-radius:50%;background:#22c55e;opacity:.4;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.6);opacity:0}}.hero-greeting{display:block;font-size:20px;font-weight:500;color:var(--gray-500);margin-bottom:12px;animation:slideUp .6s ease both}.hero-greeting .wave{display:inline-block;transform-origin:70% 70%;animation:wave 2.5s ease-in-out .5s}@keyframes wave{0%,60%,to{transform:rotate(0)}10%,30%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}40%{transform:rotate(-4deg)}50%{transform:rotate(10deg)}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.hero h1{font-size:64px;font-weight:700;letter-spacing:-1.5px;margin-bottom:20px;line-height:1.05;animation:slideUp .7s ease .1s both}.highlight{background:linear-gradient(135deg,var(--blue-500),var(--blue-300));-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:600}.hero h1 .cursor{display:inline-block;width:4px;height:52px;background:var(--blue-500);margin-left:4px;vertical-align:text-bottom;animation:blink 1s steps(2) infinite;border-radius:2px}.typewriter{display:inline-block;white-space:nowrap;padding-bottom:.15em;-webkit-clip-path:inset(-.1em 100% -.3em 0);clip-path:inset(-.1em 100% -.3em 0);animation:typing 1.1s cubic-bezier(.22,.61,.36,1) .3s forwards}@keyframes typing{0%{-webkit-clip-path:inset(-.1em 100% -.3em 0);clip-path:inset(-.1em 100% -.3em 0)}to{-webkit-clip-path:inset(-.1em -.15em -.3em 0);clip-path:inset(-.1em -.15em -.3em 0)}}@keyframes blink{50%{opacity:0}}.hero-tagline{font-size:20px;color:var(--gray-600);max-width:560px;margin-bottom:14px;line-height:1.6;animation:slideUp .7s ease .2s both}.hero-role-line{font-size:16px;color:var(--gray-500);margin-bottom:36px;animation:slideUp .7s ease .3s both}.hero-role-line strong{color:var(--gray-900);font-weight:600}.hero-buttons{animation:slideUp .7s ease .4s both}@media (max-width:768px){.hero{padding:120px 0 72px;min-height:auto}.hero h1{font-size:40px;letter-spacing:-.8px}.hero h1 .cursor{height:34px;width:3px}.hero-greeting{font-size:17px}.hero-tagline{font-size:16px}}.hero-buttons{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;padding:12px 24px;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all var(--transition)}.btn-primary{background:var(--blue-500);color:var(--white)}.btn-primary:hover{background:var(--blue-400);color:var(--white);transform:translateY(-1px);box-shadow:0 4px 12px rgba(59,150,212,.3)}.btn-outline{background:var(--white);color:var(--gray-700);border:1px solid var(--gray-200)}.btn-outline:hover{border-color:var(--blue-300);color:var(--blue-500);transform:translateY(-1px)}section{padding:96px 0}.section-label{font-size:13px;font-weight:600;color:var(--blue-500);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:12px}.section-title{font-size:32px;font-weight:700;margin-bottom:16px;letter-spacing:-.5px}.section-subtitle{font-size:17px;color:var(--gray-500);max-width:560px;margin-bottom:48px}.section-alt{background:var(--off-white)}.about-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:64px;gap:64px;align-items:flex-start}.about-text p{margin-bottom:20px;color:var(--gray-600);text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto}.about-text p.section-label{text-align:left}.about-text p:last-child{margin-bottom:0}.about-highlights{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;margin-top:140px;align-self:start}.highlight-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:20px;transition:border-color var(--transition),box-shadow var(--transition)}.highlight-card:hover{border-color:var(--blue-200);box-shadow:var(--shadow-md)}.highlight-card .number{font-size:28px;font-weight:700;color:var(--blue-500);margin-bottom:4px}.highlight-card .label{font-size:13px;color:var(--gray-500);font-weight:500}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:24px;gap:24px}.project-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:32px;transition:all var(--transition);position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue-300),var(--blue-500));opacity:0;transition:opacity var(--transition)}.project-card:hover{border-color:var(--blue-200);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.project-card:hover:before{opacity:1}.project-card.featured{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;grid-gap:32px;gap:32px}.featured-details,.featured-main{display:flex;flex-direction:column}.project-meta{gap:10px;margin-bottom:16px}.project-icon,.project-meta{display:flex;align-items:center}.project-icon{width:40px;height:40px;background:var(--blue-50);border:1px solid var(--blue-100);border-radius:var(--radius-sm);justify-content:center;font-size:18px}.project-company{font-size:12px;font-weight:600;color:var(--blue-500);text-transform:uppercase;letter-spacing:.5px}.project-date{font-size:12px;color:var(--gray-400)}.project-card h3{font-size:20px;margin-bottom:10px}.project-card p{color:var(--gray-500);font-size:14px;margin-bottom:20px;line-height:1.7}.project-achievements{list-style:none;margin-bottom:20px}.project-achievements li{font-size:13px;color:var(--gray-600);padding:4px 0 4px 20px;position:relative}.project-achievements li:before{content:"";position:absolute;left:0;top:11px;width:6px;height:6px;background:var(--blue-300);border-radius:50%}.project-tags{display:flex;flex-wrap:wrap;gap:8px}.tag{font-size:12px;font-weight:500;color:var(--blue-500);background:var(--blue-50);border:1px solid var(--blue-100);padding:4px 12px;border-radius:20px;transition:background var(--transition)}.tag:hover{background:var(--blue-100)}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.skill-category{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:28px;transition:all var(--transition)}.skill-category:hover{border-color:var(--blue-200);box-shadow:var(--shadow-md)}.skill-category-icon{width:44px;height:44px;background:var(--blue-50);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:16px}.skill-category h3{font-size:16px;font-weight:600;margin-bottom:16px}.skill-list{display:flex;flex-wrap:wrap;gap:8px}.skill-item{font-size:12px;font-weight:500;color:var(--gray-600);background:var(--gray-100);padding:5px 12px;border-radius:20px;transition:all var(--transition)}.skill-item:hover{background:var(--blue-50);color:var(--blue-500)}.timeline{position:relative;max-width:700px}.timeline:before{content:"";position:absolute;left:15px;top:8px;bottom:8px;width:2px;background:var(--gray-200)}.timeline-item{position:relative;padding-left:48px;padding-bottom:40px}.timeline-item:last-child{padding-bottom:0}.timeline-dot{position:absolute;left:8px;top:6px;width:16px;height:16px;background:var(--white);border:3px solid var(--blue-400);border-radius:50%;z-index:1}.timeline-item:first-child .timeline-dot{background:var(--blue-500);border-color:var(--blue-500)}.timeline-item:first-child .timeline-dot:after{content:"";position:absolute;inset:-5px;border:2px solid var(--blue-200);border-radius:50%}.timeline-date{font-size:12px;font-weight:600;color:var(--blue-500);margin-bottom:4px}.timeline-item h3{font-size:18px;margin-bottom:4px}.timeline-company{font-size:14px;color:var(--gray-500);margin-bottom:10px}.company-link{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:color var(--transition),border-color var(--transition)}.company-link:hover{color:var(--blue-500);border-bottom-color:var(--blue-400)}.timeline-item ul{list-style:none}.timeline-item li{font-size:14px;color:var(--gray-500);padding:3px 0 3px 16px;position:relative}.timeline-item li:before{content:"";position:absolute;left:0;top:11px;width:5px;height:5px;background:var(--gray-300);border-radius:50%}.timeline-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.education-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.education-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:28px;transition:all var(--transition)}.education-card:hover{border-color:var(--blue-200);box-shadow:var(--shadow-md)}.education-card .degree{font-size:16px;font-weight:600;color:var(--gray-900);margin-bottom:6px}.education-card .school{font-size:14px;color:var(--blue-500);margin-bottom:6px}.education-card .period{font-size:12px;color:var(--gray-400);margin-bottom:12px}.education-card .detail{font-size:13px;color:var(--gray-500);line-height:1.6}.publication-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:32px;margin-bottom:20px}.publication-card h3{font-size:17px;margin-bottom:10px}.publication-card p{font-size:14px;color:var(--gray-500);line-height:1.7;margin-bottom:12px}.publication-card .pub-link{font-size:13px;font-weight:600;color:var(--blue-500)}.recognition-group{margin-top:32px}.recognition-heading{font-size:14px;font-weight:600;color:var(--gray-900);margin-bottom:12px;text-transform:uppercase;letter-spacing:.8px}.recognition-list{list-style:none;padding:0;margin:0}.recognition-list li{position:relative;padding:6px 0 6px 22px;font-size:14px;color:var(--gray-600);line-height:1.6}.recognition-list li:before{content:"";position:absolute;left:4px;top:15px;width:6px;height:6px;background:var(--blue-400);border-radius:50%}.recognition-list li strong{color:var(--gray-900);font-weight:600}.recognition-list li span{color:var(--gray-500);margin-left:6px}@media (max-width:640px){.recognition-list li span{display:block;margin-left:0;font-size:13px;margin-top:2px}}.contact-wrapper{display:grid;grid-template-columns:1fr 1fr;grid-gap:64px;gap:64px;align-items:flex-start}.contact-info h3{font-size:24px;margin-bottom:12px}.contact-info>p{color:var(--gray-500);margin-bottom:32px}.contact-links{display:flex;flex-direction:column;gap:16px}.contact-link{display:flex;align-items:center;gap:14px;font-size:14px;color:var(--gray-600);transition:color var(--transition)}.contact-link:hover{color:var(--blue-500)}.contact-link-icon{width:40px;height:40px;background:var(--blue-50);border:1px solid var(--blue-100);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;transition:all var(--transition)}.contact-link:hover .contact-link-icon{background:var(--blue-100)}.contact-form{background:var(--off-white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:32px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:13px;font-weight:600;color:var(--gray-700);margin-bottom:6px}.form-group input,.form-group textarea{width:100%;padding:10px 14px;border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:14px;color:var(--gray-700);background:var(--white);transition:border-color var(--transition)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--blue-400);box-shadow:0 0 0 3px rgba(59,150,212,.1)}.form-group textarea{resize:vertical;min-height:120px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;font-size:13px;padding:10px 14px;border-radius:var(--radius-sm);margin-bottom:16px}.footer{background:var(--gray-900);color:var(--gray-400);padding:48px 0 24px}.footer-content{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px}.footer-brand{font-size:18px;font-weight:700;color:var(--white);margin-bottom:8px}.footer-brand span{color:var(--blue-400)}.footer-tagline{font-size:14px;color:var(--gray-400)}.footer-links{display:flex;gap:24px;list-style:none}.footer-links a{font-size:14px;color:var(--gray-400);transition:color var(--transition)}.footer-links a:hover{color:var(--white)}.footer-social{display:flex;gap:12px}.footer-social a{width:36px;height:36px;background:var(--gray-800);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--gray-400);font-size:16px;transition:all var(--transition)}.footer-social a:hover{background:var(--blue-500);color:var(--white)}.footer-bottom{border-top:1px solid var(--gray-800);padding-top:24px;text-align:center;font-size:13px}.fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}@media (max-width:1100px){.container{padding:0 32px}.hero h1{font-size:56px}.hero h1 .cursor{height:46px}}@media (max-width:1024px){.hero h1{font-size:48px}.projects-grid{grid-template-columns:1fr}.project-card.featured{grid-column:span 1;grid-template-columns:1fr}.education-grid,.skills-grid{grid-template-columns:repeat(2,1fr)}.about-grid,.contact-wrapper{gap:48px}}@media (max-width:900px){.hero{padding:112px 0 64px;min-height:auto}.hero-container{flex-direction:column-reverse;align-items:center;text-align:center;gap:40px}.hero-content{max-width:100%}.hero-role-line,.hero-tagline{margin-left:auto;margin-right:auto}.hero-buttons{justify-content:center}.education-grid{grid-template-columns:1fr}}@media (max-width:768px){.container{padding:0 20px}.nav-links{display:none}.nav-links.open{position:absolute;top:64px;left:0;right:0;background:var(--white);border-bottom:1px solid var(--gray-200);padding:16px 24px;gap:16px;box-shadow:var(--shadow-md)}.nav-links.open,.nav-toggle{display:flex;flex-direction:column}.nav-toggle{gap:0}.hero{padding:96px 0 56px}.hero h1{font-size:36px;letter-spacing:-.8px}.hero h1 .cursor{height:34px;width:3px}.hero-greeting{font-size:15px}.hero-tagline{font-size:17px}.hero-role-line{font-size:15px}section{padding:64px 0}.section-title{font-size:28px}.section-subtitle{font-size:15px}.about-grid{gap:32px}.about-grid,.contact-wrapper,.skills-grid{grid-template-columns:1fr}.contact-wrapper{gap:32px}.contact-form{padding:24px}.timeline-item{padding-left:28px}.timeline-item h3{font-size:18px}.timeline-tags{gap:6px}.footer-content{flex-direction:column;align-items:flex-start;gap:24px;text-align:left}.footer-links{flex-wrap:wrap;gap:16px 20px}}@media (max-width:480px){.container{padding:0 16px}.hero{padding:88px 0 48px}.hero h1{font-size:30px}.hero h1 .cursor{height:28px}.hero-tagline{font-size:16px}.hero-buttons{flex-direction:column;width:100%}.hero-buttons .btn{width:100%;justify-content:center}section{padding:56px 0}.section-title{font-size:24px}.about-highlights{grid-template-columns:1fr}.project-card{padding:20px}.project-card h3{font-size:18px}.contact-form{padding:20px}.footer{padding:36px 0 20px}.footer-brand{font-size:16px}}h1,h2,h3,p{overflow-wrap:break-word;word-wrap:break-word}.project-tags,.timeline-tags{flex-wrap:wrap}