@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_5972bc34-module__OU16Qa__className{font-family:Inter,Inter Fallback;font-style:normal}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#e0e0e0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:.01em;background:#0a0a0a;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;font-weight:400;line-height:1.7;position:relative;overflow-x:hidden}body:before{content:"";z-index:-2;background:radial-gradient(circle at 20%,#4fc3f71a 0%,#0000 50%),radial-gradient(circle at 80% 80%,#9c27b01a 0%,#0000 50%),radial-gradient(circle at 40% 20%,#00ff7f0d 0%,#0000 50%),linear-gradient(#0a0a0a 0%,#0f0f1a 100%);width:100%;height:100%;animation:20s infinite backgroundShift;position:fixed;top:0;left:0}body:after{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(#4fc3f708 1px,#0000 1px),linear-gradient(90deg,#4fc3f708 1px,#0000 1px);background-size:50px 50px;width:100%;height:100%;animation:30s linear infinite gridMove;position:fixed;top:0;left:0}@keyframes backgroundShift{0%,to{opacity:1}50%{opacity:.8}}@keyframes gridMove{0%{transform:translate(0)}to{transform:translate(50px,50px)}}.navbar{-webkit-backdrop-filter:blur(20px);z-index:1000;background:#0a0a0ad9;border-bottom:2px solid #4fc3f733;width:100%;transition:all .3s;position:fixed;top:0;box-shadow:0 4px 20px #4fc3f71a,0 0 40px #4fc3f70d}.navbar:before{content:"";background:linear-gradient(90deg,#0000,#4fc3f7,#9c27b0,#4fc3f7,#0000);width:100%;height:2px;animation:3s ease-in-out infinite neonFlow;position:absolute;bottom:0;left:0}@keyframes neonFlow{0%,to{opacity:.5;transform:translate(-100%)}50%{opacity:1;transform:translate(100%)}}.nav-container{justify-content:space-between;align-items:center;max-width:1200px;margin:auto;padding:1.2rem 2rem;display:flex}.logo{background:linear-gradient(135deg,#4fc3f7,#9c27b0,#00ff7f);-webkit-text-fill-color:transparent;text-shadow:0 0 20px #4fc3f780;-webkit-background-clip:text;background-clip:text;font-size:1.3rem;font-weight:700;animation:2s ease-in-out infinite alternate logoGlow}@keyframes logoGlow{0%{filter:drop-shadow(0 0 5px #4fc3f780)}to{filter:drop-shadow(0 0 15px #4fc3f7cc)}}nav{align-items:center;gap:2rem;display:flex}nav a{color:#d0d0d0;font-size:1rem;font-weight:500;text-decoration:none;transition:all .2s;position:relative}nav a:after{content:"";background:linear-gradient(90deg,#4fc3f7,#9c27b0);width:0;height:2px;transition:width .3s;position:absolute;bottom:-4px;left:0;box-shadow:0 0 10px #4fc3f7cc}nav a:hover{color:#fff}nav a:hover:after{width:100%}.hero{align-items:center;max-width:1200px;min-height:100vh;margin:auto;padding:140px 2rem 4rem;display:flex;position:relative;overflow:hidden}.hero:before{content:"";z-index:0;background:linear-gradient(270deg,#0000 0%,#4fc3f74d 20%,#4fc3f799 50%,#9c27b099 80%,#0000 100%);width:100%;height:2px;animation:3s ease-in-out infinite rightToLeftFlow;position:absolute;top:50%;right:0;transform:translateY(-50%)}@keyframes rightToLeftFlow{0%{opacity:.3;transform:translateY(-50%)translate(20px)}50%{opacity:.6;transform:translateY(-50%)translate(0)}to{opacity:.3;transform:translateY(-50%)translate(-20px)}}.hero-content{z-index:1;width:100%;position:relative}.hero-main{align-items:center;gap:4rem;width:100%;display:flex;position:relative}.hero-main:after{content:"";background:linear-gradient(270deg,#4fc3f7,#9c27b0,#00ff7f);width:0;height:3px;animation:2s ease-out forwards rightToLeftLine;position:absolute;bottom:-2rem;right:0;box-shadow:0 0 20px #4fc3f799}@keyframes rightToLeftLine{0%{width:0}to{width:100%}}.hero-text{flex:1;min-width:0;animation:.8s ease-out slideInFromRight}@keyframes slideInFromRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.hero-image-container{flex-shrink:0;justify-content:center;align-items:center;animation:.8s ease-out .2s both slideInFromLeft;display:flex}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}.hero-image-wrapper{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;background:linear-gradient(135deg,#4fc3f71a,#9c27b01a);border:4px solid #4fc3f74d;border-radius:50%;width:280px;height:280px;transition:all .4s;position:relative;overflow:hidden;box-shadow:0 0 40px #4fc3f766,0 0 80px #4fc3f733,inset 0 0 40px #4fc3f71a}.hero-image-wrapper:before{content:"";-webkit-mask-composite:xor;z-index:-1;background:linear-gradient(135deg,#4fc3f7,#9c27b0,#00ff7f,#4fc3f7) 0 0/200% 200%;border-radius:50%;padding:4px;animation:3s infinite gradientShift;position:absolute;inset:-4px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.hero-image-wrapper:hover{border-color:#4fc3f780;transform:scale(1.05);box-shadow:0 0 60px #4fc3f799,0 0 100px #4fc3f74d,inset 0 0 50px #4fc3f726}.hero-headshot{object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;-webkit-touch-callout:none;width:100%;height:100%;transition:transform .4s;display:block}.hero-image-wrapper:hover .hero-headshot{transform:scale(1.1)}.image-protection-overlay{z-index:10;pointer-events:auto;cursor:default;-webkit-user-select:none;user-select:none;background:0 0;width:100%;height:100%;position:absolute;top:0;left:0}.hero-image-container{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-khtml-user-select:none}.hero-image-container img{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-khtml-user-select:none;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none}.hero-greeting{color:#b0b0b0;margin-bottom:.5rem;padding-right:0;font-size:1.15rem;font-weight:500;animation:.6s ease-out fadeInRight;display:inline-block;position:relative}.hero-greeting:before{content:"";background:linear-gradient(270deg,#0000,#4fc3f7);width:0;height:2px;animation:.8s ease-out .3s forwards expandRight;position:absolute;top:50%;right:-20px;transform:translateY(-50%)}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes expandRight{0%{width:0}to{width:15px}}.hero h1{margin:0;font-size:4rem;font-weight:800;line-height:1.1}.hero-name{background:linear-gradient(135deg,#4fc3f7,#9c27b0,#00ff7f,#4fc3f7) 0 0/200% 200%;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 20px #4fc3f799);-webkit-background-clip:text;background-clip:text;animation:3s infinite gradientShift;display:inline-block;position:relative}.hero-name:after{content:attr(data-text);z-index:-1;background:linear-gradient(135deg,#4fc3f7,#9c27b0,#00ff7f);-webkit-text-fill-color:transparent;filter:blur(10px);opacity:.5;-webkit-background-clip:text;position:absolute;top:0;left:0}@keyframes gradientShift{0%,to{background-position:0%}50%{background-position:100%}}.subtitle{color:silver;margin:1rem 0;font-size:1.4rem;font-weight:500;line-height:1.6}.desc{color:#d0d0d0;max-width:650px;margin-top:1.5rem;font-size:1.1rem;font-weight:400;line-height:1.8}.hero-stats{flex-wrap:wrap;gap:3rem;margin:2.5rem 0;display:flex;position:relative}.hero-stats:before{content:"";background:linear-gradient(270deg,#4fc3f71a,#0000);width:0;height:100%;animation:1s ease-out .5s forwards expandRightToLeft;position:absolute;top:0;right:0}@keyframes expandRightToLeft{0%{width:0}to{width:100%}}.stat-item{flex-direction:column;display:flex}.stat-number{background:linear-gradient(135deg,#4fc3f7,#9c27b0,#00ff7f);-webkit-text-fill-color:transparent;text-shadow:0 0 30px #4fc3f780;-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700;line-height:1;animation:2s ease-in-out infinite statPulse;position:relative}@keyframes statPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.stat-label{color:#b0b0b0;margin-top:.3rem;font-size:1rem;font-weight:500}.hero-actions{flex-wrap:wrap;gap:1rem;margin:2rem 0;animation:.8s ease-out .4s both fadeInRight;display:flex;position:relative}.hero-actions:before{content:"";background:linear-gradient(#4fc3f7,#9c27b0);width:3px;height:0;animation:.6s ease-out .6s forwards expandDown;position:absolute;top:50%;right:-30px;transform:translateY(-50%);box-shadow:0 0 10px #4fc3f799}@keyframes expandDown{0%{height:0}to{height:100%}}.btn-primary,.btn-secondary{border:2px solid #0000;border-radius:12px;padding:14px 28px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn-primary{color:#000;background:linear-gradient(135deg,#4fc3f7,#9c27b0);position:relative;overflow:hidden;box-shadow:0 0 20px #4fc3f766,inset 0 0 20px #ffffff1a}.btn-primary:before{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.btn-primary:hover:before{left:100%}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px #4fc3f799,0 0 40px #4fc3f766}.btn-secondary{color:#4fc3f7;background:0 0;border-color:#4fc3f7;position:relative;box-shadow:0 0 15px #4fc3f74d}.btn-secondary:before{content:"";-webkit-mask-composite:xor;opacity:0;background:linear-gradient(135deg,#4fc3f7,#9c27b0,#00ff7f);border-radius:12px;padding:2px;transition:opacity .3s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.btn-secondary:hover:before{opacity:1}.btn-secondary:hover{background:#4fc3f71a;transform:translateY(-2px);box-shadow:0 10px 25px #4fc3f780}.hero-social{flex-wrap:wrap;gap:1.5rem;margin-top:2rem;display:flex}.hero-social a{color:#888;border-radius:8px;padding:.5rem 1rem;font-weight:500;text-decoration:none;transition:all .3s;position:relative}.hero-social a:before{content:"";opacity:0;background:#4fc3f71a;border-radius:8px;transition:opacity .3s;position:absolute;inset:0}.hero-social a:hover:before{opacity:1}.hero-social a:hover{color:#4fc3f7;text-shadow:0 0 10px #4fc3f7cc;transform:translateY(-2px)}.section{max-width:1200px;margin:auto;padding:6rem 2rem}.collapsible-section{padding:3rem 2rem}.section-header{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:1rem;margin-left:-.5rem;margin-right:-.5rem;padding:1rem .5rem;transition:all .3s;display:flex}.section-header:hover{background:#ffffff05}.section-header h2{flex:1;margin-bottom:0}.collapse-toggle{color:#4fc3f7;cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;padding:.5rem;transition:all .3s;display:flex}.collapse-toggle:hover{background:#4fc3f71a;transform:scale(1.1)}.collapse-toggle svg{transition:transform .3s}.collapse-toggle.open svg{transform:rotate(180deg)}.section-content{transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s;overflow:hidden}.section-content.collapsed{opacity:0;max-height:0;margin-top:0;padding-top:0;padding-bottom:0}.section-content.expanded{opacity:1;max-height:10000px;margin-top:1rem}.section h2{background:linear-gradient(135deg,#4fc3f7,#9c27b0,#00ff7f,#4fc3f7) 0 0/200% 200%;-webkit-text-fill-color:transparent;text-shadow:0 0 30px #4fc3f780;-webkit-background-clip:text;background-clip:text;margin-bottom:1rem;font-size:2.5rem;font-weight:700;animation:3s infinite titleGlow;position:relative}.section h2:after{content:"";background:linear-gradient(90deg,#4fc3f7,#9c27b0);border-radius:2px;width:60px;height:3px;position:absolute;bottom:-10px;left:0;box-shadow:0 0 10px #4fc3f7cc}@keyframes titleGlow{0%,to{filter:drop-shadow(0 0 10px #4fc3f780);background-position:0%}50%{filter:drop-shadow(0 0 20px #4fc3f7cc);background-position:100%}}.section-intro{color:#d0d0d0;max-width:700px;margin-bottom:3rem;font-size:1.15rem;font-weight:400;line-height:1.8}.filters{flex-wrap:wrap;gap:12px;margin-bottom:2.5rem;display:flex}.filter-btn{color:#ccc;cursor:pointer;background:#ffffff08;border:1px solid #ffffff1a;border-radius:25px;align-items:center;gap:6px;padding:10px 18px;font-size:.95rem;font-weight:500;transition:all .3s;display:flex}.filter-icon{font-size:1.1rem}.filter-btn:hover{color:#fff;background:#ffffff0d;border-color:#4fc3f74d}.filter-btn.active{color:#000;background:linear-gradient(135deg,#4fc3f7,#29b6f6);border-color:#0000;font-weight:600}.project-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;padding:1rem 0;display:grid}.project-card{cursor:default;background:#ffffff08;border:2px solid #4fc3f733;border-radius:16px;flex-direction:column;height:auto;padding:1.5rem;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.project-card:before{content:"";-webkit-mask-composite:xor;opacity:0;pointer-events:none;z-index:0;background:linear-gradient(135deg,#4fc3f7,#9c27b0,#00ff7f,#4fc3f7) 0 0/200% 200%;border-radius:16px;padding:2px;transition:opacity .4s;animation:3s infinite borderGlow;position:absolute;inset:-2px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes borderGlow{0%,to{background-position:0%}50%{background-position:100%}}.project-card:hover:before{opacity:1}.project-card:hover{background:#ffffff0d;border-color:#4fc3f780;transform:translateY(-8px);box-shadow:0 20px 40px #4fc3f74d,0 0 60px #4fc3f733}.project-video{aspect-ratio:16/9;background:#0000004d;border-radius:12px;width:100%;margin-bottom:1rem;position:relative;overflow:hidden}.video-embed,.video-element{border:none;border-radius:12px;width:100%;height:100%;display:block}.video-element{object-fit:contain;background:#000}.project-thumbnail{aspect-ratio:1;background:#0000004d;border-radius:12px;justify-content:center;align-items:center;width:100%;margin-bottom:1rem;transition:all .3s;display:flex;position:relative;overflow:hidden}.project-thumbnail.clickable{cursor:pointer}.project-thumbnail.clickable:hover{transform:scale(1.02);box-shadow:0 8px 20px #4fc3f74d}.thumbnail-image{object-fit:contain;border-radius:12px;width:100%;height:100%;transition:transform .3s;display:block}.project-thumbnail.clickable:hover .thumbnail-image{transform:scale(1.05)}.thumbnail-overlay{opacity:0;background:#0009;border-radius:12px;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:absolute;inset:0}.project-thumbnail.clickable:hover .thumbnail-overlay{opacity:1}.thumbnail-link-text{color:#fff;text-align:center;background:#4fc3f7e6;border-radius:8px;padding:.5rem 1rem;font-size:1.1rem;font-weight:600;box-shadow:0 4px 15px #4fc3f780}.project-card h3{color:#fff;margin:0 0 .5rem;font-size:1.4rem;font-weight:600;line-height:1.4}.project-card p{color:#d0d0d0;-webkit-line-clamp:4;text-overflow:ellipsis;-webkit-box-orient:vertical;margin-top:.8rem;font-size:1rem;font-weight:400;line-height:1.7;display:-webkit-box;overflow:hidden}.project-card p.clickable-desc{cursor:pointer;transition:color .3s}.project-card p.clickable-desc:hover{color:#4fc3f7}.badges{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.badge{color:#4fc3f7;background:#4fc3f726;border:1px solid #4fc3f766;border-radius:20px;padding:6px 12px;font-size:.9rem;font-weight:500;transition:all .3s;display:inline-block;box-shadow:0 0 10px #4fc3f733}.badge:hover{transform:scale(1.05);box-shadow:0 0 15px #4fc3f766}.card-link{color:#4fc3f7;margin-top:1rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.card-link:hover{color:#29b6f6;text-decoration:underline}.skills-container{flex-direction:column;gap:3rem;display:flex}.skill-category{background:#ffffff05;border:1px solid #ffffff0d;border-radius:16px;padding:2rem}.skill-category h3{color:#fff;margin-bottom:1.5rem;font-size:1.6rem;font-weight:600;line-height:1.4}.skill-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem;display:grid}.skill-item{background:#ffffff08;border:1px solid #4fc3f733;border-radius:12px;padding:1rem;transition:all .3s;position:relative;overflow:hidden}.skill-item:after{content:"";background:linear-gradient(90deg,#0000,#4fc3f733,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.skill-item:hover:after{left:100%}.skill-item:hover{background:#4fc3f71a;border-color:#4fc3f799;transform:translateY(-2px);box-shadow:0 5px 20px #4fc3f74d}.skill-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.skill-logo{object-fit:contain;flex-shrink:0;width:24px;height:24px}.skill-name{color:#fff;flex:1;font-weight:600}.skill-years{color:#b0b0b0;font-size:.95rem;font-weight:500}.skill-level{color:#4fc3f7;font-size:.95rem;font-weight:500}.specialties-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;display:grid}.specialty-card{text-align:center;background:#ffffff08;border:2px solid #4fc3f733;border-radius:12px;padding:1.5rem;transition:all .3s;position:relative}.specialty-card:before{content:"";opacity:0;z-index:-1;filter:blur(10px);background:linear-gradient(135deg,#4fc3f7,#9c27b0,#00ff7f);border-radius:12px;transition:opacity .3s;position:absolute;inset:-2px}.specialty-card:hover:before{opacity:.3}.specialty-card:hover{background:#4fc3f71a;border-color:#4fc3f799;transform:translateY(-4px);box-shadow:0 10px 30px #4fc3f74d}.specialty-icon{margin-bottom:.5rem;font-size:2.5rem}.specialty-card h4{color:#fff;margin:.5rem 0;font-size:1.2rem;font-weight:600;line-height:1.4}.specialty-card p{color:#d0d0d0;margin:0;font-size:1rem;font-weight:400;line-height:1.6}.soft-skills{flex-wrap:wrap;gap:.75rem;display:flex}.soft-skill-tag{color:#4fc3f7;background:#4fc3f71a;border:1px solid #4fc3f74d;border-radius:20px;align-items:center;gap:.5rem;padding:8px 16px;font-size:.95rem;font-weight:500;transition:all .3s;display:inline-flex;position:relative;overflow:hidden}.soft-skill-tag:before{content:"";background:#4fc3f74d;border-radius:50%;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.soft-skill-tag:hover:before{width:300px;height:300px}.soft-skill-tag:hover{border-color:#4fc3f799;transform:translateY(-2px);box-shadow:0 0 15px #4fc3f766}.soft-skill-tag .skill-logo{object-fit:contain;filter:brightness(0)saturate()invert(70%)sepia()saturate(500%)hue-rotate(160deg);width:18px;height:18px}.all-skills-grid{flex-wrap:wrap;gap:1rem;margin-top:2rem;display:flex}.all-skills-grid .skill-tag{color:#4fc3f7;background:#4fc3f71a;border:1px solid #4fc3f74d;border-radius:20px;justify-content:flex-start;align-items:center;gap:.5rem;width:auto;min-width:fit-content;max-width:calc(100% - 2rem);padding:10px 16px;font-size:.95rem;font-weight:500;transition:all .3s;display:inline-flex;position:relative;overflow:visible}.all-skills-grid .skill-tag:before{content:"";background:#4fc3f74d;border-radius:50%;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.all-skills-grid .skill-tag:hover:before{width:300px;height:300px}.all-skills-grid .skill-tag:hover{background:#4fc3f726;border-color:#4fc3f799;transform:translateY(-2px);box-shadow:0 0 15px #4fc3f766}.skill-logo-small{object-fit:contain;filter:brightness(0)saturate()invert(70%)sepia()saturate(500%)hue-rotate(160deg);flex-shrink:0;width:18px;height:18px}.skill-name-text{white-space:normal;word-wrap:break-word;overflow-wrap:break-word;flex:0 auto;min-width:0;line-height:1.4}.skill-years-badge{color:#ce93d8;white-space:nowrap;background:#9c27b033;border:1px solid #9c27b066;border-radius:10px;flex-shrink:0;margin-left:4px;padding:2px 6px;font-size:.75rem;font-weight:600}.skill-level-badge{color:#00ff7f;white-space:nowrap;background:#00ff7f33;border:1px solid #00ff7f66;border-radius:10px;flex-shrink:0;margin-left:4px;padding:2px 6px;font-size:.75rem;font-weight:600}.experience-timeline{flex-direction:column;gap:2rem;display:flex}.experience-card{background:#ffffff05;border:2px solid #4fc3f733;border-radius:16px;padding:2rem;transition:all .3s;position:relative;overflow:hidden}.experience-card:before{content:"";opacity:0;background:linear-gradient(#4fc3f7,#9c27b0,#00ff7f);width:4px;height:100%;transition:opacity .3s;position:absolute;top:0;left:0}.experience-card:hover:before{opacity:1}.experience-card:hover{background:#ffffff0a;border-color:#4fc3f780;transform:translate(4px);box-shadow:0 10px 30px #4fc3f733}.experience-card.current{border-color:#4fc3f799;box-shadow:0 0 30px #4fc3f74d}.experience-card.current:before{opacity:1}.experience-card.collapsed .experience-header{margin-bottom:0}.experience-header{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;margin-left:-.5rem;margin-right:-.5rem;padding:.5rem;transition:background .3s,margin-bottom .3s;display:flex}.experience-header:hover{background:#ffffff05}.experience-title h3{color:#fff;margin:0;font-size:1.5rem;font-weight:600;line-height:1.4}.experience-title h4{color:#4fc3f7;margin:.3rem 0 0;font-size:1.15rem;font-weight:500;line-height:1.5}.company-info{align-items:center;gap:.75rem;margin-top:.3rem;display:flex}.company-logo{object-fit:contain;background:#ffffff0d;border-radius:6px;flex-shrink:0;width:32px;height:32px;padding:4px}.experience-meta{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex;position:relative}.experience-toggle{color:#4fc3f7;cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-top:.5rem;padding:.5rem;transition:all .3s;display:flex}.experience-toggle:hover{background:#4fc3f71a;transform:scale(1.1)}.experience-toggle svg{transition:transform .3s}.experience-toggle.expanded svg{transform:rotate(180deg)}.experience-period{color:silver;font-size:1rem;font-weight:500}.experience-duration{color:#b0b0b0;font-size:.95rem;font-weight:400}.experience-badge{border-radius:12px;padding:4px 12px;font-size:.8rem;font-weight:600}.current-badge{color:#4fc3f7;background:#4fc3f733;border:1px solid #4fc3f74d}.experience-details{flex-direction:column;gap:1.5rem;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s,margin-top .3s;display:flex;overflow:hidden}.experience-details.collapsed{opacity:0;gap:0;max-height:0;margin-top:0;padding-top:0;padding-bottom:0}.experience-details.expanded{opacity:1;max-height:10000px;margin-top:0}.experience-location-type{color:#b0b0b0;gap:.5rem;font-size:1rem;font-weight:400;display:flex}.experience-description{color:#d0d0d0;font-size:1.05rem;font-weight:400;line-height:1.8}.experience-projects{margin-top:1rem}.experience-projects h5,.experience-tech h5,.experience-skills h5{color:#fff;margin-bottom:.8rem;font-size:1.1rem;font-weight:600;line-height:1.5}.project-item{border-left:2px solid #4fc3f74d;margin-bottom:1rem;padding-left:1rem}.project-item strong{color:#4fc3f7;margin-bottom:.3rem;display:block}.project-item p{color:#d0d0d0;margin:0;font-size:1rem;font-weight:400;line-height:1.7}.tech-tags,.skill-tags{flex-wrap:wrap;gap:.75rem;display:flex}.tech-tag,.skill-tag{color:#4fc3f7;background:#4fc3f71a;border:1px solid #4fc3f74d;border-radius:20px;padding:6px 14px;font-size:.9rem;font-weight:500;transition:all .3s;box-shadow:0 0 8px #4fc3f733}.tech-tag:hover,.skill-tag:hover{border-color:#4fc3f799;transform:translateY(-2px);box-shadow:0 0 15px #4fc3f766}.recommendations-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;padding:1rem 0;display:grid}.recommendation-card{background:#ffffff05;border:2px solid #4fc3f733;border-radius:16px;flex-direction:column;justify-content:space-between;height:auto;padding:2rem;transition:all .3s;display:flex;position:relative}.recommendation-card:after{content:"\"";color:#4fc3f733;font-family:serif;font-size:4rem;line-height:1;position:absolute;top:1rem;left:1rem}.recommendation-card:hover{background:#4fc3f70d;border-color:#4fc3f780;transform:translateY(-4px);box-shadow:0 10px 30px #4fc3f733}.recommendation-text{color:#d0d0d0;flex-grow:1;margin-bottom:1.5rem;font-size:1.05rem;font-style:italic;font-weight:400;line-height:1.8}.recommendation-author{border-top:1px solid #ffffff1a;padding-top:1rem}.author-name{color:#fff;font-size:1.1rem;font-weight:600;line-height:1.5}.author-role{color:#4fc3f7;margin-top:.2rem;font-size:1rem;font-weight:500}.author-company{color:#b0b0b0;margin-top:.2rem;font-size:.95rem;font-weight:400}.education-timeline{flex-direction:column;gap:2rem;display:flex}.education-card{background:#ffffff05;border:2px solid #4fc3f733;border-radius:16px;padding:2rem;transition:all .3s;position:relative}.education-card:before{content:"";opacity:0;background:linear-gradient(#4fc3f7,#9c27b0);width:4px;height:100%;transition:opacity .3s;position:absolute;top:0;left:0}.education-card:hover:before{opacity:1}.education-card:hover{background:#ffffff0a;border-color:#4fc3f780;transform:translate(4px);box-shadow:0 10px 30px #4fc3f733}.education-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.education-title h3{color:#fff;margin:0;font-size:1.4rem;font-weight:600;line-height:1.4}.education-title h4{color:#4fc3f7;margin:.3rem 0 0;font-size:1.1rem;font-weight:500;line-height:1.5}.education-meta{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.education-period{color:silver;font-size:1rem;font-weight:500}.education-badge{border-radius:12px;padding:4px 12px;font-size:.8rem;font-weight:600}.education-badge.completed{color:#4caf50;background:#4caf5033;border:1px solid #4caf504d}.education-description{color:#d0d0d0;margin-bottom:1rem;font-size:1.05rem;font-weight:400;line-height:1.8}.education-courses h5{color:#fff;margin-bottom:.8rem;font-size:1rem;font-weight:600}.courses-list{flex-wrap:wrap;gap:.75rem;display:flex}.course-tag{color:#4fc3f7;background:#4fc3f71a;border:1px solid #4fc3f733;border-radius:20px;padding:6px 14px;font-size:.85rem;font-weight:500}.contact-content{max-width:1000px;margin:0 auto}.contact-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem;display:grid}.contact-card{cursor:pointer;background:linear-gradient(135deg,#1a1a2ecc 0%,#16213ecc 100%);border:2px solid #4fc3f733;border-radius:16px;align-items:center;gap:1.25rem;padding:2rem;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.contact-card:before{content:"";opacity:0;z-index:0;background:linear-gradient(135deg,#4fc3f71a 0%,#29b6f61a 100%);transition:opacity .4s;position:absolute;inset:0}.contact-card:hover:before{opacity:1}.contact-card:hover{border-color:#4fc3f799;transform:translateY(-8px)scale(1.02);box-shadow:0 12px 40px #4fc3f74d}.contact-card-icon{z-index:1;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;transition:all .4s;display:flex;position:relative}.contact-card-email .contact-card-icon{color:#ff5722;background:linear-gradient(135deg,#ff572233 0%,#ff980033 100%)}.contact-card-linkedin .contact-card-icon{color:#0077b5;background:linear-gradient(135deg,#0077b533 0%,#00acee33 100%)}.contact-card-github .contact-card-icon{color:#fff;background:linear-gradient(135deg,#21212133 0%,#3333 100%)}.contact-card:hover .contact-card-icon{transform:rotate(5deg)scale(1.1)}.contact-card-content{z-index:1;flex:1;position:relative}.contact-card-title{color:#fff;margin:0 0 .5rem;font-size:1.3rem;font-weight:700;transition:color .3s}.contact-card-value{color:#d0d0d0cc;word-break:break-word;margin:0;font-size:.95rem;transition:color .3s}.contact-card:hover .contact-card-title{color:#4fc3f7}.contact-card:hover .contact-card-value{color:#d0d0d0}.contact-card-arrow{z-index:1;opacity:0;color:#4fc3f7;flex-shrink:0;transition:all .4s;position:relative;transform:translate(-10px)}.contact-card:hover .contact-card-arrow{opacity:1;transform:translate(0)}.contact-card-email:hover{border-color:#ff572299;box-shadow:0 12px 40px #ff57224d}.contact-card-linkedin:hover{border-color:#0077b599;box-shadow:0 12px 40px #0077b54d}.contact-card-github:hover{border-color:#4fc3f799;box-shadow:0 12px 40px #4fc3f74d}.comments-form-container{max-width:700px;margin:0 auto}.comments-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:#fff;margin-bottom:.3rem;font-size:1rem;font-weight:600}.form-group input,.form-group textarea{color:#fff;background:#ffffff0d;border:2px solid #4fc3f733;border-radius:12px;width:100%;padding:14px 18px;font-family:inherit;font-size:1rem;transition:all .3s}.form-group input:focus,.form-group textarea:focus{background:#ffffff14;border-color:#4fc3f799;outline:none;box-shadow:0 0 15px #4fc3f74d}.form-group input::placeholder,.form-group textarea::placeholder{color:#fff6}.form-group textarea{resize:vertical;min-height:120px}.form-submit-btn{align-self:flex-start;margin-top:.5rem}.form-success{color:#00ff7f;text-align:center;background:#00ff7f26;border:2px solid #00ff7f66;border-radius:12px;padding:14px 18px;font-weight:500;animation:.3s fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.footer{text-align:center;color:#666;border-top:1px solid #ffffff0d;padding:3rem 2rem;font-size:.9rem}.hidden{opacity:0;transform:translateY(40px)}.show{opacity:1;transition:all .8s cubic-bezier(.4,0,.2,1);transform:translateY(0)}@media (max-width:768px){.hero{padding:120px 1.5rem 4rem}.hero:before{height:1px;top:20%}.hero-main{text-align:center;flex-direction:column;gap:2.5rem}.hero-main:after{height:2px;bottom:-1.5rem}.hero-text{animation:.8s ease-out slideInFromRight}.hero-image-container{order:-1;animation:.8s ease-out .2s both slideInFromLeft}.hero-image-wrapper{width:220px;height:220px}.hero h1{font-size:2.5rem}.hero-greeting:before{animation:.8s ease-out .3s forwards expandRightLeft;right:50%;transform:translate(50%)translateY(-50%)}@keyframes expandRightLeft{0%{width:0}to{width:30px}}.hero-stats{flex-wrap:wrap;gap:2rem}.stat-number{font-size:2rem}.stat-label{font-size:.95rem}nav{flex-wrap:wrap;gap:.75rem}nav a{font-size:.85rem}.nav-container{flex-wrap:wrap;padding:1rem 1.5rem}.section{padding:4rem 1.5rem}.collapsible-section{padding:2rem 1.5rem}.section-header{margin-bottom:.5rem;padding:.75rem 0}.collapse-toggle{width:36px;height:36px}.section h2{font-size:2rem}.section-intro{font-size:1.05rem}.project-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.project-card{padding:1.25rem}.recommendations-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.recommendation-card{padding:1.5rem}.filters{-webkit-overflow-scrolling:touch;gap:.5rem;padding-bottom:.5rem;overflow-x:auto}.filter-btn{white-space:nowrap;padding:8px 14px;font-size:.9rem}.btn-primary,.btn-secondary{text-align:center;width:100%;padding:12px 24px;font-size:.95rem}.hero-actions{flex-direction:column;width:100%}.hero-social{flex-wrap:wrap;gap:1rem}.experience-header,.education-header{flex-direction:column}.experience-meta,.education-meta{align-items:flex-start}.experience-toggle{margin-top:.25rem}.experience-card,.education-card{padding:1.5rem}.skill-list{grid-template-columns:1fr}.all-skills-grid{gap:.75rem}.all-skills-grid .skill-tag{width:auto;max-width:100%;padding:8px 12px;font-size:.85rem}.skill-years-badge,.skill-level-badge{padding:1px 4px;font-size:.7rem}.specialties-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;gap:1.25rem}.contact-card{padding:1.5rem}.contact-card-icon{width:56px;height:56px}.contact-card-title{font-size:1.2rem}.comments-form-container{max-width:100%}.form-group input,.form-group textarea{padding:12px 16px;font-size:.95rem}}@media (max-width:480px){.hero{padding:110px 1rem 2rem}.hero:before{top:15%}.hero-main{gap:2rem}.hero-main:after{bottom:-1rem}.hero-image-wrapper{width:180px;height:180px}.hero h1{font-size:2rem;line-height:1.2}.subtitle{font-size:1.1rem;line-height:1.5}.hero-actions:before{left:50%;transform:translate(-50%)translateY(-50%)}.desc{font-size:1rem}.hero-stats{flex-direction:column;align-items:flex-start;gap:1.5rem}.stat-number{font-size:1.8rem}.stat-label{font-size:.9rem}.nav-container{padding:.75rem 1rem}.logo{font-size:1.1rem}nav{gap:.5rem}nav a{font-size:.8rem}.section{padding:3rem 1rem}.section h2{font-size:1.75rem}.section-intro{font-size:1rem}.all-skills-grid{gap:.5rem}.all-skills-grid .skill-tag{gap:.4rem;width:auto;max-width:100%;padding:6px 10px;font-size:.8rem}.skill-logo-small{width:16px;height:16px}.skill-years-badge,.skill-level-badge{padding:1px 3px;font-size:.65rem}.form-group input,.form-group textarea{padding:10px 14px;font-size:.9rem}.form-submit-btn{width:100%}.project-grid,.recommendations-grid{grid-template-columns:1fr;gap:1.5rem}.project-card h3{font-size:1.2rem}.project-card p{font-size:.95rem}.recommendation-text{font-size:1rem}.experience-title h3{font-size:1.3rem}.experience-title h4{font-size:1rem}.skill-category h3{font-size:1.4rem}.btn-primary,.btn-secondary{padding:12px 20px;font-size:.9rem}.hero-social a{padding:.4rem .8rem;font-size:.9rem}}.description-modal-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10000;background:#000000d9;justify-content:center;align-items:center;padding:1rem;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.description-modal{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);border:1px solid #4fc3f733;border-radius:16px;width:100%;max-width:600px;max-height:80vh;animation:.3s slideUp;position:relative;overflow-y:auto;box-shadow:0 20px 60px #00000080}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-header{z-index:1;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);border-bottom:1px solid #4fc3f733;justify-content:space-between;align-items:center;padding:1.5rem;display:flex;position:sticky;top:0}.modal-header h2{color:#fff;margin:0;font-size:1.8rem;font-weight:600}.modal-close-btn{color:#d0d0d0;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.5rem;transition:all .3s;display:flex}.modal-close-btn:hover{color:#4fc3f7;background:#4fc3f71a;transform:rotate(90deg)}.modal-content{padding:1.5rem}.modal-description{color:#d0d0d0;white-space:pre-wrap;margin-bottom:1.5rem;font-size:1.1rem;line-height:1.8}.modal-tech{border-top:1px solid #4fc3f71a;margin-top:1.5rem;padding-top:1.5rem}.modal-tech h3{color:#fff;margin-bottom:1rem;font-size:1.2rem;font-weight:600}.modal-tech .badges{flex-wrap:wrap;gap:.5rem;display:flex}.modal-thumbnail{background:#0000004d;border-radius:12px;width:100%;margin-bottom:1.5rem;overflow:hidden}.modal-thumbnail-image{object-fit:cover;width:100%;height:auto;display:block}.modal-video{aspect-ratio:16/9;background:#0000004d;border-radius:12px;width:100%;margin-bottom:1.5rem;overflow:hidden}.modal-video-embed{border:none;width:100%;height:100%}.modal-video-element{width:100%;height:100%;display:block}.modal-actions{border-top:1px solid #4fc3f71a;flex-wrap:wrap;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.modal-link-btn{border:2px solid #0000;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.modal-demo-btn{color:#fff;background:linear-gradient(135deg,#4fc3f7 0%,#29b6f6 100%);box-shadow:0 4px 15px #4fc3f74d}.modal-demo-btn:hover{background:linear-gradient(135deg,#29b6f6 0%,#0288d1 100%);transform:translateY(-2px);box-shadow:0 6px 20px #4fc3f780}.modal-video-btn{color:#4fc3f7;background:0 0;border-color:#4fc3f7}.modal-video-btn:hover{background:#4fc3f71a;transform:translateY(-2px)}@media (max-width:768px){.description-modal{max-width:95%;max-height:90vh}.modal-header{padding:1rem}.modal-header h2{font-size:1.4rem}.modal-content{padding:1rem}.modal-description{font-size:1rem}.modal-actions{flex-direction:column}.modal-link-btn{justify-content:center;width:100%}}
