@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#17382f;--muted:#62736b;--green:#173e31;--lime:#d6e885;--paper:#f7f8f4;--line:#dce2d8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:17px;line-height:1.65}h1,h2,h3,.logo{font-family:Manrope,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #7b9a19;outline-offset:5px}img{display:block;width:100%;object-fit:cover}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.demo{background:var(--green);color:#edf3e3;text-align:center;font-size:13px;letter-spacing:.02em;padding:7px 16px}.demo span{opacity:.7}header{background:var(--paper);border-bottom:1px solid var(--line)}.nav{height:100px;display:flex;align-items:center;gap:40px}.logo{font-size:36px;letter-spacing:-2px;font-weight:800;display:flex;align-items:center;gap:10px;margin-right:auto}.logo b{width:30px;height:32px;border:7px solid var(--ink);border-top:0;transform:skewY(-16deg);display:inline-block}.logo small{font-size:10px;letter-spacing:2px;display:block;font-weight:600;margin-top:-11px}.navlinks{display:flex;gap:30px;align-items:center;font-size:15px;font-weight:500}.navlinks a[aria-current=page]{border-bottom:1px solid}.btn{display:inline-flex;gap:28px;align-items:center;justify-content:center;padding:15px 25px;background:var(--green);color:white;border:1px solid var(--green);border-radius:3px;font-size:15px;font-weight:600;cursor:pointer;line-height:1.4}.btn:hover{background:#295742}.btn.lime{background:var(--lime);border-color:var(--lime);color:var(--ink)}.btn.outline{background:transparent;color:var(--ink);border-color:#bbc6bc}.menu{display:none}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:700;display:flex;gap:12px;align-items:center}.eyebrow:before{content:'';width:25px;height:1px;background:currentColor}h1{font-size:clamp(42px,5.3vw,73px);line-height:1.09;letter-spacing:-3px;font-weight:500;margin:28px 0}h1 em{font-style:normal;color:#6b8061}p{color:var(--muted)}.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:65px;padding:58px 0 54px;align-items:center}.hero p{font-size:18px;max-width:450px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-photo{position:relative}.hero-photo>img{height:550px;border-radius:4px}.caption{position:absolute;bottom:22px;left:22px;right:22px;background:rgba(255,255,255,.94);padding:14px 19px;display:flex;justify-content:space-between;font-size:13px}.caption strong{display:block;font-size:15px}.micro{display:flex;gap:20px;flex-wrap:wrap;margin-top:30px;font-size:13px;color:var(--muted)}.micro span:before{content:'✓';margin-right:8px}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);padding:23px 0;gap:30px}.strip div{display:flex;align-items:center;gap:16px;font-size:15px}.strip i{font-style:normal;font-size:22px;color:#74895d}.section{padding:90px 0}.section-title{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}h2{font-size:clamp(30px,3vw,43px);font-weight:500;letter-spacing:-1.5px;line-height:1.2;margin:17px 0}h3{font-size:24px;letter-spacing:-.7px;font-weight:600;line-height:1.3}.section-title p{max-width:400px;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{border-top:1px solid #b8c6b5;padding:24px 0}.card .num{font-size:13px;color:#76856c}.card p{font-size:16px}.textlink{display:inline-flex;gap:22px;border-bottom:1px solid #aebca5;padding-bottom:5px;font-weight:600;font-size:14px}.dark{background:var(--green);color:#fff}.dark p{color:#c7d2c8}.dark .eyebrow{color:var(--lime)}.projects{display:grid;grid-template-columns:1.25fr 1fr;gap:30px}.project img{height:340px;border-radius:3px}.project:nth-child(2){margin-top:65px}.project .details{display:flex;justify-content:space-between;align-items:center}.project h3{margin:18px 0 3px}.project p{font-size:14px;margin:0}.project small{font-size:12px;color:#b8c7b9}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.steps{counter-reset:steps}.step{border-top:1px solid var(--line);padding:22px 0;display:grid;grid-template-columns:45px 1fr}.step:before{counter-increment:steps;content:'0' counter(steps);font-size:14px;color:#75836b}.step h3{margin:0;font-size:20px}.step p{margin:8px 0 0;font-size:16px}.callout{background:var(--lime);padding:45px 50px;display:flex;align-items:center;justify-content:space-between;gap:35px;border-radius:4px;margin-bottom:80px}.callout h2{margin:0 0 12px}.callout p{margin:0;color:#43573d}.footer{padding:45px 0;border-top:1px solid var(--line)}.footer-row{display:flex;justify-content:space-between;gap:30px;align-items:start}.footer p{font-size:13px;max-width:440px}.footer-links{display:flex;gap:25px;font-size:14px}.page-head{padding:65px 0 35px;max-width:850px}.page-head h1{font-size:57px}.page-head p{max-width:640px}.service-row{display:grid;grid-template-columns:80px 1fr 1fr;gap:35px;padding:35px 0;border-top:1px solid var(--line)}.service-row h2{margin:0;font-size:30px}.service-row p{margin:0}.service-row ul{padding-left:20px;color:var(--muted);font-size:16px}.about-image{height:480px;border-radius:4px}.note{padding:20px;background:#eaf0dd;border-left:3px solid #8aa457;font-size:14px;color:#4b6042}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;padding:35px 0 85px}.form{background:white;padding:35px;border:1px solid var(--line);border-radius:4px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{margin-bottom:20px}label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}input,select,textarea{width:100%;border:1px solid #bcc8ba;border-radius:2px;padding:12px;background:#fcfdf9;color:var(--ink);min-width:0}textarea{resize:vertical;min-height:130px}.form small{display:block;color:var(--muted);font-size:13px;margin:16px 0}.result{margin-top:20px;padding:18px;background:#eef4da}.result[hidden]{display:none}.mobile-cta{display:none}@media(max-width:1000px){.navlinks{gap:18px}.wrap{width:calc(100% - 48px)}.hero{gap:30px}.hero-photo>img{height:500px}.nav{gap:20px}.nav>.btn{display:none}.split,.contact{gap:40px}}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.demo{font-size:12px}.demo span{display:none}.nav{height:78px;position:relative}.logo{font-size:30px}.logo small{font-size:9px}.menu{display:block;background:transparent;border:1px solid #b9c6b5;padding:8px 12px;border-radius:2px;font-size:14px;color:var(--ink)}.navlinks{display:none;position:absolute;top:78px;left:-20px;right:-20px;background:var(--paper);padding:25px;z-index:10;box-shadow:0 16px 20px #17382f15}.navlinks.open{display:flex;flex-direction:column;align-items:stretch;gap:20px}.hero{grid-template-columns:1fr;padding:36px 0 30px;gap:30px}h1{font-size:47px;letter-spacing:-2px;margin:20px 0}.hero p{font-size:17px}.hero-photo>img{height:360px}.actions .btn{padding:14px 18px;gap:15px}.micro{gap:12px;font-size:12px;margin-top:22px}.caption{left:14px;right:14px;bottom:14px;padding:12px;font-size:12px}.caption strong{font-size:14px}.strip{grid-template-columns:1fr;gap:13px;padding:22px 0}.strip div{font-size:14px}.section{padding:55px 0}.section-title{display:block}.section-title p{margin-top:20px}.cards{grid-template-columns:1fr;gap:6px}.card{padding:22px 0}.card h3{margin:10px 0}.projects{grid-template-columns:1fr;gap:32px}.project:nth-child(2){margin-top:0}.project img{height:280px}.split,.contact{grid-template-columns:1fr;gap:30px}.callout{padding:30px 25px;display:block;margin-bottom:50px}.callout .btn{margin-top:25px}.footer-row{display:block}.footer-links{flex-wrap:wrap;margin-top:25px;gap:18px}.footer{padding-bottom:90px}.page-head{padding-top:40px}.page-head h1{font-size:42px}.service-row{grid-template-columns:35px 1fr;gap:15px}.service-row>div:last-child{grid-column:2}.service-row h2{font-size:26px}.form{padding:23px}.form-grid{grid-template-columns:1fr;gap:0}.contact{padding-top:10px}.about-image{height:350px}.mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:8;background:var(--paper);padding:10px 20px;border-top:1px solid var(--line)}.mobile-cta .btn{width:100%;padding:12px}.eyebrow{font-size:11px;letter-spacing:1.5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
