@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#102920;--lime:#d9ff70;--paper:#fff;--muted:#57615b;--line:#dce3dc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #648f11;outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Manrope',Arial,sans-serif}h2{font-size:clamp(2.1rem,4vw,3.5rem);line-height:1.12;letter-spacing:-.045em;font-weight:600}.site-header{min-height:100px;padding:22px 5.5%;display:flex;align-items:center;justify-content:space-between;gap:30px;background:white}.brand{display:flex;gap:12px;align-items:center;font-size:34px;font-weight:750;line-height:1;letter-spacing:-1.7px}.brand-mark{position:relative;background:var(--ink);color:var(--lime);font-family:Arial,sans-serif;font-weight:700;font-size:48px;width:49px;height:49px;display:flex;align-items:center;justify-content:center;border-radius:11px;letter-spacing:-3px;padding-right:3px}.brand-mark span{width:5px;height:5px;background:var(--lime);position:absolute;right:8px;top:9px}.brand-sub{display:block;font-size:9px;font-weight:600;letter-spacing:2.7px;line-height:1.8;margin-top:4px}.site-header nav{display:flex;gap:38px;font-size:15px}.site-header nav a{border-bottom:1px solid transparent}.site-header nav a:hover{border-color:var(--ink)}.nav-contact{border:1px solid var(--line);padding:11px 20px;border-radius:30px;font-size:15px}.nav-contact span{margin-left:22px}.hero{background:var(--ink);color:#fff;padding:36px 5.5% 0;overflow:hidden}.hero-top{display:flex;justify-content:space-between;padding-bottom:46px;gap:20px}.eyebrow,.location{font-size:12px;letter-spacing:2px;font-weight:600}.eyebrow{color:var(--lime)}.location{color:#c0cec5;letter-spacing:1.5px}.location span{margin-left:15px}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:7%;align-items:center;padding-bottom:65px}h1{font-size:clamp(3.5rem,6.9vw,7rem);line-height:1.01;letter-spacing:-.065em;font-weight:500}h1 span{color:var(--lime)}.hero-copy{color:#c1d0c6;max-width:435px;margin:28px 0 30px;font-size:18px;line-height:1.65}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:42px;border-radius:5px;padding:15px 22px;font-weight:550}.primary{color:var(--ink);background:var(--lime)}.primary:hover{background:#e8ffa6}.system-panel{border:1px solid #547064;border-radius:12px;background:#17362b;padding:25px 30px;transform:rotate(-2deg);box-shadow:17px 18px 0 #1c3d31;max-width:570px}.panel-top,.panel-bottom{display:flex;justify-content:space-between;gap:10px;font-size:10px;letter-spacing:1.1px;color:#bed0c5}.panel-top{padding-bottom:25px;border-bottom:1px solid #456052}.system-core{padding:35px 0 32px}.core-label{font-size:10px;color:#b8cbbe;letter-spacing:1.7px}.system-core h2{font-size:clamp(2.5rem,3.8vw,3.6rem);margin-top:15px;line-height:1.15;letter-spacing:-.045em;font-weight:500}.system-core em{font-style:normal;color:var(--lime)}.system-row{display:flex;align-items:center;gap:15px;padding:16px 0;border-top:1px solid #456052}.system-row div{flex:1}.system-row strong{display:block;font-size:15px;font-weight:500}.system-row div span{font-size:12px;color:#b7cbbd;display:block;margin-top:3px}.system-row>span:last-child{font-size:12px;color:#b7cbbd}.square-icon{font-family:Arial,sans-serif;display:flex;width:35px;height:35px;border:1px solid #648272;align-items:center;justify-content:center;border-radius:8px;font-size:22px;color:var(--lime)}.panel-bottom{font-size:8px;padding-top:20px;border-top:1px solid #456052}.hero-foot{border-top:1px solid #3c574a;padding:22px 0;display:flex;justify-content:space-between;gap:18px;color:#bdcdc3;font-size:13px}.hero-foot a{color:var(--lime)}.hero-foot a span{margin-left:20px}.section{padding:100px 5.5%}.section-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:11%;align-items:end;margin-bottom:55px}.dark{color:#546551}.section-intro h2{margin-top:20px}.section-intro>p{max-width:430px;color:var(--muted);font-size:17px}.service-list{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:65px 1fr 110px;gap:25px;border-bottom:1px solid var(--line);padding:29px 0;align-items:start}.service-number{font-size:14px;color:#63745f;padding-top:5px}.service h3{font-size:24px;font-weight:600;letter-spacing:-.6px}.service p{font-size:16px;color:var(--muted);max-width:620px;margin-top:7px}.service-tag{border:1px solid var(--line);border-radius:30px;font-size:10px;letter-spacing:1px;text-align:center;padding:7px 10px;margin-top:4px}.approach{background:#f3f6f0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.steps article{border-top:1px solid #bcc9b7;padding-top:25px}.step-num{font-size:12px;letter-spacing:1.3px;color:#63745f}.steps h3{font-size:23px;line-height:1.25;margin-top:35px;margin-bottom:14px;font-weight:600;letter-spacing:-.5px}.steps p{color:var(--muted)}.about{background:var(--ink);color:#fff;display:grid;grid-template-columns:1.1fr 1fr;gap:12%}.about h2{margin-top:28px;font-size:clamp(2.5rem,4.8vw,4.5rem)}.about h2 span{color:var(--lime)}.about-copy>p{color:#c1d0c6;margin-bottom:22px}.about-copy .large-copy{font-size:24px;line-height:1.5;color:white}.principle{padding:22px 0 0;margin-top:25px;border-top:1px solid #456052}.principle h3{font-size:18px;font-weight:550;margin-bottom:8px}.principle p{color:#c1d0c6;font-size:15px}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:11%;align-items:center}.contact h2{margin-top:20px}.contact p{margin-top:22px;color:var(--muted)}.address-card{border-left:1px solid var(--line);padding:15px 0 15px 45px}.address-label{font-size:12px;letter-spacing:1.5px}.address-card address{font-style:normal;font-size:24px;line-height:1.55;margin-top:20px;letter-spacing:-.5px}.map-link{display:inline-block;border-bottom:1px solid #7e9175;margin-top:25px;padding-bottom:6px;font-size:15px}.map-link span{margin-left:20px}footer{border-top:1px solid var(--line);padding:36px 5.5%;display:grid;grid-template-columns:1fr 1.2fr auto;align-items:center;gap:25px}footer p{font-size:14px;color:var(--muted)}footer>a:last-of-type{font-size:14px}footer small{grid-column:1/-1;font-size:12px;color:var(--muted);margin-top:10px}.footer-brand{font-size:28px}.footer-brand .brand-mark{width:40px;height:40px;font-size:39px}.footer-brand .brand-sub{font-size:8px;letter-spacing:1.8px}.skip{position:absolute;left:20px;top:-100px;background:var(--lime);padding:12px;z-index:50}.skip:focus{top:15px}@media(min-width:1500px){.section,.hero,.site-header,footer{padding-left:max(5.5%,calc((100vw - 1360px)/2));padding-right:max(5.5%,calc((100vw - 1360px)/2))}}@media(max-width:900px){.hero-grid{gap:5%}.system-panel{padding:20px}.site-header nav{gap:20px}.hero-foot>span:nth-child(2){display:none}.section{padding-top:75px;padding-bottom:75px}.about{gap:7%}.steps{gap:25px}}@media(max-width:650px){.site-header{flex-wrap:wrap;gap:18px;padding:20px 6%}.brand{font-size:29px}.brand-mark{height:43px;width:43px;font-size:42px}.site-header nav{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px}.nav-contact{font-size:14px;padding:8px 15px}.hero{padding:28px 6% 0}.hero-top{padding-bottom:30px}.location{font-size:10px;letter-spacing:.5px}.eyebrow{font-size:10px;letter-spacing:1.5px}.hero-grid{grid-template-columns:1fr;gap:50px;padding-bottom:40px}h1{font-size:clamp(3.4rem,13vw,5rem)}.hero-copy{font-size:17px}.system-panel{transform:none;box-shadow:8px 8px 0 #1c3d31;margin-right:8px}.system-core h2{font-size:2.7rem}.hero-foot{font-size:12px}.section{padding:65px 6%}.section-intro,.about,.contact{grid-template-columns:1fr;gap:28px}.section-intro{margin-bottom:35px}.service{grid-template-columns:30px 1fr;gap:15px;padding:24px 0}.service-tag{display:none}.service h3{font-size:21px}.steps{grid-template-columns:1fr;gap:30px}.steps h3{margin-top:18px}.about h2{font-size:2.9rem}.about-copy{margin-top:15px}.address-card{padding:25px 0 0;border-left:0;border-top:1px solid var(--line)}footer{grid-template-columns:1fr auto;padding:30px 6%}footer p{grid-column:1/-1;grid-row:2}footer small{margin-top:0}.footer-brand .brand-sub{font-size:8px}.address-card address{font-size:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
