:root{--paper:#faf7f2;--ink:#1b1714;--mute:#6d665e;--rule:#e5dfd6;--soft:#f2ede5;--trace:#8b8378;--acc:var(--ink);--on-acc:var(--paper);--lbl:var(--mute);--pad:1.25rem;color-scheme:light}[data-theme=dark]{--paper:#161311;--ink:#f2ede6;--mute:#a59d92;--rule:#2d2823;--soft:#1d1915;--trace:#c4baab;color-scheme:dark}[data-theme=dark] .band{opacity:.8}[data-hue=rust]{--acc:#a83b12;--on-acc:#fff;--lbl:#a83b12}[data-hue=rust][data-theme=dark]{--acc:#e8875a;--on-acc:#161311;--lbl:#e8875a}[data-hue=green]{--acc:#206b4e;--on-acc:#fff;--lbl:#206b4e}[data-hue=green][data-theme=dark]{--acc:#5ec394;--on-acc:#161311;--lbl:#5ec394}[data-hue=red]{--acc:#b2232b;--on-acc:#fff;--lbl:#b2232b}[data-hue=red][data-theme=dark]{--acc:#ee7676;--on-acc:#161311;--lbl:#ee7676}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}html,body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Manrope,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.55}body{overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3{letter-spacing:-.02em;text-wrap:balance;margin:0;font-weight:600;line-height:1.15}p{margin:0}.mute{color:var(--mute)}:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.mark.l{display:block}.mark.d,[data-theme=dark] .mark.l{display:none}[data-theme=dark] .mark.d{display:block}.band{width:100%;height:56px;color:var(--trace);opacity:.65;display:block}.band path{fill:none;stroke:currentColor;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round}.band circle{fill:var(--paper);stroke:currentColor;stroke-width:1px}.nav{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 0;display:flex}.brand{color:var(--ink);align-items:center;gap:.55rem;text-decoration:none;display:inline-flex}.brand .mark{width:auto;height:26px}.brand .name{letter-spacing:-.01em;white-space:nowrap;font-size:15px;font-weight:600}.nav .right{align-items:center;gap:1rem;font-size:15px;font-weight:500;display:flex}.nav .links{gap:1.4rem;display:none}.nav .links a{text-decoration:none}.nav .links a:hover{text-underline-offset:5px;text-decoration:underline;text-decoration-color:var(--acc)}.nav .contact{text-decoration:none}.theme{font:inherit;border:1px solid var(--rule);color:var(--mute);cursor:pointer;background:0 0;border-radius:2px;min-height:32px;padding:.3rem .55rem;font-size:13px}.theme:hover{color:var(--ink)}.hero{padding:2.75rem 0 2.5rem}.hero h1{max-width:22ch;font-size:clamp(1.8rem,5vw + .6rem,3.2rem)}.hero .lede{color:var(--mute);max-width:54ch;margin:1.1rem 0 1.6rem;font-size:1.1rem}.hero .lede b{color:var(--ink);font-weight:600}.hero .from{color:var(--mute);margin-top:1.1rem;font-size:14px}.btn{background:var(--acc);width:100%;min-height:48px;color:var(--on-acc);cursor:pointer;border:0;border-radius:2px;justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1.35rem;font-family:inherit;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{opacity:.88}.btn:active{transform:translateY(1px)}.btn[disabled]{opacity:.6;cursor:default}.teaser{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:1.4rem 0 1.5rem}.teaser h4{letter-spacing:.08em;text-transform:uppercase;color:var(--lbl);margin:0 0 .6rem;font-size:12px;font-weight:600}.teaser .promise{letter-spacing:-.015em;text-wrap:balance;max-width:30ch;font-size:1.35rem;font-weight:500;line-height:1.3}.teaser .promise b{color:var(--acc);font-weight:600}.teaser .safe{color:var(--mute);max-width:56ch;margin:.8rem 0 .9rem}.teaser a{color:var(--acc);font-size:15px;font-weight:600;text-decoration:none}.teaser a:hover{text-underline-offset:4px;text-decoration:underline}.fig{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--acc);white-space:nowrap;font-size:2rem;font-weight:600;line-height:1}section.s{padding:3rem 0}.s h2{margin-bottom:.6rem;font-size:clamp(1.6rem,4.5vw,2.3rem)}#work h2{font-size:clamp(1.9rem,5vw,2.8rem)}.s .intro{color:var(--mute);max-width:60ch;margin:0 0 1.8rem}#work .intro{margin-bottom:2rem;font-size:1.1rem}.case:last-child{margin-bottom:0}.case{border:1px solid var(--rule);border-radius:2px;margin-bottom:1.75rem}.case .head{padding:1.2rem var(--pad);border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1.5rem;display:flex}.case .head h3{font-size:1.4rem}.case .head span{color:var(--mute);font-size:14px}.case h4{letter-spacing:.08em;text-transform:uppercase;color:var(--lbl);margin:0 0 .6rem;font-size:12px;font-weight:600}.case p{font-size:1.02rem}.case .top>div{padding:1.25rem var(--pad);border-bottom:1px solid var(--rule)}.case .top>div:last-child{border-bottom:0}.pipe{--pipe-bg:color-mix(in srgb,var(--soft) 55%,var(--paper));padding:1.25rem var(--pad) 1.6rem;border-top:1px solid var(--rule);background:var(--pipe-bg)}.pipe>h4{margin-bottom:.7rem}.pipe .lead{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.6rem 2rem;margin-bottom:1.3rem;display:flex}.pipe .lead p{max-width:52ch;color:var(--ink);font-size:1.05rem}.pipe .legend{color:var(--mute);white-space:nowrap;gap:1.2rem;font-size:13px;display:flex}.pipe .legend i{border:1px solid var(--trace);vertical-align:-1px;background:var(--pipe-bg);border-radius:50%;width:9px;height:9px;margin-right:.4rem;display:inline-block}.pipe .legend i.f{background:var(--acc);border-color:var(--acc)}.pipe ol{margin:0;padding:0 0 0 30px;list-style:none;position:relative}.pipe li{color:var(--mute);padding:0 0 1.1rem 26px;position:relative}.pipe li:last-child{padding-bottom:0}.pipe .dot{border:1px solid var(--trace);background:var(--pipe-bg);z-index:1;border-radius:50%;width:12px;height:12px;position:absolute;top:6px;left:0}.pipe li.you .dot{background:var(--acc);border-color:var(--acc)}.pipe svg.pt{pointer-events:none;color:var(--trace);opacity:.95;position:absolute;top:0;left:0;overflow:visible}.pt path{fill:none;stroke:currentColor;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round}.pt circle{fill:var(--pipe-bg);stroke:currentColor;stroke-width:1px}.pipe b{color:var(--ink);margin-bottom:.25rem;font-size:1.08rem;font-weight:600;display:block}.pipe li p{font-size:15.5px;line-height:1.5}.impact{border-top:1px solid var(--rule)}.impact>div{padding:.9rem var(--pad);border-bottom:1px solid var(--rule);grid-template-columns:6.5rem 1fr;align-items:baseline;gap:1rem;display:grid}.impact>div:last-child{border-bottom:0}.impact .lbl{color:var(--mute);font-size:15px;line-height:1.4}.case .foot{padding:1rem var(--pad);border-top:1px solid var(--rule);color:var(--mute);font-size:14.5px}.rows div{border-top:1px solid var(--rule);padding:.9rem 0}.rows b{font-weight:600;display:block}.rows span{color:var(--mute);font-size:15px}.steps svg{width:100%;height:auto;display:none;overflow:visible}.steps svg path{fill:none;stroke:var(--trace);stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;opacity:.8}.steps svg circle{fill:var(--paper);stroke:var(--trace);stroke-width:1px;opacity:.8}.steps svg circle.big{stroke:var(--acc);stroke-width:1.5px;opacity:1}.steps .cols{gap:1.4rem;display:grid}.steps h3{margin-bottom:.3rem;font-size:1.1rem}.steps p{color:var(--mute)}.steps .n{color:var(--lbl);letter-spacing:.06em;margin-bottom:.3rem;font-size:13px;font-weight:600}.pillars{border:1px solid var(--rule);padding:1.25rem var(--pad) 1.4rem;border-radius:2px;margin-top:2.4rem}.pillars>h3{letter-spacing:.08em;text-transform:uppercase;color:var(--lbl);margin-bottom:1rem;font-size:12px;font-weight:600}.pillars h4{margin:0 0 .3rem;font-size:1.05rem;font-weight:600}.pillars p{color:var(--mute);font-size:15px}.qa{gap:1.4rem;display:grid}.qa h3{margin-bottom:.3rem;font-size:1.05rem}.qa p{color:var(--mute)}.about{align-items:start;gap:1.5rem;display:grid}.about .photo{aspect-ratio:4/5;background:var(--soft);border:1px solid var(--rule);width:160px;color:var(--mute);border-radius:2px;place-items:center;font-size:13px;display:grid;overflow:hidden}.about .photo img{object-fit:cover;width:100%;height:100%}.about p{max-width:60ch;margin:0 0 1rem}.about h3{margin:1.6rem 0 .6rem;font-size:1.15rem}.ask{background:var(--soft);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.ask .grid{align-items:start;gap:1.75rem;display:grid}.ask .grid>div>p{color:var(--mute);max-width:46ch}.ask p b{color:var(--ink);font-weight:600}form{gap:1rem;display:grid}label{font-size:14px;font-weight:600;display:block}.req{color:var(--acc)}.fe{color:var(--acc);margin-top:.35rem;font-size:13px;display:none}.field.bad .fe{display:block}.field.bad input,.field.bad textarea{border-color:var(--acc)}input,textarea{font:inherit;border:1px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:2px;width:100%;margin-top:.35rem;padding:.75rem .8rem;font-size:16px}input:focus,textarea:focus{outline:2px solid var(--acc);outline-offset:1px;border-color:#0000}textarea{resize:vertical;min-height:110px}form small{color:var(--mute);font-size:13px;line-height:1.5}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.sent{border:1px solid var(--rule);background:var(--paper);border-radius:2px;padding:1.25rem;display:none}.sent h3{margin-bottom:.4rem;font-size:1.1rem}.sent p{color:var(--mute)}.done form{display:none}.done .sent{display:block}.err{color:var(--acc);font-size:14px;display:none}.error .err{display:block}footer{color:var(--mute);gap:1rem;padding:2rem 0 2.5rem;font-size:15px;display:grid}footer .brand .mark{height:22px}footer a{color:var(--acc);overflow-wrap:anywhere;text-decoration:none}footer .fine{border-top:1px solid var(--rule);padding-top:1rem;font-size:13px}.no-motion .band path,.no-motion .pt path{stroke-dasharray:none!important;stroke-dashoffset:0!important}@media (width>=840px){html,body{font-size:17px}:root{--pad:1.75rem}.wrap{padding:0 40px}.band{height:64px}.nav{padding:1.1rem 0}.brand .mark{height:30px}.brand .name{font-size:16px}.nav .links{display:flex}.nav .contact{display:none}.hero{padding:5rem 0 4.5rem}.hero .lede{margin:1.3rem 0 1.9rem;font-size:1.2rem}.btn{width:auto}.teaser{grid-template-columns:1fr 1fr;align-items:start;gap:1rem 3rem;padding:2rem 0 2.1rem;display:grid}.teaser h4{grid-column:1/-1;margin-bottom:.2rem}.teaser .promise{font-size:1.7rem}.teaser .safe{margin:.15rem 0 .7rem}.fig{font-size:2.4rem}section.s{padding:4.5rem 0}section.s#work{padding:5.5rem 0}#work .intro{margin-bottom:2.6rem;font-size:1.15rem}.s .intro{margin-bottom:2.2rem}.case{margin-bottom:2.5rem}.case .head{padding:1.6rem var(--pad)}.case .head h3{font-size:1.6rem}.case .head span{font-size:15px}.case p{font-size:1.05rem}.case .top{grid-template-columns:1fr 1fr;display:grid}.case .top>div{padding:var(--pad);border-bottom:0;border-right:1px solid var(--rule)}.case .top>div:last-child{border-right:0}.pipe{padding:1.75rem var(--pad) 2rem}.pipe .lead{margin-bottom:1.6rem}.pipe ol{grid-auto-columns:1fr;grid-auto-flow:column;gap:0 1.25rem;padding:0;display:grid}.pipe li{padding:46px 0 0}.pipe .dot{top:20px}.impact{grid-template-columns:repeat(3,1fr);display:grid}.impact>div{padding:1.5rem var(--pad);border-bottom:0;border-right:1px solid var(--rule);display:block}.impact>div:last-child{border-right:0}.impact .fig{margin-bottom:.5rem}.impact .lbl{max-width:26ch}.case .foot{padding:1.1rem var(--pad);font-size:15px}.rows{grid-template-columns:1fr 1fr;gap:0 3rem;display:grid}.rows div{padding:1rem 0}.steps svg{display:block}.steps .cols{grid-template-columns:repeat(3,1fr);gap:40px;margin-top:.6rem}.pillars{padding:1.6rem var(--pad) 1.8rem;margin-top:3rem}.pillars .cols{margin-top:0}.qa{grid-template-columns:1fr 1fr;gap:2rem 3rem}.about{grid-template-columns:220px 1fr;gap:2.5rem}.about .photo{width:auto}.ask .grid{grid-template-columns:1fr 1fr;gap:3rem}.sent{padding:1.5rem}footer{grid-template-columns:1fr auto;align-items:center;gap:1rem 2rem;padding:2.5rem 0 3rem}footer .brand .mark{height:24px}footer .fine{grid-column:1/-1}}
