:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-10: 40px;--space-11: 44px;--space-12: 48px;--space-14: 56px;--space-16: 64px;--space-20: 80px;--space-24: 96px}:root{--paper: oklch(.986 .004 95);--paper-2: oklch(.962 .006 95);--ink: oklch(.205 .012 70);--ink-soft: oklch(.4 .012 70);--muted: oklch(.52 .01 75);--faint: oklch(.525 .009 80);--line: oklch(.875 .006 85);--line-soft: oklch(.925 .005 90);--line-strong:oklch(.64 .008 85);--accent: oklch(.45 .072 158);--accent-ink: oklch(.38 .072 158);--accent-wash:oklch(.95 .022 158);--error: oklch(.5 .16 25);--font-display: "Newsreader", Georgia, serif;--font-sans: "Archivo", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace;--maxw: 1320px;--gutter: clamp(20px, 4.5vw, 72px);--col-gap: clamp(16px, 1.6vw, 28px);--ease: cubic-bezier(.22, .61, .36, 1)}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{font-family:var(--font-sans);background:var(--paper);color:var(--ink);font-size:17px;line-height:1.55;font-weight:400;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}::selection{background:var(--accent);color:var(--paper)}.skip-link{position:absolute;left:12px;top:-60px;z-index:200;background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:12px 20px;border-radius:1px;transition:top .2s var(--ease)}.skip-link:focus{top:12px}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.site-footer :focus-visible,.join-recruit :focus-visible,.btn-on-dark:focus-visible{outline-color:var(--paper)}.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}.grid12{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--col-gap)}.rule{border:0;border-top:1px solid var(--line)}.rule-ink{border:0;border-top:1.5px solid var(--ink)}.col-1-4{grid-column:1 / span 4}.col-5-8{grid-column:5 / span 8}.col-1-7{grid-column:1 / span 7}.col-9-4{grid-column:9 / span 4}.col-span-4{grid-column:span 4}.maxw-46{max-width:46ch}.maxw-60{max-width:60ch}.maxw-42{max-width:42ch}.maxw-18{max-width:18ch}.mt-18{margin-top:18px}.mt-20{margin-top:20px}.mt-24{margin-top:24px}.mt-26{margin-top:26px}.mt-28{margin-top:28px}.mt-34{margin-top:34px}.mt-40{margin-top:40px}.balance{text-wrap:balance}.pt-0{padding-top:0}.bb-0{border-bottom:0}.ph-4x5{aspect-ratio:4 / 5}.ph-3x4{aspect-ratio:3 / 4}.ph-1x1{aspect-ratio:1 / 1}.kicker{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink);font-weight:500;margin-bottom:var(--space-1)}.mono{font-family:var(--font-mono)}.idx{font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;color:var(--faint)}.serif{font-family:var(--font-display)}.display{font-family:var(--font-display);font-weight:400;line-height:.98;letter-spacing:-.018em;font-size:clamp(48px,8vw,116px)}.display-inner{font-size:clamp(40px,6vw,84px)}.h-section{font-family:var(--font-display);font-weight:420;font-size:clamp(30px,4vw,54px);line-height:1.02;letter-spacing:-.015em}.lede{font-size:clamp(19px,1.6vw,24px);line-height:1.45;color:var(--ink-soft);font-weight:380}.italic-serif,.taxon{font-family:var(--font-display);font-style:italic}.section{padding-block:clamp(56px,8vw,128px)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-bottom:24px;margin-bottom:40px;border-top:1.5px solid var(--ink);padding-top:20px}.section-head .label{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.link-arrow{display:inline-flex;align-items:center;gap:.5em;font-family:var(--font-mono);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);border-bottom:1.5px solid var(--ink);padding-bottom:4px}.link-arrow:hover{color:var(--accent-ink);border-color:var(--accent)}.link-arrow:active{color:var(--accent-ink)}.btn{display:inline-flex;align-items:center;gap:.6em;font-family:var(--font-mono);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--paper);background:var(--ink);padding:16px 24px;border-radius:1px}.btn:hover{background:var(--accent-ink)}.btn:active{background:#043d24}.btn[disabled],.btn:disabled{background:var(--line-strong);color:var(--muted);cursor:not-allowed;transform:none}.btn-ghost{color:var(--ink);background:transparent;border:1.5px solid var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}.btn-on-dark{background:var(--paper);color:var(--ink)}.btn-on-dark:hover{background:var(--accent);color:var(--paper)}.topbar{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:40px;white-space:nowrap;gap:16px}.topbar .tb-l{overflow:hidden;text-overflow:ellipsis}.topbar .live{display:inline-flex;align-items:center;gap:8px}.topbar .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 var(--accent)}.masthead{position:sticky;top:0;z-index:50;background:color-mix(in oklch,var(--paper) 88%,transparent);backdrop-filter:blur(12px) saturate(1.4);border-bottom:1px solid var(--line)}.masthead .wrap{display:flex;align-items:center;justify-content:space-between;height:80px}.brand{display:flex;align-items:center;gap:12px}.brand .glyph{width:32px;height:32px;flex:none}.brand .wordmark{line-height:1}.brand .wm-1{display:block;font-family:var(--font-sans);font-weight:700;font-size:16.5px;letter-spacing:.01em;text-transform:uppercase}.brand .wm-2{display:block;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:4px}.nav{display:flex;align-items:center;gap:clamp(16px,1.9vw,28px)}.nav a{font-size:14.5px;font-weight:500;color:var(--ink-soft);position:relative;padding-block:8px}.nav a:after{content:"";position:absolute;left:0;bottom:0;height:1.5px;width:0;background:var(--accent)}.nav a:hover{color:var(--ink)}.nav a:hover:after,.nav a[aria-current=page]:after{width:100%}.nav a[aria-current=page]{color:var(--ink)}.nav .navcta{color:var(--paper)}.nav .navcta:after{display:none}.nav .navcta .btn{padding:9px 16px}.menu-btn{display:none}.site-footer{background:var(--ink);color:var(--paper);padding-block:clamp(48px,6vw,88px)}.site-footer a{color:color-mix(in oklch,var(--paper) 78%,transparent)}.site-footer a:hover{color:var(--paper)}.site-footer .mono-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in oklch,var(--paper) 50%,transparent);margin-bottom:16px}.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:48px}.foot-links{display:flex;flex-direction:column;gap:12px;font-size:15px}.foot-big{font-family:var(--font-display);font-size:clamp(28px,4vw,46px);line-height:1;letter-spacing:-.01em}.foot-affil{font-family:var(--font-mono);margin-top:22px;font-size:12.5px;letter-spacing:.08em;color:color-mix(in oklch,var(--paper) 55%,transparent)}.foot-rule{border-color:color-mix(in oklch,var(--paper) 18%,transparent);margin-top:56px}.foot-base{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:24px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in oklch,var(--paper) 50%,transparent)}.reveal{opacity:1;transform:none}.ph{position:relative;overflow:hidden;background:var(--paper-2);background-image:repeating-linear-gradient(-45deg,color-mix(in oklch,var(--ink) 5%,transparent) 0 1px,transparent 1px 9px);border:1px solid var(--line);display:flex;align-items:flex-end}.ph:after{content:attr(data-label);font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:8px 12px;background:var(--paper);border-top:1px solid var(--line);border-right:1px solid var(--line)}.pubbar{position:sticky;top:80px;z-index:40;background:color-mix(in oklch,var(--paper) 90%,transparent);backdrop-filter:blur(10px);border-block:1px solid var(--line)}.pubbar-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:16px;flex-wrap:wrap}.filters{display:flex;gap:8px;flex-wrap:wrap}.chip{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;padding:8px 16px;border:1px solid var(--line-strong);border-radius:100px;color:var(--ink-soft)}.chip:hover{border-color:var(--ink);color:var(--ink)}.chip.is-on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.search{display:flex;align-items:center;gap:8px;border-bottom:1.5px solid var(--ink);padding-bottom:4px;min-width:240px;flex:1;max-width:320px}.search:focus-within{border-color:var(--accent)}.search-ico{font-size:16px;color:var(--muted)}.search input{border:0;background:none;font:inherit;font-size:14px;width:100%;color:var(--ink)}.search input::placeholder{color:var(--faint)}.search input:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.pub-count{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-block:32px 8px}.pub-empty{padding-block:72px;display:flex;flex-direction:column;align-items:flex-start;gap:20px}.pub-empty p{font-family:var(--font-display);font-size:28px}.pub[hidden],.pub-empty[hidden],.pub-count[hidden]{display:none}#pubList .pub{cursor:default}.pub-title a{color:inherit}.pub:hover .pub-title,.pub-title a:hover{color:var(--accent-ink)}.pub-links{display:flex;gap:16px;margin-top:12px;flex-wrap:wrap}.pub-links a{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:2px;white-space:nowrap}.pub-links a:hover{color:var(--accent-ink);border-color:var(--accent)}@media(max-width:720px){.pubbar{top:64px}.pubbar-inner{gap:16px}.search{max-width:none}.pub{grid-template-columns:60px 1fr!important}.pub-tag{display:none}}.pi-section{padding-block:clamp(48px,6vw,88px);border-bottom:1px solid var(--line)}.pi{display:grid;grid-template-columns:360px 1fr;gap:clamp(28px,4vw,64px);align-items:start}.pi-name{font-family:var(--font-display);font-weight:420;font-size:clamp(34px,4.4vw,62px);line-height:1;letter-spacing:-.02em;margin:16px 0 8px}.pi-role{font-size:13px;letter-spacing:.04em;color:var(--muted)}.pi-links{display:flex;gap:24px;flex-wrap:wrap;margin-top:32px}.group{padding-block:clamp(40px,5vw,72px);border-bottom:1px solid var(--line)}.people-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,2vw,32px)}.person{scroll-margin-top:96px}.person figcaption{margin-top:16px}.person-n{font-family:var(--font-display);font-weight:460;font-size:21px;line-height:1.1;letter-spacing:-.01em}.person-r{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink);margin:8px 0}.person-f{font-size:14px;color:var(--ink-soft);line-height:1.4}.alumni-list{list-style:none;border-top:1px solid var(--line)}.alum{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:16px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.alum:hover{padding-left:12px;background:var(--accent-wash)}.alum-n{font-family:var(--font-display);font-size:clamp(20px,2vw,28px);font-weight:440;letter-spacing:-.01em}.alum-now{font-size:12.5px;letter-spacing:.04em;color:var(--muted)}@media(max-width:960px){.pi{grid-template-columns:1fr}.pi-photo{max-width:320px}.people-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.people-grid{grid-template-columns:1fr 1fr;gap:16px}}.page-hero{padding-top:clamp(48px,6vw,96px);padding-bottom:clamp(40px,5vw,72px);border-bottom:1px solid var(--line)}.endcta{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;border-top:1.5px solid var(--ink);padding-top:40px}.endcta-links{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.area{display:grid;grid-template-columns:160px 1fr 300px;gap:clamp(24px,3vw,56px);padding-block:clamp(48px,6vw,88px);border-bottom:1px solid var(--line);align-items:start}.area-rail{display:flex;flex-direction:column;gap:12px;position:sticky;top:96px}.area-no{font-size:clamp(40px,4vw,60px);line-height:.9;color:var(--ink);font-weight:500}.area-tag{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-ink)}.area-t{font-family:var(--font-display);font-weight:430;font-size:clamp(30px,3.4vw,46px);line-height:1.02;letter-spacing:-.015em;margin-bottom:24px}.area-lede{font-size:clamp(18px,1.5vw,22px);line-height:1.4;color:var(--ink);font-weight:380;max-width:48ch}.area-body{color:var(--ink-soft);font-size:16px;line-height:1.6;margin-top:20px;max-width:54ch}.area-facts{margin-top:32px;border-top:1px solid var(--line);display:grid;gap:0}.area-facts>div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line-soft)}.area-facts dt{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:4px}.area-facts dd{font-size:15px;color:var(--ink-soft)}.area-fig .ph{width:100%}.methods{gap:var(--col-gap)}.method{border-top:1.5px solid var(--ink);padding-top:20px}.method-t{font-family:var(--font-display);font-weight:440;font-size:clamp(20px,2vw,27px);line-height:1.1;margin:16px 0 12px}.method-d{color:var(--ink-soft);font-size:15px;line-height:1.5}@media(max-width:960px){.area{grid-template-columns:1fr;gap:24px}.area-rail{flex-direction:row;align-items:baseline;gap:16px;position:static}.area-fig{max-width:360px}.methods .method{grid-column:1 / -1!important}.page-hero .grid12>div{grid-column:1 / -1!important}}.hero{padding-top:clamp(40px,6vw,88px);padding-bottom:0}.hero-copy .display{margin-top:20px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,4vw,64px);align-items:center;padding-bottom:clamp(48px,7vw,96px)}.hero-cta{display:flex;align-items:center;gap:28px;margin-top:40px;flex-wrap:wrap}.hero-tree{position:relative}.hero-tree svg{width:100%;height:auto}.tree-cap{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-top:8px}.hero-strip{display:flex;flex-wrap:wrap;justify-content:space-between;gap:28px 32px;align-items:start;border-top:1.5px solid var(--ink);padding-top:24px;padding-bottom:4px}.metric-n{font-size:clamp(34px,4vw,52px);font-weight:500;line-height:1;letter-spacing:-.02em}.metric-n .plus{color:var(--accent)}.metric-l{font-size:13px;color:var(--muted);margin-top:8px;max-width:16ch;line-height:1.3}.research-list{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line)}.rcard{position:relative;padding:40px 40px 44px 0;border-bottom:1px solid var(--line)}.rcard:nth-child(odd){padding-right:48px;border-right:1px solid var(--line)}.rcard:nth-child(2n){padding-left:48px}.rcard:hover{background:var(--accent-wash);padding-left:16px}.rcard:nth-child(odd):hover{padding-left:16px;padding-right:48px}.rcard-t{font-family:var(--font-display);font-weight:440;font-size:clamp(24px,2.4vw,33px);line-height:1.05;letter-spacing:-.01em;margin:16px 0}.rcard-d{color:var(--ink-soft);font-size:15.5px;line-height:1.5;max-width:44ch}.rcard-go{position:absolute;top:40px;right:0;font-size:20px;color:var(--accent);opacity:0;transform:translate(-6px)}.rcard:hover .rcard-go{opacity:1;transform:none}.band{background:var(--paper-2);border-block:1px solid var(--line)}.pub-list{list-style:none;border-top:1px solid var(--line)}.pub{display:grid;grid-template-columns:80px 1fr auto;gap:28px;align-items:start;padding:24px 0;border-bottom:1px solid var(--line)}.pub:hover{background:color-mix(in oklch,var(--accent-wash) 60%,transparent);padding-left:8px;padding-right:8px}.pub-year{font-size:14px;color:var(--accent-ink);padding-top:8px}.pub-title{font-family:var(--font-display);font-weight:440;font-size:clamp(19px,1.9vw,26px);line-height:1.2;letter-spacing:-.01em}.pub-meta{font-size:12.5px;color:var(--muted);margin-top:8px;letter-spacing:.02em}.pub-tag{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);padding:4px 12px;white-space:nowrap;align-self:start;margin-top:8px}.disc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--col-gap)}.disc figcaption{display:flex;flex-direction:column;gap:4px;margin-top:16px}.disc .taxon{font-size:18px}.disc-yr{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.disc-by{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.02em;color:var(--muted)}.disc-note{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;color:var(--accent-ink)}.join{gap:var(--col-gap);align-items:stretch}.join-event{border:1.5px solid var(--ink);padding:clamp(28px,3vw,48px)}.join-event-7{grid-column:span 7}.join-recruit-5{grid-column:span 5}.event-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;border-top:1px solid var(--line);padding-top:24px}.event-meta dt{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.event-meta dd{font-size:15px}.join-recruit{background:var(--ink);color:var(--paper);padding:clamp(28px,3vw,48px);display:flex;flex-direction:column}.join-recruit .kicker{color:color-mix(in oklch,var(--paper) 60%,transparent)}.join-recruit .join-body{color:color-mix(in oklch,var(--paper) 80%,transparent);margin-top:16px}.join-q{font-size:clamp(24px,2.5vw,34px);line-height:1.08;letter-spacing:-.01em;margin-top:20px}.join-recruit .btn-on-dark{margin-top:auto;align-self:flex-start}.notfound{min-height:62vh;display:flex;flex-direction:column;justify-content:center;padding-block:clamp(56px,10vw,128px)}.notfound .display{font-size:clamp(40px,6vw,84px);max-width:18ch}@media(max-width:960px){.hero-grid{grid-template-columns:1fr}.hero-tree{max-width:460px;margin-top:12px}.research-list{grid-template-columns:1fr}.rcard,.rcard:nth-child(odd){padding:32px 0;border-right:0}.rcard:hover,.rcard:nth-child(odd):hover{padding-left:16px}.disc-grid{grid-template-columns:repeat(2,1fr)}.join{grid-template-columns:1fr}.join-event,.join-recruit,.join-event-7,.join-recruit-5{grid-column:1 / -1!important}.col-1-4,.col-5-8{grid-column:1 / -1}}@media(max-width:620px){.hero-strip{display:grid;grid-template-columns:1fr 1fr;gap:28px 24px}}@media(max-width:480px){.event-meta{grid-template-columns:1fr;gap:16px}}@media(max-width:900px){.foot-grid{grid-template-columns:1fr;gap:36px}.nav{display:none}.nav.open{display:flex;position:fixed;top:80px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:4px;background:var(--paper);padding:24px var(--gutter);z-index:49;max-height:calc(100dvh - 80px);overflow-y:auto}.nav.open a{font-size:22px;font-family:var(--font-display);padding-block:12px;width:100%;border-bottom:1px solid var(--line)}.nav.open a:after{display:none}.menu-btn{display:inline-flex;font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:8px}}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.link-arrow{transition:gap .25s var(--ease),color .2s}.link-arrow .arr{transition:transform .25s var(--ease)}.link-arrow:hover{gap:.9em}.link-arrow:hover .arr{transform:translate(3px)}.btn{transition:background .2s var(--ease),transform .15s var(--ease)}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.topbar .dot{animation:pulse 2.4s infinite}@keyframes pulse{0%{box-shadow:0 0 color-mix(in oklch,var(--accent) 55%,transparent)}70%{box-shadow:0 0 0 7px transparent}to{box-shadow:0 0 0 0 transparent}}.nav a{transition:color .2s}.nav a:after{transition:width .28s var(--ease)}.site-footer a,.pub-title,.pub-title a,.pub-links a,.chip{transition:color .2s var(--ease),border-color .2s var(--ease),background .2s var(--ease)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.in{opacity:1;transform:none}[data-stagger]>*{transition-delay:calc(var(--i, 0) * 70ms)}.rcard{transition:background .3s var(--ease),padding-left .3s var(--ease)}.rcard-go{transition:all .3s var(--ease)}.pub{transition:background .25s var(--ease),padding .25s var(--ease)}.disc .ph,.person .ph{transition:transform .4s var(--ease)}.disc:hover .ph,.person:hover .ph{transform:translateY(-4px)}.alum{transition:padding-left .25s var(--ease),background .25s}}
