@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600;700&family=Fira+Code:wght@400;500&family=Inter:wght@400;500;600&family=Montserrat:wght@300&display=swap";*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#1e1e1e;--bg-secondary:#252526;--bg-tertiary:#2d2d30;--accent-blue:#569cd6;--accent-green:#4ec9b0;--accent-yellow:#dcdcaa;--accent-orange:#ce9178;--accent-purple:#c586c0;--text-primary:#d4d4d4;--text-muted:#6a9955}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:Inter,sans-serif}.topbar{background-color:var(--bg-secondary);border-bottom:1px solid var(--bg-tertiary);justify-content:space-between;align-items:center;padding:1rem 4rem;display:flex;position:relative}.logo{white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:1.2rem;position:absolute;left:50%;transform:translate(-50%)}.bracket{color:var(--accent-blue)}.name{color:#de1d60}.navBar{gap:2rem;display:flex}.navBar a{color:var(--text-primary);font-family:Montserrat,sans-serif;font-size:1rem;font-weight:300;text-decoration:none;transition:color .2s}.navBar a:hover{color:var(--accent-blue)}.socials{align-items:center;gap:1.2rem;font-size:1.4rem;display:flex}.socials a{color:var(--text-primary);transition:color .2s}.socials a:hover{color:var(--accent-blue)}.langToggle{cursor:pointer;background:0 0;border:none;align-items:center;padding:0;font-size:1.3rem;line-height:1;transition:transform .2s;display:flex}.langToggle:hover{transform:scale(1.2)}.hamburger{color:var(--text-primary);cursor:pointer;z-index:10;background:0 0;border:none;padding:.2rem;display:none}.mobileMenu{display:none}@media (width<=1024px){.logo{font-size:.95rem}.topbar{padding:1rem 2rem}.navBar,.socials{display:none}.hamburger{justify-content:center;align-items:center;display:flex}.mobileMenu{background-color:var(--bg-secondary);border-bottom:1px solid var(--bg-tertiary);flex-direction:column;gap:1.2rem;padding:1.5rem 2rem;animation:.2s slideDown;display:flex}.mobileMenu a{color:var(--text-primary);border-bottom:1px solid var(--bg-tertiary);padding-bottom:1rem;font-family:Montserrat,sans-serif;font-size:1.1rem;font-weight:300;text-decoration:none;transition:color .2s}.mobileMenu a:last-of-type{border-bottom:none}.mobileMenu a:hover{color:var(--accent-blue)}.mobileSocials{align-items:center;gap:1.2rem;padding-top:.5rem;font-size:1.4rem;display:flex}.mobileSocials a{color:var(--text-primary);border-bottom:none;padding-bottom:0}.mobileSocials a:hover{color:var(--accent-blue)}.mobileSocials .langToggle{border-bottom:none;padding-bottom:0;font-size:1.4rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}}@media (width<=768px){.logo{white-space:nowrap;font-size:.9rem}}.home{align-items:center;gap:10rem;max-width:1200px;margin:0 auto;padding:10rem 2rem;display:flex}.homeTextIntro,.homeImg{flex:1}h1{font-size:3rem}@media (width<=768px){.home{flex-direction:column;gap:1rem;padding:3rem 1rem 1rem}.h1{font-size:1rem}}.terminal{background:#1e1e1e;border:1px solid #333;border-radius:10px;max-width:600px;margin:2rem auto;font-family:JetBrains Mono,Fira Code,Courier New,monospace;overflow:hidden}.terminal-bar{background:#2d2d30;border-bottom:1px solid #333;align-items:center;gap:8px;padding:10px 16px;display:flex}.terminal-bar .dot{border-radius:50%;width:12px;height:12px}.terminal-bar .dot.red{background:#ff5f57}.terminal-bar .dot.yellow{background:#febc2e}.terminal-bar .dot.green{background:#28c840}.terminal-title{color:#888;margin:0 auto;font-size:12px}.terminal-body{min-height:160px;padding:1.5rem 2rem}.terminal .line{color:#d4d4d4;opacity:0;min-height:1.4em;margin-bottom:.6rem;font-size:15px;transition:opacity .25s}.terminal .line.visible{opacity:1}.terminal .prompt{color:#569cd6}.terminal .value-name{color:#4ec9b0}.terminal .value-role{color:#dcdcaa}.terminal .value-stack{color:#ce9178}.terminal .value-status{color:#c586c0}.terminal .bar-fill{color:#4ec9b0}.terminal .cursor{vertical-align:middle;background:#d4d4d4;width:9px;height:15px;animation:1s step-end infinite cursor-blink;display:inline-block}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}@media (width<=768px){.terminal{max-width:100%;margin:1rem}.terminal-body{padding:1rem 1.2rem}.terminal .line{font-size:13px}}.about{align-items:center;min-height:100vh;padding:4rem 2rem;display:flex}.aboutDisplay{flex-direction:row;align-items:center;gap:4rem;width:100%;max-width:1200px;margin:0 auto;display:flex}.aboutImg{flex-shrink:0}.aboutImg img{object-fit:cover;border:4px solid var(--accent-purple);border-radius:50%;width:450px;height:450px}.titles{color:var(--accent-green);margin-bottom:1.5rem;font-family:JetBrains Mono,monospace;font-size:1.6rem}.aboutDisplay p{color:var(--text-primary);max-width:620px;font-family:Inter,sans-serif;font-size:1rem;line-height:2.5rem}.aboutText{flex-direction:column;flex:1;gap:1rem;display:flex}.btn{border:1px solid var(--accent-blue);color:var(--accent-blue);border-radius:4px;align-self:flex-start;margin-top:1.5rem;padding:.7rem 1.8rem;font-family:JetBrains Mono,monospace;font-size:.9rem;text-decoration:none;transition:background .2s,color .2s;display:inline-block}.btn:hover{background:var(--accent-blue);color:#1e1e1e}@media (width<=768px){.about{padding:2rem 1.2rem}.aboutDisplay{text-align:center;flex-direction:column;gap:2rem}.aboutImg{order:0}.aboutImg img{width:180px;height:180px}.titles{font-size:1.2rem}.aboutDisplay p{font-size:.95rem}}.contact{flex-direction:column;gap:3.5rem;max-width:900px;margin:0 auto;padding:4rem 2rem 6rem;display:flex}.contactHeader{border-bottom:1px solid var(--bg-tertiary);flex-direction:column;gap:.8rem;padding-bottom:2.5rem;display:flex}.contactPre{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.85rem}.contactPre .prompt{color:var(--accent-blue);margin-right:.3rem}.contactTitle{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:2.8rem;font-weight:700;line-height:1.1}.contactTitle span{color:var(--accent-purple)}.contactSub{color:var(--text-muted);max-width:560px;font-family:Inter,sans-serif;font-size:1rem;line-height:1.7}.contactGrid{grid-template-columns:1fr 1fr;align-items:flex-start;gap:4rem;display:grid}.contactInfoTitle{color:var(--accent-green);margin-bottom:1rem;font-family:JetBrains Mono,monospace;font-size:1rem}.contactInfoText{color:var(--text-primary);margin-bottom:2rem;font-family:Inter,sans-serif;font-size:.9rem;line-height:1.8}.contactLinks{flex-direction:column;gap:1.2rem;display:flex}.contactLinkItem{align-items:flex-start;gap:1rem;display:flex}.contactLinkIcon{color:var(--accent-blue);flex-shrink:0;margin-top:2px}.contactLinkLabel{color:var(--text-muted);margin-bottom:.15rem;font-family:JetBrains Mono,monospace;font-size:.75rem}.contactLinkValue{color:var(--text-primary);font-family:Inter,sans-serif;font-size:.88rem;text-decoration:none;transition:color .2s}a.contactLinkValue:hover{color:var(--accent-blue)}.contactLinkValue.plain{color:var(--text-primary)}.contactFormWrap{flex-direction:column;display:flex}.contactForm{flex-direction:column;gap:1.2rem;margin-top:1rem;display:flex}.formGroup{flex-direction:column;gap:.4rem;display:flex}.formGroup label{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.78rem}.formGroup input,.formGroup textarea{background:var(--bg-secondary);border:1px solid var(--bg-tertiary);color:var(--text-primary);resize:vertical;border-radius:4px;outline:none;padding:.7rem 1rem;font-family:Inter,sans-serif;font-size:.9rem;transition:border-color .2s}.formGroup input::placeholder,.formGroup textarea::placeholder{color:#555}.formGroup input:focus,.formGroup textarea:focus{border-color:var(--accent-blue)}.submitBtn{border:1px solid var(--accent-purple);color:var(--accent-purple);cursor:pointer;background:0 0;border-radius:4px;align-self:flex-start;align-items:center;gap:.5rem;padding:.75rem 1.8rem;font-family:JetBrains Mono,monospace;font-size:.875rem;transition:background .2s,color .2s;display:inline-flex}.submitBtn:hover{background:var(--accent-purple);color:#1e1e1e}@media (width<=768px){.contact{padding:2rem 1.2rem 4rem}.contactTitle{font-size:2rem}.contactGrid{grid-template-columns:1fr;gap:2.5rem}.submitBtn{justify-content:center;width:100%}}.resume{flex-direction:column;gap:4rem;max-width:1200px;margin:0 auto;padding:5rem 6rem 6rem;display:flex}.resumeHeader{border-bottom:1px solid var(--bg-tertiary);justify-content:space-between;align-items:center;gap:2rem;padding:3rem 5rem 2.5rem;display:flex}.resumeName{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:2.8rem;font-weight:700;line-height:1.1}.resumeName span{color:var(--accent-purple)}.resumeSub{color:var(--text-muted);margin-top:.6rem;font-family:Inter,sans-serif;font-size:.95rem}.downloadBtn{border:1px solid var(--accent-blue);color:var(--accent-blue);white-space:nowrap;border-radius:4px;flex-shrink:0;align-items:center;gap:.5rem;padding:.7rem 1.5rem;font-family:JetBrains Mono,monospace;font-size:.875rem;text-decoration:none;transition:background .2s,color .2s;display:flex}.downloadBtn:hover{background:var(--accent-blue);color:#1e1e1e}.resumeSection{flex-direction:column;gap:1.5rem;padding:1rem 5rem;display:flex}.sectionTitle{color:var(--accent-green);letter-spacing:.04em;font-family:JetBrains Mono,monospace;font-size:1.1rem;font-weight:600}.sectionTitle .prompt{color:var(--accent-blue);margin-right:.4rem}.skillsGrid{flex-wrap:wrap;gap:.75rem;display:flex}.skillTag{border:1px solid var(--bg-tertiary);color:var(--accent-orange);background:var(--bg-secondary);border-radius:4px;padding:.4rem 1rem;font-family:JetBrains Mono,monospace;font-size:.85rem;transition:border-color .2s}.skillTag:hover{border-color:var(--accent-orange)}.expCard{background:var(--bg-secondary);border:1px solid var(--bg-tertiary);border-radius:8px;flex-direction:column;gap:1rem;padding:1.5rem 2rem;display:flex}.expHeader{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.expRole{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:1rem;font-weight:600}.expCompany{color:var(--accent-purple);align-items:center;gap:.3rem;margin-top:.3rem;font-family:Inter,sans-serif;font-size:.875rem;text-decoration:none;display:inline-flex}.expCompany:hover{text-decoration:underline}.expPeriod{color:var(--text-muted);white-space:nowrap;font-family:Inter,sans-serif;font-size:.8rem}.expList{flex-direction:column;gap:.5rem;padding-left:1.2rem;display:flex}.expList li{color:var(--text-primary);font-family:Inter,sans-serif;font-size:.9rem;line-height:1.6}.projectsGrid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.projectCard{background:var(--bg-secondary);border:1px solid var(--bg-tertiary);border-radius:8px;flex-direction:column;gap:.75rem;padding:1.5rem;transition:border-color .2s,transform .2s;display:flex}.projectCard:hover{border-color:var(--accent-purple);transform:translateY(-3px)}.projectInfo{flex-direction:column;flex:1;gap:.5rem;padding:1.2rem;display:flex}.projectName{color:var(--accent-yellow);font-family:JetBrains Mono,monospace;font-size:.95rem;font-weight:600}.projectDesc{color:var(--text-primary);flex:1;font-family:Inter,sans-serif;font-size:.85rem;line-height:1.6}.projectLink{color:var(--accent-blue);align-items:center;gap:.3rem;margin-top:.5rem;font-family:JetBrains Mono,monospace;font-size:.8rem;text-decoration:none;display:inline-flex}.projectLink:hover{text-decoration:underline}.eduList{flex-direction:column;gap:1rem;display:flex}.eduItem{background:var(--bg-secondary);border:1px solid var(--bg-tertiary);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem 1.5rem;display:flex}.eduDegree{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:.9rem;font-weight:600}.eduInstitution{color:var(--accent-green);margin-top:.3rem;font-family:Inter,sans-serif;font-size:.85rem}.eduPeriod{color:var(--text-muted);white-space:nowrap;font-family:Inter,sans-serif;font-size:.8rem}@media (width<=768px){.resume{gap:3rem;padding:2rem 1.2rem 4rem}.resumeHeader{flex-direction:column;align-items:flex-start}.resumeName{font-size:2rem}.resumeHeader{padding:2rem 1.2rem}.resumeSection{padding:1rem 1.2rem}.downloadBtn{justify-content:center;width:100%}.projectsGrid{grid-template-columns:1fr}.eduItem{flex-direction:column;gap:.5rem}.skillsGrid{grid-template-columns:repeat(2,1fr);display:grid}.expCard{padding:1.2rem}.expHeader{flex-direction:column;gap:.3rem}.expRole{font-size:.9rem}.expList li{font-size:.85rem;line-height:1.5}.expPeriod{order:3}}.projects{flex-direction:column;gap:3rem;max-width:900px;margin:0 auto;padding:4rem 2rem 6rem;display:flex}.projectsHeader{border-bottom:1px solid var(--bg-tertiary);padding-bottom:2rem}.projectsTitle{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:2rem;font-weight:700}.projectsTitle .prompt{color:var(--accent-blue);margin-right:.4rem}.projectsSub{color:var(--text-muted);margin-top:.6rem;font-family:Inter,sans-serif;font-size:.95rem}.projectsList{flex-direction:column;gap:0;display:flex}.projectItem{border-bottom:1px solid var(--bg-tertiary)}.projectItem:first-child{border-top:1px solid var(--bg-tertiary)}.projectToggle{cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1.4rem 0;transition:background .15s;display:flex}.projectToggle:hover .projectToggleName{color:var(--accent-purple)}.projectToggleLeft{flex-wrap:wrap;align-items:center;gap:1.2rem;display:flex}.projectIndex{color:var(--text-muted);min-width:24px;font-family:JetBrains Mono,monospace;font-size:.75rem}.projectToggleName{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:1.05rem;font-weight:600;transition:color .2s}.projectStack{flex-wrap:wrap;gap:.5rem;display:flex}.stackTag{border:1px solid var(--bg-tertiary);color:var(--accent-orange);background:var(--bg-secondary);border-radius:3px;padding:.2rem .6rem;font-family:JetBrains Mono,monospace;font-size:.72rem}.projectToggleIcon{color:var(--accent-blue);flex-shrink:0}.projectDetails{flex-direction:column;gap:1.5rem;padding:0 0 2rem;animation:.2s fadeDown;display:flex}@keyframes fadeDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.projectContent{flex-direction:column;gap:1rem;display:flex}.projectDescription{color:var(--text-primary);max-width:680px;font-family:Inter,sans-serif;font-size:.92rem;line-height:1.8}.featureList{flex-direction:column;gap:.4rem;padding:0;list-style:none;display:flex}.featureList li{color:var(--text-primary);align-items:center;gap:.5rem;font-family:JetBrains Mono,monospace;font-size:.82rem;display:flex}.featureDot{color:var(--accent-blue)}.projectLink{border:1px solid var(--accent-blue);color:var(--accent-blue);border-radius:4px;align-self:flex-start;align-items:center;gap:.4rem;margin-top:.5rem;padding:.6rem 1.4rem;font-family:JetBrains Mono,monospace;font-size:.85rem;text-decoration:none;transition:background .2s,color .2s;display:inline-flex}.projectLink:hover{background:var(--accent-blue);color:#1e1e1e}.carousel{background:var(--bg-secondary);border:1px solid var(--bg-tertiary);border-radius:8px;width:100%;position:relative;overflow:hidden}.carouselTrack{justify-content:center;align-items:center;width:100%;height:340px;display:flex}.carouselTrack img{object-fit:cover;width:100%;height:100%;display:block}.carouselPlaceholder{width:100%;height:100%;color:var(--text-muted);background:var(--bg-secondary);justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:.85rem;display:flex}.carouselBtn{border:1px solid var(--bg-tertiary);color:var(--text-primary);cursor:pointer;z-index:2;background:#1e1e1ecc;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:background .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carouselBtn:hover{background:var(--accent-blue);color:#1e1e1e;border-color:var(--accent-blue)}.carouselBtn.left{left:12px}.carouselBtn.right{right:12px}.carouselDots{gap:6px;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.carouselDots .dot{background:var(--bg-tertiary);cursor:pointer;border:none;border-radius:50%;width:7px;height:7px;padding:0;transition:background .2s}.carouselDots .dot.active{background:var(--accent-blue)}@media (width<=768px){.projects{padding:2rem 1.2rem 4rem}.projectsTitle{font-size:1.5rem}.projectToggleLeft{gap:.8rem}.projectToggleName{font-size:.95rem}.carouselTrack{height:200px}.projectStack{display:none}}
