@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--paper:#f5f5ef;--ink:#182f2c;--muted:#5d6b65;--line:#d7dcd3;--accent:#d4ef91;--dark:#19382f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #648f31;outline-offset:6px}header{height:98px;max-width:1500px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 5%}.wordmark{font-family:'Space Grotesk',sans-serif;font-size:39px;font-weight:700;letter-spacing:-2.5px}.wordmark span{font-size:28px;color:#658238;margin-left:5px}nav{display:flex;gap:34px;font-size:14px}nav a:hover,.nav-contact:hover{text-decoration:underline;text-underline-offset:6px}.nav-contact{font-size:14px;font-weight:600}.nav-contact span{margin-left:20px}.hero{max-width:1500px;margin:auto;display:grid;grid-template-columns:1.08fr 1fr;border-top:1px solid var(--line)}.hero-copy{padding:65px 7% 24px 9.3%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:11px;letter-spacing:1.7px;font-weight:600;line-height:1.7}.dot{display:inline-block;background:#749c43;border-radius:50%;width:7px;height:7px;margin-right:10px}h1,h2,h3{font-family:'Space Grotesk',Arial,sans-serif;font-weight:500}h1{font-size:clamp(48px,5.4vw,81px);line-height:1.04;letter-spacing:-4px;margin:32px 0 25px}.intro{font-size:18px;line-height:1.65;color:var(--muted);margin:0 0 30px}.button{display:inline-flex;align-items:center;gap:40px;padding:17px 23px;background:var(--ink);color:white;font-size:14px;border-radius:3px;transition:background .2s}.button:hover{background:#34584a}.button span{font-size:21px}.hero-foot{width:100%;display:flex;justify-content:space-between;gap:15px;font-size:8px;letter-spacing:1px;margin-top:auto;padding-top:50px;color:var(--muted)}.hero-art{position:relative;background:var(--dark);color:#c6d8cd;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.hero-art svg{width:100%;display:block;max-height:565px}.art-label,.art-footer{display:flex;justify-content:space-between;font-family:monospace;font-size:9px;letter-spacing:1px;padding:23px 26px}.art-label{padding-bottom:0}.art-footer{padding-top:0}.discipline{max-width:1500px;margin:auto;display:flex;justify-content:space-between;gap:20px;padding:26px 5%;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.section{max-width:1380px;padding:105px 5%;margin:auto}.expertise{display:grid;grid-template-columns:1fr 1.12fr;gap:9%}.section-heading h2,.development h2{font-size:clamp(32px,3.3vw,48px);line-height:1.12;letter-spacing:-2px;margin:23px 0}.section-heading>p:last-child{max-width:370px;color:var(--muted);font-size:16px;line-height:1.7}.service-list article{display:flex;gap:24px;border-top:1px solid var(--line);padding:25px 0}.service-list article:last-child{border-bottom:1px solid var(--line)}.number{font-family:monospace;color:#76826c;font-size:11px;padding-top:7px}.service-list h3{font-size:23px;letter-spacing:-.5px;margin:0 0 10px}.service-list p{font-size:14px;color:var(--muted);line-height:1.7;margin:0;max-width:385px}.service-symbol{margin-left:auto;font-size:25px;color:#688448}.development{max-width:1250px;margin:0 auto;background:#e7ebdf;display:grid;grid-template-columns:1fr 1fr;min-height:470px}.development-copy{padding:56px 55px 55px 20px}.development-copy>p:not(.eyebrow){line-height:1.75;color:#526459;font-size:15px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.tags span{border:1px solid #c4cebb;padding:8px 10px;font-size:9px;letter-spacing:.5px}.development-visual{position:relative;min-height:430px;overflow:hidden;background-image:radial-gradient(#aab8a3 .7px,transparent .7px);background-size:18px 18px;margin:25px}.orbit{position:absolute;width:290px;height:290px;border:1px solid #94a984;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit-two{width:220px;height:340px;transform:translate(-50%,-50%) rotate(55deg)}.orbit-three{width:220px;height:340px;transform:translate(-50%,-50%) rotate(-55deg)}.core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:130px;height:130px;background:var(--dark);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-direction:column;font-family:'Space Grotesk',sans-serif;font-size:65px;box-shadow:16px 16px 0 #c1cfb4}.core span{font-family:monospace;font-size:8px;letter-spacing:2px}.diagram-note{position:absolute;font:10px monospace;letter-spacing:1px;left:20px}.diagram-note.top{top:20px}.diagram-note.bottom{bottom:20px}.approach{padding-bottom:110px}.approach .section-heading{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:25px;align-items:start}.approach .section-heading h2{margin-top:0}.approach .section-heading>p:last-child{margin-top:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:40px}.steps article{border-top:1px solid #aebba7;padding-top:23px}.steps article>span{font:10px monospace;letter-spacing:1px;color:#657852}.steps h3{font-size:24px;letter-spacing:-.6px;margin:21px 0 12px}.steps p{font-size:15px;line-height:1.7;color:var(--muted);max-width:310px}.contact{background:var(--dark);color:var(--paper);padding:70px max(6%,calc((100vw - 1220px)/2));display:flex;align-items:center;justify-content:space-between;gap:35px}.contact .eyebrow{color:var(--accent)}.contact h2{font-size:clamp(40px,4.8vw,64px);line-height:1.04;letter-spacing:-2px;margin:24px 0}.contact p:last-child{font-size:15px;line-height:1.8;color:#c0cfc5}.email-link{display:flex;gap:35px;align-items:center;font-size:clamp(16px,2vw,25px);border-bottom:1px solid #7f9a80;padding:20px 0;white-space:nowrap}.email-link span{color:var(--accent);font-size:35px}.email-link:hover{color:var(--accent)}footer{max-width:1500px;padding:35px 5%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>span,footer>a:last-child{font-size:11px;color:var(--muted);line-height:1.8}.skip{position:fixed;top:-100px;left:10px;padding:15px;background:white;z-index:10}.skip:focus{top:10px}@media(min-width:1500px){.hero{border-left:1px solid var(--line);border-right:1px solid var(--line)}}@media(max-width:900px){header{height:80px}.hero-copy{padding-top:35px}h1{letter-spacing:-2.5px}.hero-foot{flex-direction:column;font-size:8px;padding-top:30px}.hero-art svg{min-height:400px;object-fit:cover}.intro{font-size:15px}.section{padding-top:70px;padding-bottom:70px}.expertise{gap:5%}.service-list h3{font-size:20px}.development{margin:0 5%}.development-copy{padding:35px 25px 35px 0}.development-visual{margin:10px}.orbit{width:210px;height:210px}.orbit-two,.orbit-three{width:170px;height:260px}.approach .section-heading{grid-template-columns:1fr 2fr}.approach .section-heading>p:last-child{grid-column:2}.contact{flex-direction:column;align-items:flex-start}.email-link{margin-top:0}}@media(max-width:600px){header{padding:0 6%;height:76px}.wordmark{font-size:34px}nav{gap:15px;font-size:11px}nav a:last-child{display:none}.nav-contact{font-size:11px}.nav-contact span{margin-left:6px}.hero{grid-template-columns:1fr}.hero-copy{padding:35px 6% 25px}.hero h1{font-size:60px;margin:25px 0}.intro{font-size:16px}.hero-foot{flex-direction:row;font-size:7px;gap:10px;padding-top:36px}.hero-art svg{min-height:0;max-height:400px}.art-label,.art-footer{font-size:8px}.discipline{padding:22px 6%;flex-wrap:wrap;justify-content:flex-start;gap:13px 22px;font-size:10px}.section{padding:60px 6%}.expertise{grid-template-columns:1fr;gap:28px}.section-heading h2,.development h2{font-size:36px}.service-list article{gap:16px}.development{grid-template-columns:1fr;margin:0 6%}.development-visual{min-height:300px}.development-copy{padding:10px 25px 35px}.approach .section-heading{display:block}.steps{grid-template-columns:1fr;gap:20px;margin-top:25px}.steps p{max-width:none}.contact{padding:50px 6%;gap:15px}.contact h2{font-size:52px}.contact p br{display:none}.email-link{font-size:18px;gap:20px;white-space:normal;overflow-wrap:anywhere}footer{padding:25px 6%;flex-wrap:wrap}footer .wordmark{width:40%}footer p{width:45%;margin:0}footer>span,footer>a:last-child{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Text-led hero: no illustration panel. */
.hero.hero-text-only{display:block}
.hero-text-only .hero-copy{padding:72px 8% 28px;max-width:1250px;margin:auto}
.hero-text-only h1{font-size:clamp(56px,7.5vw,104px);line-height:1.02;max-width:900px}
.hero-text-only .intro{max-width:650px;font-size:19px}
.hero-text-only .hero-foot{padding-top:60px}
@media(max-width:600px){.hero-text-only .hero-copy{padding:40px 6% 25px}.hero-text-only h1{font-size:clamp(48px,11vw,64px);letter-spacing:-2px}.hero-text-only .intro{font-size:16px}.hero-text-only .hero-foot{padding-top:35px}}
