*{margin:0;padding:0;box-sizing:border-box}.container{width:100%;max-width:1300px;margin:0 auto;padding:0 20px}h1,h2,h3,h4{font-weight:700;line-height:1.2;margin-bottom:15px}p{margin-bottom:15px}a{text-decoration:none;color:var(--color-primary);transition:var(--transition)}a:hover{color:var(--color-secondary)}img{max-width:100%;height:auto}.cta-button{font-family:var(--font-primary);display:inline-block;background:var(--color-accent);color:var(--color-white);padding:1rem 2rem;border-radius:50px;text-decoration:none;font-weight:600;font-size:1.1rem;transition:all 0.3s ease;position:relative;overflow:hidden}.cta-button::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / .2),transparent);transition:left 0.5s ease}.cta-button:hover::before{left:100%}.cta-button:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgb(255 108 0 / .3);color:var(--color-white)}.hero{padding:150px 0 80px;background-color:var(--color-navy);color:var(--color-white);position:relative;overflow:hidden}.hero::before{content:'';position:absolute;top:0;right:0;width:40%;height:100%;z-index:1}.hero .container{position:relative;z-index:2;display:flex;flex-direction:column}.hero-content{max-width:1000px;margin-bottom:50px}.hero h1{font-family:var(--font-primary);font-size:48px;margin-bottom:20px;line-height:1.2}.hero .subtitle{font-size:18px;margin-bottom:30px;opacity:.9}.gallery-preview{display:flex;gap:20px;margin-top:30px}.featured-item{position:relative;border-radius:10px;background-size:cover;background-position:center;transition:var(--transition);box-shadow:var(--box-shadow);cursor:pointer}.featured-item::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,rgb(0 59 111 / .1) 0%,rgb(0 59 111 / .7) 100%)}.featured-item:hover{transform:translateY(-10px);box-shadow:var(--box-shadow-hover)}.main-feature{flex:1;min-height:400px;transition:all 0.3s ease}.main-feature:hover i,.featured-item:hover i{transform:translateX(5px)}.featured-grid{flex:1;display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.featured-grid .featured-item{min-height:190px;transition:all 0.3s ease}.feature-badge{font-family:var(--font-primary);position:absolute;top:-15px;left:20px;background-color:var(--color-accent);color:var(--color-white);padding:5px 15px;border-radius:50px;font-size:12px;font-weight:600;z-index:2}.feature-content{position:absolute;bottom:0;left:0;width:100%;padding:0 20px;z-index:2;color:var(--color-white);transition:all 0.3s ease;text-shadow:#1A1A1A 1px 1px 2px}.feature-content h3,.feature-content h4{color:var(--color-white)}.featured-grid p{margin:0;color:var(--color-white)}.feature-link{display:inline-flex;align-items:center;color:var(--color-white);font-weight:600;margin-top:10px}.feature-link i{margin-left:5px;transition:var(--transition)}.feature-link:hover i{transform:translateX(5px)}.view-all{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);display:flex;align-items:flex-start;justify-content:center;text-align:left}.view-all::before{display:none}.view-all .feature-content{text-align:left}@media (max-width:1200px){.gallery-preview{flex-direction:column}.main-feature{min-height:350px;margin-bottom:20px}}@media (max-width:992px){.hero h1{font-size:36px}.featured-grid{grid-template-columns:1fr}.featured-grid .featured-item{min-height:160px}}@media (max-width:768px){.hero h1{font-size:32px}.hero .subtitle{font-size:16px}.feature-content{padding:20px}.feature-content h3{font-size:18px}.feature-content h4{font-size:16px}.featured-grid .featured-item p{display:none}.view-all p{display:block}}@media (max-width:576px){.hero h1{font-size:28px}.main-feature{min-height:300px}.feature-badge{left:10px;padding:4px 12px;font-size:11px}.cta-button{width:100%;text-align:center;padding:12px 20px}}@media (hover:none){.featured-item:hover{transform:none}.reviews-grid .single-service:hover{border:1px solid var(--color-accent);box-shadow:none}.feature-link:hover i{transform:none}}.js-mobile-menu-open{overflow:hidden}.section-header{text-align:center;max-width:700px;margin:0 auto 50px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}@media (max-width:768px){.services-grid{grid-template-columns:repeat(1,1fr)}}.highlighted{border-top:4px solid var(--color-accent);transform:translateY(-10px)}.highlighted:hover{transform:translateY(-15px)}.service-link{display:inline-flex;align-items:center;color:var(--color-primary);font-weight:600;cursor:pointer}.service-link i{margin-left:5px;transition:var(--transition);cursor:pointer}.service-link:hover i{transform:translateX(5px);cursor:pointer}.popular-badge{position:absolute;top:-15px;right:20px;background-color:var(--color-accent);color:var(--color-white);padding:5px 15px;border-radius:50px;font-size:12px;font-weight:600}.quote-container{position:relative;background:#d9d9d9;color:var(--color-text);border-radius:25px;max-width:350px;height:450px;margin:0 auto;overflow:hidden;padding:40px;backdrop-filter:blur(20px);border:1px solid var(--color-accent);box-shadow:var(--box-shadow);transition:all 0.4s ease}.quote-container:hover{transform:translateY(-8px);border-color:var(--color-primary);box-shadow:0 20px 40px rgb(0 174 239 / .2)}.quote-container .bottom{position:absolute;min-height:200px;bottom:0;left:0;line-height:0;transform:rotate(180deg);width:440px}@media (max-width=768px){.quote-container .bottom{width:100%}}.bottom svg.curves{position:relative;display:block;width:100%;height:300px;transform:rotateY(180deg)}.bottom .shape-fill{fill:var(--p2)}.star-rating{color:var(--color-accent);margin:17px 0 10px;font-size:1.8em;text-align:center}p.quote{margin:15px 0;font-size:12px;line-height:1.3em;text-align:center}.reviewer-photo{position:relative;z-index:9;margin:20px auto 10px;text-align:center}.reviewer-photo img{border-radius:50%;border:6px solid #fff;filter:drop-shadow(0 3px 3px rgb(0 0 0 / .1))}.reviewer-details{position:relative;z-index:9;text-align:center;color:#fff}.reviewer-details .name{font-size:20px;font-weight:600;display:block;padding:7px 0 10px 0}.reviewer-details .title{font-size:17px;font-weight:400}.reviews-grid .single-service{position:relative;margin-top:30px;background-color:#d9d9d9;border-radius:10px;padding:40px 30px;overflow:hidden;height:380px;border:1px solid var(--color-accent);transition:all .6s}.reviews-grid .single-service:hover{border:1px solid var(--color-primary);box-shadow:0 20px 40px rgb(0 174 239 / .2)}.reviews-grid .single-service .content{position:relative;z-index:20}.reviews-grid .single-service .circle-before{position:absolute;top:0;right:0;transform:translate(40%,-40%);width:150px;height:150px;background-color:var(--p2);border:6px solid #504f93;border-radius:50%;opacity:.8;z-index:10;transition:all .6s}.reviews-grid .single-service:hover .circle-before{width:100%;height:100%;transform:none;border:0;border-radius:0;background-color:var(--p2);opacity:1}.reviews-grid .single-service .icon{display:inline-block;margin-bottom:26px;width:70px;height:70px;background-color:var(--p2);border-radius:5px;line-height:70px;text-align:center;color:#fff;font-size:30px;transition:all .3s}.reviews-grid .single-service:hover .icon{background-color:#fff;color:var(--color-accent)}.reviews-grid .single-service .title{margin-bottom:18px;font-weight:700;font-size:23px;transition:color .3s}.reviews-grid .single-service:hover .title{color:#fff}.reviews-grid .single-service .description{margin-bottom:20px;font-size:14px;transition:color .3s}.reviews-grid .single-service:hover .description{color:#fff}.reviews-grid .single-service a{position:relative;font-size:18px;color:#202020;text-decoration:none;font-weight:500;transition:color .3s}.reviews-grid .single-service:hover a{color:#fff}.reviews-grid .single-service a:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background-color:var(--p1);transition:background-color .3s}.reviews-grid .single-service:hover a:after{background-color:#fff}.cta-button{display:flex;align-items:center;width:max-content}.cta-button i{transition:transform 0.3s ease}.cta-button:hover i{transform:translateX(5px)}.section{position:relative;z-index:2;background:rgb(0 0 0 / .8);backdrop-filter:blur(10px)}.system-gallery{padding:120px 0;background:linear-gradient(135deg,rgb(0 59 111 / .95),rgb(0 0 0 / .9))}.section-container{max-width:1200px;margin:0 auto;padding:0 2rem}@media (max-width:768px){.section-container{padding:0}.section-header{max-width:90%}.reviews-grid .single-service{width:90%;margin:0 auto}.reviews-grid .single-service:hover{border:1px solid var(--color-accent);box-shadow:none;color:var(--color-text)}.reviews-grid .single-service:hover .circle-before{width:150px;height:150px;transform:translate(40%,-40%);border:6px solid #504f93;border-radius:50%;background-color:var(--p2);opacity:.8}.reviews-grid .single-service:hover .description,.reviews-grid .single-service:hover .title,.reviews-grid .single-service:hover a{color:var(--color-text)}.reviews-grid .single-service:hover .icon{background-color:var(--p2);color:#fff}}.section-header{text-align:center;margin-bottom:4rem}.section-header h2{font-family:var(--font-primary);font-size:3rem;font-weight:700;color:var(--color-white);margin-bottom:1rem;text-shadow:0 4px 20px rgb(0 0 0 / .5)}.section-header p{font-size:1.2rem;color:rgb(255 255 255 / .8);text-shadow:0 2px 10px rgb(0 0 0 / .3)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2.5rem;margin-bottom:3rem}.rating{display:flex;gap:.3rem}.rating i{color:#ffc107;font-size:1rem;text-shadow:0 2px 5px rgb(0 0 0 / .3)}.services{padding:120px 0;background:linear-gradient(135deg,rgb(0 0 0 / .9),rgb(0 59 111 / .8))}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.5rem}.service-card{text-align:center;padding:3rem 2rem;border-radius:25px;background:rgb(255 255 255 / .05);backdrop-filter:blur(20px);border:1px solid rgb(255 255 255 / .1);transition:all 0.4s ease;position:relative}.service-card::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,var(--color-primary),var(--color-secondary));opacity:0;transition:opacity 0.3s ease}.service-card:hover::before{opacity:.1}.service-card:hover{transform:translateY(-10px);border-color:var(--color-primary);box-shadow:0 20px 40px rgb(0 174 239 / .2)}.service-icon{width:100px;height:100px;background:linear-gradient(45deg,var(--color-primary),var(--color-secondary));border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 2rem;position:relative;z-index:2;box-shadow:0 10px 30px rgb(0 174 239 / .3)}.service-icon i{font-size:2.5rem;color:var(--color-white)}.service-card h3{font-family:var(--font-primary);font-size:1.5rem;font-weight:600;color:var(--color-white);margin-bottom:1rem;position:relative;z-index:2}.service-card p{color:rgb(255 255 255 / .8);line-height:1.7;position:relative;z-index:2}.services-gridx{perspective:1200px;position:relative;width:600px;height:280px;margin:auto;overflow:visible}.services-gridx .service-card{position:absolute;top:50%;width:350px;height:300px;padding:20px;box-sizing:border-box;border-radius:12px;box-shadow:0 10px 20px rgb(0 0 0 / .15);transform-style:preserve-3d;transition:transform 0.7s ease,opacity 0.7s ease;opacity:0;pointer-events:none}@media (max-width:768px){.services-gridx{width:100%;height:320px}.services-gridx .service-card{width:80vw;height:320px;transform:translate(-50%,-50%) translateZ(150px) scale(1);justify-self:center}.services-gridx .service-card.visible.pos-center{width:80vw;height:320px;transform:translate(0,-50%) translateZ(150px) scale(1)}}.services-gridx .service-card.visible{opacity:1;pointer-events:auto}.services-gridx .service-card.pos-center{transform:translate(-50%,-50%) translateZ(150px) scale(1);z-index:3}.services-gridx .service-card.pos-left{transform:translate(calc(-50% - 250px),-50%) rotateY(-30deg) translateZ(50px) scale(.8);z-index:2}.services-gridx .service-card.pos-right{transform:translate(calc(-50% + 250px),-50%) rotateY(30deg) translateZ(50px) scale(.8);z-index:2}.services-gridx.single .service-card.pos-center{transform:translate(-50%,-50%) translateZ(200px) scale(1)}.carousel-dots{text-align:center;margin-top:60px}.carousel-dots .dot{display:inline-block;width:10px;height:10px;margin:0 6px;background-color:rgb(255 255 255 / .4);border-radius:50%;transition:all 0.3s ease;cursor:pointer}.carousel-dots .dot.active{background-color:var(--color-primary);transform:scale(1.4)}.reviews{padding:120px 0;background:linear-gradient(135deg,rgb(0 59 111 / .95),rgb(0 0 0 / .9));width:100%}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2.5rem;width:100%}.reviews-grid .col-md-6{max-width:100%}.about{padding:120px 0;background:linear-gradient(135deg,rgb(0 0 0 / .9),rgb(0 59 111 / .8))}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.about-text h2{font-family:var(--font-primary);font-size:2.8rem;font-weight:700;color:var(--color-white);margin-bottom:2rem;text-shadow:0 4px 20px rgb(0 0 0 / .5)}.about-text p{margin-bottom:1.8rem;color:rgb(255 255 255 / .9);line-height:1.8;font-size:1.1rem}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:3rem}.stat{text-align:center;padding:1.5rem;background:rgb(255 255 255 / .1);backdrop-filter:blur(20px);border-radius:20px;border:1px solid rgb(0 174 239 / .3);transition:all 0.3s ease}.stat:hover{transform:translateY(-5px);border-color:var(--color-primary);box-shadow:0 15px 30px rgb(0 174 239 / .2)}.stat-number{font-family:var(--font-primary);font-size:2.8rem;font-weight:700;color:var(--color-accent);display:block;text-shadow:0 4px 15px rgb(255 108 0 / .3)}.stat-label{color:rgb(255 255 255 / .8);font-weight:500;margin-top:.5rem}.about-visual{position:relative;height:500px}@media (max-width:768px){.about-text{width:100vw;padding:0 1rem}}@media (max-width:768px){.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.about-content{grid-template-columns:1fr}.section-header h2{font-size:2.2rem}.stats{grid-template-columns:1fr}}.scroll-indicator{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);color:var(--color-white);font-size:2rem;animation:bounce 2s ease-in-out infinite;z-index:1000}@keyframes bounce{0%,20%,50%,80%,100%{transform:translateX(-50%) translateY(0)}40%{transform:translateX(-50%) translateY(-10px)}60%{transform:translateX(-50%) translateY(-5px)}}