:root{color-scheme:dark;--surface-0:#100e0c;--surface-1:#181513;--surface-2:#211d1a;--rule:#393431;--rule-strong:#d5d0ca;--ink:#f2f0ec;--text-secondary:#c7c3be;--text-muted:#9f9b96;--primary:#fba541;--primary-ink:#fcae52;--on-primary:#100e0c;--bone:#d5d0ca;--wire:#8a8580;--fig-bg:var(--surface-0);--font-display:Archivo, "Helvetica Neue", Arial, sans-serif;--font-mono:"Chivo Mono", ui-monospace, Menlo, monospace;--r-sm:2px;--r-md:4px;--s-xs:4px;--s-sm:8px;--s-md:16px;--s-lg:24px;--s-xl:40px;--s-2xl:56px;--s-3xl:88px;--gutter:clamp(16px, 3vw, 32px);--ease:cubic-bezier(0.25, 1, 0.5, 1);--head:56px}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--head) + 20px);scrollbar-color:var(--rule)var(--surface-0)}body{margin:0;background:var(--surface-0);color:var(--ink);font-family:var(--font-display);font-size:16px;font-weight:400;line-height:1.55;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;overflow-x:clip}a{color:var(--primary-ink);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-color:var(--primary);text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--primary-ink);outline-offset:2px;border-radius:var(--r-sm)}::selection{background:var(--primary);color:var(--on-primary)}h1,h2,h3,h4{margin:0;text-wrap:balance}p{margin:0;text-wrap:pretty}ul,ol{list-style:none;margin:0;padding:0}.wrap{width:100%;max-width:1440px;margin:0 auto;padding:0 var(--gutter)}.skip{position:absolute;left:-9999px;top:8px;z-index:40;padding:8px 12px;background:var(--ink);color:var(--surface-0)}.skip:focus{left:8px}.arrow{flex:none}.label{font-family:var(--font-mono);font-size:12px;font-weight:500;line-height:1.4;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.masthead{position:sticky;top:0;z-index:30;background:var(--surface-0);border-bottom:1px solid var(--rule)}.masthead-inner{display:flex;align-items:center;gap:var(--s-md);min-height:var(--head)}.wordmark{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;flex:none;font-stretch:122%;font-weight:700;font-size:15px;letter-spacing:.005em}.wordmark svg{width:20px;height:20px;color:var(--primary);flex:none}.masthead nav{display:flex;flex-wrap:wrap;gap:0 2px;margin-left:auto}.masthead nav a{padding:6px 10px;font-size:14px;color:var(--text-secondary);text-decoration:none;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.masthead nav a:hover{color:var(--ink);border-bottom-color:var(--primary)}h1{font-weight:640;font-stretch:112%;font-size:clamp(2.1rem,1rem + 3.2vw,3.6rem);line-height:1;letter-spacing:-.024em}h2{font-weight:620;font-stretch:110%;font-size:clamp(1.3rem,1.05rem + .9vw,1.75rem);line-height:1.1;letter-spacing:-.015em}h3{font-size:17px;font-weight:600;font-stretch:104%;line-height:1.3}.lede{font-size:clamp(16px,.95rem + .25vw,19px);color:var(--text-secondary);max-width:56ch}.prose{max-width:66ch;font-size:17px;color:var(--text-secondary)}.prose p+p{margin-top:var(--s-md)}.prose p:first-child{color:var(--ink)}.actions{display:flex;flex-wrap:wrap;gap:var(--s-sm)}.btn{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px;border:1.5px solid var(--ink);border-radius:var(--r-md);background:var(--surface-0);color:var(--ink);font:inherit;font-size:15px;font-weight:600;text-decoration:none;cursor:pointer;transition:box-shadow .2s var(--ease);white-space:nowrap}.btn:hover{box-shadow:inset 0 -3px 0 var(--primary)}.btn.primary{background:var(--ink);color:var(--surface-0)}.btn .arrow,.link .arrow{transition:transform .2s var(--ease)}.btn:hover .arrow,.link:hover .arrow{transform:translateX(3px)}.link{display:inline-flex;align-items:center;gap:6px;font-weight:600}.fig{position:absolute;margin:0;pointer-events:none;user-select:none;overflow:hidden}.fig canvas,.fig .still,.fig .still img{position:absolute;inset:0;width:100%;height:100%;display:block}.fig .still img{object-fit:contain}.fig canvas{opacity:0;transition:opacity .9s var(--ease)}.fig.is-live canvas{opacity:1}.fig.is-static canvas{display:none}.pages a{display:grid;grid-template-columns:minmax(0,4fr)minmax(0,8fr)auto;align-items:baseline;gap:var(--s-md)var(--s-2xl);padding:14px 8px;border-bottom:1px solid var(--rule);color:var(--text-secondary);text-decoration:none;transition:background-color .15s}.pages a:hover{background:var(--surface-1)}.pages-title{color:var(--ink);font-weight:600;font-size:17px;font-stretch:104%}.pages .arrow{color:var(--primary);transition:transform .2s var(--ease)}.pages a:hover .arrow{transform:translateX(4px)}.foot{position:relative;margin-top:var(--s-3xl);border-top:1px solid var(--rule);background:var(--surface-0)}.foot-inner{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--s-sm)var(--s-lg);padding-top:var(--s-lg);padding-bottom:var(--s-xl)}.foot-name{font-stretch:116%;font-weight:650;font-size:14px}.foot nav{display:flex;flex-wrap:wrap;gap:4px 18px}.foot nav a{font-size:14px;color:var(--text-secondary);text-decoration:none;padding:4px 0}.foot nav a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--primary)}@media(max-width:860px){.masthead{position:static}.masthead-inner{flex-wrap:wrap;padding-top:10px;gap:6px}.masthead nav{margin:0 calc(var(--gutter) * -1);width:calc(100% + var(--gutter) * 2);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--rule)}.masthead nav a{padding:9px 8px 9px var(--gutter);border-bottom:0;border-right:1px solid var(--rule);font-size:13px}.masthead nav a:nth-child(3n){border-right:0}.masthead nav a:nth-child(-n+3){border-bottom:1px solid var(--rule)}.wordmark{font-size:14px;font-stretch:112%;flex:initial;min-width:0}.pages a{grid-template-columns:1fr auto;row-gap:2px}.pages-note{grid-column:1;grid-row:2}.pages .arrow{grid-row:1/span 2;align-self:center}}@media(max-width:640px){.btn{white-space:normal;padding:8px 16px}.wordmark{line-height:1.2}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.page-head{display:grid;grid-template-columns:minmax(0,7fr)minmax(0,5fr);gap:var(--s-lg)var(--s-2xl);align-items:end;padding-top:var(--s-2xl);padding-bottom:var(--s-lg)}.page-head .lede{margin-bottom:var(--s-lg)}.hero-plate{position:relative;min-height:clamp(440px,58svh,580px);display:flex;align-items:flex-end}.fig-hero{inset:0}.about{position:relative;z-index:2;margin-left:auto;width:clamp(290px,29vw,400px);padding-bottom:var(--s-xl)}.about h2{margin-bottom:var(--s-md)}.about .prose{font-size:16px}.research{margin-top:var(--s-xl)}.section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--s-sm)var(--s-lg);padding-bottom:var(--s-md)}.plate{position:relative;border-top:1px solid var(--rule);scroll-margin-top:var(--head)}.plate:first-of-type{border-top:2px solid var(--rule-strong)}.plate-inner{--text:clamp(320px, 35vw, 460px);position:relative;z-index:2;display:grid;grid-template-columns:var(--text)minmax(0,1fr);column-gap:clamp(32px,5vw,80px);align-items:center;min-height:clamp(460px,38vw,550px);padding-top:var(--s-xl);padding-bottom:var(--s-xl)}.plate-flip .plate-inner{grid-template-columns:minmax(0,1fr)var(--text)}.plate-flip .plate-text{grid-column:2;grid-row:1}.plate-flip .fig-draw{grid-column:1;grid-row:1;justify-self:start}.plate h3{font-size:clamp(1.5rem,1.1rem + 1.2vw,2.1rem);font-weight:620;font-stretch:110%;line-height:1.08;letter-spacing:-.018em;margin-bottom:var(--s-md)}.plate-text>p{font-size:17px;color:var(--text-secondary);max-width:52ch}.role{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-top:var(--s-lg);padding-top:12px;border-top:1px solid var(--rule);font-size:14px;color:var(--text-muted)}.role .label{color:var(--text-secondary)}.fig-plate{top:0;bottom:0;right:0;width:clamp(60%,100% - 420px,68%);-webkit-mask-image:linear-gradient(to right,transparent 0,#000 24%);mask-image:linear-gradient(to right,transparent 0,#000 24%)}.plate-flip .fig-plate{right:auto;left:0;-webkit-mask-image:linear-gradient(to left,transparent 0,#000 24%);mask-image:linear-gradient(to left,transparent 0,#000 24%)}.fig-draw{position:relative;overflow:visible;justify-self:end;width:100%;max-width:700px}.fig-draw svg{display:block;width:100%;height:auto;overflow:visible}.fig-draw svg.is-narrow{display:none}.fig-draw :is(path,circle,rect,ellipse){vector-effect:non-scaling-stroke}.d-wire{fill:none;stroke:var(--wire);stroke-width:1.25}.d-faint{fill:none;stroke:var(--rule);stroke-width:1}.d-head{fill:var(--wire)}.d-box{fill:var(--surface-1);stroke:var(--wire);stroke-width:1.25;transition:stroke .5s var(--ease)}.d-node{fill:var(--wire)}.d-term{fill:var(--surface-0);stroke:var(--wire);stroke-width:1.25}.d-glyph{fill:none;stroke:var(--bone);stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;opacity:.6;transition:opacity .5s var(--ease)}.d-label{font:500 10.5px/1 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;fill:var(--text-muted);transition:fill .5s var(--ease)}.d-mark{fill:var(--primary)}.d-mark.t1{opacity:.45}.d-mark.t2{opacity:.2}.fig-loop .d-bound{stroke-dasharray:3 5}.fig-loop .d-sign{fill:none;stroke:var(--bone);stroke-width:1.25}.fig-loop [data-blk].lit>:first-child{stroke:var(--primary)}.fig-loop [data-blk].lit .d-glyph{opacity:1}.fig-taxonomies .thread{fill:none;stroke:var(--wire);stroke-width:1;opacity:.5;transition:stroke .6s var(--ease),opacity .6s var(--ease)}.fig-taxonomies .stmt{fill:none;stroke:var(--bone);stroke-width:2.5;stroke-linecap:round;transition:stroke .6s var(--ease)}.fig-taxonomies .outcome.on .thread{stroke:var(--primary);opacity:1}.fig-taxonomies .outcome.on .stmt{stroke:var(--primary)}.fig-taxonomies .rung>path{fill:none;stroke:var(--wire);stroke-width:1.25;transition:stroke .5s var(--ease)}.fig-taxonomies .rung>circle{fill:var(--wire);transition:fill .5s var(--ease)}.fig-taxonomies .glyph path{fill:none;stroke:var(--bone);stroke-width:1.25;opacity:.75}.fig-taxonomies .glyph .dot{fill:var(--bone);opacity:.75}.fig-taxonomies .rung.lit>path{stroke:var(--bone)}.fig-taxonomies .rung.lit>circle{fill:var(--bone)}.fig-taxonomies .rung.lit .d-label{fill:var(--ink)}.fig-ontology .planes path{stroke:var(--rule)}.fig-ontology .planes .level{stroke-dasharray:2 6;opacity:.8}.fig-ontology .d-hollow{fill:var(--surface-0);stroke:var(--wire);stroke-width:1.25}.fig-ontology .d-open{fill:none;stroke:var(--wire);stroke-width:1.25}.fig-ontology .rels path{opacity:.8}.fig-ontology .types path{fill:none;stroke:var(--wire);stroke-width:1.25;stroke-dasharray:.1 4.5;stroke-linecap:round;opacity:.8}.fig-ontology .inds ellipse{fill:var(--bone)}.fig-ontology .case>*{opacity:0;transition:opacity .7s var(--ease)}.fig-ontology .case>.on{opacity:1}.fig-ontology .case .as{fill:none;stroke:var(--bone);stroke-width:1.25}.fig-ontology .case .inf{fill:none;stroke:var(--primary);stroke-width:1.25;stroke-dasharray:5 4}.fig-ontology .case .new{fill:var(--ink)}.fig-ontology .case .ghost{fill:var(--surface-0);stroke:var(--primary);stroke-width:1.25;stroke-dasharray:2.5 2.5}.fig-ontology .tiles .lit{stroke:var(--bone)}.fig-pipeline .d-frame{fill:none;stroke:var(--rule);stroke-width:1.25;transition:stroke .5s var(--ease)}.fig-pipeline .d-label{fill:var(--text-secondary)}.fig-pipeline .frame>.d-label{fill:var(--text-muted)}.fig-pipeline .lit>.d-box{stroke:var(--bone)}.fig-pipeline .lit>.d-label{fill:var(--ink)}.fig-pipeline .frame.lit>.d-frame{stroke:var(--wire)}.fig-pipeline svg.is-narrow .d-label{font-size:10px}@media(min-width:1360px){.plate-pipeline .plate-inner{grid-template-columns:minmax(300px,30%)minmax(0,1fr);column-gap:clamp(32px,3.5vw,56px)}.fig-pipeline{max-width:none}}@media(max-width:1359.98px){.fig-pipeline svg.is-wide{display:none}.fig-pipeline svg.is-narrow{display:block}.fig-pipeline{max-width:400px;justify-self:center}}.fig-atlas .stage{position:relative}.fig-atlas .a0{--tone:color-mix(in srgb, var(--primary) 56%, var(--surface-0))}.fig-atlas .a1{--tone:var(--bone)}.fig-atlas .a2{--tone:var(--wire)}.fig-atlas .ev circle{fill:var(--tone)}.fig-atlas .haze{fill:none;stroke:var(--tone);stroke-width:2.6;stroke-linecap:round;opacity:.5;vector-effect:none}.fig-atlas .lanes rect{fill:var(--tone)}.fig-atlas .lanes .k0{opacity:.36}.fig-atlas .lanes .k1{opacity:.92}.fig-atlas .lanes .k2{opacity:.56}.fig-atlas .lanes .k3{opacity:1}.fig-atlas .lanes .k4{opacity:.72}.fig-atlas .lanes .k5{opacity:.46}.fig-atlas .lanes rect.on{fill:var(--primary);opacity:1}.fig-atlas .ticks{fill:none;stroke:var(--wire);stroke-width:1;opacity:.7}.fig-atlas .ring{fill:none;stroke:var(--primary);stroke-width:1.25}.fig-atlas .hit{fill:var(--primary);transition:opacity .25s}.fig-atlas .link{fill:none;stroke:var(--primary);stroke-width:1;opacity:.45;transition:opacity .3s}.fig-atlas .pin{fill:none;stroke:var(--primary);stroke-width:1.25;transition:opacity .3s}.fig-atlas .moving :is(.link,.pin,.hit){opacity:0;transition-duration:.12s}.fig-atlas .card{position:absolute;z-index:1;margin:0;padding:6px 9px 5px;transform:translate(13px,calc(-100% - 11px));border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--surface-1);font:500 10.5px/1.55 var(--font-mono);letter-spacing:.03em;white-space:nowrap;transition:opacity .25s}.fig-atlas .card.left{transform:translate(calc(-100% - 13px),calc(-100% - 11px))}.fig-atlas .card.below{transform:translate(13px,13px)}.fig-atlas .card.left.below{transform:translate(calc(-100% - 13px),13px)}.fig-atlas .card.off{opacity:0;transition-duration:.12s}.fig-atlas .card div{display:grid;grid-template-columns:5ch auto;column-gap:10px}.fig-atlas .card dt{color:var(--text-muted)}.fig-atlas .card dd{margin:0;color:var(--ink)}.section{margin-top:var(--s-3xl)}.section h2{padding-bottom:var(--s-md);border-bottom:2px solid var(--rule-strong)}.more{position:relative}.more-list{position:relative;z-index:2;width:min(58%,820px)}.fig-more .still img{object-fit:cover;object-position:right center}.fig-more{top:-72px;bottom:-84px;right:0;width:min(46vw,700px);-webkit-mask-image:linear-gradient(to right,transparent 0,#000 42%);mask-image:linear-gradient(to right,transparent 0,#000 42%)}.panel{position:relative;z-index:2;margin-top:var(--s-2xl);padding:var(--s-lg)var(--s-lg)var(--s-xl);border-top:2px solid var(--primary);background:var(--surface-1);display:grid;grid-template-columns:minmax(0,4fr)minmax(0,5fr)minmax(0,3fr);gap:var(--s-md)var(--s-2xl);align-items:start}.panel p{font-size:17px;color:var(--text-secondary);max-width:52ch}.panel .btn{justify-self:end}@media(max-width:999.98px){.plate-inner{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding-top:var(--s-lg);padding-bottom:0}.plate-text{width:auto;max-width:620px;padding:0 0 var(--s-xl)}.fig-draw{order:-1;max-width:680px;margin:0 0 var(--s-lg)}.fig-plate,.plate-flip .fig-plate{position:relative;width:auto;height:clamp(260px,70vw,420px);-webkit-mask-image:none;mask-image:none}.plate-graph .plate-inner{padding-top:0}.more-list{width:100%}.fig-more{top:-128px;bottom:auto;height:200px;width:min(62%,420px)}}@media(min-width:760px) and (max-width:999.98px){.plate-pipeline .plate-inner{display:grid;grid-template-columns:minmax(0,1fr)380px;column-gap:var(--s-xl);align-items:center;padding-bottom:var(--s-lg)}.plate-pipeline .fig-pipeline{order:0;margin:0}.plate-pipeline .plate-text{padding:0}}@media(max-width:860px){.page-head{grid-template-columns:1fr;padding-top:var(--s-xl)}.hero-plate{display:block;min-height:0}.fig-hero{position:relative;inset:auto;height:clamp(260px,72vw,380px)}.about{width:auto;margin:0;padding-bottom:0}.panel{grid-template-columns:1fr}.panel .btn{justify-self:start}}@media(max-width:639.98px){.fig-taxonomies svg.is-wide{display:none}.fig-taxonomies svg.is-narrow{display:block}.fig-taxonomies .d-label{font-size:10px;letter-spacing:.02em}.fig-taxonomies{max-width:420px}.fig-ontology .d-label{font-size:15px}.fig-atlas .card{font-size:10px;padding:5px 7px 4px}}@media(max-width:440px){.fig-ontology .d-label{font-size:19px}}.page{padding-top:var(--s-2xl)}.page-top{display:grid;gap:var(--s-lg);max-width:900px;padding-bottom:var(--s-2xl)}.page-top .lede{font-size:clamp(17px,1rem + .35vw,21px);max-width:60ch}.group{display:grid;grid-template-columns:minmax(0,4fr)minmax(0,8fr);gap:var(--s-lg)var(--s-2xl);padding:var(--s-xl)0 var(--s-2xl);border-top:2px solid var(--rule-strong)}.group+.group{border-top:1px solid var(--rule)}.group-head p{margin-top:var(--s-sm);color:var(--text-muted);font-size:15px}.group-body{min-width:0}.area{padding-bottom:var(--s-xl);scroll-margin-top:calc(var(--head) + 20px)}.area+.area{padding-top:var(--s-xl);border-top:1px solid var(--rule)}.area:last-child{padding-bottom:0}.area h3{font-size:clamp(1.25rem,1.05rem + .6vw,1.55rem);font-weight:620;font-stretch:108%;line-height:1.15;letter-spacing:-.012em;margin-bottom:var(--s-sm)}.area>p{font-size:17px;color:var(--text-secondary);max-width:62ch}.area>.label{margin-top:var(--s-lg);margin-bottom:var(--s-sm)}.questions{max-width:62ch}.questions li{position:relative;padding:9px 0 9px 22px;border-top:1px solid var(--rule);color:var(--ink)}.questions li::before{content:"";position:absolute;left:2px;top:19px;width:8px;height:1.5px;background:var(--primary)}.empty{font-size:clamp(1.15rem,1rem + .5vw,1.4rem);font-weight:560;font-stretch:106%;color:var(--ink);max-width:40ch}.empty-note{margin-top:var(--s-md);color:var(--text-secondary);display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline}.person-links{display:flex;flex-wrap:wrap;gap:var(--s-sm)var(--s-lg);margin-top:var(--s-lg)}.caps{margin:0}.caps>div{display:grid;grid-template-columns:minmax(0,4fr)minmax(0,7fr);gap:4px var(--s-xl);padding:14px 0;border-top:1px solid var(--rule)}.caps>div:first-child{border-top:0;padding-top:0}.caps dt{font-weight:600;font-stretch:104%;font-size:17px;color:var(--ink)}.caps dd{margin:0;color:var(--text-secondary);max-width:58ch}.page>.panel{margin-top:var(--s-xl)}.form{display:grid;gap:var(--s-lg);max-width:620px}.field{display:grid;gap:6px}.field label{font-size:14px;font-weight:600;color:var(--text-secondary)}.field .hint{font-weight:400;color:var(--text-muted);margin-left:6px}.field input,.field textarea{width:100%;padding:10px 12px;border:1px solid var(--wire);border-radius:var(--r-md);background:var(--surface-1);color:var(--ink);font:inherit;font-size:16px}.field textarea{resize:vertical;min-height:150px}.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--primary-ink);outline-offset:1px;border-color:var(--primary)}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form .btn{justify-self:start}.form .btn:disabled{opacity:.6;cursor:default}.form-error{padding:10px 12px;border-left:2px solid var(--primary);background:var(--surface-1);color:var(--ink)}.form-done{max-width:620px;padding:var(--s-lg);border-top:2px solid var(--primary);background:var(--surface-1)}.form-done h3{margin-bottom:var(--s-sm);font-size:20px}.form-done p{color:var(--text-secondary)}[hidden]{display:none!important}@media(max-width:860px){.page{padding-top:var(--s-xl)}.page-top{padding-bottom:var(--s-xl)}.group{grid-template-columns:1fr;padding:var(--s-lg)0 var(--s-xl)}.caps>div{grid-template-columns:1fr}}