:root{--ink:#193d34;--ink-dark:#14382f;--muted:#626d63;--paper:#f7f8f2;--white:#fff;--line:#dde2d7;--lime:#d6eeab;--soft:#edf0e6;--max:1240px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:105px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit}
svg{display:block;max-width:100%}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #688d40;outline-offset:5px}
::selection{background:var(--lime);color:var(--ink)}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:500}
h2{font-size:clamp(32px,3.6vw,48px);line-height:1.1;letter-spacing:-1.8px}
h3{font-size:21px;line-height:1.3;letter-spacing:-.45px}
.container{width:min(var(--max),calc(100% - 96px));margin-inline:auto}
.eyebrow{font-size:11px;font-weight:600;letter-spacing:1.7px;line-height:1.5}
.skip-link{position:fixed;left:16px;top:-80px;z-index:100;padding:12px 20px;background:var(--ink);color:white}
.skip-link:focus{top:16px}
.site-header{position:sticky;top:0;z-index:20;background:rgba(247,248,242,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:96px;gap:24px}
.brand{display:flex;align-items:center;gap:11px;font-size:16px;line-height:1.1;letter-spacing:-.35px;font-weight:600}
.brand-mark{flex-shrink:0}
.brand-city{display:block;font-size:20px;margin-top:3px;font-weight:500;letter-spacing:-.7px}
.brand-dot{color:#7f9c5a}
.main-nav{display:flex;align-items:center;gap:32px;font-size:13px}
.main-nav a:not(.nav-contact):hover{color:#617e3f}
.nav-contact{padding:11px 20px;border:1px solid #aebdab;border-radius:4px;display:flex;align-items:center;gap:28px;transition:background .18s}
.nav-contact:hover{background:var(--lime)}
.menu-toggle{display:none}
.hero{padding-top:52px}
.hero-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:46px;align-items:center}
.hero-copy{padding-block:18px 20px}
.hero-copy .eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:32px}
.location-dot{width:7px;height:7px;background:#7e9861;border-radius:50%;box-shadow:0 0 0 4px #e8eedf}
h1{font-size:clamp(52px,5.65vw,79px);line-height:1.025;letter-spacing:-4.1px;font-weight:500}
h1 span{color:#688341}
.hero-subtitle{font-size:19px;line-height:1.4;margin-top:30px;letter-spacing:-.3px}
.hero-description{font-size:16px;color:var(--muted);max-width:450px;line-height:1.75;margin-top:13px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:19px 24px;margin-top:31px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:51px;padding:13px 20px;border-radius:4px;font-size:13px;font-weight:500;transition:background .2s,transform .2s;border:1px solid transparent}
.button:hover{transform:translateY(-2px)}
.button-dark{background:var(--ink);color:var(--white)}
.button-dark:hover{background:#2b5144}
.button span,.text-link span{font-size:19px;font-weight:400;line-height:1}
.text-link{display:inline-flex;align-items:center;gap:12px;font-size:13px;border-bottom:1px solid #a5b09d;padding-block:6px}
.text-link:hover{border-color:var(--ink)}
.hero-note{margin-top:27px;font-size:11px;color:#626d63}
.hero-art{width:100%;max-width:560px;justify-self:end}
.continuity-art{width:100%;height:auto}
.hero-bottom{display:flex;align-items:center;gap:24px;justify-content:space-between;padding-block:31px 28px;margin-top:36px;font-size:11px;color:#6b7567;border-top:1px solid var(--line)}
.hero-bottom a{display:grid;place-items:center;border:1px solid #bdc7b6;border-radius:50%;width:31px;height:31px;font-size:19px;color:var(--ink)}
.hero-bottom span:nth-child(2){margin-left:auto;margin-right:30px}
.section{padding-block:104px}
.approach{background:var(--white);border-top:1px solid var(--line)}
.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:52px}
.section-label{padding-top:9px}
.section-intro{max-width:535px;color:var(--muted);margin-top:23px;font-size:16px;line-height:1.75}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:68px}
.principles article{border-top:1px solid var(--line);padding-top:26px}
.principle-icon{display:inline-grid;place-items:center;width:34px;height:34px;background:var(--soft);border-radius:50%;font-size:23px;margin-bottom:24px}
.principles p{font-size:14px;line-height:1.75;color:var(--muted);margin-top:13px;max-width:330px}
.services{background:var(--paper)}
.services-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:45px}
.services-heading .eyebrow{margin-bottom:21px}
.services-heading>p{max-width:340px;font-size:15px;color:var(--muted);line-height:1.75;padding-bottom:4px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.service-card{background:#fff;border:1px solid var(--line);border-radius:5px;padding:29px 28px 26px;display:flex;flex-direction:column;transition:border-color .2s}
.service-card:hover{border-color:#9db189}
.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}
.card-top svg{width:31px;height:31px;fill:none;stroke:#3c624c;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.card-top>span{font-size:11px;color:#626d63;font-variant-numeric:tabular-nums}
.service-card h3{font-size:20px}
.service-card p{font-size:14px;line-height:1.7;color:var(--muted);margin-top:14px;margin-bottom:28px}
.card-caption{font-size:9px;font-weight:500;letter-spacing:1.25px;color:#6d785f;margin-top:auto}
.scope-note{font-size:12px;line-height:1.7;color:#65705f;margin-top:23px;display:flex;align-items:baseline;gap:10px;max-width:980px}
.scope-note>span{font-size:16px;flex-shrink:0}
.business-section{background:var(--ink-dark);color:#fff;padding-block:89px}
.business-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px}
.light-label{color:#c0d1ab;margin-bottom:24px}
.business-intro{color:#c6d2c7;line-height:1.8;font-size:15px;max-width:380px;margin-top:24px;margin-bottom:24px}
.light-link{color:var(--lime);border-bottom-color:#638066}
.light-link:hover{border-color:var(--lime)}
.steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;justify-content:center}
.steps li{display:flex;gap:23px;padding-block:27px;border-top:1px solid #3c5b4d}
.steps li:last-child{padding-bottom:0}
.step-number{flex-shrink:0;color:#c8e1a1;font-size:12px;padding-top:3px;font-variant-numeric:tabular-nums}
.steps h3{font-size:20px}
.steps p{font-size:14px;color:#c6d2c7;margin-top:9px;line-height:1.75}









.button-outline{border:1px solid #a4b29d;margin-top:25px}
.button-outline:hover{background:var(--soft)}
.contact-section{background:var(--lime);padding-block:83px}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}
.contact-section .eyebrow{margin-bottom:25px}
.contact-section h2{font-size:clamp(33px,3.3vw,44px)}
.contact-section h2+p{font-size:14px;line-height:1.8;color:#4a603f;margin-top:24px}
.contact-method{display:block;border-bottom:1px solid #a7bf85;padding-block:23px}
.contact-method:first-child{padding-top:0}
.contact-label{display:block;font-size:9px;letter-spacing:1.6px;margin-bottom:10px;color:#4c613e}
.contact-value{font-size:25px;letter-spacing:-.75px;line-height:1.5;display:block;position:relative;padding-right:30px;overflow-wrap:anywhere}
.email-method .contact-value{font-size:clamp(17px,1.65vw,23px);letter-spacing:-.5px}
.contact-arrow{position:absolute;right:0;top:0;font-size:25px;transition:transform .2s}
.contact-method:hover .contact-arrow{transform:translate(2px,-2px)}
.contact-method:hover .contact-value{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.contact-note{font-size:10px;color:#4f6441;line-height:1.8;margin-top:20px}
.site-footer{background:var(--paper);padding-block:44px 25px}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:34px}
.footer-brand{font-size:17px;font-weight:600;letter-spacing:-.5px}
.footer-brand span{color:#799052}
.footer-top p{font-size:12px;color:#6a7364}
.back-top{font-size:11px;display:flex;align-items:center;gap:15px}
.footer-bottom{padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:10px;color:#6a7364;gap:20px}
.legal-links{display:flex;gap:24px}
.legal-links a:hover,.back-top:hover{text-decoration:underline;text-underline-offset:4px}
.legal-area{margin-top:29px}
.draft-label{font-size:10px;line-height:1.6;color:#775c32;margin-bottom:15px}
.legal-area details{border-top:1px solid var(--line);padding-block:12px;color:#66715e}
.legal-area summary{font-size:11px;cursor:pointer;min-height:26px;align-content:center}
.legal-area summary>span{color:#6a7364;margin-left:15px;font-size:10px}
.legal-content{max-width:880px;padding-block:25px 20px;font-size:13px;line-height:1.8;color:#516148;overflow-wrap:anywhere}
.legal-content h2{font-size:28px;letter-spacing:-.7px;margin-bottom:20px}
.legal-content h3{font-size:17px;margin-top:24px;margin-bottom:10px}
.legal-content p{margin-block:12px}
.legal-content dl{margin-block:22px}
.legal-content dt{font-weight:bold;color:var(--ink);margin-top:14px}
.legal-content dd{margin:2px 0 0}
.legal-content a{text-decoration:underline;text-underline-offset:3px}
.legal-warning{border-left:2px solid #c5ae7f;padding-left:14px;color:#755c35}
@media(min-width:1450px){.hero-layout{gap:65px}h1{font-size:82px}.hero-actions{gap:20px}.hero{padding-top:60px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.main-nav{gap:24px}.hero-layout{gap:30px;grid-template-columns:1.05fr 1fr}h1{font-size:62px;letter-spacing:-3.4px}.hero-copy .eyebrow{margin-bottom:25px}.hero-subtitle{font-size:17px;margin-top:23px}.hero-description{font-size:14px}.hero-actions{margin-top:25px;gap:14px}.hero-note{margin-top:17px}.hero-art{align-self:center}.hero-bottom{margin-top:30px}.section{padding-block:80px}.section-heading{grid-template-columns:.85fr 2fr;gap:30px}.principles{gap:32px}.service-card{padding:25px 23px}.business-layout{gap:65px}.contact-layout{gap:42px}.footer-top p{display:none}}
@media(max-width:850px){.header-inner{min-height:83px}.main-nav{gap:19px;font-size:11px}.nav-contact{padding:10px 13px;gap:17px}.brand{font-size:14px}.brand-city{font-size:18px}.brand-mark{width:31px}.hero-layout{gap:24px;grid-template-columns:1.05fr 1fr}h1{font-size:49px;letter-spacing:-2.8px}.hero-subtitle{font-size:16px}.hero-description{font-size:13px}.hero-actions{gap:10px}.button{font-size:12px;padding-inline:17px;min-height:48px}.hero-note{font-size:10px}.hero-bottom{font-size:10px}.hero-bottom span:nth-child(2){margin-right:0}.service-grid{grid-template-columns:repeat(2,1fr)}.section-heading{grid-template-columns:1fr;gap:26px}.principles{gap:26px;margin-top:48px}.principles h3{font-size:19px}.services-heading>p{max-width:260px;font-size:14px}.business-layout{gap:40px}.contact-layout{grid-template-columns:1fr;gap:40px}.contact-methods{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}.contact-method:first-child,.contact-method{padding:0 0 22px}.email-method .contact-value{font-size:19px}.contact-note{grid-column:1/-1;margin-top:-7px}.contact-section{padding-block:65px}.contact-section h2{font-size:43px}.contact-section h2+p br{display:none}}
@media(max-width:650px){html{scroll-padding-top:86px}.container{width:calc(100% - 40px)}.header-inner{min-height:77px;position:relative;flex-wrap:wrap;gap:0}.brand{font-size:13px;gap:9px}.brand-city{font-size:17px}.brand-mark{width:29px;height:34px}.main-nav{width:100%;padding-block:12px 18px;gap:12px 18px;flex-wrap:wrap;justify-content:space-between}.main-nav .nav-contact{padding:8px 10px}.js .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;padding:10px;background:none;border:1px solid #bbc8b1;border-radius:4px;color:var(--ink)}.menu-toggle>span{display:block;width:22px;height:1.5px;background:currentColor;transition:transform .15s}.menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-toggle[aria-expanded=true]>span:last-child{transform:translateY(-3.75px) rotate(-45deg)}.js .main-nav{display:none;position:absolute;left:-20px;right:-20px;top:77px;width:auto;background:var(--paper);border-bottom:1px solid var(--line);padding:15px 20px 22px;box-shadow:0 10px 12px #193d3408}.js .main-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.main-nav a{font-size:14px;min-height:46px;align-content:center}.main-nav .nav-contact{margin-top:8px}.hero{padding-top:35px}.hero-layout{grid-template-columns:1fr;gap:25px}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:10px;margin-bottom:24px}h1{font-size:clamp(43px,11.6vw,67px);letter-spacing:-2.7px;line-height:1.05}.hero-subtitle{font-size:17px;margin-top:24px}.hero-description{font-size:14px;max-width:440px;margin-top:12px;line-height:1.75}.hero-actions{margin-top:25px;gap:13px 22px}.button{font-size:12px;min-height:49px}.text-link{font-size:12px;min-height:44px}.hero-note{margin-top:19px;font-size:10px}.hero-art{max-width:430px;justify-self:center}.hero-bottom{margin-top:27px;padding-block:21px;gap:15px}.hero-bottom span:first-child{max-width:240px}.hero-bottom span:nth-child(2){display:none}.hero-bottom a{flex-shrink:0}.section{padding-block:61px}h2{font-size:35px;letter-spacing:-1.4px}.eyebrow{font-size:10px;letter-spacing:1.5px}.section-heading{gap:22px}.section-label{padding-top:0}.section-intro{font-size:14px;margin-top:20px}.principles{grid-template-columns:1fr;gap:26px;margin-top:35px}.principles article{padding-top:22px;display:grid;grid-template-columns:34px 1fr;gap:0 16px}.principle-icon{grid-row:1/3;margin-bottom:0}.principles h3{font-size:20px;padding-top:3px}.principles p{grid-column:2;max-width:none;margin-top:9px;font-size:14px}.services-heading{display:block;margin-bottom:30px}.services-heading>p{max-width:430px;margin-top:21px}.service-grid{gap:12px}.service-card{padding:21px 18px}.card-top{margin-bottom:25px}.service-card h3{font-size:18px}.service-card p{font-size:13px;margin-bottom:23px;line-height:1.7}.card-caption{font-size:8px;letter-spacing:.9px;line-height:1.6}.scope-note{font-size:11px;margin-top:19px;gap:7px}.business-section{padding-block:59px}.business-layout{grid-template-columns:1fr;gap:35px}.business-intro{max-width:440px;font-size:14px;margin-top:20px;margin-bottom:19px}.steps li{padding-block:24px}.steps h3{font-size:20px}.steps p{font-size:14px}.contact-section{padding-block:56px}.contact-section h2{font-size:36px}.contact-layout{gap:35px}.contact-methods{display:block}.contact-method{padding-block:23px}.contact-note{margin-top:20px;font-size:10px}.email-method .contact-value{font-size:clamp(17px,4.65vw,23px);letter-spacing:-.4px}.contact-value{font-size:27px}.site-footer{padding-block:32px 18px}.footer-top{gap:20px;align-items:flex-start;padding-bottom:27px}.footer-brand{font-size:15px;max-width:170px;line-height:1.4}.back-top{font-size:10px;gap:9px;white-space:nowrap;padding-top:4px}.footer-bottom{font-size:9px;flex-wrap:wrap;gap:17px}.legal-area{margin-top:24px}.draft-label{font-size:9px}.legal-area summary{font-size:10px;min-height:32px}.legal-area summary>span{font-size:9px}.legal-content{font-size:12px}}
@media(max-width:480px){.container{width:calc(100% - 36px)}.service-grid{grid-template-columns:1fr}.service-card{padding:25px}.card-top{margin-bottom:20px}.service-card h3{font-size:20px}.service-card p{font-size:14px}.card-caption{font-size:9px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-actions .button{width:100%}.contact-section h2{font-size:32px}.footer-brand{max-width:158px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.site-header{position:static}.menu-toggle,.hero-art,.hero-bottom a,.back-top,.draft-label{display:none!important}.container{width:100%}.section,.business-section,.contact-section{padding-block:25px}.business-section,.contact-section{background:white;color:#193d34}.business-intro,.steps p,.light-link{color:#193d34}.service-card{break-inside:avoid}.hero-layout{display:block}a{text-decoration:underline}.legal-content{max-width:none}}

/* Customer concerns, service explanations and questions. */
h1{font-size:clamp(48px,4.9vw,70px);line-height:1.04;letter-spacing:-3.2px}
.hero-subtitle{font-size:20px;max-width:470px}
.hero-description{max-width:490px}
.hero-actions{gap:15px 22px}
.main-nav{gap:23px}
.pain-points{gap:28px}
.pain-points article{display:flex;flex-direction:column;padding-top:24px}
.pain-points h3{font-size:23px;line-height:1.22}
.pain-points>article>p{margin-top:17px;margin-bottom:23px;max-width:none;flex:1}
.pain-answer{background:var(--paper);border-left:2px solid #b4cc8a;padding:18px 18px 20px;margin-top:auto}
.pain-answer>span,.service-solution>span{display:block;font-size:9px;letter-spacing:1.3px;color:#546747;font-weight:600}
.pain-answer p{margin-top:9px;font-size:13px;max-width:none}
.service-card .service-problem{font-size:16px;line-height:1.5;color:var(--ink);margin-top:16px;margin-bottom:23px}
.service-solution{border-top:1px solid var(--line);padding-top:18px;margin-top:auto}
.service-solution p{margin-top:9px;margin-bottom:25px}
.service-card .card-caption{margin-top:0;font-size:9px;line-height:1.7;color:#596b4c}
.faq-section{background:#fff}
.faq-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:95px;align-items:start}
.faq-intro .eyebrow{margin-bottom:24px}
.faq-intro>p:not(.eyebrow){font-size:15px;line-height:1.8;color:var(--muted);margin-top:23px;max-width:350px}
.faq-intro .text-link{margin-top:22px}
.faq-list details{border-top:1px solid var(--line)}
.faq-list details:last-child{border-bottom:1px solid var(--line)}
.faq-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:24px}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:'+';font-size:24px;color:#516148;flex:0 0 20px;text-align:center}
.faq-list details[open] summary::after{content:'−'}
.faq-list h3{font-size:17px;line-height:1.5;letter-spacing:-.2px}
.faq-answer{padding:0 32px 25px 0;color:var(--muted);font-size:14px;line-height:1.8}
.faq-answer a{display:inline-block;margin-top:14px;color:var(--ink);text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){h1{font-size:58px;letter-spacing:-2.8px}.main-nav{gap:16px;font-size:12px}.faq-layout{gap:55px}.services-heading h2{font-size:41px}}
@media(max-width:850px){h1{font-size:44px;letter-spacing:-2.2px}.hero-subtitle{font-size:17px}.main-nav{gap:13px;font-size:11px}.main-nav .nav-contact{gap:10px;padding-inline:11px}.brand{font-size:13px}.brand-city{font-size:17px}.brand-mark{width:29px}.pain-points{grid-template-columns:1fr;gap:28px}.pain-points article{display:grid;grid-template-columns:34px 1fr;gap:0 18px}.pain-points .principle-icon{grid-column:1;grid-row:1/4}.pain-points h3{grid-column:2;font-size:23px}.pain-points h3 br{display:none}.pain-points>article>p{grid-column:2;max-width:620px;margin-top:12px;margin-bottom:18px}.pain-answer{grid-column:2}.faq-layout{grid-template-columns:1fr;gap:36px}.faq-intro>p:not(.eyebrow){max-width:550px}.services-heading{align-items:start}.services-heading h2{font-size:35px}.services-heading>p{max-width:220px}}
@media(max-width:700px) and (min-width:651px){.main-nav{gap:10px;font-size:10px}.nav-contact{gap:8px!important;padding-inline:9px!important}.header-inner{gap:18px}}
@media(max-width:650px){h1{font-size:clamp(40px,10.5vw,61px);letter-spacing:-2.2px}.hero-copy .eyebrow{margin-bottom:22px}.hero-subtitle{font-size:18px;line-height:1.5}.hero-description{font-size:15px;line-height:1.75}.hero-note{font-size:11px;line-height:1.7;max-width:340px}.hero-actions{gap:9px 20px}.hero-actions .button{font-size:13px}.hero-art{max-width:360px}.pain-points h3{font-size:21px}.pain-points{gap:25px;margin-top:36px}.pain-answer{padding:17px}.pain-answer p{font-size:14px}.services-heading h2{font-size:35px}.services-heading>p{max-width:100%}.service-card .service-problem{font-size:16px}.faq-list summary{gap:18px;padding-block:22px}.faq-list h3{font-size:16px}.faq-answer{padding-right:20px}.faq-intro>p:not(.eyebrow){font-size:14px}.faq-intro .text-link{margin-top:14px}.contact-section h2{font-size:36px}.contact-section h2+p{font-size:15px}.footer-top p{display:none}}
@media(max-width:480px){h1{font-size:clamp(37px,10.8vw,49px);letter-spacing:-2px}.pain-points article{grid-template-columns:1fr}.pain-points .principle-icon{grid-column:1;grid-row:auto;margin-bottom:18px}.pain-points h3,.pain-points>article>p,.pain-answer{grid-column:1}.service-solution p{font-size:14px}.contact-section h2{font-size:33px}}
