*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;color:#fff;cursor:none;background-color:#000;width:100%;max-width:100vw;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;position:relative;overflow-x:hidden}*{cursor:none}html{scroll-behavior:smooth;width:100%;max-width:100vw;overflow-x:hidden}#root{width:100%;max-width:100vw;position:relative;overflow-x:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes gradient{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.05)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes glow{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.scroll-animate{opacity:0;will-change:opacity,transform;transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1);transform:translateY(40px)}.scroll-animate.scroll-visible{opacity:1;transform:translateY(0)}.scroll-animate[style*=animation-delay]{transition-delay:var(--delay,0s)}.scroll-animate:not(.scroll-visible){opacity:0;transform:translateY(40px)}.animate-fadeIn{opacity:0;animation:1s ease-out forwards fadeIn}.animate-blink{animation:1s infinite blink}.animate-gradient{background-size:300%;animation:3s infinite gradient}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.animate-float{animation:3s ease-in-out infinite float}.delay-300{animation-delay:.3s}.delay-500{animation-delay:.5s}.delay-700{animation-delay:.7s}.delay-900{animation-delay:.9s}.delay-1000{animation-delay:1s}.delay-1200{animation-delay:1.2s}.portfolio-wrapper{min-height:100vh;position:relative}.background-container{z-index:0;position:fixed;inset:0;overflow:hidden}.background-gradient{background:radial-gradient(at top,#22c55e33 0%,#00000080 50%,#000 100%);position:absolute;inset:0}.background-orb-1{filter:blur(64px);background-color:#22c55e1a;border-radius:50%;width:384px;height:384px;animation:4s cubic-bezier(.4,0,.6,1) infinite pulse;position:absolute;top:25%;left:25%}.background-orb-2{filter:blur(64px);background-color:#10b9811a;border-radius:50%;width:384px;height:384px;animation:4s cubic-bezier(.4,0,.6,1) 2s infinite pulse;position:absolute;bottom:25%;right:25%}.cursor-container{pointer-events:none;z-index:9999;position:fixed}.custom-cursor{pointer-events:none;mix-blend-mode:screen;border-radius:50%;position:fixed;transform:translate(-50%,-50%)}.cursor-outer{filter:blur(20px);background:radial-gradient(circle,#4ade8066 0%,#4ade801a 50%,#0000 100%);width:60px;height:60px;transition:transform .15s cubic-bezier(.25,.46,.45,.94);animation:2s ease-in-out infinite cursorPulse}.cursor-middle{filter:blur(12px);background:radial-gradient(circle,#22c55e80 0%,#22c55e33 50%,#0000 100%);width:40px;height:40px;transition:transform .12s cubic-bezier(.25,.46,.45,.94);animation:1.5s ease-in-out .3s infinite cursorPulse}.cursor-inner{filter:blur(4px);background:radial-gradient(circle,#4ade80e6 0%,#22c55e99 50%,#0000 100%);width:20px;height:20px;transition:transform 80ms cubic-bezier(.25,.46,.45,.94);animation:1s ease-in-out .6s infinite cursorPulse;box-shadow:0 0 20px #4ade80cc,0 0 40px #22c55e66}@keyframes cursorPulse{0%,to{opacity:.8;transform:translate(-50%,-50%)scale(1)}50%{opacity:1;transform:translate(-50%,-50%)scale(1.2)}}.cursor-hover .cursor-outer{background:radial-gradient(circle,#4ade8099 0%,#4ade8033 50%,#0000 100%)!important;transform:translate(-50%,-50%)scale(1.5)!important}.cursor-hover .cursor-middle{background:radial-gradient(circle,#22c55eb3 0%,#22c55e4d 50%,#0000 100%)!important;transform:translate(-50%,-50%)scale(1.3)!important}.cursor-hover .cursor-inner{background:radial-gradient(circle,#4ade80 0%,#22c55ee6 50%,#0000 100%)!important;transform:translate(-50%,-50%)scale(1.2)!important;box-shadow:0 0 30px #4ade80,0 0 60px #22c55e99!important}.navbar{-webkit-backdrop-filter:blur(12px);z-index:50;background-color:#000c;border-bottom:1px solid #22c55e33;width:100%;position:fixed;top:0;box-shadow:0 4px 6px -1px #22c55e1a}.navbar-container{justify-content:space-between;align-items:center;max-width:1280px;height:64px;margin:0 auto;padding:0 1rem;display:flex}.navbar-logo-container{cursor:pointer;background:0 0;border:none;align-items:center;gap:1rem;padding:0;transition:transform .3s;display:flex}.navbar-logo-container:hover{transform:translateY(-2px)}.navbar-logo-circle{background:linear-gradient(135deg,#4ade80,#10b981);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:visible;box-shadow:0 4px 12px #22c55e4d}.navbar-logo-circle:before{content:"";opacity:0;filter:blur(8px);z-index:-1;background:linear-gradient(135deg,#4ade80,#10b981);border-radius:50%;transition:opacity .3s;position:absolute;inset:-2px}.navbar-logo-container:hover .navbar-logo-circle:before{opacity:.5}.navbar-logo-container:hover .navbar-logo-circle{transform:scale(1.08);box-shadow:0 6px 20px #22c55e80}.navbar-logo-code{color:#fff;z-index:2;text-shadow:0 0 8px #ffffff4d;letter-spacing:-.5px;font-family:Courier New,monospace;font-size:1rem;font-weight:900;animation:6s linear infinite rotateCode;display:inline-block;position:relative}@keyframes rotateCode{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.navbar-logo-text{flex-direction:column;align-items:flex-start;gap:.125rem;display:flex}.navbar-logo-name{color:#4ade80;letter-spacing:.3px;font-size:1.25rem;font-weight:600;line-height:1.2;transition:color .3s}.navbar-logo-container:hover .navbar-logo-name{color:#22c55e}.navbar-logo-subtitle{color:#9ca3af;letter-spacing:.2px;font-size:.875rem;font-weight:400;line-height:1.2}@media (max-width:640px){.navbar-logo-circle{width:36px;height:36px}.navbar-logo-code{font-size:.875rem}.navbar-logo-name{font-size:.9375rem}.navbar-logo-subtitle{font-size:.6875rem}.navbar-logo-container{gap:.625rem}}.navbar-menu{gap:2rem;display:none}.navbar-link{text-transform:capitalize;color:#fff;cursor:pointer;background:0 0;border:none;padding:.5rem 0;font-family:Courier New,monospace;transition:color .3s;position:relative}.navbar-link:hover,.navbar-link.active{color:#4ade80}.navbar-link:after{content:"";transform-origin:0;background-color:#4ade80;width:100%;height:2px;transition:transform .3s;position:absolute;bottom:0;left:0;transform:scaleX(0)}.navbar-link.active:after,.navbar-link:hover:after{transform:scaleX(1)}.mobile-menu-button{color:#fff;cursor:pointer;background:0 0;border:none;transition:color .3s;display:block}@media (min-width:768px){.navbar-menu.desktop{display:flex}.mobile-menu-button{display:none}}.mobile-menu{z-index:100;pointer-events:none;opacity:0;transition:opacity .3s;position:fixed;inset:0}.mobile-menu.mobile-menu-open{opacity:1;pointer-events:all}.mobile-menu-overlay{-webkit-backdrop-filter:blur(8px);background:linear-gradient(135deg,#000000d9,#000000bf);transition:opacity .3s;position:absolute;inset:0}.mobile-menu-drawer{-webkit-backdrop-filter:blur(24px);background:linear-gradient(#111827fc 0%,#111827f7 50%,#111827f2 100%);border-right:2px solid #22c55e66;flex-direction:column;width:85%;max-width:340px;transition:transform .4s cubic-bezier(.16,1,.3,1);display:flex;position:relative;top:0;bottom:0;left:0;overflow:hidden auto;transform:translate(-100%);box-shadow:8px 0 32px #0009,4px 0 16px #22c55e1a,inset 1px 0 #22c55e33}.mobile-menu-drawer::-webkit-scrollbar{width:6px}.mobile-menu-drawer::-webkit-scrollbar-track{background:#1118274d;border-radius:3px}.mobile-menu-drawer::-webkit-scrollbar-thumb{background:linear-gradient(#22c55e80,#22c55e4d);border-radius:3px;transition:background .3s}.mobile-menu-drawer::-webkit-scrollbar-thumb:hover{background:linear-gradient(#22c55eb3,#22c55e80)}.mobile-menu-drawer:before{content:"";opacity:0;background:linear-gradient(90deg,#0000,#22c55e80,#0000);height:1px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.mobile-menu.mobile-menu-open .mobile-menu-drawer:before{opacity:1}.mobile-menu.mobile-menu-open .mobile-menu-drawer{transform:translate(0)}.mobile-menu-header{-webkit-backdrop-filter:blur(10px);background:linear-gradient(#22c55e14 0%,#11182766 100%);border-bottom:1px solid #22c55e40;justify-content:space-between;align-items:center;padding:1.75rem 1.5rem;display:flex;position:relative}.mobile-menu-header:after{content:"";background:linear-gradient(90deg,#0000,#22c55e80,#0000);height:1px;position:absolute;bottom:0;left:0;right:0}.mobile-menu-logo{cursor:pointer;background:0 0;border:none;align-items:center;gap:.875rem;padding:0;transition:transform .2s;display:flex}.mobile-menu-logo:active{transform:scale(.98)}.mobile-menu-logo-circle{background:linear-gradient(135deg,#4ade80,#10b981,#22c55e) 0 0/200% 200%;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;transition:transform .3s,box-shadow .3s;animation:3s infinite gradientShift;display:flex;position:relative;box-shadow:0 4px 16px #22c55e66,0 0 24px #22c55e33,inset 0 1px #fff3}.mobile-menu-logo:hover .mobile-menu-logo-circle{transform:scale(1.05);box-shadow:0 6px 20px #22c55e80,0 0 32px #22c55e4d,inset 0 1px #ffffff4d}@keyframes gradientShift{0%,to{background-position:0%}50%{background-position:100%}}.mobile-menu-logo-code{color:#fff;font-family:Courier New,monospace;font-size:.875rem;font-weight:900;animation:6s linear infinite rotateCode;display:inline-block}.mobile-menu-logo-text{flex-direction:column;align-items:flex-start;gap:.125rem;display:flex}.mobile-menu-logo-name{color:#4ade80;letter-spacing:.3px;font-size:1rem;font-weight:600;line-height:1.2}.mobile-menu-logo-subtitle{color:#9ca3af;font-size:.75rem;font-weight:400;line-height:1.2}.mobile-menu-close{color:#d1d5db;cursor:pointer;background:#22c55e1a;border:1.5px solid #22c55e40;border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.mobile-menu-close:before{content:"";background:#22c55e33;border-radius:50%;width:0;height:0;transition:width .3s,height .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mobile-menu-close:hover:before{width:100%;height:100%}.mobile-menu-close:hover{color:#4ade80;background:#22c55e33;border-color:#4ade80;transform:rotate(90deg)scale(1.05);box-shadow:0 4px 12px #22c55e4d}.mobile-menu-close:active{transform:rotate(90deg)scale(.95)}.mobile-menu-close svg{z-index:1;transition:transform .3s;position:relative}.mobile-menu-container{flex-direction:column;flex:1;gap:.75rem;padding:1.5rem 1rem;display:flex}.mobile-menu-link{text-align:left;text-transform:capitalize;color:#d1d5db;cursor:pointer;opacity:0;background:linear-gradient(135deg,#22c55e0f 0%,#22c55e08 100%);border:1.5px solid #22c55e26;border-radius:1rem;align-items:center;gap:1.25rem;width:100%;padding:1.125rem 1.5rem;font-family:Courier New,monospace;transition:all .35s cubic-bezier(.4,0,.2,1);animation:.5s cubic-bezier(.16,1,.3,1) forwards slideInLeftMenu;display:flex;position:relative;overflow:hidden;transform:translate(-30px)}.mobile-menu.mobile-menu-open .mobile-menu-link{animation:.5s cubic-bezier(.16,1,.3,1) forwards slideInLeftMenu}.mobile-menu-link:before{content:"";z-index:0;background:linear-gradient(90deg,#0000,#22c55e26,#0000);width:100%;height:100%;transition:left .6s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:-100%}.mobile-menu-link:after{content:"";z-index:1;background:linear-gradient(#4ade80,#10b981);border-radius:2px 0 0 2px;width:3px;height:0;transition:height .3s cubic-bezier(.4,0,.2,1);position:absolute;top:50%;right:0;transform:translateY(-50%)}.mobile-menu-link:hover:before{left:100%}.mobile-menu-link:hover,.mobile-menu-link.active{color:#4ade80;background:linear-gradient(135deg,#22c55e33 0%,#22c55e1f 100%);border-color:#4ade80;transform:translate(-6px);box-shadow:0 4px 16px #22c55e40,0 0 24px #22c55e1a,inset 0 1px #ffffff1a}.mobile-menu-link.active{color:#4ade80;background:linear-gradient(135deg,#22c55e40 0%,#22c55e26 100%);border-width:1.5px;border-color:#4ade80;box-shadow:0 4px 20px #22c55e4d,0 0 32px #22c55e26,inset 0 1px #ffffff26}.mobile-menu-link.active:after{height:60%}.mobile-menu-icon{color:#9ca3af;z-index:1;flex-shrink:0;transition:all .35s cubic-bezier(.4,0,.2,1);position:relative}.mobile-menu-link:hover .mobile-menu-icon,.mobile-menu-link.active .mobile-menu-icon{color:#4ade80;filter:drop-shadow(0 0 8px #22c55e80);transform:scale(1.15)rotate(5deg)}.mobile-menu-text{letter-spacing:.5px;z-index:1;font-size:1.0625rem;font-weight:600;transition:color .3s;position:relative}@keyframes slideInLeftMenu{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.mobile-menu-button:hover{color:#4ade80;transform:scale(1.1)}.mobile-menu-button{transition:all .3s}@media (min-width:768px){.mobile-menu-button,.mobile-menu{display:none}}@media (max-width:480px){.navbar-container{padding:0 .5rem}.navbar-logo-name{font-size:1.1rem}}.section{z-index:10;justify-content:center;align-items:center;min-height:100vh;padding:6rem 1rem;display:flex;position:relative}.section.hero{padding-top:5rem}@media (max-width:768px){.section{min-height:auto;padding:4rem 1rem}.section.hero{min-height:100vh;padding-top:4rem}}@media (max-width:480px){.section{padding:3rem .75rem}.section.hero{padding-top:3.5rem;padding-bottom:2rem}}.section-container{width:100%;max-width:1280px;margin:0 auto;padding:0 1rem}@media (max-width:640px){.section-container{padding:0 .75rem}}@media (min-width:1024px){.section-container{padding:0 2rem}}.section-title{text-align:center;z-index:1;justify-content:center;align-items:center;gap:.5rem;margin-bottom:3rem;padding-bottom:1rem;font-family:Courier New,monospace;font-size:2.5rem;font-weight:700;transition:all .6s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.section-title-bracket{color:#4ade80;opacity:0;text-shadow:0 0 20px #4ade8080;z-index:2;font-size:2.5rem;font-weight:900;transition:all .3s;animation:.8s cubic-bezier(.4,0,.2,1) forwards slideInBracket;position:relative;transform:translate(-20px)}.section-title-bracket:last-of-type{animation-delay:.2s;transform:translate(20px)}.scroll-animate.scroll-visible .section-title-bracket{animation:.8s cubic-bezier(.4,0,.2,1) forwards slideInBracket}.scroll-animate.scroll-visible .section-title-bracket:last-of-type{animation-delay:.2s}.section-title-text{background:linear-gradient(90deg,#4ade80,#10b981,#4ade80);-webkit-text-fill-color:transparent;opacity:0;letter-spacing:2px;z-index:2;background-size:200%;-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700;animation:3s infinite gradient,.8s cubic-bezier(.4,0,.2,1) forwards fadeInText;display:inline-block;position:relative;transform:translateY(20px)}.scroll-animate.scroll-visible .section-title-text{animation-name:gradient,fadeInText;animation-duration:3s,.8s;animation-timing-function:ease,cubic-bezier(.4,0,.2,1);animation-iteration-count:infinite,1;animation-direction:normal,normal;animation-play-state:running,running;animation-delay:.1s;animation-fill-mode:none,forwards;animation-timeline:auto,auto}.section-title:after{content:"";opacity:0;z-index:0;background:linear-gradient(90deg,#0000,#4ade80,#0000);width:0;height:2px;transition:all .6s;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.scroll-animate.scroll-visible.section-title:after{opacity:.4;width:120%;animation:1s forwards expandLine}@keyframes slideInBracket{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInText{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes expandLine{0%{opacity:0;width:0}to{opacity:.3;width:120%}}.scroll-animate.scroll-visible.section-title{animation:.8s ease-out fadeIn}@media (min-width:768px){.section-title{font-size:3rem}}@media (max-width:640px){.section-title{margin-bottom:2rem;padding-bottom:.75rem;font-size:2rem}.section-title-bracket,.section-title-text{font-size:2rem}}@media (max-width:480px){.section-title{margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.75rem}.section-title-bracket,.section-title-text{font-size:1.75rem}}.hero-content{text-align:center;width:100%;max-width:56rem;margin:0 auto;padding:0 1rem}@media (max-width:640px){.hero-content{padding:0 .5rem}}.hero-greeting{color:#4ade80;margin-bottom:1.5rem;font-family:Courier New,monospace;font-size:1.25rem;font-weight:600}.hero-title{margin-bottom:1rem;font-size:2.5rem;font-weight:700;line-height:1.2}@media (min-width:640px){.hero-title{font-size:3rem}}@media (min-width:768px){.hero-title{font-size:4.5rem}}@media (max-width:480px){.hero-title{font-size:2rem}}.hero-name{background:linear-gradient(90deg,#4ade80,#10b981,#4ade80);-webkit-text-fill-color:transparent;background-size:300%;-webkit-background-clip:text;background-clip:text;animation:3s infinite gradient}.hero-tagline{color:#d1d5db;margin-bottom:1rem;font-size:1.25rem;font-weight:300}@media (min-width:640px){.hero-tagline{font-size:1.5rem}}@media (min-width:768px){.hero-tagline{font-size:1.875rem}}@media (max-width:480px){.hero-tagline{font-size:1.125rem}}.hero-tagline span{display:inline-block}.hero-separator{color:#4ade80;margin:0 .5rem;font-weight:500}.hero-description{color:#9ca3af;margin-bottom:2rem;font-size:1rem;line-height:1.6}@media (min-width:640px){.hero-description{font-size:1.125rem}}@media (min-width:768px){.hero-description{font-size:1.25rem}}@media (max-width:480px){.hero-description{margin-bottom:1.5rem;font-size:.9375rem}}.hero-cta{color:#fff;cursor:pointer;background:linear-gradient(90deg,#22c55e,#10b981);border:none;border-radius:9999px;align-items:center;gap:.5rem;padding:.75rem 2rem;font-size:1.125rem;font-weight:600;transition:all .3s;display:inline-flex}.hero-cta:hover{transform:scale(1.05);box-shadow:0 25px 50px -12px #22c55e80}.hero-cta-icon{width:20px;height:20px}.about-grid{align-items:center;gap:2rem;margin-top:2rem;display:grid}@media (min-width:768px){.about-grid{grid-template-columns:repeat(2,1fr);gap:3rem}}@media (max-width:640px){.about-grid{gap:1.5rem}}.about-text{flex-direction:column;gap:1.5rem;display:flex}.about-paragraph{color:#d1d5db;font-size:1rem;line-height:1.75}@media (min-width:768px){.about-paragraph{font-size:1.125rem}}@media (max-width:480px){.about-paragraph{font-size:.9375rem}}.about-button{color:#fff;cursor:pointer;background:0 0;border:2px solid #22c55e;border-radius:.5rem;align-items:center;gap:.5rem;width:fit-content;margin-top:1.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .3s;display:inline-flex}.about-button:hover{background-color:#22c55e;transform:translateY(-2px);box-shadow:0 10px 20px #22c55e4d}.about-button-icon{width:18px;height:18px;transition:transform .3s}.about-button:hover .about-button-icon{animation:1s ease-in-out infinite float}.about-image-container{justify-content:center;display:flex}.about-image-wrapper{position:relative}.about-image-glow{filter:blur(32px);opacity:.5;background:linear-gradient(to bottom right,#22c55e,#10b981);border-radius:50%;animation:3s cubic-bezier(.4,0,.6,1) infinite pulse;position:absolute;inset:0}.about-image{background:linear-gradient(135deg,#059669,#10b981);border:4px solid #22c55e4d;border-radius:50%;justify-content:center;align-items:center;width:256px;height:256px;transition:transform .3s;display:flex;position:relative;overflow:hidden}.about-image:hover{border-color:#22c55e99;transform:scale(1.05)}.about-image-emoji{font-size:5rem}.skills-subtitle{text-align:center;color:#4ade80;margin-top:-1rem;margin-bottom:3rem;font-size:1.5rem;font-weight:600}.skills-categories{flex-direction:column;gap:3rem;display:flex}@media (min-width:768px){.skills-categories{gap:4rem}}@media (max-width:480px){.skills-categories{gap:2rem}}.skills-category{width:100%}.skills-category-title{color:#4ade80;text-align:center;text-transform:uppercase;letter-spacing:1px;width:100%;margin-bottom:2rem;font-size:1.75rem;font-weight:600;animation:.8s ease-out fadeIn;display:inline-block;position:relative}.skills-category-title:after{content:"";background:linear-gradient(90deg,#0000,#4ade80,#0000);border-radius:2px;width:60px;height:3px;position:absolute;bottom:-10px;left:50%;transform:translate(-50%)}.skills-grid-enhanced{grid-template-columns:repeat(2,1fr);justify-items:center;gap:1.5rem;display:grid}@media (min-width:640px){.skills-grid-enhanced{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px){.skills-grid-enhanced{grid-template-columns:repeat(6,1fr)}}.skill-card-enhanced{opacity:0;box-sizing:border-box;width:100%;max-width:160px;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;transform:translateY(30px)scale(.9)}@media (max-width:640px){.skill-card-enhanced{max-width:140px}}@media (max-width:480px){.skill-card-enhanced{max-width:120px}}.skill-card-enhanced.skill-visible{opacity:1;animation:.6s cubic-bezier(.4,0,.2,1) forwards slideInUp;transform:translateY(0)scale(1)}.skill-card-inner{text-align:center;cursor:pointer;box-sizing:border-box;background:linear-gradient(135deg,#11182799,#11182766);border:1px solid #22c55e4d;border-radius:.75rem;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:1.25rem;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}@media (min-width:640px){.skill-card-inner{padding:1.5rem}}@media (max-width:480px){.skill-card-inner{padding:1rem}}.skill-card-inner:before{content:"";background:linear-gradient(90deg,#0000,#22c55e1a,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.skill-card-enhanced:hover .skill-card-inner:before{left:100%}.skill-card-enhanced:hover .skill-card-inner{background:linear-gradient(135deg,#111827e6,#22c55e1a);border-color:#22c55e;transform:translateY(-12px)scale(1.08);box-shadow:0 20px 40px -10px #22c55e80,0 0 20px #22c55e4d,inset 0 0 20px #22c55e1a}.skill-icon-enhanced{z-index:2;justify-content:center;align-items:center;margin-bottom:.75rem;font-size:3rem;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.skill-card-enhanced:hover .skill-icon-enhanced{filter:drop-shadow(0 8px 20px);animation:2s ease-in-out infinite glow;transform:scale(1.3)rotate(15deg)}.skill-name-enhanced{color:#fff;z-index:2;margin-bottom:.75rem;font-size:1rem;font-weight:600;transition:all .3s;position:relative}.skill-card-enhanced:hover .skill-name-enhanced{color:#4ade80;transform:translateY(-2px)}.skill-progress-bar{background-color:#37415180;border-radius:9999px;width:100%;height:6px;margin-bottom:.5rem;position:relative;overflow:hidden}.skill-progress-fill{border-radius:9999px;height:100%;transition:width 1.2s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0;overflow:hidden}.skill-progress-fill:after{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);animation:2s infinite shimmer;position:absolute;inset:0}.skill-level-enhanced{color:#4ade80;font-family:Courier New,monospace;font-size:.875rem;font-weight:600}.skill-tooltip{color:#fff;white-space:nowrap;z-index:10;pointer-events:none;background-color:#111827f2;border:1px solid #4ade80;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;position:absolute;top:-3rem;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #22c55e4d}.skill-tooltip:after{content:"";border-top:6px solid #4ade80;border-left:6px solid #0000;border-right:6px solid #0000;width:0;height:0;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.skill-glow{background:radial-gradient(circle,var(--skill-color,#4ade80)0%,transparent 70%);opacity:0;filter:blur(20px);pointer-events:none;z-index:0;border-radius:.75rem;width:100%;height:100%;transition:opacity .4s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.skill-card-enhanced:hover .skill-glow{opacity:.3;animation:2s ease-in-out infinite pulse}.experience-timeline{max-width:900px;margin:0 auto;padding:2rem 0;position:relative}.experience-timeline:before{content:"";opacity:.3;background:linear-gradient(#4ade80,#10b981,#4ade80) 0 0/100% 200%;width:2px;animation:3s infinite gradientFlow;position:absolute;top:0;bottom:0;left:30px}@keyframes gradientFlow{0%,to{background-position:0 0}50%{background-position:0 100%}}.experience-item{margin-bottom:3rem;padding-left:80px;position:relative}.experience-item:last-child{margin-bottom:0}.experience-timeline-line{z-index:2;background:linear-gradient(135deg,#4ade80,#10b981);border:3px solid #000;border-radius:50%;width:20px;height:20px;animation:2s ease-in-out infinite pulseDot;position:absolute;top:0;left:21px;box-shadow:0 0 0 2px #4ade804d,0 0 20px #4ade8080}@keyframes pulseDot{0%,to{transform:scale(1);box-shadow:0 0 0 2px #4ade804d,0 0 20px #4ade8080}50%{transform:scale(1.2);box-shadow:0 0 0 4px #4ade8080,0 0 30px #4ade80cc}}.experience-card{background:linear-gradient(135deg,#111827b3,#11182780);border:1px solid #22c55e4d;border-radius:1rem;padding:2rem;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.experience-card:before{content:"";background:linear-gradient(90deg,#0000,#4ade801a,#0000);width:100%;height:100%;transition:left .6s;position:absolute;top:0;left:-100%}.experience-item:hover .experience-card:before{left:100%}.experience-item:hover .experience-card{background:linear-gradient(135deg,#111827e6,#22c55e1a);border-color:#22c55e;transform:translate(10px);box-shadow:0 20px 40px -10px #22c55e66,0 0 30px #22c55e33,inset 0 1px #ffffff1a}.experience-header{align-items:flex-start;gap:1.5rem;margin-bottom:1.5rem;display:flex}.experience-icon-wrapper{color:#4ade80;background:linear-gradient(135deg,#4ade8033,#10b98133);border:2px solid #4ade8066;border-radius:.75rem;justify-content:center;align-items:center;width:56px;min-width:56px;height:56px;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.experience-icon-wrapper:before{content:"";opacity:0;background:linear-gradient(135deg,#4ade80,#10b981);transition:opacity .4s;position:absolute;inset:0}.experience-item:hover .experience-icon-wrapper:before{opacity:.2}.experience-item:hover .experience-icon-wrapper{border-color:#4ade80;transform:scale(1.1)rotate(5deg);box-shadow:0 8px 20px #4ade8066}.experience-icon-svg{z-index:1;width:28px;height:28px;transition:transform .4s;position:relative}.experience-item:hover .experience-icon-svg{filter:drop-shadow(0 0 8px #4ade80cc);transform:scale(1.15)}.experience-header-content{flex:1}.experience-position{color:#fff;margin-bottom:.5rem;font-size:1.5rem;font-weight:700;transition:color .3s}.experience-item:hover .experience-position{color:#4ade80}.experience-company{color:#4ade80;margin-bottom:.75rem;font-size:1.125rem;font-weight:600}.experience-meta{color:#9ca3af;flex-wrap:wrap;gap:1rem;font-size:.875rem;display:flex}.experience-location,.experience-date{align-items:center;gap:.5rem;display:flex}.experience-location svg,.experience-date svg{color:#4ade80;width:14px;height:14px}.experience-description{color:#d1d5db;margin-bottom:1.5rem;font-size:1rem;line-height:1.75}.experience-achievements{margin-bottom:1.5rem}.experience-achievements-title{color:#4ade80;text-transform:uppercase;letter-spacing:1px;margin-bottom:.75rem;font-size:.875rem;font-weight:600}.experience-achievements-list{margin:0;padding:0;list-style:none}.experience-achievement-item{color:#d1d5db;margin-bottom:.5rem;padding-left:1.5rem;font-size:.9375rem;line-height:1.75;position:relative}.achievement-bullet{background:linear-gradient(135deg,#4ade80,#10b981);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulseBullet;position:absolute;top:.5rem;left:0;box-shadow:0 0 8px #4ade8099}@keyframes pulseBullet{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.3)}}.experience-technologies{flex-wrap:wrap;gap:.5rem;display:flex}.experience-tech-tag{color:#4ade80;background:#22c55e26;border:1px solid #22c55e4d;border-radius:9999px;padding:.375rem .875rem;font-family:Courier New,monospace;font-size:.8125rem;font-weight:500;transition:all .3s}.experience-tech-tag:hover{background:#22c55e40;border-color:#22c55e;transform:translateY(-2px);box-shadow:0 4px 12px #22c55e4d}@media (max-width:768px){.experience-timeline:before{left:20px}.experience-item{padding-left:60px}.experience-timeline-line{width:18px;height:18px;left:11px}.experience-card{padding:1.5rem}.experience-header{flex-direction:column;gap:1rem}.experience-icon-wrapper{width:48px;min-width:48px;height:48px}.experience-icon-svg{width:24px;height:24px}.experience-position{font-size:1.25rem}.section-title{gap:.25rem;font-size:2rem}.section-title-bracket,.section-title-text{font-size:2rem}}@media (max-width:480px){.experience-timeline{padding:1rem 0}.experience-item{margin-bottom:2rem;padding-left:50px}.experience-card{padding:1.25rem}.experience-meta{flex-direction:column;gap:.5rem}.section-title,.section-title-bracket,.section-title-text{font-size:1.75rem}}.services-grid{gap:1.5rem;margin-top:2rem;display:grid}@media (min-width:640px){.services-grid{gap:2rem}}@media (min-width:768px){.services-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:480px){.services-grid{gap:1rem}}.service-card{cursor:pointer;box-sizing:border-box;background:linear-gradient(135deg,#11182799,#11182766);border:1px solid #22c55e4d;border-radius:.75rem;width:100%;max-width:100%;padding:1.5rem;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative}@media (min-width:640px){.service-card{padding:2rem}}@media (max-width:480px){.service-card{padding:1.25rem}}.service-card:hover{background:linear-gradient(135deg,#111827e6,#22c55e1a);border-color:#22c55e;transform:translateY(-12px)scale(1.02);box-shadow:0 25px 50px -12px #22c55e66,0 0 30px #22c55e33}.service-icon{color:#4ade80;margin-bottom:1.5rem;transition:transform .3s}.service-icon-svg{width:40px;height:40px}.service-card:hover .service-icon{transform:scale(1.15)rotate(5deg)}.service-title{color:#fff;margin-bottom:1rem;font-size:1.25rem;font-weight:700;transition:color .3s}.service-card:hover .service-title{color:#4ade80}.service-description{color:#9ca3af;font-size:1rem;line-height:1.75}.projects-grid{grid-template-columns:1fr;gap:1.5rem;margin-top:2rem;display:grid}@media (min-width:640px){.projects-grid{gap:2rem}}@media (min-width:768px){.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.projects-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:480px){.projects-grid{gap:1rem}}.project-card{cursor:pointer;box-sizing:border-box;background-color:#11182780;border:1px solid #22c55e4d;border-radius:.75rem;width:100%;max-width:100%;transition:all .4s cubic-bezier(.4,0,.2,1);overflow:hidden}.project-card:hover{border-color:#22c55e;transform:translateY(-12px)scale(1.02);box-shadow:0 25px 50px -12px #22c55e80,0 0 30px #22c55e4d}.project-card:hover .project-screenshot{transform:translateY(-10px)scale(1.02);box-shadow:0 20px 40px #00000040}.project-image{justify-content:center;align-items:center;height:192px;font-size:3.75rem;display:flex;position:relative;overflow:hidden}.project-screenshot{object-fit:cover;z-index:3;will-change:transform;width:100%;height:100%;transition:transform .35s,box-shadow .35s;display:block;position:relative}.project-gradient-1{background:linear-gradient(135deg,#22c55e,#10b981)}.project-gradient-2{background:linear-gradient(135deg,#10b981,#14b8a6)}.project-gradient-3{background:linear-gradient(135deg,#14b8a6,#22c55e)}.project-gradient-4{background:linear-gradient(135deg,#22c55e,#06b6d4)}.project-gradient-5{background:linear-gradient(135deg,#06b6d4,#10b981)}.project-gradient-6{background:linear-gradient(135deg,#10b981,#16a34a)}.project-image-overlay{z-index:2;pointer-events:none;background-color:#0003;transition:background-color .3s;position:absolute;inset:0}.project-card:hover .project-image-overlay{background-color:#0006}.project-image-icon{z-index:10;transition:transform .3s;position:relative}.project-card:hover .project-image-icon{transform:scale(1.2)rotate(10deg)}.project-content{padding:1.5rem}.project-title{color:#fff;margin-bottom:.75rem;font-size:1.25rem;font-weight:700;transition:color .3s}.project-card:hover .project-title{color:#4ade80}.project-description{color:#9ca3af;margin-bottom:1rem;font-size:.875rem;line-height:1.75}.project-tech{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.project-tech-tag{color:#4ade80;background-color:#22c55e33;border:1px solid #22c55e4d;border-radius:9999px;padding:.25rem .75rem;font-size:.75rem;transition:all .3s}.project-tech-tag:hover{background-color:#22c55e4d;border-color:#22c55e;transform:translateY(-2px)}.project-links{gap:1rem;display:flex}.project-link{color:#fff;align-items:center;gap:.5rem;font-size:.875rem;text-decoration:none;transition:color .3s;display:flex}.project-link:hover{color:#4ade80}.contact-content{text-align:center;width:100%;max-width:900px;margin:0 auto;padding:0 .5rem}@media (min-width:640px){.contact-content{padding:0 1rem}}.contact-intro{margin-bottom:clamp(2rem,6vw,4rem);padding:0 1rem}@media (max-width:768px){.contact-intro{margin-bottom:3rem}}@media (max-width:480px){.contact-intro{margin-bottom:2rem;padding:0 .75rem}}.contact-function{color:#4ade80;margin-bottom:1rem;font-family:Courier New,monospace;font-size:clamp(1.25rem,4vw,2rem);font-weight:600}@media (max-width:480px){.contact-function{font-size:clamp(1.125rem,3.5vw,1.5rem)}}.contact-subtitle{color:#9ca3af;max-width:600px;margin-bottom:2rem;margin-left:auto;margin-right:auto;font-size:clamp(.9375rem,2.5vw,1.125rem);line-height:1.75}@media (max-width:480px){.contact-subtitle{margin-bottom:1.5rem;font-size:.875rem}}.contact-quote{background:linear-gradient(90deg,#4ade80,#10b981,#4ade80);-webkit-text-fill-color:transparent;background-size:200%;-webkit-background-clip:text;background-clip:text;margin-bottom:0;font-size:clamp(1.125rem,3vw,1.5rem);font-style:italic;font-weight:600;animation:3s infinite gradient}@media (max-width:480px){.contact-quote{font-size:1rem}}.contact-methods{grid-template-columns:1fr;gap:clamp(.75rem,2vw,1.5rem);margin-bottom:clamp(1.5rem,4vw,3rem);display:grid}@media (min-width:640px){.contact-methods{gap:clamp(1rem,2.5vw,1.5rem);margin-bottom:clamp(2rem,5vw,3rem)}}@media (min-width:768px){.contact-methods{grid-template-columns:repeat(3,1fr);gap:clamp(1rem,3vw,2rem)}}@media (max-width:480px){.contact-methods{gap:.75rem;margin-bottom:1.5rem}}.contact-method-card{cursor:pointer;background-color:#11182780;border:1px solid #22c55e4d;border-radius:clamp(.5rem,2vw,.75rem);flex-direction:column;align-items:center;gap:1rem;padding:clamp(1rem,3vw,1.5rem);transition:all .3s;display:flex}@media (max-width:480px){.contact-method-card{border-radius:.5rem;padding:1rem}}.contact-method-card:hover{background-color:#111827b3;border-color:#22c55e;transform:translateY(-4px);box-shadow:0 20px 25px -5px #22c55e33}.contact-method-icon{border:2px solid;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:all .3s;display:flex}.contact-method-icon.email{color:#22c55e;background-color:#22c55e1a;border-color:#22c55e4d}.contact-method-icon.github{color:#f05032;background-color:#f050321a;border-color:#f050324d}.contact-method-icon.linkedin{color:#0077b5;background-color:#0077b51a;border-color:#0077b54d}.contact-method-card:hover .contact-method-icon{transform:scale(1.1)rotate(5deg);box-shadow:0 8px 16px #22c55e4d}.contact-method-card:hover .contact-method-icon.email{background-color:#22c55e33;border-color:#22c55e}.contact-method-card:hover .contact-method-icon.github{background-color:#f0503233;border-color:#f05032}.contact-method-card:hover .contact-method-icon.linkedin{background-color:#0077b533;border-color:#0077b5}.contact-method-content{text-align:center;width:100%}.contact-method-label{color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;font-size:clamp(.75rem,2vw,.875rem);font-weight:500}.contact-method-value{color:#fff;word-break:break-word;font-size:clamp(.875rem,2vw,.9375rem);text-decoration:none;transition:color .3s;display:block}.contact-method-value:hover{color:#4ade80}.contact-socials{flex-wrap:wrap;justify-content:center;gap:clamp(.75rem,2vw,1.5rem);margin-top:clamp(1rem,3vw,2rem);display:flex}@media (min-width:640px){.contact-socials{gap:clamp(1rem,2.5vw,1.5rem);margin-top:clamp(1.5rem,4vw,2rem)}}@media (max-width:480px){.contact-socials{gap:.75rem;margin-top:1rem}}.contact-social-link{color:#fff;background-color:#111827b3;border:1px solid #22c55e4d;border-radius:clamp(.5rem,2vw,.75rem);align-items:center;gap:clamp(.5rem,1.5vw,.75rem);padding:clamp(.75rem,2vw,1.5rem) clamp(1rem,3vw,1.5rem);font-size:clamp(.8125rem,2vw,.9375rem);font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex}@media (max-width:480px){.contact-social-link{padding:.75rem 1rem;font-size:.8125rem}}.contact-social-link:hover{transform:translateY(-2px);box-shadow:0 10px 20px -5px #22c55e66}.contact-social-link.email-link:hover{color:#4ade80;background:linear-gradient(135deg,#22c55e33,#10b98133);border-color:#22c55e}.contact-social-link.github-link:hover{color:#f05032;background:linear-gradient(135deg,#f0503233,#dc262633);border-color:#f05032}.contact-social-link.linkedin-link:hover{color:#0077b5;background:linear-gradient(135deg,#0077b533,#0693);border-color:#0077b5}.contact-social-label{font-size:.9375rem}.footer{text-align:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;border-top:1px solid #22c55e33;padding:2rem 0}.footer-back-button{color:#4ade80;cursor:pointer;background:0 0;border:none;margin-bottom:1rem;font-family:Courier New,monospace;font-size:1rem;transition:all .3s;display:inline-block}.footer-back-button:hover{color:#22c55e;transform:scale(1.05)}.footer-text{color:#9ca3af;margin-bottom:.5rem}.footer-copyright{color:#6b7280;font-size:.875rem}.text-center{text-align:center}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.mb-12{margin-bottom:3rem}.mt-6{margin-top:1.5rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}*,button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline-offset:2px;outline:2px solid #4ade80}body{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.about-image{border-radius:50%;justify-content:center;align-items:center;width:200px;height:200px;display:flex;overflow:hidden}.about-photo{object-fit:cover;width:100%;height:100%}.skills-grid{grid-template-columns:repeat(6,1fr);place-items:center;gap:20px;display:grid}.skill-card{color:#fff;flex-direction:column;align-items:center;display:flex}.skill-icon img{object-fit:contain;width:50px;height:50px;margin-bottom:8px}.skills-grid-logo{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));justify-items:center;gap:32px;display:grid}.tech-card{background:linear-gradient(145deg,#ffffff0d,#0009);border-radius:18px;flex-direction:column;justify-content:center;align-items:center;width:110px;height:110px;transition:all .3s;display:flex;position:relative;box-shadow:inset 0 0 0 1px #ffffff14,0 10px 30px #000000b3}.tech-card img{filter:drop-shadow(0 0 6px #ffffff26);width:42px;height:42px;margin-bottom:10px}.tech-name{color:#9ca3af;letter-spacing:.5px;font-size:.75rem}.tech-card:hover{transform:translateY(-6px)scale(1.05);box-shadow:inset 0 0 0 1px #4ade8066,0 20px 40px #000000e6}.tech-card:hover img{filter:drop-shadow(0 0 12px #4ade80cc)}
