@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/source-sans-3-semibold.ttf) format("truetype")}:root{--ink:#26312e;--muted:#59625c;--paper:#f7f6f1;--white:#fff;--line:#d6dbd2;--green:#354d40;--light:#ecefe7;--head:"Source Sans 3","Segoe UI",Helvetica,Arial,sans-serif;--body:"Avenir Next","Segoe UI",Helvetica,Arial,sans-serif;--max:1120px;--error:#962e29}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--body);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:var(--head);font-weight:600;line-height:1.2;letter-spacing:-.012em}h1{font-size:clamp(2rem,3.5vw,2.8rem);margin-bottom:24px}h2{font-size:clamp(1.5rem,2.7vw,2rem);margin-bottom:20px}h3{font-size:1.35rem;margin-bottom:12px}p{margin-bottom:18px}a{color:inherit;text-underline-offset:5px}img{display:block;max-width:100%}button,input,textarea{font:inherit}a,button,input,summary,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid #657957;outline-offset:5px}::selection{background:#d9e1cb}.container{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.eyebrow,.kicker,.label{display:block;font-size:.68rem;line-height:1.5;text-transform:uppercase;letter-spacing:.13em;font-weight:600;color:var(--muted);margin-bottom:18px}.textLink{display:inline-flex;align-items:center;gap:26px;font-size:.82rem;font-weight:500;text-decoration:none;border-bottom:1px solid #a0afa1;padding-bottom:5px}.textLink:hover{border-color:var(--ink)}.backLink{display:inline-block;font-size:.8rem;margin-bottom:28px}.section{padding:44px 0}.softSection{background:var(--light)}.lead{max-width:680px;font-size:1.05rem;color:var(--muted);line-height:1.8;margin:0}.skipLink{position:absolute;top:8px;left:8px;z-index:100;transform:translateY(-180%);background:#fff;padding:10px 18px}.skipLink:focus{transform:none}.siteHeader{background:#fff;border-bottom:1px solid var(--line)}.headerInner{min-height:86px;justify-content:space-between;gap:30px}.brand,.headerInner{display:flex;align-items:center}.brand{gap:14px;text-decoration:none}.brand img{width:58px;height:auto}.brand strong{font-size:1.02rem;letter-spacing:.075em;font-weight:600;line-height:1.2}.brand span{display:block;font-size:.63rem;line-height:1.4;letter-spacing:.025em;color:var(--muted);margin-top:5px}.primaryNav{display:flex;align-items:center;gap:32px}.primaryNav a{padding:30px 0;font-size:.82rem;text-decoration:none;border-bottom:2px solid transparent;line-height:1.5}.primaryNav a:hover,.primaryNav a[aria-current=page]{border-color:var(--green)}.menuToggle{display:none}.homeOpening{padding:30px 0 0;background:var(--paper)}.openingMeta{display:flex;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:1px solid var(--line);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.openingLayout{display:grid;grid-template-columns:1fr 235px;grid-gap:100px;gap:100px;align-items:center;padding:34px 0}.openingLayout h1{margin-bottom:20px}.openingText{max-width:600px;color:var(--muted);font-size:1.02rem;line-height:1.85;margin-bottom:22px}.openingNote{border-left:1px solid var(--line);padding:5px 0 5px 28px}.openingNote .label{margin-bottom:12px}.openingNote p{font-size:.9rem;line-height:1.7;margin-bottom:18px}.openingNote>a{font-size:.72rem;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:4px}.fieldImage{height:190px;position:relative;overflow:hidden}.fieldImage img{object-fit:cover;object-position:center 45%;filter:saturate(.4)}.safetyFeature{background:var(--green);color:#f6f7f1;padding:42px 0}.featureLayout{display:grid;grid-template-columns:.85fr 1.15fr;grid-gap:100px;gap:100px;align-items:start}.safetyFeature .label{color:#c4d0c3}.safetyFeature h2{font-size:2rem;line-height:1.3;margin:0}.safetyFeature p{font-size:.95rem;line-height:1.8;color:#e1e8dd}.safetyFeature p:first-child{color:#fff;font-size:1.04rem}.safetyFeature .textLink{border-color:#8b9f89}.experienceFeature{padding:46px 0;background:#fff}.experienceLayout{display:grid;grid-template-columns:1fr 1fr;grid-gap:100px;gap:100px}.experienceIntro>p{max-width:440px;font-size:.92rem;color:var(--muted)}.projectFeature{padding:24px 28px;background:var(--light);border-top:2px solid #7e9078}.projectStamp{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:.61rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:25px}.projectFeature h3{font-size:1.5rem;margin-bottom:4px}.projectContext{color:var(--muted);font-size:.7rem;margin-bottom:18px}.projectFeature>p:not(.projectContext){font-size:.84rem;line-height:1.8}.projectFeature .projectFootnote{color:var(--muted);border-top:1px solid #cbd3c5;padding-top:14px}.projectFeature>a{font-size:.75rem;text-decoration:none;border-bottom:1px solid #a4b29e;padding-bottom:4px}.customerFeature{padding:42px 0;background:var(--paper);border-top:1px solid var(--line)}.customerLayout{display:grid;grid-template-columns:235px 1fr;grid-gap:90px;gap:90px}.customerLayout>.label{padding-top:7px}.customerLayout h2{font-size:1.85rem}.customerLayout>div>p{max-width:670px;color:var(--muted);font-size:.95rem}.workSentence{display:flex;align-items:center;justify-content:space-between;gap:36px;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}.workSentence p{font-size:.8rem;line-height:1.6;max-width:375px;color:var(--muted);margin:0}.workSentence a{flex-shrink:0;font-size:.75rem;gap:16px}.pageOpening{padding:40px 0 36px;border-bottom:1px solid var(--line)}.pageOpening .label{margin-bottom:16px}.darkOpening{background:var(--green);color:#fff;border:0}.darkOpening .label{color:#c4d0c3}.darkOpening .lead{color:#e1e8dd}.storyLayout{display:grid;grid-template-columns:.7fr 1.3fr;grid-gap:90px;gap:90px}.storyLayout>div:first-child>p{max-width:315px;font-size:.9rem;color:var(--muted)}.storyLayout>aside>h2{font-size:1.4rem}.storyLayout>div:first-child>.textLink{margin-top:5px}.prose{max-width:680px}.prose>h2:not(:first-child){margin-top:32px}.prose h2{font-size:1.5rem}.prose p{font-size:.95rem;color:var(--muted);line-height:1.85}.companyFacts{margin:0 0 22px}.companyFacts>div{padding:12px 0;border-bottom:1px solid var(--line)}.companyFacts dt{font-size:.67rem;color:var(--muted)}.companyFacts dd{font-size:.85rem;margin:2px 0 0}.credentialAside>img{width:74px;height:auto;margin-bottom:22px}.credentialAside>p{font-size:.78rem;color:var(--muted)}.credentialAside h2{font-size:1.15rem!important}.practiceList{margin:28px 0}.practiceList>section{display:grid;grid-template-columns:135px 1fr;grid-gap:28px;gap:28px;border-top:1px solid var(--line);padding:18px 0}.practiceList>section:last-child{border-bottom:1px solid var(--line)}.practiceList h3{font-size:1rem;line-height:1.7;margin:0;letter-spacing:-.015em}.practiceList p{font-size:.84rem;margin:0}.scopeNarrative>section{padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid var(--line)}.scopeNarrative>section:last-child{border:0;margin:0;padding:0}.scopeNarrative>section>a{display:inline-block;font-size:.8rem;margin-right:24px}.technicalDetails{border-block:1px solid var(--line);margin:24px 0;padding:15px 0;font-size:.84rem}.technicalDetails summary{cursor:pointer}.technicalDetails nav{display:grid;grid-gap:8px;gap:8px;margin-top:14px;padding-left:17px}.technicalDetails nav a{font-size:.8rem}.recordHeading{display:flex;justify-content:space-between;gap:40px;align-items:baseline;margin-bottom:24px}.recordHeading h2{margin:0}.recordHeading p{max-width:440px;margin:0;font-size:.8rem;color:var(--muted)}.projectRecord{display:grid;grid-template-columns:.7fr 1.3fr;grid-gap:90px;gap:90px;padding:26px 0;border-top:1px solid var(--line)}.projectRecord:last-child{border-bottom:1px solid var(--line)}.recordMeta{display:grid;align-content:start;grid-gap:6px;gap:6px;font-size:.75rem;color:var(--muted)}.recordMeta strong{font-size:.85rem;font-weight:500;color:var(--ink)}.projectRecord h3{font-size:1.2rem;letter-spacing:-.02em}.projectRecord p{font-size:.87rem;color:var(--muted);line-height:1.85;margin:0}.recordNote{max-width:760px;font-size:.72rem;color:var(--muted);margin:22px 0 0}.contactLayout{display:grid;grid-template-columns:1.25fr .75fr;grid-gap:100px;gap:100px;align-items:start}.contactLayout>aside{padding:24px 0 0;border-top:1px solid var(--line)}.contactLayout>aside>a{display:block;font-size:.9rem;margin-bottom:8px;overflow-wrap:anywhere}.contactLayout>aside>p{font-size:.83rem;color:var(--muted);margin-top:24px}.inquiryForm{margin-top:20px}.inquiryIntro{font-size:.9rem;line-height:1.7;color:var(--muted)}.inquiryFields{margin:24px 0 0;border:0;padding:0;min-width:0}.inquiryField{margin-bottom:20px}.inquiryField label,.inquiryGroupLabel{display:block;font-size:.8rem;margin-bottom:7px;font-weight:500}.inquiryField label span{color:var(--muted);font-size:.7rem;font-weight:400}.inquiryField input,.inquiryField textarea{width:100%;border:1px solid #a6b3a2;padding:11px 13px;border-radius:1px;background:#fff;color:var(--ink);font-size:.9rem}.inquiryContactFields{margin:0 0 20px;padding:20px 0 0;border-block:1px solid var(--line)}.inquiryContactGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.inquiryHelp{font-size:.74rem;color:var(--muted);margin-bottom:18px}.inquiryFieldError{font-size:.75rem;color:var(--error);margin:6px 0 0}.inquiryHoney{position:absolute;left:-10000px}.inquiryStatus{margin-top:20px;padding:14px;border-left:3px solid var(--green);background:#e5ebdf;font-size:.85rem}.inquiryStatus--error{background:#f3e4df;border-color:var(--error)}.inquiryPrivacy{font-size:.72rem;color:var(--muted);max-width:540px;margin-top:16px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 22px;border:1px solid var(--green);border-radius:1px;color:var(--green);background:transparent;font-size:.83rem;font-weight:500;text-decoration:none;cursor:pointer}.btn.primary{color:#fff;background:var(--green)}.btn:hover{background:#e0e7da;color:var(--ink)}.btn.primary:hover{background:#273d30;color:#fff}.btn:disabled{opacity:.6;cursor:wait}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.hero{padding:40px 0 36px;border-bottom:1px solid var(--line)}.hero p{max-width:680px;color:var(--muted)}.privacyLayout{display:grid;grid-template-columns:.7fr 1.3fr;grid-gap:90px;gap:90px}.privacyLayout aside{font-size:.82rem}.privacyContent section{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--line)}.privacyContent h2{font-size:1.4rem}.privacyContent p{font-size:.88rem;color:var(--muted)}.siteFooter{background:#e5eadf;padding:34px 0 20px;border-top:1px solid #d1d8c9}.footerMain{display:grid;grid-template-columns:1fr 280px;grid-gap:90px;gap:90px;padding-bottom:30px}.footerMain h2{font-size:1.7rem;margin-bottom:14px}.footerMain .label{margin-bottom:10px}.footerMain a{display:block;width:-moz-fit-content;width:fit-content;text-decoration:none;font-size:.8rem;margin-bottom:7px}.footerMain a:hover{text-decoration:underline}.footerMain .footerEmail{font-size:.95rem}.footerDetails>strong{font-size:.84rem;font-weight:600}.footerDetails>p{font-size:.75rem;color:var(--muted);margin:10px 0 14px}.footerDetails nav{display:flex;flex-wrap:wrap;gap:4px 20px}.footerDetails nav a{font-size:.7rem}.footerEnd{display:flex;justify-content:space-between;gap:24px;padding-top:18px;border-top:1px solid #c9d2c0;font-size:.63rem;color:var(--muted)}@media(max-width:960px){.experienceLayout,.featureLayout,.openingLayout,.privacyLayout,.projectRecord,.storyLayout{gap:50px}.customerLayout{grid-template-columns:180px 1fr;gap:50px}.contactLayout{gap:50px}.workSentence{display:block}.workSentence p{max-width:100%;margin-bottom:12px}}@media(max-width:760px){.container{width:calc(100% - 40px)}.headerInner{min-height:76px}.brand img{width:48px;height:auto}.brand{gap:10px}.brand strong{font-size:.86rem}.brand span{font-size:.56rem}.menuToggle{display:inline-flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--ink);font-size:.8rem;min-height:44px;padding:0 4px}.menuToggle span{font-size:1.25rem}.primaryNav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;z-index:30;padding:12px 20px 22px;border-bottom:1px solid var(--line)}.primaryNav.isOpen{display:grid;grid-gap:0;gap:0}.primaryNav a{padding:12px 0;border-bottom:1px solid var(--line);font-size:.9rem}.homeOpening{padding-top:22px}.openingMeta{font-size:.55rem;gap:12px;padding-bottom:16px}.openingLayout{grid-template-columns:1fr;gap:24px;padding:26px 0}.openingLayout h1{font-size:2rem}.openingText{font-size:.95rem;line-height:1.8}.openingNote{display:grid;grid-template-columns:1fr auto;align-items:baseline;grid-gap:8px 20px;gap:8px 20px;padding:16px 0 0;border-left:0;border-top:1px solid var(--line)}.openingNote .label{font-size:.6rem;margin:0}.openingNote p{grid-column:1/-1;font-size:.84rem;margin:0;grid-row:2}.openingNote>a{grid-column:2;grid-row:1;font-size:.65rem}.fieldImage{height:150px}.customerLayout,.experienceLayout,.featureLayout{grid-template-columns:1fr;gap:24px}.safetyFeature{padding:30px 0}.safetyFeature h2{font-size:1.75rem}.safetyFeature p{font-size:.9rem}.safetyFeature p:first-child{font-size:.97rem}.customerFeature,.experienceFeature{padding:32px 0}.customerLayout h2,.experienceIntro h2{font-size:1.7rem}.projectFeature{padding:22px}.projectStamp{margin-bottom:18px}.customerLayout>.label{margin:0;padding:0}.customerLayout>div>p{font-size:.9rem}.workSentence{margin-top:20px;padding-top:18px}.hero,.pageOpening{padding:30px 0}.pageOpening h1{font-size:2rem}.lead{font-size:.95rem}.section{padding:30px 0}.privacyLayout,.storyLayout{grid-template-columns:1fr;gap:32px}.storyLayout>aside{border-bottom:1px solid var(--line);padding-bottom:24px}.storyLayout>div:first-child>p{max-width:100%}.prose p{font-size:.9rem}.practiceList>section{grid-template-columns:1fr;gap:8px}.projectRecord{grid-template-columns:1fr;gap:15px;padding:22px 0}.recordMeta{gap:4px}.recordHeading{display:block}.recordHeading p{margin-top:10px}.projectRecord h3{font-size:1.15rem}.contactLayout{grid-template-columns:1fr;gap:30px}.contactLayout>aside{grid-row:1;padding-top:0;border-top:0;padding-bottom:20px;border-bottom:1px solid var(--line)}.contactLayout>aside>p{margin-top:16px}.footerMain{grid-template-columns:1fr;gap:24px;padding-bottom:24px}.footerMain h2{font-size:1.5rem}.footerEnd{display:block}.footerEnd>span{display:block;margin-bottom:5px}.siteFooter{padding-top:28px}}@media(max-width:440px){.openingMeta,.openingMeta span{display:block}.openingMeta span+span{margin-top:4px}.openingNote{grid-template-columns:1fr}.openingNote>a{grid-column:1;grid-row:3;margin-top:5px;width:-moz-fit-content;width:fit-content}.openingLayout h1{font-size:1.9rem}.inquiryContactGrid{grid-template-columns:1fr;gap:0}.footerEmail{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.serviceList{margin:0}.serviceList>div{padding:15px 0;border-top:1px solid var(--line)}.serviceList>div:first-child{padding-top:0;border-top:0}.serviceList dt{font-size:1.05rem;font-weight:500;line-height:1.5}.serviceList dd{margin:5px 0 0;font-size:.88rem;line-height:1.7;color:var(--muted)}.serviceArea{font-size:.78rem;color:var(--muted);margin:20px 0 12px}.sectorLinks{display:flex;flex-wrap:wrap;gap:24px;font-size:.8rem}.residentialPhoto{margin:0 0 28px}.residentialPhoto img{width:100%;height:auto}.residentialPhoto figcaption{font-size:.7rem;color:var(--muted);margin-top:8px}.marketsHeading{font-size:1.15rem;margin:24px 0 10px;padding-top:20px;border-top:1px solid var(--line)}.marketsHeading+.serviceArea{margin-top:0}.photoOpening{position:relative;isolation:isolate;background:#273b33;color:#fff;min-height:560px;display:flex;align-items:center;padding:52px 0 132px;overflow:hidden}.homePhotoLoop{z-index:-2;background:#273b33}.homePhotoLoop,.homePhotoSlide{position:absolute;inset:0;overflow:hidden}.homePhotoSlide{opacity:0;transition:opacity 1.7s ease}.homePhotoSlide.isActive{opacity:1}.homePhotoSlide img{object-fit:cover;transform:scale(1.025);filter:saturate(.65) contrast(.8) brightness(1.04) blur(.6px);opacity:.82}.homePhotoSlide.isActive img{animation:photoDrift 10s ease-out forwards}.homePhotoLoop.isPaused .homePhotoSlide img{animation-play-state:paused}.homePhotoLoop:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(20,34,28,.93),rgba(20,34,28,.76) 31%,rgba(20,34,28,.15) 67%),linear-gradient(0deg,rgba(20,34,28,.65),transparent 40%)}.photoOpeningContent{padding-top:20px;pointer-events:none}.photoOpeningContent>*{pointer-events:auto;width:-moz-fit-content;width:fit-content}.photoOpeningContent .label{font-size:.69rem;color:#e0e7d8;letter-spacing:.1em;margin-bottom:24px}.photoOpeningContent h1{font-size:clamp(2.1rem,3.6vw,2.9rem);line-height:1.22;margin-bottom:22px}.photoOpeningContent p{font-size:1rem;color:#e1e7df;line-height:1.9;margin-bottom:28px}.photoContact{display:inline-flex;align-items:center;gap:48px;padding:10px 0;border-bottom:1px solid #a4b59e;text-decoration:none;font-size:.85rem}.photoContact:hover{border-color:#fff}.homePhotoBar{position:absolute;bottom:94px;right:max(32px,calc((100vw - 1120px)/2));gap:22px;color:#fff;font-size:.68rem;z-index:2}.homePhotoBar,.homePhotoControls,.homePhotoControls button{display:flex;align-items:center}.homePhotoControls button{justify-content:center;width:30px;height:40px;background:transparent;border:0;color:#fff;cursor:pointer;padding:0}.homePhotoControls button>span{width:6px;height:6px;border:1px solid #fff;border-radius:50%}.homePhotoControls button[aria-pressed=true]>span{background:#fff}.homePhotoControls .photoPause{width:42px;font-size:.65rem;margin-left:5px}.photoPause:disabled{opacity:.6;cursor:default}.photoWorkNav{position:absolute;bottom:0;left:0;right:0;background:rgba(24,39,31,.52);border-top:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.photoWorkNav .container{display:grid;grid-template-columns:1.4fr 1fr 1fr}.photoWorkNav a{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.95rem;text-decoration:none;padding:22px 28px;border-left:1px solid rgba(255,255,255,.22);transition:background .25s}.photoWorkNav a:first-child{padding-left:0;border-left:0}.photoWorkNav a:last-child{padding-right:0}.photoWorkNav a:hover{background:rgba(255,255,255,.08)}.photoWorkNav a>span{font-size:1.1rem}.governmentWorkLink{font-weight:600}.companyEditorial{padding:50px 0 46px;background:#fff}.companyEditorialGrid{display:grid;grid-template-columns:1fr 240px;grid-gap:100px;gap:100px;align-items:center}.companyEditorialCopy .label{font-size:.68rem;margin-bottom:16px}.companyEditorialCopy h2{font-size:1.85rem;margin-bottom:20px;line-height:1.3}.companyEditorialCopy p{font-size:.95rem;color:var(--muted);max-width:690px;line-height:1.85;margin-bottom:14px}.editorialLinks{display:flex;flex-wrap:wrap;gap:28px;margin-top:23px}.editorialLinks .textLink{font-size:.78rem;gap:12px}.homeCertification{justify-self:center;text-align:center}.homeCertification a{display:flex;flex-direction:column;align-items:center;gap:14px;text-decoration:none}.homeCertification img{width:108px;height:auto}.homeCertification span{font-size:.7rem;color:var(--muted);line-height:1.7}.homeCertification a:hover span{text-decoration:underline;text-underline-offset:4px}@keyframes photoDrift{0%{transform:scale(1.025)}to{transform:scale(1.09)}}@media(max-width:960px){.companyEditorialGrid{gap:45px}.homePhotoBar>span{display:none}.photoWorkNav a{padding-inline:20px}.photoWorkNav .container{grid-template-columns:1.3fr 1fr 1fr}}@media(max-width:760px){.photoOpening{min-height:530px;padding:32px 0 170px;align-items:center}.homePhotoLoop:after{background:linear-gradient(90deg,rgba(20,34,28,.88),rgba(20,34,28,.48)),linear-gradient(0deg,rgba(20,34,28,.7),transparent 45%)}.photoOpeningContent{padding-top:0}.photoOpeningContent .label{font-size:.57rem;letter-spacing:.06em;margin-bottom:20px}.photoOpeningContent h1{font-size:2rem}.photoOpeningContent p{font-size:.95rem;margin-bottom:20px}.photoContact{font-size:.8rem;gap:36px}.homePhotoBar{bottom:146px;right:20px}.photoWorkNav .container{grid-template-columns:1fr 1fr}.photoWorkNav a{padding:15px 0;font-size:.84rem}.photoWorkNav a:first-child{grid-column:1/-1;border-bottom:1px solid rgba(255,255,255,.22)}.photoWorkNav a:nth-child(2){border-left:0;padding-right:18px}.photoWorkNav a:last-child{padding-left:18px}.companyEditorial{padding:30px 0}.companyEditorialGrid{grid-template-columns:1fr;gap:24px}.companyEditorialCopy h2{font-size:1.65rem}.companyEditorialCopy p{font-size:.9rem}.editorialLinks{gap:18px;margin-top:20px}.homeCertification{justify-self:start;text-align:left;padding-top:22px;border-top:1px solid var(--line);width:100%}.homeCertification a{flex-direction:row;justify-content:flex-start;gap:20px}.homeCertification img{width:72px}.homeCertification span{font-size:.72rem}}@media(prefers-reduced-motion:reduce){.homePhotoSlide{transition:none}.homePhotoSlide.isActive img{animation:none}.photoWorkNav a{transition:none}}@media(max-width:960px){.homePhotoBar.isConcept{flex-direction:column;align-items:flex-end;gap:0}.homePhotoBar.isConcept>span{display:block;font-size:.6rem;text-shadow:0 1px 4px #14221c}}.photoWorkNav .container{grid-template-columns:repeat(3,minmax(0,1fr))}.workLinkCopy{display:flex;flex-direction:column;gap:7px}.workLinkCopy strong{font-size:.95rem;font-weight:500;line-height:1.3}.workLinkCopy small{font-size:.73rem;line-height:1.55;color:#e0e7df;max-width:260px}.photoWorkNav a{align-items:flex-start}.photoWorkNav a>span{margin-top:1px}.homePhotoBar{bottom:136px}.photoOpening{padding-bottom:170px;min-height:580px}@media(max-width:760px){.photoOpening{min-height:650px;padding-bottom:275px}.photoWorkNav .container{grid-template-columns:1fr}.photoWorkNav a,.photoWorkNav a:first-child,.photoWorkNav a:last-child,.photoWorkNav a:nth-child(2){grid-column:auto;padding:13px 0;border-left:0;border-bottom:1px solid rgba(255,255,255,.2)}.photoWorkNav a:last-child{border-bottom:0}.workLinkCopy{gap:4px}.workLinkCopy strong{font-size:.88rem}.workLinkCopy small{font-size:.7rem;max-width:300px}.homePhotoBar{bottom:242px;right:20px}}.residentialOpening{padding:40px 0 34px;border-bottom:1px solid var(--line)}.residentialOpeningGrid{display:grid;grid-template-columns:1.25fr 1fr;grid-gap:80px;gap:80px;align-items:center}.residentialIntro h1{font-size:clamp(2rem,3.2vw,2.55rem);line-height:1.23;max-width:570px}.residentialIntro>p{font-size:1rem;line-height:1.85;max-width:510px;color:var(--muted);margin-bottom:24px}.residentialLocation{display:block;font-size:.72rem;color:var(--muted);margin-top:20px}.residentialProjectPhoto{margin:0}.residentialProjectPhoto>div{height:390px;overflow:hidden}.residentialProjectPhoto img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.residentialProjectPhoto figcaption{font-size:.66rem;color:var(--muted);margin-top:9px}.residentialWork{padding:42px 0 46px;background:#fff}.residentialWorkGrid{display:grid;grid-template-columns:1fr 1.35fr;grid-gap:90px;gap:90px}.residentialApproach h2{font-size:1.85rem;line-height:1.25}.residentialApproach p{font-size:.9rem;color:var(--muted);line-height:1.85;max-width:380px}.residentialScopeLinks>a{display:flex;justify-content:space-between;gap:30px;text-decoration:none;padding:18px 0;border-top:1px solid var(--line)}.residentialScopeLinks>a:last-child{border-bottom:1px solid var(--line)}.residentialScopeLinks h3{font-size:1.05rem;letter-spacing:-.015em;margin-bottom:5px}.residentialScopeLinks p{font-size:.83rem;color:var(--muted);line-height:1.7;margin:0;max-width:450px}.residentialScopeLinks>a>span{font-size:1.2rem}.residentialScopeLinks>a:hover h3{text-decoration:underline;text-underline-offset:5px}.residentialScopeLinks>a:hover>span{color:var(--green)}@media(max-width:960px){.residentialOpeningGrid{gap:40px}.residentialWorkGrid{gap:45px}}@media(max-width:760px){.residentialOpening{padding:30px 0}.residentialOpeningGrid,.residentialWorkGrid{grid-template-columns:1fr;gap:28px}.residentialIntro h1{font-size:2rem}.residentialIntro>p{font-size:.95rem}.residentialProjectPhoto>div{height:300px}.residentialProjectPhoto img{object-position:center 35%}.residentialWork{padding:30px 0}.residentialApproach h2{font-size:1.65rem}.residentialApproach p{max-width:100%}.residentialScopeLinks>a{padding:16px 0}.residentialScopeLinks p{font-size:.82rem}}.residentialPhotoStage{position:relative;overflow:hidden;background:#e9e9e2}.residentialSlide{position:absolute;inset:0;opacity:0;transition:opacity 1.5s ease;overflow:hidden}.residentialSlide.isActive{opacity:1}.residentialProjectPhoto .residentialSlide img{object-fit:cover;transform:scale(1.015)}.residentialSlide.isActive img{animation:residentialDrift 10s ease-out forwards}.residentialPhotoLoop.isPaused img{animation-play-state:paused}.residentialPhotoLoop figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px}.residentialPhotoLoop figcaption small{display:block;font-size:.6rem;margin-top:1px}.residentialPhotoControls{display:flex;align-items:center;flex-shrink:0}.residentialPhotoControls button{border:0;background:transparent;color:var(--ink);width:24px;min-height:40px;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer}.residentialPhotoControls button>span{width:6px;height:6px;border:1px solid var(--green);border-radius:50%}.residentialPhotoControls button[aria-pressed=true]>span{background:var(--green)}.residentialPhotoControls .residentialPhotoPause{width:40px;font-size:.62rem;margin-left:4px}.residentialPhotoPause:disabled{opacity:.55;cursor:default}@keyframes residentialDrift{0%{transform:scale(1.015)}to{transform:scale(1.045)}}@media(prefers-reduced-motion:reduce){.residentialSlide{transition:none}.residentialSlide.isActive img{animation:none}}.serviceInstallationPhotos{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px;margin-top:30px}.serviceInstallationPhotos figure{margin:0}.serviceInstallationPhotos img{width:100%;height:290px;object-fit:contain;background:#eeeee8}.serviceInstallationPhotos figcaption{font-size:.7rem;color:var(--muted);line-height:1.6;margin-top:8px}.serviceInstallationPhotos small{display:block;font-size:.62rem}@media(max-width:760px){.serviceInstallationPhotos{gap:16px}.serviceInstallationPhotos img{height:240px}}.residentialProjectPhoto .residentialSlide.isIllustration img{filter:saturate(.8) contrast(.92)}.commercialOpening{padding:40px 0 32px;border-bottom:1px solid var(--line)}.commercialOpeningGrid{display:grid;grid-template-columns:1.05fr 1fr;grid-gap:80px;gap:80px;align-items:center}.commercialOpening h1{font-size:clamp(2rem,3.2vw,2.55rem);line-height:1.23;margin-bottom:0}.commercialIntro>p{font-size:.97rem;line-height:1.85;color:var(--muted);margin-bottom:18px}.commercialWork{padding:36px 0 42px;background:#fff}.commercialWorkGrid{display:grid;grid-template-columns:.95fr 1.15fr;grid-gap:80px;gap:80px;align-items:start}.commercialPhotoLoop{margin:0}.commercialPhotoStage{height:410px;position:relative;overflow:hidden;background:var(--light)}.commercialSlide{position:absolute;inset:0;opacity:0;transition:opacity 1.5s ease;overflow:hidden}.commercialSlide.isActive{opacity:1}.commercialSlide img{transform:scale(1.015)}.commercialSlide.isActive img{animation:residentialDrift 10s ease-out forwards}.commercialPhotoLoop.isPaused img{animation-play-state:paused}.commercialPhotoLoop figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;font-size:.66rem;color:var(--muted)}.commercialPhotoControls{display:flex;flex-shrink:0}.commercialPhotoControls button{display:flex;align-items:center;justify-content:center;width:24px;min-height:40px;background:transparent;border:0;color:var(--ink);padding:0;cursor:pointer}.commercialPhotoControls button>span{width:6px;height:6px;border:1px solid var(--green);border-radius:50%}.commercialPhotoControls button[aria-pressed=true]>span{background:var(--green)}.commercialPhotoControls .commercialPhotoPause{width:40px;font-size:.62rem;margin-left:4px}.commercialPhotoPause:disabled{opacity:.55;cursor:default}.commercialExperience{padding-top:22px;border-top:1px solid var(--line);margin-top:14px}.commercialExperience .label{margin-bottom:9px}.commercialExperience p{font-size:.83rem;color:var(--muted);line-height:1.75;max-width:400px;margin-bottom:12px}.commercialExperience .textLink{font-size:.75rem}.commercialScope h2{font-size:1.75rem;line-height:1.3;margin-bottom:16px}.commercialScope>p{font-size:.9rem;line-height:1.85;color:var(--muted);margin-bottom:23px}.commercialScopeLinks>a{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding:17px 0;text-decoration:none}.commercialScopeLinks>a:last-child{border-bottom:1px solid var(--line)}.commercialScopeLinks h3{font-size:1.05rem;margin-bottom:5px}.commercialScopeLinks p{font-size:.83rem;color:var(--muted);line-height:1.7;margin:0;max-width:450px}.commercialScopeLinks>a>span{font-size:1.2rem}.commercialScopeLinks>a:hover h3{text-decoration:underline;text-underline-offset:5px}@media(max-width:960px){.commercialOpeningGrid,.commercialWorkGrid{gap:40px}}@media(max-width:760px){.commercialOpening{padding:30px 0}.commercialOpeningGrid,.commercialWorkGrid{grid-template-columns:1fr;gap:26px}.commercialOpening h1{font-size:2rem}.commercialIntro>p{font-size:.95rem}.commercialWork{padding:28px 0 32px}.commercialField{grid-row:2}.commercialPhotoStage{height:340px}.commercialScope h2{font-size:1.65rem}.commercialScopeLinks>a{padding:16px 0}.commercialExperience{padding-top:18px;margin-top:10px}}@media(prefers-reduced-motion:reduce){.commercialSlide{transition:none}.commercialSlide.isActive img{animation:none}}.commercialSlide img{object-fit:contain;filter:brightness(1.03) saturate(.96);object-fit:cover;filter:saturate(.88) contrast(.95)}.commercialPhotoLoop figcaption small{display:block;font-size:.6rem;margin-top:1px}.commercialPhotoStage{height:360px}@media(max-width:760px){.commercialPhotoStage{height:290px}}.commercialPhotoToolbar{display:flex;justify-content:flex-end;align-items:center;min-height:42px}.governmentPage .lead{max-width:760px}.governmentLayout{display:grid;grid-template-columns:1.4fr 1fr;grid-gap:80px;gap:80px;align-items:start}.governmentCredentials{border-left:1px solid var(--line);padding-left:32px}.governmentCredentials h2{font-size:1.2rem}.governmentContact{display:grid;justify-items:start;grid-gap:12px;gap:12px;margin:20px 0 24px}.governmentContact>a{font-size:.95rem;text-underline-offset:4px}.governmentContact .textLink{margin-top:4px}.prose .governmentDocuments{font-size:.84rem;border-top:1px solid var(--line);padding-top:18px;margin-bottom:0}@media(max-width:760px){.governmentLayout{grid-template-columns:1fr;gap:30px}.governmentCredentials{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:24px}}.governmentOpening{background:#e7ebe2;border-bottom:1px solid #ccd4c5}.governmentHero{display:grid;grid-template-columns:1fr 190px;grid-gap:70px;gap:70px;align-items:center}.governmentOpening h1{font-size:clamp(2rem,3.6vw,2.8rem);line-height:1.2}.governmentOpening .lead{max-width:640px;font-size:1rem;line-height:1.8;margin-bottom:22px}.governmentCertification{display:flex;flex-direction:column;align-items:center;text-align:center}.governmentCertification img{width:116px;height:auto}.governmentCertification p{font-size:.69rem;color:var(--muted);line-height:1.6;margin:12px 0 0}@media(max-width:760px){.governmentHero{grid-template-columns:1fr;gap:24px}.governmentCertification{flex-direction:row;gap:18px;text-align:left;align-items:center;padding-top:20px;border-top:1px solid #ccd4c5}.governmentCertification img{width:78px;flex-shrink:0}.governmentCertification p{margin:0;font-size:.75rem}.governmentOpening .lead{font-size:.95rem}}.governmentBrandGraphic{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;gap:24px;margin-top:32px;padding:24px 30px;background:#eef0e9;border-left:3px solid var(--green)}.governmentBrandGraphic:after{content:"";position:absolute;z-index:-1;inset:-80px -40px -80px 55%;opacity:.3;background:repeating-linear-gradient(120deg,transparent,transparent 49px,#c8d0c1 50px,#c8d0c1 51px,transparent 52px,transparent 100px)}.governmentBrandGraphic>img{width:72px;height:72px;object-fit:contain;flex-shrink:0}.governmentBrandTitle{display:grid;grid-gap:8px;gap:8px}.governmentBrandTitle>span{font-size:.68rem;letter-spacing:.13em;color:var(--green)}.governmentBrandTitle>strong{font-size:1.15rem;font-weight:500;line-height:1.35}.governmentBrandGraphic>p{font-size:.83rem;line-height:1.8;margin:0 0 0 auto;padding-left:24px;border-left:1px solid #c8d0c1;color:var(--green)}@media(max-width:760px){.governmentBrandGraphic{gap:16px;padding:20px;margin-top:24px;flex-wrap:wrap}.governmentBrandGraphic>img{width:52px;height:52px}.governmentBrandTitle{flex:1 1;min-width:150px}.governmentBrandTitle>strong{font-size:1rem}.governmentBrandGraphic>p{width:100%;margin:0;padding:12px 0 0;border-left:0;border-top:1px solid #c8d0c1;font-size:.75rem}.governmentBrandGraphic>p br{display:none}.governmentBrandGraphic>p br:after{content:" "}}.governmentOpening{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(110deg,#e5eae0,#eff1ea 58%,#d8e0d0);padding:54px 0 48px}.governmentOpening:before{content:"";position:absolute;z-index:-1;inset:0;background:url(/cal-vet-mark.png) no-repeat 75% 48%;background-size:460px;opacity:.055;pointer-events:none}.governmentHero{gap:90px}.governmentOpening h1{max-width:660px}.governmentCertification{position:relative}.governmentCertification img{width:104px}.governmentCertification p{max-width:190px}@media(max-width:760px){.governmentOpening{padding:36px 0 30px}.governmentOpening:before{background-position:right -95px top 5px;background-size:350px;opacity:.045}.governmentHero{gap:22px}.governmentCertification img{width:64px}.governmentCertification p{max-width:250px}.governmentCertification{border-top-color:#bfcbb7}}.governmentCredentials{padding-left:24px}.governmentCredentials>.label{margin-bottom:8px}.governmentCredentials h2{font-size:1rem;margin-bottom:14px}.governmentCredentials .companyFacts{margin:0}.governmentCredentials .companyFacts>div{display:grid;grid-template-columns:105px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:baseline;padding:9px 0}.governmentCredentials .companyFacts dt{font-size:.7rem}.governmentCredentials .companyFacts dd{margin:0;font-size:.8rem;line-height:1.5;overflow-wrap:anywhere}@media(max-width:760px){.governmentCredentials{padding-left:0;padding-top:20px}.governmentCredentials .companyFacts>div{grid-template-columns:110px minmax(0,1fr);padding:8px 0}}.aboutPage .pageOpening{background:var(--light)}.aboutPurpose{color:var(--green);font-family:var(--head);font-weight:600;font-size:1.2rem}.aboutStory{max-width:980px}.aboutIntroduction{max-width:740px;margin-bottom:34px}.aboutStory p{font-size:.95rem;line-height:1.85;color:var(--muted)}.aboutChapter{display:grid;grid-template-columns:280px 1fr;grid-gap:52px;gap:52px;border-top:1px solid var(--line);padding:28px 0}.aboutChapter h2{font-size:1.4rem;line-height:1.35;margin:0}.aboutChapter p:last-child{margin-bottom:0}.aboutClosing{padding-top:28px}.aboutClosing p{max-width:720px;font-family:var(--head);font-weight:600;font-size:1.2rem;color:var(--ink)}@media(max-width:760px){.aboutChapter{grid-template-columns:1fr;gap:16px;padding:24px 0}.aboutIntroduction{margin-bottom:24px}.aboutStory p{font-size:.9rem}.aboutClosing p{font-size:1.15rem}}.aboutPage .pageOpening{position:relative;overflow:hidden;background:var(--green);color:var(--paper);padding:48px 0 44px}.aboutPage .pageOpening:after{content:"";position:absolute;right:-70px;top:-120px;width:360px;height:360px;border:1px solid rgba(247,246,241,.12);border-radius:50%;box-shadow:0 0 0 65px rgba(247,246,241,.025);pointer-events:none}.aboutPage .pageOpening .container{position:relative;z-index:1}.aboutPage .pageOpening .label{color:#cad7c8}.aboutPage .pageOpening h1{font-size:1.25rem;letter-spacing:0;margin-bottom:16px}.aboutPage .aboutPurpose{font-size:clamp(1.8rem,3.3vw,2.6rem);line-height:1.2;color:var(--paper);max-width:660px}.aboutIntroduction{padding-left:24px;border-left:3px solid #8fa485}.aboutIntroduction p:first-child{font-size:1.1rem;color:var(--ink)}.aboutChapter h2{color:var(--green)}.aboutChapter:nth-of-type(2){background:var(--light);border-top:0;margin:0 -24px 24px;padding:28px 24px}.aboutClosing{padding:26px 28px;background:var(--light);border-top:3px solid #8fa485;margin-top:8px}.aboutClosing p{margin-bottom:18px}@media(max-width:760px){.aboutPage .pageOpening{padding:36px 0}.aboutPage .pageOpening h1{font-size:1.1rem}.aboutPage .aboutPurpose{font-size:1.9rem;max-width:360px}.aboutIntroduction{padding-left:18px}.aboutIntroduction p:first-child{font-size:1rem}.aboutChapter:nth-of-type(2){margin:0 -10px 20px;padding:24px 20px}.aboutClosing{padding:22px 20px}}.aboutChapter .aboutSafetyStatement{font-family:var(--head);font-weight:600;font-size:1.3rem;line-height:1.4;color:var(--green);border-left:3px solid #8fa485;padding-left:18px;margin-top:24px;max-width:560px}@media(max-width:760px){.aboutChapter .aboutSafetyStatement{font-size:1.2rem;padding-left:15px;margin-top:20px}}.aboutPage .pageOpening:after{display:none}.aboutStory{max-width:1120px}.aboutIntroduction{max-width:none;border:0;padding:0;margin-bottom:44px}.aboutIntroduction .aboutStandfirst{font-family:var(--head);font-weight:600;font-size:clamp(1.35rem,2.3vw,1.8rem);line-height:1.45;max-width:860px;margin-bottom:28px}.aboutOrigin{display:grid;grid-template-columns:1.2fr .8fr;grid-gap:64px;gap:64px;align-items:start}.aboutOrigin>p{margin:0}.aboutReputation{border-left:2px solid #8fa485;padding-left:26px}.aboutReputation .label{margin-bottom:10px}.aboutReputation p{font-family:var(--head);font-weight:600;font-size:1.75rem;line-height:1.2;color:var(--green);margin-bottom:12px}.aboutReputation>span:last-child{display:block;font-size:.86rem;line-height:1.7;color:var(--muted)}.aboutLeadership{padding:34px 0 40px;grid-template-columns:.8fr 1.2fr;gap:64px}.aboutExperienceNumber{display:flex;gap:20px;align-items:center;margin-top:28px}.aboutExperienceNumber strong{font-family:var(--head);font-weight:600;font-size:4.7rem;line-height:1;color:#72866b;letter-spacing:-.04em}.aboutExperienceNumber span{font-size:.78rem;line-height:1.6;color:var(--muted)}.aboutChapter.aboutSafety{display:block;margin:0;padding:32px 36px;background:var(--green);color:var(--paper);border:0}.aboutSafety h2{color:#c9d7c5;font-size:.8rem;text-transform:uppercase;letter-spacing:.09em;margin-bottom:18px}.aboutSafety>div{max-width:810px}.aboutSafety .aboutSafetyStatement{font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.3;color:var(--paper);border:0;padding:0;margin:0 0 20px;max-width:790px}.aboutSafety p{color:#e0e7dc}.aboutOutlook{display:grid;grid-template-columns:1fr 1fr;grid-gap:64px;gap:64px;padding:36px 0 10px}.aboutOutlook .aboutChapter{display:block;border:0;padding:0}.aboutOutlook h2{margin-bottom:18px}.aboutOutlook .aboutFuture{border-left:1px solid var(--line);padding-left:32px}.aboutClosing{display:flex;gap:40px;align-items:center;justify-content:space-between;background:transparent;padding:24px 0;border-top:1px solid var(--line);margin:12px 0 0}.aboutClosing p{max-width:650px;margin:0}.aboutClosing .textLink{flex-shrink:0}@media(max-width:760px){.aboutIntroduction{margin-bottom:30px}.aboutIntroduction .aboutStandfirst{font-size:1.35rem;margin-bottom:22px}.aboutOrigin{grid-template-columns:1fr;gap:22px}.aboutReputation{padding-left:20px}.aboutReputation p{font-size:1.6rem}.aboutLeadership{grid-template-columns:1fr;gap:22px;padding:28px 0}.aboutExperienceNumber{margin-top:20px}.aboutExperienceNumber strong{font-size:3.8rem}.aboutChapter.aboutSafety{padding:26px 22px}.aboutSafety .aboutSafetyStatement{font-size:1.55rem}.aboutOutlook{grid-template-columns:1fr;gap:26px;padding:30px 0 0}.aboutOutlook .aboutFuture{padding:24px 0 0;border-left:0;border-top:1px solid var(--line)}.aboutClosing{display:block;margin-top:28px}.aboutClosing p{margin-bottom:20px}}.aboutIntroduction p.aboutStandfirst{font-size:clamp(1.35rem,2.3vw,1.8rem);line-height:1.45}.aboutOutlook .aboutChapter{background:transparent;margin:0}@media(max-width:760px){.aboutIntroduction p.aboutStandfirst{font-size:1.35rem}}.aboutPage .pageOpening{isolation:isolate;background:linear-gradient(110deg,#e5eae0,#eff1ea 58%,#d8e0d0);color:var(--ink);padding:66px 0;min-height:190px;display:flex;align-items:center}.aboutPage .pageOpening:before{content:"";position:absolute;z-index:-1;inset:0;background:url(/cal-vet-mark.png) no-repeat 78%;background-size:380px;opacity:.055;pointer-events:none}.aboutPage .pageOpening h1{font-size:clamp(2rem,3.6vw,2.8rem);line-height:1.2;margin:0;font-weight:600;letter-spacing:-.012em}@media(max-width:760px){.aboutPage .pageOpening{padding:46px 0;min-height:160px}.aboutPage .pageOpening:before{background-position:right -50px center;background-size:260px;opacity:.05}.aboutPage .pageOpening h1{font-size:2rem}}.aboutPage .pageOpening h1{text-transform:uppercase;letter-spacing:.035em}.aboutReputation{background:var(--green);border-left:0;padding:24px 28px}.aboutReputation .label{color:#c9d7c5}.aboutReputation p{color:var(--paper)}.aboutReputation>span:last-child{color:#e0e7dc}@media(max-width:760px){.aboutPage .pageOpening h1{font-size:1.9rem}.aboutReputation{padding:22px 24px}}.commercialPage{background:#f5f7f1}.commercialPage .commercialOpening{background:#e7ede1;padding:40px 0 34px}.commercialPage .commercialOpeningGrid{grid-template-columns:1.25fr 1fr;gap:80px;align-items:center}.commercialPage .commercialIntro h1{font-size:clamp(2rem,3.2vw,2.55rem);line-height:1.23;margin-bottom:24px}.commercialPage .commercialIntro>p{font-size:1rem;max-width:510px;line-height:1.85;margin-bottom:24px}.commercialPage .commercialPhotoStage{height:390px;background:#dce4d6}.commercialPage .commercialWork{background:#fff;padding:42px 0 46px}.commercialPage .commercialWorkGrid{grid-template-columns:1fr 1.35fr;gap:90px}.commercialApproach h2{font-size:1.85rem;line-height:1.25}.commercialApproach p{font-size:.9rem;color:var(--muted);line-height:1.85;max-width:380px}.commercialPage .commercialScopeLinks>a{padding:18px 0}.commercialPage .commercialScopeLinks>a:first-child{border-top:1px solid var(--line)}@media(max-width:960px){.commercialPage .commercialOpeningGrid{gap:40px}.commercialPage .commercialWorkGrid{gap:45px}}@media(max-width:760px){.commercialPage .commercialOpening{padding:30px 0}.commercialPage .commercialOpeningGrid,.commercialPage .commercialWorkGrid{grid-template-columns:1fr;gap:28px}.commercialPage .commercialIntro h1{font-size:2rem}.commercialPage .commercialIntro>p{font-size:.95rem}.commercialPage .commercialPhotoStage{height:300px}.commercialPage .commercialWork{padding:30px 0}.commercialApproach h2{font-size:1.65rem}.commercialApproach p{max-width:100%}.commercialPage .commercialScopeLinks>a{padding:16px 0}}.capabilitiesPage{background:#f5f7f1}.capabilitiesPage .pageOpening{background:#e7ede1}.capabilitiesPage .pageOpening h1{color:var(--green)}.capabilitiesPage .capabilitiesContact{background:var(--green);padding:28px;align-self:start;color:var(--paper)}.capabilitiesPage .capabilitiesContact .label{color:#c9d7c5}.capabilitiesPage .capabilitiesContact>p{color:#e0e7dc;max-width:none}.capabilitiesContact h2{font-size:1.65rem}.capabilitiesContact .textLink{color:var(--paper)}.capabilitiesPage .serviceList dt{font-family:var(--head);font-size:1.3rem;font-weight:600;color:var(--green)}.capabilitiesPage .serviceList>div{padding:22px 0}.capabilitiesPage .serviceList>div:first-child{padding-top:0}.capabilitiesPage .marketsHeading{font-size:1.4rem}.capabilitiesPage .sectorLinks{padding-top:12px;border-top:1px solid var(--line)}@media(max-width:760px){.capabilitiesPage .capabilitiesContact{padding:24px}.capabilitiesPage .storyLayout{gap:30px}.capabilitiesPage .serviceList>div{padding:18px 0}}.capabilitiesPage .storyLayout>.capabilitiesContact>p{color:#e0e7dc;max-width:none}:root{--banner-green:#e7ede1}.hero.compactHero,.pageOpening,.pageOpening.darkOpening{background:var(--banner-green)}.pageOpening.darkOpening{color:var(--ink);border-bottom:1px solid var(--line)}.pageOpening.darkOpening .label{color:var(--green)}.pageOpening.darkOpening .lead{color:var(--muted)}.commercialPage .integratedServiceOpening,.residentialPage .integratedServiceOpening{position:relative;isolation:isolate;overflow:hidden;background:var(--banner-green);padding:64px 0 70px;border:0;min-height:490px;display:flex;align-items:center}.integratedServiceOpening .commercialOpeningGrid,.integratedServiceOpening .residentialOpeningGrid{display:block}.integratedServiceOpening .commercialIntro,.integratedServiceOpening .residentialIntro{position:relative;z-index:2;width:48%;max-width:530px}.integratedServiceOpening .commercialIntro>p,.integratedServiceOpening .residentialIntro>p{max-width:455px;color:#465348}.integratedServiceOpening .commercialPhotoLoop,.integratedServiceOpening .residentialPhotoLoop{position:absolute;inset:0 0 0 35%;margin:0;z-index:1}.commercialPage .integratedServiceOpening .commercialPhotoStage,.integratedServiceOpening .residentialPhotoStage{position:absolute;inset:0;height:auto;background:var(--banner-green);mask-image:linear-gradient(90deg,transparent,#000 45%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 45%)}.integratedServiceOpening .commercialPhotoStage:after,.integratedServiceOpening .residentialPhotoStage:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(231,237,225,.8),transparent 28%),rgba(231,237,225,.12)}.integratedServiceOpening .commercialPhotoToolbar,.integratedServiceOpening .residentialPhotoLoop figcaption{position:absolute;bottom:16px;right:max(24px,calc((100vw - 1120px)/2));margin:0;padding:0 12px;min-height:42px;gap:16px;color:var(--ink);background:rgba(231,237,225,.85);border:0;border-radius:2px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.integratedServiceOpening button:focus-visible{outline:2px solid var(--green);outline-offset:2px}@media(max-width:760px){.commercialPage .integratedServiceOpening,.residentialPage .integratedServiceOpening{display:block;min-height:0;padding:34px 0 320px}.integratedServiceOpening .commercialIntro,.integratedServiceOpening .residentialIntro{width:100%;max-width:none}.integratedServiceOpening .commercialPhotoLoop,.integratedServiceOpening .residentialPhotoLoop{inset:auto 0 0;height:320px}.commercialPage .integratedServiceOpening .commercialPhotoStage,.integratedServiceOpening .residentialPhotoStage{mask-image:linear-gradient(180deg,transparent,#000 30%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 30%)}.integratedServiceOpening .commercialPhotoToolbar,.integratedServiceOpening .residentialPhotoLoop figcaption{right:20px;bottom:12px}}.serviceSummary{margin:0}.serviceSummary>div{padding:18px 0;border-top:1px solid var(--line)}.serviceSummary>div:last-child{border-bottom:1px solid var(--line)}.serviceSummary dt{font-family:var(--head);font-weight:600;font-size:1.12rem;line-height:1.3;margin-bottom:8px}.serviceSummary dd{margin:0;color:var(--muted);font-size:.86rem;line-height:1.7}.commercialPage .commercialWorkGrid{display:block}.commercialApproach{display:grid;grid-template-columns:1fr 1.25fr;grid-column-gap:90px;column-gap:90px;align-items:start;margin-bottom:32px}.commercialApproach .label{grid-column:1/-1}.commercialApproach h2{grid-row:2/4;margin:0}.commercialApproach p{max-width:560px;margin-bottom:16px}.commercialApproach .textLink{justify-self:start}.commercialServiceSummary{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:30px;gap:30px}.commercialServiceSummary>div:last-child{border-bottom:0}.primaryNav{gap:24px}.brand{flex-shrink:0}@media(max-width:1000px){.menuToggle{display:inline-flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--ink);font-size:.8rem;min-height:44px;padding:0 4px}.menuToggle span{font-size:1.25rem}.siteHeader{position:relative}.primaryNav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;z-index:30;padding:12px 24px 22px;border-bottom:1px solid var(--line)}.primaryNav.isOpen{display:grid;grid-gap:0;gap:0}.primaryNav a{padding:12px 0;border-bottom:1px solid var(--line);font-size:.9rem}}@media(max-width:760px){.commercialApproach{display:block;margin-bottom:28px}.commercialApproach h2{margin-bottom:20px}.commercialServiceSummary{grid-template-columns:1fr 1fr;gap:0 24px}.serviceSummary>div{padding:16px 0}.commercialServiceSummary dt{font-size:1.05rem}.commercialServiceSummary dd{font-size:.82rem}}@media(max-width:360px){.commercialServiceSummary{grid-template-columns:1fr}}.siteHeader{z-index:10}.servicesNavigation,.siteHeader{position:relative}.servicesToggle{display:flex;align-items:center;gap:12px;padding:30px 0;font-size:.82rem;line-height:1.5;background:transparent;color:var(--ink);border:0;border-bottom:2px solid transparent;cursor:pointer}.servicesToggle:hover,.servicesToggle[aria-expanded=true],.servicesToggle[data-active=true]{border-bottom-color:var(--green)}.servicesToggle>span{font-size:.9rem}.servicesDropdown{position:absolute;top:100%;left:-20px;width:205px;padding:10px 20px 14px;background:#f4f7ef;border:1px solid var(--line);box-shadow:0 12px 24px rgba(38,49,46,.08);z-index:35}.primaryNav .servicesDropdown a{display:block;padding:12px 0;border:0;font-size:.85rem}.primaryNav .servicesDropdown a:hover,.primaryNav .servicesDropdown a[aria-current=page]{color:var(--green);text-decoration:underline;text-underline-offset:5px}@media(max-width:1000px){.servicesToggle{width:100%;justify-content:space-between;padding:12px 0;font-size:.9rem;border-bottom:1px solid var(--line)}.servicesDropdown{position:static;width:auto;padding:4px 18px 10px;background:var(--banner-green);border:0;box-shadow:none}.primaryNav .servicesDropdown a{padding:11px 0}.servicesNavigation{width:100%}}.contactPage .pageOpening{padding:46px 0}.contactPage .pageOpening .lead{max-width:650px}.contactPage .contactLayout{grid-template-columns:1.25fr .75fr;gap:80px}.contactFormSection>h2{font-size:1.65rem;margin-bottom:12px}.contactPage .inquiryForm{margin-top:0}.contactPage .inquiryFields{margin-top:20px}.inquiryDeliveryFrame{position:absolute;width:0;height:0;border:0;visibility:hidden}.contactPage .inquiryContactFields{border:0;padding-top:0;margin-bottom:0}.contactPage .inquiryGroupLabel{margin-bottom:3px}.contactPage .inquiryHelp{margin-bottom:12px}.contactPage .inquiryField input,.contactPage .inquiryField textarea{font-size:1rem;background:#fff;border-color:#bcc7b6}.contactPage .contactDirect{background:var(--green);color:#fff;border:0;padding:28px 30px}.contactPage .contactDirect>.label{color:#c9d7c5;margin-bottom:18px}.contactPage .contactDirect>a{color:#fff;text-decoration:none}.contactPage .contactDirect>a:hover{text-decoration:underline}.contactPage .contactDirect>.contactPhone{font-family:var(--head);font-size:1.65rem;line-height:1.3;margin-bottom:12px}.contactPage .contactDirect>.contactEmail{font-size:.87rem;margin-bottom:0;overflow-wrap:anywhere}.contactBidNote,.contactCoverage{border-top:1px solid #6b7e6f;margin-top:26px;padding-top:22px}.contactDirect h2{font-family:var(--body);font-size:.8rem;font-weight:600;margin-bottom:10px;letter-spacing:0}.contactDirect p{font-size:.83rem;line-height:1.8;color:#e0e7dc;margin:0}.inquiryFallback{margin:10px 0 0;font-size:.82rem;line-height:1.8}@media(max-width:960px){.contactPage .contactLayout{gap:40px}.contactPage .contactDirect{padding:26px 24px}}@media(max-width:760px){.contactPage .pageOpening{padding:34px 0}.contactPage .contactLayout{grid-template-columns:1fr;gap:30px}.contactPage .contactDirect{grid-row:1;padding:24px;border:0}.contactPage .contactDirect>.contactEmail{font-size:.9rem}.contactBidNote,.contactCoverage{margin-top:20px;padding-top:18px}.contactPage .contactDirect>.contactPhone{font-size:1.55rem}}.experiencePage .pageOpening{padding:46px 0}.experiencePage .recordHeading{margin-bottom:18px}.experiencePage .companyHistoryNote{margin:0 0 24px;max-width:800px;font-size:.8rem}.experiencePage .projectRecord{grid-template-columns:.65fr 1.35fr;gap:65px;padding:24px 0}.experiencePage .projectRecord h3{font-size:1.3rem;margin-bottom:12px;color:var(--green)}.experiencePage .projectRecord .contractReference{font-size:.72rem;margin-top:12px;color:#69746b}.fieldExperienceRecords{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 60px;gap:0 60px}.fieldExperienceRecords>article{padding:24px 0;border-top:1px solid #ccd5c5}.fieldProjectLocation{display:block;font-size:.73rem;color:var(--muted);margin-bottom:10px}.fieldExperienceRecords h3{font-size:1.2rem;margin-bottom:10px}.fieldExperienceRecords p{font-size:.87rem;line-height:1.8;color:var(--muted);margin:0}@media(max-width:760px){.experiencePage .pageOpening{padding:34px 0}.experiencePage .projectRecord{grid-template-columns:1fr;gap:14px;padding:22px 0}.fieldExperienceRecords{grid-template-columns:1fr}.fieldExperienceRecords>article{padding:22px 0}.experiencePage .recordHeading p{margin-top:10px}}.experiencePage #representative-projects .recordHeading{align-items:start;gap:60px}.experiencePage #representative-projects .recordHeading h2{font-size:1.7rem;max-width:520px}.experiencePage #representative-projects .recordHeading p{max-width:450px;font-size:.83rem}@media(max-width:760px){.experiencePage #representative-projects .recordHeading h2{font-size:1.55rem}}.localProjectSection{padding:34px 0}.localProjectHeading{margin-bottom:16px}.localProjectHeading h2{font-size:1.35rem;margin:0;letter-spacing:-.02em}.localProjectRecord{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);grid-gap:48px;gap:48px;padding:18px 0;border-top:1px solid var(--line)}.localProjectRecord:last-child{border-bottom:1px solid var(--line)}.localProjectIdentity h3{font-size:.97rem;line-height:1.45;margin:0 0 7px;color:var(--green);letter-spacing:-.01em}.localProjectIdentity span{font-size:.73rem;color:var(--muted)}.localProjectRecord>p{font-size:.84rem;line-height:1.75;margin:0;color:var(--muted)}@media(max-width:760px){.localProjectSection{padding:28px 0}.localProjectRecord{grid-template-columns:1fr;gap:10px;padding:16px 0}.localProjectHeading h2{font-size:1.25rem}}:is(.aboutPage,.experiencePage,.contactPage) .pageTitleBanner{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(110deg,#e5eae0,#eff1ea 58%,#d8e0d0);color:var(--ink);padding:66px 0;min-height:190px;display:flex;align-items:center;border-bottom:1px solid var(--line)}:is(.aboutPage,.experiencePage,.contactPage) .pageTitleBanner:before{content:"";position:absolute;z-index:-1;inset:0;background:url(/cal-vet-mark.png) no-repeat 78%;background-size:380px;opacity:.055;pointer-events:none}:is(.aboutPage,.experiencePage,.contactPage) .pageTitleBanner:after{display:none}:is(.aboutPage,.experiencePage,.contactPage) .pageTitleBanner .container{position:relative;z-index:1}:is(.aboutPage,.experiencePage,.contactPage) .pageTitleBanner h1{font-family:var(--head);font-size:clamp(2rem,3.6vw,2.8rem);line-height:1.2;margin:0;font-weight:600;text-transform:uppercase;letter-spacing:.035em}.contactFormIntro{font-size:.95rem;line-height:1.8;color:var(--muted);max-width:650px;margin-bottom:24px}@media(max-width:760px){:is(.aboutPage,.experiencePage,.contactPage) .pageTitleBanner{padding:46px 0;min-height:160px}:is(.aboutPage,.experiencePage,.contactPage) .pageTitleBanner:before{background-position:right -50px center;background-size:260px;opacity:.05}:is(.aboutPage,.experiencePage,.contactPage) .pageTitleBanner h1{font-size:1.9rem}}.homePhotoSlide:first-child img{object-fit:contain;transform-origin:right bottom}.homePhotoLoop{z-index:0}.photoOpeningContent{position:relative;z-index:1}.photoWorkNav{z-index:2}.homePhotoSlide:first-child img{left:auto!important;width:auto!important;max-width:100%;filter:saturate(.65) contrast(.8) brightness(1.04) blur(.6px);opacity:.82;mask-image:linear-gradient(90deg,transparent,#000 28%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 28%)}.homePhotoBar.isConcept{background:rgba(20,34,28,.7);padding:3px 10px;border-radius:3px}@media(max-width:760px){.homePhotoSlide:first-child img{mask-image:none;-webkit-mask-image:none}}