@font-face{font-family:Neue Montreal;font-style:normal;font-weight:400;src:local("PP Neue Montreal Regular"),local("PPNeueMontreal-Regular"),local("Neue Montreal Regular"),local("NeueMontreal-Regular")}@font-face{font-family:Neue Montreal;font-style:normal;font-weight:600;src:local("PP Neue Montreal Semibold"),local("PPNeueMontreal-Semibold"),local("Neue Montreal Semibold"),local("NeueMontreal-Semibold")}@font-face{font-family:Neue Montreal;font-style:normal;font-weight:700;src:local("Neue Montreal Bold"),local("NeueMontreal-Bold"),local("PP Neue Montreal Extrabold"),local("PPNeueMontreal-Extrabold")}@font-face{font-family:Sohne;font-style:normal;font-weight:400;src:local("Söhne Buch"),local("Sohne-Buch"),local("Söhne")}:root{color-scheme:light;--color-black: #000000;--color-gray: #8a8a8a;--color-white: #ffffff;--color-void-black: #0a0a0a;--color-manifold-ash: #4d4d4d;--color-system-gray: #bdbdbd;--color-cognition-white: #f2f2f2;--color-topology-blue: #0052ff;--color-natural-beige: #f3f0ea;--color-canvas: #f5f5f5;--color-bg: var(--color-canvas);--color-bg-soft: var(--color-cognition-white);--color-panel: #ffffff;--color-text: var(--color-void-black);--color-muted: var(--color-manifold-ash);--color-subtle: var(--color-gray);--color-line: var(--color-system-gray);--color-accent: var(--color-topology-blue);--color-accent-soft: rgba(0, 82, 255, .08);--shadow-soft: 0 20px 60px rgba(10, 10, 10, .08);--font-display: "Neue Montreal", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-paragraph: "Sohne", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--type-xl: 1.5rem;--leading-xl: 2rem;--type-lg: 1.25rem;--leading-lg: 1.75rem;--type-md: 1rem;--leading-md: 1.5rem;--type-sm: .875rem;--leading-sm: 1.25rem;font-family:var(--font-paragraph)}*{box-sizing:border-box}html{background:var(--color-bg)}body{min-width:320px;margin:0;color:var(--color-text);background:var(--color-bg);font-size:16px;line-height:1.5}a{color:inherit}main{min-height:70vh}.home-stage{display:grid;min-height:100vh;position:relative;align-items:center;justify-items:end;overflow:hidden;padding:0 clamp(24px,7vw,96px);background:var(--color-bg)}.home-copy{position:absolute;top:56px;left:72px;z-index:2}.home-title{display:grid;margin:0;color:var(--color-text);font-family:var(--font-display);font-size:5.9rem;font-weight:700;line-height:1.08;letter-spacing:0}.home-divider{width:88px;height:8px;margin-top:44px;background:var(--color-topology-blue)}.home-subtitle{margin:28px 0 0;color:var(--color-text);font-family:var(--font-paragraph);font-size:1.18rem;font-weight:400;line-height:1.35;letter-spacing:0}.top-nav{position:absolute;top:58px;right:72px;z-index:3;display:flex;gap:50px}.top-home-link{position:absolute;top:58px;left:72px;z-index:3}.top-nav a,.top-home-link{color:var(--color-text);font-family:var(--font-display);font-size:1.05rem;font-weight:400;line-height:1;letter-spacing:0;text-decoration:none}.home-logo{position:absolute;bottom:40px;left:72px;z-index:2;display:block;width:54px;aspect-ratio:1;background:var(--color-topology-blue);mask:url(/dcog-logo.svg) center / contain no-repeat;-webkit-mask:url(/dcog-logo.svg) center / contain no-repeat}.home-disclosure{position:absolute;right:72px;bottom:40px;z-index:2;margin:0;color:#8a8a8a;font-family:var(--font-display);font-size:.78rem;font-weight:400;line-height:1;letter-spacing:0;pointer-events:none;white-space:nowrap}.home-stage .three-scene{justify-self:end;width:min(84vmin,960px);min-height:0;margin-right:clamp(0px,3vw,48px);aspect-ratio:1}.page-transition{position:fixed;top:var(--transition-top, 112px);left:var(--transition-left, 72px);z-index:2147483646;width:var(--transition-width, 88px);height:var(--transition-height, 8px);background:var(--color-topology-blue);opacity:0;pointer-events:none}html.is-page-transitioning-in,html.is-page-transitioning-in body{background:var(--color-topology-blue)}html.is-page-transitioning-in:before,html.is-page-transitioning-in body:before{position:fixed;inset:-12vh -12vw;inset:-12dvh -12vw;z-index:2147483647;background:var(--color-topology-blue);content:"";pointer-events:none}.page-transition.is-leaving{animation:divider-expand-out .72s cubic-bezier(.76,0,.24,1) forwards;opacity:1;will-change:top,left,width,height}.page-transition.is-entering{animation:divider-collapse-in .76s cubic-bezier(.76,0,.24,1) forwards;opacity:1;will-change:top,left,width,height}.page-transition.is-entering.is-zero-target{animation-name:divider-collapse-to-point}.page-transition.is-covered{top:-12vh;top:-12dvh;left:-12vw;width:124vw;height:124vh;height:124dvh;opacity:1}@keyframes divider-expand-out{0%{top:var(--transition-top, 112px);left:var(--transition-left, 72px);width:var(--transition-width, 88px);height:var(--transition-height, 8px)}42%{top:var(--transition-top, 112px);left:0;width:100vw;height:var(--transition-height, 8px)}to{top:-12vh;top:-12dvh;left:-12vw;width:124vw;height:124vh;height:124dvh}}@keyframes divider-collapse-in{0%{top:-12vh;top:-12dvh;left:-12vw;width:124vw;height:124vh;height:124dvh}58%{top:var(--transition-top, 112px);left:0;width:100vw;height:var(--transition-height, 8px);opacity:1}to{top:var(--transition-top, 112px);left:var(--transition-left, 72px);width:var(--transition-width, 88px);height:var(--transition-height, 8px);opacity:0}}@keyframes divider-collapse-to-point{0%{top:-12vh;top:-12dvh;left:-12vw;width:124vw;height:124vh;height:124dvh;opacity:1}to{top:var(--transition-top, 50vh);left:0;width:100vw;height:0;opacity:1}}@media(max-width:1100px){.home-copy{top:40px;left:40px}.home-title{font-size:4.4rem}.top-nav{top:42px;right:40px;gap:34px}.top-home-link{top:42px;left:40px}.home-disclosure{right:40px}.home-logo{left:40px;width:48px}.home-stage .three-scene{width:min(80vmin,820px);margin-right:0}}.site-header,.site-footer,.section-shell{width:min(1120px,calc(100% - 32px));margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0}.brand,.site-nav,.site-footer{display:flex;align-items:center}.brand{gap:10px;color:var(--color-text);font-family:var(--font-display);font-weight:700;text-decoration:none}.brand-mark{width:18px;height:18px;background:var(--color-void-black)}.site-nav{gap:6px}.site-nav a{border-radius:6px;padding:8px 12px;color:var(--color-muted);font-family:var(--font-display);font-size:.95rem;font-weight:400;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--color-text);background:var(--color-cognition-white)}.eyebrow{margin:0 0 12px;color:var(--color-gray);font-family:var(--font-display);font-size:var(--type-sm);font-weight:400;line-height:var(--leading-sm);letter-spacing:0;text-transform:none}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{font-family:var(--font-display);font-weight:700;margin:0;line-height:1.1}h1{max-width:720px;font-size:clamp(3rem,9vw,6.6rem)}h2{font-size:clamp(2rem,5vw,3.75rem)}h3{font-size:1.1rem}.lede{max-width:680px;margin:22px 0 0;color:var(--color-muted);font-family:var(--font-paragraph);font-size:var(--type-lg);line-height:var(--leading-lg)}.three-scene{position:relative;min-height:420px;overflow:hidden;background:transparent;cursor:grab;touch-action:none;user-select:none}.three-scene.is-dragging{cursor:grabbing}.three-scene canvas,.three-scene__fallback{position:absolute;inset:0;width:100%;height:100%}.three-scene__fallback{display:grid;place-items:center;opacity:0;pointer-events:none}.three-scene__fallback:before{width:62%;border:2px solid var(--color-natural-beige);aspect-ratio:1;border-radius:50%;content:"";transform:rotateX(68deg) rotate(-18deg)}.three-scene__fallback span{position:absolute;width:8px;border-radius:50%;aspect-ratio:1;background:var(--color-topology-blue)}.three-scene__fallback span:nth-child(1){transform:translate(-120px,-8px)}.three-scene__fallback span:nth-child(2){transform:translate(16px,-78px)}.three-scene__fallback span:nth-child(3){transform:translate(126px,30px)}.research-card{border:1px solid var(--color-line);border-radius:0;background:var(--color-white)}.research-card span,.research-card p{color:var(--color-muted)}.research-list{display:grid;gap:16px;padding-bottom:84px}.research-card{display:grid;gap:10px;padding:24px;text-decoration:none;transition:border-color .16s ease,transform .16s ease}.research-card:hover{border-color:var(--color-topology-blue);transform:translateY(-2px)}.research-card p,.research-card span{margin:0}.research-card span{font-family:var(--font-paragraph);font-size:var(--type-md);line-height:var(--leading-md)}.research-card p,.tag-list li,.site-footer,.back-link{font-family:var(--font-display);line-height:var(--leading-sm)}.page-intro{padding:72px 0 56px}.research-page{width:min(100%,calc(100vw - 32px));min-height:calc(100vh - 174px);margin:0 auto;padding:132px 0 108px}.vivarium-page{display:grid;min-height:calc(100vh - 174px);place-items:center;padding:clamp(48px,7vw,92px) 24px clamp(64px,8vw,108px);overflow:hidden}.contact-page{display:grid;min-height:calc(100vh - 174px);place-items:center;padding:clamp(112px,14vw,184px) 24px clamp(96px,12vw,156px)}.vivarium-figure{width:min(44vw,560px);margin:0;animation:vivarium-float 7s ease-in-out infinite}.vivarium-figure img{display:block;width:100%;height:auto}.vivarium-copy{width:min(620px,100%);margin-top:clamp(24px,4vw,48px);text-align:center}.contact-copy{width:min(720px,100%);text-align:center}.vivarium-subtitle,.contact-subtitle{margin:0;color:var(--color-text);font-family:var(--font-display);font-size:1.18rem;font-weight:400;line-height:1.2}.contact-subtitle{margin-bottom:18px}.vivarium-description{margin:18px 0 0;color:var(--color-manifold-ash);font-family:var(--font-paragraph);font-size:var(--type-md);line-height:var(--leading-md)}.contact-description{margin:0;color:var(--color-manifold-ash);font-family:var(--font-paragraph);font-size:var(--type-md);line-height:var(--leading-md)}.contact-description+.contact-description{margin-top:var(--leading-md)}.vivarium-description a,.contact-description a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.16em}.manifold-page{width:min(100%,calc(100vw - 32px));margin:0 auto;padding:132px 0 108px}.manifold-intro{max-width:1120px;margin:0 auto 44px;text-align:left}.manifold-subtitle{margin:0;color:var(--color-text);font-family:var(--font-display);font-size:1.18rem;font-weight:400;line-height:1.2;letter-spacing:0}.manifold-description{max-width:780px;margin:22px 0 0;color:var(--color-manifold-ash);font-family:var(--font-paragraph);font-size:var(--type-md);font-weight:400;line-height:var(--leading-md);letter-spacing:0}.manifold-page .filters{display:flex;flex-wrap:wrap;gap:12px;max-width:1120px;margin:0 auto 28px}.manifold-page .pill{border:.5px solid var(--color-line);border-radius:999px;padding:10px 15px;color:var(--color-manifold-ash);background:transparent;font-family:var(--font-display);font-size:.78rem;font-weight:400;line-height:1;letter-spacing:0;cursor:pointer}.manifold-page .pill.on{border-color:var(--color-topology-blue);color:var(--color-topology-blue);background:var(--color-accent-soft)}.manifold-page .legend{display:flex;flex-wrap:wrap;gap:20px;align-items:center;max-width:1120px;margin:0 auto 28px}.manifold-page .legend span{display:inline-flex;align-items:center;gap:8px;color:var(--color-gray);font-family:var(--font-display);font-size:.78rem;line-height:1}.manifold-page .legend i{display:inline-block;width:9px;height:9px;border-radius:50%}.manifold-page .legend-none{border:.5px solid var(--color-gray);background:var(--color-cognition-white)}.manifold-page .legend-weak{border:.5px solid rgba(77,77,77,.42);background:#bdbdbd38}.manifold-page .legend-moderate{border:.5px solid rgba(0,82,255,.24);background:#0052ff0d}.manifold-page .legend-strong{border:.5px solid rgba(0,82,255,.38);background:#0052ff14}.manifold-page .legend-exceptional{border:.5px solid var(--color-topology-blue);background:#0052ff3d}.manifold-page .legend-established{border:.5px solid var(--color-line);background:var(--color-cognition-white)}.manifold-page .legend-emerging{border:.5px solid rgba(0,82,255,.32);background:#0052ff14}.manifold-page .legend-theoretical{border:.5px solid rgba(10,10,10,.32);background:#bdbdbd38}.manifold-page .lsep{border-left:.5px solid var(--color-line);padding-left:20px}.manifold-page .hint,.manifold-page .note{max-width:1120px;margin:0 auto;color:var(--color-gray);font-family:var(--font-paragraph);font-size:.82rem;line-height:1.45}.manifold-page .hint{margin-bottom:36px}.manifold-page .note{margin-top:54px}.manifold-page .wrap{width:calc(100% - clamp(32px,5vw,96px));margin:0 auto;overflow-x:auto;border-top:.5px solid var(--color-line);border-bottom:.5px solid var(--color-line);background:var(--color-bg)}.manifold-page table{width:100%;min-width:2000px;border-collapse:collapse}.manifold-page th,.manifold-page td{border-bottom:.5px solid rgba(189,189,189,.55)}.manifold-page thead th{position:sticky;top:0;z-index:2;min-width:78px;padding:15px 10px;color:var(--color-text);background:var(--color-cognition-white);font-family:var(--font-display);font-size:.72rem;font-weight:400;line-height:1.2;text-align:center}.manifold-page thead th:first-child{left:0;z-index:4;min-width:180px;text-align:left}.manifold-page thead th .sub{margin-top:5px;color:var(--color-gray);font-size:.62rem;line-height:1.15}.manifold-page thead th a,.manifold-page .cap a,.manifold-page td.c a{display:block;color:inherit;text-decoration:none}.manifold-page thead th.em{color:var(--color-topology-blue);background:#0052ff14}.manifold-page thead th.thr{color:var(--color-manifold-ash);background:#bdbdbd38}.manifold-page .cap{position:sticky;left:0;z-index:1;min-width:180px;border-right:.5px solid var(--color-line);padding:14px 12px;color:var(--color-text);background:var(--color-bg);font-family:var(--font-display);font-size:.78rem;font-weight:400;line-height:1.2}.manifold-page .cap .tip{margin-top:6px;color:var(--color-gray);font-family:var(--font-paragraph);font-size:.66rem;line-height:1.2}.manifold-page tr:hover .cap{background:var(--color-cognition-white)}.manifold-page .cat td{padding:14px 12px;color:var(--color-gray);background:var(--color-cognition-white);font-family:var(--font-display);font-size:.68rem;font-weight:400;letter-spacing:.04em;text-transform:uppercase}.manifold-page .cat .cat-label{position:sticky;left:0;z-index:3;min-width:180px;border-right:.5px solid var(--color-line)}.manifold-page td.c{min-width:78px;padding:12px 10px;font-family:var(--font-display);font-size:.7rem;font-weight:400;line-height:1;text-align:center;white-space:nowrap}.manifold-page td.c[data-tip]:hover,.manifold-page th[data-tip]:hover,.manifold-page .cap[data-tip]:hover{filter:brightness(.98)}.manifold-page td.n{color:var(--color-gray);background:var(--color-cognition-white)}.manifold-page td.w{color:var(--color-manifold-ash);background:#bdbdbd38}.manifold-page td.m{color:var(--color-manifold-ash);background:#0052ff0d}.manifold-page td.s{color:var(--color-topology-blue);background:#0052ff14}.manifold-page td.e{color:var(--color-topology-blue);background:#0052ff3d}.manifold-page td.sep,.manifold-page th.sep{width:2px;min-width:2px;max-width:2px;border:none;padding:0}.manifold-page th.sep.s1,.manifold-page td.sep.s1{background:#0052ff52}.manifold-page th.sep.s2,.manifold-page td.sep.s2{background:#0a0a0a3d}.tt{position:fixed;z-index:2147483645;max-width:320px;border:.5px solid var(--color-line);padding:10px 12px;color:var(--color-text);background:var(--color-bg);box-shadow:0 10px 32px #0a0a0a14;font-family:var(--font-paragraph);font-size:.78rem;font-weight:400;line-height:1.4;opacity:0;pointer-events:none;transform:translate(-50%,-4px);transition:opacity .12s ease,transform .12s ease}.tt.on{opacity:1;transform:translate(-50%)}.tt-u{margin-top:8px;color:var(--color-gray);font-size:.68rem;overflow-wrap:anywhere}@keyframes vivarium-float{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-14px,0)}}.post{width:min(780px,calc(100% - 32px));margin:0 auto;padding:64px 0 96px}.post-header{padding-bottom:32px;border-bottom:1px solid var(--color-line)}.back-link{display:inline-block;margin-bottom:24px;color:var(--color-accent);font-weight:600;text-decoration:none}.tag-list{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:24px 0 0;list-style:none}.tag-list li{border:1px solid var(--color-line);border-radius:999px;padding:4px 10px;color:var(--color-muted);font-size:var(--type-sm)}.prose{padding-top:32px}.prose p,.prose li{color:var(--color-manifold-ash);font-family:var(--font-paragraph);font-size:var(--type-md);line-height:var(--leading-md)}.prose a{color:var(--color-accent)}.callout{border-left:4px solid var(--color-topology-blue);margin:28px 0;padding:16px 18px;color:var(--color-text);background:var(--color-cognition-white)}.site-footer{justify-content:space-between;gap:16px;border-top:.5px solid var(--color-line);padding:28px 0 40px;color:#8a8a8a}.site-footer p{margin:0}.site-footer-logo{display:block;width:32px;background:var(--color-text);aspect-ratio:1;mask:url(/dcog-logo.svg) center / contain no-repeat;-webkit-mask:url(/dcog-logo.svg) center / contain no-repeat}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}.page-transition{display:none}.vivarium-figure{animation:none}.three-scene canvas{opacity:0}.three-scene__fallback{opacity:1}}@media(max-width:760px){.home-stage{align-items:end;justify-items:center;padding:220px 24px 44px}.home-copy{top:28px;left:24px}.home-title{font-size:2.88rem}.home-divider{width:54px;height:6px;margin-top:30px}.home-subtitle{max-width:220px;margin-top:20px;font-size:.95rem}.top-nav{top:30px;right:24px;flex-direction:column;align-items:flex-end;gap:16px}.top-home-link{top:30px;left:24px}.top-nav a,.top-home-link{font-size:.82rem}.home-stage .three-scene{justify-self:center;width:min(96vw,580px);margin-right:0}.home-logo{bottom:22px;left:24px;width:38px}.home-disclosure{right:24px;bottom:22px;font-size:.7rem}.vivarium-page{min-height:calc(100vh - 240px);padding:42px 24px 64px}.vivarium-figure{width:min(86vw,420px)}.vivarium-copy{margin-top:22px;text-align:left}.contact-page{min-height:calc(100vh - 240px);padding:132px 24px 72px}.contact-copy{text-align:left}.manifold-page{padding:128px 0 72px}.manifold-page .filters,.manifold-page .legend,.manifold-page .hint,.manifold-page .note{width:min(100%,calc(100vw - 48px))}.manifold-page .legend{gap:10px}.site-header{align-items:flex-start;flex-direction:column}.three-scene{min-height:320px}h1{font-size:clamp(2.6rem,18vw,4.8rem)}}
