@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600&family=Libre+Caslon+Display&display=swap');
:root{--cream:#f8f5ef;--paper:#fcfaf6;--navy:#092231;--olive:#52634b;--sage:#e5e5da;--text:#313734;--line:#b9beb0;--serif:'Libre Caslon Display',Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:var(--cream);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit}button,input,textarea{font:inherit}a,button,input,textarea,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #9f7836;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--navy);font-family:var(--serif);font-weight:400;line-height:1.04}h2{font-size:clamp(36px,3.8vw,58px);letter-spacing:-1.4px}h3{font-size:32px;letter-spacing:-.5px}img{display:block;width:100%;height:100%;object-fit:cover}svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.icon-library{position:absolute;width:0;height:0;overflow:hidden}.icon{width:44px;height:44px;color:var(--olive)}.arrow{width:23px;height:23px;flex-shrink:0;transition:transform .2s}.eyebrow{color:var(--olive);font-size:12px;font-weight:500;letter-spacing:2.7px;line-height:1.5;text-transform:uppercase;margin-bottom:18px}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:49px;padding:13px 30px;border-radius:50px;text-decoration:none;text-transform:uppercase;letter-spacing:1.6px;font-size:11px;font-weight:500;line-height:1.4;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover .arrow,.text-link:hover .arrow{transform:translateX(4px)}.button:hover{transform:translateY(-2px)}.button-navy{background:var(--navy);color:white}.button-navy:hover{background:#1d3b49}.button-olive{background:var(--olive);color:white}.button-olive:hover{background:#3f5039}.button-outline{border-color:var(--olive);color:var(--navy);background:transparent}.button-outline:hover{background:#f8f5ef}.skip-link{position:fixed;top:-80px;left:16px;z-index:20;background:var(--navy);color:white;padding:10px 20px}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:10;background:rgba(252,250,246,.97);border-bottom:1px solid rgba(82,99,75,.08)}.header-inner{max-width:1600px;margin:auto;padding:18px 5.35%;display:flex;align-items:center;justify-content:space-between;gap:45px}.brand{text-decoration:none;display:block;width:374px;flex-shrink:0;line-height:1}.primary-nav{display:flex;align-items:center;gap:27px}.primary-nav>a:not(.button){font-size:10px;letter-spacing:.8px;text-transform:uppercase;text-decoration:none;position:relative;white-space:nowrap;padding:12px 0}.primary-nav>a:not(.button):after{content:'';position:absolute;left:0;right:100%;bottom:5px;height:1px;background:var(--olive);transition:right .2s}.primary-nav>a[aria-current]:after,.primary-nav>a:hover:after{right:0}.header-cta{min-width:145px;margin-left:17px;min-height:40px;font-size:9px}.menu-toggle{display:none}.hero{position:relative;min-height:450px;overflow:hidden;isolation:isolate}.hero-image{position:absolute;z-index:-2;inset:0 0 0 28%;background:url('/assets/main-street-aerial.jpg') center 55%/cover}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--cream) 0%,rgba(248,245,239,.99) 29%,rgba(248,245,239,.93) 40%,rgba(248,245,239,.45) 54%,rgba(248,245,239,0) 71%)}.hero-content{padding:45px 5.35% 56px;max-width:760px}.hero h1{font-size:clamp(46px,4.85vw,73px);letter-spacing:-1.8px;margin-bottom:19px}.hero-description{max-width:510px;font-size:18px;line-height:1.5;margin-bottom:25px}.hero-content .button{min-width:190px}.hero-benefits{position:absolute;right:7.4%;bottom:22px;display:grid;grid-template-columns:repeat(3,1fr);width:43%;padding:19px 0;background:rgba(250,247,239,.91);backdrop-filter:blur(7px);border-radius:3px;box-shadow:0 5px 30px #18241b0d}.hero-benefits>div,.about-benefits>a{text-align:center;display:flex;align-items:center;flex-direction:column;position:relative;gap:7px}.hero-benefits>div+div:before,.about-benefits>a+a:before{content:'';width:1px;height:52px;position:absolute;left:0;bottom:10px;background:#9da492}.hero-benefits span,.about-benefits span{font-size:12px;letter-spacing:2.4px;text-transform:uppercase;line-height:1.5;color:#202c2d}.about{display:grid;grid-template-columns:44% 56%;border-top:5px solid var(--paper);border-bottom:5px solid var(--paper);background:var(--paper)}.about-photo{min-height:350px}.about-photo img{object-position:center 60%}.about-content{padding:46px 9.5% 26px}.about-content h2{font-size:clamp(34px,3.45vw,53px);margin-bottom:16px;white-space:nowrap}.about-content>p:not(.eyebrow){font-size:16px;line-height:1.6;max-width:650px}.about-benefits{border-top:1px solid var(--line);margin-top:20px;padding-top:17px;display:grid;grid-template-columns:1fr 1.25fr 1fr}.about-benefits a{text-decoration:none}.about-benefits a:hover u{text-decoration-thickness:2px}.about-benefits u{text-underline-offset:5px;text-decoration-thickness:1px}.section-pad{padding:52px 5.35%}.industries{background:linear-gradient(115deg,#e8e7df,#e0e2d5);padding-top:32px;padding-bottom:38px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:30px}.section-heading>p{max-width:395px;font-size:15px;line-height:1.6;padding-bottom:5px}.industry-heading{gap:25px;margin-bottom:20px}.industry-heading h2{font-size:clamp(34px,3.8vw,57px);white-space:nowrap}.industry-heading .eyebrow{margin-bottom:12px}.industry-heading>p{max-width:315px;font-size:11px}.industry-heading .button{flex-shrink:0;padding:12px 21px;min-height:41px;font-size:9px;gap:16px;align-self:center}.industry-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.industry-card{position:relative;isolation:isolate;overflow:hidden;border-radius:3px;height:157px;text-decoration:none;color:white}.industry-card:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#000b,transparent 85%)}.industry-card img{position:absolute;inset:0;z-index:-2;transition:transform .45s}.industry-card:hover img{transform:scale(1.06)}.industry-card>span{position:absolute;bottom:17px;left:18px;font-family:var(--serif);font-size:23px;line-height:1.02}.industry-card i{display:block;width:42px;height:1px;background:#d1d4c8;margin-top:10px;transition:width .2s}.industry-card:hover i{width:62px}.industry-card>.arrow{position:absolute;bottom:16px;right:13px;width:17px;opacity:0}.industry-card:hover>.arrow,.industry-card:focus-visible>.arrow{opacity:1}.services{padding-top:80px;padding-bottom:75px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.service-grid article{border-top:1px solid var(--line);padding-top:26px;position:relative}.service-grid h3{margin:24px 0 15px}.service-grid p{font-size:14px;line-height:1.8;max-width:365px;margin-bottom:25px}.service-number{position:absolute;right:0;top:30px;font-size:11px;color:var(--olive);letter-spacing:2px}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:12px;font-weight:500;text-decoration:none;border-bottom:1px solid var(--olive);padding-bottom:6px;color:var(--olive)}.industry-details{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;background:#eeeee5;padding-top:65px;padding-bottom:65px}.industry-details h2{margin-bottom:20px}.industry-details>div>p:not(.eyebrow){font-size:15px;margin-bottom:24px}.industry-accordions details{border-bottom:1px solid #b5bdad;scroll-margin-top:130px}.industry-accordions details:first-child{border-top:1px solid #b5bdad}.industry-accordions summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;cursor:pointer;font-family:var(--serif);font-size:27px;line-height:1.2;color:var(--navy)}.industry-accordions summary::-webkit-details-marker{display:none}.industry-accordions summary span{font-family:var(--sans);font-size:23px;font-weight:400;transition:transform .2s}.industry-accordions details[open] summary span{transform:rotate(45deg)}.industry-accordions details>div{padding:0 24px 24px 0;font-size:14px;line-height:1.8}.industry-accordions details a{display:inline-block;color:var(--olive);margin-top:14px;text-underline-offset:5px}.process{padding-top:70px;padding-bottom:75px}.process>h2{max-width:800px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:42px}.process-grid article{padding-top:18px;border-top:1px solid var(--line)}.process-grid article>span{text-transform:uppercase;letter-spacing:1.6px;font-size:10px;color:var(--olive)}.process-grid h3{font-size:29px;margin:20px 0 14px}.process-grid p{font-size:14px;line-height:1.8}.contact{background:#e3e5d9;display:grid;grid-template-columns:1fr 1fr;gap:75px;padding-top:70px;padding-bottom:65px}.contact h2{font-size:clamp(40px,3.8vw,58px);margin-bottom:24px}.contact-intro>p:not(.eyebrow){max-width:415px;font-size:15px;line-height:1.8}.contact-email{display:inline-flex;align-items:center;gap:25px;margin-top:30px;color:var(--navy);text-underline-offset:7px}.contact-form{max-width:600px}.contact-form label{display:block;font-size:11px;font-weight:500;letter-spacing:.3px;margin-bottom:18px}.optional{font-weight:400;color:#5c6755}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:7px;background:#fcfaf69c;border:1px solid #aeb5a6;border-radius:2px;color:var(--navy);padding:12px 14px;font-size:13px;resize:vertical}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#687061;opacity:1}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form .button{min-height:46px}.form-note{font-size:11px;color:#505d49;margin-top:12px}.form-status{font-size:13px;margin-top:12px;border-left:2px solid var(--olive);padding-left:12px}.site-footer{display:flex;align-items:center;gap:30px;justify-content:space-between;padding:30px 5.35%;font-size:10px;color:#5f6859}.footer-brand{font-family:var(--serif);text-decoration:none;color:var(--navy);font-size:27px;line-height:1}.site-footer>p{font-size:11px;letter-spacing:.5px}.back-top{text-decoration:none;color:var(--olive)}
@media(min-width:1600px){.hero{min-height:530px}.hero-content{padding-top:70px}.hero-benefits{bottom:30px;padding:25px 0}.industry-card{height:200px}.about-photo{max-height:445px}.about-content{padding-top:60px}}
@media(max-width:1190px){.brand{width:315px}.primary-nav{gap:18px}.primary-nav>a:not(.button){font-size:9px}.header-cta{min-width:115px;margin-left:3px;padding:10px 18px}.header-inner{gap:30px}.hero-content{max-width:650px}.hero-description{max-width:440px;font-size:17px}.hero-benefits{right:4%;width:43%}.about-content{padding:35px 7% 25px}.about-content h2{white-space:normal}.about-content>p:not(.eyebrow){font-size:14px}.about-benefits span{font-size:10px;letter-spacing:1.8px}.industry-heading{flex-wrap:wrap;gap:15px}.industry-heading>div{flex:1 1 55%}.industry-heading>p{max-width:35%}.industry-heading .button{margin-bottom:5px}.industry-card>span{font-size:21px;left:13px}.industry-details{gap:45px}.contact{gap:45px}}
@media(max-width:960px){html{scroll-padding-top:100px}.header-inner{padding:13px 5%}.brand{width:285px}.menu-toggle{display:flex;width:42px;height:42px;flex-direction:column;justify-content:center;gap:7px;background:transparent;border:1px solid #b6bead;border-radius:50%;padding:12px}.menu-toggle span{height:1px;width:100%;background:var(--navy);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.primary-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:15px 5% 25px;border-bottom:1px solid var(--line);box-shadow:0 14px 20px #0922310d}.primary-nav.is-open{display:flex;align-items:stretch;flex-direction:column;gap:3px}.primary-nav>a:not(.button){font-size:12px;padding:10px 0}.primary-nav>a:not(.button):after{right:100%}.header-cta{margin:10px 0 0;align-self:flex-start;min-width:155px}.hero{min-height:470px}.hero:after{background:linear-gradient(90deg,var(--cream) 0%,rgba(248,245,239,.97) 38%,rgba(248,245,239,.88) 56%,rgba(248,245,239,.2) 85%,transparent 100%)}.hero-content{padding-top:42px;max-width:610px}.hero h1{font-size:56px}.hero-description{max-width:425px}.hero-benefits{width:42%;right:3%;bottom:22px;padding:16px 0}.hero-benefits .icon{width:33px;height:33px}.hero-benefits span{font-size:9px;letter-spacing:1.8px}.hero-benefits>div+div:before{height:40px}.about{grid-template-columns:40% 60%}.about-content{padding:35px 7% 25px}.about-content h2{font-size:38px}.about-content .eyebrow{font-size:10px}.about-benefits{grid-template-columns:repeat(3,1fr)}.about-benefits span{font-size:8px;letter-spacing:1.4px}.about-benefits .icon{width:35px;height:35px}.industry-card{height:170px}.industry-card>span{font-size:19px;left:11px;bottom:13px}.industry-grid{gap:9px}.service-grid{gap:24px}.service-grid h3{font-size:28px}.service-grid p{font-size:13px}.process-grid{grid-template-columns:repeat(2,1fr);gap:30px}.contact h2{font-size:43px}.form-row{grid-template-columns:1fr;gap:0}.site-footer{flex-wrap:wrap;gap:25px}.site-footer>p{margin-right:auto}}
@media(max-width:650px){html{scroll-padding-top:96px}.brand{width:250px}.header-inner{padding:14px 6%}.hero{min-height:730px}.hero-image{inset:290px 0 0;background-position:center}.hero:after{background:linear-gradient(180deg,var(--cream) 0%,var(--cream) 35%,rgba(248,245,239,.88) 46%,rgba(248,245,239,0) 65%)}.hero-content{padding:38px 6% 0;max-width:100%}.eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:16px}.hero h1{font-size:clamp(41px,9vw,58px);letter-spacing:-1.5px;margin-bottom:18px}.hero-description{font-size:16px;line-height:1.6;max-width:440px;margin-bottom:22px}.hero-content .button{min-height:47px;min-width:175px}.hero-benefits{left:6%;right:6%;width:auto;bottom:20px;padding:17px 0}.hero-benefits .icon{width:35px;height:35px}.hero-benefits span{font-size:10px;letter-spacing:2px}.about{grid-template-columns:1fr;display:flex;flex-direction:column-reverse}.about-content{padding:38px 6% 30px}.about-content h2{font-size:40px;letter-spacing:-1.2px}.about-content>p:not(.eyebrow){font-size:15px}.about-benefits{margin-top:24px;padding-top:21px}.about-benefits .icon{width:39px;height:39px}.about-benefits span{font-size:10px;letter-spacing:1.7px}.about-photo{height:260px;min-height:0}.about-photo img{object-position:center 64%}.section-pad{padding:42px 6%}.industry-heading{display:block}.industry-heading h2{font-size:40px;white-space:normal;max-width:350px}.industry-heading>p{max-width:100%;font-size:13px;margin:17px 0}.industry-heading .button{margin-bottom:4px}.industry-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:23px}.industry-card{height:178px}.industry-card:last-child{grid-column:1/-1;height:160px}.industry-card>span{font-size:25px;left:16px;bottom:18px}.industry-card>.arrow{opacity:1}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:20px;font-size:14px;max-width:100%}h2{font-size:40px}.services{padding-top:49px;padding-bottom:50px}.service-grid{grid-template-columns:1fr;gap:30px}.service-grid h3{font-size:32px;margin-top:15px}.service-grid p{max-width:none;font-size:14px;margin-bottom:18px}.service-grid .icon{width:38px;height:38px}.industry-details{grid-template-columns:1fr;gap:30px}.industry-details h2 br{display:none}.industry-details>div>p:not(.eyebrow) br{display:none}.industry-accordions summary{font-size:25px;padding:21px 0}.industry-accordions details{scroll-margin-top:110px}.process-grid{grid-template-columns:1fr;gap:25px;margin-top:32px}.process-grid h3{margin-top:12px;font-size:30px}.process h2{max-width:390px}.contact{grid-template-columns:1fr;gap:35px}.contact h2{font-size:40px}.contact h2 br{display:none}.contact-email{font-size:16px;margin-top:20px}.form-row{grid-template-columns:1fr 1fr;gap:12px}.contact-form input,.contact-form textarea{font-size:16px}.contact-form label{font-size:11px}.form-note{font-size:11px}.site-footer{padding:30px 6%;display:grid;grid-template-columns:1fr auto;gap:23px 10px}.site-footer>p{grid-column:1/-1;grid-row:2;margin:0}.site-footer>span{grid-column:1}.back-top{grid-column:2;grid-row:3}.footer-brand{font-size:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Keep the supplied logo artwork intact; frame out its outer whitespace. */
.brand,.footer-brand{position:relative;aspect-ratio:4.65;overflow:hidden;isolation:isolate}
.brand{max-width:calc(100% - 72px)}
.brand-logo{position:absolute;left:-6.8%;top:50%;display:block;width:114%;max-width:none;height:auto;transform:translateY(-54%);mix-blend-mode:multiply}
.footer-brand{display:block;width:220px;max-width:100%;flex-shrink:0}
