@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono.woff2)format("woff2")}:root{--paper:#fafaf7;--paper-2:#f3f1ea;--paper-3:#ece9e1;--ink:#0e0e10;--rule:#dcdad3;--rule-soft:#ebe9e2;--muted:#65645f;--accent:oklch(45% .09 250);--accent-soft:oklch(45% .09 250/.1);--gutter:64px;--maxw:1320px}*{box-sizing:border-box}html{scroll-behavior:smooth}.skip{z-index:30;background:var(--ink);color:var(--paper);padding:11px 18px;font-family:JetBrains Mono,monospace;font-size:12px;transition:top .15s;position:absolute;top:-48px;left:8px}.skip:focus{top:8px}body{background:var(--paper);color:var(--ink);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;font-feature-settings:"ss01","cv11";margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif}a{color:inherit;text-decoration:none}em{font-style:italic}.mono{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace}.num{font-variant-numeric:tabular-nums}.wrap{max-width:var(--maxw);padding-left:var(--gutter);padding-right:var(--gutter);margin:0 auto}.mark{letter-spacing:-.025em;white-space:nowrap;align-items:baseline;font-weight:600;display:inline-flex}.mark .slash{color:var(--accent);margin:0 .06em;font-weight:400}.mark .tail{color:var(--muted);font-weight:400}.mark.on-dark .tail{color:#ffffff8c}.dslash{color:var(--accent);padding:0 .18em;font-family:JetBrains Mono,monospace;font-weight:500}.feature .dslash{color:oklch(74% .1 250)}.label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px}.section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:baseline;gap:18px;margin:0 0 44px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:400;display:flex}.section-label .dot{background:var(--accent);flex:0 0 8px;width:8px;height:8px;transform:translateY(1px)}.section-label .num-tag{color:var(--ink)}header.nav{z-index:20;background:color-mix(in oklab, var(--paper) 88%, transparent);backdrop-filter:saturate(1.1)blur(8px);border-bottom:1px solid var(--rule);position:sticky;top:0}header.nav .wrap{justify-content:space-between;align-items:center;padding-top:22px;padding-bottom:22px;display:flex}header.nav .mark{font-size:19px}header.nav nav{align-items:center;gap:34px;display:flex}header.nav nav a.link{color:var(--muted);font-size:13px;transition:color .15s}header.nav nav a.link:hover{color:var(--ink)}.btn{letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;padding:11px 18px;font-family:JetBrains Mono,monospace;font-size:12px;transition:transform .15s,background .15s,color .15s;display:inline-flex}.btn-solid{background:var(--ink);color:var(--paper)}.btn-solid:hover{transform:translateY(-1px)}.btn-ghost{border:1px solid var(--ink);color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}section{border-bottom:1px solid var(--rule)}.hero .wrap{padding-top:116px;padding-bottom:0}.hero h1{letter-spacing:-.03em;max-width:14ch;margin:0;font-size:clamp(44px,6vw,88px);font-weight:500;line-height:.98}.hero h1 em{color:var(--accent);font-weight:400}.hero .staccato{color:#2a2a2c;letter-spacing:-.01em;max-width:720px;margin:40px 0 0;font-size:clamp(17px,1.7vw,22px);line-height:1.45}.hero .staccato b{color:var(--ink);font-weight:600}.hero .cta-row{flex-wrap:wrap;align-items:center;gap:12px;margin:44px 0 88px;display:flex}.hero .figure{border:1px solid var(--rule);border-top:1px solid var(--rule);height:380px}.ph{background:repeating-linear-gradient(45deg, var(--paper-2) 0, var(--paper-2) 11px, var(--paper-3) 11px, var(--paper-3) 22px);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.ph .tagph{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--paper);border:1px solid var(--rule);padding:7px 12px;font-family:JetBrains Mono,monospace;font-size:11px}.figure{overflow:hidden}.figure img,.case .thumb img{object-fit:cover;width:100%;height:100%;display:block}.case .thumb{overflow:hidden}.shot{filter:grayscale(.5)contrast(1.04)brightness(1.02);transition:filter .45s,transform .6s}.case:hover .thumb .shot{filter:grayscale(0);transform:scale(1.03)}.intro .wrap{padding-top:80px;padding-bottom:80px}.intro p{letter-spacing:-.012em;max-width:24ch;margin:0;font-size:clamp(20px,2.1vw,27px);font-weight:500;line-height:1.5}.intro .grid{grid-template-columns:.9fr 1.1fr;align-items:start;gap:64px;display:grid}.intro .body{color:#2a2a2c;max-width:56ch;font-size:17px;line-height:1.62}.intro .body p{max-width:none;margin:0 0 16px;font-size:17px;font-weight:400}.intro .body p:last-child{margin-bottom:0}.intro .body em{font-style:italic}.services .wrap{padding-top:84px;padding-bottom:84px}.feature{background:var(--ink);color:var(--paper);grid-template-columns:1fr 1fr;align-items:start;gap:48px;padding:56px;display:grid}.feature .ribbon{letter-spacing:.1em;text-transform:uppercase;color:var(--paper);background:var(--accent);padding:6px 12px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-block}.feature h3{letter-spacing:-.025em;margin:22px 0 0;font-size:clamp(30px,3.4vw,44px);font-weight:500;line-height:1.02}.feature h3 em{color:oklch(74% .1 250);font-weight:400}.feature p{color:#ffffffb8;max-width:52ch;margin:0;font-size:16px;line-height:1.6}.feature ul{margin:0 0 30px;padding:0;list-style:none}.feature ul li{color:#ffffffe6;gap:12px;font-size:16px;line-height:1.9;display:flex}.feature ul li .arr{color:var(--accent)}.feature .col-right{flex-direction:column;display:flex}.feature .btn-solid{background:var(--paper);color:var(--ink);align-self:flex-start}.svc-grid{border:1px solid var(--rule);border-top:none;grid-template-columns:repeat(3,1fr);gap:0;display:grid}.svc{border-right:1px solid var(--rule);padding:40px}.svc:last-child{border-right:none}.svc .k{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:12px}.svc h3{letter-spacing:-.02em;margin:14px 0;font-size:27px;font-weight:500}.svc p{color:#2a2a2c;text-wrap:pretty;margin:0 0 22px;font-size:15px;line-height:1.6}.svc ul{margin:0;padding:0;list-style:none}.svc ul li{color:#2a2a2c;gap:10px;font-size:14px;line-height:1.85;display:flex}.svc ul li .arr{color:var(--accent)}.work .wrap{padding-top:84px;padding-bottom:84px}.work-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.case{flex-direction:column;display:flex}.case .thumb{border:1px solid var(--rule);height:260px}.case .meta{padding:22px 2px 0}.case .ctx{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-family:JetBrains Mono,monospace;font-size:11px}.case h3{letter-spacing:-.018em;margin:12px 0 10px;font-size:22px;font-weight:500}.case p{color:#2a2a2c;text-wrap:pretty;margin:0;font-size:15px;line-height:1.55}.trusted .wrap{padding-top:80px;padding-bottom:80px}.client-grid{border-top:1px solid var(--rule);border-left:1px solid var(--rule);grid-template-columns:repeat(3,1fr);display:grid}.client-grid .c{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);letter-spacing:-.012em;align-items:center;min-height:88px;padding:30px 28px;font-size:19px;font-weight:500;display:flex}.about .wrap{padding-top:84px;padding-bottom:84px}.about .grid{grid-template-columns:1fr 1fr;gap:56px;display:grid}.about p{color:#1f1f22;text-wrap:pretty;margin:0 0 18px;font-size:17px;line-height:1.62}.about p:last-child{margin-bottom:0}.about p em{font-style:italic}.contact{background:var(--paper-2);border-bottom:none}.contact .wrap{padding-top:96px;padding-bottom:96px}.contact .grid{grid-template-columns:1fr;align-items:center;gap:56px;display:grid}.contact h2{letter-spacing:-.025em;margin:0;font-size:clamp(32px,3.6vw,48px);font-weight:500;line-height:1.04}.contact h2 em{color:var(--accent);font-style:italic}.contact p{color:#2a2a2c;max-width:60ch;margin:22px 0 32px;font-size:18px;line-height:1.55}.contact .cta-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}footer.site{background:var(--ink);color:var(--paper)}footer.site .wrap{grid-template-columns:1fr auto;align-items:end;gap:40px;padding-top:56px;padding-bottom:56px;display:grid}footer.site .mark{color:var(--paper);font-size:22px}footer.site .fnote{color:#fff9;max-width:44ch;margin:18px 0 0;font-size:14px;line-height:1.7}footer.site .right{text-align:right;letter-spacing:.04em;color:#fff9;font-family:JetBrains Mono,monospace;font-size:12px;line-height:2}footer.site .right a:hover{color:var(--paper)}.legal .wrap{padding-top:84px;padding-bottom:96px}.legal h1{letter-spacing:-.028em;margin:0 0 18px;font-size:clamp(36px,4.4vw,60px);font-weight:500;line-height:1}.legal .lede{color:#2a2a2c;max-width:64ch;margin:0;font-size:17px;line-height:1.62}.legal .prose{max-width:76ch;margin-top:56px}.legal .prose h2{letter-spacing:-.018em;margin:52px 0 16px;font-size:24px;font-weight:500}.legal .prose h2:first-child{margin-top:0}.legal .prose p,.legal .prose li{color:#1f1f22;font-size:16px;line-height:1.68}.legal .prose p{text-wrap:pretty;margin:0 0 14px}.legal .prose table{border-collapse:collapse;width:100%;margin:18px 0}.legal .prose th{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:left;border-bottom:1px solid var(--rule);padding:10px 18px 10px 0;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:400}.legal .prose td{color:#1f1f22;vertical-align:top;border-bottom:1px solid var(--rule-soft);padding:12px 18px 12px 0;font-size:15px;line-height:1.6}.legal .prose td:first-child{white-space:nowrap;padding-right:28px;font-weight:600}.legal .version{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 26px;font-family:JetBrains Mono,monospace;font-size:12px}.legal .version:before{content:"";background:var(--accent);width:8px;height:8px;margin-right:12px;display:inline-block}.legal .pdf-link{margin:28px 0 0}.print-head{display:none}.print-frame,.print-frame>thead,.print-frame>tbody,.print-frame>tfoot,.print-frame>*>tr,.print-frame>*>tr>td{display:block}.print-frame>thead,.print-frame>tfoot{display:none}@media print{@page{size:A4;margin:0}header.nav,footer.site,.skip,.legal .section-label,.legal .pdf-link{display:none}html,body{background:var(--paper);print-color-adjust:exact}body{color:var(--ink)}section{border-bottom:none}.legal .wrap{max-width:none;padding:0 16mm}.print-frame{border-collapse:collapse;width:100%;display:table}.print-frame>thead{display:table-header-group}.print-frame>tbody{display:table-row-group}.print-frame>tfoot{display:table-footer-group}.print-frame>*>tr{display:table-row}.print-frame>*>tr>td{display:table-cell}.print-frame>thead td{height:16mm}.print-frame>tfoot td{vertical-align:middle;text-align:center;letter-spacing:.08em;text-transform:uppercase;color:#777;height:16mm;font-family:JetBrains Mono,monospace;font-size:8px}.print-head{margin-bottom:40px;display:block}.print-head .mark{font-size:20px}.legal h1{margin-bottom:12px;font-size:28px}.legal .version{margin-bottom:18px;font-size:9px}.legal .lede{max-width:none;font-size:12px}.legal .prose{max-width:none;margin-top:28px}.legal .prose p,.legal .prose li{font-size:11px;line-height:1.55}.legal .prose h2{break-after:avoid;margin:24px 0 8px;font-size:15px}.legal .prose td{padding:6px 12px 6px 0;font-size:11px}.legal .prose tr{break-inside:avoid}}@media (width<=1024px){:root{--gutter:40px}.intro .grid,.feature,.svc-grid,.about .grid{grid-template-columns:1fr}.feature{gap:28px}.svc{border-right:none;border-bottom:1px solid var(--rule)}.svc:last-child{border-bottom:none}.work-grid{grid-template-columns:1fr 1fr}.client-grid{grid-template-columns:repeat(2,1fr)}.contact .grid{grid-template-columns:1fr}}@media (width<=680px){:root{--gutter:22px}header.nav nav{gap:18px}header.nav nav a.link{display:none}.work-grid,.client-grid,footer.site .wrap{grid-template-columns:1fr}footer.site .right{text-align:left}.legal .prose td:first-child{white-space:normal}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
