@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
:root{--ink:#263f34;--body:#4c5c52;--cream:#faf9f5;--green:#2c4b3b;--soft:#eef0e9;--line:#dce1d7;--accent:#dee8cb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a27025;outline-offset:5px}.wrap{max-width:1280px;padding-inline:48px;margin-inline:auto}.demo-bar{background:var(--green);color:#f7f8ed;font-size:12px;text-align:center;padding:9px 20px;letter-spacing:.015em}.demo-bar span{font-size:10px;letter-spacing:.12em;font-weight:700;margin-right:16px;border-right:1px solid #809384;padding-right:16px}.site-header{height:110px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:10px;line-height:1.15}.brand svg{width:40px;height:40px;fill:none;stroke:var(--ink);stroke-width:1.5}.brand>span{font-family:Georgia,serif;font-size:27px;letter-spacing:-1px}.brand i,.footer-brand i{font-weight:400;font-size:.85em}.brand small{display:block;font-family:'DM Sans',sans-serif;font-size:9px;font-weight:500;letter-spacing:.24em;margin-top:7px}.site-header nav{display:flex;gap:30px;font-size:14px}.site-header nav a:hover,footer a:hover{text-decoration:underline;text-underline-offset:5px}.button{display:inline-flex;justify-content:center;align-items:center;gap:28px;background:var(--green);color:white;border:1px solid var(--green);border-radius:5px;padding:16px 24px;font-size:15px;font-weight:600;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#183425;transform:translateY(-1px)}.button span{font-size:22px;line-height:1}.button.small{padding:12px 17px;font-size:13px;gap:22px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding-top:20px;padding-bottom:60px;min-height:650px}.hero-copy{padding-top:39px}.eyebrow{font-size:11px;letter-spacing:.17em;font-weight:700;margin:0 0 24px}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,4.7vw,68px);font-weight:400;line-height:1.07;letter-spacing:-2.5px;margin:0 0 26px}.hero h1 em{font-weight:400;color:#6e805c}.intro{color:var(--body);font-size:16px;line-height:1.85;margin:0 0 26px}.under-button{font-size:12px;color:var(--body);margin:12px 0 30px}.hero-foot{display:flex;align-items:center;gap:16px;border-top:1px solid var(--line);padding-top:20px;max-width:375px}.hero-foot p{font-size:12px;margin:0;color:var(--body)}.line-mark{font-size:36px;font-weight:400;color:#788568}.hero-photo{position:relative;min-height:580px;border-radius:90px 8px 8px 8px;overflow:hidden;background:#e4e7dc}.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center;display:block}.photo-label{position:absolute;bottom:35px;left:26px;right:26px;padding:19px 22px;background:rgba(250,249,245,.93);backdrop-filter:blur(12px);border:1px solid #fff6;border-radius:4px}.photo-label span{display:block;font-size:10px;letter-spacing:.16em;margin-bottom:3px}.photo-label strong{font-family:Georgia,serif;font-size:27px;font-weight:400}.photo-note{position:absolute;top:12px;right:12px;font-size:10px;background:#faf9f5d9;border-radius:2px;padding:3px 6px;color:#405044}.service-strip{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-strip>div{display:flex;align-items:center;justify-content:space-between;padding-block:20px;font-size:12px;letter-spacing:.07em}.service-strip span:first-child{font-family:Georgia,serif;font-size:21px;letter-spacing:-.3px}.service-strip span+span:before{content:'✳';color:#849470;margin-right:12px}.section{padding-block:86px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:38px}h2{font-family:Georgia,serif;font-size:44px;line-height:1.15;font-weight:400;letter-spacing:-1.2px;margin:0}.section-heading .eyebrow,.areas .eyebrow{margin-bottom:16px}.section-heading>p{font-size:14px;color:var(--body);margin:0 0 4px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{border:1px solid var(--line);padding:29px 26px;border-radius:7px;background:#fcfcf8}.service-card.featured{background:#eef1e7}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.card-top>span{font-size:12px;color:#6f7e6e}.card-top svg{width:34px;height:34px;stroke:#586b4b;stroke-width:1.3;fill:none}h3{font-size:21px;letter-spacing:-.5px;line-height:1.3;font-weight:500;margin:0 0 14px}.service-card>p{font-size:14px;color:var(--body);min-height:70px;margin-bottom:20px}.service-card ul{padding:0;margin:0 0 28px;list-style:none;font-size:12px;line-height:2.4}.service-card li:before{content:'✓';margin-right:10px;color:#698159}.service-card>a{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #d8dfd0;padding-top:18px;font-size:12px;font-weight:700}.service-card>a:hover{text-decoration:underline}.service-card>a span{font-size:21px}.section-note{font-size:12px;color:var(--body);margin:20px 0 0}.approach{background:#e9eee3;padding-block:76px}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.approach-grid>div>p:last-child{font-size:14px;color:var(--body);margin-top:23px}.steps{list-style:none;margin:0;padding:0}.steps li{display:flex;gap:23px;padding:22px 0;border-bottom:1px solid #cbd5c3}.steps li:first-child{padding-top:5px}.steps li:last-child{border-bottom:0}.steps li>span{font-family:Georgia,serif;font-size:24px;color:#72815e}.steps h3{font-size:18px;margin-bottom:8px}.steps p{font-size:14px;color:var(--body);margin:0}.areas{padding-block:80px;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.areas p{font-size:14px}.towns{display:flex;flex-wrap:wrap;gap:9px;margin-block:22px}.towns span{border:1px solid #d4ddcd;padding:6px 14px;border-radius:30px;font-size:12px}.muted{color:var(--body);font-size:12px!important}.quote-section{background:var(--green);padding-block:78px;color:#fffdf5}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.quote-copy{padding-top:25px}.quote-copy .eyebrow{color:#c5d7b2}.quote-copy h2{font-size:45px}.quote-copy>p{color:#d6e0d1;font-size:14px}.demo-note{margin-top:45px;border-top:1px solid #68806b;max-width:365px;padding-top:20px}.demo-note strong{font-size:13px;font-weight:500}.demo-note p{font-size:12px;color:#d6e0d1;margin-top:8px;line-height:1.8}.form-card{background:var(--cream);color:var(--ink);padding:30px;border-radius:8px}.form-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:10px}.form-head h3{font-family:Georgia,serif;font-size:26px;font-weight:400;margin:0}.form-head>span{font-size:9px;letter-spacing:.1em;color:var(--body)}label{display:block;font-size:12px;font-weight:500;margin-bottom:16px}input,select,textarea{display:block;width:100%;border:1px solid #d5dbcf;background:#fffefa;border-radius:4px;padding:11px 12px;color:var(--ink);margin-top:7px;font-size:14px;min-width:0}input::placeholder,textarea::placeholder{color:#7b8479}textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.optional{font-size:11px;font-weight:400;color:var(--body);margin-left:5px}.submit{width:100%;justify-content:space-between;padding:13px 17px}.form-foot{text-align:center;font-size:10px;color:var(--body);margin-bottom:0}.success-mark{display:inline-grid;place-items:center;width:48px;height:48px;background:var(--accent);border-radius:50%;font-size:25px;margin-bottom:24px}#confirmation h3{font-family:Georgia,serif;font-size:36px;font-weight:400}#confirmation>p:not(.eyebrow){font-size:14px}#confirmation .eyebrow{margin-bottom:14px}dl{border-block:1px solid var(--line);padding-block:16px;margin-block:25px}dt{font-size:11px;color:var(--body)}dd{margin:0 0 12px;font-size:15px;overflow-wrap:anywhere}dd:last-child{margin:0}footer{padding-block:30px;display:flex;gap:30px;justify-content:space-between;align-items:center}.footer-brand{font-family:Georgia,serif;font-size:25px}footer p{font-size:11px;color:var(--body)}footer>a:last-child{font-size:12px} [hidden]{display:none!important}
@media(min-width:1400px){.hero{gap:70px}.hero h1{font-size:70px}}
@media(max-width:1000px){.wrap{padding-inline:30px}.site-header nav{gap:18px;font-size:12px}.brand>span{font-size:23px}.hero{gap:28px}.hero h1{font-size:54px}.hero-photo{min-height:565px}.service-card{padding:23px 20px}.quote-grid,.areas,.approach-grid{gap:35px}.form-card{padding:24px}.quote-copy h2{font-size:40px}.field-row{grid-template-columns:1fr;gap:0}.service-strip>div{gap:20px}}
@media(max-width:760px){.wrap{padding-inline:22px}.demo-bar{font-size:10px;padding:8px 14px}.demo-bar span{display:none}.site-header{height:90px;gap:12px}.site-header nav{display:none}.brand>span{font-size:23px}.brand svg{width:28px}.brand small{font-size:8px}.button.small{font-size:11px;gap:10px;padding:10px 12px}.hero{grid-template-columns:1fr;gap:30px;padding-top:0;padding-bottom:35px}.hero-copy{padding-top:22px}.hero h1{font-size:clamp(44px,10.5vw,70px);letter-spacing:-1.6px}.hero .eyebrow{font-size:10px;margin-bottom:20px}.hero h1 br:nth-of-type(1){display:none}.hero h1 br:nth-of-type(1):after{content:' '}.intro{font-size:15px}.hero-foot{display:none}.under-button{margin-bottom:0}.hero-photo{min-height:370px;border-top-left-radius:65px}.photo-label{bottom:22px;left:20px;right:20px;padding:15px 18px}.photo-label strong{font-size:25px}.service-strip>div{justify-content:center;flex-wrap:wrap;gap:7px 18px;padding-block:18px;font-size:10px}.service-strip span:first-child{width:100%;text-align:center;font-size:19px;margin-bottom:3px}.service-strip span+span:before{margin-right:6px}.section{padding-block:55px}.section-heading{display:block;margin-bottom:27px}.section-heading>p{margin-top:20px}.desktop{display:none}h2{font-size:37px}.service-grid{grid-template-columns:1fr}.service-card{padding:25px}.card-top{margin-bottom:18px}.service-card>p{min-height:0;font-size:15px}.service-card ul{font-size:14px}.service-card>a{font-size:14px}.section-note{font-size:12px}.approach{padding-block:50px}.approach-grid,.areas,.quote-grid{grid-template-columns:1fr;gap:28px}.steps h3{font-size:18px}.areas{padding-block:55px;gap:15px}.quote-section{padding-block:48px}.quote-copy{padding-top:0}.quote-copy h2{font-size:39px}.demo-note{margin-top:25px;max-width:none}.form-card{padding:24px 20px}.field-row{grid-template-columns:1fr}label{font-size:14px}input,select,textarea{font-size:16px}.form-head>span{font-size:9px}footer{flex-wrap:wrap;gap:8px 20px}footer p{width:100%;order:3;margin:5px 0}footer>a:last-child{margin-left:auto;font-size:11px}}
/* Comfortable reading sizes throughout the inquiry journey. */
.eyebrow{font-size:.75rem}.site-header nav,.button.small{font-size:.875rem}.hero-foot p,.under-button,.section-note,.muted,.demo-note p,.form-foot,footer p{font-size:.8125rem!important}.intro,.section-heading>p,.service-card>p,.steps p,.approach-grid>div>p:last-child,.areas p,.quote-copy>p,#confirmation>p:not(.eyebrow){font-size:1rem}.service-card ul,.service-card>a,.towns span,label,.demo-note strong,footer>a:last-child{font-size:.875rem}.form-head>span,.optional,.photo-label span,.photo-note,.brand small,.demo-bar span{font-size:.75rem}.brand small{letter-spacing:.13em}.field-row{gap:12px}.form-foot{line-height:1.5}.hero-photo>img{object-position:45% center}
@media(max-width:760px){.brand>span{font-size:21px}.brand small{font-size:10px}.button.small{font-size:12px}.hero h1 br:nth-of-type(1){display:initial}.hero h1{font-size:clamp(44px,9.6vw,64px)}.field-row{gap:0}.demo-bar{font-size:12px}.service-strip>div{font-size:12px}.hero .eyebrow{font-size:12px}.form-head{flex-wrap:wrap}.photo-label strong{font-size:24px}.photo-note{font-size:12px}footer>a:last-child{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
