@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;900&display=swap";*{box-sizing:border-box;margin:0;padding:0}body{color:#1a1f1c;background-color:#f8f9f6;margin:0;padding:0;font-family:Plus Jakarta Sans,sans-serif;line-height:1.6}h1,h2,h3{letter-spacing:.02em;font-family:Plus Jakarta Sans,sans-serif;font-weight:600}ul{list-style:none}a{color:inherit;text-decoration:none}header{color:#1a1f1c;z-index:1000;background:#fff;border:1px solid #0000000d;border-radius:14px;justify-content:space-between;align-items:center;max-width:96%;margin:0 auto;padding:1rem 2%;display:flex;position:fixed;top:0;left:0;right:0;transform:translateY(10px);box-shadow:0 12px 40px #0000001f}.logo-placeholder{z-index:10;width:auto;height:75px;margin-top:-10px;margin-bottom:-15px;margin-left:-5px;display:block;position:relative}.name-container{margin-left:24px;margin-right:auto}.name-container h1{letter-spacing:.05em;color:#1a1f1c;z-index:10;text-align:left;white-space:nowrap;font-family:Plus Jakarta Sans,sans-serif;font-size:1.2rem;font-weight:600}.main-navbar ul{align-items:center;gap:3.2rem;display:flex}.main-navbar a{text-transform:uppercase;letter-spacing:.08em;color:#4a524d;padding-bottom:4px;font-size:.95rem;font-weight:500;transition:color .3s;position:relative}.main-navbar a:after{content:"";background-color:#42b557;width:0;height:2px;transition:width .3s;position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.main-navbar a:hover:after{width:100%}.main-navbar a:hover{color:#42b557}.btn-quote{text-align:center;background-color:#42b557;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.8rem 1.8rem;font-weight:500;line-height:1;display:inline-flex;box-shadow:0 4px 14px #42b55733;color:#fff!important;transition:all .3s!important}.btn-quote:hover{filter:brightness(.9);background-color:#42b557;transform:translateY(-1px);box-shadow:0 6px 20px #42b55759}.btn-quote:after{display:none!important}.page-title-section{text-align:center;max-width:1200px;margin:0 auto;padding:5rem 4% 3rem}.page-title-section h1{color:#1a1f1c;text-transform:uppercase;letter-spacing:.05em;font-size:3.5rem}@media (width<=768px){header{z-index:1000;background:#fff;border:1px solid #0000000d;border-radius:0 0 16px 16px;justify-content:center;align-items:center;padding:.85rem 5%;transition:border-radius .3s,box-shadow .3s;display:flex;top:0;left:0;right:0;transform:none;box-shadow:0 4px 20px #00000014;position:fixed!important}.logo-placeholder{height:44px;margin:0;display:block}.name-container{display:none}header.menu-open{border-bottom-color:#0000;border-radius:16px 16px 0 0;box-shadow:0 -2px 20px #0000000f}.menu-toggle{cursor:pointer;z-index:1001;background:0 0;border:none;flex-direction:column;justify-content:space-between;width:9px;height:5px;padding:0;display:flex;position:absolute;right:5%}.menu-toggle span{transform-origin:50%;background-color:#1a1f1c;border-radius:1px;width:100%;height:1px;transition:all .28s}.menu-toggle.open span:first-child{transform:translateY(2px)rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0;transform:scaleX(0)}.menu-toggle.open span:nth-child(3){transform:translateY(-2px)rotate(-45deg)}.main-navbar{opacity:0;pointer-events:none;background-color:#fff;border:1px solid #0000000d;border-top:none;border-radius:0 0 16px 16px;max-height:0;transition:max-height .38s,opacity .3s;position:absolute;top:100%;left:-1px;right:-1px;overflow:hidden;box-shadow:0 18px 36px #0000001a}.main-navbar.active{opacity:1;pointer-events:auto;max-height:520px;padding:.6rem 0 1.2rem}.main-navbar ul{flex-direction:column;justify-content:center;align-items:center;gap:0;width:100%;margin:0;padding:0;list-style:none}.main-navbar>ul>li{text-align:center;justify-content:center;width:100%;display:flex}.main-navbar a{text-align:center;justify-content:center;align-items:center;width:100%;padding:13px 0;font-size:.97rem;display:flex}.main-navbar .btn-quote{letter-spacing:.06em;border-radius:10px;justify-content:center;align-items:center;width:calc(100% - 48px);margin:6px auto 2px;padding:12px 0;font-size:.88rem;display:flex}.page-title-section{padding-top:8rem}.nav-item-has-children>a .fa-chevron-down,.nav-item-has-children>a i{display:none!important}.nav-item-has-children.active-dropdown>a:after{content:"";background-color:#42b557;border-radius:50%;width:4px;height:4px;margin:0;position:absolute;bottom:2px;left:50%;transform:translate(-50%);display:block!important}}#home,.services-hero{text-align:center;justify-content:center;align-items:center;min-height:100vh;margin-top:0;padding:0 6%;display:flex;position:relative;overflow:hidden}#home:before{display:none!important}.hero-content{z-index:6;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:90%;max-width:800px;margin:0 auto;padding-top:5rem;display:flex;position:relative}.hero-content h1{color:#fff;text-transform:uppercase;letter-spacing:2px;text-shadow:0 4px 12px #0000004d;margin-bottom:1.5rem;font-size:5rem;font-weight:900;line-height:1.15}.hero-content p{color:#fff;letter-spacing:.5px;opacity:.95;text-shadow:0 2px 8px #0006;max-width:600px;margin-bottom:2.5rem;font-size:1.3rem;font-weight:400}.btn-quote-hero{background-color:var(--primary);color:#fff;text-transform:uppercase;letter-spacing:.1em;border-radius:50px;padding:1.1rem 2.6rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block;box-shadow:0 8px 24px #42b55759}.btn-quote-hero:hover{color:#1a1f1c;background-color:#fff;transform:translateY(-3px);box-shadow:0 10px 30px #fff3}.hero-image-wrapper{z-index:1;width:100%;height:100%;display:block;position:absolute;top:0;left:0}.hero-slider{width:100%;height:100%;box-shadow:none;border:none;border-radius:0;position:relative;overflow:hidden}.hero-overlay{z-index:2;pointer-events:none;background:radial-gradient(circle,#0003 0%,#000000a6 100%);position:absolute;inset:0}.slide-photo{object-fit:cover;opacity:0;pointer-events:none;width:100%;height:100%;animation:12s ease-in-out infinite sliderFade;position:absolute;top:0;left:0}.slide-photo:first-child{animation:12s infinite fade1}.slide-photo:nth-child(2){animation:12s infinite fade2}.slide-photo:nth-child(3){animation:12s infinite fade3}.slide-photo:nth-child(4){animation:12s infinite fade4}.slide-photo:nth-child(5){animation:12s infinite fade5}.slide-photo:nth-child(6){animation:12s infinite fade6}@keyframes fade1{0%{opacity:1;transform:scale(1)}28%{opacity:1;transform:scale(1.03)}33%{opacity:0;transform:scale(1.04)}95%{opacity:0;transform:scale(1)}to{opacity:1;transform:scale(1)}}@keyframes fade2{0%{opacity:0;transform:scale(1)}28%{opacity:0;transform:scale(1)}33%{opacity:1;transform:scale(1)}61%{opacity:1;transform:scale(1.03)}66%{opacity:0;transform:scale(1.04)}to{opacity:0;transform:scale(1)}}@keyframes fade3{0%{opacity:0;transform:scale(1)}61%{opacity:0;transform:scale(1)}66%{opacity:1;transform:scale(1)}95%{opacity:1;transform:scale(1.03)}to{opacity:0;transform:scale(1.04)}}@keyframes fade4{0%{opacity:1;transform:scale(1)}28%{opacity:1;transform:scale(1.03)}33%{opacity:0;transform:scale(1.04)}95%{opacity:0;transform:scale(1)}to{opacity:1;transform:scale(1)}}@keyframes fade5{0%{opacity:0;transform:scale(1)}28%{opacity:0;transform:scale(1)}33%{opacity:1;transform:scale(1)}61%{opacity:1;transform:scale(1.03)}66%{opacity:0;transform:scale(1.04)}to{opacity:0;transform:scale(1)}}@keyframes fade6{0%{opacity:0;transform:scale(1)}61%{opacity:0;transform:scale(1)}66%{opacity:1;transform:scale(1)}95%{opacity:1;transform:scale(1.03)}to{opacity:0;transform:scale(1.04)}}@media (width<=992px){#home,.services-hero{min-height:90vh;padding-top:6rem}.hero-content{width:100%;padding-top:6rem}.hero-content h1{font-size:3.8rem}.hero-content p{max-width:550px;margin:0 auto 2.5rem;font-size:1.2rem}.hero-image-wrapper,.hero-slider{width:100%;height:100%}}@media (width<=768px){#home,.services-hero{min-height:85vh;padding-top:5rem}.hero-content h1{font-size:2.8rem}.hero-content p{max-width:450px;font-size:1.1rem}.btn-quote-hero{padding:1rem 2.2rem;font-size:.9rem}}:root{--primary:#42b557;--primary-dark:#42b557;--bg-light-1:#f4f7f5;--bg-light-2:#fff;--text-dark:#1a1f1c;--text-muted:#5a635d;--white:#fff;--transition-fast:all .3s ease;--transition-smooth:all .5s cubic-bezier(.25, 1, .5, 1)}.services-section{color:var(--text-dark);padding:120px 24px}.bg-soft-green{background-color:var(--bg-light-1)}.bg-soft-white{background-color:var(--bg-light-2)}.bg-brand-green{color:#fff;background-color:#42b557}.bg-brand-green .section-intro__title{color:#fff}.bg-brand-green .section-intro__desc{color:#ffffffd9}.section-intro{text-align:center;flex-direction:column;align-items:center;margin-bottom:80px;display:flex}.section-intro__content{max-width:750px}.section-intro__title{letter-spacing:-1px;color:var(--text-dark);margin-bottom:20px;font-size:3rem;font-weight:700;line-height:1.2}.section-intro__title em{color:var(--primary);font-style:normal;font-weight:300}.section-intro__desc{color:var(--text-muted);font-size:1.15rem;line-height:1.6}.services-grid{grid-template-columns:repeat(2,1fr);gap:40px;max-width:1200px;margin:0 auto;display:grid}.service-card{background-color:var(--white);height:100%;transition:var(--transition-smooth);border:1px solid #00000008;border-radius:16px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 10px 30px #0000000d;color:inherit!important;text-decoration:none!important}.service-card__image{width:100%;height:280px;overflow:hidden}.service-card__image img{object-fit:cover;width:100%;height:100%;transition:var(--transition-smooth)}.service-card__body{transition:var(--transition-smooth);flex-direction:column;flex-grow:1;padding:40px;display:flex}.service-card__title{color:var(--text-dark);transition:var(--transition-fast);margin-bottom:16px;font-size:1.6rem;font-weight:700;line-height:1.3}.service-card__desc{color:var(--text-muted);transition:var(--transition-fast);flex-grow:1;margin-bottom:32px;font-size:1rem;line-height:1.6}.service-card__link{color:var(--primary);text-transform:uppercase;letter-spacing:1px;transition:var(--transition-fast);align-items:center;margin-top:auto;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex}.service-card:hover{background-color:var(--primary);border-color:var(--primary);transform:translateY(-12px);box-shadow:0 25px 50px #42b5574d}.service-card:hover .service-card__image img{transform:scale(1.08)}.service-card:hover .service-card__title,.service-card:hover .service-card__desc,.service-card:hover .service-card__link{color:var(--white)}.service-card:hover .service-card__link{letter-spacing:2px}.section-divider{background-color:var(--white);justify-content:center;width:100%;padding:20px 0;display:flex}.section-divider__line{background-color:var(--primary);border-radius:4px;width:80px;height:4px}@media (width<=992px){.services-grid{grid-template-columns:1fr;gap:32px}}@media (width<=768px){.services-section{padding:80px 20px}.section-intro__title{font-size:2.2rem}.service-card__body{padding:30px 20px}}.projects-grid{flex-direction:column;gap:60px;max-width:1200px;margin:0 auto;display:flex}.project-card__img-wrapper{width:50%;position:relative;overflow:hidden}.project-card__img-wrapper2{width:10%;position:relative;overflow:hidden}.project-card__img-wrapper img{object-fit:cover;width:100%;height:100%;min-height:380px;transition:var(--transition-smooth)}.project-card__images2{flex:0 0 100%;display:flex}.project-card{background-color:var(--white);transition:var(--transition-smooth);border:1px solid #00000008;border-radius:16px;flex-direction:row;display:flex;overflow:hidden;box-shadow:0 10px 30px #0000000d}.project-card:nth-child(2n){flex-direction:row-reverse}.project-card__images{flex:0 0 55%;display:flex}.project-card__img-sola{width:100%;position:relative;overflow:hidden}.project-card__img-sola img{object-fit:cover;width:100%;height:100%;min-height:380px;transition:var(--transition-smooth)}.project-card__badge{color:var(--white);text-transform:uppercase;letter-spacing:1.5px;-webkit-backdrop-filter:blur(4px);background-color:#1a1f1cb3;border-radius:6px;padding:6px 14px;font-size:.8rem;font-weight:700;position:absolute;bottom:20px;left:20px}.project-card__badge--after{background-color:var(--primary)}.project-card__content{background-color:var(--white);transition:var(--transition-smooth);flex-direction:column;flex:0 0 45%;justify-content:center;padding:50px 60px;display:flex}.project-card__title{color:var(--text-dark);transition:var(--transition-fast);margin-bottom:16px;font-size:1.8rem;font-weight:700;line-height:1.3}.project-card__desc{color:var(--text-muted);transition:var(--transition-fast);margin-bottom:32px;font-size:1.05rem;line-height:1.6}.project-card__link{color:var(--primary);text-transform:uppercase;letter-spacing:1px;transition:var(--transition-fast);align-items:center;margin-top:auto;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex}.project-card:hover{border-color:var(--primary);transform:translateY(-10px);box-shadow:0 25px 50px #42b55733}.project-card:hover .project-card__img-wrapper img{transform:scale(1.05)}.project-card:hover .project-card__content{background-color:var(--primary)}.project-card:hover .project-card__title,.project-card:hover .project-card__desc,.project-card:hover .project-card__link{color:var(--white)}.project-card:hover .project-card__link{letter-spacing:2px}@media (width<=992px){.project-card,.project-card:nth-child(2n){flex-direction:column}.project-card__images,.project-card__content{flex:none;width:100%}.project-card__img-wrapper img{min-height:300px}.project-card__content{padding:40px 30px}}@media (width<=576px){.project-card__images{flex-direction:column}.project-card__img-wrapper{width:100%}.project-card__img-wrapper img{min-height:250px}}.contact-grid{grid-template-columns:1fr 1.3fr;gap:40px;max-width:1200px;margin:0 auto 60px;display:grid}.contact-sidebar{flex-direction:column;gap:24px;display:flex}.contact-info-card{background-color:var(--white);transition:var(--transition-smooth);border:1px solid #00000005;border-radius:16px;padding:35px;box-shadow:0 10px 30px #0000000a}.contact-info-card__title{color:var(--text-dark);transition:var(--transition-fast);margin-bottom:20px;font-size:1.4rem;font-weight:700;position:relative}.contact-info-card__row{margin-bottom:16px;font-size:1rem;line-height:1.5}.contact-info-card__row:last-child{margin-bottom:0}.contact-info-card__row strong{text-transform:uppercase;letter-spacing:1px;color:var(--primary);transition:var(--transition-fast);margin-bottom:4px;font-size:.85rem;display:block}.contact-info-card__row p,.contact-info-card__link{color:var(--text-muted);transition:var(--transition-fast);text-decoration:none;display:inline-block}.contact-info-card:hover{background-color:var(--primary);transform:translateY(-6px);box-shadow:0 20px 40px #42b55740}.contact-info-card:hover .contact-info-card__title,.contact-info-card:hover .contact-info-card__row p,.contact-info-card:hover .contact-info-card__link{color:var(--white)}.contact-info-card:hover .contact-info-card__row strong{color:#ffffffbf}.social-links-container{flex-wrap:wrap;gap:12px;display:flex}.social-btn{background-color:var(--bg-light-1);color:var(--text-dark);transition:var(--transition-fast);border-radius:8px;padding:10px 20px;font-size:.9rem;font-weight:600;text-decoration:none}.social-btn:hover{background-color:var(--white);color:var(--primary)}.contact-info-card--socials:hover .social-btn{color:var(--white);background-color:#fff3}.contact-info-card--socials:hover .social-btn:hover{background-color:var(--white);color:var(--primary)}.contact-form-card{background-color:var(--white);border:1px solid #00000005;border-radius:16px;padding:50px;box-shadow:0 10px 30px #0000000a}.contact-form-card__title{color:var(--text-dark);margin-bottom:30px;font-size:1.8rem;font-weight:700}.form-group-row{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.form-group{flex-direction:column;margin-bottom:24px;display:flex}.form-group label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dark);margin-bottom:8px;font-size:.85rem;font-weight:700}.form-group input,.form-group textarea{background-color:var(--bg-light-1);color:var(--text-dark);transition:var(--transition-fast);border:1px solid #0000000d;border-radius:8px;padding:14px 18px;font-family:inherit;font-size:1rem}.form-group input::placeholder,.form-group textarea::placeholder{color:#a0a8a3}.form-group input:focus,.form-group textarea:focus{background-color:var(--white);border-color:var(--primary);outline:none;box-shadow:0 0 0 4px #42b5571a}.btn-submit-form{background-color:var(--primary);width:100%;color:var(--white);text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:var(--transition-fast);border:none;border-radius:8px;justify-content:center;align-items:center;padding:16px;font-size:1rem;font-weight:700;display:inline-flex}.btn-submit-form:hover{background-color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 10px 20px #42b55733}.contact-map-container{border:1px solid #00000005;border-radius:16px;max-width:1200px;margin:40px auto 0;overflow:hidden;box-shadow:0 10px 30px #0000000d}.contact-map-container iframe{display:block}@media (width<=992px){.contact-grid{grid-template-columns:1fr;gap:32px}.contact-form-card{padding:35px}}@media (width<=576px){.form-group-row{grid-template-columns:1fr;gap:0}.contact-info-card{padding:25px}}.estimate-container{max-width:900px;margin:0 auto;padding-bottom:80px}.estimate-dashboard-form{background-color:var(--white);border:1px solid #00000008;border-radius:24px;padding:60px;box-shadow:0 20px 50px #0000000d}.estimate-step-block{border-bottom:1px solid #edf1ee;margin-bottom:50px;padding-bottom:45px}.estimate-step-block:last-of-type{border-bottom:none;margin-bottom:30px;padding-bottom:0}.estimate-step-block__header{align-items:center;gap:16px;margin-bottom:24px;display:flex}.step-number{background-color:var(--bg-light-1);color:var(--primary);border:1px solid #42b55726;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.95rem;font-weight:800;display:flex}.step-title{color:var(--text-dark);font-size:1.4rem;font-weight:700}.step-subtitle{color:var(--text-muted);margin-top:-12px;margin-bottom:20px;font-size:.95rem}.estimate-form-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.estimate-form-grid--split{grid-template-columns:1fr 1fr;align-items:end}.services-checkbox-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.checkbox-tile{cursor:pointer;position:relative}.checkbox-tile input{opacity:0;width:0;height:0;position:absolute}.checkbox-tile__label{background-color:var(--bg-light-1);color:var(--text-dark);text-align:center;transition:var(--transition-fast);-webkit-user-select:none;user-select:none;border:1px solid #0000000a;border-radius:12px;padding:16px 10px;font-size:.9rem;font-weight:600;display:block}.checkbox-tile:hover .checkbox-tile__label{border-color:var(--primary);background-color:#eef7f0}.checkbox-tile input:checked+.checkbox-tile__label{background-color:var(--primary);color:var(--white);border-color:var(--primary);box-shadow:0 8px 16px #42b55733}.estimate-step-block select{background-color:var(--bg-light-1);color:var(--text-dark);transition:var(--transition-fast);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%231a1f1c'><path d='M1 3.5l5 5 5-5z'/></svg>");background-position:right 18px center;background-repeat:no-repeat;border:1px solid #0000000d;border-radius:8px;width:100%;padding:14px 18px;font-family:inherit;font-size:1rem}.estimate-step-block select:focus{background-color:var(--white);border-color:var(--primary);outline:none}.radio-pills-container{background-color:var(--bg-light-1);border:1px solid #00000005;border-radius:10px;padding:6px;display:flex}.radio-pill{cursor:pointer;text-align:center;flex:1;position:relative}.radio-pill input{opacity:0;width:0;height:0;position:absolute}.radio-pill__label{color:var(--text-muted);transition:var(--transition-fast);border-radius:6px;padding:10px;font-size:.95rem;font-weight:600;display:block}.radio-pill input:checked+.radio-pill__label{background-color:var(--white);color:var(--primary);box-shadow:0 4px 10px #0000000d}.file-upload-zone{background-color:var(--bg-light-1);text-align:center;transition:var(--transition-fast);border:2px dashed #cbd5ce;border-radius:16px;padding:40px 20px;position:relative}.file-upload-zone input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.file-upload-zone__label{color:var(--text-muted);pointer-events:none;flex-direction:column;align-items:center;font-size:.95rem;display:flex}.upload-icon{margin-bottom:12px;font-size:2.2rem}.file-upload-zone__label strong{color:var(--primary)}.upload-limit{color:#909c94;margin-top:6px;font-size:.8rem}.file-upload-zone:hover{border-color:var(--primary);background-color:#f3faf5}.estimate-submit-wrapper{text-align:center;margin-top:20px}.btn-submit-estimate{background-color:var(--primary);width:100%;color:var(--white);text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:var(--transition-fast);border:none;border-radius:12px;padding:18px;font-size:1.05rem;font-weight:700;box-shadow:0 10px 25px #42b55726}.btn-submit-estimate:hover{background-color:var(--primary-dark);transform:translateY(-3px);box-shadow:0 15px 30px #42b5574d}.submit-notice{color:var(--text-muted);margin-top:16px;font-size:.85rem}@media (width<=992px){.estimate-dashboard-form{padding:40px}.services-checkbox-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.estimate-form-grid,.estimate-form-grid--split{grid-template-columns:1fr;gap:20px}.services-checkbox-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.estimate-dashboard-form{padding:25px 20px}.services-checkbox-grid{grid-template-columns:1fr}.step-title{font-size:1.2rem}}.home-hero{background-color:var(--white);text-align:center;border-bottom:1px solid #edf1ee;justify-content:center;align-items:center;padding:180px 4% 100px;display:flex}.home-hero__container{max-width:850px}.home-hero__subtitle{text-transform:uppercase;letter-spacing:3px;color:var(--primary);margin-bottom:12px;font-size:.95rem;font-weight:800;display:inline-block}.home-hero__title{color:var(--text-dark);letter-spacing:-1px;margin-bottom:24px;font-size:3.5rem;font-weight:800;line-height:1.15}.home-hero__title em{color:var(--primary);font-style:normal}.home-hero__tagline{color:var(--text-muted);margin-bottom:40px;font-size:1.2rem;line-height:1.6}.home-hero__actions{justify-content:center;gap:16px;display:flex}.btn-primary-home{background-color:var(--primary);color:var(--white);text-transform:uppercase;letter-spacing:.5px;transition:var(--transition-fast);border-radius:8px;padding:15px 32px;font-size:.95rem;font-weight:700;text-decoration:none}.btn-primary-home:hover{background-color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 10px 20px #42b55733}.btn-secondary-home{background-color:var(--bg-light-1);color:var(--text-dark);text-transform:uppercase;letter-spacing:.5px;transition:var(--transition-fast);border:1px solid #00000008;border-radius:8px;padding:15px 32px;font-size:.95rem;font-weight:700;text-decoration:none}.btn-secondary-home:hover{background-color:var(--text-dark);color:var(--white);transform:translateY(-2px)}.section-tag{text-transform:uppercase;letter-spacing:2px;color:var(--primary);margin-bottom:12px;font-size:.85rem;font-weight:800;display:block}.home-about-section{max-width:1200px;margin:0 auto;padding:100px 4%}.home-about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:60px;display:grid}.home-about__intro h2{color:var(--text-dark);margin-bottom:24px;font-size:2.2rem;font-weight:700;line-height:1.25}.home-about__intro p{color:var(--text-muted);margin-bottom:20px;font-size:1.05rem;line-height:1.6}.home-about__cta-box{background-color:var(--bg-light-1);border:1px solid #00000005;border-radius:12px;align-items:center;gap:16px;margin-top:35px;padding:20px 30px;display:inline-flex}.home-about__cta-box span{color:var(--text-dark);font-size:.95rem;font-weight:700}.cta-phone{color:var(--primary);transition:var(--transition-fast);font-size:1.3rem;font-weight:800;text-decoration:none}.cta-phone:hover{color:var(--primary-dark)}.home-about__pillars{flex-direction:column;gap:20px;display:flex}.pillar-card{background-color:var(--white);transition:var(--transition-smooth);border:1px solid #edf1ee;border-radius:14px;padding:30px;box-shadow:0 10px 30px #00000008}.pillar-card h3{color:var(--text-dark);transition:var(--transition-fast);margin-bottom:10px;font-size:1.25rem;font-weight:700}.pillar-card p{color:var(--text-muted);transition:var(--transition-fast);font-size:.95rem;line-height:1.5}.values-tags{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.values-tags span{background-color:var(--bg-light-1);color:var(--text-dark);transition:var(--transition-fast);border-radius:6px;padding:8px 16px;font-size:.85rem;font-weight:700}.pillar-card:hover{background-color:var(--primary);border-color:var(--primary);transform:translateY(-4px);box-shadow:0 15px 30px #42b55726}.pillar-card:hover h3,.pillar-card:hover p{color:var(--white)}.pillar-card:hover .values-tags span{color:var(--white);background-color:#fff3}.teaser-grid{grid-template-columns:repeat(4,1fr);gap:24px;max-width:1200px;margin:0 auto 50px;display:grid}.teaser-card{background-color:var(--white);transition:var(--transition-smooth);text-align:center;border:1px solid #00000005;border-radius:16px;flex-direction:column;align-items:center;padding:40px 24px;display:flex;box-shadow:0 10px 30px #00000008}.teaser-card__image-wrapper{border:4px solid var(--white);width:160px;height:160px;transition:var(--transition-smooth);border-radius:50%;margin-bottom:24px;overflow:hidden;box-shadow:0 8px 20px #00000014}.teaser-card__image-wrapper img{object-fit:cover;width:100%;height:100%;transition:var(--transition-smooth)}.teaser-card__title{color:var(--text-dark);transition:var(--transition-fast);margin-bottom:14px;font-size:1.25rem;font-weight:700;line-height:1.3}.teaser-card__desc{color:var(--text-muted);transition:var(--transition-fast);margin-bottom:24px;font-size:.95rem;line-height:1.5}.teaser-card__btn{border:2px solid var(--primary);color:var(--primary);transition:var(--transition-smooth);background-color:#0000;border-radius:30px;margin-top:auto;padding:10px 24px;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-block}.teaser-card:hover{background-color:var(--white);border:1px solid var(--primary);transform:translateY(-8px);box-shadow:0 20px 50px #00000026}.teaser-card:hover .teaser-card__title{color:var(--primary)}.teaser-card:hover .teaser-card__desc{color:var(--text-dark)}.teaser-card:hover .teaser-card__image-wrapper{border-color:var(--primary)}.teaser-card:hover .teaser-card__image-wrapper img{transform:scale(1.1)}.teaser-card:hover .teaser-card__btn{background-color:var(--primary);color:var(--white);border-color:var(--primary)}.teaser-footer-action{text-align:center;max-width:650px;margin:0 auto}.teaser-footer-action p{color:var(--text-muted);margin-bottom:30px;font-size:1.1rem;font-style:italic;line-height:1.6}@media (width<=1200px){.teaser-grid{grid-template-columns:repeat(2,1fr);gap:20px}}@media (width<=992px){.home-hero__title{font-size:2.8rem}.home-about-grid{grid-template-columns:1fr;gap:40px}.home-about__intro{text-align:center}.home-about__cta-box{justify-content:center;display:flex}}@media (width<=576px){.home-hero{padding:16px 4% 60px}.home-hero__title{font-size:2.2rem}.home-hero__actions{flex-direction:column;gap:12px}.btn-primary-home,.btn-secondary-home{text-align:center;width:100%}.teaser-grid{grid-template-columns:1fr}.home-about__intro h2{font-size:1.8rem}.home-about__cta-box{flex-direction:column;gap:8px;width:100%}}.footer-reviews-section{background-color:var(--bg-light-1);padding:80px 20px;position:relative;overflow:hidden}.reviews-background-line{background-color:var(--primary);opacity:.15;z-index:1;width:100%;height:3px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.reviews-container{z-index:2;max-width:1200px;margin:0 auto;position:relative}.reviews-title{text-align:center;color:var(--text-dark);margin-bottom:50px;font-size:2rem;font-weight:700}.reviews-grid{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.review-card{background-color:var(--white);transition:var(--transition-smooth);border:1px solid #00000005;border-radius:16px;flex-direction:column;padding:35px;display:flex;box-shadow:0 10px 30px #0000000a}.review-top-meta{margin-bottom:16px}.review-stars{color:#f39c12;letter-spacing:2px;transition:var(--transition-fast);font-size:1.1rem}.review-text{color:var(--text-muted);transition:var(--transition-fast);flex-grow:1;margin-bottom:24px;font-size:1rem;font-style:italic;line-height:1.6}.review-author-container{transition:var(--transition-fast);border-top:1px solid #0000000d;align-items:center;gap:15px;margin-top:auto;padding-top:20px;display:flex}.review-avatar{object-fit:cover;border:3px solid var(--bg-light-1);width:60px;height:60px;transition:var(--transition-fast);border-radius:50%;box-shadow:0 4px 10px #0000000d}.review-author-info{flex-direction:column;display:flex}.review-author-info strong{text-transform:uppercase;letter-spacing:1px;color:var(--primary);transition:var(--transition-fast);margin-bottom:2px;font-size:.9rem;display:block}.review-author-info span{color:var(--text-muted);transition:var(--transition-fast);font-size:.85rem;display:block}.review-card:hover{background-color:var(--primary);transform:translateY(-6px);box-shadow:0 20px 40px #42b55740}.review-card:hover .review-text,.review-card:hover .review-author-info span,.review-card:hover .review-stars{color:var(--white)}.review-card:hover .review-author-info strong{color:#ffffffe6}.review-card:hover .review-author-container{border-top-color:#fff3}.review-card:hover .review-avatar{border-color:#fff6}@media (width<=992px){.reviews-grid{grid-template-columns:repeat(2,1fr);gap:24px}}@media (width<=768px){.footer-reviews-section{padding:60px 15px}.reviews-grid{grid-template-columns:1fr}.review-card{padding:25px}}.main-footer{background-color:var(--primary);color:var(--white);padding-top:70px;font-family:inherit}.footer-container{grid-template-columns:2fr 1.5fr 1.5fr;gap:50px;max-width:1200px;margin:0 auto 50px;padding:0 20px;display:grid}.footer-column.brand-column{flex-direction:column;align-items:flex-start;display:flex}.footer-logo{margin-bottom:16px;text-decoration:none;display:inline-block}.footer-logo img{width:auto;max-width:200px;height:120px;display:block}.footer-description{color:#ffffffd9;margin-bottom:16px;font-size:.95rem;line-height:1.6}.footer-heading{color:var(--white);text-transform:uppercase;letter-spacing:1px;margin-bottom:24px;padding-bottom:10px;font-size:1.2rem;font-weight:700;position:relative}.footer-heading:after{content:"";background-color:#ffffff80;border-radius:2px;width:40px;height:3px;position:absolute;bottom:0;left:0}.footer-contact-list{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.footer-contact-list li{color:var(--white);align-items:center;gap:12px;display:flex}.footer-contact-list svg{color:var(--white);opacity:.9;flex-shrink:0}.footer-contact-list a{color:#ffffffe6;transition:var(--transition-fast);font-size:.95rem;text-decoration:none}.footer-contact-list a:hover{color:var(--white);text-decoration:underline}.footer-socials{gap:12px;display:flex}.social-circle{width:40px;height:40px;color:var(--white);transition:var(--transition-fast);background-color:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex}.social-circle:hover{background-color:var(--white);color:var(--primary);transform:translateY(-3px)}.footer-cta-text{color:#ffffffd9;margin-bottom:20px;font-size:.95rem;line-height:1.5}.btn-footer-contact{background-color:var(--white);color:var(--primary);text-transform:uppercase;letter-spacing:1px;transition:var(--transition-fast);border-radius:8px;justify-content:center;align-self:flex-start;align-items:center;padding:14px 24px;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex}.btn-footer-contact:hover{background-color:var(--bg-light-1);transform:translateY(-2px);box-shadow:0 10px 20px #00000026}.footer-bottom{text-align:center;background-color:#00000026;padding:20px}.footer-bottom p{color:#ffffffb3;margin:0;font-size:.85rem}.footer-partner-link{color:#ffffffe6;font-weight:600;text-decoration:underline;transition:opacity .2s}.footer-partner-link:hover{opacity:.7}@media (width<=992px){.footer-container{grid-template-columns:repeat(2,1fr)}.brand-column{text-align:center;grid-column:1/-1;align-items:center}.footer-heading:after{left:0}}@media (width<=576px){.footer-container{grid-template-columns:1fr;gap:40px}.footer-heading:after{left:50%;transform:translate(-50%)}.contact-column,.cta-column{text-align:center;align-items:center}.btn-footer-contact{align-self:center}}.project-card__img-sola{width:100%;height:100%;display:flex;position:relative;overflow:hidden}.project-card__video{object-fit:cover;object-position:center;width:100%;height:100%;min-height:380px;transition:var(--transition-smooth);display:block}.project-card__video::-webkit-media-controls-panel{display:flex!important}.project-card:hover .project-card__img-sola .project-card__video{transform:scale(1.05)}@media (width>=1200px){.project-card__video{height:380px}}@media (width<=992px){.project-card__video{height:auto;min-height:300px}}.reels-section{background-color:var(--white);padding:80px 0}.reels-header{text-align:center;margin-bottom:50px}.reels-header h2{color:var(--text-dark);margin-bottom:10px;font-size:2.2rem;font-weight:700}.reels-header p{color:var(--text-muted);font-size:1.05rem}.reels-grid{grid-template-columns:repeat(3,1fr);gap:30px;max-width:1200px;margin:0 auto;padding:0 15px;display:grid}.reel-card{background-color:var(--white);transition:var(--transition-smooth);border:1px solid #00000008;border-radius:16px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 10px 30px #0000000d}.reel-video-wrapper{aspect-ratio:9/16;cursor:pointer;background-color:#000;width:100%;max-height:480px;position:relative;overflow:hidden}.reel-video{object-fit:cover;object-position:center;width:100%;height:100%;transition:var(--transition-smooth);display:block}.reel-badge{color:var(--white);text-transform:uppercase;letter-spacing:1px;-webkit-backdrop-filter:blur(4px);z-index:2;background-color:#1a1f1cb3;border-radius:6px;padding:6px 14px;font-size:.75rem;font-weight:700;position:absolute;top:20px;left:20px}.reel-badge i{margin-right:4px}.reel-play-btn{color:var(--white);pointer-events:none;z-index:2;background-color:#1a1f1ccc;border:2px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;font-size:20px;transition:all .3s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reel-content{background-color:var(--white);transition:var(--transition-smooth);flex-direction:column;flex-grow:1;padding:30px;display:flex}.reel-title{color:var(--text-dark);transition:var(--transition-fast);margin-bottom:12px;font-size:1.35rem;font-weight:700;line-height:1.4}.reel-desc{color:var(--text-muted);transition:var(--transition-fast);margin:0;font-size:.95rem;line-height:1.5}.reel-card:hover{border-color:var(--primary);transform:translateY(-10px);box-shadow:0 25px 50px #42b55733}.reel-card:hover .reel-video{transform:scale(1.03)}.reel-card:hover .reel-play-btn{background-color:var(--primary);transform:translate(-50%,-50%)scale(1.1)}.reel-card:hover .reel-content{background-color:var(--primary)}.reel-card:hover .reel-title,.reel-card:hover .reel-desc{color:var(--white)}@media (width<=992px){.reels-grid{grid-template-columns:repeat(2,1fr);gap:20px}}@media (width<=650px){.reels-grid{grid-template-columns:1fr;max-width:400px}}.project-card__link-btn{font-family:inherit;font-size:inherit;color:var(--primary);cursor:pointer;text-align:left;background:0 0;border:none;outline:none;padding:0}.project-modal-backdrop{-webkit-backdrop-filter:blur(8px);z-index:1999;background-color:#1a1f1cd9;position:fixed;inset:0}.project-modal{z-index:2000;background-color:var(--white);border:none;border-radius:24px;width:92%;max-width:900px;padding:0;animation:.4s cubic-bezier(.25,1,.5,1) forwards modalFadeIn;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 30px 70px #00000040}@keyframes modalFadeIn{0%{opacity:0;transform:translate(-50%,-45%)scale(.95)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.modal-wrapper{flex-direction:column;max-height:85vh;display:flex;overflow-y:auto}.modal-close-btn{width:40px;height:40px;color:var(--white);cursor:pointer;z-index:10;transition:var(--transition-fast);-webkit-backdrop-filter:blur(4px);background-color:#1a1f1c99;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:24px;display:flex;position:absolute;top:15px;right:15px}.modal-close-btn:hover{background-color:var(--primary);color:var(--white);transform:rotate(90deg)}.carousel-container{aspect-ratio:16/10;background-color:#121413;width:100%;max-height:45vh;position:relative;overflow:hidden}.carousel-slides{position:absolute;inset:0}.carousel-slide{opacity:0;pointer-events:none;visibility:hidden;justify-content:center;align-items:center;transition:opacity .5s ease-in-out;display:flex;position:absolute;inset:0}.carousel-slide.active{opacity:1;pointer-events:auto;visibility:visible}.carousel-img{object-fit:cover;width:100%;height:100%}.carousel-slide .carousel-badge{color:var(--white);text-transform:uppercase;letter-spacing:1.5px;-webkit-backdrop-filter:blur(4px);z-index:3;background-color:#1a1f1cbf;border-radius:6px;padding:6px 14px;font-size:.8rem;font-weight:700;position:absolute;bottom:20px;left:20px}.carousel-btn{color:var(--white);cursor:pointer;z-index:5;width:48px;height:48px;transition:var(--transition-fast);-webkit-backdrop-filter:blur(4px);background-color:#1a1f1c66;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-btn:hover{background-color:var(--primary);color:var(--white)}.prev-btn{left:20px}.next-btn{right:20px}.carousel-dots{z-index:5;gap:8px;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.dot{cursor:pointer;width:10px;height:10px;transition:var(--transition-fast);background-color:#fff6;border-radius:50%}.dot.active{background-color:var(--primary);transform:scale(1.2);box-shadow:0 0 8px #42b55799}.modal-info{background-color:var(--white);padding:35px 40px}.modal-title{color:var(--text-dark);margin-bottom:15px;font-family:Plus Jakarta Sans,sans-serif;font-size:2.2rem;font-weight:600;line-height:1.3}.modal-desc{color:var(--text-dark);background-color:var(--bg-light-1);border:1px solid #0000000d;border-radius:12px;margin-bottom:25px;padding:20px 25px;font-family:Plus Jakarta Sans,sans-serif;font-size:.92rem;line-height:1.6}.modal-meta-grid{border-top:1px solid #00000014;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px;padding-top:20px;display:grid}.meta-item{color:var(--text-muted);font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem}.meta-item strong{color:var(--text-dark)}@media (width<=768px){.project-modal{border-radius:16px;width:95%}.modal-info{padding:25px 20px}.modal-title{font-size:1.6rem}.carousel-container{aspect-ratio:4/3}.carousel-btn{width:38px;height:38px;font-size:14px}.prev-btn{left:10px}.next-btn{right:10px}.carousel-dots{bottom:10px}.carousel-slide .carousel-badge{padding:4px 10px;font-size:.7rem;bottom:10px;left:10px}}@media (width>=769px){.project-modal--vertical .modal-wrapper{flex-direction:row;max-height:85vh;overflow:hidden}.project-modal--vertical .carousel-container{aspect-ratio:auto;flex:0 0 45%;height:85vh}.project-modal--vertical .modal-info{flex-direction:column;flex:0 0 55%;height:85vh;padding:40px;display:flex;overflow-y:auto}}@media (width<=768px){.project-modal--vertical .carousel-container{aspect-ratio:9/14;max-height:55vh}}body{animation:.6s cubic-bezier(.25,1,.5,1) forwards pageEntrance}@keyframes pageEntrance{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@view-transition{navigation:auto}.reviews-cta{text-align:center;margin-top:35px;margin-bottom:10px}.reviews-cta-link{background-color:var(--primary);transition:var(--transition-fast);border-radius:50px;align-items:center;gap:10px;padding:12px 28px;font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 8px 20px #42b55740;color:var(--white)!important}.reviews-cta-link:hover{background-color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 12px 25px #42b55766;color:var(--white)!important}.reviews-cta-icon{fill:currentColor;width:18px;height:18px}.status-modal{background-color:var(--white);text-align:center;width:90%;max-width:480px;color:var(--text-dark);border:none;border-radius:20px;margin:auto;padding:2.5rem;font-family:Plus Jakarta Sans,sans-serif;box-shadow:0 20px 50px #00000026}.status-modal::backdrop{-webkit-backdrop-filter:blur(8px);background-color:#1a1f1c99}.status-modal[open]{flex-direction:column;align-items:center;gap:1.5rem;animation:.4s cubic-bezier(.25,1,.5,1) forwards statusModalFadeIn;display:flex}@keyframes statusModalFadeIn{0%{opacity:0;transform:scale(.95)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.status-modal .status-icon{border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:.5rem;display:inline-flex}.status-modal .status-icon--success{color:var(--primary);background-color:#42b55726}.status-modal .status-icon--error{color:#db4455;background-color:#db445526}.status-modal .status-title{color:var(--text-dark);margin:0;font-family:Plus Jakarta Sans,sans-serif;font-size:1.8rem;font-weight:600}.status-modal .status-message{color:var(--text-muted);margin:0;font-size:1rem;line-height:1.5}.status-modal .btn-status-close{background-color:var(--primary);color:var(--white);cursor:pointer;transition:var(--transition-fast);border:none;border-radius:8px;outline:none;width:100%;margin-top:.5rem;padding:.8rem 2.5rem;font-size:.95rem;font-weight:600;box-shadow:0 4px 14px #42b55733}.status-modal .btn-status-close:hover{background-color:var(--primary-dark);transform:translateY(-1px);box-shadow:0 6px 20px #2f8f414d}.service-area-map-wrapper{text-align:center;color:#fff;background-color:#42b557;border:1px solid #42b5571f;border-radius:24px;width:92%;max-width:900px;margin:40px auto 0;padding:50px 60px;box-shadow:0 20px 50px #42b55726}.service-area-title{color:#fff;margin-bottom:12px;font-size:2.2rem}.service-area-desc{color:#ffffffe6;max-width:650px;margin-bottom:30px;margin-left:auto;margin-right:auto;font-size:1.1rem}@media (width<=768px){.service-area-map-wrapper{border-radius:16px;padding:30px 20px}.service-area-title{font-size:1.8rem}.service-area-desc{margin-bottom:20px;font-size:1rem}.contact-map-container iframe{height:450px}}@media (width<=480px){.status-modal{border-radius:16px;padding:1.5rem}}.page-transition-enter{will-change:opacity, transform;animation:.65s cubic-bezier(.16,1,.3,1) forwards pageReveal}@keyframes pageReveal{0%{opacity:0;transform:translateY(24px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width>=769px){.logo-container{flex:1 0 200px;align-items:center;display:flex}.main-navbar{flex:2 auto;justify-content:center;display:flex}.header-actions{flex:1 0 200px;justify-content:flex-end;align-items:center;display:flex}.mobile-only{display:none!important}}@media (width<=768px){.header-actions{display:none!important}}.nav-item-has-children{position:relative}.sub-menu{opacity:0;visibility:hidden;z-index:1100;background-color:#fff;border:1px solid #0000000d;border-radius:12px;min-width:240px;padding:12px 0;transition:all .3s cubic-bezier(.25,1,.5,1);position:absolute;top:100%;left:50%;transform:translate(-50%)translateY(15px);box-shadow:0 10px 30px #00000014}.nav-item-has-children:hover .sub-menu{opacity:1;visibility:visible;transform:translate(-50%)translateY(5px)}.sub-menu li{width:100%;display:block}.sub-menu a{padding:10px 20px;transition:all .2s;display:block;color:#4a524d!important;text-transform:none!important;letter-spacing:0!important;font-size:.92rem!important;font-weight:500!important}.sub-menu a:hover{background-color:#f4f7f5;padding-left:24px;color:#42b557!important}@media (width<=768px){.nav-item-has-children{text-align:center;align-items:stretch;width:100%;position:static;flex-direction:column!important;display:flex!important}.nav-item-has-children>a{text-align:center!important;justify-content:center!important;align-items:center!important;width:100%!important;padding:13px 0!important;display:flex!important;position:relative!important}.nav-item-has-children>a:after{display:none!important}.sub-menu{opacity:0;visibility:hidden;width:100%;min-width:100%;max-height:0;padding:0;transition:max-height .35s,opacity .3s,visibility .3s;overflow:hidden;box-shadow:none!important;background-color:#0000!important;border:none!important;position:static!important;transform:none!important}.nav-item-has-children.active-dropdown .sub-menu{opacity:1;visibility:visible;max-height:400px;padding:4px 0 8px;flex-direction:column!important;align-items:center!important;display:flex!important}.sub-menu li{text-align:center!important;border:none!important;justify-content:center!important;align-items:center!important;width:100%!important;display:flex!important}.sub-menu a,.sub-menu a:link,.sub-menu a:visited{text-align:center!important;color:#5a635d!important;letter-spacing:.02em!important;text-transform:none!important;width:100%!important;box-shadow:none!important;background-color:#0000!important;justify-content:center!important;align-items:center!important;padding:10px 0!important;font-size:.9rem!important;font-weight:500!important;display:flex!important}.sub-menu a:hover{color:#42b557!important;background-color:#42b55712!important}.sub-menu-link{text-align:center!important;color:#5a635d!important;letter-spacing:.02em!important;text-transform:none!important;width:100%!important;box-shadow:none!important;background:0 0!important;padding:12px 0!important;font-size:.9rem!important;font-weight:500!important;display:block!important}.sub-menu-link:hover{color:#42b557!important;background-color:#42b55712!important}}.btn-back-link{color:var(--primary);transition:var(--transition-fast);cursor:pointer;background:0 0;border:none;align-items:center;padding:0;font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-back-link:hover{color:var(--primary-dark);transform:translate(-4px)}.project-detail-layout{flex-direction:column;gap:30px;display:flex}.project-detail-gallery{width:100%}.project-detail-carousel{border-radius:20px;overflow:hidden;box-shadow:0 15px 40px #0000001f}.project-detail-info{width:100%}.detail-info-card{background-color:var(--white);border:1px solid #0000000d;border-radius:20px;padding:40px;box-shadow:0 10px 30px #0000000a}.detail-section-title{color:var(--text-dark);margin-bottom:20px;font-family:Plus Jakarta Sans,sans-serif;font-size:1.8rem;font-weight:700}.detail-section-desc{color:var(--text-muted);margin-bottom:30px;font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;line-height:1.7}.detail-meta-list{border-top:1px solid #00000014;flex-direction:column;gap:20px;padding-top:25px;display:flex}.detail-meta-row{color:var(--text-muted);align-items:flex-start;gap:15px;font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;display:flex}.detail-meta-row i{color:var(--primary);text-align:center;flex-shrink:0;width:20px;margin-top:3px;font-size:1.1rem}.detail-meta-row strong{color:var(--text-dark)}.project-detail-cta{letter-spacing:.5px;transition:var(--transition-fast);font-weight:600}.project-detail-cta:hover{transform:translateY(-2px);box-shadow:0 8px 20px #42b55759}@media (width>=769px){.project-detail-layout{flex-direction:row;align-items:stretch;gap:40px}.project-detail-gallery{flex-direction:column;flex:0 0 58%;max-width:58%;display:flex}.project-detail-info{flex-direction:column;flex:0 0 42%;max-width:42%;display:flex}.project-detail-carousel{aspect-ratio:auto;flex:1;height:100%;min-height:380px;max-height:480px}.detail-info-card{flex-direction:column;flex:1;justify-content:space-between;height:100%;display:flex}.timeline-steps{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.project-detail-layout--vertical .project-detail-gallery{flex:0 0 42%;max-width:42%}.project-detail-layout--vertical .project-detail-info{flex:0 0 58%;max-width:58%}.project-detail-layout--vertical .project-detail-carousel{aspect-ratio:9/14;flex:none;width:100%;height:auto;max-height:65vh}}@media (width<=768px){.project-detail-layout--vertical .project-detail-carousel{aspect-ratio:9/14;max-height:60vh}}.project-detail-container{max-width:1060px;margin:0 auto;padding:0 24px}.hero-overlay--green{z-index:2;pointer-events:none;background:linear-gradient(135deg,#42b55773 0%,#132219bf 100%);transition:opacity 1.5s ease-in-out;position:absolute;inset:0}.carousel-thumbnails-strip{scrollbar-width:thin;scrollbar-color:var(--primary) #0000000d;gap:12px;margin-top:15px;padding-bottom:8px;display:flex;overflow-x:auto}.carousel-thumbnails-strip::-webkit-scrollbar{height:6px}.carousel-thumbnails-strip::-webkit-scrollbar-thumb{background-color:var(--primary);border-radius:4px}.carousel-thumbnails-strip::-webkit-scrollbar-track{background:#0000000d}.thumbnail-wrapper{cursor:pointer;opacity:.65;border:2px solid #0000;border-radius:8px;flex:0 0 80px;height:55px;transition:all .25s;overflow:hidden;box-shadow:0 4px 10px #0000000d}.thumbnail-wrapper:hover{opacity:.9}.thumbnail-wrapper.active{opacity:1;border-color:var(--primary);transform:scale(1.03)}.thumbnail-img{object-fit:cover;width:100%;height:100%}.detail-spec-grid{border-bottom:1px solid #00000014;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:30px;padding-bottom:25px;display:grid}.detail-spec-item{background-color:#00000005;border:1px solid #0000000a;border-radius:12px;flex-direction:column;gap:5px;padding:12px 16px;display:flex}.spec-label{text-transform:uppercase;letter-spacing:1px;color:var(--primary);font-family:Plus Jakarta Sans,sans-serif;font-size:.75rem;font-weight:700}.spec-value{color:var(--text-dark);font-family:Plus Jakarta Sans,sans-serif;font-size:.9rem;font-weight:600;line-height:1.3}.detail-timeline{margin-bottom:30px}.timeline-title{color:var(--text-dark);margin-bottom:20px;font-family:Plus Jakarta Sans,sans-serif;font-size:1.15rem;font-weight:700}.timeline-steps{flex-direction:column;gap:20px;display:flex}.timeline-step{align-items:flex-start;gap:15px;display:flex}.step-num{width:26px;height:26px;color:var(--primary);background-color:#42b5571a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:.75rem;display:flex}.step-text{font-family:Plus Jakarta Sans,sans-serif}.step-text strong{color:var(--text-dark);margin-bottom:4px;font-size:.95rem;font-weight:600;display:block}.step-text p{color:var(--text-muted);margin:0;font-size:.85rem;line-height:1.5}@media (width<=480px){.detail-spec-grid{grid-template-columns:1fr;gap:12px}}.estimate-success-card{background-color:var(--white);text-align:center;border:1px solid #0000000d;border-radius:24px;max-width:680px;margin:0 auto;padding:50px 40px;box-shadow:0 15px 50px #0000000d}.success-icon-badge{width:72px;height:72px;color:var(--primary);background-color:#42b5571f;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;font-size:2.2rem;display:flex}.success-main-title{color:var(--text-dark);margin-bottom:12px;font-family:Plus Jakarta Sans,sans-serif;font-size:2rem;font-weight:700}.success-subtitle{color:var(--text-muted);max-width:500px;margin:0 auto 35px;font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;line-height:1.6}.success-ticket-details{text-align:left;background-color:#00000004;border:1px solid #0000000a;border-radius:16px;margin-bottom:35px;padding:25px}.ticket-details-title{color:var(--text-dark);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #0000000f;margin-bottom:15px;padding-bottom:10px;font-family:Plus Jakarta Sans,sans-serif;font-size:1.1rem;font-weight:700}.ticket-info-grid{flex-direction:column;gap:12px;display:flex}.ticket-info-row{justify-content:space-between;align-items:flex-start;gap:20px;font-family:Plus Jakarta Sans,sans-serif;font-size:.9rem;display:flex}.info-label{color:var(--text-muted);flex-shrink:0;font-weight:500}.info-value{color:var(--text-dark);text-align:right;font-weight:600}.success-next-steps{text-align:left;margin-bottom:40px;padding:0 10px}.next-steps-title{color:var(--text-dark);margin-bottom:20px;font-family:Plus Jakarta Sans,sans-serif;font-size:1.15rem;font-weight:700}.next-steps-list{flex-direction:column;gap:20px;display:flex}.next-step-item{gap:15px;display:flex}.step-circle{background-color:var(--primary);width:24px;height:24px;color:var(--white);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:.8rem;font-weight:700;display:flex}.step-content{font-family:Plus Jakarta Sans,sans-serif}.step-content strong{color:var(--text-dark);margin-bottom:4px;font-size:.95rem;font-weight:600;display:block}.step-content p{color:var(--text-muted);margin:0;font-size:.85rem;line-height:1.5}.success-actions{border-top:1px solid #00000014;flex-direction:column;align-items:center;padding-top:30px;display:flex}.success-contact-notice{color:var(--text-muted);margin-top:10px;font-family:Plus Jakarta Sans,sans-serif;font-size:.85rem}.success-contact-notice strong{color:var(--text-dark)}@media (width<=576px){.estimate-success-card{padding:35px 20px}.ticket-info-row{flex-direction:column;gap:4px}.info-value{text-align:left}}.slide-photo--single{object-fit:cover;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;animation:1.5s cubic-bezier(.25,1,.5,1) forwards singleImageLoad,25s ease-in-out 1.5s infinite alternate singleSlideZoom!important}@keyframes singleImageLoad{0%{opacity:0;transform:scale(1.12)}to{opacity:1;transform:scale(1.03)}}@keyframes singleSlideZoom{0%{transform:scale(1.03)}to{transform:scale(1.08)}}.project-detail-view .hero-content h1{opacity:0;animation:1s cubic-bezier(.25,1,.5,1) .1s forwards heroTextFadeUp}.project-detail-view .hero-content p{opacity:0;animation:1s cubic-bezier(.25,1,.5,1) .25s forwards heroTextFadeUp}.project-detail-view .hero-content .section-tag{opacity:0;animation:1s cubic-bezier(.25,1,.5,1) forwards heroTextFadeUp}.project-detail-view .project-detail-container{opacity:0;animation:.9s cubic-bezier(.25,1,.5,1) .3s forwards detailsFadeUp}.project-detail-view .timeline-card{opacity:0;animation:.9s cubic-bezier(.25,1,.5,1) .45s forwards detailsFadeUp}@keyframes heroTextFadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes detailsFadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.reveal-on-scroll{opacity:0;will-change:opacity, transform;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(30px)}.reveal-on-scroll.revealed{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.12s}.reveal-delay-2{transition-delay:.24s}.reveal-delay-3{transition-delay:.36s}.reveal-delay-4{transition-delay:.48s}.reviews-carousel-wrapper{justify-content:center;align-items:center;max-width:1200px;margin:40px auto 20px;padding:0 60px;display:flex;position:relative}.reviews-carousel-container{width:100%;padding:10px 0;position:relative;overflow:hidden}.reviews-carousel-track{will-change:transform;gap:24px;transition:transform .6s cubic-bezier(.16,1,.3,1);display:flex}.review-carousel-item{box-sizing:border-box;flex:0 0 calc(33.3333% - 16px);justify-content:center;display:flex}.review-carousel-item .review-card{background-color:var(--white);transition:var(--transition-smooth);text-align:left;border:1px solid #00000005;border-radius:16px;flex-direction:column;width:100%;margin:0;padding:35px;display:flex;box-shadow:0 10px 30px #0000000a}.review-carousel-item .review-card:hover{background-color:var(--primary);transform:translateY(-5px);box-shadow:0 20px 40px #42b55740}.reviews-carousel-wrapper .carousel-arrow{cursor:pointer;z-index:10;width:48px;height:48px;color:var(--primary-green);background:#fff;border:1px solid #00000014;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;transition:all .25s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 12px #0000000f}.reviews-carousel-wrapper .carousel-arrow:hover{background:var(--primary-green);color:#fff;border-color:var(--primary-green);transform:translateY(-50%)scale(1.08)}.reviews-carousel-wrapper .arrow-left{left:0}.reviews-carousel-wrapper .arrow-right{right:0}.reviews-dots{justify-content:center;gap:8px;margin-top:15px;margin-bottom:35px;display:flex}.reviews-dots .dot{cursor:pointer;background:#0000001f;border-radius:50%;width:8px;height:8px;transition:all .25s}.reviews-dots .dot.active{background:var(--primary-green);border-radius:4px;width:22px}@media (width<=992px){.review-carousel-item{flex:0 0 calc(50% - 12px)}}@media (width<=576px){.reviews-carousel-wrapper{padding:0 10px}.reviews-carousel-wrapper .carousel-arrow{display:none}.review-carousel-item{flex:0 0 100%}.review-carousel-item .review-card{padding:30px 20px}}*,:before,:after{box-sizing:border-box}img,video,iframe{max-width:100%;height:auto}html,body{width:100%;overflow-x:hidden}@media (width<=1100px) and (width>=769px){.main-navbar ul{gap:2rem}.main-navbar a{font-size:.88rem}header{padding:1rem 1.5%}}@media (width<=480px){#home,.services-hero{min-height:100svh;padding:0 4%}.hero-content{width:100%;padding-top:5.5rem}.hero-content h1{letter-spacing:0;font-size:2rem;line-height:1.2}.hero-content p{max-width:100%;font-size:1rem}.btn-quote-hero{padding:.9rem 1.8rem;font-size:.85rem}.section-intro{margin-bottom:40px}.section-intro__title{letter-spacing:-.5px;font-size:1.8rem}.section-intro__desc{font-size:1rem}}@media (width<=768px){.services-section{padding:70px 16px}.services-grid{grid-template-columns:1fr;gap:24px}.service-card__image{height:220px}.service-card__body{padding:28px 20px}.teaser-grid{grid-template-columns:repeat(2,1fr);gap:16px}.teaser-card{padding:28px 16px}}@media (width<=420px){.teaser-grid{grid-template-columns:1fr}}@media (width<=768px){.projects-grid{gap:36px;padding:0 16px}.project-card,.project-card:nth-child(2n){flex-direction:column}.project-card__images,.project-card__content{flex:none;width:100%;max-width:100%}.project-card__img-wrapper img,.project-card__img-sola img{min-height:240px}.project-card__content{padding:28px 20px}.project-card__title{font-size:1.4rem}.project-card__desc{margin-bottom:20px;font-size:.95rem}}@media (width<=480px){.project-card__images{flex-direction:column}.project-card__img-wrapper,.project-card__img-wrapper2{width:100%}.project-card__img-wrapper img{min-height:200px}}@media (width<=768px){.reels-grid{grid-template-columns:1fr;gap:24px}.project-detail-container{padding:0 16px}.detail-info-card{padding:28px 20px}.detail-section-title{font-size:1.4rem}.detail-spec-grid{grid-template-columns:repeat(2,1fr);gap:16px}.timeline-steps{grid-template-columns:1fr;gap:20px}.carousel-thumbnails-strip{gap:8px}.thumbnail-wrapper{width:60px;height:48px}}@media (width<=480px){.detail-spec-grid{grid-template-columns:1fr}.project-detail-section{padding:40px 0}.services-hero[style]{height:40vh!important;min-height:240px!important}.project-detail-view .hero-content h1{font-size:1.6rem!important}}@media (width<=768px){.estimate-dashboard-form{border-radius:16px;padding:32px 20px}.estimate-step-block{margin-bottom:36px;padding-bottom:32px}.step-title{font-size:1.15rem}.services-checkbox-grid{grid-template-columns:repeat(2,1fr);gap:10px}.checkbox-tile__label{padding:14px 8px;font-size:.85rem}.radio-pills-container{flex-wrap:wrap;gap:8px}.estimate-container{padding-bottom:48px}}@media (width<=480px){.services-checkbox-grid{grid-template-columns:repeat(2,1fr)}.estimate-dashboard-form{border-radius:12px;padding:24px 16px}.btn-submit-estimate{padding:14px 20px;font-size:.9rem}.service-area-map-wrapper{padding:0 16px}.contact-map-container iframe{height:400px!important}}@media (width<=576px){.main-footer{padding-top:50px}.footer-container{grid-template-columns:1fr;gap:36px;padding:0 16px}.brand-column{text-align:center;align-items:center}.footer-heading:after{left:50%;transform:translate(-50%)}.contact-column,.cta-column{text-align:center;align-items:center}.footer-contact-list li{justify-content:center}.btn-footer-contact{align-self:center}.footer-logo img{max-width:160px;height:auto}.footer-socials{justify-content:center}}@media (width<=768px){.page-title-section{padding:5rem 16px 2rem}.page-title-section h1{font-size:2.2rem}}@media (width<=480px){.page-title-section h1{font-size:1.8rem}}@media (width<=768px){.home-about-grid{grid-template-columns:1fr;gap:32px}.home-about__intro{text-align:center}.home-about__cta-box{flex-direction:column;justify-content:center;gap:12px;width:100%}.btn-primary-home,.btn-secondary-home{text-align:center;width:100%}}@media (width<=576px){.estimate-success-card{padding:32px 20px}.ticket-info-grid{gap:12px}.next-steps-list{gap:16px}}.mobile-only{display:none}@media (width<=768px){.mobile-only{display:block}.header-actions{display:none}.btn-quote,.btn-quote-hero,.btn-footer-contact,.btn-submit-form,.btn-submit-estimate,.project-card__link-btn,.carousel-btn{min-width:44px;min-height:44px}.main-navbar a{padding:10px 0}.services-section{padding:64px 16px}}@media (width<=480px){.services-section{padding:48px 14px}}@media (width<=768px){.service-detail-hero-title{font-size:2rem}.service-detail-content{padding:0 16px}}@media (width<=380px){.hero-content{padding-top:5rem}.hero-content h1{font-size:1.75rem}}@media (width<=768px){.section-intro__title{font-size:clamp(1.6rem,5.5vw,2.4rem)}.hero-content h1{font-size:clamp(1.8rem,7vw,3rem)}.project-card__title{font-size:clamp(1.2rem,4vw,1.6rem)}}
