@charset "UTF-8";
:root{--ink:#080909;--surface:#111313;--paper:#efefeb;--text:#f1f1ee;--muted:#a7adaa;--line:#303532;--silver:#b5bbb7}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--ink);color:var(--text);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible{outline:2px solid currentColor;outline-offset:7px}
img{display:block;max-width:100%}
::selection{background:#cedbd0;color:#080909}
.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}
.skip{position:fixed;z-index:30;top:12px;left:20px;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);background:white;color:black}
.skip:focus{width:auto;height:auto;clip-path:none;padding:14px}
.header{height:98px;border-bottom:1px solid #242826;background:var(--ink)}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.wordmark{display:inline-flex;align-items:baseline;gap:9px;font-size:24px;font-weight:800;letter-spacing:1.8px}
.wordmark span{font-size:10px;letter-spacing:3px;color:var(--silver);font-weight:500}
nav{display:flex;gap:36px;font-size:13px;color:#bcc0bd}
nav a{padding:12px 0}
nav a:hover,.text-link:hover,.footer-bottom a:hover{color:white;text-decoration:underline;text-underline-offset:6px}
.header-contact{font-size:13px;border:1px solid #454b47;border-radius:3px;padding:13px 18px;display:flex;gap:27px}
.header-contact:hover{background:#242825;border-color:#a7adaa}
.hero{overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:center;padding-block:76px 70px}
.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.8px;line-height:1.6;margin:0 0 28px;text-transform:uppercase}
.signal{display:inline-block;width:6px;height:6px;border-radius:50%;background:#d7dfd7;margin-right:9px;vertical-align:1px}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(62px,6.1vw,89px);letter-spacing:-4.8px;font-weight:500;line-height:1.01;margin-bottom:28px}
h1 span{color:var(--silver)}
.hero-description{max-width:440px;color:var(--muted);font-size:16px;line-height:1.75;margin-bottom:31px}
.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;font-size:13px;font-weight:600;padding:18px 21px;border-radius:2px;transition:background .2s,transform .2s}
.button-light{background:var(--paper);color:var(--ink)}
.button-light:hover{background:white;transform:translateY(-2px)}
.button span,.text-link span{font-size:18px;font-weight:400}
.text-link{font-size:12px;display:inline-flex;align-items:center;gap:15px}
.hero-art{background:#000;padding:22px 24px 19px;border:1px solid #242826;align-self:center}
.hero-art img{width:100%;height:auto;margin-block:5px;aspect-ratio:1;object-fit:contain}
.art-top,.art-bottom{display:flex;justify-content:space-between;gap:12px;font-family:monospace;font-size:8px;letter-spacing:1.3px;color:#949b95;line-height:1.6}
.art-top{border-bottom:1px solid #232823;padding-bottom:17px}
.art-bottom{border-top:1px solid #232823;padding-top:17px}
.hero-baseline{border-top:1px solid var(--line);display:flex;align-items:center;gap:23px;padding-block:26px 29px;color:#b1b7b2;font-size:11px}
.hero-baseline i{width:3px;height:3px;background:#707770;border-radius:50%}
.hero-baseline>a{margin-left:auto;font-size:9px;letter-spacing:1.5px;display:flex;align-items:center;gap:36px}
.hero-baseline>a span{font-size:18px}
.light-section{background:var(--paper);color:#161a17}
.expertise{padding-block:104px 54px}
.section-intro{display:grid;grid-template-columns:1fr 2fr;gap:50px;margin-bottom:68px}
.section-intro>.eyebrow{padding-top:9px;color:#626a63}
h2{font-size:clamp(36px,4vw,54px);font-weight:500;line-height:1.08;letter-spacing:-2.3px;margin-bottom:24px}
.section-intro h2 span{color:#777f77}
.section-intro>div>p{font-size:16px;line-height:1.75;max-width:550px;color:#5a635b;margin-bottom:0}
.services{display:grid;grid-template-columns:1fr 1fr;column-gap:64px}
.service{border-top:1px solid #c3c9c2;display:grid;grid-template-columns:22px 1fr 18px;gap:20px;padding:34px 0 42px}
.service-number{font:10px monospace;color:#687168;padding-top:6px}
h3{font-size:22px;line-height:1.2;letter-spacing:-.65px;font-weight:500;margin-bottom:17px}
.service p{font-size:14px;line-height:1.8;color:#586258;margin-bottom:22px}
.service-symbol{font-size:22px;line-height:1}
.tags{padding:0;margin:0;display:flex;list-style:none;gap:8px;flex-wrap:wrap}
.tags li{border:1px solid #c7cdc6;padding:7px 8px;font-size:9px;color:#505c51;border-radius:2px}
.b2b-note{border-top:1px solid #c3c9c2;display:flex;gap:20px;padding-top:27px;color:#5a645b}
.b2b-note span{font-size:24px}
.b2b-note p{font-size:12px;line-height:1.7;max-width:680px;margin:0}
.technology{padding-block:102px 100px}
.tech-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:80px;margin-bottom:58px}
.tech-heading .eyebrow{color:#b1b9b2}
.tech-heading h2{margin:0}
.tech-heading h2 span,.approach h2 span{color:#969f98}
.tech-heading>p{max-width:310px;font-size:14px;line-height:1.8;color:var(--muted);margin:0 0 5px}
.stack-row{display:grid;grid-template-columns:65px 1fr 1.2fr;align-items:center;gap:30px;padding:30px 0;border-top:1px solid var(--line)}
.stack-row:last-child{border-bottom:1px solid var(--line)}
.stack-index{font:11px monospace;color:#8a938c;align-self:start;padding-top:6px}
.stack-row h3{font-size:19px;margin-bottom:9px;letter-spacing:-.3px}
.stack-row p{font-size:12px;line-height:1.5;color:#929d94;margin:0}
.stack-row ul{list-style:none;display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end;margin:0;padding:0}
.stack-row li{border:1px solid #3c443e;padding:10px 13px;font-size:12px;border-radius:3px;color:#d2d8d2;background:#111612}
.approach{background:#121513;padding-block:97px 96px;border-block:1px solid #252d26}
.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.approach .eyebrow{color:#acb7ad}
.approach h2{margin-bottom:0}
.approach-lead{font-size:23px;line-height:1.45;letter-spacing:-.4px;margin-bottom:18px}
.approach-body>p:not(.approach-lead){font-size:14px;line-height:1.85;color:#acb5ad}
.process{margin:35px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:26px 30px}
.process li{display:flex;gap:14px;border-top:1px solid #3b453d;padding-top:19px}
.process li>span{font:10px monospace;color:#9ba99d;padding-top:5px}
.process h3{font-size:16px;margin-bottom:9px;letter-spacing:0}
.process p{font-size:12px;line-height:1.65;color:#a1ada3;margin-bottom:0}
.contact{padding-block:89px}
.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}
.contact .eyebrow{color:#a5b1a7}
.contact h2{margin:0;font-size:clamp(36px,4.2vw,58px)}
.contact .button{flex-shrink:0}
.footer{border-top:1px solid var(--line);padding-top:52px;background:#070808}
.footer-top{display:flex;justify-content:space-between;gap:40px;padding-bottom:48px}
.footer-top>div>p:not(.eyebrow){font-size:12px;line-height:1.8;color:#9ca69e;margin:17px 0 0}
.footer-contact{min-width:320px}
.footer-contact .eyebrow{color:#96a198;margin-bottom:15px;font-size:9px}
.footer-contact>a{display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:18px;letter-spacing:-.2px;line-height:1.7;padding:5px 0}
.footer-contact>a:hover{text-decoration:underline;text-underline-offset:5px}
.footer-contact>a>span{font-size:16px;color:#99a69c}
.legal-heading{border-block:1px solid var(--line);padding:20px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}
.legal-heading h2{font-size:13px;letter-spacing:0;margin:0;font-weight:500}
.legal-heading>span{font:9px monospace;letter-spacing:1px;color:#98a29a}
.legal-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:65px;padding-block:32px}
.legal-grid h3{font-size:12px;font-weight:600;letter-spacing:.1px;margin-bottom:21px;color:#bfc7c0}
dl{margin:0;font-size:11px;line-height:1.6}
dt{color:#909d93;margin-bottom:4px}
dd{margin:0 0 17px;color:#d1d8d2}
address{font-style:normal}
.muted{color:#a2ada5}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:24px 0 30px;border-top:1px solid var(--line);color:#a0aca3;font-size:10px;line-height:1.6}
.footer-bottom>a>span{margin-left:15px}
@media(min-width:1600px){.hero-grid{padding-block:90px}.hero-art{max-width:560px}.hero h1{font-size:92px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero-grid{gap:28px;padding-block:60px}.hero h1{font-size:68px;letter-spacing:-3.5px}.hero-description{font-size:15px}.hero-art{padding:20px}.hero-actions{gap:20px}.services{column-gap:35px}.section-intro{grid-template-columns:1fr 2fr;gap:30px}.stack-row{grid-template-columns:30px 1fr 1.1fr;gap:25px}.approach-grid{gap:48px}.legal-grid{gap:35px}}
@media(max-width:800px){.header{height:78px}nav{gap:20px;font-size:12px}.header-contact{gap:15px}.wordmark{font-size:21px}.hero-grid{grid-template-columns:1fr 1fr;gap:18px}.hero h1{font-size:55px;letter-spacing:-3px}.hero .eyebrow{font-size:8px;letter-spacing:1.3px}.hero-description{font-size:14px}.hero-art{padding:12px}.art-top,.art-bottom{font-size:6px;letter-spacing:.6px}.hero-baseline{gap:14px;font-size:9px}.hero-baseline>a{font-size:8px;gap:12px}.section-intro{grid-template-columns:1fr;gap:0;margin-bottom:45px}.section-intro .eyebrow{margin-bottom:24px}.section-intro>div{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;align-items:end}.section-intro h2{margin:0;font-size:42px}.section-intro>div>p{font-size:14px}.service{grid-template-columns:17px 1fr;gap:14px}.service-symbol{display:none}.service h3{font-size:20px}.tech-heading{gap:30px}.tech-heading h2{font-size:39px}.tech-heading>p{max-width:250px}.stack-row{grid-template-columns:28px 1fr 1fr;gap:20px}.stack-row li{font-size:11px;padding:8px}.approach h2{font-size:42px}.approach-lead{font-size:20px}.process{grid-template-columns:1fr}.contact h2{font-size:39px}.legal-grid{gap:25px;grid-template-columns:1fr 1fr}.legal-grid>div:last-child{grid-column:1/-1}.legal-grid>div:last-child dl{display:grid;grid-template-columns:90px 1fr 90px 1fr;align-items:start;gap:10px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.header{height:74px}.header-inner{gap:15px}nav{display:none}.wordmark{font-size:20px;gap:7px}.wordmark span{font-size:8px;letter-spacing:2px}.header-contact{font-size:11px;padding:10px 12px;gap:15px}.hero-grid{grid-template-columns:1fr;gap:40px;padding-block:43px 35px}.hero .eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:24px}.hero h1{font-size:clamp(57px,14.8vw,80px);letter-spacing:-3px;line-height:1.02;margin-bottom:24px}.hero-description{font-size:15px;line-height:1.75;max-width:440px;margin-bottom:26px}.hero-actions{gap:23px}.button{padding:17px 18px;font-size:12px;gap:25px}.text-link{font-size:11px;gap:10px}.hero-art{padding:19px;max-width:430px;justify-self:center;width:100%}.art-top,.art-bottom{font-size:7px;letter-spacing:.8px}.hero-baseline{flex-wrap:wrap;column-gap:13px;row-gap:19px;padding-block:23px;font-size:9px}.hero-baseline>a{flex-basis:100%;margin:0;justify-content:space-between;font-size:8px;border-top:1px solid #242b26;padding-top:17px}.expertise{padding-block:62px 35px}.eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:22px}.section-intro{margin-bottom:36px}.section-intro>div{display:block}.section-intro h2{font-size:43px;letter-spacing:-2px;margin-bottom:24px}.section-intro>div>p{font-size:15px}.services{grid-template-columns:1fr}.service{grid-template-columns:20px 1fr 15px;gap:14px;padding-block:28px 31px}.service-symbol{display:block;font-size:20px}.service h3{font-size:22px}.service p{font-size:14px}.tags li{font-size:9px}.b2b-note{gap:15px;padding-top:23px}.b2b-note p{font-size:11px}.technology{padding-block:61px}.tech-heading{display:block;margin-bottom:34px}.tech-heading h2{font-size:40px;letter-spacing:-1.9px;margin-bottom:24px}.tech-heading>p{max-width:100%;font-size:14px}.stack-row{grid-template-columns:25px 1fr;padding-block:25px;gap:18px}.stack-row ul{grid-column:2;justify-content:flex-start;margin-top:-4px}.stack-row h3{font-size:20px}.stack-row p{font-size:12px}.stack-row li{font-size:11px;padding:9px 11px}.approach{padding-block:61px}.approach-grid{grid-template-columns:1fr;gap:33px}.approach h2{font-size:45px;letter-spacing:-2px}.approach h2 br:last-child{display:none}.approach-lead{font-size:23px;max-width:430px}.approach-body>p:not(.approach-lead){font-size:14px}.process{grid-template-columns:1fr 1fr;gap:25px 20px}.process li{gap:10px}.process p{font-size:12px}.contact{padding-block:61px}.contact-inner{display:block}.contact h2{font-size:42px;letter-spacing:-2px;margin-bottom:31px}.footer{padding-top:38px}.footer-top{display:block;padding-bottom:30px}.footer-top>div>p:not(.eyebrow){margin-top:13px}.footer-contact{min-width:0;margin-top:30px}.footer-contact>a{font-size:18px;max-width:350px}.legal-heading{align-items:flex-start;flex-direction:column;gap:9px;padding-block:19px}.legal-heading h2{font-size:13px}.legal-grid{grid-template-columns:1fr;gap:17px;padding-block:29px 10px}.legal-grid>div:last-child{grid-column:auto}.legal-grid>div:last-child dl{display:block}.legal-grid h3{font-size:13px;margin-bottom:17px}dl{font-size:12px}.footer-bottom{align-items:flex-start;font-size:10px;gap:25px}.footer-bottom>a{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button-light:hover{transform:none}}
