:root{--accent:#14cf93;--on-accent:#07130e;--on-accent-muted:#0b3327;--on-accent-line:#07130e52;--accent-on-light:#08775a;--ink:#0a0a0b;--paper:#f4f5f7;--line-dark:#2c2c31;--line-light:#dedfe3;--muted-dark:#a3a5ad;--soft-dark:#d0d1d8;--muted-light:#3a3b40;--sans:Geist, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Geist Mono", ui-monospace, Menlo, monospace}*{box-sizing:border-box}body{background:var(--ink);color:var(--ink);font-family:var(--sans);font-variant-numeric:tabular-nums;margin:0}a:focus-visible{outline-offset:3px;outline:2px solid}h1,h2,h3,p,ul{margin:0}ul{padding:0;list-style:none}img{max-width:100%;display:block}.wrap{width:100%;max-width:1320px;margin:0 auto;padding-inline:clamp(20px,4vw,56px)}.pad{padding-block:clamp(64px,9vw,128px)}.stack{flex-direction:column;gap:clamp(40px,5vw,64px);display:flex}.fit{grid-template-columns:repeat(auto-fit, minmax(min(100%, var(--min,300px)), 1fr));gap:var(--gap,32px);display:grid}.dark{background:var(--ink);color:#fff}.light{color:var(--ink);background:#fff}.paper{background:var(--paper);color:var(--ink)}.accent{background:var(--accent);color:var(--on-accent)}.h2{letter-spacing:-.04em;text-wrap:balance;font-size:clamp(36px,5vw,72px);font-weight:600;line-height:1.02}.label{font-family:var(--mono);letter-spacing:.02em;font-size:13px}.lead{letter-spacing:-.015em;font-size:clamp(20px,1.9vw,26px);font-weight:500;line-height:1.3}.body{font-size:17px;line-height:1.45}.h3{letter-spacing:-.02em;font-size:24px;font-weight:600;line-height:1.15}.muted-dark{color:var(--muted-dark)}.soft-dark{color:var(--soft-dark)}.muted-light{color:var(--muted-light)}.green-dark{color:var(--accent)}.green-light{color:var(--accent-on-light)}.muted-accent{color:var(--on-accent-muted)}.buttons{flex-wrap:wrap;gap:12px;display:flex}.btn{align-items:center;gap:10px;min-height:48px;padding:0 22px;font-size:16px;font-weight:500;text-decoration:none;display:inline-flex}.btn-accent{background:var(--accent);color:var(--on-accent)}.btn-ink{background:var(--ink);color:#fff}.btn-line{color:#fff;border:1px solid #55565c}.btn-line-accent{color:var(--on-accent);border:1px solid var(--on-accent-line)}.navbar{background:var(--ink)}.navbar-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 32px;padding-block:20px;display:flex}.navbar-logo{align-items:center;min-height:44px;display:inline-flex}.navbar-logo img{width:auto;height:30px}.navbar-links{flex-wrap:wrap;align-items:center;gap:4px 28px;font-size:15px;display:flex}.navbar-links a{color:#fff;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.hero{flex-direction:column;min-height:calc(100svh - 84px);display:flex}.hero-main{flex-direction:column;flex:1 0 auto;justify-content:space-between;gap:clamp(24px,min(5vw,3svh),72px);padding-block:clamp(72px,min(9vw,11svh),128px) clamp(40px,min(5vw,5svh),72px);display:flex}.hero-top{flex-direction:column;gap:24px;display:flex}.hero-bottom{flex-direction:column;gap:28px;display:flex}.hero-title{letter-spacing:-.05em;font-size:clamp(50px,min(9vw,40.4545svh - 200px),132px);font-weight:600;line-height:1.04}.hero-title span{background:var(--accent);color:var(--on-accent);margin-bottom:.1em;padding:0 .12em .06em;line-height:1;display:inline-block}.hero-intro{max-width:40em;font-size:clamp(18px,1.6vw,22px);line-height:1.45}.hero-bar{border-top:1px solid var(--line-dark);background:#16161a}.hero-bar .fit{--min:240px;--gap:0 32px}.hero-cell{padding-block:18px}.hero-cell .label{font-size:12px}.hero-cell-value{font-family:var(--mono);color:#fff;margin-top:6px;font-size:14px;line-height:1.4}.hero-cell-value a{color:#fff;text-underline-offset:.2em}.product-main{--min:440px;--gap:clamp(40px, 6vw, 88px);align-items:center;padding-block:clamp(64px,9vw,128px) clamp(40px,5vw,64px)}.product-copy{flex-direction:column;gap:24px;display:flex}.product-name{letter-spacing:-.04em;font-size:clamp(52px,7.4vw,108px);font-weight:600;line-height:1.02}.product-tagline{letter-spacing:-.02em;text-wrap:balance;font-size:clamp(22px,2.2vw,30px);font-weight:500;line-height:1.2}.product-story{max-width:34em;font-size:17px;line-height:1.5}.product-fact,.flow-step{border-top:1px solid var(--on-accent-line)}.product-fact{padding-top:14px}.product-fact strong{letter-spacing:-.02em;font-size:26px;font-weight:600;display:block}.product-fact span{margin-top:4px;font-size:14px;line-height:1.4;display:block}.flow{padding-bottom:clamp(64px,9vw,128px)}.flow-step{padding-top:16px}.flow-step .h3{margin:8px 0}.flow-step p{font-size:16px;line-height:1.45}.code{background:var(--ink);min-width:0;color:var(--soft-dark);margin:0}.code-head{color:#fff;border-bottom:1px solid var(--line-dark);justify-content:space-between;gap:20px;padding:16px clamp(16px,2vw,24px);display:flex}.code pre{font-family:var(--mono);tab-size:2;margin:0;padding:clamp(16px,2vw,24px);font-size:13px;line-height:1.6;overflow-x:auto}.code-comment{color:var(--muted-dark)}.code-string{color:var(--accent)}.code-keyword{color:#fff;font-weight:500}.code-caption{color:#fff;border-top:1px solid var(--line-dark);padding:16px clamp(16px,2vw,24px);font-size:15px;line-height:1.4}.work-intro{--min:420px;--gap:24px;align-items:end}.work-intro p{max-width:32em;font-size:19px;line-height:1.45}.work-grid{--gap:clamp(40px, 4vw, 56px) 32px}.card{color:var(--ink);flex-direction:column;gap:16px;text-decoration:none;display:flex}.card img{aspect-ratio:16/10;object-fit:cover;background:#ececef;width:100%}.card h3{letter-spacing:-.03em;font-size:clamp(24px,2.2vw,30px);font-weight:600;line-height:1.08}.card-big h3{font-size:clamp(28px,3vw,40px)}.card .label:last-child{border-top:1px solid var(--line-light);padding-top:12px}.card:hover h3,.next-project:hover h3{text-underline-offset:.12em;text-decoration:underline;text-decoration-thickness:2px}.row{--min:250px;--gap:12px 32px;padding-block:24px}.row-dark{border-top:1px solid var(--line-dark)}.row-light{border-top:1px solid var(--line-light);align-items:baseline}.result-name{letter-spacing:-.01em;color:#fff;text-underline-offset:.2em;align-items:flex-start;min-height:44px;font-size:18px;font-weight:600;display:inline-flex}.result-after{font-weight:500}.results-head{--min:250px;--gap:12px 32px;padding-bottom:14px}.capability-title{letter-spacing:-.03em;font-size:clamp(24px,2.2vw,30px);font-weight:600;line-height:1.1}.capability-link{align-items:center;min-height:44px;display:inline-flex}.principle,.tool-group,.case-module{border-top:2px solid var(--ink)}.principle{padding-top:20px}.principle p{margin-top:12px}.engage{padding:clamp(28px,3vw,44px)}.engage h3{letter-spacing:-.03em;font-size:clamp(26px,2.6vw,36px);font-weight:600}.engage p{margin-top:14px}.step{border-top:1px solid var(--line-dark);padding-top:18px}.step-number{letter-spacing:-.04em;font-size:clamp(40px,4vw,56px);font-weight:600;line-height:1}.step .h3{margin:16px 0 8px}.tool-group{padding-top:16px}.tool-group p{margin-top:12px;font-size:18px;line-height:1.5}.about{--min:380px;--gap:clamp(40px, 6vw, 96px);align-items:center}.about img{width:100%;max-width:520px;height:auto}.about-copy{flex-direction:column;gap:20px;max-width:38em;display:flex}.about-copy .h2{font-size:clamp(34px,4.2vw,60px)}.about-copy p{font-size:19px;line-height:1.5}.footer-main{gap:clamp(32px,4vw,56px)}.footer-intro{--min:420px;--gap:40px;align-items:end}.footer-title{font-size:clamp(44px,7vw,104px)}.footer-copy{flex-direction:column;gap:20px;display:flex}.footer-copy>p{font-size:19px;line-height:1.45}.footer-checks{flex-direction:column;gap:10px;display:flex}.footer-checks li{align-items:center;gap:12px;font-size:17px;display:flex}.marker{background:var(--accent);flex:none;width:10px;height:10px;display:block}.footer-bottom{border-top:1px solid var(--line-dark);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:24px;display:flex}.footer-bottom img{width:auto;height:36px}.case-hero{flex-direction:column;gap:24px;padding-block:clamp(32px,4vw,56px) clamp(40px,5vw,72px);display:flex}.case-back{min-height:44px;color:var(--muted-dark);align-self:flex-start;align-items:center;text-decoration:none;display:inline-flex}.case-title{letter-spacing:-.05em;text-wrap:balance;font-size:clamp(48px,8vw,116px);font-weight:600;line-height:.98}.case-description{max-width:36em;font-size:clamp(19px,1.8vw,24px);line-height:1.35}.case-meta{--min:240px;--gap:20px;margin-top:16px}.case-meta>div{border-top:1px solid var(--line-dark);padding-top:14px}.case-meta-value{margin-top:8px;font-size:16px;line-height:1.4}.case-visual{background:linear-gradient(var(--ink) 50%, #fff 50%)}.case-visual img{aspect-ratio:21/10;object-fit:cover;background:#1c1c1f;width:100%}.case-code{background:var(--accent);padding:clamp(20px,5vw,72px)}.case-split{--min:400px;--gap:clamp(24px, 6vw, 96px);align-items:start}.case-column{flex-direction:column;gap:24px;display:flex}.case-column>p:nth-child(2){font-size:18px;line-height:1.5}.case-list{flex-direction:column;gap:12px;display:flex}.case-list li{gap:12px;font-size:17px;line-height:1.45;display:flex}.case-list .marker{width:8px;height:8px;margin-top:9px}.case-modules{--min:320px;--gap:48px 40px}.case-module{padding-top:18px}.case-module .h3{margin:8px 0 16px;font-size:22px}.case-scope{--min:280px;--gap:40px 32px}.case-scope>div{border-top:1px solid var(--line-dark);padding-top:18px}.case-scope-value{letter-spacing:-.04em;font-size:clamp(48px,5vw,72px);font-weight:600;line-height:1}.case-scope-label{letter-spacing:-.01em;margin-top:12px;font-size:17px;font-weight:500;line-height:1.25}.case-scope-label-only{letter-spacing:-.01em;font-size:22px;font-weight:600;line-height:1.25}.case-scope-note{margin-top:6px;font-size:15px;line-height:1.45}.case-outcome{flex-direction:column;gap:24px;display:flex}.case-outcome-lead{letter-spacing:-.035em;text-wrap:balance;max-width:22em;font-size:clamp(32px,4.4vw,64px);font-weight:600;line-height:1.05}.case-outcome-body{max-width:40em;font-size:19px;line-height:1.5}.next-project{color:var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px 32px;padding-block:clamp(40px,5vw,72px);text-decoration:none;display:flex}.next-project h3{letter-spacing:-.045em;font-size:clamp(36px,6vw,88px);font-weight:600;line-height:1}@media (max-width:520px){.hero{min-height:calc(100svh - 140px)}.hero-main{gap:40px}}
