@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:#142c2a;--paper:#f7f8f2;--muted:#65736c;--line:#dce2d7;--green:#d3e8b8;--body:'DM Sans',sans-serif;--display:'Manrope',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:36px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #70914e;outline-offset:7px}::selection{background:var(--green)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:600;letter-spacing:-.045em;line-height:1.12}.skip-link{position:absolute;left:16px;top:-100px;background:var(--ink);color:white;padding:10px;z-index:10}.skip-link:focus{top:12px}.site-header{max-width:1440px;margin:auto;padding:32px 64px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{font-family:var(--display);font-size:25px;font-weight:800;display:flex;align-items:center;gap:12px;letter-spacing:-1px}.brand svg{width:29px;height:29px;fill:none;stroke:var(--ink);stroke-width:2.5}.brand-dot{color:#7c995c}nav{display:flex;align-items:center;gap:36px;font-size:14px;font-weight:500}nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.nav-contact{border:1px solid #afbbb0;padding:10px 18px;border-radius:4px}.nav-contact span{margin-left:14px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.13fr 1fr;gap:64px;padding:76px 64px 82px;align-items:center}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.hero .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:30px}.status-dot{width:7px;height:7px;border-radius:100%;background:#799454}h1{font-size:clamp(52px,5.55vw,80px);font-weight:500;letter-spacing:-.062em;line-height:1.04}h1 em{font-style:normal;color:#798c62}.hero-description{max-width:455px;margin-top:28px;color:var(--muted);font-size:17px;line-height:1.8}.button{display:inline-flex;gap:36px;align-items:center;justify-content:space-between;border-radius:4px;padding:17px 22px;font-size:13px;font-weight:500}.button-dark{background:var(--ink);color:var(--paper);margin-top:30px}.button-dark:hover{background:#2d4940}.hero-note{margin-top:18px;font-size:11px;color:var(--muted)}.signal-art{min-height:490px;background:var(--ink);border-radius:6px;position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.art-top,.art-bottom{display:flex;justify-content:space-between;align-items:center;color:#b3c5b8;font-size:9px;letter-spacing:.16em;padding:28px 28px;z-index:1}.art-top{border-bottom:1px solid #33504a}.signal-lines{width:100%;height:365px}.art-bottom{border-top:1px solid #33504a;letter-spacing:.04em}.art-cross{font-size:24px;font-weight:400}.intro{max-width:1312px;margin:0 auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:46px 0;display:grid;grid-template-columns:.62fr 1.1fr 1fr;gap:45px;align-items:start}.intro h2{font-size:30px}.intro p:last-child{color:var(--muted);font-size:14px}.section{max-width:1440px;margin:auto;padding:88px 64px}.section-heading{display:flex;justify-content:space-between;align-items:start;margin-bottom:45px}.section-heading h2{font-size:38px;width:66%}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.service{border:1px solid var(--line);border-radius:4px;padding:28px;position:relative}.service-number{font-size:10px;letter-spacing:.14em;color:var(--muted)}.service-symbol{height:74px;font-size:36px;margin-top:21px;color:#788966;font-weight:400}.software-symbol{font-size:27px;padding-top:8px;letter-spacing:-3px}.service h3{font-size:26px;line-height:1.25;min-height:72px}.service p{margin-top:20px;font-size:14px;color:var(--muted);min-height:97px}.service ul{list-style:none;padding:24px 0 0;margin:24px 0 0;border-top:1px solid var(--line);font-size:12px;line-height:2.2}.service li:before{content:'↗';margin-right:10px;color:#788966}.approach{padding-top:72px;padding-bottom:88px;display:grid;grid-template-columns:1fr 1fr;gap:90px;border-top:1px solid var(--line)}.approach h2{font-size:40px;margin:22px 0}.approach-copy>p:not(.eyebrow){max-width:440px;color:var(--muted);font-size:15px}.text-link{display:inline-flex;font-size:13px;font-weight:600;gap:28px;margin-top:26px}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;gap:25px;border-top:1px solid var(--line);padding:24px 0}.steps li:last-child{border-bottom:1px solid var(--line)}.step-number{font-size:11px;color:var(--muted);padding-top:5px}.steps h3{font-size:21px;margin-bottom:8px}.steps p{font-size:14px;color:var(--muted);max-width:370px}.contact{background:var(--green);display:flex;justify-content:space-between;align-items:center;gap:40px;max-width:none;padding-top:68px;padding-bottom:70px}.contact>div{margin-left:max(0px,calc((100vw - 1440px)/2))}.contact .eyebrow{color:#4b6444}.contact h2{font-size:46px;margin-top:20px}.contact p:not(.eyebrow){font-size:14px;margin-top:20px;max-width:430px}.contact-link{display:flex;align-items:center;gap:32px;font-family:var(--display);font-size:22px;letter-spacing:-.035em;border-bottom:1px solid #94ad7e;padding-bottom:10px;margin-right:max(0px,calc((100vw - 1440px)/2))}.contact-link:hover{border-color:var(--ink)}footer{max-width:1440px;margin:auto;padding:30px 64px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted)}.footer-brand{font-family:var(--display);font-weight:800;font-size:19px;color:var(--ink);letter-spacing:-.8px}
@media(min-width:1440px){.intro{max-width:1312px}}
@media(max-width:1439px){.intro{margin:0 64px}}
@media(max-width:1050px){.site-header{padding:26px 36px}.hero{padding:60px 36px;gap:35px}.signal-art{min-height:410px}.signal-lines{height:300px}.intro{margin:0 36px;gap:25px;grid-template-columns:.7fr 1fr 1.2fr}.intro h2{font-size:25px}.section{padding:65px 36px}.service-grid{gap:15px}.service{padding:22px}.service h3{font-size:22px}.service p{min-height:125px}.approach{gap:40px}.contact-link{font-size:18px;gap:18px}footer{padding:28px 36px}}
@media(max-width:760px){.site-header{padding:22px 24px}.brand{font-size:22px;gap:8px}.brand svg{width:24px}nav{gap:20px}nav>a:not(.nav-contact){display:none}.nav-contact{padding:7px 11px;font-size:12px}.hero{grid-template-columns:1fr;padding:48px 24px;gap:36px}.hero .eyebrow{font-size:10px;margin-bottom:24px}h1{font-size:clamp(48px,10vw,72px)}.hero-description{font-size:16px;max-width:530px}.signal-art{min-height:340px;max-width:540px;width:100%;margin:auto}.signal-lines{height:285px}.art-top,.art-bottom{padding:20px}.intro{margin:0 24px;padding:35px 0;grid-template-columns:1fr;gap:22px}.intro h2{font-size:29px}.intro p:last-child{max-width:540px}.section{padding:54px 24px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:31px;width:100%;margin-top:20px}.service-grid{grid-template-columns:1fr}.service{padding:26px}.service h3{min-height:0;font-size:26px}.service p{min-height:0;max-width:540px}.service-symbol{height:59px;margin-top:12px}.service ul{margin-top:23px;padding-top:17px;font-size:13px}.approach{grid-template-columns:1fr;gap:35px}.approach h2{font-size:33px}.contact{display:block;padding:48px 24px}.contact h2{font-size:39px}.contact-link{display:inline-flex;font-size:19px;margin-top:35px;max-width:100%;overflow-wrap:anywhere}.contact-link span{flex-shrink:0}footer{padding:26px 24px;flex-wrap:wrap;gap:18px}footer>span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:5px}.about-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:72px;align-items:start}.about-hero h1{font-size:clamp(44px,4.5vw,66px);margin-top:28px}.about-hero h1 span{display:block;font-size:clamp(28px,3vw,44px);line-height:1.18;margin-top:24px;color:#798c62;letter-spacing:-.045em}.about-lead{max-width:570px;color:var(--muted);font-size:18px;margin-top:28px}.background-card{background:var(--ink);color:var(--paper);padding:38px;border-radius:6px}.background-card .eyebrow{color:var(--green)}.background-card h2{font-size:31px;margin:25px 0 20px}.background-card>p:not(.eyebrow){font-size:14px;color:#b3c5b8}.background-card dl{margin:28px 0 0}.background-card dt{font-size:14px;font-weight:600;margin-top:18px}.background-card dd{font-size:13px;color:#b3c5b8;margin:2px 0 0}.background-card .text-link{color:var(--green)}.about-work{border-top:1px solid var(--line)}.about-work .service h3{margin-top:30px;font-size:25px}.about-work .service p{min-height:0}.about-work .text-link{gap:16px}.about-work .service{display:flex;flex-direction:column}.about-work .text-link{margin-top:auto;padding-top:26px}
@media(max-width:1050px){.about-hero{gap:32px}.background-card{padding:28px}}
@media(max-width:760px){.site-header{flex-wrap:wrap;gap:18px}.site-header nav{width:100%;justify-content:space-between}.site-header nav>a.nav-about{display:block;font-size:13px}.about-hero{grid-template-columns:1fr;gap:35px}.about-hero h1{font-size:44px}.about-hero h1 span{font-size:30px}.about-lead{font-size:16px}.background-card h2{font-size:29px}}
