@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700;800&display=swap";:root{--bg-main:#030014;--bg-secondary:#0a0a1f;--bg-card:#ffffff05;--text-main:#f8fafc;--text-muted:#94a3b8;--accent-primary:#818cf8;--accent-secondary:#c084fc;--accent-tertiary:#38bdf8;--accent-gradient:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary), var(--accent-tertiary));--border-color:#ffffff14;--border-hover:#ffffff26;--glass-bg:#0a0a1f66;--glass-border:#ffffff0d;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading:"Outfit", var(--font-sans);--shadow-glow:0 0 20px #818cf84d;--shadow-glass:0 8px 32px 0 #0000005e}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 15%,#818cf814 0%,#0000 50%),radial-gradient(circle at 85% 30%,#c084fc14 0%,#0000 50%);line-height:1.7;overflow-x:hidden}::selection{background:var(--accent-primary);color:#fff}a{color:inherit;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;font-weight:700;line-height:1.1}ul{list-style:none}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem}@media (width>=768px){.container{padding:0 3rem}}@media (width>=1024px){.container{padding:0 4rem}}.section{padding:8rem 0;position:relative}.text-gradient{background:var(--accent-gradient);-webkit-text-fill-color:transparent;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:8s linear infinite shine}@keyframes shine{to{background-position:200%}}.section-title{text-align:center;margin-bottom:4rem;font-size:clamp(2rem,5vw,3rem);display:inline-block;position:relative;left:50%;transform:translate(-50%)}.section-title:after{content:"";background:var(--accent-gradient);border-radius:2px;width:60px;height:4px;position:absolute;bottom:-10px;left:50%;transform:translate(-50%)}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);box-shadow:var(--shadow-glass);border-radius:24px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-15px)}to{transform:translateY(0)}}.animate-fade-in{opacity:0;animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeInUp}.animate-delay-1{animation-delay:.1s}.animate-delay-2{animation-delay:.2s}.animate-delay-3{animation-delay:.3s}.animate-delay-4{animation-delay:.4s}.btn{cursor:pointer;font-size:1rem;font-weight:500;font-family:var(--font-sans);z-index:1;border:none;border-radius:9999px;justify-content:center;align-items:center;gap:.75rem;padding:.875rem 1.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";z-index:-1;opacity:0;border-radius:9999px;transition:opacity .3s;position:absolute;inset:0}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 15px #818cf84d}.btn-primary:before{background:linear-gradient(135deg, var(--accent-tertiary), var(--accent-secondary), var(--accent-primary))}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #818cf880}.btn-primary:hover:before{opacity:1}.btn-secondary{color:var(--text-main);border:1px solid var(--border-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff08}.btn-secondary:hover{border-color:var(--border-hover);background:#ffffff14;transform:translateY(-2px)}.grid{gap:2rem;display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (width<=1024px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.navbar{z-index:1000;padding:1.5rem 0;transition:all .4s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:0;right:0}.navbar.scrolled{padding:.75rem 0;top:1rem}.navbar.scrolled .nav-container{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);box-shadow:var(--shadow-glass);border-radius:9999px;max-width:1000px;padding:.5rem 1.5rem}.nav-container{justify-content:space-between;align-items:center;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex}.logo{font-family:var(--font-heading);letter-spacing:1px;font-size:1.5rem;font-weight:800}.nav-links{align-items:center;gap:2.5rem;display:flex}.nav-link{color:var(--text-main);opacity:.8;font-size:.95rem;font-weight:500;transition:opacity .3s;position:relative}.nav-link:hover{opacity:1}.nav-link:after{content:"";background:var(--accent-gradient);border-radius:2px;width:0;height:2px;transition:width .3s cubic-bezier(.4,0,.2,1);position:absolute;bottom:-4px;left:50%;transform:translate(-50%)}.nav-link:hover:after{width:100%}.mobile-menu-btn{color:var(--text-main);cursor:pointer;background:0 0;border:none;padding:.5rem;display:none}.mobile-menu{text-align:center;background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:24px;flex-direction:column;gap:1.5rem;padding:2rem;display:none;position:absolute;top:calc(100% + 1rem);left:1rem;right:1rem;box-shadow:0 20px 40px #0006}@media (width<=768px){.desktop-only{display:none}.mobile-menu-btn{justify-content:center;align-items:center;display:flex}.mobile-menu{display:flex}.navbar.scrolled .nav-container{border-radius:20px}}.hero{align-items:center;min-height:100vh;padding-top:6rem;display:flex;position:relative;overflow:hidden}.hero-container{z-index:2;justify-content:space-between;align-items:center;gap:4rem;display:flex;position:relative}.hero-content{flex:1;max-width:650px}.subtitle{text-transform:uppercase;letter-spacing:.2em;color:#fff;background:#818cf81a;border:1px solid #818cf833;border-radius:9999px;margin-bottom:1.5rem;padding:.5rem 1rem;font-size:1.125rem;font-weight:600;display:inline-block}.title{margin-bottom:1.5rem;font-size:clamp(3rem,8vw,5rem);line-height:1.1}.description{color:var(--text-muted);max-width:540px;margin-bottom:3rem;font-size:1.125rem}.hero-actions{flex-wrap:wrap;align-items:center;gap:2rem;display:flex}.social-links{gap:1rem;display:flex}.social-link{width:50px;height:50px;color:var(--text-main);background:var(--bg-card);border:1px solid var(--border-color);border-radius:50%;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.social-link:hover{background:var(--accent-gradient);border-color:#0000;transform:translateY(-5px)scale(1.05);box-shadow:0 10px 20px #818cf84d}.hero-image-wrapper{flex:1;justify-content:center;display:flex;position:relative}.hero-image{aspect-ratio:1;z-index:10;border:4px solid var(--accent-primary);background:0 0;border-radius:50%;justify-content:center;align-items:center;width:min(100%,450px);padding:6px;transition:all .5s;animation:6s ease-in-out infinite float;display:flex;position:relative;box-shadow:0 0 40px #818cf866}.hero-image:hover{border-radius:50%;transform:translateY(-10px);box-shadow:0 20px 40px #c084fc99}.profile-img{object-fit:cover;z-index:2;border-radius:50%;width:100%;height:100%;transition:transform .5s cubic-bezier(.4,0,.2,1);position:relative}.hero-image:hover .profile-img{transform:scale(1.05)}.blob{filter:blur(90px);z-index:1;opacity:.6;mix-blend-mode:screen;border-radius:50%;position:absolute}.blob-1{background:var(--accent-primary);width:400px;height:400px;animation:8s cubic-bezier(.4,0,.2,1) infinite alternate pulse;top:-20%;right:-10%}.blob-2{background:var(--accent-secondary);width:350px;height:350px;animation:10s cubic-bezier(.4,0,.2,1) infinite alternate-reverse pulse;bottom:-20%;left:-10%}.blob-3{background:var(--accent-tertiary);width:300px;height:300px;animation:12s cubic-bezier(.4,0,.2,1) infinite alternate pulse;top:40%;right:20%}@keyframes pulse{0%{opacity:.4;transform:scale(.8)translate(0)}50%{opacity:.6;transform:scale(1.1)translate(50px,-50px)}to{opacity:.4;transform:scale(.9)translate(-50px,50px)}}@media (width<=992px){.hero-container{text-align:center;flex-direction:column;padding-top:2rem}.hero-content{flex-direction:column;align-items:center;display:flex}.description{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}}.timeline-section{flex-direction:column;gap:2.5rem;display:flex}.timeline-header{z-index:2;align-items:center;gap:1rem;margin-bottom:1.5rem;font-size:2rem;display:flex;position:relative}.timeline{flex-direction:column;gap:3rem;padding-left:2.5rem;display:flex;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, var(--accent-primary), var(--accent-secondary), transparent);border-radius:4px;width:4px;position:absolute;top:0;bottom:0;left:0;box-shadow:0 0 15px #818cf866}.timeline-item{border-radius:20px;padding:2rem;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative}.timeline-item:hover{border-color:#818cf866;transform:translate(15px);box-shadow:0 15px 35px #0000004d,inset 0 0 0 1px #818cf833}.timeline-dot{background:var(--bg-main);border:4px solid var(--accent-primary);width:20px;height:20px;box-shadow:0 0 15px var(--accent-primary), inset 0 0 5px var(--accent-secondary);z-index:2;border-radius:50%;transition:all .4s;position:absolute;top:2rem;left:-3.2rem}.timeline-item:hover .timeline-dot{background:var(--accent-secondary);border-color:var(--accent-primary);transform:scale(1.3)}.timeline-date{color:var(--accent-primary);letter-spacing:.05em;background:#818cf81a;border:1px solid #818cf833;border-radius:9999px;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.4rem 1rem;font-size:.9rem;font-weight:600;display:inline-flex}.timeline-title{color:var(--text-main);margin-bottom:.5rem;font-size:1.4rem}.timeline-company{color:var(--text-muted);align-items:center;margin-bottom:1.5rem;font-size:1.1rem;font-weight:500;display:flex}.timeline-company:before{content:"";background:var(--accent-secondary);width:10px;height:2px;margin-right:.8rem;display:inline-block}.timeline-desc{color:var(--text-muted);flex-direction:column;gap:.8rem;padding-left:0;font-size:1rem;line-height:1.6;list-style-type:none;display:flex}.timeline-desc li{padding-left:1.5rem;position:relative}.timeline-desc li:before{content:"▹";color:var(--accent-primary);font-size:1.2rem;line-height:1;position:absolute;left:0}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2.5rem;display:grid}.project-card{border-radius:24px;flex-direction:column;height:100%;padding:2.5rem;transition:all .5s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.project-card:before{content:"";opacity:0;z-index:0;background:linear-gradient(135deg,#818cf81a,#0000 50%,#c084fc1a);transition:opacity .5s;position:absolute;inset:0}.project-card:hover{border-color:#818cf833;transform:translateY(-12px);box-shadow:0 20px 40px #0006,inset 0 0 0 1px #818cf84d}.project-card:hover:before{opacity:1}.project-header,.project-category,.project-title,.project-desc,.project-techs{z-index:1;position:relative}.project-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.project-icon{color:var(--accent-primary);transition:transform .3s}.project-card:hover .project-icon{transform:scale(1.1)}.project-links{gap:1.2rem;display:flex}.project-link{color:var(--text-muted);background:var(--bg-card);border-radius:50%;justify-content:center;align-items:center;padding:.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.project-link:hover{color:var(--text-main);background:var(--accent-gradient);transform:translateY(-3px);box-shadow:0 5px 15px #818cf866}.project-category{font-size:.85rem;font-family:var(--font-heading);color:var(--accent-secondary);text-transform:uppercase;letter-spacing:.15em;margin-bottom:.75rem;font-weight:700}.project-title{color:var(--text-main);margin-bottom:1.25rem;font-size:1.5rem;transition:color .3s}.project-card:hover .project-title{color:var(--accent-primary)}.project-desc{color:var(--text-muted);flex-grow:1;margin-bottom:2rem;font-size:1.05rem;line-height:1.6}.project-techs{flex-wrap:wrap;gap:.75rem;display:flex}.tech-tag{font-family:var(--font-heading);color:var(--text-main);background:#ffffff08;border:1px solid #ffffff14;border-radius:9999px;padding:.4rem 1rem;font-size:.8rem;transition:all .3s}.tech-tag:hover{background:#818cf81a;border-color:#818cf84d}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.5rem;display:grid}.skill-category{border-radius:24px;padding:2.5rem;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.skill-category:after{content:"";opacity:0;z-index:0;pointer-events:none;background:radial-gradient(circle,#818cf814 0%,#0000 70%);transition:opacity .4s;position:absolute;inset:0}.skill-category:hover{border-color:#c084fc66;transform:translateY(-8px);box-shadow:0 15px 30px #0000004d,inset 0 0 0 1px #c084fc33}.skill-category:hover:after{opacity:1}.skill-header,.skill-list{z-index:1;position:relative}.skill-header{border-bottom:1px solid #ffffff14;align-items:center;gap:1.2rem;margin-bottom:2rem;padding-bottom:1.5rem;transition:border-color .4s;display:flex}.skill-category:hover .skill-header{border-bottom-color:#c084fc33}.skill-header svg{transition:transform .4s cubic-bezier(.4,0,.2,1)}.skill-category:hover .skill-header svg{transform:scale(1.15)rotate(5deg)}.skill-title{color:var(--text-main);font-size:1.35rem;font-weight:600}.skill-list{grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}.skill-item{color:var(--text-muted);align-items:center;gap:.75rem;font-size:1rem;font-weight:500;transition:all .3s;display:flex}.skill-item:hover{color:var(--text-main);transform:translate(4px)}.skill-item:hover .skill-dot{background:var(--accent-tertiary);box-shadow:0 0 12px var(--accent-tertiary);transform:scale(1.5)}.skill-dot{background:#ffffff26;border-radius:50%;width:8px;height:8px;transition:all .3s cubic-bezier(.4,0,.2,1)}@media (width<=480px){.skill-list{grid-template-columns:1fr}}.contact-wrapper{border-radius:30px;grid-template-columns:1.2fr 1fr;display:grid;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.contact-wrapper:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 0 0,#818cf81a,#0000 50%),radial-gradient(circle at 100% 100%,#c084fc0d,#0000 50%);position:absolute;inset:0}.contact-info,.contact-form-container{z-index:1;position:relative}.contact-info{border-right:1px solid var(--border-color);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff05;padding:5rem 4rem}.contact-subtitle{color:var(--text-main);margin-bottom:1.25rem;font-size:2rem}.contact-text{color:var(--text-muted);margin-bottom:3.5rem;font-size:1.1rem;line-height:1.7}.info-items{flex-direction:column;gap:2.5rem;margin-bottom:4rem;display:flex}.info-item{align-items:center;gap:1.5rem;transition:transform .3s;display:flex}.info-item:hover{transform:translate(10px)}.info-icon{background:#818cf81a;border:1px solid #818cf833;border-radius:50%;justify-content:center;align-items:center;width:55px;height:55px;transition:all .3s;display:flex;box-shadow:0 0 20px #818cf81a}.info-item:hover .info-icon{background:#818cf833;transform:scale(1.1)rotate(5deg);box-shadow:0 0 25px #818cf84d}.info-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.35rem;font-size:.85rem;font-weight:600}.info-value{color:var(--text-main);font-size:1.15rem;font-weight:500;line-height:1.5;transition:color .3s}a.info-value:hover{color:var(--accent-primary);text-shadow:0 0 10px #818cf866}.lang-tags{flex-wrap:wrap;gap:1rem;display:flex}.lang-tag{color:var(--accent-secondary);background:#c084fc0d;border:1px solid #c084fc33;border-radius:9999px;padding:.6rem 1.2rem;font-size:.95rem;font-weight:600;transition:all .3s}.lang-tag:hover{background:#c084fc26;transform:translateY(-2px);box-shadow:0 0 15px #c084fc4d}.contact-form-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0a1f99;padding:5rem 4rem}.contact-form{flex-direction:column;gap:1.75rem;display:flex}.form-group{flex-direction:column;gap:.6rem;display:flex;position:relative}.form-group label{color:var(--text-main);margin-left:.5rem;font-size:.95rem;font-weight:600}.form-input,.form-textarea{width:100%;color:var(--text-main);font-family:var(--font-sans);background:#ffffff05;border:1px solid #ffffff1a;border-radius:16px;padding:1.2rem;font-size:1.05rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.form-input::placeholder,.form-textarea::placeholder{color:#ffffff4d}.form-input:hover,.form-textarea:hover{background:#ffffff0a;border-color:#fff3}.form-input:focus,.form-textarea:focus{border-color:var(--accent-primary);background:#818cf80d;outline:none;transform:translateY(-2px);box-shadow:0 0 0 4px #818cf826}.form-textarea{resize:vertical;min-height:150px}.form-submit{letter-spacing:.05em;border-radius:16px;justify-content:center;width:100%;margin-top:1.5rem;padding:1.2rem;font-size:1.1rem;font-weight:600}@media (width<=1024px){.contact-wrapper{grid-template-columns:1fr}.contact-info{border-right:none;border-bottom:1px solid var(--border-color);padding:3rem 2rem}.contact-form-container{padding:3rem 2rem}}.cursor-trail-dot{background-color:var(--accent-primary);pointer-events:none;z-index:9999;mix-blend-mode:screen;width:12px;height:12px;box-shadow:0 0 10px var(--accent-primary);border-radius:50%;margin:-6px 0 0 -6px;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-trail-head{mix-blend-mode:difference;width:24px;height:24px;box-shadow:none;z-index:10000;background-color:#fff;margin:-12px 0 0 -12px;transition:width .3s,height .3s,margin .3s,background-color .3s}.cursor-trail-head.hover{background-color:#fff;width:60px;height:60px;margin:-30px 0 0 -30px}@media (pointer:fine){body,a,button,.interactive{cursor:none}}
