: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;--paper:oklch(98.6% .004 95);--paper-2:oklch(96.2% .006 95);--ink:oklch(20.5% .012 70);--ink-soft:oklch(40% .012 70);--muted:oklch(52% .01 75);--faint:oklch(52.5% .009 80);--line:oklch(87.5% .006 85);--line-soft:oklch(92.5% .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(50% .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)}html[data-theme=dark]{color-scheme:dark;--paper:oklch(20.5% .008 75);--paper-2:oklch(25.5% .008 75);--ink:oklch(94.5% .004 90);--ink-soft:oklch(80% .006 85);--muted:oklch(70% .006 85);--faint:oklch(62% .006 85);--line:oklch(32% .006 75);--line-soft:oklch(27% .006 75);--line-strong:oklch(52% .008 80);--accent:oklch(72% .11 158);--accent-ink:oklch(80% .1 158);--accent-wash:oklch(27% .03 158);--error:oklch(70% .16 25)}html[data-theme=dark] .site-footer,html[data-theme=dark] .join-recruit,html[data-theme=dark] .lightbox{--paper:oklch(98.6% .004 95);--paper-2:oklch(96.2% .006 95);--ink:oklch(20.5% .012 70);--ink-soft:oklch(40% .012 70);--muted:oklch(52% .01 75);--faint:oklch(52.5% .009 80);--line:oklch(87.5% .006 85);--line-soft:oklch(92.5% .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)}html[data-theme=dark] .site-footer{border-top:1px solid oklch(34% .006 75)}html[data-theme=dark] .join-recruit{border:1px solid oklch(36% .006 75)}html[data-theme=dark] .lightbox::backdrop{background:oklch(20.5% .012 70/.92)}@media (prefers-reduced-motion:no-preference){html.theme-anim,html.theme-anim *,html.theme-anim :before,html.theme-anim :after{transition:background-color .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease), fill .3s var(--ease)!important}}*,: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;font-weight:400;line-height:1.55;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}::selection{background:var(--accent);color:var(--paper)}.skip-link{z-index:200;background:var(--ink);color:var(--paper);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;transition:top .2s var(--ease);border-radius:1px;padding:12px 20px;font-size:13px;position:absolute;top:-60px;left:12px}.skip-link:focus{top:12px}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}: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);padding-inline:var(--gutter);margin-inline:auto}.grid12{gap:var(--col-gap);grid-template-columns:repeat(12,1fr);display:grid}.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}.pb-section{padding-bottom:clamp(56px,8vw,128px)}.ph-4x5{aspect-ratio:4/5}.ph-3x4{aspect-ratio:3/4}.ph-1x1{aspect-ratio:1}.ph-3x2{aspect-ratio:3/2}.ph-16x9{aspect-ratio:16/9}.kicker{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:var(--space-1);font-size:12px;font-weight:500}.mono{font-family:var(--font-mono)}.idx{font-family:var(--font-mono);letter-spacing:.1em;color:var(--faint);font-size:12px}.serif{font-family:var(--font-display)}.display{font-family:var(--font-display);letter-spacing:-.018em;font-size:clamp(48px,8vw,116px);font-weight:400;line-height:.98}.display-inner{font-size:clamp(40px,6vw,84px)}.h-section{font-family:var(--font-display);letter-spacing:-.015em;font-size:clamp(30px,4vw,54px);font-weight:420;line-height:1.02}.lede{color:var(--ink-soft);font-size:clamp(19px,1.6vw,24px);font-weight:380;line-height:1.45}.italic-serif,.taxon{font-family:var(--font-display);font-style:italic}.section{padding-block:clamp(56px,8vw,128px)}.section:not(.band)+.section:not(.band){padding-top:0}.section-head{border-top:1.5px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:40px;padding-top:20px;padding-bottom:24px;display:flex}.section-head .label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:12px}.link-arrow{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);border-bottom:1.5px solid var(--ink);align-items:center;gap:.5em;padding-bottom:4px;font-size:13px;display:inline-flex}.link-arrow:hover{color:var(--accent-ink);border-color:var(--accent)}.link-arrow:active{color:var(--accent-ink)}.btn{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--paper);background:var(--ink);border-radius:1px;align-items:center;gap:.6em;padding:16px 24px;font-size:13px;display:inline-flex}.btn:hover{background:var(--accent-ink)}.btn:active{background:oklch(32% .072 158)}.btn[disabled],.btn:disabled{background:var(--line-strong);color:var(--muted);cursor:not-allowed;transform:none}.btn-ghost{color:var(--ink);border:1.5px solid var(--ink);background:0 0}.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);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);font-size:11.5px}.topbar .wrap{white-space:nowrap;justify-content:space-between;align-items:center;gap:16px;height:40px;display:flex}.topbar .tb-l{text-overflow:ellipsis;overflow:hidden}.topbar .tb-r{flex:none}.event-announcement{background:var(--accent-wash);border-bottom:1px solid color-mix(in oklch, var(--accent) 34%, var(--line))}.event-announcement-link{align-items:center;gap:var(--space-2) var(--space-5);min-height:52px;padding-block:var(--space-2);display:flex}.event-announcement-status{font-family:var(--font-mono);letter-spacing:.11em;text-transform:uppercase;color:var(--paper);background:var(--accent-ink);border-radius:100px;flex:none;padding:7px 10px;font-size:10.5px;font-weight:500;line-height:1}.event-announcement-title{min-width:0;font-family:var(--font-display);font-size:18px;font-weight:500;line-height:1.15}.event-announcement-meta{min-width:0;font-family:var(--font-mono);letter-spacing:.02em;color:var(--ink-soft);font-size:11.5px}.event-announcement-action{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);flex:none;margin-left:auto;font-size:11.5px;font-weight:500}.masthead{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);position:sticky;top:0}.masthead .wrap{justify-content:space-between;align-items:center;height:80px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand .glyph{flex:none;width:32px;height:32px}.brand .wordmark{line-height:1}.brand .wm-1{font-family:var(--font-sans);letter-spacing:.01em;text-transform:uppercase;font-size:16.5px;font-weight:700;display:block}.brand .wm-2{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:4px;font-size:10.5px;display:block}.nav{align-items:center;gap:clamp(16px,1.9vw,28px);display:flex}.nav a{color:var(--ink-soft);padding-block:8px;font-size:14.5px;font-weight:500;position:relative}.nav a:after{content:"";background:var(--accent);width:0;height:1.5px;position:absolute;bottom:0;left:0}.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}.nav .navcta[aria-current=page] .btn{background:var(--accent-ink)}.menu-btn{display:none}.mast-right{align-items:center;gap:clamp(12px,1.4vw,20px);display:flex}.theme-toggle{width:40px;height:40px;color:var(--ink-soft);border:1px solid #0000;border-radius:100px;flex:none;justify-content:center;align-items:center;display:inline-flex}.theme-toggle:hover{color:var(--ink);background:var(--accent-wash)}.theme-toggle svg{width:19px;height:19px}.theme-toggle .ic-sun,html[data-theme=dark] .theme-toggle .ic-moon{display:none}html[data-theme=dark] .theme-toggle .ic-sun{display:inline}.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);letter-spacing:.14em;text-transform:uppercase;color:color-mix(in oklch, var(--paper) 50%, transparent);margin-bottom:16px;font-size:11px}.foot-grid{grid-template-columns:1.6fr 1fr 1fr;gap:48px;display:grid}.foot-links{flex-direction:column;gap:12px;font-size:15px;display:flex}.foot-big{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(28px,4vw,46px);line-height:1}.foot-affil{font-family:var(--font-mono);letter-spacing:.08em;color:color-mix(in oklch, var(--paper) 55%, transparent);margin-top:22px;font-size:12.5px}.foot-rule{border-color:color-mix(in oklch, var(--paper) 18%, transparent);margin-top:56px}.foot-base{letter-spacing:.08em;text-transform:uppercase;color:color-mix(in oklch, var(--paper) 50%, transparent);flex-wrap:wrap;justify-content:space-between;gap:20px;margin-top:24px;font-size:11px;display:flex}.reveal{opacity:1;transform:none}.ph{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);align-items:flex-end;display:flex;position:relative;overflow:hidden}.ph:after{content:attr(data-label);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--paper);border-top:1px solid var(--line);border-right:1px solid var(--line);padding:8px 12px;font-size:11px}.pubbar{z-index:40;background:color-mix(in oklch, var(--paper) 90%, transparent);backdrop-filter:blur(10px);border-block:1px solid var(--line);position:sticky;top:80px}.pubbar-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding-block:16px;display:flex}.filters{flex-wrap:wrap;gap:8px;display:flex}.chip{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--line-strong);color:var(--ink-soft);border-radius:100px;padding:8px 16px;font-size:12px}.chip:hover{border-color:var(--ink);color:var(--ink)}.chip.is-on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.search{border-bottom:1.5px solid var(--ink);flex:1;align-items:center;gap:8px;min-width:240px;max-width:320px;padding-bottom:4px;display:flex}.search:focus-within{border-color:var(--accent)}.search-ico{color:var(--muted);font-size:16px}.search input{font:inherit;width:100%;color:var(--ink);background:0 0;border:0;font-size:14px}.search input::placeholder{color:var(--faint)}.search input:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.pub-request{background:var(--accent-wash);border-left:3px solid var(--accent);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:20px 32px;margin-top:40px;padding:22px 24px;display:flex}.pub-request-copy{max-width:62ch}.pub-request-head{font-family:var(--font-display);letter-spacing:-.01em;font-size:21px;font-weight:450}.pub-request-body{color:var(--ink-soft);margin-top:6px;font-size:15.5px;line-height:1.55}.pub-count{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-block:32px 8px;font-size:11.5px}.pub-empty{flex-direction:column;align-items:flex-start;gap:20px;padding-block:72px;display:flex}.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{flex-wrap:wrap;gap:16px;margin-top:12px;display:flex}.pub-links a{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;padding-bottom:2px;font-size:11px}.pub-links a:hover{color:var(--accent-ink);border-color:var(--accent)}@media (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)}.pi{grid-template-columns:280px 1fr;align-items:start;gap:clamp(28px,4vw,64px);display:grid}.pi-name{font-family:var(--font-display);letter-spacing:-.02em;margin:16px 0 8px;font-size:clamp(34px,4.4vw,62px);font-weight:420;line-height:1}.pi-role{letter-spacing:.04em;color:var(--muted);font-size:13px}.pi-cv{gap:18px;margin-top:32px;display:grid}.pi-cv-row{grid-template-columns:132px 1fr;gap:6px 24px;display:grid}.pi-cv dt{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:3px;font-size:11px}.pi-cv dd{color:var(--ink-soft);margin:0;font-size:15px;line-height:1.5}.pi-cv-item{display:block}.pi-cv-item+.pi-cv-item{margin-top:5px}.pi-cv-groups{gap:var(--space-4);display:grid}.pi-cv-group-title{font:inherit;color:var(--ink);margin-bottom:var(--space-1);font-weight:600}.pi-links{flex-wrap:wrap;gap:24px;margin-top:32px;display:flex}.group{padding-block:clamp(40px,5vw,72px)}.people-grid{grid-template-columns:repeat(2,1fr);gap:clamp(28px,3.4vw,44px) clamp(28px,4vw,56px);display:grid}.person{align-items:flex-start;gap:18px;scroll-margin-top:96px;display:flex}.person figcaption{flex:1;min-width:0}.person-n{font-family:var(--font-display);letter-spacing:-.01em;font-size:21px;font-weight:460;line-height:1.1}.person-r{letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink);margin:8px 0;font-size:10.5px}.person-f{color:var(--ink-soft);font-size:14px;line-height:1.45}.person-photo,.person .ph{aspect-ratio:1;flex:none;width:clamp(88px,9vw,108px);height:auto}.person-photo{object-fit:cover;border:1px solid var(--line);background:var(--paper-2);display:block}.pi-photo-img{aspect-ratio:4/5;object-fit:cover;border:1px solid var(--line);background:var(--paper-2);width:100%;height:auto;display:block}.alumni-sub{margin-top:clamp(36px,4vw,56px)}.alumni-sub:first-of-type{margin-top:8px}.alumni-sub-head{border-bottom:1px solid var(--line);font-family:var(--font-display);letter-spacing:-.01em;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:clamp(20px,2.4vw,32px);padding-bottom:12px;font-size:clamp(20px,2vw,26px);font-weight:440;display:flex}.alumni-sub-count{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px}.alumni-list{border-top:1px solid var(--line);list-style:none}.alum{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:24px;padding:16px 0;display:flex}.alum:hover{background:var(--accent-wash);padding-left:12px;padding-right:12px}.alum-n{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(20px,2vw,28px);font-weight:440}.alum-now{letter-spacing:.04em;color:var(--muted);font-size:12.5px}.proj-list .alum-n{flex:1;min-width:0}.proj-list .alum-now{white-space:nowrap;flex:none}.visitor-list{list-style:none}.visitor[hidden],.vis-group[hidden]{display:none}.visitor{border-bottom:1px solid var(--line);padding:18px 0}.visitor:hover{background:var(--accent-wash);padding-left:12px;padding-right:12px}.visitor-n{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(18px,1.7vw,24px);font-weight:440}.visitor-meta{letter-spacing:.03em;color:var(--muted);margin-top:4px;font-size:12.5px}.visitor-proj{max-width:72ch;color:var(--ink-soft);margin-top:8px}@media (width<=960px){.pi{grid-template-columns:1fr}.pi-photo{max-width:240px}}.page-hero{border-bottom:1px solid var(--line);padding-top:clamp(48px,6vw,96px);padding-bottom:clamp(40px,5vw,72px)}.endcta{border-top:1.5px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;padding-top:40px;display:flex}.endcta-links{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.area{border-bottom:1px solid var(--line);grid-template-columns:160px 1fr 300px;align-items:start;gap:clamp(24px,3vw,56px);padding-block:clamp(48px,6vw,88px);display:grid}.area-rail{flex-direction:column;gap:12px;display:flex;position:sticky;top:96px}.area-no{color:var(--ink);font-size:clamp(40px,4vw,60px);font-weight:500;line-height:.9}.area-tag{letter-spacing:.12em;text-transform:uppercase;color:var(--accent-ink);font-size:11px}.area-t{font-family:var(--font-display);letter-spacing:-.015em;margin-bottom:24px;font-size:clamp(30px,3.4vw,46px);font-weight:430;line-height:1.02}.area-lede{color:var(--ink);max-width:48ch;font-size:clamp(18px,1.5vw,22px);font-weight:380;line-height:1.4}.area-body{color:var(--ink-soft);max-width:54ch;margin-top:20px;font-size:16px;line-height:1.6}.area-facts{border-top:1px solid var(--ink);gap:0;display:grid}.area-facts>div{border-bottom:1px solid var(--line-soft);grid-template-columns:1fr;gap:6px;padding:14px 0;display:grid}.area-facts>div:last-child{border-bottom:0}.area-facts dt{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:10.5px}.area-facts dd{color:var(--ink-soft);font-size:15px;line-height:1.5}.methods{gap:var(--col-gap)}.method{border-top:1.5px solid var(--ink);padding-top:20px}.method-t{font-family:var(--font-display);margin:16px 0 12px;font-size:clamp(20px,2vw,27px);font-weight:440;line-height:1.1}.method-d{color:var(--ink-soft);font-size:15px;line-height:1.5}@media (width<=960px){.area{grid-template-columns:1fr;gap:24px}.area-rail{flex-direction:row;align-items:baseline;gap:16px;position:static}.area-aside{max-width:480px}.methods .method,.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{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(24px,4vw,64px);padding-bottom:clamp(48px,7vw,96px);display:grid}.hero-cta{flex-wrap:wrap;align-items:center;gap:28px;margin-top:40px;display:flex}.hero-tree{position:relative}.hero-tree svg{width:100%;height:auto}.tree-cap{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-top:8px;font-size:10.5px}.hero-strip{border-top:1.5px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:start;gap:28px 32px;padding-top:24px;padding-bottom:4px;display:flex}.metric-n{letter-spacing:-.02em;font-size:clamp(34px,4vw,52px);font-weight:500;line-height:1}.metric-n .plus{color:var(--accent)}.metric-l{color:var(--muted);max-width:16ch;margin-top:8px;font-size:13px;line-height:1.3}.research-list{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:0;display:grid}.rcard{border-bottom:1px solid var(--line);padding:40px 40px 44px 0;position:relative}.rcard:nth-child(odd){border-right:1px solid var(--line);padding-right:48px}.rcard:nth-child(2n){padding-left:48px}.rcard:hover{background:var(--accent-wash)}.rcard:nth-child(odd):hover{padding-left:16px}.rcard:nth-child(2n):hover{padding-left:64px}.rcard-t{font-family:var(--font-display);letter-spacing:-.01em;margin:16px 0;font-size:clamp(24px,2.4vw,33px);font-weight:440;line-height:1.05}.rcard-d{color:var(--ink-soft);max-width:44ch;font-size:15.5px;line-height:1.5}.rcard-go{color:var(--accent);opacity:0;font-size:20px;position:absolute;top:40px;right:8px;transform:translate(-6px)}.rcard:hover .rcard-go{opacity:1;transform:none}.rcard.rcard-wide{border-right:0;grid-column:1/-1}.rcard.rcard-wide .rcard-d{max-width:70ch}.band{background:var(--paper-2);border-block:1px solid var(--line)}.pub-list{border-top:1px solid var(--line);list-style:none}.pub{border-bottom:1px solid var(--line);grid-template-columns:80px 1fr auto;align-items:start;gap:28px;padding:24px 0;display:grid}.pub:hover{background:color-mix(in oklch, var(--accent-wash) 60%, transparent);padding-left:8px;padding-right:8px}.pub-year{color:var(--accent-ink);padding-top:8px;font-size:14px}.pub-title{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(19px,1.9vw,26px);font-weight:440;line-height:1.2}.pub-meta{color:var(--muted);letter-spacing:.02em;margin-top:8px;font-size:12.5px}.pub-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);white-space:nowrap;align-self:start;margin-top:8px;padding:4px 12px;font-size:11px}.disc-grid{gap:var(--col-gap);grid-template-columns:repeat(4,1fr);display:grid}.disc figcaption{flex-direction:column;gap:4px;margin-top:16px;display:flex}.disc-name{font-family:var(--font-display);font-size:18px}.disc .lab-caption{font-family:var(--font-mono);color:var(--muted);white-space:pre-line;font-size:12.5px;line-height:1.45}.gallery-shot{object-fit:cover;border:1px solid var(--line);width:100%;height:auto;display:block}.lb-trigger{cursor:zoom-in;display:block}.lightbox{color:var(--paper);background:0 0;border:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:0;overflow:hidden}.lightbox[open]{justify-content:center;align-items:center;display:flex}.lightbox::backdrop{background:color-mix(in oklch, var(--ink) 92%, transparent)}.lightbox :focus-visible{outline:2px solid var(--paper);outline-offset:2px}.lb-figure{flex-direction:column;align-items:center;gap:14px;max-width:min(92vw,1200px);max-height:88dvh;margin:0;display:flex}.lb-img{object-fit:contain;background:var(--ink);border:1px solid color-mix(in oklch, var(--paper) 22%, transparent);width:auto;max-width:100%;height:auto;max-height:78dvh;display:block}.lb-cap{font-family:var(--font-mono);letter-spacing:.02em;color:var(--paper);opacity:.85;text-align:center;white-space:pre-line;max-width:64ch;font-size:12px}.lb-close,.lb-prev,.lb-next{cursor:pointer;width:44px;height:44px;color:var(--paper);background:color-mix(in oklch, var(--ink) 55%, transparent);border:1px solid color-mix(in oklch, var(--paper) 30%, transparent);border-radius:2px;justify-content:center;align-items:center;font-size:22px;line-height:1;display:flex;position:fixed}.lb-close:hover,.lb-prev:hover,.lb-next:hover{background:var(--accent-ink)}.lb-close{top:16px;right:16px}.lb-prev{top:50%;left:16px;transform:translateY(-50%)}.lb-next{top:50%;right:16px;transform:translateY(-50%)}.lb-count{font-family:var(--font-mono);letter-spacing:.12em;color:var(--paper);opacity:.7;font-size:11px;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.lb-prev[hidden],.lb-next[hidden],.lb-count[hidden],.lb-cap[hidden]{display:none}.film{gap:20px;display:grid}.film-frame{aspect-ratio:16/9;border:1px solid var(--line);background:oklch(20.5% .012 70);position:relative;overflow:hidden}.film-facade{cursor:pointer;width:100%;height:100%;display:block}.film-poster{object-fit:cover;width:100%;height:100%;display:block}.film-embed{border:0;width:100%;height:100%;display:block}.film-btn{pointer-events:none;background:oklch(20.5% .012 70/.55);border:1px solid oklch(98.6% .004 95/.55);border-radius:50%;justify-content:center;align-items:center;width:84px;height:84px;margin:auto;display:flex;position:absolute;inset:0}.film-btn:before{content:"";border:13px solid #0000;border-left:22px solid oklch(98.6% .004 95);border-right-width:0;margin-left:6px}.film-facade:hover .film-btn{background:oklch(45% .072 158);border-color:oklch(45% .072 158)}.film-facade:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.film-cap{font-family:var(--font-mono);letter-spacing:.04em;color:var(--muted);flex-wrap:wrap;gap:6px 14px;font-size:12px;display:flex}#films{scroll-margin-top:var(--space-24)}.video-feature{gap:var(--space-8);padding-bottom:clamp(var(--space-12), 5vw, var(--space-20));border-bottom:1px solid var(--line);display:grid}.video-feature-intro{gap:var(--col-gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;display:grid}.video-feature-heading{gap:var(--space-3);grid-column:1/span 5;display:grid}.video-feature-title{font-family:var(--font-display);letter-spacing:-.025em;font-size:clamp(34px,4.2vw,60px);font-weight:440;line-height:.98}.video-feature-copy{gap:var(--space-4);max-width:58ch;color:var(--ink-soft);grid-column:7/-1;line-height:1.72;display:grid}.video-grid{gap:clamp(var(--space-10), 5vw, var(--space-16)) var(--col-gap);padding-top:clamp(var(--space-12), 5vw, var(--space-20));grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.video-card{min-width:0}.video-card .film-btn{width:64px;height:64px}.video-card .film-btn:before{border-width:10px 0 10px 17px;margin-left:5px}.video-card-copy{gap:var(--space-2);margin-top:var(--space-4);display:grid}.video-card-head{justify-content:space-between;align-items:baseline;gap:var(--space-4);display:flex}.video-kind{font-family:var(--font-mono);letter-spacing:.11em;text-transform:uppercase;color:var(--accent-ink);font-size:10.5px;line-height:1.4}.video-card-meta{font-family:var(--font-mono);letter-spacing:.03em;color:var(--muted);white-space:nowrap;font-size:11px;line-height:1.4}.video-card-title{font-family:var(--font-display);letter-spacing:-.015em;font-size:clamp(22px,2.4vw,30px);font-weight:440;line-height:1.1}@media (width<=720px){.video-feature-intro{gap:var(--space-6);grid-template-columns:1fr}.video-feature-heading,.video-feature-copy{grid-column:1}.video-grid{grid-template-columns:1fr}}@media (width<=640px){.film-btn{width:62px;height:62px}.film-btn:before{border-width:10px 0 10px 17px;margin-left:5px}}.disc-by{font-family:var(--font-mono);letter-spacing:.02em;color:var(--muted);font-size:11.5px}.disc-note{font-family:var(--font-mono);letter-spacing:.04em;color:var(--accent-ink);font-size:10.5px}.disc-cards{gap:var(--col-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));display:grid}.disc-card{border:1px solid var(--line);background:var(--paper);flex-direction:column;gap:14px;padding:clamp(20px,2.4vw,32px);display:flex}.disc-card-head{flex-direction:column;gap:10px;display:flex}.disc-card-body{flex-direction:column;gap:8px;display:flex}.disc-card--plate{grid-column:1/-1}.disc-plate{grid-template-columns:repeat(auto-fill,minmax(min(50%,300px),1fr));gap:14px;margin-top:6px;display:grid}.disc-plate--solo{grid-template-columns:1fr;max-width:360px}.disc-plate .disc-name{font-size:15px}@media (width>=721px){.disc-card:only-child{grid-template-columns:1fr 1.2fr;align-items:start;gap:clamp(24px,4vw,64px);display:grid}.disc-card:only-child .disc-cite{max-width:none}}.book-feature{margin-left:-20px;border-left:3px solid var(--accent);color:var(--ink);justify-content:space-between;align-items:center;gap:clamp(32px,4vw,64px);margin-block:clamp(28px,3vw,44px);padding-left:17px;display:flex}.book-feature-main{flex:0 auto;min-width:0}.book-feature-cover{border:1px solid var(--line);flex:none;width:clamp(170px,14vw,200px);height:auto}@media (width<=720px){.book-feature{border-left:0;border-top:3px solid var(--accent);flex-direction:column;align-items:flex-start;margin-left:0;padding-top:20px;padding-left:0}.book-feature-cover{order:-1;width:clamp(130px,34vw,170px);margin-bottom:4px}}.book-feature-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:12px;font-size:12px;display:block}.book-feature-title{max-width:42ch;margin-bottom:10px;font-size:clamp(20px,2.4vw,28px);line-height:1.2}.book-feature-meta{color:var(--muted);margin-bottom:14px}.book-feature-desc{color:var(--ink-soft);max-width:58ch;margin-bottom:14px}.book-feature-ids{font-family:var(--font-mono);color:var(--muted);margin-bottom:18px;font-size:12.5px}.book-feature-ids>*{white-space:nowrap}.book-feature-doi{color:var(--accent-ink);border-bottom:1px solid #0000}.book-feature-doi:hover{border-color:var(--accent)}.book-feature-cta{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);border-bottom:1.5px solid #0000;align-items:center;gap:.5em;padding-bottom:3px;font-size:13px;display:inline-flex}.book-feature-cta:hover{border-color:var(--accent)}.disc-year{font-family:var(--font-mono);letter-spacing:.12em;color:var(--muted);font-size:12px}.disc-taxa{flex-direction:column;gap:2px;display:flex}.disc-taxon{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(20px,2vw,27px);font-style:italic;font-weight:440;line-height:1.18}.disc-cite{color:var(--ink-soft);max-width:66ch;font-size:14px;line-height:1.55}.disc-journal{font-style:italic}.disc-doi{font-family:var(--font-mono);color:var(--accent-ink);white-space:nowrap;margin-top:2px;font-size:12.5px}.event-feature{column-gap:clamp(var(--space-8), 5vw, var(--space-16));row-gap:clamp(var(--space-12), 6vw, var(--space-20));grid-template-columns:minmax(0,7fr) minmax(280px,5fr);scroll-margin-top:104px;display:grid}.event-feature-copy{align-self:start}.event-status{letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink);background:var(--accent-wash);border:1px solid color-mix(in oklch, var(--accent) 34%, var(--line));border-radius:100px;padding:8px 12px;font-size:11px;font-weight:500;line-height:1;display:inline-flex}.event-title{max-width:17ch;margin-top:var(--space-5);font-family:var(--font-display);letter-spacing:-.018em;text-wrap:balance;font-size:clamp(36px,4.6vw,64px);font-weight:420;line-height:.98}.event-intro{max-width:60ch;margin-top:var(--space-6);color:var(--ink-soft);text-wrap:pretty;font-size:18px;line-height:1.6}.event-facts{margin-top:var(--space-8);border-top:1.5px solid var(--ink);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.event-facts>div{padding:var(--space-4) var(--space-4) var(--space-4) 0;border-bottom:1px solid var(--line)}.event-facts>div:nth-child(2n){padding-left:var(--space-4)}.event-facts dt{margin-bottom:var(--space-1);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10.5px}.event-facts dd{color:var(--ink);font-size:15px;line-height:1.45}.event-actions{align-items:center;gap:var(--space-5) var(--space-7);margin-top:var(--space-8);flex-wrap:wrap;display:flex}.event-application{max-width:62ch;margin-top:var(--space-4);color:var(--muted);font-size:14px}.event-poster{place-self:start end;max-width:520px}.event-poster a{border:1px solid var(--line-strong);display:block}.event-poster img{width:100%;height:auto}.event-poster figcaption{margin-top:var(--space-2);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--faint);font-size:10.5px;line-height:1.4}.event-details{gap:var(--col-gap);padding-top:var(--space-8);border-top:1.5px solid var(--ink);grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.event-details>section{padding-right:var(--space-6)}.event-details>section+section{padding-left:var(--space-6);border-left:1px solid var(--line)}.event-subhead{margin-bottom:var(--space-5);font-family:var(--font-display);font-size:clamp(23px,2.2vw,31px);font-weight:440;line-height:1.08}.event-topic-list,.event-people-list{list-style:none}.event-topic-list li,.event-people-list li{border-bottom:1px solid var(--line);padding-block:10px;font-size:15px;line-height:1.4}.event-topic-list li:before{content:"→";color:var(--accent-ink);margin-right:10px}.event-people-list span{display:block}.event-people-list small{color:var(--muted);font-family:var(--font-mono);margin-top:3px;font-size:11px;line-height:1.45;display:block}.event-organizers{color:var(--ink);font-size:16px;line-height:1.55}.event-organizer-list{margin-top:var(--space-4);list-style:none}.event-organizer-list li{border-top:1px solid var(--line);color:var(--ink-soft);padding-block:10px;font-size:14px;line-height:1.5}.join-event{border:1.5px solid var(--ink);padding:clamp(28px,3vw,48px)}.event-meta{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;padding-top:24px;display:grid}.event-meta dt{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:10.5px}.event-meta dd{font-size:15px}.join-recruit{background:var(--ink);color:var(--paper);flex-direction:column;padding:clamp(28px,3vw,48px);display:flex}.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{letter-spacing:-.01em;margin-top:20px;font-size:clamp(24px,2.5vw,34px);line-height:1.08}.join-recruit .btn-on-dark{align-self:flex-start;margin-top:auto}.rcard.rcard-static:hover{background:0 0}.rcard.rcard-static:nth-child(odd):hover{padding-left:0}.rcard.rcard-static:nth-child(2n):hover{padding-left:48px}.join-recruit>.kicker{margin-bottom:0}.connect-email{color:var(--paper);letter-spacing:-.015em;border-bottom:1.5px solid color-mix(in oklch, var(--paper) 45%, transparent);overflow-wrap:anywhere;align-self:flex-start;margin-top:20px;padding-bottom:8px;font-size:clamp(30px,5vw,64px);line-height:1;display:inline-block}.connect-email:hover{border-color:var(--accent)}.join-recruit-full{flex-direction:row;justify-content:space-between;align-items:center;gap:clamp(28px,5vw,80px)}.join-recruit-full .join-recruit-copy{max-width:58ch}.join-recruit-full .join-recruit-action{flex:none}.join-recruit-full .btn-on-dark{white-space:nowrap;align-self:auto;margin-top:0}@media (width<=720px){.join-recruit-full{flex-direction:column;align-items:flex-start;gap:28px}}.notfound{flex-direction:column;justify-content:center;min-height:62vh;padding-block:clamp(56px,10vw,128px);display:flex}.notfound .display{max-width:18ch;font-size:clamp(40px,6vw,84px)}.notfound .kicker{margin-bottom:0}.bb-0{border-bottom:0}@media (width<=960px){.hero-grid{grid-template-columns:1fr}.hero-tree{max-width:460px;margin-top:12px}.disc-grid{grid-template-columns:repeat(2,1fr)}.col-1-4,.col-5-8{grid-column:1/-1}.event-announcement-link{gap:var(--space-2) var(--space-4);min-height:0;padding-block:var(--space-3);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.event-announcement-status{grid-area:1/1;justify-self:start}.event-announcement-action{grid-area:1/2;margin-left:0}.event-announcement-title{grid-area:2/1/auto/-1}.event-announcement-meta{grid-area:3/1/auto/-1}.event-feature{grid-template-columns:1fr}.event-poster{justify-self:start;max-width:620px}.event-details{grid-template-columns:1fr 1fr}.event-details>section:nth-child(3){padding-top:var(--space-8);border-top:1px solid var(--line);border-left:0;grid-column:1/-1;padding-left:0}}@media (width<=720px){.research-list{grid-template-columns:1fr}.rcard,.rcard:nth-child(odd),.rcard:nth-child(2n){border-right:0;padding:32px 0}.rcard:hover,.rcard:nth-child(odd):hover,.rcard:nth-child(2n):hover{padding-left:16px}.rcard.rcard-static:nth-child(odd):hover,.rcard.rcard-static:nth-child(2n):hover{padding-left:0}.people-grid{grid-template-columns:1fr;gap:clamp(24px,5vw,32px)}}@media (width<=620px){.hero-strip{grid-template-columns:1fr 1fr;gap:28px 24px;display:grid}.event-facts{grid-template-columns:1fr}.event-facts>div:nth-child(2n){padding-left:0}.event-details{grid-template-columns:1fr}.event-details>section,.event-details>section+section,.event-details>section:nth-child(3){padding:var(--space-7) 0 0;border-top:1px solid var(--line);border-left:0;grid-column:auto}.event-details>section:first-child{border-top:0;padding-top:0}}@media (width<=560px){.alum{flex-direction:column;align-items:flex-start;gap:6px}.alum-n,.alum-now{white-space:normal;flex:none}}@media (width<=480px){.event-meta{grid-template-columns:1fr;gap:16px}.pi-cv-row{grid-template-columns:1fr;gap:3px}}@media (width<=960px){.foot-grid{grid-template-columns:1fr;gap:36px}.nav{display:none}.nav.open{background:var(--paper);padding:24px var(--gutter);z-index:49;flex-direction:column;align-items:flex-start;gap:4px;max-height:calc(100dvh - 80px);display:flex;position:fixed;top:80px;left:0;right:0;overflow-y:auto}.nav.open a{font-size:22px;font-family:var(--font-display);border-bottom:1px solid var(--line);width:100%;padding-block:12px}.nav.open a:after{display:none}.menu-btn{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:8px;font-size:12px;display:inline-flex}}@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)}.book-feature-cta .arr{transition:transform .25s var(--ease)}.book-feature-cta: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)}.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;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(24px)}.reveal.in{opacity:1;transform:none}[data-stagger]>*{transition-delay:calc(var(--i,0) * 70ms)}.hero-tree svg line{stroke-dasharray:520;stroke-dashoffset:520px}.hero-tree svg circle,.hero-tree svg .leaf-label,.hero-tree svg .leaf-sub{opacity:0}.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,.person .person-photo,.disc .gallery-shot{transition:transform .4s var(--ease)}.disc:hover .ph,.person:hover .ph,.person:hover .person-photo,.disc:hover .gallery-shot{transform:translateY(-4px)}.lightbox[open],.lightbox::backdrop{animation:lb-in .2s var(--ease)}@keyframes lb-in{0%{opacity:0}to{opacity:1}}.lb-close,.lb-prev,.lb-next{transition:background .2s var(--ease)}.film-btn{transition:background .2s var(--ease), border-color .2s var(--ease)}.alum,.visitor{transition:padding .25s var(--ease), background .25s}}
