.services-dropdown{position:relative}.services-toggle{border:0;background:none;color:var(--ink);font:inherit;padding:12px 0;display:flex;gap:8px;align-items:center}.services-toggle span{font-size:17px}.service-menu{display:none;position:absolute;top:100%;left:-20px;width:290px;background:white;padding:8px 0;border:1px solid var(--line);box-shadow:0 16px 35px #001a3615;z-index:30}.services-dropdown.expanded .service-menu{display:block}.service-menu a{display:block;font-size:15px;line-height:1.4;padding:12px 20px;border:0}.service-category{padding:4px 0 12px;border-bottom:1px solid var(--line)}.service-category-label{display:block;padding:9px 20px 7px;font-size:15px;line-height:1.4;font-weight:650;color:var(--navy)}.service-submenu a{padding:11px 20px 11px 34px;font-size:14px;min-height:42px}.service-category:last-child{padding-top:8px;padding-bottom:4px;border-bottom:0}.service-menu a:hover,.service-menu a:focus-visible{background:#f4f6f9}.audience-entry{display:grid;grid-template-columns:1fr 1fr;padding:50px 0;gap:55px}.audience-entry article{padding:10px 0 15px}.audience-entry article+article{border-left:1px solid var(--line);padding-left:55px}.audience-entry h2{font-size:39px;line-height:1.1}.audience-entry p{font-size:16px;line-height:1.7;max-width:510px;margin:20px 0 25px}.audience-entry .text-link{display:block;width:max-content;margin-top:20px}.audience-entry .btn{white-space:normal;text-align:center}.audience-tabs{display:flex;justify-content:center;gap:12px;padding:22px;background:#f6f8fa;border-bottom:1px solid var(--line)}.audience-tabs a{font-size:16px;min-width:170px;text-align:center;padding:12px 22px;border:1px solid #a8b4c1;border-radius:28px}.audience-tabs a[aria-current=page]{background:var(--navy);color:white;border-color:var(--navy)}.audience-tabs+.reference-service-strip.filters{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.segment-hero{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:white;min-height:490px}.segment-hero-copy{padding:65px 10% 60px 12%;align-self:center}.segment-hero h1{font-size:clamp(3rem,calc(var(--layout-width) * 0.045),5rem);line-height:1.05}.segment-hero .eyebrow{color:#d5bb85;font-size:13px;letter-spacing:.16em}.segment-hero p{color:white;font-size:17px;line-height:1.7;margin:24px 0 30px;max-width:550px}.segment-hero .btn{white-space:normal;text-align:center}.segment-hero figure{margin:0;position:relative;min-height:490px}.segment-hero img{display:block;width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.segment-hero figcaption{position:absolute;bottom:15px;right:18px;color:white;font-size:12px;padding:6px 10px;background:#001a3699}.segment-trust{display:flex;justify-content:space-between;gap:22px;padding:25px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.6;color:var(--navy)}.segment-section{padding:55px 0;max-width:1000px}.segment-section h2,.segment-services h2,.segment-faq h2{font-size:40px;line-height:1.15}.segment-section p{font-size:17px;line-height:1.8;max-width:900px}.segment-services{padding:0 0 55px}.segment-service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px 60px;margin-top:35px}.segment-service-grid article{border-top:1px solid var(--gold);padding-top:25px}.segment-service-grid h3{font-size:30px;margin-top:13px}.segment-service-grid p{font-size:16px;line-height:1.7;max-width:490px}.segment-service-grid .text-link{font-size:15px}.segment-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:40px 0}.segment-columns h2{font-size:30px;line-height:1.2}.segment-columns p{font-size:16px;line-height:1.75;margin-bottom:0}.segment-faq{padding:55px 0}.segment-faq details{border-bottom:1px solid var(--line);padding:22px 0}.segment-faq summary{font-size:17px;line-height:1.5;cursor:pointer}.segment-faq details p{font-size:16px;line-height:1.8;max-width:900px}.segment-cta{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:45px 0 60px;border-top:1px solid var(--line)}.segment-cta h2{font-size:38px}.segment-cta p{font-size:16px;line-height:1.7;max-width:650px}.segment-cta .btn{flex-shrink:0;white-space:normal;text-align:center}.residential-estimate .book-sidebar h2{font-size:32px}.residential-estimate .book-sidebar p{font-size:16px;line-height:1.7}.residential-estimate .estimate strong{font-family:Georgia,serif}.residential-estimate .book-actions .btn{white-space:normal;text-align:center}.estimate-details{margin:25px 0}.estimate-details summary{cursor:pointer;font-size:16px}.residential-estimate .small{line-height:1.7}.residential-estimate .small a{overflow-wrap:anywhere}.residential-estimate #estimate-email{white-space:normal;text-align:center}
@media(max-width:1100px){.segment-hero-copy{padding:50px 8%}.segment-trust{font-size:13px}.segment-columns{gap:24px}.segment-cta{flex-wrap:wrap}.header .nav{gap:18px}.header .nav>.btn{font-size:14px;padding:12px 18px;max-width:290px;white-space:normal;text-align:center}}
@media(max-width:800px){.services-toggle{font-size:16px;width:100%;justify-content:space-between}.service-menu{position:static;width:100%;box-shadow:none;margin-top:8px;border:0;border-left:2px solid var(--gold)}.services-dropdown{width:100%}.header .nav>.btn{max-width:none}.audience-entry{grid-template-columns:1fr;gap:25px;padding:35px 0}.audience-entry article+article{border-left:0;border-top:1px solid var(--line);padding:30px 0 5px}.audience-entry h2{font-size:35px}.segment-hero{grid-template-columns:1fr;min-height:0}.segment-hero-copy{padding:45px 6%}.segment-hero h1{font-size:clamp(3rem,calc(var(--layout-width) * 0.1),4.2rem)}.segment-hero figure{min-height:0;aspect-ratio:1.5}.segment-trust{flex-wrap:wrap;justify-content:flex-start;gap:12px 25px;padding:20px 0;font-size:14px}.segment-section{padding:38px 0}.segment-service-grid{gap:28px}.segment-columns{grid-template-columns:1fr;gap:30px;padding:32px 0}.segment-faq{padding:35px 0}.segment-section h2,.segment-services h2,.segment-faq h2{font-size:34px}.segment-cta{display:block;padding:35px 0 45px}.segment-cta h2{font-size:34px}.segment-cta .btn{margin-top:15px}.audience-tabs a{min-width:0;flex:1;max-width:230px}.footer-message .text-link{white-space:normal}.reference-intro p{font-size:16px}}
@media(max-width:460px){.segment-service-grid{grid-template-columns:1fr}.audience-tabs{padding:15px;gap:10px}.audience-tabs a{padding:11px 15px}.audience-entry .btn{max-width:100%}.residential-estimate .book-actions{gap:14px}.residential-estimate .book-actions .btn{max-width:65%;padding:12px 17px}}

.segment-section.with-photo{max-width:1320px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:55px}.segment-section.with-photo p{margin-bottom:0}.segment-detail-photo{margin:0;min-width:0}.segment-detail-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.segment-detail-photo figcaption{font-size:13px;line-height:1.6;color:var(--muted);padding:12px 0 0;border-bottom:1px solid var(--line);padding-bottom:12px}@media(max-width:1100px){.segment-section.with-photo{gap:32px}}@media(max-width:800px){.segment-section.with-photo{grid-template-columns:1fr;gap:25px}.segment-detail-photo figcaption{font-size:13px}}

/* Residential service categories and additional home services. */
.residential-services{scroll-margin-top:25px}.residential-service-tabs{display:flex;gap:14px;padding:0 0 24px;margin:0 0 36px;border-bottom:1px solid var(--line)}.residential-service-tabs button{border:1px solid #a8b4c1;border-radius:28px;min-height:52px;background:white;color:var(--navy);font-size:16px;line-height:1.45;padding:13px 26px}.residential-service-tabs button[aria-selected=true]{background:var(--navy);border-color:var(--navy);color:white}.residential-service-tabs button:hover{border-color:var(--gold)}.residential-service-tabs button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.residential-service-panel[hidden]{display:none}.residential-service-panel:focus-visible{outline:2px solid var(--gold);outline-offset:8px}.additional-services-intro{font-size:17px;line-height:1.75;max-width:700px;margin:20px 0 0}.additional-service-grid{gap:40px 65px;margin-top:35px}.additional-service-grid h3{font-size:34px}.additional-service-grid article>p{max-width:520px;margin:15px 0 20px;line-height:1.8}.additional-service-details{margin:0 0 25px}.additional-service-details>div{padding:17px 0;border-top:1px solid var(--line)}.additional-service-details dt{font-size:13px;line-height:1.5;font-weight:600;color:var(--navy);margin-bottom:8px}.additional-service-details dd{margin:0;font-size:16px;line-height:1.8;color:var(--muted)}.additional-service-grid .text-link{min-height:44px;padding:10px 0;display:inline-flex;gap:20px;align-items:center}.additional-service-grid .text-link>span{font-size:20px}.additional-service-grid .service-icon{width:40px;height:40px}.residential-estimate .choice input{flex-shrink:0}
@media(max-width:800px){.residential-service-tabs{gap:12px;margin-bottom:30px;padding-bottom:20px}.residential-service-tabs button{font-size:15px;padding:12px 20px}.additional-service-grid{gap:30px}.additional-service-details dd{font-size:15px}.additional-services-intro{font-size:16px}.additional-service-grid h3{font-size:32px}}
@media(max-width:580px){.residential-service-tabs button{flex:1;min-width:0;padding:12px 13px;font-size:14px}.additional-service-grid{grid-template-columns:1fr;gap:35px}.additional-service-grid article>p{font-size:16px}.additional-service-details>div{padding:16px 0}}

.additional-service-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 28px;margin-top:12px}.additional-service-actions .text-link{max-width:100%}
@media(min-width:1101px){.residential-services .segment-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}}

/* Service banners keep people in view; detail photos retain their full image. */
.segment-hero{min-height:clamp(490px,calc(var(--layout-width) * 0.32),980px)}
.segment-hero:not(.residential-hero) img{object-position:right 20%}
.segment-detail-photo img{height:auto;aspect-ratio:auto;object-fit:contain}
@media(max-width:800px){.segment-hero{min-height:0}.segment-hero figure{aspect-ratio:3/2}.segment-hero:not(.residential-hero) figure{aspect-ratio:1391/1131}.segment-hero img{object-fit:contain;object-position:center}}
