.about-img,.cta-btn,.hero,.scroll-indicator,.section-title{text-align:center}.about-text a,.cta-btn,a{text-decoration:none}.cta-btn,.scroll-text,.service-hero .cta-btn{text-transform:uppercase;text-transform:uppercase}h1,h2,h3,h4,p{margin-bottom:1rem}.cta-btn,.cta-btn:hover{color:var(--light);color:var(--light)}.cta-btn,.scroll-text{letter-spacing:1px}:root{--primary:#f57c00;--secondary:#333333;--accent:#f57c00;--text:#333333;--light:#ffffff;--dark:#333333;--success:#10b981;--morocco-red:#c1272d;--morocco-green:#006233}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}html{scroll-behavior:smooth}body{color:var(--text);background-color:var(--light);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{color:var(--secondary)}.tech-tag,a{color:var(--primary);transition:.3s}.hero-tag,a:hover{color:var(--accent)}.cta-btn,.cta-btn:hover{color:var(--light);color:#fff}.cta-btn{background:linear-gradient(135deg,var(--morocco-red),var(--accent));color:var(--light);box-shadow:0 4px 15px rgba(0,0,0,.2)}.cta-btn:hover{color:var(--light);box-shadow:0 6px 20px rgba(0,0,0,.3);background:linear-gradient(135deg,var(--accent),var(--morocco-red))}.cta-btn::after{content:"→";margin-left:8px;display:inline-block;transition:transform .3s}.contact-info h3:after,.section-title:after{display:block;height:3px;background:var(--accent);content:"";width:50px}.cta-btn:hover::after{transform:translateX(5px)}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.section{padding:5rem 0;position:relative;overflow:hidden}.section-title{margin-bottom:3rem;font-size:2.5rem;position:relative;opacity:0;transform:translateY(30px);transition:.8s}.about-content.active,.contact-form.active,.contact-info.active,.portfolio-grid.active,.section-title.active,.services-grid.active,.testimonial-grid.active{opacity:1;transform:translateY(0)}.section-title:after{margin:.5rem auto;transform:scaleX(0);transition:transform .5s .3s}.hero-tag.active:after,.section-title.active:after,.service-card:hover:before{transform:scaleX(1)}.portfolio-modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.85);backdrop-filter:blur(5px);z-index:1000;display:flex;justify-content:center;align-items:center;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}.portfolio-modal-backdrop.active{opacity:1;visibility:visible}.portfolio-modal{background-color:#fff;width:90%;max-width:800px;max-height:90vh;overflow-y:auto;border-radius:10px;padding:0;position:relative;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);transform:translateY(50px);opacity:0;transition:transform .5s,opacity .5s}.about-img,.contact,.cta-btn,.hero,.network-animation,.portfolio-item,.service-card,.submit-btn{overflow:hidden}.portfolio-cta a,.portfolio-modal-header{background:linear-gradient(135deg,var(--primary) 0,var(--accent) 100%)}.contact-form,.contact-info,.hero h1{transform:translateY(30px)}.portfolio-item:hover .portfolio-link,.portfolio-item:hover .portfolio-overlay h3,.portfolio-item:hover .portfolio-overlay p,.portfolio-modal-backdrop.active .portfolio-modal,.skill-tag.active{transform:translateY(0);opacity:1}.portfolio-modal-header{color:#fff;padding:1.5rem;border-radius:10px 10px 0 0;position:relative}.portfolio-modal-header h2{margin:0;font-size:1.8rem;color:#fff}.portfolio-modal-close{position:absolute;top:1rem;right:1rem;background:rgba(255,255,255,.2);border:none;width:40px;height:40px;border-radius:50%;color:#fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.3s}.about-img,.about-text a,.btn-center,.contact,.cta-btn,.devis-btn,.hero,.hero-container,.hero-content,.hero-content-wrapper,.hero-tag,.service-card h3,.services,.submit-btn{position:relative}.portfolio-modal-close:hover{background:rgba(255,255,255,.4);transform:rotate(90deg)}.portfolio-modal-body{padding:2rem}.portfolio-modal-image{width:100%;border-radius:5px;margin-bottom:1.5rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1)}.portfolio-details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:1.5rem}.portfolio-detail-item{background-color:rgba(245,124,0,.05);border-radius:5px;padding:1rem;display:flex;align-items:flex-start;transition:.3s}.contact-cta .devis-btn,.devis-btn{padding:12px 28px;font-weight:700;overflow:hidden}.portfolio-detail-item:hover{background-color:rgba(245,124,0,.1);transform:translateY(-5px)}.portfolio-detail-icon{color:var(--primary);font-size:1.5rem;margin-right:1rem;background:rgba(245,124,0,.1);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center}.devis-btn,.hero-buttons .cta-btn.primary{background:linear-gradient(135deg,var(--morocco-red),var(--accent))}.portfolio-detail-content h4{margin:0 0 .5rem;font-size:1rem;color:var(--secondary)}.portfolio-detail-content p{margin:0;font-size:.9rem}.tech-tag:hover{background-color:var(--primary);color:#fff;transform:translateY(-2px)}.portfolio-description,.portfolio-technologies{margin-bottom:1.5rem}.portfolio-cta{display:flex;justify-content:center;margin-top:2rem}.portfolio-cta a{color:#fff;padding:.8rem 1.5rem;border-radius:30px;font-weight:600;transition:.3s;display:inline-flex;align-items:center}.portfolio-cta a i{margin-left:.5rem;transition:transform .3s}.portfolio-cta a:hover{transform:translateY(-3px);box-shadow:0 10px 20px rgba(245,124,0,.2)}.portfolio-cta a:hover i{transform:translateX(3px)}.hero-buttons{display:flex;gap:20px;margin-top:2rem;justify-content:center;align-items:center}.hero-buttons .cta-btn{min-width:200px}.hero-buttons .cta-btn.secondary{background:rgba(255,255,255,.15);backdrop-filter:blur(5px);border:2px solid var(--light)}.devis-btn{display:inline-flex;align-items:center;color:var(--light);border-radius:50px;font-size:1rem;transition:.3s;z-index:1;box-shadow:0 6px 15px rgba(245,124,0,.3);border:2px solid transparent}.devis-btn:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,var(--accent),var(--morocco-red));opacity:0;z-index:-1;transition:opacity .5s}.about-img:hover:before,.contact-cta .devis-btn:hover:before,.devis-btn:hover:before,.portfolio-item:hover .portfolio-overlay{opacity:1}.devis-btn:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(245,124,0,.4)}.devis-arrow{margin-left:8px;transition:transform .3s}.devis-btn:hover .devis-arrow{transform:translateX(5px);animation:1.5s infinite pulse}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.7}}@media (max-width:576px){.hero-container{padding-top:60px}.hero-buttons{flex-direction:column;align-items:center;gap:15px}.hero-buttons .cta-btn{width:100%;max-width:280px;text-align:center;justify-content:center}.hero-content-wrapper{padding:1.5rem;width:92%;margin:0 auto}.hero h1{font-size:2.2rem;line-height:1.2}.hero p{font-size:1rem;margin-bottom:1.5rem}.hero p:first-of-type{font-size:1.1rem}.scroll-indicator{margin-top:2rem;position:relative;bottom:auto}}.btn-center{display:flex;justify-content:center;margin-top:25px;margin-bottom:30px;z-index:10}.contact{background-color:#f9f9f9;padding:5rem 0}.contact:before{content:"";position:absolute;bottom:0;right:0;width:40%;height:40%;background:linear-gradient(135deg,transparent 0,rgba(0,188,212,.05) 100%);border-radius:50% 0 0;z-index:0}.contact .section-title{margin-bottom:3rem;color:var(--secondary)}.contact-wrapper{display:flex;flex-direction:row;justify-content:space-between;gap:2rem;max-width:1100px;margin:0 auto;position:relative;z-index:1;width:100%}.contact-form{flex:1;position:relative;z-index:1;opacity:0;transition:.8s;order:1;min-width:45%}.contact-info{flex:1;background-color:rgba(255,255,255,.9);backdrop-filter:blur(10px);border-radius:10px;padding:2rem;box-shadow:0 10px 30px rgba(0,0,0,.05);position:relative;opacity:0;transition:.8s .2s;order:2;min-width:45%}.contact-socials a,.info-icon{width:40px;height:40px;border-radius:50%;display:flex}.contact-socials a,.cta-btn,.form-control,.form-label,.submit-btn,header{transition:.3s}.contact-info h3{font-size:1.75rem;margin-bottom:1rem;color:var(--secondary);position:relative}.contact-info h3:after{margin-top:.5rem}.contact-desc{margin-bottom:2rem;color:var(--text);font-size:1rem}.info-item{display:flex;align-items:flex-start;margin-bottom:1.5rem}.info-icon{background:linear-gradient(135deg,var(--morocco-red),var(--primary));align-items:center;justify-content:center;margin-right:1rem;flex-shrink:0;box-shadow:0 5px 15px rgba(245,124,0,.2)}.info-icon i{color:var(--light);font-size:1.2rem}.info-content h4{margin-bottom:.25rem;font-size:1.1rem;color:var(--secondary)}.info-content p{margin-bottom:0;color:var(--text)}.contact-cta{margin-top:2rem;margin-bottom:2rem}.contact-cta .devis-btn{background:linear-gradient(135deg,var(--morocco-red),var(--accent));color:var(--light);border-radius:50px;font-size:1rem;transition:.3s;position:relative;box-shadow:0 6px 15px rgba(0,0,0,.2)}.contact-cta .devis-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.3)}.contact-cta .devis-btn:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--accent),var(--morocco-red));opacity:0;transition:opacity .3s}.contact-socials{display:flex;gap:1rem}.contact-socials a{background-color:rgba(51,51,51,.1);align-items:center;justify-content:center;color:var(--secondary)}.contact-socials a:hover{transform:translateY(-5px);background-color:var(--primary);color:var(--light);box-shadow:0 5px 15px rgba(245,124,0,.3)}.form-group{margin-bottom:1.5rem;position:relative}.form-control{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:5px;font-size:1rem;background-color:rgba(255,255,255,.8)}.form-control:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px rgba(30,136,229,.2);background-color:#fff}.form-label{position:absolute;top:.75rem;left:.75rem;color:var(--text);pointer-events:none}.form-control:focus+.form-label,.form-control:not(:placeholder-shown)+.form-label{top:-.5rem;left:.5rem;font-size:.75rem;background-color:#fff;padding:0 .3rem;color:var(--primary)}textarea.form-control{height:150px;resize:vertical}.submit-btn{background-color:var(--primary);color:var(--light);padding:.75rem 1.5rem;border:none;border-radius:5px;font-weight:600;cursor:pointer;z-index:1}.about-text a:hover,.skill-tag{color:var(--primary)}.portfolio-link:before,.submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--accent);transition:.4s;z-index:-1}.cta-btn:hover:before,.portfolio-link:hover:before,.submit-btn:hover:before{left:0}.submit-btn:hover{transform:translateY(-3px);box-shadow:0 10px 20px rgba(0,0,0,.1)}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes underline{from{width:0}to{width:100%}}.floating{animation:3s ease-in-out infinite floating}@keyframes floating{0%,100%{transform:translateY(0)}50%{transform:translateY(-15px)}}header{position:fixed;top:0;left:0;width:100%;padding:1rem 0;z-index:1000}.about-content{display:flex;flex-wrap:wrap;align-items:center;gap:2rem;margin-top:2rem;opacity:0}.about-img{flex:1;min-width:300px}.about-img img{max-width:100%;border-radius:10px;box-shadow:0 15px 30px rgba(0,0,0,.1);width:100%;transition:transform .7s}.about-img img:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(0,0,0,.15)}.about-text{flex:2;min-width:300px}.skills,.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem}.skill-tag{background-color:rgba(245,124,0,.1)}.author-info h4,.hero,.hero h1,.portfolio-link:hover,.testimonials,.testimonials .section-title{color:var(--light)}.skill-tag:hover{background-color:var(--primary);color:#fff;transform:translateY(-3px);box-shadow:0 5px 15px rgba(245,124,0,.2)}.hero{height:100vh;display:flex;align-items:center;justify-content:center;background-image:url("../img/bannermw.webp");background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;padding:0}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(51,51,51,.5) 0,rgba(51,51,51,.3) 100%);z-index:1}.network-animation{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}#networkCanvas{position:absolute;top:0;left:0;width:100%;height:100%}.hero-container{z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;padding-top:120px}.cta-btn,.hero-tag{display:inline-block;font-weight:600}.hero-content-wrapper{color:#fff;background:rgba(51,51,51,.8);border-radius:10px;backdrop-filter:none;box-shadow:0 10px 30px rgba(0,0,0,.2);max-width:800px;width:90%;padding:2rem;margin:0 1rem}.cta-btn,.hero-tag:after{background-color:var(--accent)}.hero-content{max-width:800px;z-index:2}.hero h1{margin-bottom:1rem;opacity:0;animation:1s .5s forwards fadeInUp}.cta-btn,.hero p{transform:translateY(20px);opacity:0}.hero p{font-size:1.2rem;margin-bottom:2rem;animation:1s .8s forwards fadeInUp;max-width:900px;margin-left:auto;margin-right:auto;line-height:1.6;hyphens:none}.hero p:first-of-type{font-size:1.25rem;font-weight:500;letter-spacing:.5px}@media (max-width:992px){.hero p{font-size:1.1rem;max-width:100%}.hero p:first-of-type{font-size:1.15rem}.hero-content-wrapper{padding:2rem;margin:0 1rem}.hero h1{font-size:2.8rem}}.hero h1{font-size:2.8rem}@media (max-width:576px){.hero-content-wrapper{padding:1.5rem;margin:0 1rem;width:calc(100% - 2rem)}.hero h1{font-size:2.2rem;line-height:1.2}.hero p{font-size:1rem;margin-bottom:1.5rem}.hero p:first-of-type{font-size:1.1rem}.btn-center{margin-top:15px;margin-bottom:20px}.cta-btn{padding:.75rem 1.25rem;font-size:.95rem;width:100%;max-width:300px}}@media (max-height:700px){.hero{height:auto;min-height:100vh;padding-top:100px;padding-bottom:50px}}.hero-tag:after{content:"";position:absolute;width:0;height:2px;bottom:0;left:0;animation:1.5s 1.2s forwards underline}.cta-btn{animation:1s 1s forwards fadeInUp;z-index:1}.cta-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--primary);transition:.4s;z-index:-1}.about-img:before,.service-card h3:after,.service-card:before,.services:before{position:absolute;left:0;content:""}.cta-btn:hover{transform:translateY(-5px) scale(1.03);box-shadow:0 12px 22px rgba(0,0,0,.12)}.about{background-color:var(--light)}.about-content{display:flex;align-items:center;gap:4rem;opacity:1;transform:translateY(0);transition:.8s}.about-img{flex:1;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.1);transition:.5s}.about-img:hover,.portfolio-item:hover{transform:translateY(-10px);box-shadow:0 15px 40px rgba(0,0,0,.2)}.about-text,.about-text.active{transform:translateX(0);opacity:1}.about-img:before{top:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(245,124,0,.4) 0,rgba(51,51,51,.5) 100%);z-index:1;opacity:0;transition:opacity .5s}.about-img:hover img{transform:scale(1.05)}.about-text{flex:1;padding-left:2rem;transition:.8s;color:var(--text)}.about-text p{color:var(--text);font-size:1.1rem;line-height:1.7;margin-bottom:1.2rem}.about-text a{color:var(--accent);font-weight:600;transition:.3s}.skills{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}.skill-tag{background-color:var(--primary);color:var(--light);padding:.4rem .8rem;border-radius:20px;font-size:.85rem;font-weight:500;transition:.3s;transform:translateY(0);opacity:1}.portfolio-item,.service-card{position:relative;border-radius:10px}.skill-tag:hover{background-color:var(--accent);transform:translateY(-5px) scale(1.05)}.services{background-color:#f1f5f9}.services:before{top:0;width:100%;height:100px;background:linear-gradient(to bottom,var(--light) 0,transparent 100%);z-index:1}.portfolio-grid,.services-grid,.testimonial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;opacity:0;transform:translateY(30px);transition:.8s}.service-card{background-color:#fff;padding:2rem;box-shadow:0 10px 30px rgba(0,0,0,.05);transition:.4s;z-index:1;height:100%}.service-card:before{top:0;width:100%;height:5px;background:var(--primary);z-index:-1;transform:scaleX(0);transform-origin:left;transition:transform .4s}.service-card:hover{transform:translateY(-10px);box-shadow:0 15px 40px rgba(0,0,0,.1)}.service-icon{font-size:2.5rem;color:var(--accent);margin-bottom:1.5rem;transition:.3s}.service-card:hover .service-icon{transform:scale(1.2);color:var(--primary)}.service-card h3{margin-bottom:1rem;padding-bottom:.5rem}.service-card h3:after{bottom:0;width:50px;height:2px;background:var(--accent);transition:width .3s}.service-card:hover h3:after{width:100%}.portfolio-item{height:auto;min-height:250px;box-shadow:0 10px 30px rgba(0,0,0,.1);transition:.5s}.portfolio-overlay,.testimonials:before{position:absolute;width:100%;top:0;left:0}.portfolio-img{width:100%;height:100%;object-fit:contain;transition:transform .7s;min-height:250px;display:block}.portfolio-overlay{height:100%;background:linear-gradient(135deg,rgba(245,124,0,.9) 0,rgba(51,51,51,.9) 100%);display:flex;flex-direction:column;justify-content:center;align-items:center;opacity:0;transition:opacity .5s;padding:1.5rem;text-align:center;overflow:auto}.portfolio-link,.testimonial-card,.testimonials{position:relative;overflow:hidden}.portfolio-overlay-content{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%}.portfolio-link,.portfolio-overlay h3,.portfolio-overlay p{transform:translateY(20px);opacity:0;transition:.3s}.portfolio-overlay h3{transition-delay:0.1s;color:var(--light);margin-bottom:.5rem}.portfolio-overlay p{transition-delay:0.2s;color:var(--light);font-size:.9rem;margin-bottom:1rem}.portfolio-item:hover .portfolio-img{transform:scale(1.1)}.portfolio-link{display:inline-block;padding:.7rem 1.5rem;background-color:var(--light);color:var(--primary);border-radius:5px;font-weight:500;font-size:.9rem;transition:.3s;z-index:1;white-space:nowrap;margin-top:auto;margin-bottom:5px}.testimonials{background-color:var(--secondary)}.testimonials:before{content:"";height:100%;background:linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.7)),url("../img/photo-1486551937199-baf066858de7.webp") center/cover;opacity:.08;z-index:0}.testimonial-text,.testimonials .container{position:relative;z-index:1}.testimonial-card{background-color:rgba(255,255,255,.05);padding:2rem;border-radius:10px;transition:.5s;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.testimonial-card:hover{transform:translateY(-10px);background-color:rgba(255,255,255,.1)}.testimonial-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:0;background:var(--accent);transition:height .5s}.testimonial-card:hover:before{height:100%}.testimonial-text{font-style:italic;margin-bottom:1.5rem}.testimonial-author{display:flex;align-items:center;margin-top:1.5rem}.avatar-container{width:50px;height:50px;border-radius:50%;background-color:var(--accent);display:flex;justify-content:center;align-items:center;margin-right:1rem;color:#fff;font-size:1.5rem}.author-info{flex:1}.author-info h4{margin-bottom:.25rem;font-size:1rem;font-weight:600}.author-info p{font-size:.9rem;color:var(--accent);margin-bottom:0}.quote-icon{position:absolute;top:1rem;right:1rem;font-size:2rem;opacity:.2;color:var(--accent);transition:.3s}.feature-list li,.scroll-icon,.scroll-indicator,a{position:relative}.tech-tag,a{color:var(--primary)}.testimonial-card:hover .quote-icon{opacity:.4;transform:rotate(15deg)}.portfolio-description h3,.portfolio-features h3,.portfolio-technologies h3{margin-bottom:1rem;font-size:1.2rem;color:var(--secondary)}.tech-tag{background-color:rgba(245,124,0,.1);padding:.5rem 1rem;border-radius:50px;font-size:.8rem;font-weight:500;display:inline-flex;align-items:center}.tech-tag i{margin-right:.5rem}.portfolio-features{margin-top:1.5rem}.feature-list{list-style:none;padding:0;margin:0}.feature-list li{margin-bottom:.75rem;padding-left:1.5rem}.feature-list li:before{content:"\f00c";font-family:"Font Awesome 5 Free";font-weight:900;color:var(--primary);position:absolute;left:0}.scroll-indicator{margin-top:3rem;z-index:5}.scroll-text{font-size:12px;color:var(--light);display:block;margin-bottom:5px}.scroll-icon{width:30px;height:50px;border:2px solid var(--light);border-radius:25px;display:block;margin:0 auto}.scroll-icon:before{content:"";position:absolute;top:6px;left:50%;width:6px;height:6px;margin-left:-3px;background-color:var(--light);border-radius:50%;animation:1.5s infinite scrollDown}@keyframes scrollDown{0%{transform:translateY(0);opacity:1}100%{transform:translateY(25px);opacity:0}}@keyframes bounce{0%,100%,20%,50%,80%{transform:translateY(0) translateX(-50%)}40%{transform:translateY(-15px) translateX(-50%)}60%{transform:translateY(-7px) translateX(-50%)}}@media (max-width:768px){.contact-wrapper{flex-direction:column}.dropdown-menu a:hover,.nav-links a:hover{color:var(--accent);transform:translateX(5px)}.footer-content,.portfolio-details-grid,.portfolio-grid{grid-template-columns:1fr}.nav-links a{color:var(--light);display:flex;align-items:center;padding:.7rem 0;font-weight:600;font-size:1.3rem;letter-spacing:.5px;transition:.3s;text-shadow:0 1px 2px rgba(0,0,0,.5)}.nav-links li.active{border-left:3px solid var(--accent);padding-left:.5rem}.nav-links li.active a{color:var(--accent)}.dropdown-menu a,.dropdown-menu li:not(.active) a{color:var(--light)}.dropdown-menu li.active{background-color:rgba(255,255,255,.1);border-left:3px solid var(--accent)}.dropdown-menu li:not(.active){background-color:transparent;border-left:none}.hamburger{display:block;cursor:pointer;background:0 0;border:none;padding:0;z-index:1001}.hamburger-box{width:30px;height:24px;display:inline-block;position:relative}.hamburger-inner,.hamburger-inner::after,.hamburger-inner::before{display:block;width:30px;position:absolute;height:3px;background-color:var(--light);border-radius:3px}.hamburger-inner{top:50%;margin-top:-2px;transition:background-color 125ms ease-in 175ms}.hamburger-inner::after,.hamburger-inner::before{content:"";transition:transform 275ms}.hamburger-inner::before{top:-10px}.hamburger-inner::after{bottom:-10px}.menu-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.7);z-index:998;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.nav-links a:hover{background-color:rgba(51,51,51,.5);padding-left:10px;border-radius:4px}.dropdown-menu{position:static;width:100%;background-color:rgba(0,0,0,.2);border-radius:8px;box-shadow:none;padding:0;max-height:0;overflow:hidden;transition:.4s;margin-top:.5rem;opacity:1;visibility:visible;transform:none;border-left:2px solid var(--accent)}.has-dropdown.active .dropdown-menu{max-height:500px;padding:.5rem 0;animation:.3s forwards fadeInDown}@keyframes fadeInDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-menu li{margin:0}.dropdown-menu a{padding:.7rem 1.5rem .7rem 1rem;font-size:1.1rem;letter-spacing:.3px;opacity:1;font-weight:500}.dropdown-menu a:hover{background-color:rgba(255,255,255,.15);border-left:2px solid var(--accent);padding-left:12px}.has-dropdown>a{display:flex;justify-content:space-between;align-items:center;width:100%}.nav-links a:before{display:none}.hamburger{display:flex;align-items:center;justify-content:center;position:absolute;right:0;top:50%;transform:translateY(-50%);margin:0}.section{padding:4rem 0}.hero{padding-top:120px}header{height:80px}.hamburger::before{content:"";position:absolute;top:-8px;left:-10px;right:-10px;bottom:-8px;background-color:rgba(51,51,51,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:8px;z-index:-1;opacity:.85}.hamburger span{display:block;width:30px;height:3px;margin:5px auto;background-color:var(--light);border-radius:3px;transition:.3s;box-shadow:0 0 5px rgba(255,255,255,.3)}.portfolio-grid{gap:1.5rem}.portfolio-img,.portfolio-item{min-height:250px}.portfolio-overlay{padding:1.25rem}.portfolio-overlay h3{font-size:1.2rem;margin-bottom:.5rem}.portfolio-overlay p{font-size:.85rem;margin-bottom:1rem;max-height:80px;overflow-y:auto}@keyframes mobileBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}}.cta-btn,.nav-links a,.outline-btn,a{transition:.3s}a:hover{color:var(--primary-hover)}.cta-btn{background-color:var(--primary);border:2px solid var(--primary-hover);padding:.8rem 1.8rem;border-radius:4px;font-weight:600;display:inline-block;cursor:pointer}.cta-btn:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 6px 12px rgba(0,0,0,.15)}.service-hero .cta-btn{padding:12px 32px;font-size:1.1rem;font-weight:700;letter-spacing:.5px;margin-top:1.5rem;border-radius:4px;background-color:var(--primary);color:#fff;border:2px solid var(--primary-hover);transition:.3s cubic-bezier(.4, 0, .2, 1)}.service-hero .cta-btn:hover{background-color:var(--primary-hover);transform:translateY(-3px);box-shadow:0 8px 15px rgba(0,0,0,.2)}.outline-btn{background-color:transparent;color:var(--primary);border:2px solid var(--primary);padding:.8rem 1.5rem;border-radius:4px;font-weight:600}.highlight,.outline-btn:hover{background-color:rgba(210,105,0,.1)}.outline-btn:hover{color:var(--primary-hover);border-color:var(--primary-hover)}.nav-links a{color:var(--light);padding:.5rem 1rem;border-radius:4px}.nav-links a:hover{background-color:rgba(255,255,255,.1);color:var(--accent)}.content a{color:var(--primary);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.content a:hover{color:var(--primary-hover);text-decoration-thickness:2px}button,input[type=button],input[type=submit]{background-color:var(--primary);color:#fff;border:2px solid var(--primary-hover);padding:.6rem 1.2rem;border-radius:4px;cursor:pointer;font-weight:500;transition:.3s}button:hover,input[type=button]:hover,input[type=submit]:hover{background-color:var(--primary-hover)}.highlight{padding:.2rem .4rem;border-radius:3px;color:var(--primary)}