/* Kaala's photo-led service website. */
.native-estimate{min-width:0;overflow:visible}.native-estimate iframe{display:block;max-width:100%}.form-fallback{padding:0 24px 22px;font-size:12px;line-height:1.6;color:#526970}.form-fallback a{text-decoration:underline;text-underline-offset:3px}
.service-icon{display:block;width:48px;height:48px;stroke:#175578;stroke-width:2;fill:none;flex:none;overflow:visible}.trust-icon-wrap .service-icon{width:38px;height:38px}.benefit-icon-wrap,.trust-icon-wrap{overflow:visible}.header{padding:10px 5%;border-bottom:1px solid #e3e7de}.header .logo-frame{width:150px;height:112px}.header .brand-logo{width:220px;height:220px;left:-32px;top:-53px}.header nav{font-family:poppins,Arial,sans-serif;font-size:12px}.button{font-family:poppins,Arial,sans-serif;font-weight:600}.topbar{background:#103e4c;padding:8px 5%;font-size:11px}.photo-hero{position:relative;display:flex;isolation:isolate;min-height:720px;padding:66px 7%;overflow:hidden;background:#123e49;align-items:center}.hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 76%;z-index:-3}.hero-overlay{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(6,31,41,.96) 0%,rgba(6,31,41,.87) 30%,rgba(6,31,41,.42) 59%,rgba(6,31,41,.05) 100%)}.hero-content{max-width:710px;color:#fff}.photo-hero .eyebrow{color:#b1eee0;margin-bottom:22px}.photo-hero h1{font-family:poppins-black,poppins,Arial,sans-serif;font-size:clamp(50px,5vw,77px);line-height:1.1;letter-spacing:-.055em;font-weight:900;margin-bottom:24px}.hero-lead{font-size:23px;line-height:1.5;font-weight:500;margin-bottom:16px}.hero-detail{max-width:540px;font-size:14px;line-height:1.8;color:#e2eae8;margin-bottom:20px}.hero-checks{list-style:none;display:flex;gap:9px 20px;flex-wrap:wrap;padding:0;margin:20px 0 28px;font-size:11px;color:#eaf5f1}.hero-checks li:before{content:'✓';color:#a6e5d6;margin-right:8px}.hero-cta{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.hero-cta .button{padding:19px 23px;color:#103e4c;font-size:13px}.hero-call{font-size:12px;font-weight:500;white-space:nowrap}.hero-review-link{display:inline-flex;align-items:center;gap:12px;font-size:11px;margin-top:28px;color:#f1f4eb}.hero-review-link>span{color:#f9c969;font-size:16px;letter-spacing:2px}.review-ribbon{display:grid;grid-template-columns:270px minmax(0,1fr);gap:0 40px;padding:34px 0 22px 7%;background:#edf5fa;border-bottom:1px solid #d9e4d9;overflow:hidden}.review-summary{align-self:center}.review-summary .eyebrow{font-size:9px;letter-spacing:.11em;margin-bottom:12px}.review-summary .rating-top>strong{font-size:44px}.review-summary .review-stars{font-size:17px}.all-google{display:inline-block;font-size:11px;color:#175578;font-weight:600;margin-top:13px}.review-controls{display:flex;align-items:center;gap:8px;margin-top:18px}.review-controls button{border:1px solid #bfcfc4;background:#fff;color:#103e4c;border-radius:4px;min-height:32px;min-width:32px;cursor:pointer;padding:5px 9px;font-size:13px}.review-controls [data-review-pause]{font-size:10px;padding:5px 10px}.review-controls button:hover{background:#deedf6}.review-viewport{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#a5c4b9 transparent;outline-offset:-3px;min-width:0;align-self:stretch}.review-belt{display:flex;width:max-content;gap:18px;padding:0 0 10px}.review-list{display:flex;gap:18px;margin:0;padding:0;list-style:none}.rolling-review{display:flex;flex-direction:column;flex:none;width:320px;padding:24px;background:#fff;border:1px solid #d7e1d8;border-radius:7px}.rolling-review .review-stars{font-size:14px}.rolling-review blockquote{font-size:16px;font-weight:500;line-height:1.55;letter-spacing:-.02em;margin:15px 0 20px;flex:1}.rolling-review .review-author strong{font-size:11px}.rolling-review .review-author>div>span{font-size:9px}.rolling-review .review-avatar{width:34px;height:34px}.rolling-review>a{font-size:10px;color:#175578;margin-top:16px;text-decoration:underline;text-underline-offset:3px}.review-source-note{grid-column:1/-1;margin:15px 25px 0 0;font-size:9px;color:#647b74}.home-services{background:#faf9f5}.home-services .section-heading h2{font-size:clamp(36px,3.5vw,54px)}.home-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:40px}.home-service-grid article{background:#fff;border:1px solid #dce4dc;border-radius:8px;overflow:hidden;display:flex;flex-direction:column}.service-photo-link{display:block;position:relative;height:240px;overflow:hidden}.service-photo-link img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.service-photo-link:hover img{transform:scale(1.035)}.commercial-photo img{object-position:50% 78%}.service-tag{position:absolute;bottom:16px;left:17px;background:#103e4c;color:#fff;padding:6px 10px;font-size:9px;letter-spacing:.07em;border-radius:3px}.secondary-service .service-tag{background:#5d7069}.home-service-grid article>div{padding:27px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.home-service-grid h3{font-family:poppins,Arial,sans-serif;font-weight:700;font-size:20px;line-height:1.4;letter-spacing:-.025em;margin-bottom:14px}.home-service-grid p{color:#526970;font-size:13px;line-height:1.8;margin-bottom:20px;flex:1}.home-service-grid .text-link{font-size:11px;gap:15px;margin-top:0}.home-about{display:grid;grid-template-columns:.9fr 1fr;gap:9%;align-items:center;background:#edf3f7}.about-visual{position:relative;min-height:470px}.about-visual>img{display:block;width:100%;height:470px;object-fit:cover;object-position:center 45%;border-radius:7px}.about-visual>span{position:absolute;left:22px;right:22px;bottom:22px;background:#103e4cee;color:white;border-radius:4px;font-size:12px;padding:15px 18px}.home-about .welcome-copy{padding:0;max-width:520px}.home-about h2{font-size:clamp(37px,3.8vw,56px)}.home-about .welcome-copy>p:not(.eyebrow){font-size:14px;line-height:1.9}.home-about .eyebrow{color:#1c648c}.comparisons-grid{grid-template-columns:minmax(0,1fr);max-width:1000px;margin:40px auto 0}.image-comparison{aspect-ratio:16/10}.comparisons-grid figcaption{text-align:center;font-size:12px}.comparisons-section .section-heading{max-width:1000px;margin:auto}.refined-benefits .service-icon{width:48px;height:48px}.refined-promises .service-icon{width:38px;height:38px}.refined-promises .solar-promise-grid{gap:25px}.refined-promises .solar-promise-grid article{padding:0 0 0 25px;gap:16px}.refined-promises .solar-promise-grid article:first-child{padding:0}.refined-promises h3{font-size:17px}.refined-promises .solar-promise-grid p{font-size:13px}.solar-inner>img{object-position:center 72%}
@media(max-width:1100px){.photo-hero{min-height:700px;padding:55px 6%}.hero-content{max-width:590px}.photo-hero h1{font-size:58px}.hero-detail{max-width:480px}.hero-cta{gap:17px}.hero-overlay{background:linear-gradient(90deg,#061f29ed 0%,#061f29c9 42%,#061f2929 100%)}.review-ribbon{grid-template-columns:225px minmax(0,1fr);gap:0 25px;padding-left:6%}.home-service-grid{gap:18px}.home-service-grid article>div{padding:22px}.home-service-grid h3{font-size:18px}.service-photo-link{height:220px}.home-about{gap:7%}.about-visual,.about-visual>img{min-height:420px;height:420px}}
@media(max-width:800px){.header{padding:8px 6%}.header .logo-frame{height:104px;width:142px}.header .brand-logo{width:208px;height:208px;left:-30px;top:-50px}.photo-hero{padding:47px 7% 360px;min-height:930px;align-items:flex-start}.hero-content{max-width:none}.hero-background{object-position:55% 76%}.hero-overlay{background:linear-gradient(180deg,#061f29f2 0%,#061f29e0 35%,#061f29b0 57%,#061f2922 85%,#061f294a 100%)}.photo-hero .eyebrow{font-size:9px;margin-bottom:18px}.photo-hero h1{font-size:clamp(40px,9vw,60px);line-height:1.12;margin-bottom:21px}.hero-lead{font-size:20px;margin-bottom:14px}.hero-detail{font-size:13px;line-height:1.8;max-width:460px}.hero-checks{gap:8px 15px;font-size:10px;margin-bottom:23px}.hero-cta{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.hero-cta .button{font-size:12px;padding:17px 18px;max-width:100%;gap:20px}.hero-review-link{font-size:10px;gap:9px;margin-top:22px;flex-wrap:wrap}.hero-review-link>span{font-size:14px}.review-ribbon{display:block;padding:28px 0 20px}.review-summary{padding:0 7% 22px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 15px}.review-summary .eyebrow{grid-column:1/-1;margin:0 0 3px}.review-summary>a:first-of-type{grid-column:1;grid-row:2}.review-summary .all-google{grid-column:1;margin:0;font-size:10px}.review-controls{grid-column:2;grid-row:2/4;flex-wrap:wrap;justify-content:flex-end;max-width:150px;margin:0}.review-controls [data-review-pause]{order:3;width:100%;font-size:9px}.review-controls button{min-height:30px}.review-summary .rating-top>strong{font-size:38px}.review-summary .rating-top{gap:12px}.review-summary .rating-top small{font-size:10px}.review-summary .review-stars{font-size:14px}.review-viewport{padding-left:7%;padding-right:7%}.rolling-review{width:280px;padding:23px}.review-source-note{padding-left:7%;margin-top:12px;font-size:8px}.home-service-grid{grid-template-columns:1fr;gap:24px;margin-top:28px}.service-photo-link{height:270px}.home-service-grid article>div{padding:25px}.home-service-grid h3{font-size:21px}.home-service-grid p{font-size:14px}.home-service-grid .text-link{font-size:12px}.home-services .section-heading>p{font-size:13px}.home-about{grid-template-columns:1fr;gap:35px}.about-visual,.about-visual>img{height:370px;min-height:0}.home-about .welcome-copy{max-width:none}.home-about h2{font-size:42px}.home-about .welcome-copy>p:not(.eyebrow){font-size:14px}.image-comparison{aspect-ratio:4/3}.comparisons-grid{margin-top:28px}.refined-benefits .service-icon{width:38px;height:38px}.refined-promises .solar-promise-grid{gap:0}.refined-promises .solar-promise-grid article,.refined-promises .solar-promise-grid article:first-child{padding:24px 0;gap:18px}.refined-promises .solar-promise-grid article:first-child{padding-top:0}.refined-promises .service-icon{width:36px;height:36px}.refined-promises h3{font-size:19px}.refined-promises .solar-promise-grid p{font-size:14px}}
@media(max-width:390px){.photo-hero{min-height:960px;padding-bottom:330px}.photo-hero h1{font-size:39px}.hero-checks{display:block}.hero-checks li{margin:5px 0}.review-summary{gap:8px}.review-controls{max-width:125px}.rolling-review{width:260px}.hero-review-link{font-size:9px}.hero-cta .button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.service-photo-link img{transition:none}}

.header .logo-frame{height:122px}.home-about .welcome-copy .eyebrow{font-size:10px;letter-spacing:.12em}
@media(max-width:800px){.header .logo-frame{height:118px}}
/* Shared branding: allow the complete wordmark to show at every breakpoint. */
.header .logo-frame,footer .logo-frame{overflow:visible;height:138px;width:170px}.header .brand-logo,footer .brand-logo{width:228px;height:228px;left:-30px;top:-47px}.header{padding-top:4px;padding-bottom:4px}.photo-hero .hero-overlay{background:linear-gradient(90deg,#061f29d6 0%,#061f29bd 32%,#061f294d 64%,#061f290d 100%)}.photo-hero h1{text-shadow:0 2px 20px #061f2940}.window-inner{display:block;padding:65px 8%;background:#edf2ee}.window-inner>div{max-width:950px}.window-inner h1{margin-bottom:20px}.original-promise-symbol{display:block;width:65px;height:65px;margin-bottom:25px;overflow:visible}.enquiry-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:6%;padding:55px 6%;background:#edf2ee;max-width:1700px;margin:auto}.enquiry-intro{padding-top:15px;min-width:0}.enquiry-intro h1{font-size:clamp(38px,3.5vw,56px);line-height:1.15;margin-bottom:22px}.enquiry-intro>p:not(.eyebrow){font-size:14px;color:#526970;line-height:1.8;max-width:420px}.enquiry-intro .enquiry-lead{font-size:21px!important;color:#103e4c!important;font-weight:500}.enquiry-contact{display:flex;flex-direction:column;gap:24px;margin-top:35px}.enquiry-contact a{display:block;overflow-wrap:anywhere}.enquiry-contact span{display:block;font-size:9px;letter-spacing:.13em;color:#5c7d72;margin-bottom:6px}.enquiry-contact strong{font-family:poppins,Arial,sans-serif;font-size:16px;font-weight:600}.enquiry-assurance{display:flex;align-items:center;gap:16px;margin-top:38px;border-top:1px solid #cddbd2;padding-top:26px}.enquiry-assurance .service-icon{width:42px;height:42px}.enquiry-assurance p{font-size:12px;margin:0;color:#526970}.enquiry-form-card{background:#fff;border:1px solid #dce5df;border-radius:9px;min-width:0;overflow:hidden;box-shadow:0 10px 40px #103e4c08}.enquiry-card-heading{padding:26px 28px 20px;border-bottom:1px solid #e3eae5}.enquiry-card-heading h2{font-family:poppins,Arial,sans-serif;font-weight:600;font-size:23px;line-height:1.35;letter-spacing:-.025em;margin:0 0 10px}.enquiry-card-heading p{font-size:12px;color:#526970;margin:0}.enquiry-form-viewport{width:100%;height:clamp(520px,calc(100dvh - 230px),850px);overflow:hidden;background:white}.enquiry-form-viewport .original-form{display:block;width:100%;height:100%;min-width:0;border:0;border-radius:0;background:white}.enquiry-form-help{padding:14px 28px;margin:0;border-top:1px solid #e3eae5;font-size:10px;color:#526970}.enquiry-form-help a{color:#175578;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1000px){.enquiry-layout{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:35px;padding:40px 5%}.enquiry-contact strong{font-size:14px}.enquiry-card-heading{padding:22px}.enquiry-card-heading h2{font-size:21px}}
@media(max-width:800px){.header .logo-frame{width:145px;height:126px}.header .brand-logo{width:208px;height:208px;left:-30px;top:-43px}.header{padding:4px 6%}.photo-hero .hero-overlay{background:linear-gradient(180deg,#061f29db 0%,#061f29c9 33%,#061f2985 57%,#061f291a 88%,#061f2940 100%)}.window-inner{padding:45px 7%}.window-inner h1{font-size:44px}.original-promise-symbol{width:58px;height:58px;margin-bottom:20px}.enquiry-layout{grid-template-columns:minmax(0,1fr);gap:28px;padding:35px 5% 45px}.enquiry-intro{padding:0 2%}.enquiry-intro h1{font-size:39px;margin-bottom:18px}.enquiry-intro .eyebrow{font-size:9px;margin-bottom:17px}.enquiry-intro>p:not(.eyebrow){font-size:13px;max-width:none}.enquiry-intro .enquiry-lead{font-size:18px!important}.enquiry-contact{gap:17px;margin-top:24px}.enquiry-contact strong{font-size:15px}.enquiry-assurance{margin-top:24px;padding-top:21px}.enquiry-card-heading{padding:22px 20px 18px}.enquiry-card-heading h2{font-size:21px}.enquiry-form-viewport{height:clamp(520px,76dvh,760px)}.contact-layout .enquiry-form-viewport{height:clamp(500px,70dvh,700px)}.enquiry-form-help{padding:14px 20px}footer .logo-frame{height:138px;width:170px}}
@media(max-width:390px){.enquiry-intro h1{font-size:35px}.enquiry-form-card{border-radius:6px}.enquiry-card-heading h2{font-size:19px}.enquiry-form-viewport{height:600px}}

.header .logo-frame,footer .logo-frame{overflow:hidden}
.enquiry-start-card{padding:30px}.enquiry-card-icon{display:grid;place-items:center;width:68px;height:68px;border-radius:16px;background:#e9f4ee;margin-bottom:24px}.enquiry-card-icon .service-icon{width:44px;height:44px}.enquiry-start-card h3{font-family:poppins,Arial,sans-serif;font-size:25px;font-weight:600;line-height:1.4;letter-spacing:-.03em;margin:0 0 18px}.enquiry-start-card>p{font-size:14px;color:#526970;line-height:1.8}.enquiry-start-card ul{list-style:none;padding:0;margin:22px 0 28px}.enquiry-start-card li{font-size:13px;color:#526970;margin:10px 0;padding-left:23px;position:relative}.enquiry-start-card li:before{position:absolute;left:0;content:'✓';color:#1c648c}.enquiry-start{display:flex;width:100%;margin-top:26px;gap:20px;font-size:13px}.enquiry-start-card .form-window-note{font-size:10px;margin-top:12px}.enquiry-alternative{margin-top:25px;padding-top:22px;border-top:1px solid #e3eae5}.enquiry-alternative span{display:block;font-size:11px;color:#526970;margin-bottom:6px}.enquiry-alternative a{font-size:14px;font-weight:600}.enquiry-layout{padding-top:45px;padding-bottom:55px}.enquiry-intro .enquiry-assurance{margin-top:28px}
@media(max-width:800px){.enquiry-start-card{padding:25px 22px}.enquiry-start-card h3{font-size:24px}.enquiry-start-card>p{font-size:13px}.enquiry-start{font-size:12px;padding:17px 20px}.enquiry-start-card ul{margin-bottom:20px}.enquiry-intro h1{font-size:38px}.enquiry-layout{padding-top:30px;padding-bottom:40px}.enquiry-contact{gap:14px}.enquiry-assurance{display:none}.enquiry-card-heading h2{font-size:20px}}
#main>.review-ribbon:first-child{padding-top:22px;padding-bottom:15px}#main>.review-ribbon:first-child .rolling-review{padding:18px 22px}#main>.review-ribbon:first-child .rolling-review blockquote{font-size:15px;margin:10px 0 14px}#main>.review-ribbon:first-child .rolling-review>a{margin-top:12px}#main>.review-ribbon:first-child .review-source-note{margin-top:8px}
@media(max-width:800px){#main>.review-ribbon:first-child{padding-top:15px;padding-bottom:10px}#main>.review-ribbon:first-child .review-summary{padding-bottom:12px}#main>.review-ribbon:first-child .review-summary>.eyebrow{display:none}#main>.review-ribbon:first-child .review-summary>a:first-of-type{grid-row:1}#main>.review-ribbon:first-child .review-controls{grid-row:1/3}#main>.review-ribbon:first-child .rolling-review{padding:15px 19px;width:265px}#main>.review-ribbon:first-child .rolling-review .review-stars{font-size:11px}#main>.review-ribbon:first-child .rolling-review blockquote{font-size:14px;margin:8px 0 10px}#main>.review-ribbon:first-child .review-avatar{width:27px;height:27px;font-size:11px}#main>.review-ribbon:first-child .rolling-review>a{margin-top:9px;font-size:9px}#main>.review-ribbon:first-child .review-source-note{font-size:8px}}

.quote-sun{display:none!important}
@media(max-width:800px){footer{display:flex;flex-direction:column;align-items:flex-start;gap:22px;padding:36px 7% calc(100px + env(safe-area-inset-bottom))}footer>p{margin:0;max-width:none;line-height:1.7}footer>a:not(.brand){text-align:left;font-size:15px}.footer-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:0 22px}.footer-nav a{display:block;padding:11px 0;line-height:1.5}.footer-bottom{display:flex;flex-direction:column;width:100%;gap:10px;padding-top:22px;line-height:1.6}.quote-section h2{font-size:clamp(32px,9vw,46px);line-height:1.16}.quote-section>.button{max-width:100%;font-size:12px;padding:16px 18px}}
.link-arrow{display:inline-block;width:17px;height:17px;vertical-align:-3px;flex-shrink:0;margin-left:5px}.button .link-arrow{margin-left:0}.welcome-start .link-arrow{width:19px;height:19px}
