@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--navy:#111c2d;--blue:#213d6d;--red:#c7282f;--paper:#f2f2f0;--ink:#17202c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:'DM Sans',Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #f5c866;outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3,.eyebrow,.kicker,.brand,.header-cta,.btn,.text-link,.service-band,.num,.outline-link,footer{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.site-header{height:88px;background:var(--navy);color:#fff;display:flex;align-items:center;padding:0 max(40px,calc((100vw - 1240px)/2));gap:36px;position:relative;z-index:10;border-bottom:3px solid var(--red)}.brand{display:flex;align-items:center;gap:14px;white-space:nowrap;font-size:22px;font-weight:800;letter-spacing:.05em;line-height:.88}.brand b{color:#fff}.brand small{display:block;font-size:18px;letter-spacing:.22em;color:#f1f1f1;margin-top:6px}.brand-mark{position:relative;display:grid;place-items:center;width:45px;height:45px;background:var(--red);font-size:34px;letter-spacing:-.13em;padding-right:5px;transform:skew(-8deg)}.brand-stroke{position:absolute;bottom:-6px;left:0;width:100%;height:3px;background:#fff}.site-header nav{display:flex;gap:30px;margin-left:auto;align-items:center}.site-header nav a{font-size:14px;font-weight:700;color:#e2e6eb}.site-header nav a:hover{color:#fff;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:8px}.header-cta{background:var(--red);padding:17px 20px;letter-spacing:.08em;font-size:17px;font-weight:800;white-space:nowrap}.header-cta span,.btn span,.outline-link span{padding-left:16px}.hero{position:relative;min-height:640px;overflow:hidden;color:#fff;background:var(--navy)}.hero-image{position:absolute;inset:0;background:url('/assets/modern-stucco-home.png') center 46%/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,18,30,.93) 0%,rgba(9,18,30,.8) 28%,rgba(9,18,30,.35) 58%,rgba(9,18,30,.08) 100%),linear-gradient(0deg,rgba(9,18,30,.65),transparent 35%)}.hero-content{position:relative;padding-top:100px;padding-bottom:120px}.eyebrow,.kicker{font-weight:700;letter-spacing:.21em;font-size:16px}.eyebrow{color:#fff;display:flex;align-items:center;gap:13px}.eyebrow .line{width:28px;height:3px;background:var(--red)}h1{font-size:clamp(70px,8vw,124px);line-height:.83;letter-spacing:-.018em;font-weight:900;margin:32px 0 26px;max-width:900px}h1 em,h2 em{font-style:normal;color:#e83b40}.hero-copy{max-width:530px;font-size:19px;line-height:1.55;color:#e1e5e9}.hero-actions{display:flex;gap:30px;align-items:center;margin-top:34px}.btn{display:inline-flex;justify-content:space-between;align-items:center;min-width:260px;padding:19px 22px;font-size:19px;font-weight:800;letter-spacing:.055em}.btn-red{background:var(--red);color:#fff}.btn-red:hover,.header-cta:hover{background:#a91f25}.text-link{font-size:18px;font-weight:800;letter-spacing:.065em;border-bottom:2px solid rgba(255,255,255,.75);padding-bottom:7px}.text-link span{margin-left:15px}.hero-foot{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding-bottom:25px;color:#d9dce2;font:700 14px 'Barlow Condensed',sans-serif;letter-spacing:.13em}.hero-foot i{display:inline-block;width:4px;height:4px;background:var(--red);border-radius:50%;margin:0 11px;vertical-align:middle}.hero-foot span:last-child{font-family:'DM Sans',sans-serif;text-transform:none;font-size:12px;font-weight:400;letter-spacing:0}.service-band{background:var(--blue);color:#fff}.service-band-inner{display:grid;grid-template-columns:repeat(3,1fr)}.service-band a{display:flex;align-items:center;gap:16px;padding:26px 25px;border-left:1px solid rgba(255,255,255,.22);font-size:20px;font-weight:800;letter-spacing:.05em}.service-band a:last-child{border-right:1px solid rgba(255,255,255,.22)}.service-band a:hover{background:#314f80}.service-band a span{color:#e9545a;font-size:16px}.service-band a b{margin-left:auto;font-size:24px;font-weight:400}.intro,.commercial{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-top:105px;padding-bottom:105px}.kicker{color:var(--red);margin-bottom:16px}h2{font-size:clamp(58px,6vw,95px);line-height:.89;font-weight:900;letter-spacing:-.015em}.intro-right{border-left:3px solid var(--red);padding-left:35px}.intro-right p,.commercial p,.section-top>p,.contact p{font-size:18px;line-height:1.6}.intro-right p+p{margin-top:17px}.services-detail{background:#e3e7eb;padding:92px 0 105px}.section-top{display:flex;justify-content:space-between;gap:45px;align-items:end;margin-bottom:47px}.section-top>p{max-width:380px;padding-bottom:6px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #aeb6c0;border-left:1px solid #aeb6c0}.detail-grid article{padding:30px;min-height:222px;border-right:1px solid #aeb6c0;border-bottom:1px solid #aeb6c0}.num{font-size:15px;color:#b4252b;font-weight:800;letter-spacing:.11em}.detail-grid h3{font-size:29px;line-height:1.05;font-weight:800;margin:23px 0 12px}.detail-grid p{font-size:16px;line-height:1.5;max-width:340px}.detail-cta{background:var(--navy);color:#fff}.detail-cta .num{color:#f66a6e}.detail-cta a{display:inline-block;margin-top:20px;font:800 18px 'Barlow Condensed',sans-serif;letter-spacing:.08em;border-bottom:2px solid var(--red);padding-bottom:8px}.commercial{padding-top:110px;padding-bottom:110px}.commercial p{max-width:520px}.outline-link{display:inline-block;margin-top:28px;padding:17px 22px;border:2px solid var(--navy);font-size:19px;font-weight:800;letter-spacing:.045em}.outline-link:hover{background:var(--navy);color:#fff}.contact{background:var(--red);color:#fff;padding:82px 0}.contact-inner{display:flex;align-items:end;justify-content:space-between;gap:50px}.contact .kicker{color:#fff}.contact h2 em{color:#13233b}.contact p{max-width:610px;margin-top:22px}.btn-light{background:#fff;color:var(--navy);white-space:nowrap}.btn-light:hover{background:#e9edf3}footer{background:#0b1421;color:#fff;padding:31px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:16px;letter-spacing:.07em}.footer-inner span{font-size:14px;color:#b9c4d1}footer a:hover{text-decoration:underline}@media(max-width:1050px){.site-header{gap:16px;padding:0 24px}.site-header nav{gap:16px}.brand{font-size:18px}.brand small{font-size:15px}.header-cta{font-size:15px;padding:16px 13px}.wrap{width:min(100% - 48px,1240px)}}@media(max-width:760px){.site-header{height:auto;min-height:75px;flex-wrap:wrap;padding:15px 20px}.site-header nav{order:3;width:100%;overflow-x:auto;gap:22px;padding:10px 0 0;margin:0;white-space:nowrap}.site-header nav a{font-size:14px}.header-cta{margin-left:auto;font-size:14px}.brand-mark{width:36px;height:36px;font-size:27px}.brand{font-size:17px}.brand small{font-size:14px}.wrap{width:calc(100% - 40px)}.hero{min-height:600px}.hero-image{background-position:59% center}.hero-shade{background:linear-gradient(90deg,rgba(9,18,30,.85),rgba(9,18,30,.3)),linear-gradient(0deg,rgba(9,18,30,.77),transparent 55%)}.hero-content{padding-top:85px;padding-bottom:135px}.eyebrow{font-size:14px}h1{font-size:clamp(65px,12vw,95px);margin:29px 0 22px}.hero-copy{font-size:17px;max-width:500px}.hero-actions{flex-wrap:wrap;gap:23px}.hero-foot{font-size:12px}.service-band-inner{grid-template-columns:1fr}.service-band a{padding:18px 8px;border-left:0;border-bottom:1px solid rgba(255,255,255,.22)}.service-band a:last-child{border-right:0}.intro,.commercial{grid-template-columns:1fr;gap:32px;padding-top:75px;padding-bottom:75px}.intro-right{padding-left:22px}.services-detail{padding:70px 0}.section-top{display:block}.section-top>p{margin-top:25px}.detail-grid{grid-template-columns:repeat(2,1fr)}.contact-inner{display:block}.contact .btn{margin-top:35px}.footer-inner{flex-wrap:wrap}}@media(max-width:530px){.site-header{gap:8px}.header-cta{padding:11px;font-size:12px}.header-cta span{display:none}.hero{min-height:665px}.hero-image{background-position:61% center}.hero-content{padding-top:90px}h1{font-size:clamp(58px,17vw,78px)}.hero-actions{display:block}.text-link{display:inline-block;margin-top:26px}.hero-foot span:last-child{display:none}.detail-grid{grid-template-columns:1fr}.detail-grid article{min-height:0}.commercial h2,.intro h2,.section-top h2,.contact h2{font-size:clamp(56px,15vw,78px)}.contact{padding:70px 0}.contact .btn{min-width:0;width:100%}.footer-inner{display:block}.footer-inner>*{display:block;margin:8px 0}}

