.hero-section{flex-direction:column;justify-content:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-content{flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.hero-text{opacity:0;flex:300px;padding-right:30px;transition:all .8s ease-out;transform:translate(-50px)}.hero-title{margin-bottom:20px;font-size:clamp(2.5rem,5vw,3.5rem);font-weight:800;line-height:1.2}.highlight{color:var(--primary-color);position:relative}.highlight:after{content:"";z-index:-1;background-color:#3498db4d;width:100%;height:10px;position:absolute;bottom:5px;left:0}.hero-subtitle{color:var(--primary-dark);margin-bottom:25px;font-size:clamp(1.2rem,3vw,1.8rem);font-weight:600}.hero-description{max-width:600px;margin-bottom:30px;font-size:1.1rem;line-height:1.6}.hero-buttons{flex-wrap:wrap;gap:15px;display:flex}.hero-image{opacity:0;flex:300px;transition:all .8s ease-out;position:relative;transform:translate(50px)}.hero-text.animate,.hero-image.animate{opacity:1;transform:translate(0)}.image-wrapper{width:300px;max-width:100%;margin:0 auto;position:relative}.profile-img{width:100%;box-shadow:var(--shadow);z-index:1;border-radius:20px;position:relative}.shape-overlay{border:3px solid var(--primary-color);z-index:0;border-radius:20px;width:100%;height:100%;position:absolute;top:-15px;right:-15px}@media (max-width:992px){.hero-text,.hero-image{text-align:center;flex:100%;padding-right:0}.hero-image{margin-top:50px}.hero-buttons{justify-content:center}.hero-description{margin-left:auto;margin-right:auto}}@media (max-width:768px){.hero-content{flex-direction:column-reverse;gap:30px}.image-wrapper{width:250px;margin-top:20px}}@media (max-width:576px){.hero-buttons{flex-direction:column;gap:10px;width:100%}.hero-section{min-height:auto;padding-top:80px}.hero-buttons .btn{text-align:center;width:100%}}
.about-content{box-sizing:border-box;flex-wrap:wrap;align-items:center;gap:50px;width:100%;display:flex}.about-image{flex:300px}.about-img{width:100%;box-shadow:var(--shadow);border-radius:20px}.about-text{flex:300px}.about-text h3{color:var(--primary-color);margin-bottom:20px;font-size:2rem}.about-text p{margin-bottom:30px;line-height:1.6}.skills{margin-top:30px}.skill-item{opacity:0;margin-bottom:20px;transition:all .6s ease-out;transform:translateY(20px)}.skill-item.animate{opacity:1;transform:translateY(0)}.skill-info{justify-content:space-between;margin-bottom:5px;display:flex}.progress{background-color:#e9ecef;border-radius:5px;height:10px;overflow:hidden}.progress-bar{background-color:var(--primary-color);will-change:width;border-radius:5px;height:100%;transition:width 1s ease-in-out}.about-section{overflow-anchor:none}@media (max-width:992px){.about-content{gap:30px}}@media (max-width:768px){.about-image,.about-text{flex:100%}}
.services-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;display:grid}.service-card{background-color:var(--card-bg);text-align:center;box-shadow:var(--shadow);opacity:0;border-radius:15px;padding:30px;transition:all .8s ease-out;transform:translateY(-40px)}.service-card.animate{opacity:1;transform:translateY(0)}.service-icon{width:80px;height:80px;color:var(--primary-color);transition:var(--transition);background-color:#3498db1a;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;font-size:2rem;display:flex}.service-card h3{margin-bottom:15px;font-size:1.5rem}
.projects-filter{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:40px;display:flex}.filter-btn{border:2px solid var(--primary-color);color:var(--primary-color);cursor:pointer;transition:var(--transition);background-color:#0000;border-radius:50px;padding:8px 20px;font-weight:600}.filter-btn.active,.filter-btn:hover{background-color:var(--primary-color);color:#fff}.projects-section{margin:0 auto;padding:20px 10px}.projects-grid{grid-template-columns:repeat(3,1fr);gap:10px;max-width:1200px;margin:0 auto;display:grid}@media (max-width:768px){.projects-section{padding:15px}.projects-grid{grid-template-columns:repeat(2,1fr);gap:10px}}@media (max-width:480px){.projects-section{padding:10px}.projects-grid{grid-template-columns:repeat(1,1fr);gap:10px}}.project-card{width:100%;max-width:350px;box-shadow:var(--shadow);opacity:0;border-radius:15px;margin:0 auto;transition:all .8s ease-out;overflow:hidden;transform:translate(75px)}.project-card.animate{opacity:1;transform:translate(0)}.project-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0003}.project-image{height:250px;position:relative;overflow:hidden}.project-image img{object-fit:cover;width:100%;height:100%;transition:var(--transition)}.project-card:hover .project-image img{transform:scale(1.3)}.project-overlay{background:linear-gradient(to top,var(--primary-color),transparent);opacity:0;width:100%;height:100%;transition:var(--transition);flex-direction:column;justify-content:flex-end;padding:20px;display:flex;position:absolute;top:0;left:0}.project-card:hover .project-overlay{opacity:1}.project-overlay h3{color:#fff;margin-bottom:5px;font-size:1.5rem}.project-overlay p{color:#fffc;margin-bottom:15px;font-size:.9rem}.view-project{color:#fff;transition:var(--transition);border-bottom:2px solid #fff;align-self:flex-start;padding-bottom:5px;font-weight:600;text-decoration:none}.view-project:hover{padding-left:10px}@media (max-width:576px){.projects-filter{flex-direction:column;align-items:center}.filter-btn{width:100%;max-width:200px}}
.contact-content{box-sizing:border-box;flex-wrap:wrap;gap:50px;width:100%;display:flex}.contact-info{flex:300px}.contact-info h3{color:var(--primary-color);margin-bottom:20px;font-size:2rem}.contact-info p{margin-bottom:30px;line-height:1.6}.info-item{align-items:center;margin-bottom:20px;display:flex}.info-item .iconStyle2{width:50px;height:50px;color:var(--primary-color);background-color:#3498db1a;border-radius:50%;justify-content:center;align-items:center;margin-right:15px;font-size:1.2rem;display:flex}.info-item a{color:var(--primary-color);text-decoration:none!important}.social-links{gap:15px;margin-top:30px;display:flex}.social-links a{width:40px;height:40px;color:var(--primary-color);transition:var(--transition);background-color:#3498db1a;border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.social-links a:hover{background-color:var(--primary-color);transform:translateY(-5px)}.social-links a:hover .iconStyle{color:#fff!important}.contact-form{background-color:var(--card-bg);box-shadow:var(--shadow);border-radius:15px;flex:300px;padding:30px}.contact-form form{text-align:center}.contact-form form button{cursor:pointer}.form-group{opacity:0;margin-bottom:20px;transition:all .4s ease-out;transform:translate(-15px)}.form-group.animate{opacity:1;transform:translate(0)}.form-group:first-child{transition-delay:.1s}.form-group:nth-child(2){transition-delay:.2s}.form-group:nth-child(3){transition-delay:.3s}.form-group:nth-child(4){transition-delay:.4s}.form-control{width:100%;transition:var(--transition);background-color:var(--bg-color);color:var(--text-color);border:1px solid #ddd;border-radius:5px;padding:12px 15px;font-size:1rem}.form-control::placeholder{color:var(--text-color);opacity:.5}.form-control:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #3498db33}textarea.form-control{resize:vertical;min-height:150px}@media (max-width:992px){.contact-content{gap:30px}}@media (max-width:768px){.contact-info,.contact-form{flex:100%}.contact-form{padding:20px}}
.loading-overlay{background-color:rgba(var(--bg-color),.85);z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.loading-overlay.full-screen{position:fixed}.modern-loader{flex-direction:column;align-items:center;gap:20px;display:flex;position:relative}.modern-loader.small{transform:scale(.7)}.modern-loader.medium{transform:scale(1)}.modern-loader.large{transform:scale(1.3)}.loader-circle{background:conic-gradient(var(--primary-color)0%,var(--primary-dark)50%,transparent 50%,transparent 100%);border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;animation:1.5s linear infinite rotate;display:flex}.inner-circle{background-color:var(--card-bg);border-radius:50%;width:45px;height:45px}.pulse-dots{gap:10px;display:flex}.pulse-dot{background-color:var(--primary-color);border-radius:50%;width:12px;height:12px;animation:1.4s ease-in-out infinite pulse}.dot-1{animation-delay:0s}.dot-2{animation-delay:.2s}.dot-3{animation-delay:.4s}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.5;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}
.footer{background-color:var(--secondary-color);color:#fff;padding:60px 0 0;position:relative}.footer-container{max-width:1200px;margin:0 auto;padding:0 20px}.footer-row{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;margin-bottom:40px;display:grid}.footer-brand{margin-bottom:30px}.footer-logo{color:#fff;margin-bottom:10px;font-size:2.2rem;font-weight:700}.footer-tagline{opacity:.8;margin-bottom:20px;line-height:1.6}.footer-social{gap:15px;display:flex}.social-link{color:#fff;width:40px;height:40px;transition:var(--transition);background-color:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;display:flex}.social-link:hover{background-color:var(--primary-color);transform:translateY(-3px)}.footer-title{margin-bottom:20px;padding-bottom:10px;font-size:1.2rem;font-weight:600;position:relative}.footer-title:after{content:"";background-color:var(--primary-color);width:50px;height:2px;position:absolute;bottom:0;left:0}.footer-links{list-style:none}.footer-links li{margin-bottom:12px}.footer-links a{color:#fffc;transition:var(--transition);text-decoration:none;display:inline-block}.footer-links a:hover{color:#fff;transform:translate(5px)}.contactInfo{list-style:none}.contactInfo li{opacity:.8;align-items:center;gap:10px;margin-bottom:15px;display:flex}.contactInfo a{color:#fff;text-decoration:none}.contactInfo a p{vertical-align:bottom;margin-left:5px;display:inline}.contactInfo .iconStyle{color:var(--primary-color);font-size:1.2rem}.newsletter-form{margin-top:20px;display:flex}.newsletter-form input{color:#fff;background-color:#ffffff1a;border:none;border-radius:5px 0 0 5px;flex:1;padding:12px 15px}.newsletter-form input::placeholder{color:#fff9}.newsletter-form input:focus{background-color:#fff3;outline:none}.send-btn{background-color:var(--primary-color);color:#fff;cursor:pointer;transition:var(--transition);border:none;border-radius:0 5px 5px 0;padding:0 20px}.send-btn:hover{background-color:var(--primary-dark)}.footer-copyright{border-top:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:20px 0;display:flex}.footer-copyright p{opacity:.8;margin:0}.footer-legal{gap:20px;display:flex}.footer-legal a{color:#fffc;transition:var(--transition);text-decoration:none}.footer-legal a:hover{color:var(--primary-color)}@media (max-width:768px){.footer-row{grid-template-columns:1fr;gap:30px}.footer-copyright{text-align:center;flex-direction:column;gap:10px}.footer-legal{justify-content:center}}#current-year{margin-left:10px}
.settings-gear{background-color:var(--primary-color);color:#fff;cursor:pointer;z-index:10;width:50px;height:50px;box-shadow:var(--shadow);transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;top:30px;right:30px}.settings-gear:hover{background-color:var(--primary-dark);transform:rotate(45deg)}.settings-gear i{font-size:24px;animation:3s linear infinite paused spin}.settings-gear:hover i{animation-play-state:running}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.settings-panel{background-color:var(--card-bg);z-index:999;width:400px;height:100vh;transition:var(--transition);padding:20px;position:fixed;top:0;right:-400px;overflow-y:auto;box-shadow:-5px 0 15px #0000001a}.settings-panel.active{pointer-events:auto;right:0}.settings-header{border-bottom:1px solid #0000001a;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;display:flex}.settings-header h5{color:var(--primary-color);margin:0;font-size:1.5rem}.close-btn{cursor:pointer;transition:var(--transition);background:0 0;border:none;font-size:2rem;color:#000!important}:root[data-theme=dark] .close-btn,[data-theme=dark] .close-btn{color:#fff!important}.close-btn:hover{transform:rotate(90deg);color:var(--accent-color)!important}.theme-toggle-container{background-color:#0000000d;border-radius:30px;grid-template-columns:repeat(3,1fr);margin-bottom:20px;padding:4px;display:grid;position:relative}[data-theme=dark] .theme-toggle-container{background-color:#ffffff1a}.theme-toggle-indicator{background-color:var(--card-bg);z-index:1;border-radius:26px;width:calc(33.3333% - 2.66667px);transition:transform .3s cubic-bezier(.4,0,.2,1);position:absolute;top:4px;bottom:4px;left:0;box-shadow:0 2px 5px #0000001a}.theme-toggle-indicator[data-active=light]{transform:translate(4px)}.theme-toggle-indicator[data-active=dark]{transform:translate(calc(4px + 100%))}.theme-toggle-indicator[data-active=system]{transform:translate(calc(4px + 200%))}.theme-toggle-btn{z-index:2;text-align:center;color:var(--text-color);cursor:pointer;background:0 0;border:none;padding:10px 0;font-size:1.1rem;font-weight:500;transition:color .3s,font-weight .3s;position:relative}.theme-toggle-btn.active{color:var(--primary-color);font-weight:700}.overlay{z-index:998;opacity:0;visibility:hidden;width:100%;height:100%;transition:var(--transition);background-color:#00000080;position:fixed;top:0;left:0}.overlay.active{opacity:1;visibility:visible;pointer-events:auto}@media (max-width:992px){.settings-panel{width:350px}}@media (max-width:768px){.settings-panel{width:100%;max-width:350px}}@media (max-width:576px){.settings-gear{width:40px;height:40px;top:20px;right:20px}}
.scroll-indicator{color:var(--primary-color);cursor:pointer;opacity:1;z-index:997;flex-direction:column;align-items:center;transition:opacity .3s;animation:2s infinite bounce;display:flex;position:fixed;bottom:30px;left:50%;transform:translate(-50%)}.scroll-indicator.hidden{opacity:0;pointer-events:none}.scroll-indicator i{margin-top:5px;font-size:1.5rem}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)translate(-50%)}40%{transform:translateY(-20px)translate(-50%)}60%{transform:translateY(-10px)translate(-50%)}}
