:root{--paper:#f3f3ec;--ink:#193b30;--muted:#637269;--line:#cbd2c6;--lime:#d4eb89}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}header,main>section,footer{padding-left:6%;padding-right:6%}header{display:flex;align-items:center;justify-content:space-between;height:108px;border-bottom:1px solid var(--line)}.logo{font-weight:800;font-size:32px;letter-spacing:-2px;display:flex;gap:12px;align-items:center}.mark{display:grid;grid-template-columns:repeat(3,7px);gap:3px;transform:rotate(-0deg)}.mark i{width:7px;height:7px;background:currentColor}.mark i:nth-child(5){visibility:hidden}nav{display:flex;gap:34px;align-items:center;font-size:14px}.nav-cta{border:1px solid var(--ink);padding:12px 20px}.eyebrow{font:11px/1.4 monospace;text-transform:uppercase;letter-spacing:1.5px;display:flex;align-items:center;gap:12px}.dot{width:7px;height:7px;background:#648b39;border-radius:100%}.hero{padding-top:58px;padding-bottom:50px;position:relative;overflow:hidden}.hero-top{display:flex;justify-content:space-between}.edition{font:11px monospace;color:var(--muted)}.hero-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:5%;align-items:center;margin-top:35px}h1{font-size:clamp(52px,5.8vw,88px);line-height:1.03;font-weight:500;letter-spacing:-5px;margin:0 0 28px}h1 em{font-family:Georgia,serif;font-weight:400}p{margin:0}.intro{max-width:470px;color:var(--muted);font-size:18px;line-height:1.7}.actions{display:flex;align-items:center;gap:28px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:16px 23px;background:var(--ink);color:#fff;font-size:14px}.text-link{font-size:14px;border-bottom:1px solid;padding-bottom:3px}.hero-foot{display:flex;justify-content:space-between;margin-top:55px;border-top:1px solid var(--line);padding-top:22px;font:11px monospace;color:var(--muted)}.system{height:420px;position:relative;display:flex;align-items:center;justify-content:center;background-image:radial-gradient(#a9b9a7 .8px,transparent .8px);background-size:17px 17px}.sculpture{display:grid;grid-template-columns:repeat(5,49px);grid-template-rows:repeat(5,49px);gap:7px;transform:rotate(-14deg) skew(7deg,6deg);filter:drop-shadow(18px 28px 18px #173e3020)}.pixel{background:#2e5643;box-shadow:5px 7px 0 #153829}.pixel:nth-child(3n){background:#547b55}.pixel:nth-child(4n){background:#9db77d}.pixel:nth-child(1),.pixel:nth-child(5),.pixel:nth-child(8),.pixel:nth-child(13),.pixel:nth-child(18),.pixel:nth-child(21),.pixel:nth-child(25){visibility:hidden}.system-label{position:absolute;font:10px monospace;background:var(--paper);padding:8px 12px;border:1px solid var(--line)}.label-a{top:45px;left:0}.label-b{right:0;bottom:53px}.system-caption{position:absolute;bottom:6px;font:10px monospace;letter-spacing:1px;color:var(--muted)}.band{padding-top:22px;padding-bottom:22px;border-block:1px solid var(--line);display:flex;justify-content:space-between;font-size:13px}.band span:before{content:'+';margin-right:13px;color:#76934a}.services{padding-top:95px;padding-bottom:90px}.section-top{display:flex;justify-content:space-between;align-items:flex-start;gap:50px;margin-bottom:55px}h2{font-size:clamp(34px,3.9vw,56px);line-height:1.12;letter-spacing:-2.5px;font-weight:400;margin:0}.section-top h2{width:64%}.service{display:grid;grid-template-columns:65px 1fr 1.15fr 40px;gap:22px;padding:30px 0;border-top:1px solid var(--line);align-items:start}.num{font:12px monospace;color:var(--muted);padding-top:7px}.service h3{font-size:25px;letter-spacing:-.7px;font-weight:400;margin:0}.service p{font-size:15px;color:var(--muted);max-width:420px}.tags{margin-top:14px;font:10px monospace;text-transform:uppercase;letter-spacing:.5px;color:var(--ink)}.arrow{font-size:27px}.example{background:var(--ink);color:var(--paper);padding-top:75px;padding-bottom:70px}.example-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.example h2{margin:28px 0}.example p{color:#c2cfc4;max-width:440px}.diagram{border:1px solid #698174;padding:32px}.diagram-title{font:10px monospace;color:#b6c9bb;text-transform:uppercase;letter-spacing:1px;margin-bottom:25px}.step{border:1px solid #6d8677;padding:16px;display:flex;justify-content:space-between;font-size:13px}.connector{text-align:center;color:var(--lime);height:29px}.step.active{background:var(--lime);border-color:var(--lime);color:var(--ink)}.diagram-note{font:10px/1.6 monospace;color:#b6c9bb;margin-top:20px}.approach{padding-top:95px;padding-bottom:95px}.columns{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.columns article{border-top:1px solid var(--line);padding-top:23px}.columns h3{font-size:23px;font-weight:400;letter-spacing:-.7px;margin:20px 0 12px}.columns p{color:var(--muted);font-size:15px}.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;padding-top:65px;padding-bottom:65px;border-top:1px solid var(--line)}.about p{font-size:23px;line-height:1.55;letter-spacing:-.5px}.about .small{font-size:14px;letter-spacing:0;color:var(--muted);margin-top:23px}.contact{background:var(--lime);padding-top:65px;padding-bottom:65px;display:flex;justify-content:space-between;gap:35px;align-items:center}.contact h2{margin:18px 0}.contact p{max-width:530px}.contact .button{white-space:nowrap}footer{padding-top:32px;padding-bottom:24px}.footer-row{display:flex;justify-content:space-between;align-items:center}.footer-links{display:flex;gap:25px;font-size:13px}.proposal{font:10px/1.6 monospace;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;margin-top:28px}.menu{display:none;background:none;border:1px solid var(--line);padding:8px 13px;color:var(--ink)}a:focus-visible,button:focus-visible{outline:3px solid #b18a32;outline-offset:5px}a:hover{opacity:.75}@media(min-width:1500px){body{max-width:1600px;margin:auto}}@media(max-width:800px){header{height:82px}nav{gap:17px}.hero-grid{grid-template-columns:1fr  .8fr;gap:0}h1{font-size:54px;letter-spacing:-3px}.sculpture{grid-template-columns:repeat(5,32px);grid-template-rows:repeat(5,32px)}.system{height:350px}.label-a{top:20px}.intro{font-size:16px}.actions{gap:17px}.service{grid-template-columns:30px 1fr 1fr 20px;gap:13px}.service h3{font-size:21px}.example-grid{gap:35px}.diagram{padding:20px}.section-top h2{width:70%}.columns{gap:25px}.contact{align-items:flex-start;flex-direction:column}}@media(max-width:580px){header,main>section,footer{padding-left:6%;padding-right:6%}.menu{display:block}nav{display:none;position:absolute;top:81px;left:0;right:0;background:var(--paper);padding:25px;z-index:5;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}nav.open{display:flex}.edition{display:none}.hero{padding-top:32px}.hero-grid{grid-template-columns:1fr;margin-top:30px}h1{font-size:58px;max-width:400px}.intro{max-width:390px}.system{height:290px;margin-top:25px}.sculpture{grid-template-columns:repeat(5,35px);grid-template-rows:repeat(5,35px)}.label-a{top:24px}.label-b{bottom:36px}.hero-foot{margin-top:25px;gap:20px;font-size:10px}.band{display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:11px}.services,.approach{padding-top:60px;padding-bottom:60px}.section-top{display:block;margin-bottom:30px}.section-top h2{width:100%;margin-top:22px}.service{grid-template-columns:25px 1fr 20px}.service>div{grid-column:2}.service .arrow{grid-column:3;grid-row:1}.service h3{font-size:24px}.example-grid,.about{grid-template-columns:1fr}.example{padding-top:50px;padding-bottom:50px}.columns{grid-template-columns:1fr;gap:30px}.columns h3{margin-top:12px}.about{gap:25px;padding-top:45px;padding-bottom:45px}.about p{font-size:21px}.contact{padding-top:45px;padding-bottom:45px}.footer-row{align-items:flex-start;gap:25px;flex-direction:column}.footer-links{flex-wrap:wrap;gap:15px}h2{letter-spacing:-1.6px}.system-caption{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.assurance{padding-top:70px;padding-bottom:80px;background:#e8ece1}.assurance-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px 65px}.assurance-grid article{border-top:1px solid var(--line);padding-top:20px}.assurance-grid h3{font-size:22px;letter-spacing:-.6px;font-weight:400;margin:0 0 12px}.assurance-grid p{font-size:15px;color:var(--muted)}.columns .tags{margin:22px 0 8px}.intro{max-width:530px}.actions{flex-wrap:wrap}@media(max-width:580px){.assurance{padding-top:50px;padding-bottom:50px}.assurance-grid{grid-template-columns:1fr;gap:28px}.contact .button{white-space:normal}}
.work{padding-top:80px;padding-bottom:90px;border-top:1px solid var(--line)}.case{border-top:1px solid var(--line);padding:30px 0}.case h3,.nodeum h3{font-size:32px;line-height:1.15;letter-spacing:-1.2px;font-weight:400;margin:20px 0}.case p{font-size:15px;color:var(--muted);max-width:570px}.case h4{font:11px monospace;letter-spacing:.6px;text-transform:uppercase;margin:24px 0 8px}.featured{display:grid;grid-template-columns:1fr 1.15fr;gap:65px;padding-bottom:45px}.featured .case-heading>p{font-size:18px;max-width:360px}.case-pair{display:grid;grid-template-columns:1fr 1fr;gap:65px}.case-outcome{border-left:3px solid #8eaa51;padding:10px 0 10px 17px;margin:24px 0;font-size:17px;line-height:1.5}.case .case-footnote{font:11px/1.6 monospace}.nodeum{display:grid;grid-template-columns:1fr 1.15fr auto;gap:35px;align-items:center;border-top:1px solid var(--line);padding-top:30px;margin-top:20px}.nodeum h3{font-size:25px;margin:10px 0 0}.nodeum p{color:var(--muted);font-size:14px}.nodeum a{white-space:nowrap}@media(max-width:800px){nav{gap:17px;font-size:12px}.featured,.case-pair{gap:30px}.nodeum{grid-template-columns:1fr 1fr}.nodeum a{justify-self:start}}@media(max-width:580px){.work{padding-top:50px;padding-bottom:50px}.featured,.case-pair,.nodeum{grid-template-columns:1fr;gap:15px}.case h3{font-size:30px}.case-pair{gap:5px}.case{padding-top:25px}.nodeum{gap:20px}.case-body h4:first-child{margin-top:10px}}
.partnership{padding-top:65px;padding-bottom:65px;border-bottom:1px solid var(--line)}.partnership-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;margin-top:27px}.partnership h2{font-size:clamp(32px,3.2vw,46px)}.partnership p{color:var(--muted);margin-bottom:20px;font-size:16px}.partnership .text-link{display:inline-block;margin-top:4px}@media(max-width:580px){.partnership{padding-top:45px;padding-bottom:45px}.partnership-grid{grid-template-columns:1fr;gap:25px}}
.logo{display:inline-flex;gap:0;font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:40px;line-height:1;letter-spacing:-2.8px}.logo-dot{color:#74914c}.logo:hover{opacity:1}.logo:focus-visible{outline-offset:7px}@media(max-width:580px){.logo{font-size:36px;letter-spacing:-2.5px}}
.testimonials{padding-top:75px;padding-bottom:75px;border-top:1px solid var(--line)}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.review-grid figure{margin:0;padding:28px 0;border-top:1px solid var(--line)}.review-grid blockquote{font-size:clamp(23px,2.3vw,32px);line-height:1.4;letter-spacing:-.7px;margin:0 0 30px;max-width:550px}.review-grid figcaption{display:flex;align-items:flex-start;flex-direction:column;gap:8px;font-size:14px}.review-grid figcaption strong{font-weight:500}.review-grid figcaption span,.review-note{color:var(--muted);font-size:12px}.review-grid .text-link{margin-top:8px;font-size:12px}.review-note{margin-top:20px}.review-note a{text-decoration:underline;text-underline-offset:3px}@media(max-width:580px){.testimonials{padding-top:45px;padding-bottom:45px}.review-grid{grid-template-columns:1fr;gap:10px}}
.review-context{font-size:13px;line-height:1.6;color:var(--muted);margin:0 0 24px;max-width:500px}.review-grid{row-gap:20px}
.personal{grid-template-columns:minmax(220px,.7fr) 1.3fr;align-items:center;gap:8%;padding-top:75px;padding-bottom:75px}.portrait-wrap{max-width:360px;width:100%}.portrait{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 23%;background:#d9dfd9}.personal h2{margin:22px 0 12px;font-size:clamp(32px,3.2vw,47px);letter-spacing:-1.7px}.personal .personal-role{font:12px/1.6 monospace;color:var(--muted);margin-bottom:26px}.personal-copy>p:not(.personal-role):not(.small):not(.contact-caption){font-size:20px}.personal-links{display:flex;flex-wrap:wrap;gap:16px 28px;margin-top:28px}.personal .contact-caption{font:11px/1.6 monospace;color:var(--muted);margin-top:20px;letter-spacing:0}@media(max-width:580px){.personal{grid-template-columns:1fr;gap:30px;padding-top:45px;padding-bottom:45px}.portrait-wrap{max-width:290px}.personal h2{font-size:34px}.personal-copy>p:not(.personal-role):not(.small):not(.contact-caption){font-size:18px}}
.connected-visual{background:none;height:auto;min-width:0}.connected-visual svg{display:block;width:100%;height:auto;max-height:450px}.commerce-visual{grid-column:1/-1;background:#e8ece1;padding:28px 30px;margin-top:4px}.commerce-flow{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding:0;margin:28px 0 22px}.commerce-flow li{position:relative;display:flex;flex-direction:column;gap:8px}.commerce-flow li:not(:last-child):after{content:'→';position:absolute;right:0;top:15px;color:#74914c}.flow-icon{width:46px;height:46px;display:grid;place-items:center;border:1px solid #aebfa7;font-size:25px;color:#193b30;background:var(--paper);margin-bottom:10px}.commerce-flow strong{font-size:14px;font-weight:500}.commerce-flow li>span:last-child{font-size:12px;color:var(--muted)}.commerce-visual .flow-caption{font:10px/1.6 monospace;color:var(--muted);max-width:none}@media(max-width:800px){.commerce-flow{grid-template-columns:1fr 1fr;gap:28px}.commerce-flow li:after{display:none}}@media(max-width:580px){.connected-visual{margin-top:30px}.commerce-visual{padding:23px 20px}.commerce-flow{gap:25px 15px}.commerce-flow strong{font-size:13px}.commerce-visual .eyebrow{font-size:10px}.hero-grid .connected-visual{height:auto}}
.case-illustration{background:#e8ece1;margin:24px 0;padding:20px 16px 13px}.case-illustration svg{display:block;width:100%;height:auto}.case .case-illustration p{font:10px/1.6 monospace;color:var(--muted);margin-top:10px;max-width:none}@media(max-width:580px){.case-illustration{padding:15px 8px 12px}}

/* Cookie settings control in footer */
button.text-link,
button.cookie-settings-btn {
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  border-bottom: 1px solid;
  padding-bottom: 3px;
  font-size: 13px;
}
button.text-link:hover,
button.cookie-settings-btn:hover {
  opacity: 0.75;
}

/* Brand palette — hex fallbacks so nothing can wash out the design */
html {
  background-color: #f3f3ec;
  color: #193b30;
}
body {
  background-color: #f3f3ec !important;
  color: #193b30 !important;
}
.logo,
h1, h2, h3 {
  color: #193b30;
}
.logo-dot {
  color: #74914c !important;
}
.button {
  background-color: #193b30 !important;
  color: #ffffff !important;
}
.nav-cta {
  border-color: #193b30;
  color: #193b30;
}
.contact {
  background-color: #d4eb89 !important;
  color: #193b30;
}
.example {
  background-color: #193b30 !important;
  color: #f3f3ec !important;
}
.band span:before {
  color: #76934a;
}
.dot {
  background-color: #648b39;
}