/* The supplied logo is a wide, detailed mark. Give it space to stay legible. */
.site-header{height:116px}
.brand{flex:none;display:block;width:170px;line-height:0}
.brand img{display:block;width:100%;height:auto;max-height:107px;object-fit:contain}
.footer-inner img{display:block;width:150px;height:auto;object-fit:contain}
@media(max-width:1050px){.brand{width:135px}.site-header nav{gap:14px}}
@media(max-width:760px){.site-header{height:auto;min-height:0;padding-top:7px;padding-bottom:12px}.brand{width:115px}.brand img{max-height:80px}.site-header nav{padding-top:3px}}
@media(max-width:530px){.brand{width:104px}.header-cta{margin-left:auto}.footer-inner img{width:130px}}

/* Dedicated service pages */
.site-header nav a[aria-current="page"]{color:#fff;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:9px;text-decoration-thickness:3px}
.inner-hero{min-height:570px}
.inner-hero .hero-content{padding-top:83px;padding-bottom:115px}
.inner-hero h1{font-size:clamp(76px,8vw,118px);max-width:950px}
.inner-hero .hero-copy{max-width:560px}
.commercial-hero .hero-image{background-image:url('/assets/commercial-stucco-building.png');background-position:center 51%}
.residential-hero .hero-image{background-position:center 50%}
.residential-feature{display:grid;grid-template-columns:minmax(0,43%) minmax(0,57%);background:#f2f2f0;min-height:650px}.residential-feature-copy{padding:90px 7% 80px max(40px,calc((100vw - 1240px)/2));display:flex;flex-direction:column;justify-content:center}.residential-feature h1{color:var(--navy);font-size:clamp(64px,6.5vw,103px);line-height:.86;margin:23px 0 28px}.residential-feature-copy>p:not(.kicker){font-size:19px;line-height:1.55;max-width:470px}.residential-feature-actions{display:flex;flex-direction:column;align-items:flex-start;gap:21px;margin-top:30px}.residential-feature .btn{min-width:0}.residential-service-link{font:800 18px 'Barlow Condensed',sans-serif;letter-spacing:.055em;border-bottom:2px solid var(--red);padding-bottom:5px}.residential-feature-image{position:relative;margin:0;min-height:650px;background:#ddd}.residential-feature-image img{width:100%;height:100%;object-fit:cover;object-position:center;position:absolute;inset:0}.residential-feature-image figcaption{position:absolute;bottom:15px;right:20px;background:rgba(17,28,45,.7);color:white;padding:5px 9px;font-size:12px}
@media(max-width:900px){.residential-feature{grid-template-columns:1fr}.residential-feature-copy{padding:75px 40px}.residential-feature h1{font-size:clamp(66px,10vw,94px)}.residential-feature-image{min-height:430px}.residential-feature-image img{object-position:center 55%}}
@media(max-width:530px){.residential-feature-copy{padding:65px 24px}.residential-feature h1{font-size:clamp(58px,14vw,76px)}.residential-feature .btn{width:100%;font-size:17px}.residential-feature-image{min-height:300px}}
.page-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center;padding-top:105px;padding-bottom:105px}
.page-intro>div:last-child{border-left:3px solid var(--red);padding-left:34px}
.page-intro p:not(.kicker){font-size:18px;line-height:1.65}
.page-intro p+p{margin-top:18px}
.process{padding-top:105px;padding-bottom:115px}
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.process-grid article{border-top:4px solid var(--red);background:#fff;padding:26px 28px 30px;min-height:210px}
.process-grid article>span{font:800 22px 'Barlow Condensed',sans-serif;color:var(--red)}
.process-grid h3{font-size:29px;line-height:1.05;margin:21px 0 11px;font-weight:800}
.process-grid p{font-size:16px;line-height:1.5}
@media(max-width:760px){.inner-hero{min-height:610px}.inner-hero .hero-content{padding-top:80px;padding-bottom:125px}.inner-hero h1{font-size:clamp(62px,12vw,90px)}.page-intro{grid-template-columns:1fr;gap:32px;padding-top:75px;padding-bottom:75px}.page-intro>div:last-child{padding-left:22px}.process{padding-top:75px;padding-bottom:80px}.process-grid{grid-template-columns:1fr}.process-grid article{min-height:0}}
@media(max-width:530px){.inner-hero h1{font-size:clamp(59px,15vw,77px)}.commercial-hero .hero-image{background-position:64% center}}
.about-hero{background:var(--navy);color:#fff;overflow:hidden}.about-hero-inner{display:grid;grid-template-columns:1.55fr .65fr;gap:60px;align-items:center;min-height:600px;padding-top:82px;padding-bottom:90px}.about-hero h1{font-size:clamp(68px,8vw,120px);margin:36px 0 25px}.about-lead{font-size:20px;line-height:1.55;color:#e4e8ee;max-width:670px}.about-hero .btn{margin-top:35px}.about-experience{border-left:3px solid var(--red);padding-left:28px}.about-experience strong{display:block;color:#fff;font:900 clamp(110px,13vw,205px)/.8 'Barlow Condensed',Impact,sans-serif;letter-spacing:-.05em}.about-experience strong span{color:#e83b40;font-size:.5em;vertical-align:top}.about-experience>span{display:block;margin-top:25px;font:800 24px/1.1 'Barlow Condensed',sans-serif;letter-spacing:.06em}.about-story,.about-next{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-top:110px;padding-bottom:110px}.about-story>div:last-child,.about-next>div:last-child{border-left:3px solid var(--red);padding-left:34px}.about-story p:not(.kicker),.about-next p:not(.kicker){font-size:19px;line-height:1.65}.about-story p+p{margin-top:22px}.about-principles{background:#e3e7eb;padding:100px 0}.about-principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:55px}.about-principles article{background:#fff;padding:30px;border-top:4px solid var(--red)}.about-principles article span{font:800 20px 'Barlow Condensed',sans-serif;color:var(--red)}.about-principles h3{font-size:29px;line-height:1.05;margin:22px 0 12px}.about-principles article p{font-size:16px;line-height:1.55}.about-next .outline-link{margin-top:28px}@media(max-width:800px){.about-hero-inner{grid-template-columns:1fr;gap:50px;min-height:0}.about-experience{max-width:330px}.about-story,.about-next{grid-template-columns:1fr;gap:32px;padding-top:75px;padding-bottom:75px}.about-principles{padding:75px 0}.about-principles-grid{grid-template-columns:1fr;gap:14px}}@media(max-width:530px){.about-hero-inner{padding-top:70px;padding-bottom:75px}.about-hero h1{font-size:clamp(60px,15vw,78px)}.about-lead{font-size:18px}.about-hero .btn{width:100%;min-width:0}.about-story>div:last-child,.about-next>div:last-child{padding-left:22px}.about-story h2,.about-principles h2,.about-next h2{font-size:clamp(54px,14vw,74px)}}
.contact-page{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:75px;padding-top:100px;padding-bottom:110px;align-items:start}.contact-info h1{font-size:clamp(66px,7vw,108px);color:var(--navy);margin:22px 0 30px}.contact-info>p:not(.kicker){font-size:19px;line-height:1.6;max-width:490px}.contact-direct{display:flex;flex-direction:column;margin:46px 0 30px;gap:7px}.contact-direct span{font:800 16px 'Barlow Condensed',sans-serif;letter-spacing:.12em;color:var(--red);margin-top:12px}.contact-direct a{font-size:21px;font-weight:700;overflow-wrap:anywhere}.contact-direct a:hover{text-decoration:underline}.contact-hint{border-left:3px solid var(--red);padding-left:18px}.contact-form-panel{background:#fff;padding:42px 46px;box-shadow:0 16px 45px rgba(17,28,45,.1)}.contact-form-panel h2{font-size:clamp(40px,4vw,57px);margin-bottom:30px}.contact-form-panel form{display:grid;gap:20px}.contact-form-panel .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form-panel label{display:flex;flex-direction:column;gap:9px;font:800 17px 'Barlow Condensed',sans-serif;letter-spacing:.055em}.contact-form-panel label span{font:500 11px 'DM Sans',sans-serif;color:#65717f;letter-spacing:.08em}.contact-form-panel input,.contact-form-panel select,.contact-form-panel textarea{width:100%;padding:13px 14px;border:1px solid #a9b3c0;border-radius:0;background:#fff;font:16px 'DM Sans',sans-serif;color:var(--ink)}.contact-form-panel input:focus,.contact-form-panel select:focus,.contact-form-panel textarea:focus{outline:2px solid var(--blue);outline-offset:1px}.contact-form-panel textarea{resize:vertical;min-height:125px}.contact-form-panel button{border:0;cursor:pointer;width:100%}.form-note{font-size:13px;line-height:1.5;color:#56616e}.thank-you{padding-top:120px;padding-bottom:150px;min-height:65vh}.thank-you h1{color:var(--navy)}.thank-you p:not(.kicker){font-size:20px;line-height:1.55;max-width:630px}.thank-you p a{text-decoration:underline}.footer-inner{flex-wrap:wrap}.footer-inner>a{overflow-wrap:anywhere}@media(max-width:900px){.contact-page{grid-template-columns:1fr;gap:45px;padding-top:75px;padding-bottom:80px}.contact-info h1{font-size:clamp(65px,10vw,95px)}}@media(max-width:530px){.contact-page{padding-top:60px}.contact-info h1{font-size:clamp(57px,14vw,77px)}.contact-form-panel{padding:27px 22px}.contact-form-panel .form-row{grid-template-columns:1fr}.contact-direct a{font-size:18px}.thank-you{padding-top:85px}}
