@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&family=Fira+Code:wght@300;400&display=swap";.nav{display:flex;justify-content:space-between;align-items:center;position:fixed;top:0;left:0;width:100%;height:var(--nav-height);padding:0 50px;background-color:#0a192fd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:11;transition:var(--transition);box-shadow:0 10px 30px -10px #020c1bb3}.nav-logo a{color:var(--accent-primary);font-family:var(--font-mono);font-size:2rem;font-weight:600}.nav-links ul{display:flex;justify-content:space-between;align-items:center;list-style:none;margin:0;padding:0}.nav-links li{margin:0 5px}.nav-links button{color:var(--text-primary);padding:10px;font-family:var(--font-mono);font-size:var(--fz-xs);background:transparent;transition:var(--transition)}.nav-links button:hover,.nav-links button.active{color:var(--accent-primary)}.nav-number{color:var(--accent-primary);margin-right:5px}.nav-lang-btn{color:var(--accent-primary);border:1px solid var(--accent-primary);border-radius:var(--border-radius);padding:5px 10px!important;margin-left:10px}.nav-lang-btn:hover{background-color:var(--accent-tint)}.mobile-menu-toggle{display:none;cursor:pointer;z-index:12}.hamburger{width:30px;height:20px;position:relative;display:flex;flex-direction:column;justify-content:space-between}.hamburger span{display:block;height:2px;width:100%;background-color:var(--accent-primary);transition:all .3s ease-in-out}.hamburger.open span:nth-child(1){transform:translateY(9px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}@media (max-width: 768px){.nav{padding:0 25px;height:var(--nav-scroll-height)}.mobile-menu-toggle{display:block}.nav-links{position:fixed;top:0;right:0;width:75vw;height:100vh;background-color:var(--bg-secondary);display:flex;justify-content:center;align-items:center;transform:translate(100%);transition:transform .3s ease-in-out;box-shadow:-10px 0 30px -15px #020c1bb3}.nav-links.open{transform:translate(0)}.nav-links ul{flex-direction:column;width:100%}.nav-links li{margin:20px 0}.nav-links button{font-size:var(--fz-lg)}}.content{display:flex;flex-direction:column;min-height:100vh;width:100%;max-width:1600px;margin:0 auto;padding:0 150px}@media (max-width: 1080px){.content{padding:0 100px}}@media (max-width: 768px){.content{padding:0 25px}}.about-section{min-height:100vh;display:flex;flex-direction:column;padding-top:calc(var(--nav-height) + 50px)}.hero-content{max-width:1000px;margin:auto;width:100%}.hero-greeting{color:var(--accent-primary);font-family:var(--font-mono);font-size:var(--fz-md);margin-bottom:20px}.hero-name{color:var(--text-primary);font-size:clamp(40px,8vw,80px);font-weight:600;margin:0}.hero-title{color:var(--text-secondary);font-size:clamp(40px,8vw,80px);font-weight:600;margin-top:10px;margin-bottom:20px}.hero-description{color:var(--text-secondary);font-size:var(--fz-lg);max-width:540px;margin-bottom:20px}.hero-cta{margin-top:50px}.cta-button{color:var(--accent-primary);background-color:transparent;border:1px solid var(--accent-primary);border-radius:var(--border-radius);padding:1.25rem 1.75rem;font-family:var(--font-mono);font-size:var(--fz-sm);line-height:1;text-decoration:none;cursor:pointer;transition:var(--transition)}.cta-button:hover{background-color:var(--accent-tint);outline:none}@media (max-width: 768px){.about-section{padding-top:calc(var(--nav-scroll-height) + 40px)}}@media (max-width: 480px){.about-section{padding-bottom:40px}.hero-name{font-size:40px}.hero-title{font-size:30px}}.projects{padding:30px 0}.projects h1{font-size:clamp(26px,5vw,32px);margin-bottom:40px;display:flex;align-items:center}.projects h1:after{content:"";display:block;width:300px;height:1px;background-color:var(--bg-tertiary);margin-left:20px}.projects{display:flex;flex-direction:column;gap:50px}.project-card{display:grid;grid-template-columns:repeat(12,1fr);align-items:center;gap:10px}.project-image{grid-column:1 / 8;grid-row:1 / -1;position:relative;z-index:1;border-radius:var(--border-radius);overflow:hidden;box-shadow:0 10px 30px -15px #020c1bb3}.project-image img{width:100%;height:auto;filter:grayscale(100%) contrast(1) brightness(90%);transition:var(--transition);display:block}.project-card:hover .project-image img{filter:none}.project-content{grid-column:7 / -1;grid-row:1 / -1;text-align:right;z-index:2}.project-title{color:var(--text-primary);font-size:var(--fz-xxl);margin:0 0 20px}.project-title a{color:var(--text-primary)}.project-title a:hover{color:var(--accent-primary)}.project-description{background-color:var(--bg-secondary);color:var(--text-secondary);padding:25px;border-radius:var(--border-radius);box-shadow:0 10px 30px -15px #020c1bb3;margin-bottom:20px}.project-tech-list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-bottom:20px}.project-links{display:flex;justify-content:flex-end;align-items:center;gap:20px}.project-icon{width:20px;height:20px;filter:brightness(0) invert(1)}.external-link-icon{font-size:20px;color:var(--text-primary)}@media (max-width: 768px){.project-card{display:flex;flex-direction:column;background-color:var(--bg-secondary);padding:25px;border-radius:var(--border-radius)}.project-image{display:none}.project-content{text-align:left}.project-tech-list,.project-links{justify-content:flex-start}}.pill{display:inline-block;color:var(--accent-primary);background-color:var(--accent-tint);font-family:var(--font-mono);font-size:var(--fz-xs);padding:5px 10px;border-radius:50px;margin-right:5px;margin-bottom:5px;transition:var(--transition)}.pill:hover{background-color:#64ffda33}.experience{padding:30px 0}.experience h1{font-size:clamp(26px,5vw,32px);margin-bottom:40px;display:flex;align-items:center}.experience h1:after{content:"";display:block;width:300px;height:1px;background-color:var(--bg-tertiary);margin-left:20px}.experience-card{margin-bottom:30px;padding:25px;background-color:var(--bg-secondary);border-radius:var(--border-radius);transition:var(--transition)}.experience-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px -15px #020c1bb3}.experience-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px}.experience-title{color:var(--text-primary);font-size:var(--fz-xl);font-weight:600}.experience-period{color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--fz-xs)}.experience-place{color:var(--accent-primary);font-family:var(--font-mono);font-size:var(--fz-sm);margin-bottom:20px}.experience-skills{display:flex;flex-wrap:wrap;gap:10px}.footer{padding:100px 20px 50px;text-align:center;max-width:600px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.footer-title{color:var(--accent-primary);font-family:var(--font-mono);font-size:var(--fz-md);font-weight:400;margin-bottom:20px}.footer-heading{color:var(--text-primary);font-size:clamp(40px,5vw,60px);font-weight:600;margin-bottom:20px}.footer-text{color:var(--text-secondary);font-size:var(--fz-lg);margin-bottom:50px}.footer-cta{color:var(--accent-primary);background-color:transparent;border:1px solid var(--accent-primary);border-radius:var(--border-radius);padding:1.25rem 1.75rem;font-family:var(--font-mono);font-size:var(--fz-sm);line-height:1;text-decoration:none;cursor:pointer;transition:var(--transition);margin-bottom:80px}.footer-cta:hover{background-color:var(--accent-tint)}.footer-socials{display:flex;gap:30px;margin-bottom:30px}.footer-socials img{width:24px;height:24px;transition:var(--transition)}.footer-socials a:hover img{transform:translateY(-3px);filter:drop-shadow(0 0 5px var(--accent-primary))}.footer-credit{font-family:var(--font-mono);font-size:var(--fz-xxs);color:var(--text-secondary)}.App{min-height:100vh;display:flex;flex-direction:column}.language-switch{position:fixed;top:20px;right:40px;z-index:20}#language-switch-button{background:transparent;border:1px solid var(--accent-primary);color:var(--accent-primary);border-radius:var(--border-radius);padding:.5rem 1rem;font-family:var(--font-mono);font-size:13px;line-height:1;text-decoration:none;cursor:pointer;transition:var(--transition)}#language-switch-button:hover{background-color:var(--accent-tint);outline:none}@media (max-width: 768px){.App{padding:0 25px}.language-switch{top:15px;right:20px}}.cursor-spotlight{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:3;transition:background .15s ease}body{position:relative}@media (max-width: 768px){.cursor-spotlight{display:none}}:root{--bg-primary: #0a192f;--bg-secondary: #112240;--bg-tertiary: #233554;--text-primary: #ccd6f6;--text-secondary: #8892b0;--text-accent: #64ffda;--accent-primary: #64ffda;--accent-tint: rgba(100, 255, 218, .1);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-mono: "Fira Code", "Fira Mono", monospace;--max-width: 1000px;--nav-height: 100px;--nav-scroll-height: 70px;--border-radius: 4px;--transition: all .25s cubic-bezier(.645, .045, .355, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;width:100%;min-height:100vh;overflow-x:hidden;background-color:var(--bg-primary);color:var(--text-secondary);font-family:var(--font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin:0 0 10px;font-weight:600;color:var(--text-primary);line-height:1.1}p{margin:0 0 15px}a{display:inline-block;text-decoration:none;text-decoration-skip-ink:auto;color:var(--accent-primary);position:relative;transition:var(--transition)}a:hover,a:focus{color:var(--accent-primary)}button{cursor:pointer;border:0;border-radius:0}section{margin:0 auto;padding:100px 0;max-width:var(--max-width)}::selection{background-color:var(--bg-tertiary);color:var(--text-accent)}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background-color:var(--bg-tertiary);border:3px solid var(--bg-primary);border-radius:10px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in-section{opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out;will-change:opacity,transform}.fade-in-section.is-visible{opacity:1;transform:none}.delay-100{transition-delay:.1s}.delay-200{transition-delay:.2s}.delay-300{transition-delay:.3s}.delay-400{transition-delay:.4s}.delay-500{transition-delay:.5s}
