/* Homepage revision 2: deeper color, a stronger brand and local emphasis. */
.brand small{font-size:12px;letter-spacing:.16em;line-height:1.3;margin-top:7px}
.brand>span{font-size:27px}
.brand img{width:58px;height:58px}
.header{gap:24px}
.header nav{gap:22px}

.hero{position:relative;background-color:#0c2340;background-image:linear-gradient(120deg,#07172b33,transparent 52%,#50718a22)}
.hero-grid{position:relative;z-index:1}
.hero-detail{position:absolute;width:490px;height:490px;left:calc(50% - 200px);top:100px;opacity:.075;pointer-events:none;color:#d0dfeb;transform:rotate(22.5deg)}
.hero-story:before{content:'';position:absolute;left:-24px;top:26px;bottom:3px;border-left:1px solid #9fb5ca22}
.hero h1{position:relative}
.hero-lead{padding-left:17px;border-left:2px solid #9aafc3}
.architectural{margin-top:30px;padding:16px 16px 13px;border:1px solid #90adc12e;background-color:#16334b4d;background-image:linear-gradient(#a2bedb0c 1px,transparent 1px),linear-gradient(90deg,#a2bedb0c 1px,transparent 1px);background-size:24px 24px}
.architectural:before,.architectural:after{content:'';position:absolute;width:14px;height:14px;pointer-events:none;border-color:#b0c7da;border-style:solid}
.architectural:before{left:-1px;top:-1px;border-width:1px 0 0 1px}
.architectural:after{right:-1px;bottom:-1px;border-width:0 1px 1px 0}
.architectural svg{height:124px;opacity:.87;color:#9eb9d0}
.architectural>span{font-size:8px;margin-top:9px;letter-spacing:.18em;color:#c8d7e3}
.inquiry{position:relative;border-top:3px solid #a8bacb;box-shadow:12px 12px 0 #8da7bc14,0 20px 50px #0002}
.inquiry:before{content:'';position:absolute;left:-9px;top:20px;bottom:-9px;right:20px;border:1px solid #c4d9e62e;z-index:-1;pointer-events:none}
.form-arrow{color:#496b88}

.proof-band{background:#dce6ef;border-bottom-color:#bacbd9}
.experience{border-right-color:#b5c8d9}
.review-reserved .review-preview-note{color:#4f6173}

.services-section{position:relative;color:#fff;background-color:#1c3a55;background-image:linear-gradient(110deg,#243f5900 68%,#52728a18),linear-gradient(#adc5db08 1px,transparent 1px);background-size:auto,100% 64px;overflow:hidden}
.services-section:before{content:'';position:absolute;left:26px;right:26px;top:24px;bottom:24px;border:1px solid #a9c3d015;pointer-events:none}
.services-section .wrap{position:relative}
.services-section .section-heading>.eyebrow{color:#c0d2e0}
.services-section .section-heading p:not(.eyebrow){color:#d5e0e8}
.services-section .section-heading h2{color:#fff}
.maintenance-feature{background:#0b243e;border:1px solid #7592aa66;box-shadow:10px 10px 0 #0a1e302e}
.maintenance-feature:before{content:'';position:absolute;width:310px;height:310px;border:1px solid #6d8aa922;border-radius:50%;right:-158px;bottom:-65px;pointer-events:none}
.maintenance-feature:after{content:'';position:absolute;width:260px;height:260px;border:1px solid #6d8aa922;border-radius:50%;right:-133px;bottom:-40px;pointer-events:none}
.maintenance-feature .feature-bottom{position:relative;z-index:1}
.services-section .service-list article{border-bottom-color:#adc4d33d}
.services-section .service-number{color:#bbcedc}
.services-section .service-list p{color:#d2dee8}
.services-section .service-list article>a{border:1px solid #b6cad54d;border-radius:0}
.services-section .service-list article>a:hover{background:#fff;color:#0c2340;border-color:#fff}
.services-section a:focus-visible{outline-color:#fff}
.about-section{border-bottom:1px solid #d8e2eb}

.territory{position:relative;background:#173550;color:#fff;padding:30px 32px;border:1px solid #36536e;box-shadow:12px 12px 0 #e9eff4}
.territory-top{border-bottom-color:#8cabc04d;color:#cfdfeb;align-items:center;gap:20px;font-size:9px;letter-spacing:.13em;padding-bottom:21px}
.territory-top img{opacity:.85;flex-shrink:0}
.territory .town-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:18px 22px;padding:28px 0 30px;color:#fff;font:24px/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.025em}
.territory .town-grid>span{padding-bottom:12px;border-bottom:1px solid #7894aa38}
.territory-reach{border-top:1px solid #8cabc04d;padding-top:20px}
.territory-reach>span{display:block;font-size:8px;letter-spacing:.16em;color:#c2d3e1;margin-bottom:13px}
.territory-reach>div{display:flex;align-items:center;gap:16px;font-size:12px;color:#d5e3ed}
.reach-line{flex:1;position:relative;border-top:1px solid #8aa8bd80}
.reach-line:before,.reach-line:after{content:'';position:absolute;width:4px;height:4px;border-radius:50%;background:#d5e3ed;top:-2px}
.reach-line:before{left:0}.reach-line:after{right:0}
.territory-bottom{padding-top:20px;border:0;color:#c2d3e1;font-size:8px;letter-spacing:.1em}

.closing{border-bottom:1px solid #7894ae45}
.footer{position:relative;background:#0a1e35;color:#f4f8fc;border-top:1px solid #04172a;overflow:hidden}
.footer:before{content:'';position:absolute;width:460px;height:460px;border:1px solid #abc7d20d;border-radius:50%;left:-230px;bottom:-210px;pointer-events:none}
.footer-top{padding:60px 0 44px;grid-template-columns:1.7fr 1fr .65fr;gap:45px;align-items:start}
.footer-brand{display:block}
.footer-lockup{display:flex;gap:19px;width:fit-content;align-items:center;margin-bottom:26px}
.footer .footer-lockup{display:flex}
.footer-lockup img{width:100px;height:100px;object-fit:contain}
.footer-lockup>span{font-size:35px;letter-spacing:.045em}
.footer-lockup small{font-size:13px;letter-spacing:.14em;margin-top:8px}
.footer-brand p{font-size:12px;line-height:1.9;color:#c1d1e0;padding-left:119px}
.footer-top .eyebrow{color:#becede;font-size:10px;margin-bottom:19px}
.footer-top>div>a{font-size:12px;line-height:1.7;margin-bottom:13px}
.footer-top>div:not(.footer-brand){padding-top:21px}
.footer-bottom{border-top-color:#6985a03b;color:#b8cadb;font-size:10px;padding:23px 0}
.footer a:focus-visible{outline-color:#fff}

@media(max-width:1180px){
 .header nav{gap:16px}.header{gap:18px}
 .brand>span{font-size:23px}.brand small{font-size:10px;letter-spacing:.16em}.brand img{width:49px;height:49px}
 .hero-detail{left:32%;width:420px;height:420px}
 .territory{padding:27px}.territory .town-grid{font-size:21px;gap:16px}
 .footer-top{grid-template-columns:1.55fr 1fr .6fr;gap:24px}
 .footer-lockup{gap:14px}.footer-lockup img{width:83px;height:83px}.footer-lockup>span{font-size:28px}.footer-lockup small{font-size:10px}.footer-brand p{padding-left:97px}
}
@media(max-width:960px){
 .brand>span{font-size:25px}.brand small{font-size:11px}
 .hero-story:before{left:-15px}.architectural{padding:12px;margin-top:30px}.architectural svg{height:130px}.architectural>span{font-size:7px;letter-spacing:.1em}
 .territory{padding:25px 23px}.territory .town-grid{font-size:19px;gap:16px 12px}
 .footer-top{grid-template-columns:1.4fr 1fr;gap:30px}.footer-lockup img{width:78px;height:78px}.footer-lockup>span{font-size:25px}.footer-lockup small{font-size:10px;letter-spacing:.08em}.footer-brand p{padding-left:92px}
}
@media(max-width:680px){
 .header{min-height:88px}.brand{gap:9px}.brand img{width:42px;height:42px}.brand>span{font-size:21px}.brand small{font-size:9px;letter-spacing:.085em;margin-top:5px}
 .hero-detail{width:360px;height:360px;left:130px;top:30px;opacity:.08}.hero-story:before{display:none}.hero-lead{padding-left:12px}.inquiry{box-shadow:7px 7px 0 #8da7bc1f}.inquiry:before{display:none}
 .hero h1{font-size:54px}.hero-actions{gap:22px}.hero-actions .text-link{font-size:12px;gap:10px}
 .services-section:before{inset:12px}.services-section .section-heading>.eyebrow{font-size:9px}.services-layout{position:relative}
 .maintenance-feature{box-shadow:7px 7px 0 #0a1e302e}.services-section .service-list article>a{width:42px;height:45px}
 .territory{padding:23px 22px;box-shadow:7px 7px 0 #e9eff4}.territory-top{font-size:8px;letter-spacing:.1em;gap:12px}.territory-top img{width:30px;height:30px}
 .territory .town-grid{font-size:22px;gap:18px 14px;padding:25px 0}.territory .town-grid>span{padding-bottom:12px}.territory-reach>div{font-size:12px;gap:13px}.territory-bottom{font-size:7px}
 .footer-top{grid-template-columns:1fr;gap:22px;padding:40px 0 27px}.footer-brand{display:block}.footer-lockup{gap:16px;justify-content:flex-start;margin-bottom:22px}.footer-lockup img{width:85px;height:85px}.footer-lockup>span{font-size:27px}.footer-lockup small{font-size:10px;letter-spacing:.075em}.footer-brand p{font-size:12px;padding-left:101px}
 .footer-top>div:not(.footer-brand){padding-top:7px}.footer-top .eyebrow{margin-bottom:10px}.footer-top>div>a{font-size:13px;margin-bottom:0;min-height:40px}
 .footer-bottom{font-size:9px;padding-bottom:84px}
}
@media(max-width:380px){
 .brand>span{font-size:18px}.brand small{font-size:8px;letter-spacing:.06em}.brand img{width:37px;height:37px}.header{gap:9px}.menu-toggle{padding:8px 7px}
 .hero h1{font-size:48px}.hero-actions{gap:17px}.hero-actions .text-link{font-size:11px}
 .territory .town-grid{font-size:19px;gap:15px 12px}.territory{padding:21px 18px}
 .footer-lockup{gap:12px}.footer-lockup img{width:69px;height:69px}.footer-lockup>span{font-size:23px}.footer-lockup small{font-size:9px;letter-spacing:.05em}.footer-brand p{padding-left:81px}
}
