:root{--bg-color:#0d1117;--surface-color:#161b22;--primary-color:#39ff14;--primary-variant-color:#3700b3;--text-color:#e6edf3;--text-secondary-color:#8b949e;--border-color:#30363d;--glow-color:rgba(57,255,20,.2);--cyber-glow-color:rgba(57,255,20,.4)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-padding-top:80px}body{font-family:var(--font-fira-code),monospace;background-color:var(--bg-color);color:var(--text-color);line-height:1.6;position:relative;overflow-x:hidden}body:after{content:"";z-index:-1;pointer-events:none;opacity:.5;background-image:linear-gradient(rgba(18,18,18,0) 50%,rgba(0,0,0,.25) 50%),linear-gradient(90deg,rgba(255,0,0,.03),rgba(0,255,0,.02),rgba(0,0,255,.03));background-size:100% 3px,4px 100%;width:100%;height:100%;animation:20s linear infinite scanline;position:fixed;top:0;left:0}@keyframes scanline{0%{background-position:0 0,0 0}to{background-position:0 100vh,0 0}}#particle-canvas{z-index:-2;opacity:.3;width:100%;height:100%;position:fixed;top:0;left:0}a{color:var(--primary-color);text-decoration:none;transition:color .3s}a:hover{color:#fff}h1,h2,h3{margin-bottom:1rem;font-weight:600;line-height:1.2}h1{font-size:3rem;display:inline-block;position:relative}h2{color:var(--primary-color);text-shadow:0 0 10px var(--glow-color);font-size:2.5rem}h3{font-size:1.5rem}p{color:var(--text-secondary-color);margin-bottom:1rem}img{max-width:100%;height:auto;display:block}header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;border-bottom:1px solid var(--border-color);background-color:rgba(18,18,18,.8);width:100%;padding:1rem 5%;position:fixed;top:0;left:0}nav{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.logo{color:var(--primary-color);text-shadow:0 0 5px var(--glow-color);font-size:1.5rem;font-weight:600}.nav-links{gap:2rem;list-style:none;display:flex}.nav-links a{padding-bottom:5px;font-weight:400;position:relative}.nav-links a:after{content:"";background-color:var(--primary-color);width:0;height:2px;transition:width .3s;position:absolute;bottom:0;left:0}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.hero{background-color:var(--bg-color);justify-content:center;align-items:center;min-height:100vh;padding:0 5%;display:flex;position:relative;overflow:hidden}.hero-container{justify-content:center;align-items:center;gap:3rem;width:100%;max-width:1200px;display:flex}.hero-content{text-align:left;z-index:2;max-width:700px;position:relative}.hero-content h1{min-height:5rem;color:var(--text-color);text-shadow:0 0 5px rgba(255,255,255,.1);position:relative}.hero-content h1 .cursor{background-color:var(--primary-color);width:1rem;height:3rem;box-shadow:0 0 10px var(--glow-color);margin-left:.5rem;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{0%,to{background-color:transparent}50%{background-color:var(--primary-color)}}.hero-content h1:before,.hero-content h1:after{content:attr(data-text);background:var(--bg-color);width:100%;height:100%;color:var(--text-color);position:absolute;top:0;left:0;overflow:hidden}.hero-content h1:before{text-shadow:-2px 0 var(--primary-color);animation:3s linear infinite alternate-reverse glitch-anim-1;left:3px}.hero-content h1:after{text-shadow:-2px 0 #ff00c1,3px 3px #00fff9;animation:3s linear infinite alternate-reverse glitch-anim-2;left:-3px}@keyframes glitch-anim-1{0%{clip-path:inset(15% 0 86%)}10%{clip-path:inset(5% 0 80%)}20%{clip-path:inset(95% 0 2%)}30%{clip-path:inset(66% 0 30%)}40%{clip-path:inset(45% 0 53%)}50%{clip-path:inset(10% 0 58%)}60%{clip-path:inset(89% 0 3%)}70%{clip-path:inset(49% 0)}80%{clip-path:inset(2% 0 95%)}90%{clip-path:inset(55% 0 35%)}to{clip-path:inset(89% 0 5%)}}@keyframes glitch-anim-2{0%{clip-path:inset(80% 0 15%)}10%{clip-path:inset(34% 0 55%)}20%{clip-path:inset(1% 0 98%)}30%{clip-path:inset(78% 0 10%)}40%{clip-path:inset(33% 0 63%)}50%{clip-path:inset(92% 0 2%)}60%{clip-path:inset(70% 0 25%)}70%{clip-path:inset(30% 0 68%)}80%{clip-path:inset(60% 0 38%)}90%{clip-path:inset(12% 0 85%)}to{clip-path:inset(95% 0 3%)}}.hero .subtitle{color:var(--text-secondary-color);margin-bottom:2rem;font-size:1.25rem}.scroll-down-indicator{color:var(--primary-color);text-shadow:0 0 10px var(--glow-color);cursor:pointer;z-index:10;flex-direction:column;align-items:center;gap:8px;font-size:.9rem;font-weight:600;transition:transform .3s,color .3s,text-shadow .3s;animation:2s ease-in-out infinite bounceUpDown;display:flex;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.scroll-down-indicator:hover{color:#fff;text-shadow:0 0 15px var(--cyber-glow-color);transform:translate(-50%)translateY(-5px)}.scroll-down-indicator svg{fill:currentColor;width:36px;height:36px;transition:transform .3s}@keyframes bounceUpDown{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(-10px)}}@media (max-width:480px){.scroll-down-indicator span{display:none}.scroll-down-indicator{bottom:20px}}.cta-button{border:2px solid var(--primary-color);color:var(--primary-color);font-weight:600;font-family:var(--font-fira-code),monospace;text-shadow:0 0 5px rgba(0,0,0,.5);background-color:transparent;border-radius:0;padding:12px 24px;transition:background-color .3s,color .3s,box-shadow .3s;display:inline-block}.cta-button:hover{background-color:var(--primary-color);color:var(--bg-color);box-shadow:0 0 20px var(--glow-color)}.content-section{opacity:0;max-width:1200px;margin:0 auto;padding:6rem 5%;transition:opacity .6s ease-out,transform .6s ease-out;transform:translateY(20px)}.content-section.visible{opacity:1;transform:translateY(0)}.content-section h2{text-align:center;margin-bottom:3rem}.about-container{align-items:center;gap:3rem;display:flex}.profile-pic{border:3px solid var(--primary-color);border-radius:50%;width:250px;height:250px;position:relative;overflow:hidden}.profile-pic>img{object-fit:cover}.hero-profile-pic{box-shadow:0 0 25px var(--glow-color)}.about-text{flex:1}.skills-list{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.skills-list span{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:0;padding:.5rem 1rem;font-size:.9rem}.timeline{border-left:2px solid var(--border-color);max-width:800px;margin:0 auto;padding-left:30px;position:relative}.timeline:after{content:"";background:var(--primary-color);transform-origin:top;width:2px;height:100%;box-shadow:0 0 15px var(--glow-color);transition:transform 1s cubic-bezier(.19,1,.22,1);position:absolute;top:0;left:-2px;transform:scaleY(0)}.timeline.visible:after{transition-delay:.2s;transform:scaleY(1)}.timeline-item{opacity:0;transform-origin:0;margin-bottom:2rem;transition:opacity .6s ease-out,transform .6s ease-out;position:relative;transform:translate(-30px)rotate(-3deg)scale(.95)}.timeline-item.visible{opacity:1;transform:translate(0)rotate(0)scale(1)}.timeline-item:before{content:"";background-color:var(--primary-color);border:3px solid var(--bg-color);width:15px;height:15px;box-shadow:0 0 10px var(--glow-color);border-radius:50%;position:absolute;top:5px;left:-39px}.timeline-content h3{color:var(--text-color);font-size:1.25rem}.timeline-company{color:var(--primary-color);margin-bottom:.5rem;font-weight:600}.education-card{background-color:var(--surface-color);border:1px solid var(--border-color);padding:2rem}.education-card h3{color:var(--primary-color)}.education-card p{margin-bottom:.5rem}.awards-grid{grid-template-columns:1fr;gap:2rem;max-width:900px;margin:0 auto;display:grid}.award-card{background-color:var(--surface-color);border:1px solid var(--border-color);align-items:center;gap:2rem;padding:1.5rem;transition:all .3s;display:flex}.award-card:hover{border-color:var(--primary-color);box-shadow:0 0 20px var(--cyber-glow-color);transform:translateY(-5px)}.award-image{flex-shrink:0}.award-image img{object-fit:contain;width:80px;height:80px}.award-content h3{color:var(--text-color);margin-bottom:.25rem;font-size:1.25rem}.award-issuer{color:var(--primary-color);margin-bottom:.5rem;font-size:.9rem;font-weight:600}.award-content p{margin-bottom:0;font-size:1rem}@media (max-width:500px){.award-card{text-align:center;flex-direction:column;gap:1.5rem}}.gallery-grid{grid-template-columns:repeat(6,1fr);grid-auto-rows:20vw;grid-auto-flow:dense;gap:1.5rem;display:grid}.gallery-item{border:2px solid var(--border-color);transition:border-color .4s,transform .4s,box-shadow .4s;position:relative;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.5)}.gallery-item:hover{border-color:var(--primary-color);box-shadow:0 0 25px var(--cyber-glow-color);z-index:10;transform:scale(1.03)}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .8s ease-out}.gallery-item.item-1{grid-area:span 1/1/auto/span 3}.gallery-item.item-2{grid-area:span 1/4/auto/span 3}.gallery-item.item-3{grid-area:span 2/1/auto/span 4}.gallery-item.item-4,.gallery-item.item-5{grid-area:span 1/5/auto/span 2}@media (max-width:768px){.gallery-grid{grid-template-columns:1fr;grid-auto-rows:50vw}.gallery-item{grid-area:auto!important}}.project-grid{flex-wrap:wrap;justify-content:center;gap:2rem;display:flex}.project-card{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:0;flex-direction:column;width:320px;height:400px;padding:2rem;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden}.project-card:hover{box-shadow:0 0 25px var(--cyber-glow-color);border-color:var(--primary-color);transform:translateY(-5px)}.project-card:hover h3:after{content:"_";color:var(--primary-color);margin-left:5px;animation:1s step-end infinite blink;display:inline-block}.project-card h3{color:var(--primary-color)}.project-card p{flex-grow:1}.project-tech{flex-wrap:wrap;gap:.5rem;margin:1rem 0;display:flex}.project-tech span{background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:0;padding:.25rem .75rem;font-size:.8rem}.project-links a{text-align:center;margin-top:auto;margin-right:0;font-weight:600;display:block}#contact{text-align:center}#contact p{max-width:600px;margin:0 auto 2rem}.social-links{justify-content:center;gap:1.5rem;margin-top:2rem;display:flex}.social-links a svg{width:32px;height:32px;fill:var(--text-secondary-color);transition:fill .3s,transform .3s}.social-links a:hover svg{fill:var(--primary-color);transform:translateY(-3px)}.project-detail-header{text-align:center;border-bottom:1px solid var(--border-color);padding:6rem 5% 2rem}.project-detail-header .subtitle{color:var(--text-secondary-color);margin-bottom:2rem;font-size:1.2rem}.project-detail-content{max-width:900px;margin:0 auto;padding:4rem 5%}.project-detail-content h3{color:var(--primary-color);border-bottom:1px solid var(--border-color);margin-top:2rem;margin-bottom:1rem;padding-bottom:.5rem}.project-detail-content .project-tech{margin-bottom:2rem}.project-detail-links{justify-content:flex-start;gap:1rem;margin-top:3rem;display:flex}.back-to-projects{text-align:center;color:var(--primary-color);margin:4rem auto 0;font-weight:600;display:block}footer{text-align:center;background-color:var(--surface-color);border-top:1px solid var(--border-color);color:var(--text-secondary-color);padding:2rem 5%;font-size:.9rem}.theme-switcher{z-index:1001;position:fixed;bottom:30px;right:30px}.theme-icon{background:var(--surface-color);border:1px solid var(--border-color);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:transform .3s;display:flex}.theme-icon:hover{transform:rotate(90deg)}.theme-icon svg{fill:var(--text-secondary-color);transition:fill .3s}.theme-icon:hover svg{fill:var(--primary-color)}.color-palette{background:var(--surface-color);border:1px solid var(--border-color);opacity:0;visibility:hidden;border-radius:5px;gap:10px;padding:10px;transition:opacity .3s,transform .3s,visibility .3s;display:flex;position:absolute;bottom:65px;right:0;transform:translateY(10px)}.theme-switcher.open .color-palette{opacity:1;visibility:visible;transform:translateY(0)}.color-option{cursor:pointer;border:2px solid var(--bg-color);border-radius:50%;width:30px;height:30px;transition:transform .2s}.color-option:hover{transform:scale(1.1)}@media (max-width:768px){h1{font-size:2.5rem}h2{font-size:2rem}.nav-links{display:none}.hero-container{text-align:center;flex-direction:column;gap:2rem;margin-top:5rem}.hero-content{text-align:center;max-width:100%}.about-container{text-align:center;flex-direction:column}}
@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/88731e1a74492905-s.047a472f.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:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/861011d7404b02f6-s.1bad9dbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/3381337b621a9a6a-s.29df3230.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5413d6e6d8960ee4-s.af0c84fa.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:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0951afe60dbf5d36-s.ce79b48e.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/97e7b204180d1274-s.9fe1d481.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:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b8b552e8609c5636-s.p.861f366f.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:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(../media/88731e1a74492905-s.047a472f.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:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(../media/861011d7404b02f6-s.1bad9dbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(../media/3381337b621a9a6a-s.29df3230.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5413d6e6d8960ee4-s.af0c84fa.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:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0951afe60dbf5d36-s.ce79b48e.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(../media/97e7b204180d1274-s.9fe1d481.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:Fira Code;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b8b552e8609c5636-s.p.861f366f.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:Fira Code;font-style:normal;font-weight:700;font-display:swap;src:url(../media/88731e1a74492905-s.047a472f.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:Fira Code;font-style:normal;font-weight:700;font-display:swap;src:url(../media/861011d7404b02f6-s.1bad9dbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-weight:700;font-display:swap;src:url(../media/3381337b621a9a6a-s.29df3230.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Fira Code;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5413d6e6d8960ee4-s.af0c84fa.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:Fira Code;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0951afe60dbf5d36-s.ce79b48e.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-weight:700;font-display:swap;src:url(../media/97e7b204180d1274-s.9fe1d481.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:Fira Code;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b8b552e8609c5636-s.p.861f366f.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:Fira Code Fallback;src:local(Arial);ascent-override:73.56%;descent-override:23.92%;line-gap-override:0.0%;size-adjust:134.59%}.fira_code_47f5870b-module__YFrZga__className{font-family:Fira Code,Fira Code Fallback;font-style:normal}.fira_code_47f5870b-module__YFrZga__variable{--font-fira-code:"Fira Code","Fira Code Fallback"}
