:root{--home-red:#a52a32;--home-red-dark:#7f2027;--home-navy:#12233f;--home-slate:#49627d;--home-cream:#f7f6f2;--home-blue-gray:#e9eef3;--home-text:#202832;--home-border:#d7dee5}
.homepage-theme{--green:var(--home-red);--green-dark:var(--home-red-dark);--black:var(--home-text);--soft:var(--home-blue-gray);--line:var(--home-border);--accent:var(--home-red);--ink:var(--home-text);background:var(--home-cream);color:var(--home-text)}

/* Shared header and footer */
.homepage-theme .top-service-bar{background:var(--home-navy);border-color:#243b5a}.homepage-theme .top-service-bar .top-stars{color:#fff}.homepage-theme .standard-header{background:#fff;color:var(--home-navy);border-bottom-color:var(--home-border);box-shadow:0 3px 16px rgba(18,35,63,.08)}.homepage-theme .standard-header .header-wordmark,.homepage-theme .standard-header .main-nav a{color:var(--home-navy)}.homepage-theme .standard-header .header-wordmark b,.homepage-theme .standard-header .main-nav a::before{color:var(--home-red)}.homepage-theme .standard-header .main-nav{background:#fff;border-bottom-color:var(--home-border)}.homepage-theme .standard-header .header-call{background:var(--home-red);border-color:var(--home-red);color:#fff}.homepage-theme .standard-header .header-call:hover{background:var(--home-navy);border-color:var(--home-navy)}.homepage-theme .header-call-icon{background:#fff;color:var(--home-red)}.homepage-theme .nav-submenu{background:#fff;border-top-color:var(--home-red)}.homepage-theme .nav-submenu a{color:var(--home-navy)!important}.homepage-theme .nav-submenu a:hover,.homepage-theme .nav-submenu a:focus{background:var(--home-blue-gray);color:var(--home-navy)!important;border-left-color:var(--home-red)}.homepage-theme .standard-site-footer{background:var(--home-navy);color:#bcc7d3;border-top-color:var(--home-red)}.homepage-theme .standard-site-footer h3{color:#fff}.homepage-theme .standard-site-footer a{color:#bcc7d3}.homepage-theme .standard-site-footer a:hover{color:#fff}.homepage-theme .standard-site-footer .footer-bottom,.homepage-theme .footer-licenses{border-color:var(--home-slate)}.homepage-theme .standard-site-footer .footer-bottom b{color:var(--home-red)}.homepage-theme .footer-licenses span{color:#9eacbb}

/* Hero */
.homepage-theme .hero-overlay{background:linear-gradient(90deg,rgba(18,35,63,.88),rgba(18,35,63,.48) 55%,rgba(18,35,63,.62))}.homepage-theme .hero:before{background:linear-gradient(0deg,rgba(18,35,63,.38),rgba(18,35,63,.06))}.homepage-theme .hero-copy{text-shadow:0 3px 30px rgba(9,20,38,.75)}.homepage-theme .hero-sub{text-align:center}.homepage-theme .hero-sub strong:before{background:var(--home-red)}.homepage-theme .hero-sub strong{color:#fff}.homepage-theme .hero .outline-button{background:var(--home-red);border-color:var(--home-red);color:#fff}.homepage-theme .hero .outline-button+.outline-button{background:rgba(255,255,255,.12);border-color:#fff}.homepage-theme .hero .outline-button:hover{background:#fff;border-color:#fff;color:var(--home-navy)}.homepage-theme .reviews-services-divider{height:6px;background:var(--home-red)}

/* Reviews */
.homepage-theme .review-showcase,.homepage-theme .review-showcase:before,.homepage-theme .review-showcase:after{background:var(--home-cream);color:var(--home-text)}.homepage-theme .review-image-placeholder{background:linear-gradient(145deg,var(--home-slate),var(--home-navy));border-color:var(--home-navy);box-shadow:-16px 16px 0 var(--home-red)}.homepage-theme .review-image-placeholder span{background:var(--home-navy);color:#fff}.homepage-theme .review-content .overline{color:var(--home-red)}.homepage-theme .review-content h2,.homepage-theme .review-showcase .testimonial-carousel,.homepage-theme .review-showcase .testimonial-author{color:var(--home-navy)}.homepage-theme .review-content h2 span,.homepage-theme .review-rating .giant-stars{color:var(--home-red)}.homepage-theme .review-showcase .testimonial-slide blockquote{color:var(--home-text)}.homepage-theme .review-showcase .testimonial-author span{color:#647387}.homepage-theme .testimonial-pagination button.active{background:var(--home-red);border-color:var(--home-navy)}.homepage-theme .review-button{background:var(--home-red);border-color:var(--home-red);color:#fff}.homepage-theme .review-button:hover{background:var(--home-navy);border-color:var(--home-navy);color:#fff}.homepage-theme .review-button-secondary{background:transparent;border-color:var(--home-navy);color:var(--home-navy)}
.homepage-theme img.review-image-placeholder{display:block;width:100%;height:375px;object-fit:cover;object-position:center 58%}
@media(max-width:900px){.homepage-theme img.review-image-placeholder{height:360px}}
@media(max-width:700px){.homepage-theme img.review-image-placeholder{height:240px}}

/* Services */
.homepage-theme .lifetime.section-white{background:var(--home-blue-gray)}.homepage-theme .center-heading h2{color:var(--home-navy)}.homepage-theme .center-heading h2 span{color:var(--home-red)}.homepage-theme .heading-copy{color:#526274}.homepage-theme .system-card{overflow:hidden;background:#fff;border-color:var(--home-border);box-shadow:0 10px 30px rgba(18,35,63,.07)}.homepage-theme .system-card h3{color:var(--home-navy)}.homepage-theme .system-card>p{color:#526274}.homepage-theme .system-card:hover{box-shadow:0 20px 45px rgba(18,35,63,.16)}

/* FAQ */
.homepage-theme .faq,.homepage-theme .faq:before{background:var(--home-cream);color:var(--home-text)}.homepage-theme .faq h2{color:var(--home-navy)}.homepage-theme .faq h2 span,.homepage-theme .faq .overline,.homepage-theme .faq-item button span{color:var(--home-red)}.homepage-theme .faq-item,.homepage-theme .faq-item:last-child{border-color:#cbd4de}.homepage-theme .faq-item button{color:var(--home-navy)}.homepage-theme .faq-answer p{color:#526274}

/* Contact */
.homepage-theme .contact{background:var(--home-blue-gray);color:var(--home-navy)}.homepage-theme .contact:before{background:var(--home-cream)}.homepage-theme .contact .dark-overlay{display:none}.homepage-theme .contact-grid>div>p:not(.overline){color:#526274}.homepage-theme .contact-phone{color:var(--home-red)}.homepage-theme .contact-form{border:1px solid var(--home-border);box-shadow:0 18px 50px rgba(18,35,63,.12);color:var(--home-text)}.homepage-theme .contact-form input,.homepage-theme .contact-form select,.homepage-theme .contact-form textarea{border-color:#aebac7}.homepage-theme .contact-form .solid-button{background:var(--home-red);border-color:var(--home-red);color:#fff}.homepage-theme .contact-form .solid-button:hover{background:var(--home-navy);border-color:var(--home-navy);color:#fff}

@media(max-width:1050px){.homepage-theme .standard-header .menu-toggle span{background:var(--home-navy)}.homepage-theme .standard-header .main-nav{background:#fff}.homepage-theme .nav-submenu{background:var(--home-cream);border-top-color:var(--home-red)}.homepage-theme .nav-submenu a{color:var(--home-navy)!important}}
@media(max-width:700px){.homepage-theme .review-image-placeholder{box-shadow:-9px 9px 0 var(--home-red)}}

/* Keep the hero video clear beneath one even color wash. */
.homepage-theme .hero-overlay{background:rgba(18,35,63,.34)}
.homepage-theme .hero:before{display:none}
.homepage-theme .hero-copy{text-shadow:0 3px 24px rgba(9,20,38,.72)}

/* Gold is reserved for review ratings. */
.homepage-theme .top-service-bar .top-stars,
.homepage-theme .review-rating .giant-stars{color:#d4af37}

/* Full brand mark within the existing shared header structure. */
.homepage-theme .standard-header{height:98px;padding-inline:2vw}
.homepage-theme .header-wordmark{width:300px;height:94px;overflow:hidden}
.homepage-theme .header-brand-logo{display:block;width:100%;height:100%;object-fit:contain}
@media(min-width:1051px){.homepage-theme .standard-header .main-nav{top:98px;height:32px}.homepage-theme .standard-header .main-nav a{padding:0;line-height:1}.homepage-theme .hero{margin-top:164px;height:calc(100vh - 164px);min-height:0;padding:28px 0 22px}.homepage-theme .hero-copy{transform:translateY(4px)}.homepage-theme .hero h1{font-size:clamp(44px,5.4vw,76px);line-height:.98}.homepage-theme .hero-sub{font-size:clamp(16px,1.55vw,22px)}.homepage-theme .hero-answer{max-width:780px;margin-top:14px;font-size:clamp(13px,1.05vw,16px);line-height:1.45}.homepage-theme .hero-actions{margin-top:22px}.homepage-theme .hero .hero-actions .outline-button{padding:14px 22px}@supports(height:100dvh){.homepage-theme .hero{height:calc(100dvh - 164px)}}}
@media(max-width:1050px){.homepage-theme .standard-header{height:86px;padding-inline:14px}.homepage-theme .standard-header .main-nav{top:86px}.homepage-theme .header-wordmark{width:245px;height:82px}.homepage-theme .hero{margin-top:120px;min-height:calc(100svh - 120px)}}
@media(max-width:700px){.homepage-theme .header-wordmark{width:190px;height:80px}.homepage-theme .hero{margin-top:120px;min-height:calc(100svh - 120px)}}
@media(max-width:380px){.homepage-theme .header-wordmark{width:170px}}

@media(max-width:1050px){.homepage-theme .standard-header .main-nav{padding:2px 12px}.homepage-theme .standard-header .main-nav a{padding-block:7px}}
@media(min-width:1051px) and (max-height:720px){.homepage-theme .hero{padding-block:16px}.homepage-theme .hero h1{font-size:clamp(40px,5vw,64px)}.homepage-theme .hero-answer{margin-top:10px;font-size:13px;line-height:1.35}.homepage-theme .hero-actions{margin-top:16px}.homepage-theme .hero .hero-actions .outline-button{padding-block:11px}}

/* Shared subpage palette and spacing */
.homepage-theme.subpage-shell main{padding-top:170px}.homepage-theme .service-hero{background:linear-gradient(120deg,var(--home-navy),#294866)}.homepage-theme .service-hero .eyebrow,.homepage-theme .eyebrow{color:var(--home-red)}.homepage-theme .service-hero p{color:#e8edf2}.homepage-theme .button{background:var(--home-red);border-color:var(--home-red);color:#fff}.homepage-theme .button:hover,.homepage-theme .button:focus-visible{background:var(--home-navy);border-color:var(--home-navy);color:#fff}.homepage-theme .button.secondary{background:transparent;border-color:#fff;color:#fff}.homepage-theme .button.secondary:hover,.homepage-theme .button.secondary:focus-visible{background:#fff;color:var(--home-navy)}.homepage-theme .details{background:var(--home-blue-gray)}.homepage-theme .content h2{color:var(--home-navy)}.homepage-theme .content h2 span{color:var(--home-red)}.homepage-theme .content p,.homepage-theme .content li{color:#526274}.homepage-theme .card,.homepage-theme .service-overview-grid article,.homepage-theme .problem-grid article{border-color:var(--home-border);border-top-color:var(--home-red)}.homepage-theme .service-list{border-left-color:var(--home-red)}.homepage-theme .service-callout,.homepage-theme .maintenance-frequency{background:var(--home-navy)}.homepage-theme .service-callout span{border-color:var(--home-slate)}.homepage-theme .service-close{background:var(--home-navy)}.homepage-theme .service-close h2,.homepage-theme .service-close p{color:#fff}.homepage-theme .service-close h2 span{color:#fff}.homepage-theme .service-footer{background:var(--home-navy);border-top-color:var(--home-red)}@media(max-width:1050px){.homepage-theme.subpage-shell main{padding-top:120px}}

.homepage-theme .area-hvac-section{background:var(--home-navy)}.homepage-theme .dark-list{border-color:var(--home-slate)}.homepage-theme .dark-list a{border-color:var(--home-slate)}.homepage-theme .company-paths a{background:var(--home-navy)}.homepage-theme .area-radius-card{background:var(--home-red);border-color:var(--home-navy);color:#fff}.homepage-theme .area-radius-card p{color:#fff}.homepage-theme .community-list li::before{background:var(--home-red)}.homepage-theme .process-list article>span{background:var(--home-navy);color:#fff}

/* Sticky mobile header and call action across every page. */
.homepage-theme .sticky-call{display:none}@media(max-width:1050px){.homepage-theme{padding-bottom:54px}.homepage-theme .top-service-bar{position:fixed;z-index:1000}.homepage-theme .standard-header{position:fixed;z-index:999}.homepage-theme .standard-header .main-nav{z-index:1001;max-height:calc(100dvh - 120px);box-shadow:0 14px 28px rgba(18,35,63,.18)}.homepage-theme .sticky-call{position:fixed;z-index:1100;right:0;bottom:0;width:100%;height:54px;padding:6px 18px;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--home-red);border:0;border-top:2px solid var(--home-red-dark);box-shadow:0 -6px 24px rgba(18,35,63,.22);color:#fff;text-decoration:none;text-transform:uppercase}.homepage-theme .sticky-call-icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border-radius:50%;background:#fff;color:var(--home-red);font-size:17px}.homepage-theme .sticky-call>span:last-child{display:flex;flex-direction:column;gap:1px}.homepage-theme .sticky-call small{font-size:8px;font-weight:900;letter-spacing:.12em}.homepage-theme .sticky-call strong{font-size:15px;letter-spacing:.025em}}

/* Tighter service-page rhythm keeps key information closer together. */
.homepage-theme.subpage-shell .service-hero{padding:72px 22px}.homepage-theme.subpage-shell .content{padding-top:58px;padding-bottom:58px}.homepage-theme.subpage-shell .intro{gap:48px}.homepage-theme.subpage-shell .cards,.homepage-theme.subpage-shell .service-overview-grid{gap:16px}.homepage-theme.subpage-shell .service-close .content{padding-top:54px;padding-bottom:54px}.homepage-theme.subpage-shell .area-section-heading{margin-bottom:30px}.homepage-theme.subpage-shell .one-company-grid{margin-bottom:30px}@media(max-width:900px){.homepage-theme.subpage-shell .service-hero{padding:58px 20px}.homepage-theme.subpage-shell .content{padding-top:46px;padding-bottom:46px}.homepage-theme.subpage-shell .intro{gap:32px}}@media(max-width:600px){.homepage-theme.subpage-shell .service-hero{padding:42px 18px}.homepage-theme.subpage-shell .content{padding-top:36px;padding-bottom:36px}.homepage-theme.subpage-shell .service-close .content{padding-top:40px;padding-bottom:40px}.homepage-theme.subpage-shell .intro{gap:26px}}
