@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=Inter:wght@400;500;600;700&display=swap');:root{--dark:#161a1c;--ink:#22292c;--bronze:#a5794b;--cream:#f2f0eb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:14px/1.65 Inter,Arial,sans-serif;background:#fff}a{color:inherit;text-decoration:none}.wrap{width:min(1220px,calc(100% - 48px));margin:auto}h1,h2,h3{font-family:'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;line-height:1.04;margin:0}h1{font-size:clamp(50px,6vw,90px)}h2{font-size:clamp(34px,4vw,53px)}h3{font-size:24px}.tag{color:var(--bronze);font-size:11px;letter-spacing:2px;font-weight:800;text-transform:uppercase}.btn{display:inline-block;background:var(--bronze);color:#fff;padding:13px 22px;text-transform:uppercase;font-weight:800;font-size:11px;letter-spacing:.5px}.btn.outline{background:transparent;border:1px solid #c6b9aa;color:inherit}.header{position:absolute;z-index:5;top:0;left:0;right:0;color:#fff;background:rgba(16,20,22,.65)}.header .wrap{display:flex;align-items:center;gap:25px;padding:17px 0}.brand{font:800 24px/0.85 'Barlow Condensed',sans-serif;letter-spacing:1px;text-transform:uppercase}.brand b{color:var(--bronze)}.brand small{display:block;font:600 9px Inter,sans-serif;letter-spacing:3px;margin-top:6px}.nav{margin-left:auto;display:flex;gap:25px;align-items:center}.nav a{font-size:10px;text-transform:uppercase;font-weight:800}.menu{display:none}.hero{position:relative;background:#192125;min-height:625px;color:#fff;overflow:hidden}.hero-art{position:absolute;inset:0 0 0 28%;background:linear-gradient(125deg,#445158,#202a30);display:grid;place-items:center}.hero-art:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#171b1e 0%,transparent 85%)}.hero-copy{position:relative;padding:175px 0 125px;max-width:560px}.hero h1{max-width:470px}.hero p{max-width:350px;color:#d5d7d5;font-size:13px}.rule{width:38px;height:3px;background:var(--bronze);margin:17px 0}.slot{display:grid;place-items:center;text-align:center;padding:18px;min-height:145px;background:repeating-linear-gradient(135deg,#dce0df 0 15px,#cbd1d1 15px 30px);border:2px dashed #89989b;color:#334247;font-size:12px;font-weight:700}.hero-art .slot{height:100%;width:100%;background:repeating-linear-gradient(135deg,#35434b 0 22px,#415058 22px 44px);border:0;color:#d8e0e2}.hero-art .slot span{margin-left:25%}.benefits{background:#171d20;color:#fff}.benefit-grid{display:grid;grid-template-columns:repeat(5,1fr)}.benefit{padding:18px 15px;display:flex;gap:12px;border-right:1px solid #394247;align-items:center;font-size:10px;text-transform:uppercase;font-weight:700}.benefit b{font-size:22px;color:var(--bronze)}.section{padding:58px 0}.intro{display:grid;grid-template-columns:1fr 2fr;gap:50px}.intro p{color:#677073;font-size:13px}.feature-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.feature-card{background:#1a2226;color:white}.feature-card .slot{height:210px;background:#53636a;color:white}.feature-card .inner{padding:18px}.feature-card p{font-size:12px;color:#c1c8ca}.feature-card h3{font-size:22px}.story{display:grid;grid-template-columns:1fr 1fr 1.2fr;background:#222b30;color:#fff}.story .slot{height:370px;background:#5b6668;color:#fff}.story .text{background:#8a653f;padding:45px 38px}.story p{font-size:12px;line-height:1.8}.story ul{padding-left:18px;font-size:12px}.projects{background:#f2f1ed}.heading-row{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}.projects-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.project .slot{height:145px}.project h3{font-size:17px;padding:10px 0}.materials{background:#181e21;color:white}.material-grid{display:grid;grid-template-columns:1.1fr repeat(3,1fr);gap:10px}.material{background:#293238}.material .slot{height:155px;background:#3f4a4f;color:#fff;border:0}.material h3,.material p{padding:0 15px}.material h3{margin-top:15px;font-size:20px}.material p{font-size:11px;color:#bdc6c8;padding-bottom:16px}.process{background:#fff}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:30px}.step{border-top:2px solid var(--bronze);padding-top:16px}.step strong{font:800 35px 'Barlow Condensed';color:var(--bronze)}.step p{font-size:12px;color:#6a7174}.dark-cta{background:#171d20;color:#fff;padding:35px 0}.dark-cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.reviews{background:#f6f5f2}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:24px}.review{padding:25px;background:#fff;border-top:3px solid var(--bronze)}.review p{font-size:12px}.areas{background:#22292c;color:#fff}.area-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.area-links a{border:1px solid #596469;padding:9px 15px;font-size:12px}.faq details{border-bottom:1px solid #cbd0cf;padding:15px 0}.faq summary{cursor:pointer;font-weight:700}.faq p{font-size:12px;color:#657073}.closing{background:#161c20;color:white}.closing-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.closing .slot{height:210px;background:#34434a;color:#fff}.footer{background:#101518;color:#b7c1c4;padding:35px 0}.footer .wrap{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.footer-links{display:flex;gap:18px;flex-wrap:wrap;font-size:12px}.sticky{display:none}@media(max-width:850px){.nav{display:none;position:absolute;top:65px;left:0;right:0;background:#20292e;padding:22px;flex-direction:column}.nav.open{display:flex}.menu{display:block;margin-left:auto;background:none;color:white;border:1px solid #777;padding:9px}.header .btn{display:none}.intro,.story,.closing-grid{grid-template-columns:1fr}.story .slot{height:230px}.feature-cards{grid-template-columns:1fr 1fr}.projects-grid{grid-template-columns:repeat(3,1fr)}.material-grid{grid-template-columns:1fr 1fr}.benefit-grid{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.hero-art{left:0;opacity:.4}.hero-copy{padding:145px 0 90px}}@media(max-width:550px){.wrap{width:calc(100% - 30px)}.hero h1{font-size:56px}.feature-cards,.material-grid,.review-grid{grid-template-columns:1fr}.projects-grid{grid-template-columns:repeat(2,1fr)}.benefit-grid{grid-template-columns:1fr 1fr}.dark-cta .wrap{flex-direction:column;align-items:start}.sticky{display:block;position:fixed;bottom:0;left:0;right:0;background:#a5794b;color:white;text-align:center;padding:12px;z-index:10;font-weight:800}body{padding-bottom:45px}}/* Extensions in the design's own style */
.skip{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:10px;z-index:100}.skip:focus{left:10px}
.topbar{background:#0d1113;color:#d5d7d5;font-size:11px;letter-spacing:.3px;position:relative;z-index:6}
.topbar .wrap{display:flex;justify-content:space-between;gap:16px;padding:8px 0;flex-wrap:wrap}
.topbar a{color:#fff;font-weight:800}
.header{position:absolute;top:34px}
.page-plain .header{position:relative;top:0;background:#161a1c}
.brand{white-space:nowrap}
.nav>a,.nav .has-dd>a{font-size:10px;text-transform:uppercase;font-weight:800;padding:6px 0;display:inline-block}
.nav .has-dd{position:relative}
.nav .dd{display:none;position:absolute;top:100%;left:-14px;min-width:270px;background:#20292e;padding:10px 0;z-index:20;box-shadow:0 8px 24px rgba(0,0,0,.4)}
.nav .dd a{display:block;padding:8px 18px;font-size:10px;line-height:1.35}
.nav .dd a:hover,.nav .dd a:focus{background:#2c373d;color:#e0b98c}
.nav .has-dd:hover>.dd,.nav .has-dd:focus-within>.dd{display:block}
.nav a:focus-visible,.btn:focus-visible,summary:focus-visible,.area-links a:focus-visible{outline:2px solid #e0b98c;outline-offset:2px}
.badge{display:inline-block;background:#a5794b;color:#fff;font-size:11px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;padding:6px 12px;margin-bottom:14px}
.badge:before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:#7CFC9A;margin-right:8px}
.trust{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 0;padding:0;list-style:none}
.trust li{font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;border:1px solid #6d7a80;padding:7px 12px;color:#fff}
.trust li:before{content:'\2713';color:#a5794b;margin-right:7px}
.hero-copy .btn{margin-top:6px}
.hero p{max-width:470px}
.hero-copy{max-width:640px}
.content{width:min(880px,calc(100% - 48px));margin:auto}
.content p,.content li{font-size:15px;color:#3b4649}
.content h2{margin:8px 0 14px}
.content h3{margin:22px 0 8px;font-size:26px}
.lead{font-size:17px!important;color:#22292c!important}
.rule.center{margin:17px 0}
.callout{border-left:4px solid #a5794b;background:#f6f1ea;padding:16px 20px;margin:22px 0}
.callout strong{text-transform:uppercase;letter-spacing:1px;font-size:11px;color:#8a653f;display:block;margin-bottom:6px}
.callout p{margin:0;font-size:14px}
.fact{background:#161c20;color:#e6ebec;padding:18px 22px;margin:22px 0;border-top:3px solid #a5794b}
.fact p{margin:0 0 8px;color:#e6ebec;font-size:14px}
.fact cite{display:block;font-size:11px;color:#a9b4b7;font-style:normal;letter-spacing:.3px}
.fact cite a{text-decoration:underline}
.tbl-wrap{overflow-x:auto;margin:20px 0;border:1px solid #d9dedd}
table{border-collapse:collapse;width:100%;min-width:560px;font-size:13px}
th{background:#22292c;color:#fff;text-align:left;padding:11px 14px;font-size:11px;letter-spacing:1px;text-transform:uppercase}
td{padding:11px 14px;border-top:1px solid #e0e4e3;vertical-align:top;color:#3b4649}
tr:nth-child(even) td{background:#faf9f6}
.cta-band{background:#171d20;color:#fff;padding:34px 0}
.cta-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}
.cta-band h2{font-size:clamp(28px,3.4vw,42px);max-width:720px}
.cta-band.alt{background:#8a653f}
.cta-band .trust{margin-top:16px}
.checks{list-style:none;padding:0;margin:16px 0}
.checks li{padding:8px 0 8px 26px;position:relative;border-bottom:1px solid #e6e9e8}
.checks li:before{content:'\25B8';color:#a5794b;position:absolute;left:4px}
.steps-list{counter-reset:s;list-style:none;padding:0;margin:18px 0}
.steps-list li{counter-increment:s;padding:10px 0 10px 54px;position:relative;border-bottom:1px solid #e6e9e8}
.steps-list li:before{content:counter(s);position:absolute;left:0;top:6px;font:800 30px 'Barlow Condensed';color:#a5794b;width:40px}
details.qa{border-bottom:1px solid #cbd0cf;padding:14px 0}
details.qa summary{cursor:pointer;font-weight:700;font-size:15px}
details.qa p{margin:10px 0 0}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}
.svc-grid a{display:block;background:#fff;border:1px solid #d5dad9;border-top:3px solid #a5794b;padding:16px 18px}
.svc-grid a strong{display:block;font:700 20px 'Barlow Condensed';text-transform:uppercase;margin-bottom:4px}
.svc-grid a span{font-size:12px;color:#657073}
.svc-grid a:hover{background:#f6f1ea}
.area-links a small{display:block;font-size:10px;color:#aab6b9}
.map-wrap{position:relative;width:100%;aspect-ratio:16/10;background:#e8ecec;border:1px solid #cbd0cf}
.map-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:start}
.crumbs{font-size:12px;color:#c1c8ca;margin:0 0 14px}
.crumbs a{text-decoration:underline}
.page-hero{background:#192125;color:#fff;padding:60px 0 54px}
.page-hero h1{font-size:clamp(40px,5vw,68px);max-width:900px}
.page-hero p{max-width:640px;color:#d5d7d5;font-size:14px}
.footer{padding:40px 0 30px}
.footer .wrap{align-items:flex-start}
.footer b{color:#fff}
.footer-col{min-width:200px;font-size:13px;line-height:1.8}
.footer-col a:hover{color:#e0b98c}
.footer-call{margin-top:10px;font-weight:800;color:#fff}
.footer-bottom{width:min(1220px,calc(100% - 48px));margin:22px auto 0;padding-top:16px;border-top:1px solid #2a3338;font-size:12px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.sticky{display:none}
.nav-overlay{display:none}
@media(max-width:850px){
 .header{top:34px}
 .nav{top:70px;max-height:75vh;overflow-y:auto}
 .nav .dd{display:block;position:static;background:none;box-shadow:none;padding:0 0 0 14px;min-width:0}
 .nav .dd a{padding:6px 0}
 .two-col,.svc-grid{grid-template-columns:1fr}
 .sticky{display:block;position:fixed;bottom:0;left:0;right:0;background:#a5794b;color:#fff;text-align:center;padding:14px;z-index:10;font-weight:800;letter-spacing:.5px}
 body{padding-bottom:50px}
 .topbar .wrap{justify-content:center;text-align:center}
 .nav-overlay.on{display:block;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:4}
 .header{z-index:6}
}
@media(max-width:550px){.svc-grid{grid-template-columns:1fr}.topbar{font-size:10px}}
@media(max-width:850px){.header .wrap{gap:12px}.brand{white-space:normal;font-size:20px;min-width:0}.brand small{letter-spacing:1.5px;font-size:8px}.menu{flex:none}}
@media(max-width:480px){.brand small{display:none}.brand{font-size:18px}.header .wrap{padding:12px 0}}
.projects-grid>*,.feature-cards>*,.material-grid>*,.steps>*{min-width:0}
.project{display:block}.project h3{overflow-wrap:anywhere}
@media(max-width:550px){.project h3{font-size:15px}.project .slot{height:110px;padding:8px;font-size:10px}}
.hero h1{font-size:clamp(42px,5vw,70px);max-width:640px}
@media(max-width:550px){.hero h1{font-size:40px}}
@media(max-width:850px){.header{top:56px}.hero-art .slot span{display:none}.hero-copy{padding-top:190px}.page-plain .header{top:0}}
/* service pages */
.hero.hero-svc{min-height:470px}.hero-svc .hero-copy{padding:150px 0 80px;max-width:700px}.hero-svc h1{font-size:clamp(38px,4.6vw,68px);max-width:660px}.hero-svc .hero-copy>p{max-width:560px}
.crumbs{font-size:12px;color:#d5d7d5;margin:0 0 10px}.crumbs a{text-decoration:underline}
.sec-slot{margin:22px 0}.sec-slot .slot{min-height:200px}
.content ul.plain,.content ol.plain{margin:14px 0 18px;padding-left:22px}.content ul.plain li,.content ol.plain li{margin:6px 0}
.tbl-wrap table caption{caption-side:top;text-align:left;font-weight:700;padding:8px 0}
.related{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.related a{border:1px solid #cbd0cf;padding:9px 14px;font-size:12px}
.content p{max-width:72ch}
.slot-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:30px 0}.slot-pair .slot{min-height:200px}
@media(max-width:600px){.slot-pair{grid-template-columns:1fr}}

/* area pages */
.zip-chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0;padding:0;list-style:none}
.zip-chips li{border:1px solid #cbd0cf;background:#fff;padding:6px 12px;font-weight:600;font-size:14px}
.place-list{list-style:none;margin:14px 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.place-list li{border-left:4px solid #b57a43;background:#f6f4ef;padding:10px 14px;font-size:15px}
.place-list li small{display:block;color:#657073;font-size:12px;margin-top:3px}
.near-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:14px 0}
.near-grid a{border:1px solid #cbd0cf;padding:12px 14px;background:#fff;text-decoration:none;color:inherit;display:block}
.near-grid a small{display:block;color:#657073;font-size:12px;margin-top:3px}
.call-inline{margin:22px 0}

/* hubs and standard pages */
.covmap{width:100%;height:auto;display:block;border:1px solid #cbd0cf;background:#f6f4ef}
.covmap .bg{fill:#f3efe7}.covmap .grid line{stroke:#d9d3c6;stroke-width:1}
.covmap .hit{fill:transparent}.covmap .dot{fill:#a5794b;stroke:#161c20;stroke-width:2}.covmap .dot.home{fill:#161c20;stroke:#a5794b}
.covmap .pin-label{font:700 15px 'Barlow Condensed',Arial,sans-serif;fill:#161c20;paint-order:stroke;stroke:#f3efe7;stroke-width:4px;text-transform:uppercase;letter-spacing:.5px}
.covmap a:focus .dot,.covmap a:focus-visible .dot{stroke:#c2410c;stroke-width:4}
.covmap a:focus{outline:none}
.cov-map{position:sticky;top:110px}
.map-cap{font-size:12px;color:#657073;margin:8px 0}
.cov-cols{grid-template-columns:1.1fr 1fr}
.cov-list{grid-template-columns:1fr 1fr}
.cov-list a{text-decoration:none;color:inherit}
@media(max-width:850px){.cov-cols{grid-template-columns:1fr}.cov-map{position:static}.cov-list{grid-template-columns:1fr}}
@media(max-width:600px){.covmap .pin-label{display:none}}
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:18px 0}
.contact-card{border:1px solid #cbd0cf;border-top:3px solid #a5794b;background:#fff;padding:18px 20px}
.contact-card h3{margin:0 0 8px}.contact-card p{margin:6px 0;font-size:15px}
.contact-card .big{font:700 28px 'Barlow Condensed',Arial,sans-serif}
.core-box{border:2px solid #a5794b;background:#f6f1ea;padding:20px 24px;margin:22px 0}
.core-box p{margin:0;font-size:15px;max-width:none}
.cost-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin:16px 0}
.cost-card{border:1px solid #cbd0cf;background:#fff;padding:16px 18px;border-left:4px solid #a5794b}
.cost-card h3{margin:0 0 6px;font-size:19px}.cost-card p{margin:0;font-size:14px}
.plain-hero{background:#192125;color:#fff;padding:54px 0 46px}
.plain-hero h1{color:#fff;font-size:clamp(36px,5vw,60px);max-width:900px}
.plain-hero p{color:#d5d7d5;max-width:680px}

/* S2 images */
.photo{margin:0}.photo img{display:block;width:100%;height:auto}
.photo figcaption{font-size:12px;line-height:1.5;color:#5d676a;padding:8px 2px 0}
.sec-slot .photo{width:min(1220px,calc(100% - 48px));margin:0 auto}
.slot-pair .photo{min-width:0}
.hero-art .photo{position:absolute;inset:0;z-index:0}
.hero-art:before{z-index:1}.hero-copy{z-index:2}
.hero-art .hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.hero-art .photo figcaption{position:absolute;right:14px;bottom:10px;z-index:2;max-width:46%;background:rgba(16,20,22,.74);color:#e8ecec;padding:6px 10px}
.hero-banner{margin:26px 0 8px}
.hero-banner .hero-img{height:clamp(200px,34vw,440px);object-fit:cover;object-position:50% 40%}
.feature-card .photo figcaption,.story .photo figcaption{color:#c1c8ca;padding:8px 14px 12px}
.project .photo figcaption{padding:8px 0 0}
.story .photo{align-self:start;background:#222b30}
@media(max-width:850px){.hero-art .photo figcaption{display:none}}
@media(max-width:550px){.sec-slot .photo{width:calc(100% - 30px)}}

.brand-logo{height:46px;width:auto;object-fit:contain;vertical-align:middle;margin-right:10px}
.brand-logo-foot{height:64px;margin:0 0 8px;display:block}
@media(max-width:550px){.brand-logo-head{height:38px}}
