:root{--navy:#081a31;--navy2:#0d2745;--navy3:#102f52;--steel:#5d88b8;--steel2:#76a4d3;--silver:#c9ced5;--ink:#102036;--muted:#5d6877;--off:#f4f6f8;--line:#dce2e8;--white:#fff;--shadow:0 16px 40px rgba(8,26,49,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Montserrat',sans-serif;color:var(--ink);line-height:1.55;background:#fff}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.topbar{background:#061426;color:#d8e1eb;font-size:11px;border-bottom:1px solid rgba(255,255,255,.08)}.topbar-inner{min-height:34px;display:flex;justify-content:space-between;align-items:center;gap:20px}.topbar-inner div{display:flex;gap:24px}.topbar a{font-weight:700;color:#fff}.site-header{position:sticky;top:0;z-index:100;background:rgba(8,26,49,.97);backdrop-filter:blur(12px);box-shadow:0 4px 18px rgba(0,0,0,.12)}.nav-wrap{height:88px;display:flex;align-items:center}.brand img{width:190px;height:70px;object-fit:cover;object-position:center;border-radius:4px}.nav-links{margin-left:auto;display:flex;gap:27px;align-items:center}.nav-links a{color:#f0f4f8;text-transform:uppercase;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:.35px;position:relative}.nav-links a:after{content:"";position:absolute;left:0;right:100%;height:2px;bottom:-12px;background:var(--steel2);transition:.25s}.nav-links a:hover:after,.nav-links a.active:after{right:0}.menu-toggle{display:none;margin-left:auto;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3);padding:8px 12px;border-radius:3px}.hero{position:relative;background:var(--navy);color:#fff;min-height:650px;overflow:hidden;padding-bottom:84px}.hero-photo{position:absolute;right:0;top:0;width:62%;height:100%;background:url('assets/hero-house.png') center/cover no-repeat}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#081a31 0%,rgba(8,26,49,.7) 17%,rgba(8,26,49,.08) 55%,rgba(8,26,49,.04) 100%)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#081a31 0%,#081a31 34%,rgba(8,26,49,.93) 43%,rgba(8,26,49,.16) 72%,rgba(8,26,49,.08) 100%)}.hero-inner{position:relative;z-index:2;min-height:565px;display:flex;align-items:center}.hero-copy{max-width:600px;padding:50px 0}.eyebrow,.section-kicker{text-transform:uppercase;color:var(--steel2);font-size:12px;font-weight:700;letter-spacing:1.6px}.hero h1,.section h2,.confidence h2,.estimate h2{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;line-height:.95;margin:15px 0 20px}.hero h1{font-size:clamp(64px,7vw,94px);letter-spacing:.4px}.hero p{max-width:580px;color:#d7e0e9;font-size:17px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;text-transform:uppercase;font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:.4px;border:1px solid transparent;transition:.22s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,#5b8abd,#3f6f9f);color:#fff;box-shadow:0 9px 28px rgba(68,112,158,.3)}.btn-outline{border-color:#b7c6d6;color:#fff;background:rgba(0,0,0,.08)}.trust-panel{position:absolute;z-index:4;left:50%;bottom:0;transform:translateX(-50%);display:grid;grid-template-columns:repeat(4,1fr);background:rgba(8,26,49,.96);border:1px solid #46709a;box-shadow:0 15px 40px rgba(0,0,0,.23)}.trust-item{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:22px 24px;border-right:1px solid rgba(118,164,211,.35);align-items:start}.trust-item:last-child{border-right:0}.trust-icon{width:40px;height:40px;border:1px solid #c8d6e5;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:19px}.trust-item strong{display:block;color:#7fabd8;text-transform:uppercase;font-family:'Barlow Condensed';font-size:18px;line-height:1.1}.trust-item span{display:block;color:#dce4ec;font-size:11px;margin-top:7px;line-height:1.45}.section{padding:82px 0}.section-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:34px}.section h2{font-size:clamp(42px,5vw,62px);margin:5px 0 6px;color:#102036}.section-title-row p{margin:0;color:var(--muted)}.text-link{color:#244e79;font-weight:700;font-size:13px}.service-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{background:#fff;border:1px solid var(--line);box-shadow:0 5px 18px rgba(16,32,54,.06);overflow:hidden;transition:.25s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-card>img{width:100%;height:180px;object-fit:cover;display:block}.service-body{position:relative;padding:28px 20px 22px}.service-icon{position:absolute;top:-24px;left:20px;width:48px;height:48px;border-radius:50%;background:#0a2441;color:#fff;border:4px solid #fff;display:flex;align-items:center;justify-content:center;font-size:21px}.service-body h3{font-family:'Barlow Condensed';text-transform:uppercase;font-size:25px;margin:4px 0 8px}.service-body p{color:#596574;font-size:13px;min-height:108px}.service-body a{color:#1d4f7e;font-weight:700;font-size:12px}.confidence{background:linear-gradient(90deg,#06182d,#0c2a49);color:#fff;padding:58px 0}.confidence-grid{display:grid;grid-template-columns:.85fr 2.15fr;gap:60px;align-items:center}.confidence h2{font-size:48px;color:#fff;margin:8px 0 0}.section-kicker.light{color:#7ca9d5}.confidence-points{display:grid;grid-template-columns:repeat(4,1fr)}.confidence-points>div{padding:5px 22px;border-left:1px solid rgba(255,255,255,.18)}.confidence-points>div:first-child{border-left:0}.confidence-points span{font-size:28px;color:#8db5da}.confidence-points strong{display:block;color:#82acd4;text-transform:uppercase;font-family:'Barlow Condensed';font-size:18px}.confidence-points p{font-size:11px;color:#d5dee7;margin-bottom:0}.projects{background:#f6f8fa}.project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.project{margin:0;background:#fff;box-shadow:0 5px 18px rgba(16,32,54,.07);overflow:hidden}.project img{display:block;width:100%;height:220px;object-fit:cover;transition:.35s}.project:hover img{transform:scale(1.03)}.project figcaption{padding:14px 16px;display:flex;justify-content:space-between;gap:10px}.project figcaption strong{font-size:13px}.project figcaption span{font-size:11px;color:#7b8693}.process{background:#fff}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#dfe5eb}.steps>div{background:#f8fafc;padding:28px}.steps span{font-family:'Barlow Condensed';font-size:42px;color:#98a7b7}.steps h3{font-family:'Barlow Condensed';font-size:22px;text-transform:uppercase;margin:5px 0}.steps p{color:#677382;font-size:13px;margin-bottom:0}.cta-band{background:linear-gradient(90deg,#0a2541,#0c3357);color:#fff}.cta-band-inner{min-height:96px;display:flex;align-items:center;gap:18px}.phone-bubble{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#4d85b9;font-size:20px}.cta-band strong{display:block;text-transform:uppercase;font-family:'Barlow Condensed';font-size:22px}.cta-band span{display:block;color:#d4dfe9;font-size:12px}.cta-band .btn{margin-left:auto}.light-outline{border-color:#8aabc9}.estimate{background:#081a31;color:#fff}.estimate-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.estimate h2{font-size:64px;color:#fff}.estimate-copy>p{color:#c9d5e1}.big-phone{font-family:'Barlow Condensed';font-size:44px;font-weight:700;color:#fff;display:block;margin:24px 0 18px}.areas{font-size:12px;color:#9fb0c2;line-height:1.8}.estimate-form{background:#fff;color:#12233a;padding:30px;box-shadow:0 20px 48px rgba(0,0,0,.2)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.estimate-form label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;margin-bottom:13px}.estimate-form input,.estimate-form select,.estimate-form textarea{width:100%;display:block;margin-top:7px;padding:13px;border:1px solid #d7dee6;background:#f8fafb;font:inherit;font-size:13px;outline:none}.estimate-form input:focus,.estimate-form select:focus,.estimate-form textarea:focus{border-color:#6191bf;box-shadow:0 0 0 3px rgba(97,145,191,.12)}.full{width:100%}.form-status{font-size:11px;color:#697686;margin:8px 0 0}.site-footer{background:#f7f8fa;color:#2b3a4d;padding:46px 0 18px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.15fr;gap:42px}.footer-brand img{width:200px;height:88px;object-fit:cover;object-position:center}.footer-brand p{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#3c4e61}.footer-brand p span{color:#6a7b8c}.footer-grid h4{font-family:'Barlow Condensed';text-transform:uppercase;font-size:17px;margin:6px 0 12px}.footer-grid a,.footer-grid span{display:block;font-size:11px;margin:6px 0;color:#4c5c6d}.footer-bottom{border-top:1px solid #dfe4e9;margin-top:32px;padding-top:16px;display:flex;justify-content:space-between;color:#7c8794;font-size:10px}.reveal{opacity:0;transform:translateY(18px);transition:.55s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.15s}.delay-3{transition-delay:.22s}
@media(max-width:1050px){.nav-links{gap:17px}.nav-links a{font-size:12px}.service-cards,.project-grid{grid-template-columns:repeat(2,1fr)}.confidence-grid{grid-template-columns:1fr}.confidence-points{margin-top:10px}.trust-panel{grid-template-columns:repeat(2,1fr)}.hero{padding-bottom:170px}.hero-photo{width:72%}}
@media(max-width:820px){.topbar-inner>span{display:none}.topbar-inner{justify-content:flex-end}.menu-toggle{display:block}.nav-links{display:none;position:absolute;left:20px;right:20px;top:80px;background:#081a31;padding:18px;flex-direction:column;align-items:flex-start;border:1px solid rgba(255,255,255,.1)}.nav-links.open{display:flex}.nav-links a{font-size:14px}.brand img{width:165px;height:62px}.hero-photo{width:100%;opacity:.58}.hero-shade{background:linear-gradient(90deg,rgba(8,26,49,.98),rgba(8,26,49,.75))}.hero-inner{min-height:570px}.hero-copy{max-width:620px}.confidence-points{grid-template-columns:repeat(2,1fr);gap:20px}.confidence-points>div:nth-child(3){border-left:0}.steps{grid-template-columns:repeat(2,1fr)}.estimate-grid{grid-template-columns:1fr;gap:36px}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.container{width:min(100% - 28px,1180px)}.topbar{display:none}.site-header{top:0}.nav-wrap{height:76px}.brand img{width:145px;height:56px}.hero{padding-bottom:0}.hero-inner{min-height:600px}.hero h1{font-size:62px}.hero p{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.trust-panel{position:relative;left:auto;bottom:auto;transform:none;width:calc(100% - 28px);grid-template-columns:1fr;margin:-18px auto 0}.trust-item{border-right:0;border-bottom:1px solid rgba(118,164,211,.3)}.trust-item:last-child{border-bottom:0}.section{padding:60px 0}.section-title-row{align-items:flex-start;flex-direction:column}.service-cards,.project-grid,.confidence-points,.steps,.footer-grid,.field-row{grid-template-columns:1fr}.service-card>img{height:210px}.confidence-points>div{border-left:0;border-top:1px solid rgba(255,255,255,.18);padding:18px 0}.confidence-points>div:first-child{border-top:0}.project img{height:230px}.cta-band-inner{padding:22px 0;align-items:flex-start;flex-wrap:wrap}.cta-band .btn{margin-left:66px}.estimate h2{font-size:52px}.footer-bottom{flex-direction:column;gap:6px}}

/* Expanded service territory */
.territory{background:#f4f6f8;border-top:1px solid rgba(9,27,47,.08);border-bottom:1px solid rgba(9,27,47,.08)}
.territory-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
.territory h2{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;font-size:clamp(42px,5vw,68px);line-height:.96;margin:14px 0 20px;color:#0b1d33}
.territory p{line-height:1.75;color:#536172;margin-bottom:26px}
.territory-cities{background:#fff;padding:34px 38px;box-shadow:0 18px 50px rgba(7,25,44,.08);border-top:4px solid #567b9a}
.territory-cities strong{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:13px;color:#0b1d33;margin-top:15px}
.territory-cities strong:first-child{margin-top:0}
.territory-cities p{margin:6px 0 0;font-size:14px;line-height:1.65}
@media(max-width:800px){.territory-grid{grid-template-columns:1fr;gap:30px}.territory-cities{padding:26px 24px}}
