.header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:var(--header-bg);box-shadow:var(--shadow-sm);left:0;position:fixed;top:0;transition:all .3s ease;width:100%;z-index:1000}.header.scrolled{box-shadow:var(--shadow-md)}.navbar{align-items:center;display:flex;justify-content:space-between;padding:1.25rem 0}.logo a{color:var(--text-color);font-family:var(--font-heading);font-size:1.85rem;font-weight:800;letter-spacing:-.5px;transition:var(--transition-normal)}.logo span{color:var(--primary-color);position:relative}.logo span:after{background-color:rgba(53,99,233,.2);bottom:2px;content:"";height:4px;left:0;position:absolute;width:100%;z-index:-1}.logo a:hover{transform:translateY(-2px)}.nav-menu{display:flex;list-style:none}.nav-menu li{margin-left:2.25rem}.nav-link{color:var(--text-color);font-size:1.05rem;font-weight:600;padding:.5rem 0;position:relative}.nav-link:after{background-color:var(--primary-color);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-link.active:after,.nav-link:hover:after{width:100%}.nav-toggle{cursor:pointer;display:none}.bar{background-color:var(--text-color);border-radius:2px;height:3px;margin:5px 0;transition:all .3s ease;width:25px}.theme-toggle{bottom:30px;position:fixed;right:30px;z-index:99}#theme-toggle-btn{align-items:center;background:var(--primary-color);border:none;border-radius:50%;box-shadow:var(--shadow-md);cursor:pointer;display:flex;height:50px;justify-content:center;transition:all .3s ease;width:50px}#theme-toggle-btn:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}#theme-toggle-btn i{color:#fff;font-size:1.25rem}#theme-toggle-btn .fa-sun,.dark-mode #theme-toggle-btn .fa-moon{display:none}.dark-mode #theme-toggle-btn .fa-sun{display:block}.hero-section{align-items:center;background:linear-gradient(135deg,var(--background-color) 0,rgba(53,99,233,.08) 100%);display:flex;min-height:100vh;overflow:hidden;padding-bottom:100px;padding-top:140px;position:relative}.hero-section:before{animation:pulse-background 15s ease-in-out infinite alternate;background-image:radial-gradient(circle at 20% 30%,rgba(53,99,233,.15) 0,transparent 20%),radial-gradient(circle at 80% 70%,rgba(53,99,233,.1) 0,transparent 20%);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.hero-section:after{animation:rotate-gradient 25s linear infinite;background:radial-gradient(circle,rgba(53,99,233,.07) 0,transparent 70%);border-radius:50%;content:"";height:90%;position:absolute;right:-50%;top:-50%;width:90%;z-index:-1}.hero-section .container{align-items:center;display:flex;justify-content:center;position:relative;z-index:2}.floating-elements{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}.floating-element{opacity:.4;position:absolute;z-index:1}.circle{animation:float 15s ease-in-out infinite;border:2px solid var(--primary-color);border-radius:50%;height:80px;left:10%;top:15%;width:80px}.square{animation:float 20s ease-in-out infinite reverse;border:2px solid var(--primary-color);bottom:20%;height:60px;right:10%;transform:rotate(45deg);width:60px}.triangle{animation:float 18s ease-in-out 2s infinite;border-bottom:70px solid rgba(53,99,233,.1);border-left:40px solid transparent;border-right:40px solid transparent;height:0;right:20%;top:30%;width:0}.dot{background-color:var(--primary-color);border-radius:50%;height:15px;opacity:.3;width:15px}.dot-1{animation:float 12s ease-in-out 1s infinite;right:30%;top:20%}.dot-2{animation:float 10s ease-in-out 3s infinite;bottom:30%;left:20%}.dot-3{animation:float 14s ease-in-out 2s infinite;right:40%;top:60%}.cross{animation:float 16s ease-in-out 4s infinite,rotate 30s linear infinite;height:40px;left:15%;position:absolute;top:70%;width:40px}.cross:after,.cross:before{background-color:rgba(53,99,233,.3);content:"";position:absolute}.cross:before{height:3px;top:50%;transform:translateY(-50%);width:100%}.cross:after{height:100%;left:50%;transform:translateX(-50%);width:3px}.plus{animation:float 13s ease-in-out 1s infinite,rotate 40s linear infinite reverse;bottom:15%;height:30px;position:absolute;right:25%;width:30px}.plus:after,.plus:before{background-color:rgba(53,99,233,.2);content:"";position:absolute}.plus:before{height:6px;top:50%;transform:translateY(-50%);width:100%}.plus:after{height:100%;left:50%;transform:translateX(-50%);width:6px}@keyframes pulse-background{0%{opacity:.4;transform:scale(1)}to{opacity:.7;transform:scale(1.1)}}@keyframes rotate-gradient{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes float{0%,to{transform:translateY(0) translateX(0)}25%{transform:translateY(-15px) translateX(15px)}50%{transform:translateY(20px) translateX(-10px)}75%{transform:translateY(-25px) translateX(-25px)}}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.hero-content{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:900px;position:relative;text-align:center;z-index:3}.profile-image-container{animation:profile-pulse 6s ease-in-out infinite;border:5px solid var(--primary-color);border-radius:50%;box-shadow:0 10px 30px rgba(53,99,233,.3);height:220px;margin-bottom:2.5rem;overflow:hidden;position:relative;width:220px}.profile-image{height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.profile-image-container:hover .profile-image{transform:scale(1.05)}.profile-image-container:before{background:radial-gradient(circle at center,transparent 70%,rgba(53,99,233,.2) 100%);content:"";inset:0;position:absolute;z-index:1}@keyframes profile-pulse{0%{box-shadow:0 10px 30px rgba(53,99,233,.3)}50%{box-shadow:0 15px 35px rgba(53,99,233,.5)}to{box-shadow:0 10px 30px rgba(53,99,233,.3)}}.hero-title{font-size:3.75rem;font-weight:800;letter-spacing:-1px;line-height:1.1;margin-bottom:1.5rem}.hero-title span{color:var(--primary-color);display:inline-block;position:relative}.hero-title span:after{background-color:rgba(53,99,233,.2);bottom:5px;content:"";height:8px;left:0;position:absolute;width:100%;z-index:-1}.auto-type-container{align-items:center;display:flex;height:60px;justify-content:center;margin-bottom:2.5rem}.auto-type-text{color:var(--text-secondary);display:inline-block;font-size:1.35rem;line-height:1.6;min-height:60px}.auto-type-text .typed-cursor{color:var(--primary-color);font-size:1.35rem}.hero-cta{display:flex;gap:1.25rem}.primary-btn{background-color:var(--primary-color);border-radius:var(--border-radius-md);box-shadow:0 4px 20px rgba(53,99,233,.25);color:#fff;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.primary-btn:hover{background-color:var(--primary-dark);box-shadow:0 6px 25px rgba(53,99,233,.35);transform:translateY(-5px)}.secondary-btn{background-color:transparent;border:2px solid var(--primary-color);border-radius:var(--border-radius-md);color:var(--text-color);font-weight:600;padding:1rem 2rem;transition:all .3s ease}.secondary-btn:hover{background-color:var(--primary-color);box-shadow:0 6px 25px rgba(53,99,233,.25);color:#fff;transform:translateY(-5px)}.about-section{background:linear-gradient(to bottom,var(--background-color) 0,rgba(53,99,233,.05) 100%);overflow:hidden;padding:100px 0;position:relative}.about-section:before{animation:about-bg-rotate 25s linear infinite;background:radial-gradient(circle,rgba(53,99,233,.06) 0,transparent 70%);height:60%;right:-10%;top:-20%;width:60%}.about-section:after,.about-section:before{border-radius:50%;content:"";position:absolute;z-index:0}.about-section:after{animation:about-bg-float 15s ease-in-out infinite alternate;background:radial-gradient(circle,rgba(53,99,233,.04) 0,transparent 70%);bottom:-10%;height:50%;left:-5%;width:50%}.about-content{align-items:center;display:grid;gap:3rem;grid-template-columns:1fr 1fr;margin:3rem 0;position:relative}.about-image{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;position:relative;transform:perspective(1000px) rotateY(-5deg);transition:transform .5s ease}.about-image:hover{transform:perspective(1000px) rotateY(0deg)}.about-image:before{border:5px solid var(--primary-color);border-radius:var(--border-radius-md);content:"";height:70%;position:absolute;right:-20px;top:-20px;transition:all .3s ease;width:70%;z-index:-1}.about-image:hover:before{right:-15px;top:-15px}.about-image img{border-radius:var(--border-radius-md);box-shadow:var(--shadow-md);transition:transform .5s ease;width:100%}.about-image:hover img{transform:scale(1.03)}.about-text h3{color:var(--primary-color);font-size:1.5rem;margin-bottom:1rem;padding-left:1rem;position:relative}.about-text h3:before{background-color:var(--primary-color);border-radius:2px;content:"";height:1.5rem;left:0;position:absolute;top:50%;transform:translateY(-50%);width:4px}.about-text p{line-height:1.8;margin-bottom:1.5rem}.about-cta{display:flex;gap:1rem;margin-top:2rem}.journey-timeline{margin:3rem 0;position:relative;text-align:center}.journey-title{color:var(--text-color);font-size:2.2rem;margin-bottom:.5rem}.journey-subtitle{color:var(--text-secondary);font-size:1.1rem;margin-bottom:3rem;margin-left:auto;margin-right:auto;max-width:600px}.timeline{margin:0 auto;max-width:1200px;padding:2rem 0;position:relative}.timeline:before{background-color:rgba(53,99,233,.2);border-radius:2px;bottom:0;content:"";left:50%;position:absolute;top:0;transform:translateX(-50%);width:4px}.timeline-item{box-sizing:border-box;padding:0 2rem 3rem;position:relative;width:50%}.timeline-item:nth-child(odd){left:0;text-align:right}.timeline-item:nth-child(2n){left:50%;text-align:left}.timeline-dot{background-color:var(--primary-color);border:4px solid var(--background-color);border-radius:50%;box-shadow:0 0 0 4px rgba(53,99,233,.2);height:20px;position:absolute;top:10px;transition:all .3s ease;width:20px;z-index:1}.timeline-item:hover .timeline-dot{background-color:var(--primary-dark);transform:scale(1.2)}.timeline-item:nth-child(odd) .timeline-dot{right:-14px}.timeline-item:nth-child(2n) .timeline-dot{left:-14px}.timeline-date{background-color:var(--primary-color);border-radius:var(--border-radius-sm);box-shadow:var(--shadow-sm);color:#fff;display:inline-block;font-size:.85rem;font-weight:600;padding:8px 16px;position:absolute;top:0;transition:all .3s ease}.timeline-item:hover .timeline-date{box-shadow:var(--shadow-md);transform:translateY(-3px)}.timeline-item:nth-child(odd) .timeline-date{left:calc(100% + 25px)}.timeline-item:nth-child(2n) .timeline-date{right:calc(100% + 25px)}.timeline-content{background-color:var(--card-bg);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);padding:1.5rem;position:relative;transition:all .3s ease}.timeline-item:hover .timeline-content{box-shadow:var(--shadow-md);transform:translateY(-5px)}.timeline-content h4{color:var(--text-color);font-size:1.2rem;margin-bottom:.75rem}.timeline-content p{color:var(--text-secondary);font-size:.95rem;line-height:1.6}.timeline-content:after{border:10px solid transparent;content:"";height:0;position:absolute;top:15px;width:0}.timeline-item:nth-child(odd) .timeline-content:after{border-left-color:var(--card-bg);right:-20px}.timeline-item:nth-child(2n) .timeline-content:after{border-right-color:var(--card-bg);left:-20px}.about-stats-section{background-color:var(--background-color);border-radius:var(--border-radius-lg);margin:3rem 0;overflow:hidden;padding:3rem 0;position:relative}.about-stats-section:before{background:linear-gradient(135deg,rgba(53,99,233,.05),rgba(53,99,233,.1));content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.stats-container{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-around;position:relative;z-index:1}.stat-item{min-width:200px;padding:2rem;position:relative;text-align:center;transition:transform .3s ease}.stat-item:hover{transform:translateY(-10px)}.stat-item:after{background-color:var(--primary-color);border-radius:2px;bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);transition:width .3s ease;width:30%}.stat-item:hover:after{width:50%}.stat-number{color:var(--primary-color);display:block;font-size:2.5rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 10px rgba(53,99,233,.2)}.stat-label{color:var(--text-secondary);font-size:1rem;font-weight:500}.certifications-section{margin:3rem 0}.cert-container{background-color:var(--card-bg);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);display:grid;gap:3rem;grid-template-columns:1fr 1fr;overflow:hidden;padding:2rem;position:relative}.cert-container:before{background:radial-gradient(circle,rgba(53,99,233,.1) 0,transparent 70%);height:300px;right:-150px;top:-150px;width:300px}.cert-container:after,.cert-container:before{border-radius:50%;content:"";position:absolute;z-index:0}.cert-container:after{background:radial-gradient(circle,rgba(53,99,233,.08) 0,transparent 70%);bottom:-100px;height:200px;left:-100px;width:200px}.cert-column{position:relative;z-index:1}.cert-column h3{color:var(--text-color);display:inline-block;margin-bottom:1.5rem;position:relative}.cert-column h3:after{background-color:var(--primary-color);border-radius:2px;bottom:-8px;content:"";height:3px;left:0;position:absolute;transition:width .3s ease;width:40px}.cert-column:hover h3:after{width:100%}.cert-list{list-style-type:none}.cert-list li{color:var(--text-secondary);font-size:1rem;line-height:1.5;margin-bottom:1.25rem;padding-left:2rem;position:relative;transition:transform .3s ease,color .3s ease}.cert-list li:hover{color:var(--text-color);transform:translateX(5px)}.cert-list li i{color:var(--primary-color);font-size:1.1rem;left:0;position:absolute;top:3px}.skills-container{display:grid;gap:3rem;grid-template-columns:1fr 1fr;margin-top:3rem}.skill-category h3{align-items:center;display:flex;gap:.75rem;margin-bottom:2rem}.skill-category h3 i{color:var(--primary-color)}.skills-grid{display:grid;gap:1.5rem}.skill-item{background-color:var(--card-bg);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);padding:1.5rem}.skill-info{display:flex;font-weight:500;justify-content:space-between;margin-bottom:.75rem}.skill-bar{background-color:var(--background-secondary);border-radius:4px;height:8px;overflow:hidden}.skill-progress{background:linear-gradient(90deg,var(--primary-color),var(--primary-light));border-radius:4px;height:100%}.projects-container{display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:3rem}.project-item{background-color:var(--card-bg);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.project-item:hover{box-shadow:var(--shadow-md);transform:translateY(-5px)}.project-image{height:200px;overflow:hidden;position:relative}.project-image img{height:100%;object-fit:cover;transition:transform var(--transition-normal);width:100%}.project-item:hover .project-image img{transform:scale(1.1)}.project-overlay{align-items:center;background-color:rgba(0,0,0,.6);display:flex;gap:var(--spacing-sm);height:100%;justify-content:center;left:0;opacity:0;position:absolute;top:0;transition:opacity var(--transition-normal);width:100%}.project-item:hover .project-overlay{opacity:1}.project-link{align-items:center;background-color:var(--primary-color);border-radius:var(--border-radius-md);color:#fff;display:flex;font-size:.875rem;justify-content:center;padding:.5rem 1rem;text-decoration:none;transition:background-color var(--transition-normal),transform var(--transition-normal)}.project-link:hover{background-color:var(--primary-light);transform:scale(1.1)}.project-details{padding:var(--spacing-md);text-align:center}.project-details h3{color:var(--text-color);font-size:1.25rem;margin-bottom:var(--spacing-sm)}.project-details p{color:var(--text-light);font-size:.875rem;margin-bottom:var(--spacing-md)}.project-tech{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center}.project-tech span{background-color:rgba(53,99,233,.1);border-radius:var(--border-radius-md);color:var(--primary-color);font-size:.75rem;padding:.25rem .5rem}.map-section{overflow:hidden;padding:80px 0;position:relative}.map-container{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);height:450px;margin-top:2rem;overflow:hidden}.map-container iframe{border:0;height:100%;width:100%}.contact-header{padding-bottom:var(--spacing-lg);text-align:center}.contact-content{padding:var(--spacing-xl) 0}.contact-grid{display:grid;gap:var(--spacing-xl);grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.contact-form,.contact-info{background-color:var(--card-bg);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-lg)}.info-items{margin:var(--spacing-lg) 0}.info-item{align-items:flex-start;display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.info-item i{color:var(--primary-color);font-size:1.5rem}.social-links h3{margin-bottom:var(--spacing-md)}.social-icons{display:flex;gap:var(--spacing-md)}.social-icons a{align-items:center;background-color:var(--background-secondary);border-radius:50%;color:var(--primary-color);display:flex;height:40px;justify-content:center;transition:all var(--transition-fast);width:40px}.social-icons a:hover{background-color:var(--primary-color);color:var(--text-on-dark);transform:translateY(-3px)}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-color);display:block;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group textarea{background-color:var(--background-color);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);box-sizing:border-box;color:var(--text-color);font-size:1rem;padding:.75rem 1rem;resize:vertical;transition:var(--transition-fast);width:100%}.form-group input:hover,.form-group textarea:hover{border-color:var(--primary-light)}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(53,99,233,.1);outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-light);opacity:.7}.contact-form .btn{background-color:var(--primary-color);border:none;border-radius:var(--border-radius-sm);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:.75rem 1rem;transition:all var(--transition-normal);width:100%}.contact-form .btn:hover{background-color:var(--primary-dark);box-shadow:0 4px 15px rgba(53,99,233,.25);transform:translateY(-3px)}.form-message{animation:slideUp .3s ease forwards;border-radius:var(--border-radius-sm);font-weight:500;margin-top:1rem;padding:.75rem;text-align:center;transform-origin:bottom center}@keyframes slideUp{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.form-message.success{background-color:rgba(52,199,89,.15);border:1px solid rgba(52,199,89,.3);color:var(--success-color)}.form-message.error{background-color:rgba(255,59,48,.15);border:1px solid rgba(255,59,48,.3);color:var(--error-color)}.form-message.info{background-color:rgba(0,122,255,.15);border:1px solid rgba(0,122,255,.3);color:#0070f3}.faq-section{background-color:var(--background-color);overflow:hidden;padding:100px 0;position:relative}.faq-section:before{background-image:linear-gradient(45deg,var(--background-color) 85%,rgba(53,99,233,.1) 85%),linear-gradient(135deg,var(--background-color) 85%,rgba(53,99,233,.1) 85%),linear-gradient(225deg,var(--background-color) 85%,rgba(53,99,233,.1) 85%),linear-gradient(315deg,var(--background-color) 85%,rgba(53,99,233,.1) 85%);background-size:30px 30px;content:"";opacity:.5}.faq-bg-shapes,.faq-section:before{height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.faq-shape{position:absolute;z-index:-1}.faq-shape.question-mark{animation:faq-float 10s ease-in-out infinite alternate;height:70px;opacity:.2;right:8%;top:15%;width:70px}.faq-shape.question-mark:before{color:var(--primary-color);content:"?";font-size:70px;font-weight:700;opacity:.5;position:absolute}.faq-shape.small-question{animation:faq-float 8s ease-in-out 1s infinite alternate-reverse;height:40px;left:8%;opacity:.15;width:40px}.faq-shape.small-question:before{color:var(--primary-color);content:"?";font-size:40px;font-weight:700;opacity:.5;position:absolute}.accordion{margin:0 auto;max-width:800px}.accordion-item{background-color:var(--card-bg);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);margin-bottom:1rem;overflow:hidden;transition:var(--transition-fast)}.accordion-item:hover{box-shadow:var(--shadow-md)}.accordion-header{align-items:center;color:var(--text-color);cursor:pointer;display:flex;font-weight:600;justify-content:space-between;padding:1.25rem;position:relative;transition:var(--transition-fast)}.accordion-header:hover{background-color:rgba(53,99,233,.05)}.accordion-header span{flex:1}.accordion-header i{align-items:center;color:var(--primary-color);display:flex;font-size:1rem;height:20px;justify-content:center;transition:var(--transition-fast);width:20px}.accordion-item.active .accordion-header{background-color:rgba(53,99,233,.05)}.accordion-item.active .accordion-header i{transform:rotate(45deg)}.accordion-content{max-height:0;overflow:hidden;padding:0 1.25rem;transition:max-height .3s ease,padding .3s ease}.accordion-item.active .accordion-content{max-height:1000px;padding:0 1.25rem 1.25rem}.footer{background-color:var(--footer-bg);overflow:hidden;padding:5rem 0 2rem;position:relative}.footer:before{background:linear-gradient(0deg,rgba(53,99,233,.04),transparent 15%),radial-gradient(circle at 10% 90%,rgba(53,99,233,.05) 0,transparent 20%),radial-gradient(circle at 90% 90%,rgba(53,99,233,.05) 0,transparent 20%);bottom:0;content:""}.footer-bg-shapes,.footer:before{height:100%;left:0;position:absolute;width:100%;z-index:0}.footer-bg-shapes{top:0}.footer-shape{position:absolute;z-index:0}.footer-shape.wave{bottom:0;height:10px;left:0;opacity:.2}.footer-shape.wave:before{animation:wave-animation 10s linear infinite;background:linear-gradient(90deg,var(--primary-color) 0,transparent 50%,var(--primary-color) 100%);bottom:0;content:"";height:5px;left:0;position:absolute;width:200%}@keyframes wave-animation{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.footer-content{display:grid;gap:3rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:3rem}.footer-logo a{color:var(--text-color);font-family:var(--font-heading);font-size:1.75rem;font-weight:700}.footer-logo span{color:var(--primary-color)}.footer-logo p{font-size:.9rem;margin-top:1rem}.footer h3{font-size:1.25rem;margin-bottom:1.5rem;position:relative}.footer h3:after{background-color:var(--primary-color);bottom:-10px;content:"";height:2px;left:0;position:absolute;width:40px}.footer-links ul{list-style:none}.footer-links li{margin-bottom:.75rem}.footer-links a{color:var(--text-secondary);transition:var(--transition-fast)}.footer-links a:hover{color:var(--primary-color);margin-left:5px}.footer-contact p{align-items:center;color:var(--text-secondary);display:flex;gap:10px;margin-bottom:1rem}.footer-contact i{color:var(--primary-color)}.newsletter-form{display:flex;margin-bottom:1.5rem;margin-top:1.5rem}.newsletter-form input{background-color:var(--background-color);border:1px solid var(--border-color);border-radius:var(--border-radius-md) 0 0 var(--border-radius-md);color:var(--text-color);flex:1;padding:10px 15px}.newsletter-form button{background-color:var(--primary-color);border:none;border-radius:0 var(--border-radius-md) var(--border-radius-md) 0;color:#fff;cursor:pointer;padding:10px 15px}.copyright{border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.9rem;padding-top:2rem;text-align:center}.back-to-top{align-items:center;background-color:var(--primary-color);border-radius:50%;bottom:30px;box-shadow:0 2px 8px rgba(0,0,0,.15);color:#fff;display:flex;height:45px;justify-content:center;left:30px;opacity:0;position:fixed;text-decoration:none;transition:.4s;visibility:hidden;width:45px;z-index:99}.back-to-top.active,.back-to-top:hover{opacity:1;visibility:visible}.back-to-top:hover{background-color:var(--primary-dark);transform:translateY(-5px)}.back-to-top i{font-size:1.25rem}.projects-popup{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background-color:rgba(0,0,0,.85);box-sizing:border-box;display:flex;height:100%;justify-content:center;left:0;opacity:0;padding:20px;position:fixed;top:0;transition:all .4s ease;visibility:hidden;width:100%;z-index:9999}.projects-popup.active{opacity:1;visibility:visible}.popup-content{background:linear-gradient(145deg,var(--card-bg) 0,rgba(53,99,233,.1) 100%);border:1px solid hsla(0,0%,100%,.1);border-radius:var(--border-radius-lg);box-shadow:0 20px 40px rgba(0,0,0,.3);max-height:none;max-width:500px;opacity:0;overflow:hidden;padding:3rem;position:relative;text-align:center;transform:translateY(30px) scale(.95);transition:all .5s cubic-bezier(.165,.84,.44,1);width:100%}.projects-popup.active .popup-content{opacity:1;transform:translateY(0) scale(1)}.popup-content:before{animation:rotate-gradient 25s linear infinite;background:radial-gradient(circle,rgba(53,99,233,.05) 0,transparent 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%;z-index:-1}.popup-close{cursor:pointer;height:30px;position:absolute;right:1.5rem;top:1.5rem;width:30px;z-index:10}.popup-close span{background-color:var(--text-color);height:2px;left:0;position:absolute;top:50%;transition:all .3s ease;width:100%}.popup-close span:first-child{transform:translateY(-50%) rotate(45deg)}.popup-close span:last-child{transform:translateY(-50%) rotate(-45deg)}.popup-close:hover span{background-color:var(--primary-color)}.popup-title{color:var(--primary-color);display:inline-block;font-size:1.8rem;margin-bottom:.75rem;position:relative}.popup-title:after{background-color:var(--primary-color);border-radius:3px;bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:50px}.popup-message{color:var(--text-secondary);font-size:1rem;line-height:1.5;margin-bottom:1.5rem}.popup-timer{display:flex;gap:1rem;justify-content:center;margin-bottom:1.5rem}.timer-item{flex-direction:column}.timer-item,.timer-value{align-items:center;display:flex}.timer-value{background:rgba(53,99,233,.1);border-radius:var(--border-radius-sm);box-shadow:0 5px 15px rgba(0,0,0,.1);color:var(--text-color);font-size:2rem;font-weight:700;height:65px;justify-content:center;margin-bottom:.5rem;overflow:hidden;position:relative;width:55px}.timer-value:before{animation:slide 2s linear infinite;background:linear-gradient(90deg,transparent,var(--primary-color),transparent);content:"";height:3px;left:0;position:absolute;top:0;width:100%}@keyframes slide{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.timer-label{color:var(--text-secondary);font-size:.85rem;letter-spacing:1px;text-transform:uppercase}.popup-btn{background-color:var(--primary-color);border:none;border-radius:var(--border-radius-md);box-shadow:0 5px 15px rgba(53,99,233,.3);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;overflow:hidden;padding:1rem 2rem;position:relative;transition:all .3s ease;z-index:1}.popup-btn:before{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);content:"";height:100%;left:0;position:absolute;top:0;transform:translateX(-100%);width:100%;z-index:-1}.popup-btn:hover{box-shadow:0 8px 20px rgba(53,99,233,.4);transform:translateY(-3px)}.popup-btn:hover:before{animation:btnShine 1.5s ease-in-out}@keyframes btnShine{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.popup-icon{height:130px;margin:0 auto 1.5rem;overflow:hidden;position:relative}.rocket{animation:rocketFloat 4s ease-in-out infinite;filter:drop-shadow(0 10px 15px rgba(0,0,0,.2));height:80px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:80px}@keyframes rocketFloat{0%,to{transform:translate(-50%,-50%)}50%{transform:translate(-50%,-65%)}}.rocket-body{height:80px;margin:0 auto;position:relative;width:40px}.body{background:linear-gradient(135deg,var(--primary-color),#4b7bec);border-top-left-radius:20px;height:60px;overflow:hidden;width:40px}.body,.body:before{border-top-right-radius:20px;position:absolute;top:0}.body:before{background:hsla(0,0%,100%,.1);content:"";height:40px;right:0;width:15px}.fin{background:linear-gradient(to bottom,var(--primary-dark),#3867d6);bottom:22px;box-shadow:0 5px 10px rgba(0,0,0,.1);height:20px;position:absolute;width:15px;z-index:-1}.fin-left{border-bottom-left-radius:50%;border-top-left-radius:50%;left:-15px;transform:skewY(10deg)}.fin-right{border-bottom-right-radius:50%;border-top-right-radius:50%;right:-15px;transform:skewY(-10deg)}.window{animation:windowGlow 2s ease-in-out infinite alternate;background:linear-gradient(45deg,#f8f9fa,#dfe6e9);border:3px solid var(--primary-dark);border-radius:50%;box-shadow:inset 0 0 5px rgba(0,0,0,.2);height:20px;left:10px;position:absolute;top:15px;width:20px}@keyframes windowGlow{0%{box-shadow:inset 0 0 5px rgba(0,0,0,.2)}to{box-shadow:inset 0 0 8px rgba(0,0,0,.3),0 0 8px hsla(0,0%,100%,.5)}}.exhaust-flame{animation:flameAnimation .2s infinite;background:linear-gradient(180deg,#ff9f43,#ee5253);border-bottom-left-radius:20px;border-bottom-right-radius:20px;filter:blur(1px);height:30px;left:6px;position:absolute;top:80px;width:28px;z-index:2}.exhaust-flame:before{background:hsla(0,0%,100%,.4);border-radius:50%;content:"";filter:blur(4px);height:60%;left:50%;position:absolute;top:30%;transform:translate(-50%);width:60%;z-index:3}@keyframes flameAnimation{0%,to{height:30px;opacity:.9}50%{height:35px;opacity:1}}.exhaust-fumes li{background-color:hsla(0,0%,100%,.5);border-radius:50%;box-shadow:0 0 10px hsla(0,0%,100%,.3);filter:blur(2px);height:7px;list-style:none;position:absolute;width:7px}.exhaust-fumes li:first-child{animation:fumeAnimation 2s infinite;bottom:-20px;height:15px;left:15px;width:15px}.exhaust-fumes li:nth-child(2){animation:fumeAnimation 2s .4s infinite;bottom:-15px;height:12px;left:8px;width:12px}.exhaust-fumes li:nth-child(3){animation:fumeAnimation 2s .6s infinite;bottom:-12px;height:10px;left:25px;width:10px}.exhaust-fumes li:nth-child(4){animation:fumeAnimation 2s .8s infinite;bottom:-10px;height:8px;left:15px;width:8px}.exhaust-fumes li:nth-child(5){animation:fumeAnimation 2s 1s infinite;bottom:-8px;height:6px;left:25px;width:6px}.exhaust-fumes li:nth-child(6){animation:fumeAnimation 2s 1.2s infinite;bottom:-5px;height:4px;left:18px;width:4px}.exhaust-fumes li:nth-child(7){animation:fumeAnimation 2s 1.4s infinite;bottom:-7px;height:5px;left:12px;width:5px}.exhaust-fumes li:nth-child(8){animation:fumeAnimation 2s 1.6s infinite;bottom:-9px;height:6px;left:22px;width:6px}@keyframes fumeAnimation{0%{filter:blur(2px);opacity:1;transform:translateY(0) scale(1)}50%{filter:blur(3px);opacity:.7}to{filter:blur(5px);opacity:0;transform:translateY(60px) scale(3)}}.star li{background-color:#fff;border-radius:50%;box-shadow:0 0 5px hsla(0,0%,100%,.8);filter:blur(.5px);list-style:none;position:absolute}.star li,.star li:first-child{animation:starTwinkle 3s infinite,starMove 30s linear infinite}.star li:first-child{height:3px;left:5%;top:20%;width:3px}.star li:nth-child(2){animation:starTwinkle 3s .3s infinite,starMove 45s linear infinite;height:2px;left:15%;top:30%;width:2px}.star li:nth-child(3){animation:starTwinkle 3s .6s infinite,starMove 35s linear infinite;height:4px;left:25%;top:10%;width:4px}.star li:nth-child(4){animation:starTwinkle 3s .9s infinite,starMove 40s linear infinite reverse;height:2px;right:25%;top:40%;width:2px}.star li:nth-child(5){animation:starTwinkle 3s 1.2s infinite,starMove 50s linear infinite reverse;height:3px;right:15%;top:15%;width:3px}.star li:nth-child(6){animation:starTwinkle 3s 1.5s infinite,starMove 55s linear infinite reverse;height:2px;right:5%;top:45%;width:2px}.star li:nth-child(7){animation:starTwinkle 3s 1.8s infinite,starMove 60s linear infinite;height:4px;right:20%;top:5%;width:4px}@keyframes starTwinkle{0%,to{opacity:.2;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes starMove{0%{transform:translateY(0)}to{transform:translateY(150px)}}.view-all-container{margin-top:3rem;text-align:center}.view-all-container .btn{display:inline-block;padding:1rem 2rem;transition:all .3s ease}.view-all-container .btn:hover{box-shadow:0 8px 20px rgba(53,99,233,.3);transform:translateY(-5px)}.about-bg-shapes,.contact-bg-shapes,.faq-bg-shapes,.footer-bg-shapes,.map-bg-shapes,.projects-bg-shapes,.skills-bg-shapes{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%;z-index:0}.about-shape,.contact-shape,.faq-shape,.footer-shape,.map-shape,.projects-shape,.skills-shape{filter:blur(1px);opacity:.1;position:absolute;transition:all .5s ease}:root{--shape-color-light:rgba(0,0,0,.1);--shape-color-dark:hsla(0,0%,100%,.1)}[data-theme=dark] .about-shape,[data-theme=dark] .contact-shape,[data-theme=dark] .faq-shape,[data-theme=dark] .footer-shape,[data-theme=dark] .map-shape,[data-theme=dark] .projects-shape,[data-theme=dark] .skills-shape{background-color:var(--shape-color-dark);border-color:var(--shape-color-dark)}.about-shape,.contact-shape,.faq-shape,.footer-shape,.map-shape,.projects-shape,.skills-shape{background-color:var(--shape-color-light);border-color:var(--shape-color-light)}.about-shape.circle{animation:about-bg-rotate 30s linear infinite;border:5px solid;border-radius:50%;height:220px;right:8%;top:12%;width:220px}.about-shape.triangle{animation:about-bg-float 18s ease-in-out infinite;border-bottom:173px solid;border-left:100px solid transparent;border-right:100px solid transparent;bottom:15%;height:0;left:10%;opacity:.06;width:0}.about-shape.dots{animation:about-bg-float 15s ease-in-out infinite reverse;background-image:radial-gradient(circle,currentColor 3px,transparent 0);background-size:25px 25px;height:250px;left:18%;opacity:.07;top:30%;width:150px}@keyframes about-bg-rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes about-bg-float{0%,to{transform:translateY(0)}50%{transform:translateY(-25px)}}.skills-shape.circle{animation:skills-rotate 25s linear infinite;border:4px solid;border-radius:50%;height:200px;left:5%;top:15%;width:200px}.skills-shape.square{animation:skills-float 15s ease-in-out infinite;border:4px solid;bottom:10%;height:150px;right:8%;transform:rotate(45deg);width:150px}@keyframes skills-rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes skills-float{0%,to{transform:rotate(45deg) translate(0)}50%{transform:rotate(45deg) translateY(-20px)}}.projects-shape.dots-1{animation:projects-float 15s ease-in-out infinite;height:200px;left:10%;top:20%;width:100px}.projects-shape.dots-1,.projects-shape.dots-2{background-image:radial-gradient(circle,currentColor 3px,transparent 0);background-size:20px 20px}.projects-shape.dots-2{animation:projects-float 18s ease-in-out infinite reverse;bottom:10%;height:100px;right:10%;width:200px}@keyframes projects-float{0%,to{transform:translate(0)}50%{transform:translateY(-30px)}}.map-shape.marker{animation:map-pulse 5s ease-in-out infinite;background-image:radial-gradient(circle at center,currentColor 60%,transparent 0);height:150px;right:15%;top:10%;width:150px}@keyframes map-pulse{0%,to{opacity:.05;transform:scale(1)}50%{opacity:.12;transform:scale(1.1)}}.contact-shape.envelope{animation:contact-float 12s ease-in-out infinite;border:3px solid;height:120px;left:8%;top:15%;transform:rotate(-15deg);width:180px}.contact-shape.phone{animation:contact-float 14s ease-in-out infinite reverse;border:3px solid;border-radius:15px;bottom:15%;height:180px;right:8%;width:100px}@keyframes contact-float{0%,to{transform:translateY(0) rotate(-15deg)}50%{transform:translateY(-20px) rotate(-15deg)}}.faq-shape.question-mark{animation:faq-float 13s ease-in-out infinite;background-image:radial-gradient(circle at top,currentColor 40px,transparent 0),linear-gradient(180deg,transparent 60px,currentColor 0,currentColor 120px,transparent 0);height:180px;opacity:.08;right:10%;top:20%;width:120px}.faq-shape.small-question{animation:faq-float 15s ease-in-out infinite reverse;background-image:radial-gradient(circle at top,currentColor 20px,transparent 0),linear-gradient(180deg,transparent 30px,currentColor 0,currentColor 60px,transparent 0);bottom:15%;height:90px;left:10%;opacity:.08;width:60px}@keyframes faq-float{0%,to{transform:translateY(0)}50%{transform:translateY(-25px)}}.footer-shape.wave{animation:wave-move 15s linear infinite;background-image:linear-gradient(45deg,transparent 33.333%,currentColor 0,currentColor 66.667%,transparent 0),linear-gradient(-45deg,transparent 33.333%,currentColor 0,currentColor 66.667%,transparent 0);background-size:30px 60px;height:80px;opacity:.08;top:-40px;width:100%}@keyframes wave-move{0%{background-position:0 0}to{background-position:300px 0}}footer:hover .footer-shape,section:hover .about-shape,section:hover .contact-shape,section:hover .faq-shape,section:hover .map-shape,section:hover .projects-shape,section:hover .skills-shape{filter:blur(.5px);opacity:.15}.project-details-popup{align-items:center;backdrop-filter:blur(8px);background-color:rgba(0,0,0,.85);display:flex;height:100%;justify-content:center;left:0;opacity:0;position:fixed;top:0;transition:all .4s ease-in-out;visibility:hidden;width:100%;z-index:9999}.project-details-popup.active{opacity:1;visibility:visible}.project-popup-content{background-color:var(--background-color);border-radius:15px;box-shadow:0 15px 40px rgba(0,0,0,.2);max-height:90vh;max-width:1000px;opacity:0;overflow-y:auto;padding:2.5rem;position:relative;transform:translateY(30px) scale(.95);transition:all .4s ease-in-out;width:90%}.project-details-popup.active .project-popup-content{opacity:1;transform:translateY(0) scale(1)}.project-popup-content::-webkit-scrollbar{width:6px}.project-popup-content::-webkit-scrollbar-track{background:rgba(0,0,0,.1);border-radius:10px}.project-popup-content::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:10px}.project-popup-header{border-bottom:1px solid rgba(var(--text-color-rgb),.1);margin-bottom:2rem;padding-bottom:1rem}.project-popup-header h3{color:var(--primary-color);display:inline-block;font-size:2rem;font-weight:700;margin-bottom:1rem;position:relative}.project-popup-header h3:after{background-color:var(--primary-color);bottom:-5px;content:"";height:3px;left:0;position:absolute;transition:width .3s ease;width:50px}.project-popup-header:hover h3:after{width:100%}.project-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.project-tags span{background-color:rgba(var(--primary-color-rgb),.1);border-radius:50px;color:var(--primary-color);display:inline-block;font-size:.85rem;font-weight:500;padding:.4rem 1rem;transition:all .3s ease}.project-tags span:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-3px)}.project-popup-body{display:grid;gap:2rem;grid-template-columns:1fr}@media screen and (min-width:768px){.project-popup-body{grid-template-columns:1fr 1fr}}.project-popup-image{border-radius:10px;box-shadow:0 5px 15px rgba(0,0,0,.1);overflow:hidden;position:relative}.project-popup-image:before{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);content:"";height:100%;left:-100%;position:absolute;top:0;transform:skewX(-25deg);transition:all .75s ease;width:50%;z-index:1}.project-popup-image:hover:before{animation:shine 1.5s infinite}@keyframes shine{to{left:150%}}.project-popup-image img{height:100%;object-fit:cover;transition:transform .5s ease;vertical-align:middle;width:100%}.project-popup-image:hover img{transform:scale(1.05)}.project-popup-info{display:flex;flex-direction:column;gap:1.5rem}.project-popup-description,.project-popup-details,.project-popup-features{background-color:rgba(var(--text-color-rgb),.03);border-radius:10px;padding:1.2rem;transition:all .3s ease}.project-popup-description:hover,.project-popup-details:hover,.project-popup-features:hover{box-shadow:0 5px 15px rgba(0,0,0,.05);transform:translateY(-3px)}.project-popup-info h4{color:var(--text-color);display:inline-block;font-size:1.2rem;font-weight:600;margin-bottom:.8rem;position:relative}.project-popup-info h4:after{background-color:var(--primary-color);bottom:-3px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:30px}.project-popup-info div:hover h4:after{width:100%}.project-popup-description p{color:var(--text-color);line-height:1.7;opacity:.9}.project-popup-details{display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}@media screen and (max-width:576px){.project-popup-details{grid-template-columns:1fr}}.project-detail-item h4{font-size:1rem;margin-bottom:.5rem}.project-detail-item p{color:var(--text-color);font-size:.95rem;opacity:.8}.project-popup-features ul{list-style:none;margin:0;padding:0}.project-popup-features li{color:var(--text-color);line-height:1.5;margin-bottom:.7rem;opacity:.9;padding-left:1.5rem;position:relative}.project-popup-features li:before{background-color:var(--primary-color);border-radius:50%;content:"";height:8px;left:0;position:absolute;top:.5rem;transition:all .3s ease;width:8px}.project-popup-features li:hover:before{opacity:.7;transform:scale(1.5)}.project-popup-footer{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.project-popup-footer .btn{align-items:center;display:flex;gap:.5rem;justify-content:center;transition:all .3s ease}.project-popup-footer .btn i{font-size:1.1rem;transition:transform .3s ease}.project-popup-footer .btn:hover i{transform:scale(1.2)}@media screen and (max-width:576px){.project-popup-footer{flex-direction:column}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.project-details-popup.active .project-popup-footer,.project-details-popup.active .project-popup-header,.project-details-popup.active .project-popup-image,.project-details-popup.active .project-popup-info{animation:fadeIn .5s ease-out forwards}