:root{--ink:#092820;--green:#14763f;--bright:#25a55b;--paper:#f5f6f2;--white:#fff;--line:#d8ded8;--muted:#5e6d67}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}a{color:inherit}button,input,textarea{font:inherit}
.site-header{height:86px;padding:0 max(24px,calc((100vw - 1240px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand-mark{color:var(--green);width:43px;height:40px;display:block}.brand-mark svg{width:100%;height:100%}.brand strong{display:block;font-size:2rem;line-height:.9;letter-spacing:.02em}.brand small{display:block;color:var(--green);font-size:.72rem;text-transform:uppercase;font-weight:700;letter-spacing:.12em;margin-top:5px}nav{display:flex;align-items:center;gap:30px}nav a{text-decoration:none;font-weight:700;font-size:.92rem}.nav-call{border-left:1px solid var(--line);padding-left:30px;color:var(--green)}.menu-button{display:none;border:1px solid var(--line);background:white;padding:9px 12px;border-radius:3px}
.hero{max-width:1240px;margin:0 auto;min-height:650px;padding:92px 24px 76px;display:grid;grid-template-columns:1.3fr .7fr;gap:70px;align-items:center;position:relative}.hero:before{content:"";position:absolute;width:320px;height:320px;border:60px solid rgba(20,118,63,.05);transform:rotate(45deg);left:-230px;top:160px;pointer-events:none}.eyebrow{text-transform:uppercase;color:var(--green);font-size:.77rem;font-weight:800;letter-spacing:.18em;margin:0 0 18px}.hero h1,.section h2{font-size:clamp(2.7rem,5vw,5.1rem);line-height:.98;letter-spacing:-.055em;margin:0}.hero h1 em{font-style:normal;color:var(--green)}.intro{font-size:1.2rem;max-width:660px;color:#40534c;margin:30px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 21px;border-radius:3px;text-decoration:none;border:1px solid var(--ink);font-weight:800;cursor:pointer}.button-primary{background:var(--green);border-color:var(--green);color:white}.button-primary:hover{background:#0e6032}.button-secondary{background:transparent}.proof{list-style:none;display:flex;flex-wrap:wrap;gap:22px;margin:38px 0 0;padding:0;font-size:.88rem;font-weight:700}.proof li:before{content:"✓";color:var(--green);margin-right:8px}
.hero-panel{background:var(--ink);color:white;padding:34px;border-top:5px solid var(--bright);box-shadow:20px 20px 0 #dce5de}.panel-label{text-transform:uppercase;letter-spacing:.14em;color:#8eb9a4;font-size:.72rem;font-weight:800;margin-bottom:15px}.response-row{display:grid;grid-template-columns:40px 1fr;gap:16px;padding:24px 0;border-bottom:1px solid #2d4941}.response-row>span{color:#5bc77f;font-weight:800}.response-row strong{font-size:1.15rem}.response-row p{color:#afc1ba;margin:3px 0 0;font-size:.92rem}.hero-panel>a{display:flex;justify-content:space-between;margin-top:28px;color:white;font-weight:800;text-decoration:none}
.audience{background:white;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px max(24px,calc((100vw - 1240px)/2));display:grid;grid-template-columns:1fr 2fr;gap:30px;align-items:center}.audience>p{font-weight:800;margin:0;max-width:350px}.audience-list{display:flex;gap:24px;justify-content:flex-end;flex-wrap:wrap;color:var(--muted);font-size:.88rem}.audience-list span{white-space:nowrap}
.section{max-width:1240px;margin:0 auto;padding:110px 24px}.section-heading{display:grid;grid-template-columns:.45fr 1.2fr .7fr;gap:40px;align-items:end;margin-bottom:60px}.section-heading .eyebrow{align-self:start}.section h2{font-size:clamp(2.3rem,4vw,4rem)}.section-heading>p:last-child{color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.service-grid article{background:white;padding:30px;min-height:370px;border-right:1px solid var(--line);display:flex;flex-direction:column}.service-grid article:last-child{border-right:0}.service-grid article>span{font-size:.8rem;color:var(--green);font-weight:800}.service-grid h3{font-size:1.45rem;margin:44px 0 12px;letter-spacing:-.02em}.service-grid p{color:var(--muted);margin:0}.service-grid ul{list-style:none;padding:0;margin:auto 0 0;font-size:.88rem}.service-grid li{padding:7px 0;border-top:1px solid #e7ebe7}.service-grid .featured{background:var(--green);color:white}.service-grid .featured>span,.service-grid .featured p{color:#c7e8d3}.service-grid .featured li{border-color:#429363}
.promise{max-width:none;background:var(--ink);color:white;padding-left:max(24px,calc((100vw - 1240px)/2));padding-right:max(24px,calc((100vw - 1240px)/2));display:grid;grid-template-columns:1fr 1.15fr;gap:100px}.eyebrow.light{color:#6fce91}.promise h2{font-size:clamp(2.4rem,4vw,4rem)}.promise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#345047}.promise-grid article{background:var(--ink);padding:28px}.promise-grid b{color:#6fce91;font-size:.78rem}.promise-grid h3{font-size:1.15rem;margin:60px 0 10px}.promise-grid p{color:#abc0b8;font-size:.9rem;margin:0}
.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.about-card{height:440px;background:white;box-shadow:16px 16px 0 #dce5de;display:flex;align-items:center;overflow:hidden}.logo-crop{width:100%;height:75%;overflow:hidden;position:relative}.logo-crop img{width:100%;height:auto;position:absolute;top:-37%;left:0}.about-copy h2{margin-bottom:28px}.about-copy>p:not(.eyebrow){color:var(--muted);max-width:650px}.about-copy .legal{font-size:.85rem;margin-top:25px}
.contact{max-width:none;background:var(--green);padding-left:max(24px,calc((100vw - 1240px)/2));padding-right:max(24px,calc((100vw - 1240px)/2));color:white;display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.contact-copy h2{font-size:clamp(2.5rem,4vw,4.4rem);margin-bottom:24px}.contact-copy>p:not(.eyebrow){color:#c8e7d3;max-width:480px}.contact-copy>a{display:block;color:white;font-size:1.05rem;font-weight:800;margin-top:12px;text-decoration:none}.contact form{background:white;color:var(--ink);padding:38px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-weight:800;font-size:.88rem;margin-bottom:18px}input,textarea{width:100%;display:block;border:0;border-bottom:1px solid #aab8b0;padding:11px 0;background:transparent;border-radius:0;margin-top:5px;outline:none}input:focus,textarea:focus{border-color:var(--green);box-shadow:0 1px var(--green)}textarea{resize:vertical}.contact form .button{width:100%;margin-top:5px}.form-note{font-size:.78rem;color:var(--muted);text-align:center;margin:12px 0 0}
footer{background:#051a15;color:#a9bbb4;padding:35px max(24px,calc((100vw - 1240px)/2));display:flex;align-items:center;gap:30px;font-size:.78rem}.footer-brand{display:flex;align-items:baseline;gap:8px;color:white;margin-right:auto}.footer-brand strong{font-size:1.6rem}.footer-brand span{text-transform:uppercase;letter-spacing:.1em;font-weight:800}
@media(max-width:900px){.site-header{height:72px}.menu-button{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;background:white;padding:22px 24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}nav.open{display:flex}.nav-call{border-left:0;padding-left:0}.hero{grid-template-columns:1fr;padding-top:65px}.hero-panel{max-width:560px}.section-heading{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}.service-grid article:nth-child(2){border-right:0}.service-grid article{border-bottom:1px solid var(--line)}.promise{grid-template-columns:1fr;gap:55px}.about,.contact{grid-template-columns:1fr}.about-card{max-width:500px}.audience{grid-template-columns:1fr}.audience-list{justify-content:flex-start}}
@media(max-width:560px){.brand strong{font-size:1.65rem}.brand small{font-size:.61rem}.hero{padding:48px 20px 60px;gap:45px;min-height:auto}.hero h1{font-size:3.1rem}.intro{font-size:1.05rem}.hero-actions .button{width:100%}.proof{display:grid;gap:8px}.hero-panel{padding:25px;box-shadow:10px 10px 0 #dce5de}.audience{padding:25px 20px}.audience-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.section{padding:75px 20px}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;min-height:330px}.promise-grid{grid-template-columns:1fr}.promise-grid h3{margin-top:24px}.about{gap:50px}.about-card{height:310px}.contact{gap:50px}.contact form{padding:25px 20px}.field-row{grid-template-columns:1fr}footer{align-items:flex-start;flex-direction:column;gap:8px}.footer-brand{margin:0 0 10px}}

/* Building and grounds expansion */
.service-grid article:nth-child(4){border-right:0}
.service-grid .wide-service{grid-column:1/-1;min-height:auto;border-right:0;border-top:1px solid var(--line);display:grid;grid-template-columns:70px 1.2fr 1fr;gap:28px;align-items:start}
.service-grid .wide-service h3{margin:0 0 8px}
.service-grid .wide-service ul{margin:0;display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
.service-grid .surveys{background:#e7efe9}
.service-grid .surfaces{background:var(--ink);color:#fff}
.service-grid .surfaces>span,.service-grid .surfaces p{color:#b9d2c7}
.service-grid .surfaces li{border-color:#345047}
.coverage{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}
.coverage>div>p:not(.eyebrow){color:var(--muted);max-width:500px}
.coverage-panel{background:#fff;border:1px solid var(--line);padding:38px;box-shadow:14px 14px 0 #dce5de}
.coverage-kicker{text-transform:uppercase;letter-spacing:.15em;color:var(--green)!important;font-weight:800;font-size:.75rem;margin:0 0 20px}
.place-grid{display:grid;grid-template-columns:1fr 1fr}
.place-grid span{font-size:1.05rem;font-weight:800;padding:15px 0;border-top:1px solid var(--line)}
.place-grid span:nth-child(odd){margin-right:24px}
.coverage-note{font-size:.85rem;margin:22px 0 0!important}
@media(max-width:900px){.service-grid .wide-service{grid-template-columns:45px 1fr}.service-grid .wide-service ul{grid-column:2}.coverage{grid-template-columns:1fr}}
@media(max-width:560px){.service-grid .wide-service{display:flex;min-height:auto}.service-grid .wide-service h3{margin:20px 0 8px}.service-grid .wide-service ul{display:block;margin-top:28px}.place-grid{grid-template-columns:1fr}.place-grid span:nth-child(odd){margin-right:0}.coverage-panel{padding:26px}}
