.app{min-height:100vh;overflow-x:hidden}.navbar{z-index:1000;-webkit-backdrop-filter:blur(12px);background:#0f172ad9;border-bottom:1px solid #ffffff14;padding:0 2rem;position:fixed;top:0;left:0;right:0}.navbar-container{justify-content:space-between;align-items:center;max-width:1200px;height:70px;margin:0 auto;display:flex}.logo{color:#fff;letter-spacing:1px;align-items:center;gap:.25rem;font-size:1.5rem;font-weight:700;text-decoration:none;display:flex}.logo-bracket{color:#818cf8;font-weight:400}.nav-links{align-items:center;gap:2rem;display:flex}.nav-link{color:#ffffffbf;padding:.5rem 0;font-size:1rem;font-weight:500;text-decoration:none;transition:color .3s;position:relative}.nav-link:after{content:"";background:#818cf8;border-radius:1px;width:0;height:2px;transition:width .3s;position:absolute;bottom:0;left:0}.nav-link:hover{color:#fff}.nav-link:hover:after{width:100%}.burger-menu{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:40px;height:40px;padding:0;display:none}.burger-line{transform-origin:50%;background:#fff;border-radius:2px;width:28px;height:3px;transition:all .3s;display:block}.burger-line.open:first-child{transform:translateY(9px)rotate(45deg)}.burger-line.open:nth-child(2){opacity:0;transform:scaleX(0)}.burger-line.open:nth-child(3){transform:translateY(-9px)rotate(-45deg)}.mobile-menu{-webkit-backdrop-filter:blur(12px);background:#0f172af2;border-top:1px solid #ffffff14;flex-direction:column;align-items:center;gap:.5rem;padding:1rem 0 1.5rem;display:flex;overflow:hidden}.mobile-nav-link{color:#ffffffd9;text-align:center;border-radius:8px;width:100%;padding:.75rem 1.5rem;font-size:1.1rem;font-weight:500;text-decoration:none;transition:all .3s}.mobile-nav-link:hover{color:#fff;background:#ffffff1a}.desktop{display:flex!important}.mobile{display:none!important}.hero{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex;position:relative}.hero-container{width:100%;max-width:1400px}.hero-content{color:#fff;align-items:center;gap:4rem;display:flex}.hero-photo{flex-shrink:0}.hero-photo img{object-fit:cover;border:5px solid #ffffff4d;border-radius:50%;width:250px;height:250px;box-shadow:0 20px 40px #0003}.hero-text h1{margin-bottom:.5rem;font-size:3rem;font-weight:700;line-height:1.2}.hero-text h2{opacity:.9;margin-bottom:1rem;font-size:1.5rem;font-weight:400}.hero-text .location{opacity:.8;margin-bottom:1.5rem;font-size:1.1rem}.hero-text .about-text{opacity:.9;max-width:600px;font-size:1.1rem;line-height:1.8}.language-switcher{align-items:center;gap:.5rem;margin-left:2rem;display:flex}.lang-btn{color:#ffffffd9;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff26;border-radius:8px;padding:.4rem .8rem;font-size:.85rem;font-weight:500;transition:all .3s}.lang-btn:hover{color:#fff;background:#fff3}.lang-btn.active{color:#fff;background:#818cf84d;border-color:#818cf880}.mobile-lang-switcher{justify-content:center;padding:1rem 0 .5rem;display:flex}.skills-section{width:100%}.skills-title{color:#fff;text-align:center;margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.skills-grid{flex-direction:column;gap:1.25rem;display:flex}.skill-category{-webkit-backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff1f;border-radius:12px;padding:1.25rem 1.5rem;transition:all .3s}.skill-category:hover{background:#ffffff1f;transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.skill-category h4{color:#ffffffb3;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem;font-size:1rem;font-weight:600}.skill-tags{flex-wrap:wrap;gap:.5rem;display:flex}.skill-tag{color:#fff;white-space:nowrap;background:linear-gradient(135deg,#6365f1b9,#8a5cf6ae);border:1px solid #6366f159;border-radius:20px;padding:.4rem .9rem;font-size:.85rem;font-weight:500;transition:all .3s;display:inline-block}.skill-tag:hover{background:linear-gradient(135deg,#6366f173,#8b5cf673);border-color:#6366f199;transform:translateY(-1px)}.scroll-indicator{justify-content:center;margin-top:3rem;display:flex}.scroll-arrow{color:#fff9;transition:color .3s}.scroll-arrow:hover{color:#fff}.hero-left{flex-direction:column;flex:1;align-items:flex-start;gap:2rem;display:flex}.hero-right{flex:1}.roadmap{background:var(--bg-secondary);padding:6rem 2rem}.roadmap-container{max-width:1200px;margin:0 auto}.section-title{text-align:center;color:var(--text-primary);margin-bottom:4rem;font-size:2.5rem;font-weight:700}.roadmap-timeline{padding:2rem 0;position:relative}.roadmap-timeline:before{content:"";background:linear-gradient(to bottom, var(--primary), var(--primary-light));border-radius:2px;width:4px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.roadmap-item{width:50%;margin-bottom:2rem;padding:1.5rem;position:relative}.roadmap-item.left{padding-right:3rem;left:0}.roadmap-item.right{padding-left:3rem;left:50%}.roadmap-item:before{content:"";background:var(--primary);width:20px;height:20px;box-shadow:var(--shadow);z-index:1;border:4px solid #fff;border-radius:50%;position:absolute;top:2rem}.roadmap-item.left:before{right:-10px}.roadmap-item.right:before{left:-10px}.roadmap-content{box-shadow:var(--shadow);background:#fff;border-radius:12px;padding:2rem;transition:transform .3s,box-shadow .3s}.roadmap-content:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.roadmap-content h3{color:var(--text-primary);margin-bottom:.5rem;font-size:1.5rem;font-weight:600}.roadmap-content h4{color:var(--primary);margin-bottom:.5rem;font-size:1.1rem}.roadmap-content .period{background:var(--bg-secondary);color:var(--text-secondary);border-radius:20px;margin-bottom:1rem;padding:.25rem .75rem;font-size:.9rem;display:inline-block}.roadmap-content .location{color:var(--text-secondary);margin-bottom:1rem;font-size:.95rem;display:block}.roadmap-content .description{margin:1.5rem 0;padding:0;list-style:none}.roadmap-content .description li{color:var(--text-secondary);padding:.5rem 0 .5rem 1.5rem;line-height:1.6;position:relative}.roadmap-content .description li:before{content:"▹";color:var(--primary);font-weight:700;position:absolute;left:0}.stack{flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;display:flex}.tech-tag{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:20px;padding:.4rem .8rem;font-size:.85rem;font-weight:500}.education-section{text-align:center;margin-top:4rem}.education-section h3{color:var(--text-primary);margin-bottom:2rem;font-size:1.8rem}.education-item{box-shadow:var(--shadow);background:#fff;border-radius:12px;max-width:600px;margin:0 auto;padding:2rem}.education-item h4{color:var(--text-primary);margin-bottom:.5rem;font-size:1.3rem}.education-item p{color:var(--text-secondary);margin-bottom:.5rem}.languages-section{text-align:center;margin-top:4rem}.languages-section h3{color:var(--text-primary);margin-bottom:2rem;font-size:1.8rem}.languages-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;max-width:900px;margin:0 auto;display:grid}.language-item{box-shadow:var(--shadow);background:#fff;border-radius:12px;align-items:center;gap:1rem;padding:1.25rem 1.5rem;transition:transform .3s,box-shadow .3s;display:flex}.language-item:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.language-flag{font-size:2rem;line-height:1}.language-info{flex-direction:column;align-items:flex-start;gap:.2rem;display:flex}.language-name{color:var(--text-primary);font-size:1.05rem;font-weight:600}.language-level{color:var(--text-secondary);font-size:.9rem}.contact{background:#fff;padding:6rem 2rem}.contact-container{max-width:1200px;margin:0 auto}.contact-content{grid-template-columns:1fr;gap:2rem;max-width:600px;margin-top:3rem;margin-left:auto;margin-right:auto;display:grid}.cv-download h3{color:var(--text-primary);margin-bottom:1.5rem;font-size:1.5rem}.cv-files{flex-direction:column;gap:1rem;display:flex}.download-btn{background:var(--bg-secondary);color:var(--text-primary);text-align:center;border-radius:8px;padding:1rem 2rem;font-weight:500;transition:all .3s;display:inline-block}.download-btn:hover{background:var(--primary);color:#fff;box-shadow:var(--shadow);transform:translateY(-2px)}.download-btn.primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.download-btn.primary:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.contact-info{flex-flow:wrap;justify-content:center;gap:1.5rem;display:flex}.contact-item{background:var(--bg-secondary);border-radius:12px;align-items:center;gap:1rem;padding:1.5rem;transition:all .3s;display:flex}.contact-item:hover{box-shadow:var(--shadow-lg);background:#fff;transform:translate(5px)}.contact-item .icon{font-size:2rem}.contact-item .label{color:var(--text-secondary);margin-bottom:.25rem;font-size:.9rem;display:block}.contact-item .value{color:var(--text-primary);font-size:1.1rem;font-weight:500;display:block}.footer{background:var(--text-primary);color:#fff;text-align:center;padding:2rem}@media (width<=768px){.desktop{display:none!important}.mobile{display:flex!important}.hero-content{text-align:center;flex-direction:column;gap:2rem}.hero-container{margin-top:50px}.hero-text h1{font-size:2rem}.hero-text h2{font-size:1.2rem}.hero-photo img{width:200px;height:200px}.language-switcher{flex-wrap:wrap;justify-content:center;margin-top:.5rem;margin-left:0}.nav-links.desktop{flex-wrap:wrap}.roadmap-timeline:before{left:30px}.roadmap-item{width:100%;padding-left:5rem!important;padding-right:1rem!important;left:0!important}.roadmap-item:before{left:20px!important;right:auto!important}.contact-content{grid-template-columns:1fr;gap:2rem}.section-title{font-size:2rem}.languages-grid{grid-template-columns:1fr;gap:1rem}.language-item{padding:1rem 1.25rem}}*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#2563eb;--primary-light:#3b82f6;--text-primary:#1f2937;--text-secondary:#6b7280;--bg-primary:#fff;--bg-secondary:#f9fafb;--border:#e5e7eb;--shadow:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d}html{scroll-behavior:smooth}body{color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}#root{min-height:100vh}a{color:var(--primary);text-decoration:none;transition:color .2s}a:hover{color:var(--primary-light)}button{cursor:pointer;border:none;outline:none;font-family:inherit}button:hover{transform:translateY(-1px)}button:active{transform:translateY(0)}
