@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;--pine:#102a25;--pine-deep:#0b1f1b;--rule:#dcdad3;--rule-soft:#ebe9e2;--muted:#65645f;--body:#2a2a2c;--body-strong:#1f1f22;--accent:oklch(45% .09 250);--accent-soft:oklch(45% .09 250/.1);--accent-bright:oklch(74% .1 250);--on-pine:#fafaf7c7;--rule-pine:#fafaf738;--gutter:64px;--maxw:1440px}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}.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:#fafaf79e}.mark.on-dark .slash{color:var(--accent-bright)}.dslash{color:var(--accent);padding:0 .18em;font-family:JetBrains Mono,monospace;font-weight:500}.on-pine .dslash,footer.site .dslash{color:var(--accent-bright)}.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(--pine) 94%, transparent);backdrop-filter:saturate(1.1)blur(8px);border-bottom:1px solid var(--rule-pine);color:var(--paper);position:sticky;top:0}header.nav .wrap{justify-content:space-between;align-items:center;padding-top:20px;padding-bottom:20px;display:flex}header.nav .mark{font-size:19px}header.nav nav{align-items:center;gap:34px;display:flex}header.nav nav a.link{letter-spacing:.1em;text-transform:uppercase;color:var(--on-pine);font-family:JetBrains Mono,monospace;font-size:11px;transition:color .15s}header.nav nav a.link:hover{color:var(--paper)}.menu{display:none}.menu>summary{cursor:pointer;letter-spacing:.1em;text-transform:uppercase;color:var(--on-pine);align-items:center;gap:12px;padding:6px 0;font-family:JetBrains Mono,monospace;font-size:11px;list-style:none;display:flex}.menu>summary::-webkit-details-marker{display:none}.menu>summary .bars{flex-direction:column;gap:3px;display:flex}.menu>summary .bars span{background:currentColor;width:16px;height:1px;display:block}.menu[open]>summary{color:var(--paper)}.menu-panel{background:var(--pine);border-bottom:1px solid var(--rule-pine);padding:6px var(--gutter) 24px;position:absolute;top:100%;left:0;right:0}.menu-panel a{letter-spacing:.08em;text-transform:uppercase;color:var(--paper);border-bottom:1px solid var(--rule-pine);padding:16px 0;font-family:JetBrains Mono,monospace;font-size:13px;display:block}.menu-panel a:last-child{border-bottom:none}.menu-email{letter-spacing:.1em;text-transform:uppercase;color:var(--paper);font-family:JetBrains Mono,monospace;font-size:11px;display:none}.menu-email:before{content:"/";color:var(--accent-bright);margin-right:16px}.btn{letter-spacing:.04em;text-transform:uppercase;border:1px solid #0000;align-items:center;gap:8px;padding:11px 18px;font-family:JetBrains Mono,monospace;font-size:12px;line-height:16px;transition:background .15s,color .15s;display:inline-flex}.btn-solid{background:var(--ink);color:var(--paper)}.btn-solid:hover{background:var(--body)}.btn-ghost{border:1px solid var(--ink);color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}.on-pine .btn-solid{background:var(--paper);color:var(--ink)}.on-pine .btn-solid:hover{background:#fff}.on-pine .btn-ghost{color:var(--paper);border-color:#fafaf780}.on-pine .btn-ghost:hover{background:var(--paper);color:var(--pine)}section{border-bottom:1px solid var(--rule)}.on-pine{background:var(--pine);color:var(--paper);border-bottom:none}.on-pine .section-label{color:#fafaf799}.on-pine .section-label .dot{background:var(--accent-bright)}.on-pine .section-label .num-tag{color:var(--paper)}.hero .wrap{padding-top:88px;padding-bottom:88px}.hero h1{letter-spacing:-.045em;text-wrap:balance;max-width:22ch;margin:0;font-size:clamp(48px,7vw,104px);font-weight:500;line-height:1}.hero h1 em{color:var(--accent-bright);font-weight:400}.hero .under{border-top:1px solid var(--rule-pine);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:32px 88px;margin-top:48px;padding-top:32px;display:grid}.hero .under p{color:#fafaf7cc;text-wrap:pretty;max-width:56ch;margin:0;font-size:clamp(17px,1.5vw,21px);line-height:1.5}.hero .cta-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.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)}.offers .wrap{padding-top:72px;padding-bottom:80px}.offers .head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:36px;display:flex}.offers .head .section-label{margin-bottom:0}.pkg-bar{background:var(--pine);color:var(--paper);letter-spacing:.1em;text-transform:uppercase;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;margin:0 0 36px;padding:20px 32px;font-family:JetBrains Mono,monospace;font-size:13px;transition:background .15s;display:grid}.pkg-bar:hover{background:var(--pine-deep)}.pkg-bar .items{color:#fafaf7c7;gap:32px;display:flex}.pkg-bar .go{color:var(--accent-bright);font-size:18px;line-height:1}.offer-grid{border-top:1px solid var(--rule);border-left:1px solid var(--rule);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.offer{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:0 0 36px}.offer .strip{border-bottom:1px solid var(--rule);height:120px;margin:0 0 26px;position:relative;overflow:hidden}.offer .strip img{object-fit:cover;width:100%;height:100%;display:block}.offer .strip:after{content:"";background:var(--pine);opacity:.2;mix-blend-mode:multiply;pointer-events:none;position:absolute;inset:0}.offer .body{padding:0 32px}.offer .k{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-family:JetBrains Mono,monospace;font-size:11px}.offer h3{letter-spacing:-.024em;margin:14px 0 18px;font-size:22px;font-weight:500;line-height:1.15}.offer ul{flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.offer ul li{color:var(--body-strong);gap:10px;font-size:15px;line-height:1.5;display:flex}.offer ul li .arr{color:var(--accent)}.offer .topic-link{margin-top:20px;display:inline-block}.offer h3 a:hover{color:var(--accent)}.detail-head.offers-head .wrap{padding-top:72px;padding-bottom:80px}.detail-head.offers-head .eyebrow{color:#fafaf799;letter-spacing:.12em;margin:0}.detail-head.offers-head h1{letter-spacing:-.04em;max-width:18ch;margin-top:26px;font-size:clamp(40px,4.6vw,66px);line-height:1.06}.detail-head.ai-head h1{max-width:22ch}.detail-head.offers-head .lede{letter-spacing:0;max-width:52ch;margin-top:28px;font-size:clamp(17px,1.4vw,20px);line-height:1.55}.jump{border-top:1px solid var(--rule-pine);flex-wrap:wrap;gap:10px 28px;margin-top:40px;padding-top:22px;display:flex}.jump a{letter-spacing:.08em;text-transform:uppercase;color:var(--on-pine);align-items:baseline;gap:10px;font-family:JetBrains Mono,monospace;font-size:11px;transition:color .15s;display:inline-flex}.jump a:hover{color:var(--paper)}.jump a .n{color:#fafaf780}.offer-section .wrap{padding-top:72px;padding-bottom:80px}.offer-section.alt{background:var(--paper-2)}.offer-section .grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:88px;display:grid}.offer-section .section-label{margin:0}.offer-section .section-label .verb{color:var(--accent)}.offer-section h2{letter-spacing:-.034em;max-width:18ch;margin:26px 0 0;font-size:clamp(30px,3.2vw,46px);font-weight:500;line-height:1.06}.offer-section p{color:var(--body);text-wrap:pretty;max-width:46ch;margin:22px 0 0;font-size:18px;line-height:1.6}.offer-section .cta{margin-top:30px}.offer-section ul{border-top:1px solid var(--rule);margin:0;padding:0;list-style:none}.offer-section ul li{color:var(--body-strong);border-bottom:1px solid var(--rule);gap:14px;padding:15px 0;font-size:17px;line-height:1.5;display:flex}.offer-section ul li .arr{color:var(--accent)}.offer-section .topic-link{margin-top:22px;display:inline-block}.offer-section.alt+.cta-band{background:var(--paper)}.offer-section .price{flex-wrap:wrap;align-items:baseline;gap:12px;margin-top:18px;display:flex}.offer-section .price .amt{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:20px;font-weight:500;line-height:1.2}.offer-section .price .q{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-family:JetBrains Mono,monospace;font-size:11px}.offer-section .price+p{margin-top:18px}.offer-section .fine{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);max-width:none;margin:22px 0 0;font-family:JetBrains Mono,monospace;font-size:11px}.areas .wrap{padding-top:80px;padding-bottom:88px}.areas .section-label{margin-bottom:44px}.area-grid{border-top:1px solid var(--rule-pine);border-left:1px solid var(--rule-pine);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=680px){.area-grid{grid-template-columns:1fr}}.area{border-right:1px solid var(--rule-pine);border-bottom:1px solid var(--rule-pine);padding:34px 32px 40px}.area .k{letter-spacing:.1em;text-transform:uppercase;color:var(--accent-bright);font-family:JetBrains Mono,monospace;font-size:11px}.area h3{letter-spacing:-.024em;margin:16px 0 14px;font-size:22px;font-weight:500;line-height:1.15}.area p{color:#fafaf7b8;text-wrap:pretty;margin:0 0 20px;font-size:15px;line-height:1.55}.area ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.area ul li{color:#fafaf7e6;gap:10px;font-size:14px;line-height:1.5;display:flex}.area ul li .arr,.area .topic-link{color:var(--accent-bright)}.area .topic-link{white-space:normal;margin-top:20px;display:inline-block}section[id]{scroll-margin-top:96px}.work .wrap{padding-top:88px;padding-bottom:0}.work .wrap.tail{flex-wrap:wrap;align-items:baseline;gap:12px 40px;padding-top:40px;padding-bottom:80px;display:flex}.work .tail .clients{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-family:JetBrains Mono,monospace;font-size:11px}.work-head{justify-content:space-between;align-items:baseline;gap:24px;display:flex}.work-head .section-label{margin-bottom:44px}.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:var(--body);text-wrap:pretty;margin:0;font-size:15px;line-height:1.55}.case .more{display:none}.case.row{max-width:var(--maxw);border-top:1px solid var(--rule);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;margin:0 auto;display:grid}.case.row .meta{padding:48px var(--gutter) 56px;flex-direction:column;grid-column:1;justify-content:center;display:flex}.case.row .thumb{border:none;border-left:1px solid var(--rule);grid-area:1/2;height:auto;min-height:400px}.case.row h3{letter-spacing:-.035em;max-width:20ch;margin:18px 0;font-size:clamp(28px,3.1vw,44px);line-height:1.08}.case.row p{max-width:46ch;margin:0 0 26px;font-size:18px;line-height:1.6}.case.row .more{letter-spacing:.1em;text-transform:uppercase;color:var(--ink);font-family:JetBrains Mono,monospace;font-size:11px;display:block}.about .wrap{padding-top:88px;padding-bottom:88px}.about .grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.8fr);align-items:start;gap:64px;display:grid}.about p{color:var(--body-strong);text-wrap:pretty;margin:0 0 18px;font-size:18px;line-height:1.64}.about p:last-child{margin-bottom:0}.about p em{font-style:italic}.about .lead-in{letter-spacing:-.022em;color:var(--ink);font-size:clamp(22px,2.1vw,27px);font-weight:500;line-height:1.3}.about .lead-in em{color:var(--accent);font-style:normal;font-weight:400}.record{border:1px solid var(--rule);padding:28px}.record .k-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-family:JetBrains Mono,monospace;font-size:10px}.record .r{border-bottom:1px solid var(--rule-soft);padding:13px 0}.record .r:last-child{border-bottom:none}.record .r .k{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:5px;font-family:JetBrains Mono,monospace;font-size:10px}.record .r .v{font-size:15px;font-weight:500;line-height:1.35}.contact{background:var(--paper-2);border-bottom:none}.contact .wrap{padding-top:104px;padding-bottom:104px}.contact .grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:end;gap:88px;display:grid}.contact h2{letter-spacing:-.04em;max-width:18ch;margin:0;font-size:clamp(36px,4.7vw,68px);font-weight:500;line-height:1.04}.contact h2 em{color:var(--accent);font-style:italic;font-weight:400}.contact p{color:var(--body);text-wrap:pretty;max-width:46ch;margin:0 0 30px;font-size:19px;line-height:1.6}.contact .cta-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}footer.site{background:var(--pine-deep);color:var(--paper)}footer.site .wrap{padding-top:64px;padding-bottom:44px}footer.site .cols{border-bottom:1px solid #fafaf733;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,.6fr));gap:56px;padding-bottom:40px;display:grid}footer.site .mark{color:var(--paper);font-size:22px}footer.site .fnote{color:#fafaf799;max-width:44ch;margin:18px 0 0;font-size:15px;line-height:1.7}footer.site .fcol .h{letter-spacing:.12em;text-transform:uppercase;color:#fafaf78c;margin-bottom:16px;font-family:JetBrains Mono,monospace;font-size:10px}footer.site .fcol .links{flex-direction:column;gap:10px;display:flex}footer.site .fcol a{color:#fafaf7d1;font-size:15px}footer.site .fcol a:hover{color:var(--paper)}footer.site .base{letter-spacing:.06em;color:#fafaf78c;justify-content:space-between;gap:24px;padding-top:22px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.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}.lib-hero .wrap{padding-top:80px;padding-bottom:88px}.lib-hero h1{letter-spacing:-.038em;max-width:18ch;margin:22px 0 0;font-size:clamp(44px,5.6vw,76px);font-weight:500;line-height:1.04}.lib-hero h1 em{color:var(--accent-bright);font-weight:400}.lib-hero .lede{color:#fafaf7cc;max-width:62ch;margin:30px 0 0;font-size:clamp(17px,1.7vw,21px);line-height:1.5}.lib-body .wrap{padding-top:48px;padding-bottom:84px}.lib-grid{grid-template-columns:232px 1fr;align-items:start;gap:56px;display:grid}.lib-grid .rows{min-width:0}.lib-rail{position:sticky;top:24px}.rail-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-family:JetBrains Mono,monospace;font-size:10px}.rail-item{text-align:left;cursor:pointer;width:100%;font:inherit;border:none;border-bottom:1px solid var(--rule-soft);background:0 0;border-left:2px solid #0000;justify-content:space-between;align-items:baseline;gap:12px;margin-left:-2px;padding:11px 0 11px 14px;display:flex}.rail-item .n{color:#2a2a2c;letter-spacing:-.006em;font-size:14px;line-height:1.3}.rail-item:hover .n{color:var(--ink)}.rail-item .c{color:var(--muted);font-variant-numeric:tabular-nums;font-family:JetBrains Mono,monospace;font-size:11px}.rail-item.active{border-left-color:var(--accent)}.rail-item.active .n{color:var(--ink);font-weight:500}.rail-item.active .c{color:var(--accent)}.lib-selects{display:none}.rows-head{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:4px;padding-bottom:16px;display:flex}.rows-head h2{letter-spacing:-.016em;margin:0;font-size:20px;font-weight:500}.rows-head h2 .count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:12px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:400}.rows-head .controls{align-items:center;gap:16px;display:flex}.mono-select{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--paper);border:1px solid var(--rule);appearance:none;cursor:pointer;border-radius:0;padding:7px 10px;font-family:JetBrains Mono,monospace;font-size:11px}.mono-select.set{color:var(--ink)}.topic-link{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:11px}.exp-row{border-bottom:1px solid var(--rule-soft);grid-template-columns:72px 1fr;align-items:start;gap:24px;min-width:0;padding:22px 8px;display:grid}a.exp-row{transition:background .15s}a.exp-row:hover{background:var(--paper-2)}.exp-row .yr,.exp-row .meta-m{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:2px;font-family:JetBrains Mono,monospace;font-size:12px}.exp-row .meta-m{text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:11px;display:none}.exp-row .top{grid-template-columns:1fr 168px 116px;align-items:baseline;gap:20px;display:grid}.exp-row .ttl{letter-spacing:-.014em;min-width:0;color:var(--ink);font-size:18px;font-weight:500}.exp-row .ind{color:var(--ink);font-size:13px;font-weight:500}.exp-row .cs,.exp-row .cs-m{letter-spacing:.04em;text-transform:uppercase;color:var(--accent);text-align:right;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:11px}.exp-row .cs-m{text-align:left;margin-top:12px;display:none}.exp-row .note{color:#2a2a2c;margin:6px 0 12px;font-size:14px;line-height:1.5}.exp-row .tags{flex-wrap:wrap;gap:8px;display:flex}.tag{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);padding:3px 7px;font-family:JetBrains Mono,monospace;font-size:9px}.exp-row .main{min-width:0}.exp-row[hidden],.topic-link[hidden],.lib-empty[hidden]{display:none}.lib-empty{color:var(--muted);padding:40px 0;font-size:15px}.lib-empty button{cursor:pointer;color:var(--accent);font:inherit;background:0 0;border:none;padding:0}.backlink{letter-spacing:.06em;text-transform:uppercase;color:var(--on-pine);font-family:JetBrains Mono,monospace;font-size:12px}.backlink:hover{color:var(--paper)}.detail-head .wrap{padding-top:40px;padding-bottom:80px}.detail-head .eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-bright);margin:40px 0 18px;font-family:JetBrains Mono,monospace;font-size:12px}.detail-head h1{letter-spacing:-.03em;max-width:16ch;margin:0;font-size:clamp(40px,5vw,76px);font-weight:500;line-height:1.04}.detail-head h1 em{color:var(--accent-bright);font-weight:400}.detail-head.cs-head h1{max-width:20ch;font-size:clamp(44px,5.4vw,80px)}.detail-head .lede{color:#fafaf7cc;letter-spacing:-.01em;max-width:58ch;margin:30px 0 0;font-size:clamp(19px,2vw,25px);line-height:1.45}.detail-head.cs-head .lede{max-width:60ch;margin-top:34px}.proof{letter-spacing:.02em;color:#fafaf79e;font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:10px;margin-top:30px;font-family:JetBrains Mono,monospace;font-size:14px;display:flex}.proof .n{color:var(--paper);font-size:16px}.proof .sl{color:var(--accent-bright)}.cap-section .wrap{padding-top:72px;padding-bottom:84px}.tail-row{border-bottom:1px solid var(--rule-soft);grid-template-columns:72px 1fr 180px;align-items:baseline;gap:24px;padding:20px 0;display:grid}a.tail-row{transition:background .15s}a.tail-row:hover{background:var(--paper-2)}.fa-list a:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.tail-rows{border-top:1px solid var(--rule);margin-top:36px}.tail-row .yr{color:var(--muted);font-variant-numeric:tabular-nums;font-family:JetBrains Mono,monospace;font-size:12px}.tail-row .lbl{letter-spacing:-.012em;color:var(--ink);font-size:17px;font-weight:500}.tail-row .note{color:#2a2a2c;max-width:58ch;margin-top:5px;font-size:14px;line-height:1.5}.tail-row .sec{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);text-align:right;font-family:JetBrains Mono,monospace;font-size:11px}.alongside .wrap{flex-wrap:wrap;align-items:baseline;gap:20px;padding-top:48px;padding-bottom:48px;display:flex}.alongside .k{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-family:JetBrains Mono,monospace;font-size:10px}.alongside a{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-family:JetBrains Mono,monospace;font-size:12px}.alongside a:hover{color:var(--ink)}.cta-band h2{max-width:20ch}.cs-figure{border:none;height:560px;overflow:hidden}.cs-figure img{object-fit:cover;filter:grayscale(.4)contrast(1.03);width:100%;height:100%;display:block}.cs-body .wrap{padding-top:72px;padding-bottom:84px}.cs-grid{grid-template-columns:1fr .42fr;align-items:start;gap:72px;display:grid}.cs-prose{max-width:62ch}.cs-prose .prose-body{margin-top:28px}.prose-body p{color:#1f1f22;text-wrap:pretty;margin:0 0 18px;font-size:18px;line-height:1.62}.prose-body h2{letter-spacing:-.022em;color:var(--ink);margin:56px 0 20px;font-size:clamp(26px,2.6vw,34px);font-weight:500;line-height:1.1}.prose-body blockquote,.prose-body blockquote p{letter-spacing:-.018em;color:var(--ink);text-wrap:pretty;font-size:clamp(22px,2.4vw,30px);font-weight:500;line-height:1.35}.prose-body blockquote{border-left:2px solid var(--accent);margin:56px 0;padding:0 0 0 28px}.prose-body blockquote p{margin:0}.meta-rail{border:1px solid var(--rule);padding:28px;position:sticky;top:96px}.meta-rail .k-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-family:JetBrains Mono,monospace;font-size:11px}.meta-rail .k-label.fa{margin-top:26px}.meta-row{border-bottom:1px solid var(--rule-soft);justify-content:space-between;gap:16px;padding:14px 0;display:flex}.meta-row .k{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-family:JetBrains Mono,monospace;font-size:11px}.meta-row .v{color:var(--ink);text-align:right;font-size:15px;font-weight:500}.fa-list{margin:0;padding:0;list-style:none}.fa-list li{color:#2a2a2c;gap:10px;font-size:14px;line-height:1.85;display:flex}.fa-list .arr{color:var(--accent)}.next-case .wrap{justify-content:space-between;align-items:center;gap:24px;padding-top:44px;padding-bottom:44px;display:flex}.next-case .k{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:11px}.next-case .t{letter-spacing:-.02em;color:var(--ink);font-size:clamp(24px,2.6vw,34px);font-weight:500}.next-case .arrow{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:14px}.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<=1180px){.about .grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.about .record-cell{grid-column:1/-1}.record{max-width:460px}}@media (width<=1024px){:root{--gutter:40px}.hero .under,.about .grid,.contact .grid,.case.row,footer.site .cols{grid-template-columns:1fr}.hero .under{gap:26px}.hero .wrap{padding-top:64px;padding-bottom:56px}.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lib-grid{gap:36px}.exp-row .top{grid-template-columns:minmax(0,1fr) auto 96px;gap:14px}.exp-row .ind{font-size:12px}.cs-grid{grid-template-columns:1fr;gap:48px}.cs-figure{height:380px}.meta-rail{position:static}.offer-section .grid{grid-template-columns:1fr;gap:34px}.work-grid{grid-template-columns:1fr 1fr}.about .record-cell{grid-column:auto}.contact .grid{gap:34px}.contact .wrap{padding-top:72px;padding-bottom:72px}.case.row .thumb,.case.row .meta{grid-area:auto}.case.row .thumb{border-left:none;min-height:240px}.case.row .meta{padding:26px var(--gutter) 40px}footer.site .cols{gap:34px}}@media (width<=900px){header.nav nav a.link,header.nav nav .btn{display:none}header.nav nav{gap:16px}.menu,.menu-email{display:block}.exp-row{padding:20px 0;display:block}.exp-row .yr,.exp-row .ind,.exp-row .cs{display:none}.exp-row .meta-m,.exp-row .top{display:block}.exp-row .note{margin-bottom:12px}.exp-row .cs-m{display:block}}@media (width<=760px){.lib-body .wrap{padding-top:28px}.lib-grid{display:block}.lib-rail{display:none}.lib-selects{gap:16px;margin-bottom:28px;display:grid}.lib-selects label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-family:JetBrains Mono,monospace;font-size:10px;display:block}.lib-selects select{width:100%;color:var(--ink);background:var(--paper);border:1px solid var(--rule);appearance:none;border-radius:0;padding:12px 14px;font-family:Inter,sans-serif;font-size:16px}.rows-head .controls .mono-select{display:none}.tail-row{grid-template-columns:72px 1fr}.tail-row .sec{text-align:left;grid-column:2}.cs-figure{height:300px}}@media (width<=680px){:root{--gutter:22px}.hero .cta-row,.contact .cta-row{flex-direction:column;align-items:stretch}.hero .cta-row .btn,.contact .cta-row .btn{justify-content:center;padding:14px 18px}.work-grid,.offer-grid{grid-template-columns:1fr}.pkg-bar{grid-template-columns:1fr auto}.pkg-bar .items{flex-wrap:wrap;grid-column:1/-1;gap:10px 20px}.pkg-bar .go{grid-area:1/2}.cs-figure{height:240px}footer.site .fcol .links{flex-flow:wrap;gap:8px 18px}footer.site .base{flex-direction:column;gap:6px;line-height:1.9}.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}}.narrow{max-width:960px;padding-left:var(--gutter);padding-right:var(--gutter);margin:0 auto}.idx-head .wrap{padding-top:60px;padding-bottom:80px}.idx-bar{justify-content:space-between;align-items:baseline;gap:22px;display:flex}.idx-bar .section-label{margin-bottom:0}.idx-head h1{letter-spacing:-.038em;max-width:20ch;margin:22px 0 0;font-size:clamp(40px,5vw,68px);font-weight:500;line-height:1.04}.idx-head h1 em{color:var(--accent-bright);font-style:normal;font-weight:400}.idx-head .lede{color:#fafaf7cc;max-width:58ch;margin:26px 0 0;font-size:clamp(17px,1.7vw,21px);line-height:1.5}.idx-bar .rss{letter-spacing:.08em;text-transform:uppercase;color:var(--on-pine);border-bottom:1px solid var(--rule-pine);padding-bottom:2px;font-family:JetBrains Mono,monospace;font-size:11px}.idx-bar .rss:hover{color:var(--paper);border-color:var(--accent-bright)}.idx-list{border-bottom:none}.idx-list .wrap{padding-top:56px;padding-bottom:96px}.idx-empty{color:var(--muted);border-top:1px solid var(--ink);margin:0;padding:34px 0;font-size:17px}.entry{border-top:1px solid var(--rule);grid-template-columns:104px 1fr 210px;align-items:start;gap:36px;padding:34px 14px 34px 0;transition:background .18s;display:grid;position:relative}.entry:first-of-type{border-top:1px solid var(--ink)}.entry:last-of-type{border-bottom:1px solid var(--rule)}.entry:hover{background:var(--accent-soft)}.entry:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.entry .idn{color:var(--accent);letter-spacing:.06em;padding-top:5px;font-family:JetBrains Mono,monospace;font-size:12px}.entry h2{letter-spacing:-.022em;max-width:30ch;margin:0;font-size:clamp(21px,2.1vw,27px);font-weight:500;line-height:1.16;transition:color .18s}.entry:hover h2{color:var(--accent)}.entry .stand{color:#2a2a2c;text-wrap:pretty;max-width:60ch;margin:11px 0 0;font-size:15px;line-height:1.58}.entry .right{letter-spacing:.06em;text-transform:uppercase;flex-direction:column;align-items:flex-start;gap:9px;padding-top:5px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.entry .right .cat{color:var(--ink)}.entry .right .date{color:var(--muted)}.entry .arr{color:var(--accent);opacity:0;font-size:15px;transition:opacity .18s,transform .18s;position:absolute;top:38px;right:0;transform:translate(-6px)}.entry:hover .arr{opacity:1;transform:translate(0)}.post-head .narrow{padding-top:56px;padding-bottom:72px}.back{letter-spacing:.08em;text-transform:uppercase;color:var(--on-pine);align-items:center;gap:9px;margin-bottom:52px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex}.back:hover{color:var(--paper)}.post-meta{letter-spacing:.08em;text-transform:uppercase;color:#fafaf799;flex-wrap:wrap;align-items:baseline;gap:16px;margin-bottom:28px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.post-meta .cat{color:var(--paper)}.post-meta .sep{color:#fafaf759}.post-head h1{letter-spacing:-.03em;max-width:22ch;margin:0;font-size:clamp(36px,4.6vw,60px);font-weight:500;line-height:1.04}.post-head h1 em{color:var(--accent-bright);font-style:normal;font-weight:400}.post-head .stand{color:#fafaf7cc;text-wrap:pretty;max-width:56ch;margin:30px 0 0;font-size:clamp(18px,1.9vw,22px);line-height:1.5}.byline{border-top:1px solid var(--rule-pine);align-items:center;gap:14px;margin-top:40px;padding-top:26px;display:flex}.byline .who{font-size:14px;font-weight:500}.byline .role{color:#fafaf799;font-size:13px}.post-body{border-bottom:1px solid var(--rule)}.post-body .narrow{padding-top:72px;padding-bottom:88px}.post-body>.narrow>*{max-width:692px}.post-body p{color:#1f1f22;text-wrap:pretty;margin:0 0 26px;font-size:19px;line-height:1.68}.post-body>.narrow>:last-child{margin-bottom:0}.post-body h2{letter-spacing:-.022em;margin:54px 0 22px;font-size:29px;font-weight:500;line-height:1.1}.post-body h3{letter-spacing:-.018em;margin:40px 0 16px;font-size:22px;font-weight:500;line-height:1.2}.post-body h2 em,.post-body h3 em{color:var(--accent);font-style:normal;font-weight:400}.post-body ul,.post-body ol{flex-direction:column;gap:12px;margin:0 0 30px;padding:0;display:flex}.post-body ul{list-style:none}.post-body ol{padding-left:24px;list-style:decimal}.post-body li{color:#1f1f22;font-size:18px;line-height:1.6}.post-body ul li{gap:13px;display:flex}.post-body ul li:before{content:"↳";color:var(--accent);flex:none}.post-body blockquote{border-left:2px solid var(--accent);margin:44px 0;padding:0 0 0 30px}.post-body blockquote p{letter-spacing:-.018em;color:var(--ink);max-width:34ch;margin:0;font-size:25px;font-weight:500;line-height:1.36}.post-body .aside{background:var(--paper-2);margin:44px 0;padding:30px 32px}.post-body .aside .k{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:13px;font-family:JetBrains Mono,monospace;font-size:11px}.post-body .aside p{color:#2a2a2c;margin:0;font-size:16px;line-height:1.6}.post-body strong{font-weight:600}.post-body a{color:var(--accent);border-bottom:1px solid var(--accent-soft)}.post-body a:hover{border-bottom-color:var(--accent)}.post-body a[target=_blank]:after,.legal .prose a[target=_blank]:after{content:"↗"}@supports (content:"x" / ""){.post-body a[target=_blank]:after,.legal .prose a[target=_blank]:after{content:"↗" / ""}}.post-body a[target=_blank]:after,.legal .prose a[target=_blank]:after{vertical-align:baseline;margin-left:.18em;font-size:.8em;line-height:1;display:inline-block}.post-body code{background:var(--paper-2);padding:.12em .34em;font-family:JetBrains Mono,monospace;font-size:.88em}.post-body pre{background:var(--paper-2);margin:0 0 30px;padding:22px 24px;overflow-x:auto}.post-body pre code{background:0 0;padding:0;font-size:14px;line-height:1.6}.post-body hr{border:none;border-top:1px solid var(--rule);margin:48px 0}.post-body img{max-width:100%;height:auto;display:block}.post-nav{border-bottom:1px solid var(--rule)}.post-nav .wrap{padding-top:0;padding-bottom:0}.pn-grid{border-left:1px solid var(--rule);border-right:1px solid var(--rule);grid-template-columns:1fr 1fr;display:grid}.pn{border-right:1px solid var(--rule);padding:38px 34px;transition:background .18s;display:block}.pn:last-child{border-right:none}a.pn:hover{background:var(--accent-soft)}.pn .k{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:15px;font-family:JetBrains Mono,monospace;font-size:11px}.pn h4{letter-spacing:-.018em;max-width:26ch;margin:0;font-size:21px;font-weight:500;line-height:1.2;transition:color .18s}a.pn:hover h4{color:var(--accent)}.pn.empty h4{color:var(--muted);font-size:18px;font-weight:400}@media (width<=1024px){.entry{grid-template-columns:76px 1fr;gap:24px}.entry .right{flex-direction:row;grid-column:2;gap:14px;padding-top:14px}.entry .arr{display:none}}@media (width<=680px){.entry{grid-template-columns:1fr}.entry .right{grid-column:1}.entry .idn{display:none}.pn-grid{grid-template-columns:1fr}.pn{border-right:none;border-bottom:1px solid var(--rule)}.pn:last-child{border-bottom:none}}
