@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #6366f1;--primary-dark: #4f46e5;--primary-light: #818cf8;--secondary: #8b5cf6;--accent: #06b6d4;--text-light: #f8fafc;--text-gray: #94a3b8;--text-dark: #1e293b;--bg-dark: #0f172a;--bg-darker: #020617;--bg-light: #f8fafc;--bg-card: rgba(15, 23, 42, .8);--border-color: rgba(99, 102, 241, .1);--gradient-1: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #06b6d4 100%);--gradient-2: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);--gradient-hero: linear-gradient(135deg, #020617 0%, #0f172a 50%, #1e293b 100%);--shadow: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-colored: 0 25px 50px -12px rgba(99, 102, 241, .25);--glass-bg: rgba(15, 23, 42, .1);--glass-border: rgba(255, 255, 255, .1)}[data-theme=light]{--primary: #6366f1;--primary-dark: #4f46e5;--primary-light: #818cf8;--secondary: #8b5cf6;--accent: #06b6d4;--text-light: #1e293b;--text-gray: #64748b;--text-dark: #f8fafc;--bg-dark: #ffffff;--bg-darker: #f8fafc;--bg-light: #1e293b;--bg-card: rgba(255, 255, 255, .8);--border-color: rgba(99, 102, 241, .2);--gradient-1: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #06b6d4 100%);--gradient-2: linear-gradient(135deg, #f8fafc 0%, #ffffff 100%);--gradient-hero: linear-gradient(135deg, #f8fafc 0%, #ffffff 50%, #e2e8f0 100%);--shadow: 0 25px 50px -12px rgba(0, 0, 0, .1);--shadow-colored: 0 25px 50px -12px rgba(99, 102, 241, .15);--glass-bg: rgba(255, 255, 255, .1);--glass-border: rgba(0, 0, 0, .1)}html{scroll-behavior:smooth}body{font-family:Inter,sans-serif;line-height:1.6;color:var(--text-light);background:var(--bg-darker);overflow-x:hidden;transition:all .3s ease}.container{max-width:1200px;margin:0 auto;padding:0 2rem}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-dark)}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}.cursor{position:fixed;width:20px;height:20px;background:var(--primary);border-radius:50%;pointer-events:none;z-index:9999;mix-blend-mode:difference;transition:transform .3s ease}.cursor.hover{transform:scale(1.5)}.glass{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@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 scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.fade-in{opacity:0;transform:translateY(30px)}.slide-in-left{opacity:0;transform:translate(-50px)}.slide-in-right{opacity:0;transform:translate(50px)}.scale-in{opacity:0;transform:scale(.8)}.gradient-bg{background:var(--gradient-hero);background-size:400% 400%;animation:gradient 15s ease infinite}.text-gradient{background:var(--gradient-1);background-size:400% 400%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient 3s ease infinite}@media (max-width: 768px){.container{padding:0 1rem}html{font-size:14px}}@media (max-width: 480px){.container{padding:0 .5rem}html{font-size:12px}}*{transition:background-color .3s ease,color .3s ease,border-color .3s ease}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.bg-element{position:fixed;border-radius:50%;opacity:.03;pointer-events:none;z-index:-1}.bg-element-1{top:10%;right:10%;width:400px;height:400px;background:var(--gradient-1);filter:blur(100px)}.bg-element-2{top:60%;left:5%;width:300px;height:300px;background:var(--secondary);filter:blur(80px)}.bg-element-3{bottom:20%;right:20%;width:200px;height:200px;background:var(--accent);filter:blur(60px)}.nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1rem 0;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-color);transition:all .3s ease}.nav.scrolled{padding:.5rem 0;background:var(--bg-card)}.nav-content{display:flex;justify-content:space-between;align-items:center;gap:2rem}.logo{position:relative}.logo-text{font-size:1.8rem;font-weight:900;letter-spacing:-.5px}.nav-center{flex:1;display:flex;justify-content:center}.nav-links{display:flex;gap:2.5rem}.nav-links a{color:var(--text-gray);text-decoration:none;font-weight:500;font-size:.95rem;transition:all .3s ease;position:relative;padding:.5rem 0}.nav-links a:after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--primary);transition:all .3s ease;transform:translate(-50%)}.nav-links a:hover{color:var(--text-light)}.nav-links a:hover:after{width:100%}.nav-actions{display:flex;align-items:center;gap:1rem}.btn-cv{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;background:var(--primary);color:#fff;border:none;border-radius:25px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease}.btn-cv:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-colored)}.theme-toggle{width:45px;height:45px;border-radius:50%;background:var(--glass-bg);border:1px solid var(--border-color);color:var(--text-light);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.theme-toggle:hover{background:var(--primary);border-color:var(--primary);color:#fff;transform:scale(1.05)}.hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;background:var(--gradient-hero);background-size:400% 400%}.hero-bg-element{position:absolute;top:15%;right:15%;width:350px;height:350px;background:var(--gradient-1);border-radius:50%;opacity:.15;filter:blur(120px)}.hero-content{max-width:900px;z-index:2}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-color);padding:.5rem 1rem;border-radius:25px;font-size:.9rem;color:var(--text-gray);margin-bottom:2rem}.hero-title{font-size:clamp(3.5rem,10vw,7rem);font-weight:900;line-height:.95;margin-bottom:1.5rem;color:var(--text-light);letter-spacing:-2px}.hero-subtitle{font-size:clamp(1.8rem,5vw,3rem);font-weight:600;color:var(--text-gray);margin-bottom:2rem;letter-spacing:-1px}.hero-description{font-size:1.3rem;color:var(--text-gray);margin-bottom:3.5rem;max-width:650px;line-height:1.7}.hero-cta{display:flex;gap:1.5rem;margin-bottom:4rem;flex-wrap:wrap}.btn-primary,.btn-secondary,.btn-outline{padding:1.2rem 2.5rem;border:none;border-radius:50px;font-weight:600;font-size:1.1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.6rem;text-decoration:none;position:relative;overflow:hidden}.btn-primary{background:var(--gradient-1);color:#fff;box-shadow:var(--shadow-colored)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 40px 70px -12px #6366f180}.btn-secondary{background:var(--glass-bg);color:var(--text-light);border:2px solid var(--primary);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.btn-secondary:hover{background:var(--primary);transform:translateY(-3px);box-shadow:var(--shadow-colored)}.btn-outline{background:transparent;color:var(--text-light);border:2px solid var(--border-color)}.btn-outline:hover{background:var(--glass-bg);border-color:var(--primary);transform:translateY(-3px);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.hero-socials{display:flex;gap:1.2rem}.social-link{width:55px;height:55px;border-radius:50%;background:var(--glass-bg);display:flex;align-items:center;justify-content:center;color:var(--text-gray);transition:all .3s ease;text-decoration:none;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-color)}.social-link:hover{background:var(--primary);color:#fff;transform:translateY(-3px);box-shadow:var(--shadow-colored)}.hero-scroll{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);cursor:pointer}.scroll-indicator{color:var(--text-gray);animation:pulse 2s infinite;padding:1rem;border-radius:50%;background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-color);transition:all .3s ease}.scroll-indicator:hover{color:var(--primary);transform:scale(1.1)}.about{padding:10rem 0;background:var(--bg-dark);position:relative}.section-header{text-align:center;margin-bottom:5rem}.section-title{font-size:clamp(2.8rem,6vw,4rem);font-weight:900;color:var(--text-light);margin-bottom:1.5rem;letter-spacing:-1px}.section-subtitle{font-size:1.3rem;color:var(--text-gray);font-weight:500}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.about-text p{font-size:1.2rem;color:var(--text-gray);margin-bottom:2rem;line-height:1.8}.about-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:4rem}.stat{text-align:center;padding:2rem 1.5rem;background:var(--glass-bg);border-radius:20px;border:1px solid var(--border-color);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .3s ease}.stat:hover{transform:translateY(-5px);box-shadow:var(--shadow-colored)}.stat-number{display:block;font-size:3rem;font-weight:900;background:var(--gradient-1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.stat-label{color:var(--text-gray);font-size:1rem;font-weight:500}.about-image{position:relative}.image-container{position:relative;border-radius:25px;overflow:hidden;box-shadow:var(--shadow);background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-color)}.image-container img{width:100%;height:600px;object-fit:cover;transition:transform .3s ease}.image-container:hover img{transform:scale(1.05)}.image-overlay{position:absolute;inset:0;background:var(--gradient-1);opacity:.15;transition:opacity .3s ease}.image-container:hover .image-overlay{opacity:.1}.image-border{position:absolute;inset:-2px;background:var(--gradient-1);border-radius:27px;z-index:-1;opacity:.3}.skills{padding:10rem 0;position:relative}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2.5rem}.skill-card{background:var(--glass-bg);padding:3.5rem 2.5rem;border-radius:25px;text-align:center;border:1px solid var(--border-color);transition:all .4s ease;position:relative;overflow:hidden;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.skill-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-1)}.skill-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-colored);border-color:var(--primary)}.skill-icon{margin-bottom:2rem;transition:all .3s ease}.skill-card:hover .skill-icon{transform:scale(1.1)}.skill-name{font-size:1.6rem;font-weight:700;color:var(--text-light);margin-bottom:2rem}.skill-techs{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center}.tech-tag{background:var(--glass-bg);color:var(--text-light);padding:.6rem 1.2rem;border-radius:25px;font-size:.9rem;font-weight:500;border:1px solid var(--border-color);transition:all .3s ease;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.tech-tag:hover{background:var(--primary);border-color:var(--primary);transform:translateY(-2px)}.projects{padding:10rem 0;background:var(--bg-dark)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:3.5rem}.project-card{background:var(--glass-bg);border-radius:25px;overflow:hidden;border:1px solid var(--border-color);transition:all .4s ease;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.project-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-colored)}.project-image{position:relative;height:280px;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.project-card:hover .project-image img{transform:scale(1.1)}.project-overlay{position:absolute;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.project-card:hover .project-overlay{opacity:1}.project-links{display:flex;gap:1.5rem}.project-link{width:55px;height:55px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;transition:all .3s ease}.project-link:hover{background:var(--primary-dark);transform:scale(1.15)}.project-content{padding:2.5rem}.project-title{font-size:1.6rem;font-weight:700;color:var(--text-light);margin-bottom:1.2rem}.project-description{color:var(--text-gray);line-height:1.7;margin-bottom:2rem;font-size:1.05rem}.project-tags{display:flex;flex-wrap:wrap;gap:.8rem}.project-tag{background:var(--glass-bg);color:var(--primary);padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:500;border:1px solid var(--border-color);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.contact{padding:10rem 0}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}.contact-info h3{font-size:2.2rem;font-weight:700;color:var(--text-light);margin-bottom:2rem}.contact-info p{color:var(--text-gray);line-height:1.8;margin-bottom:3rem;font-size:1.1rem}.contact-items{margin-bottom:3rem}.contact-item{display:flex;align-items:center;gap:1.2rem;margin-bottom:2rem;color:var(--text-gray);font-size:1.05rem}.contact-socials{display:flex;gap:1.2rem}.contact-form{background:var(--glass-bg);padding:3.5rem;border-radius:25px;border:1px solid var(--border-color);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.form-group{margin-bottom:2.5rem}.form-input,.form-textarea{width:100%;padding:1.2rem 1.8rem;background:var(--bg-darker);border:2px solid var(--border-color);border-radius:15px;color:var(--text-light);font-size:1.05rem;transition:all .3s ease;font-family:inherit}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #6366f11a;background:var(--bg-card)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-gray)}.form-textarea{resize:vertical;min-height:140px}.footer{padding:4rem 0;background:var(--bg-dark);border-top:1px solid var(--border-color)}.footer-content{text-align:center;color:var(--text-gray)}.footer-content p{margin-bottom:.5rem;font-size:1.05rem}@media (max-width: 1024px){.nav-center{display:none}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}@media (max-width: 768px){.nav-actions .btn-cv span{display:none}.hero-cta{flex-direction:column;align-items:flex-start}.hero-cta button{width:100%;justify-content:center}.about-content{grid-template-columns:1fr;gap:4rem}.about-stats{grid-template-columns:1fr}.contact-content{grid-template-columns:1fr;gap:4rem}.projects-grid,.skills-grid{grid-template-columns:1fr}.contact-form{padding:2.5rem}.hero-title{text-align:center}.hero-cta{align-items:center}}@media (max-width: 480px){.hero{padding:2rem 0;text-align:center}.skill-card{padding:2.5rem 1.8rem}.contact-form{padding:2rem}.nav-content{gap:1rem}.logo-text{font-size:1.5rem}.theme-toggle{width:40px;height:40px}.btn-cv{padding:.5rem 1rem;font-size:.85rem}}
