:root{--primary-color: #7F5AF0;--secondary-color: #2CB67D;--background-color: #16161A;--card-background-color: #242629;--text-color: #FFFFFE;--subtle-text-color: #94A1B2;--border-color: #2D3748;--font-family: "Poppins", sans-serif;--header-height: 80px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-family);background-color:var(--background-color);color:var(--text-color);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}.app-container{display:flex;flex-direction:column;min-height:100vh}main{flex-grow:1}.container{width:90%;max-width:1100px;margin:0 auto;padding:0 1rem}h1,h2,h3,h4,h5,h6{color:var(--text-color);margin-bottom:1rem;line-height:1.2;font-weight:700}h1{font-size:2.8rem}h2{font-size:2.2rem}h3{font-size:1.5rem}p{margin-bottom:1rem;color:var(--subtle-text-color)}a{color:var(--primary-color);text-decoration:none;transition:color .3s ease}a:hover,a:focus{color:var(--secondary-color);outline:2px solid var(--primary-color);outline-offset:2px}img{max-width:100%;height:auto;display:block}ul{list-style:none}.btn{display:inline-block;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;text-align:center;transition:all .3s ease;border:2px solid transparent;cursor:pointer;font-size:1rem}.btn-primary{background-color:var(--primary-color);color:var(--text-color);border-color:var(--primary-color)}.btn-primary:hover,.btn-primary:focus{background-color:transparent;color:var(--primary-color);border-color:var(--primary-color)}.btn-secondary{background-color:transparent;color:var(--secondary-color);border:2px solid var(--secondary-color)}.btn-secondary:hover,.btn-secondary:focus{background-color:var(--secondary-color);color:var(--text-color)}.btn-small{padding:.5rem 1rem;font-size:.9rem}.main-header{background-color:var(--background-color);padding:1rem 0;position:fixed;top:0;left:0;width:100%;z-index:1000;transition:background-color .3s ease,box-shadow .3s ease,padding .3s ease}.main-header.sticky{background-color:#16161ae6;box-shadow:0 2px 10px #00000080;padding:.75rem 0}.header-container{display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.8rem;font-weight:700;color:var(--primary-color)}.logo:hover,.logo:focus{color:var(--secondary-color);outline:none}.main-nav ul{display:flex;gap:1.5rem}.nav-link{color:var(--subtle-text-color);font-weight:600;padding:.5rem 0;position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--primary-color);transition:width .3s ease}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-link.active,.nav-link:hover,.nav-link:focus{color:var(--text-color);outline:none}.menu-toggle{display:none;background:none;border:none;color:var(--text-color);font-size:1.5rem;cursor:pointer}.hero-section{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding-top:var(--header-height);position:relative;overflow:hidden;background:linear-gradient(135deg,var(--background-color) 0%,#1a1a2e 100%)}.hero-content{position:relative;z-index:2;max-width:800px}.hero-section h1{font-size:clamp(2.5rem,5vw,4rem);margin-bottom:1rem;color:var(--text-color);font-weight:700}.hero-section p{font-size:clamp(1rem,2.5vw,1.25rem);margin-bottom:2rem;color:var(--subtle-text-color);max-width:600px;margin-left:auto;margin-right:auto}.hero-buttons{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.hero-background-animation{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.particle{position:absolute;background-color:var(--primary-color);border-radius:50%;opacity:.6;animation:float 20s infinite ease-in-out}.particle:nth-child(1){width:10px;height:10px;left:10%;top:20%;animation-duration:15s}.particle:nth-child(2){width:15px;height:15px;left:80%;top:30%;animation-duration:25s;animation-delay:-5s}.particle:nth-child(3){width:8px;height:8px;left:50%;top:70%;animation-duration:18s}.particle:nth-child(4){width:12px;height:12px;left:25%;top:80%;animation-duration:22s;animation-delay:-10s}.particle:nth-child(5){width:10px;height:10px;left:70%;top:10%;animation-duration:16s}.particle:nth-child(6){width:18px;height:18px;left:5%;top:50%;animation-duration:28s;animation-delay:-3s}.particle:nth-child(7){width:7px;height:7px;left:90%;top:85%;animation-duration:19s}.particle:nth-child(8){width:14px;height:14px;left:40%;top:40%;animation-duration:23s;animation-delay:-7s}.particle:nth-child(9){width:11px;height:11px;left:60%;top:60%;animation-duration:17s}.particle:nth-child(10){width:9px;height:9px;left:15%;top:5%;animation-duration:20s;animation-delay:-2s}@keyframes float{0%{transform:translateY(0) translate(0) scale(1);opacity:.6}50%{transform:translateY(-20px) translate(15px) scale(1.2);opacity:.3}to{transform:translateY(0) translate(0) scale(1);opacity:.6}}.content-section{padding:4rem 0;background-color:var(--background-color);overflow:hidden}.section-title{text-align:center;margin-bottom:3rem;font-size:2.5rem;color:var(--text-color);position:relative;padding-bottom:.5rem}.section-title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:80px;height:4px;background-color:var(--primary-color);border-radius:2px}.about-content{display:flex;gap:2rem;align-items:flex-start}.about-image{flex-shrink:0;width:250px;height:250px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:5px solid var(--primary-color)}.about-text p{font-size:1.1rem;color:var(--subtle-text-color)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.project-card{background-color:var(--card-background-color);border-radius:8px;overflow:hidden;box-shadow:0 4px 15px #0003;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column}.project-card:hover,.project-card:focus-within{transform:translateY(-5px);box-shadow:0 8px 25px #7f5af04d}.project-image-container img{width:100%;height:220px;-o-object-fit:cover;object-fit:cover}.project-info{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column}.project-info h3{margin-top:0;color:var(--text-color)}.project-info p{font-size:.95rem;color:var(--subtle-text-color);flex-grow:1;margin-bottom:1rem}.project-tech{margin-bottom:1rem;display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{background-color:#7f5af033;color:var(--primary-color);padding:.25rem .75rem;border-radius:15px;font-size:.8rem;font-weight:500}.project-links{margin-top:auto;display:flex;gap:1rem}.skills-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.skill-category{background-color:var(--card-background-color);padding:1.5rem;border-radius:8px;box-shadow:0 4px 10px #0000001a}.skill-category h3{color:var(--primary-color);margin-bottom:1rem;border-bottom:2px solid var(--border-color);padding-bottom:.5rem}.skill-category ul li{padding:.5rem 0;color:var(--subtle-text-color);border-bottom:1px dashed var(--border-color)}.skill-category ul li:last-child{border-bottom:none}.contact-intro{text-align:center;margin-bottom:2rem;font-size:1.1rem}.contact-form{max-width:700px;margin:0 auto 2rem;background-color:var(--card-background-color);padding:2rem;border-radius:8px;box-shadow:0 4px 15px #0003}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-color)}.form-group input[type=text],.form-group input[type=email],.form-group textarea{width:100%;padding:.75rem;border-radius:6px;border:1px solid var(--border-color);background-color:var(--background-color);color:var(--text-color);font-family:var(--font-family);font-size:1rem}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #7f5af04d}.form-group textarea{resize:vertical;min-height:120px}.contact-form button[type=submit]{width:100%;padding:1rem;font-size:1.1rem}.success-message{text-align:center;color:var(--secondary-color);background-color:#2cb67d1a;padding:1rem;border-radius:6px;margin-bottom:1.5rem}.social-links-contact{text-align:center}.social-links-contact p{margin-bottom:.5rem}.social-links-contact a{margin:0 .75rem;font-size:1.1rem;color:var(--subtle-text-color)}.social-links-contact a:hover{color:var(--primary-color)}.main-footer{background-color:var(--card-background-color);color:var(--subtle-text-color);padding:2rem 0;text-align:center;font-size:.9rem}.main-footer p{margin-bottom:.25rem;color:var(--subtle-text-color)}@media (max-width: 992px){.about-content{flex-direction:column;align-items:center;text-align:center}.about-image{margin-bottom:2rem}}@media (max-width: 768px){html{font-size:15px}.main-header{padding:.75rem 0}.header-container{padding:0 1rem}.menu-toggle{display:block;z-index:1001}.main-nav{position:fixed;top:0;left:-100%;width:70%;max-width:300px;height:100vh;background-color:var(--card-background-color);flex-direction:column;justify-content:center;align-items:center;transition:left .3s ease-in-out;padding-top:var(--header-height);box-shadow:2px 0 10px #0000004d}.main-nav.open{left:0}.main-nav ul{flex-direction:column;align-items:center;width:100%}.main-nav ul li{width:100%;text-align:center}.nav-link{display:block;padding:1rem;font-size:1.2rem}.nav-link:after{display:none}.nav-link.active{background-color:var(--primary-color);color:var(--text-color)}.hero-section h1{font-size:2rem}.hero-section p{font-size:1rem}.projects-grid,.skills-container{grid-template-columns:1fr}.contact-form{padding:1.5rem}}@media (max-width: 480px){.hero-buttons{flex-direction:column}.btn{width:100%}.section-title{font-size:2rem}}
