:root {
  --paper:#f5f4ed;
  --ink:#17392f;
  --muted:#535d53;
  --line:#d6dacf;
  --green:#153d32;
  --accent:#b5cc89;
  --font-sans:Arial,Helvetica,sans-serif;
  --font-serif:Georgia,'Times New Roman',serif;
  --type-caption:.75rem;
  --type-small:1rem;
  --type-body:1.125rem;
  --type-lead:1.125rem;
  --type-title-sm:1.25rem;
  --type-title-md:1.5rem;
  --type-title-lg:1.875rem;
  --type-heading:2.25rem;
  --type-heading-xl:2.75rem;
  --type-display-compact:3.125rem;
  --type-display-mobile:3.125rem;
  --type-display-tablet:3.5rem;
  --type-display:52px;
  --type-heading-main:40px;
  --type-bibliography:50px
}
@supports (font-size:clamp(1rem,2vw,2rem)) {
  :root {
    --type-display:clamp(3.25rem,5.2vw,4.75rem);
    --type-heading-main:clamp(2.5rem,4.1vw,3.875rem);
    --type-bibliography:clamp(3.125rem,6vw,5.375rem)
  }
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:98px
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:Arial,Helvetica,sans-serif;
  font-family:var(--font-sans);
  font-size:16px;
  font-size:var(--type-body);
  line-height:1.65
}
a {
  color:inherit;
  text-decoration:underline;
  text-underline-offset:.18em;
  text-decoration-thickness:1px
}
button,input {
  font:inherit
}
button,a,input {
  -webkit-tap-highlight-color:transparent
}
button {
  cursor:pointer
}
a:focus-visible,button:focus-visible,input:focus-visible {
  outline:3px solid #b77a31;
  outline-offset:5px
}
img {
  max-width:100%;
  display:block
}
figure {
  margin:0
}
h1,h2,h3,p {
  margin:0
}
h1,h2 {
  font-family:Georgia,'Times New Roman',serif;
  font-family:var(--font-serif);
  font-weight:400;
  letter-spacing:-.045em;
  line-height:1.05
}
h1 {
  font-size:64px;
  font-size:var(--type-display)
}
h2 {
  font-size:40px;
  font-size:var(--type-heading-main)
}
h3 {
  font-size:24px;
  font-size:var(--type-title-md);
  line-height:1.3;
  font-weight:500;
  letter-spacing:-.035em
}
em {
  font-weight:400
}
sup,sub {
  font-size:12px;
  font-size:var(--type-caption)
}
p {
  color:var(--muted)
}
.wrap {
  max-width:1320px;
  margin:auto;
  padding-left:56px;
  padding-right:56px
}
.section {
  padding-top:56px;
  padding-bottom:56px
}
.research.section,.publications.section {
  padding-bottom:40px
}
.eyebrow {
  font-size:16px;
  font-size:var(--type-body);
  letter-spacing:.15em;
  font-weight:600;
  color:inherit;
  line-height:1.3
}
.dot {
  display:inline-block;
  width:7px;
  height:7px;
  background:#749456;
  border-radius:50%;
  margin-right:8px
}
header {
  height:98px;
  padding:0 4%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid var(--line);
  background:var(--paper);
  position:sticky;
  top:0;
  z-index:10
}
.brand {
  display:flex;
  align-items:center;
  gap:13px;
  min-width:0;
  font-size:24px;
  font-size:var(--type-title-md);
  line-height:1.2;
  letter-spacing:-.04em
}
.brand>span:last-child {
  font-size:18px;
  line-height:1.15
}
.brand small {
  font-size:12px;
  font-size:var(--type-caption);
  letter-spacing:.13em;
  display:block;
  margin-top:6px
}
.mark {
  font-family:Georgia,serif;
  font-family:var(--font-serif);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:20px;
  line-height:1;
  color:var(--ink);
  border:1px solid #b5cc89;
  background:#e8eddd;
  width:64px;
  height:52px;
  text-align:center
}
nav {
  display:flex;
  gap:12px;
  align-items:center;
  font-size:12px;
  font-size:var(--type-caption)
}
nav a:hover,nav a:focus-visible,.text-link:hover,.text-link:focus-visible {
  color:#6b894a
}
nav a {
  text-decoration:none
}
.brand,.button,.pub-arrow {
  text-decoration:none
}
.publications-nav>a,
.education-dropdown summary,
nav>a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 10px;
  border:1px solid var(--line);
  color:var(--muted);
  text-align:center;
  text-decoration:none
}
.publications-nav>a:hover,
.publications-nav>a:focus-visible,
.education-dropdown summary:hover,
.education-dropdown summary:focus-visible,
nav>a:hover,
nav>a:focus-visible {
  color:var(--ink);
  background:#e9ede3;
  border-color:#b5bbae
}
.publications-nav {
  position:relative
}
.publications-nav>a {
  gap:7px;
}
.nav-dropdown-indicator,
.education-dropdown>summary>span {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:12px;
  height:12px;
  overflow:hidden;
  font-size:0;
  line-height:1
}
.nav-dropdown-indicator::after,
.education-dropdown>summary>span::after {
  content:"";
  width:7px;
  height:7px;
  margin-top:-4px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg)
}
.publications-menu {
  display:none;
  position:absolute;
  top:100%;
  left:0;
  z-index:11;
  min-width:205px;
  padding:8px;
  background:var(--paper);
  border:1px solid var(--line);
  box-shadow:0 12px 30px #17392f1a
}
.publications-nav:hover .publications-menu,
.publications-nav:focus-within .publications-menu {
  display:block
}
.publications-menu a {
  color:var(--muted);
  text-decoration:none
}

.education-links a {
  color:var(--muted);
  text-decoration:none
}

.publications-menu a:hover,
.publications-menu a:focus-visible {
  color:var(--ink);
  background:#e9ede3
}
.education-links a:hover,
.education-links a:focus-visible {
  color:var(--ink);
  background:#e9ede3
}
.publications-menu a {
  display:block;
  padding:9px 11px;
  white-space:nowrap
}
.publications-menu a span {
  float:right
}
.education-dropdown {
  position:relative;
  margin-left:8px
}
.education-dropdown summary {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  cursor:pointer;
  list-style:none;
  white-space:nowrap
}
.education-dropdown summary::-webkit-details-marker {
  display:none
}
.education-links {
  position:absolute;
  top:100%;
  left:0;
  z-index:11;
  min-width:245px;
  padding:8px;
  display:none;
  background:var(--paper);
  border:1px solid var(--line);
  box-shadow:0 12px 30px #17392f1a
}
.education-dropdown[open] .education-links {
  display:block
}
.education-links a {
  display: flex;
  align-items: center;
  padding:9px 11px
}
.education-links a span {
  float:right;
}
.education-links small {
  display:block;
  padding:7px 11px 4px;
  color:var(--muted);
  font-size:12px;
  font-size:var(--type-caption)
}
.nav-contact {
  border:1px solid var(--line);
  padding:8px 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  text-align:center
}
.menu-toggle {
  display:none
}
@media(min-width:1101px) {
  header>nav {
    gap:10px;
    align-items:stretch;
    font-size:15px
  }
  header>nav>.publications-nav,
  header>nav>.education-dropdown {
    display:flex;
    align-items:stretch
  }
  header>nav>a,
  header>nav>.publications-nav>a,
  header>nav>.education-dropdown>summary,
  header>nav>.nav-contact {
    min-height:42px;
    padding:9px 12px
  }
  header>nav>.publications-nav>a,
  header>nav>.education-dropdown>summary {
    gap:9px
  }
  header .publications-menu {
    min-width:230px;
    padding:10px
  }
  header .publications-menu a,
  header .education-links a {
    padding:10px 12px;
    line-height:1.35
  }
  header .education-links {
    min-width:185px;
    padding:10px
  }
  header .education-links small {
    padding:8px 12px 5px
  }
}
.hero {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:25px;
  align-items:center;
  min-height:0;
  padding-top:24px;
  padding-bottom:24px
}
.hero .eyebrow {
  margin-bottom:16px
}
.intro {
  font-size:18px;
  font-size:var(--type-lead);
  max-width:435px;
  line-height:1.8;
  margin:30px 0
}
.actions {
  display:flex;
  align-items:center;
  gap:25px;
  flex-wrap:wrap
}
.button {
  background:var(--green);
  color:white;
  padding:14px 22px;
  display:inline-flex;
  gap:28px;
  align-items:center;
  font-size:12px;
  font-size:var(--type-caption);
  border:1px solid var(--green);
  transition:background .2s
}
.button:hover {
  background:#315746
}
.text-link {
  font-size:12px;
  font-size:var(--type-caption);
  padding-bottom:6px;
  display:inline-flex;
  gap:18px;
  align-items:center
}
.indv-emph {
  text-align: center;
  font-size:16px;
  font-size:var(--type-body)
}
.indv-emph * {
  font-size: inherit !important;
}
.hero-note {
  font-size:12px;
  font-size:var(--type-caption);
  letter-spacing:.07em;
  margin-top:36px
}
.hero-figure {
  align-self:center;
  padding:15px 0 0 22px
}
.hero-figure img {
  width:100%;
  height:auto;
  mix-blend-mode:multiply;
  margin:26px 0 20px
}
.figure-heading {
  display:flex;
  justify-content:center;
  font-size:12px;
  font-size:var(--type-caption);
  letter-spacing:.11em;
  border-bottom:1px solid var(--line);
  padding-bottom:10px
}
.hero-figure figcaption {
  font-size:12px;
  font-size:var(--type-caption);
  line-height:1.8;
  border-top:1px solid var(--line);
  padding-top:13px
}
.hero-figure figcaption,.research article small,.gallery-credit,.spotlight-figure figcaption {
  color:var(--muted);
  text-align:center;
  line-height:1.8
}
.research article small,.gallery-credit,.spotlight-figure figcaption {
  display:flex;
  flex-direction:column;
  align-items:center
}
.hero-figure figcaption>span {
  display:block;
  font-size:14px;
  font-size:var(--type-small);
  color:var(--ink);
  margin-bottom:5px
}
.figure-source {
  display:flex;
  flex-direction:column;
  align-items:center;
  font-size:var(--type-caption);
  margin-top:10px
}
.source-link {
  display:block;
  width:fit-content;
  order:-1;
  margin:0 auto 8px;
  padding:6px 12px;
  border:1px solid #c3cbbb;
  border-radius:2px;
  background:#eeeFe7;
  color:var(--ink);
  font-size:14px;
  text-decoration:none;
  transition:background .2s,border-color .2s
}
.source-link:hover,.source-link:focus-visible {
  border-color:#b5bbae;
  background:#e9ede3;
  color:var(--ink)
}
.research {
  background:var(--paper);
  color:var(--ink)
}
.section-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:22px
}
.section-note {
  font-size:14px;
  font-size:var(--type-small);
  color:var(--muted)
}
.section-heading {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:50px;
  margin-bottom:48px
}
.section-heading>p {
  max-width:380px;
  font-size:14px;
  font-size:var(--type-small);
  line-height:1.85
}
.research-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:32px
}
.research-image {
  height:210px;
  overflow:hidden;
  background:#fff;
  margin-bottom:25px
}
.research-image img {
  height:100%;
  width:100%;
  object-fit:cover;
  transition:transform .4s
}
.research article:nth-child(2) img,.research article:nth-child(3) img {
  object-fit:contain
}
.research article:hover img {
  transform:scale(1.035)
}
.topic-number {
  font-size:16px;
  font-size:var(--type-body);
  letter-spacing:.12em;
  color:#667957
}
.research h3 {
  margin:14px 0
}
.research article>p {
  font-size:14px;
  font-size:var(--type-small);
  line-height:1.9
}
.research article>a {
  display:flex;
  justify-content:space-between;
  padding:20px 0 13px;
  font-size:12px;
  font-size:var(--type-caption)
}
.research small {
  display:block;
  font-size:12px;
  font-size:var(--type-caption);
  margin-top:10px
}
.publications {
  background:var(--paper)
}
.publication-controls {
  display:flex;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap
}
.filters,.people-tabs {
  display:flex;
  gap:6px;
  flex-wrap:wrap
}
.filters button,.people-tabs button {
  border:1px solid #c3cbbb;
  background:transparent;
  padding:8px 13px;
  font-size:12px;
  font-size:var(--type-caption);
  color:var(--ink);
  border-radius:2px
}
.filters button.active,.people-tabs button.active {
  background:var(--green);
  color:white;
  border-color:var(--green)
}
.publications .filters button:not(.active) {
  background:#eeeFe7
}
.publications .filters button:not(.active):hover {
  background:#e9ede3;
  border-color:#b5bbae
}
.people-tabs button:not(.active) {
  background:#eeeFe7
}
.people-tabs button:not(.active):hover {
  background:#e9ede3;
  border-color:#b5bbae
}
.search {
  display:flex;
  align-items:center;
  border-bottom:1px solid #9ba994
}
.search input {
  flex:1;
  min-width:0;
  background:none;
  border:0;
  padding:8px 6px;
  font-size:12px;
  font-size:var(--type-caption);
  color:var(--ink);
  width:0
}
.search>span:last-child {
  display:grid;
  flex:0 0 32px;
  place-items:center;
  font-size:24px;
  font-size:var(--type-title-md);
  line-height:1
}
.result-count {
  font-size:12px;
  font-size:var(--type-caption);
  margin:24px 0 14px
}
.publication {
  display:grid;
  grid-template-columns:72px 1fr 42px;
  gap:28px;
  padding:28px 0;
  border-top:1px solid #c2cdba;
  align-items:start
}
.pub-year {
  font-family:Georgia,serif;
  font-family:var(--font-serif);
  font-size:24px;
  font-size:var(--type-title-md)
}
.pub-meta {
  font-size:12px;
  font-size:var(--type-caption);
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#5b725c;
  margin-bottom:10px
}
.publication h3 {
  font-family:Georgia,serif;
  font-family:var(--font-serif);
  font-size:24px;
  font-size:var(--type-title-md);
  max-width:850px;
  letter-spacing:-.02em
}
.pub-authors {
  font-size:12px;
  font-size:var(--type-caption);
  margin-top:9px
}
.pub-summary {
  font-size:12px;
  font-size:var(--type-caption);
  margin-top:10px
}
.pub-arrow {
  width:38px;
  height:38px;
  border:1px solid #afbea8;
  display:grid;
  place-items:center;
  border-radius:50%;
  font-size:20px;
  font-size:var(--type-title-sm)
}
.pub-arrow:hover {
  background:var(--green);
  color:white
}
.empty {
  padding:40px 0
}
.roster-note {
  display:block;
  font-size:12px;
  font-size:var(--type-caption);
  margin-top:12px
}
.people-tabs {
  margin-bottom:30px
}
.people-roster-group+.people-roster-group {
  margin-top:40px
}
.people-roster-title,.previous-members>h3 {
  font-family:Georgia,'Times New Roman',serif;
  font-family:var(--font-serif);
  font-size:24px;
  font-size:var(--type-title-md);
  font-weight:400;
  margin-bottom:18px;
}
.previous-members {
  margin-top:42px
}
.previous-members-list {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0 25px;
  list-style:none;
  margin:0;
  padding:0
}
.previous-members-list li {
  display:flex;
  flex-direction:row;
  align-items:baseline;
  flex-wrap:wrap;
  column-gap:8px;
  padding:11px 0;
  border-top:1px solid #c2cdba
}
.previous-members-list strong {
  font-size:12px;
  font-size:var(--type-caption);
  font-weight:500
}
.previous-members-list span {
  font-size:12px;
  font-size:var(--type-caption);
  color:#52674e
}
.people-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:34px 25px
}
.portrait {
  height:195px;
  background:#e6e9df;
  position:relative;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid #d8ded0
}
.portrait::before,.portrait::after {
  content:'';
  position:absolute;
  width:170px;
  height:170px;
  border:1px solid #ccd5c3;
  border-radius:50%;
  transform:rotate(-35deg) scaleX(.55)
}
.portrait::after {
  transform:rotate(35deg) scaleX(.55)
}
.portrait .initials {
  font:44px Georgia,serif;
  font:var(--type-heading-xl) var(--font-serif);
  color:#8a9b81;
  z-index:1
}
.portrait .photo-label {
  position:absolute;
  bottom:12px;
  font-size:12px;
  font-size:var(--type-caption);
  letter-spacing:.16em;
  color:#65745c
}
.portrait img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  z-index:2
}
.person h3 {
  font-size:18px;
  font-size:var(--type-lead);
  margin-top:13px
}
.person .role {
  font-size:var(--type-small);
  color:#52674e;
  margin-top:2px
}
.person .focus {
  font-size:var(--type-small);
  margin-top:7px;
  line-height:1.6
}
.pi {
  border-top:1px solid var(--line)
}
.pi.section {
  padding:68px 0
}
.pi-grid {
  display:grid;
  grid-template-columns:.7fr 1fr;
  gap:90px;
  align-items:center
}
.pi-portrait {
  height:490px;
  background:#e6e8dc;
  position:relative;
  display:flex;
  justify-content:center;
  align-items:center;
  overflow:hidden
}
.pi-portrait .initials {
  font:64px Georgia,serif;
  font:var(--type-display) var(--font-serif);
  color:#879577
}
.portrait-orbit {
  position:absolute;
  width:290px;
  height:360px;
  border:1px solid #c1c9b5;
  border-radius:50%;
  transform:rotate(32deg)
}
.portrait-orbit:after {
  content:'';
  position:absolute;
  width:290px;
  height:360px;
  border:1px solid #c1c9b5;
  border-radius:50%;
  transform:rotate(-64deg)
}
.pi-portrait .photo-label {
  position:absolute;
  bottom:30px;
  letter-spacing:.18em;
  font-size:12px;
  font-size:var(--type-caption)
}
.pi-bio h2 {
  margin:10px 0 8px
}
.pi-role {
  font-size:14px;
  font-size:var(--type-small);
  color:#3e573c;
  margin-bottom:10px
}
.pi-bio>p:not(.eyebrow):not(.pi-role) {
  font-size:14px;
  font-size:var(--type-small);
  margin-bottom:8px
}
.pi-facts {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin:12px 0;
  border-top:1px solid var(--line);
  padding-top:12px
}
.pi-facts strong {
  display:block;
  font:30px Georgia,serif;
  font:var(--type-title-lg) var(--font-serif)
}
.pi-facts span {
  font-size:12px;
  font-size:var(--type-caption);
  color:var(--muted);
  display:block;
  margin-top:5px
}
.contact {
  background:#183b32;
  color:#f5f4ed
}
.contact-grid {
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:130px;
  align-items:center
}
.contact p:not(.eyebrow) {
  max-width:450px;
  font-size:14px;
  font-size:var(--type-small);
  color:#becec2;
  margin-bottom:25px
}
.light {
  background:#d7e0c6;
  color:var(--ink);
  border:0
}
.light:hover {
  background:#e7efdc
}
.contact address {
  font-style:normal;
  font-size:14px;
  font-size:var(--type-small);
  line-height:1.9;
  color:#cbd7ce
}
.contact address strong {
  display:block;
  font-size:16px;
  font-size:var(--type-body);
  color:var(--paper);
  font-weight:500;
  margin:0 0 9px
}
.contact-rule {
  height:1px;
  background:#426054;
  margin:24px 0
}
.site-footer {
  border-top:1px solid var(--line)
}
.footer-inner {
  display:grid;
  gap:18px;
  padding-top:28px!important;
  padding-bottom:24px!important;
  font-size:12px;
  font-size:var(--type-caption)
}
.footer-name {
  font:24px Georgia,serif;
  font:var(--type-title-md) var(--font-serif);
  text-decoration:none
}
.footer-name span {
  font:18px Arial,Helvetica,sans-serif;
  font:var(--type-lead) var(--font-sans);
  margin-left:8px
}
.footer-affiliations {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 22px
}
.footer-affiliations a {
  padding:0;
  border:0;
  color:var(--muted);
  text-decoration:underline;
  text-underline-offset:.18em
}
.footer-meta {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:center;
  gap:8px 20px;
  border-top:1px solid var(--line);
  padding-top:14px;
  color:var(--muted)
}
.footer-meta a {
  color:inherit
}
.skip {
  position:fixed;
  top:-100px;
  left:10px;
  background:white;
  padding:10px;
  z-index:99
}
.skip:focus {
  top:10px
}
.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap
}
.close {
  position:absolute;
  top:14px;
  right:18px;
  background:none;
  border:0;
  font-size:30px;
  font-size:var(--type-title-lg);
  color:var(--ink)
}
dialog {
  border:1px solid var(--line);
  background:var(--paper);
  color:var(--ink);
  padding:48px;
  max-width:650px;
  width:calc(100% - 30px);
  max-height:85vh;
  overflow:auto
}
dialog::backdrop {
  background:#0e241bcc
}
dialog h2 {
  font-size:36px;
  font-size:var(--type-heading);
  margin:20px 0
}
dialog p,dialog li {
  font-size:14px;
  font-size:var(--type-small)
}
dialog ul {
  padding-left:18px
}
dialog li {
  margin:14px 0
}
[hidden] {
  display:none!important
}
@media(min-width:1600px) {
  .wrap {
    max-width:1480px
  }
  .hero {
    min-height:0
  }
  .research-image {
    height:240px
  }
}
@media(max-width:1100px) {
  header {
    padding:0 28px
  }
  nav {
    gap:12px
  }
  .wrap {
    padding-left:35px;
    padding-right:35px
  }
  .hero {
    gap:15px
  }
  h1 {
    font-size:72px;
    font-size:var(--type-display-tablet)
  }
  .hero-figure {
    padding-left:0
  }
  .actions {
    gap:17px
  }
  .section-heading {
    gap:30px
  }
  .section-heading>p {
    max-width:310px
  }
  .research-grid {
    gap:22px
  }
  .research-image {
    height:180px
  }
  .pi-grid {
    gap:50px
  }
  .contact-grid {
    gap:65px
  }
  .people-grid {
    grid-template-columns:repeat(3,1fr)
  }
}
@media(max-width:1100px) {
  header {
    height:80px
  }
  .mark {
    width:56px;
    height:44px;
    font-size:18px
  }
  .menu-toggle {
    display:block;
    flex-shrink:0;
    background:none;
    border:1px solid var(--line);
    padding:7px 12px;
    font-size:12px;
    font-size:var(--type-caption);
    color:var(--ink);
    white-space:nowrap
  }
  .menu-toggle span {
    margin-left:10px
  }
  nav {
    display:none;
    position:absolute;
    top:80px;
    left:0;
    right:0;
    padding:12px 20px;
    background:var(--paper);
    border-bottom:1px solid var(--line);
    flex-direction:column;
    align-items:center;
    font-size:14px;
    font-size:var(--type-small);
    gap:4px;
    text-align:center
  }
  nav.open {
    display:flex
  }
  nav a {
    padding:9px 10px;
    text-align:center;
    line-height:1.3
  }
  nav>a {
    width:100%;
    min-height:28px;
    margin:0;
    padding:4px 10px
  }
  .publications-nav {
    width:100%;
    padding:0
  }
  .publications-nav>a {
    width:100%;
    min-height:28px;
    margin:0;
    padding:4px 10px
  }
  .publications-menu {
    display:block;
    position:static;
    width:100%;
    min-width:0;
    margin:0;
    padding:0 4px;
    text-align:center;
    box-shadow:none
  }
  .publications-menu a {
    position:relative;
    padding:4px;
    line-height:1.25
  }
  .publications-menu a span {
    position:absolute;
    right:12px;
    float:none
  }
  .education-dropdown {
    align-self:stretch;
    width:100%;
    margin:0;
    padding:0
  }
  .education-dropdown summary {
    width:100%;
    justify-content:center;
    min-height:28px;
    padding:4px 10px;
    line-height:1.25
  }
  .education-links {
    position:static;
    width:100%;
    min-width:0;
    padding:4px;
    text-align:center;
    box-shadow:none
  }
  .education-links a {
    display: block;
    position:relative;
    padding:4px;
    line-height:1.25
  }
  .education-links a span {
    position:absolute;
    right:12px;
    float:none
  }
  .nav-contact {
    justify-content:center;
    min-height:28px;
    padding:4px 10px;
    margin:0 auto
  }
}
@media(max-width:800px) {
  header {
    height:80px
  }
  .mark {
    width:56px;
    height:44px;
    font-size:18px
  }
  .brand small {
    font-size:12px;
    font-size:var(--type-caption)
  }
  .menu-toggle {
    display:block;
    background:none;
    border:1px solid var(--line);
    padding:7px 12px;
    font-size:12px;
    font-size:var(--type-caption);
    color:var(--ink)
  }
  .menu-toggle span {
    margin-left:10px
  }
  nav {
    display:none;
    position:absolute;
    top:80px;
    left:0;
    right:0;
    padding:12px 20px;
    background:var(--paper);
    border-bottom:1px solid var(--line);
    flex-direction:column;
    align-items:center;
    font-size:14px;
    font-size:var(--type-small);
    gap:4px;
    text-align:center
  }
  nav.open {
    display:flex
  }
  nav a {
    padding:9px 10px;
    text-align:center;
    line-height:1.3
  }
  nav>a {
    width:100%;
    min-height:28px;
    margin:0;
    padding:4px 10px
  }
  .publications-nav {
    width:100%;
    padding:0
  }
  .publications-nav>a {
    width:100%;
    min-height:28px;
    margin:0;
    padding:4px 10px
  }
  .publications-menu {
    display:block;
    position:static;
    width:100%;
    min-width:0;
    margin:0;
    padding:0 4px;
    text-align:center;
    box-shadow:none
  }
  .publications-menu a {
    position:relative;
    padding:4px;
    line-height:1.25
  }
  .publications-menu a span {
    position:absolute;
    right:12px;
    float:none
  }
  .education-dropdown {
    align-self:stretch;
    width:100%;
    margin:0;
    padding:0
  }
  .education-dropdown summary {
    width:100%;
    justify-content:center;
    min-height:28px;
    padding:4px 10px;
    line-height:1.25
  }
  .education-links {
    position:static;
    width:100%;
    min-width:0;
    padding:4px;
    text-align:center;
    box-shadow:none
  }
  .education-links a {
    position:relative;
    padding:4px;
    line-height:1.25
  }
  .education-links a span {
    position:absolute;
    right:12px;
    float:none
  }
  .nav-contact {
    justify-content:center;
    min-height:28px;
    padding:4px 10px;
    margin:0 auto
  }
  .hero {
    grid-template-columns:1fr;
    min-height:0;
    padding-top:32px;
    padding-bottom:28px;
    gap:24px
  }
  .hero-copy {
    width:100%;
    max-width:600px;
    margin-left:auto;
    margin-right:auto
  }
  .actions {
    width:100%;
    justify-content:center
  }
  h1 {
    font-size:72px;
    font-size:var(--type-display-tablet)
  }
  .hero-figure {
    max-width:550px;
    justify-self:center
  }
  .hero-figure img {
    margin:16px 0
  }
  .section {
    padding-top:40px;
    padding-bottom:40px
  }
  .research.section,.publications.section {
    padding-bottom:28px
  }
  .section-heading {
    display:block
  }
  .section-heading>p {
    max-width:580px;
    margin-top:20px
  }
  .section-top {
    margin-bottom:16px
  }
  .section-note {
    font-size:12px;
    font-size:var(--type-caption)
  }
  .research-grid {
    grid-template-columns:1fr
  }
  .research article {
    display:grid;
    grid-template-columns:230px 1fr;
    gap:0 25px;
    margin-bottom:24px
  }
  .research-image {
    grid-row:1/6;
    height:210px;
    margin:0
  }
  .research h3 {
    font-size:24px;
    font-size:var(--type-title-md)
  }
  .research article>p {
    font-size:var(--type-small)
  }
  .research small {
    grid-column:2
  }
  .people-grid {
    grid-template-columns:repeat(3,1fr);
    gap:24px 15px
  }
  .previous-members-list {
    grid-template-columns:repeat(2,1fr);
    gap:0 18px
  }
  .portrait {
    height:160px
  }
  .pi-grid {
    grid-template-columns:.7fr 1fr;
    gap:30px
  }
  .pi.section {
    padding:52px 0
  }
  .pi-portrait {
    height:390px
  }
  .pi-bio h2 {
    font-size:44px;
    font-size:var(--type-heading-xl)
  }
  .contact-grid {
    gap:35px
  }
}
@media(max-width:540px) {
  html {
    scroll-padding-top:80px
  }
  header {
    padding:0 14px
  }
  .brand {
    gap:9px;
    font-size:18px;
    font-size:var(--type-title-sm)
  }
  .brand>span:last-child {
    min-width:0;
    overflow-wrap:anywhere
  }
  .mark {
    flex:0 0 52px;
    width:52px;
    height:38px;
    font-size:17px
  }
  .menu-toggle {
    flex-shrink:0;
    margin-left:10px;
    padding:6px 9px;
    white-space:nowrap
  }
  .wrap {
    padding-left:22px;
    padding-right:22px
  }
  h1 {
    font-size:64px;
    font-size:var(--type-display-mobile)
  }
  .intro {
    font-size:16px;
    font-size:var(--type-body);
    margin:25px 0
  }
  .hero .eyebrow {
    font-size:12px;
    font-size:var(--type-caption)
  }
  .hero-note {
    margin-top:25px
  }
  .hero-figure {
    padding-top:6px
  }
  .section-note {
    display:none
  }
  h2 {
    font-size:44px;
    font-size:var(--type-heading-xl)
  }
  .section-heading {
    margin-bottom:33px
  }
  .research article {
    display:block;
    margin-bottom:30px
  }
  .research-image {
    height:230px;
    margin-bottom:20px
  }
  .research small {
    margin-top:10px
  }
  .publication {
    grid-template-columns:42px 1fr;
    gap:12px
  }
  .pub-arrow {
    display:none
  }
  .publication h3 {
    font-size:20px;
    font-size:var(--type-title-sm)
  }
  .pub-year {
    font-size:20px;
    font-size:var(--type-title-sm)
  }
  .pub-meta {
    font-size:12px;
    font-size:var(--type-caption)
  }
  .search {
    width:100%
  }
  .search input {
    width:0
  }
  .filters {
    gap:5px
  }
  .filters button,.people-tabs button {
    font-size:12px;
    font-size:var(--type-caption);
    padding:8px 10px
  }
  .people-grid {
    grid-template-columns:repeat(2,1fr)
  }
  .previous-members-list {
    grid-template-columns:1fr
  }
  .portrait {
    height:180px
  }
  .person h3 {
    font-size:16px;
    font-size:var(--type-body)
  }
  .pi-grid {
    grid-template-columns:1fr;
    gap:24px
  }
  .pi.section {
    padding:32px 0
  }
  .pi-portrait {
    height:300px;
    max-width:330px;
    width:100%
  }
  .pi-bio h2 {
    font-size:44px;
    font-size:var(--type-heading-xl)
  }
  .contact-grid {
    grid-template-columns:1fr;
    gap:48px
  }
  .contact address {
    border-top:1px solid #4b665b;
    padding-top:25px
  }
  .figure-heading {
    font-size:12px;
    font-size:var(--type-caption)
  }
  dialog {
    padding:38px 25px
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  * {
    transition:none!important
  }
}
.publication-navigation {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-bottom:28px;
  padding-bottom:24px
}
.publication-navigation {
  flex-direction:column;
  align-items:center
}
.publication-navigation>span {
  font:24px Georgia,serif;
  font:var(--type-title-md) var(--font-serif)
}
.publication-nav-link {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border:1px solid var(--ink);
  padding:10px 17px;
  font-size:12px;
  font-size:var(--type-caption);
  color:var(--ink);
  text-decoration:none
}
.publication-nav-link>span {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  line-height:1
}
.publications .publication-nav-link {
  border-color:#c3cbbb;
  background:#eeeFe7
}
.publications .publication-nav-link:hover {
  border-color:#b5bbae;
  background:#e9ede3;
  color:var(--ink)
}
.publication-nav-link:hover {
  color:#6b894a
}
.page-promo {
  display:grid;
  grid-template-columns:220px minmax(0,1fr) 250px;
  align-items:center;
  gap:20px;
  padding-top:24px;
  padding-bottom:24px;
  border-bottom:1px solid var(--line)
}
.publications-promo {
  border-top:1px solid var(--line)
}
.page-promo h2 {
  width:220px;
  font-size:20px;
  font-size:var(--type-lead);
  white-space:normal
}
.page-promo p {
  margin:0;
  font-size:12px;
  font-size:var(--type-caption);
  text-align:left
}
.page-promo .publication-nav-link {
  flex:0 0 auto;
  width:250px;
  margin:0;
  justify-content:space-between;
  padding:12px 18px;
  border-color:#c3cbbb;
  background:#eeeFe7;
  white-space:nowrap
}
.page-promo .publication-nav-link:hover {
  border-color:#b5bbae;
  background:#e9ede3;
  color:var(--ink)
}
.bibliography {
  padding-top:55px;
  padding-bottom:80px
}
.bibliography>.eyebrow {
  margin-top:45px;
  margin-bottom:22px
}
.bibliography h1 {
  font-size:50px;
  font-size:var(--type-bibliography)
}
.bibliography-intro {
  max-width:670px;
  margin:25px 0 35px;
  font-size:16px;
  font-size:var(--type-body)
}
.cv-totals {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:24px 0;
  margin-bottom:35px
}
.cv-totals span {
  font-size:12px;
  font-size:var(--type-caption);
  color:var(--muted)
}
.cv-totals strong {
  display:block;
  color:var(--ink);
  font:36px Georgia,serif;
  font:var(--type-heading) var(--font-serif);
  margin-bottom:7px
}
.cv-controls {
  display:flex;
  gap:16px;
  align-items:flex-end;
  flex-wrap:wrap
}
.cv-controls label {
  font-size:12px;
  font-size:var(--type-caption);
  color:var(--ink);
  display:flex;
  flex-direction:column;
  gap:8px
}
.cv-controls label:first-child {
  flex:1;
  min-width:230px
}
.cv-controls input,.cv-controls select,.cv-controls button {
  font:14px Arial,Helvetica,sans-serif;
  font:var(--type-small) var(--font-sans);
  min-height:44px;
  border:1px solid #b8c3b1;
  background:transparent;
  color:var(--ink);
  padding:11px 13px;
  border-radius:2px
}
.cv-controls input {
  width:100%
}
.cv-controls select {
  max-width:100%
}
.cv-controls button:hover {
  background:var(--green);
  color:white
}
.cv-source-note {
  font-size:12px;
  font-size:var(--type-caption);
  line-height:1.85;
  margin:22px 0;
  max-width:960px
}
.cv-member {
  text-decoration:underline;
  text-underline-offset:3px
}
#cv-count {
  font-size:12px;
  font-size:var(--type-caption);
  margin:22px 0
}
#cv-empty {
  padding:35px 0
}
.cv-category {
  margin:45px 0 60px
}
.cv-category>h2 {
  font-size:36px;
  font-size:var(--type-heading);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  margin-bottom:23px
}
.cv-category>h2 span {
  font:12px Arial,Helvetica,sans-serif;
  font:var(--type-caption) var(--font-sans);
  letter-spacing:0;
  color:var(--muted);
  white-space:nowrap
}
.cv-list {
  list-style:none;
  padding:0;
  margin:0
}
.cv-entry {
  display:grid;
  grid-template-columns:60px 1fr;
  gap:22px;
  padding:24px 0;
  border-top:1px solid var(--line);
  break-inside:avoid
}
.cv-year {
  font:24px Georgia,serif;
  font:var(--type-title-md) var(--font-serif);
  padding-top:2px
}
.cv-citation {
  font-size:14px;
  font-size:var(--type-small);
  line-height:1.85;
  color:var(--ink);
  overflow-wrap:anywhere
}
.status-badge {
  display:inline-block;
  font-size:12px;
  font-size:var(--type-caption);
  letter-spacing:.04em;
  padding:3px 9px;
  background:#e4e9d8;
  border:1px solid #c3cfae;
  margin-bottom:10px
}
.cv-link {
  font-size:12px;
  font-size:var(--type-caption);
  margin-top:10px
}
nav [aria-current=page] {
  text-decoration:underline;
  text-underline-offset:6px
}
@media(max-width:600px) {
  .publication-navigation {
    align-items:flex-start;
    flex-direction:column
  }
  .cv-totals {
    grid-template-columns:repeat(2,1fr)
  }
  .cv-controls label:first-child {
    flex-basis:100%;
    min-width:0
  }
  .cv-controls label {
    flex:1;
    min-width:0
  }
  .cv-controls button {
    width:100%
  }
  .cv-category>h2 {
    font-size:30px;
    font-size:var(--type-title-lg)
  }
  .cv-entry {
    grid-template-columns:40px 1fr;
    gap:12px
  }
  .cv-year {
    font-size:18px;
    font-size:var(--type-lead)
  }
  .cv-citation {
    font-size:14px;
    font-size:var(--type-small)
  }
  .bibliography {
    padding-top:35px
  }
  .bibliography-intro {
    font-size:14px;
    font-size:var(--type-small)
  }
}
/* Publication images retain their complete selected panels and natural proportions. */
.figure-zoom {
  display:block;
  position:relative;
  width:100%;
  height:100%;
  padding:0;
  border:0;
  background:transparent;
  text-align:left;
  color:var(--ink);
  cursor:zoom-in
}
.figure-zoom img {
  width:100%;
  height:100%;
  object-fit:contain!important;
  transition:none
}
.zoom-hint {
  position:absolute;
  bottom:10px;
  right:10px;
  background:#17392fed;
  color:#fff;
  padding:6px 10px;
  border:1px solid #ffffff55;
  border-radius:3px;
  font:12px Arial,Helvetica,sans-serif;
  font:var(--type-caption) var(--font-sans);
  letter-spacing:.03em;
  opacity:0;
  transition:opacity .2s
}
.figure-zoom:hover .zoom-hint,.figure-zoom:focus-visible .zoom-hint {
  opacity:1
}
.hero-figure .figure-zoom {
  height:auto
}
.hero-figure .figure-zoom img {
  height:auto;
  margin:12px 0
}
.hero-figure {
  padding:0
}
.research-image {
  height:250px;
  padding:12px;
  background:#fff;
  border:1px solid var(--line)
}
.research article:hover img {
  transform:none
}
.research article:first-child .research-image {
  padding:0
}
.figure-gallery {
  background:#eeeFe7;
  border-top:1px solid var(--line)
}
.gallery-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:36px
}
.gallery-card {
  border:1px solid #d6dccd;
  background:#f8f9f3;
  overflow:hidden
}
.gallery-image {
  height:330px;
  padding:25px;
  background:#fff;
  border-bottom:1px solid #e1e5da
}
.gallery-image img {
  height:100%;
  width:100%;
  object-fit:contain
}
.gallery-copy {
  padding:25px 28px 28px
}
.gallery-copy .eyebrow {
  font-size:12px;
  font-size:var(--type-caption);
  color:#667957
}
.gallery-copy h3 {
  font-family:Georgia,serif;
  font-family:var(--font-serif);
  font-size:30px;
  font-size:var(--type-title-lg);
  line-height:1.15;
  margin:14px 0
}
.gallery-copy>p:not(.eyebrow) {
  font-size:14px;
  font-size:var(--type-small);
  line-height:1.8
}
.gallery-credit {
  font-size:12px;
  font-size:var(--type-caption);
  margin-top:18px
}
#figure-viewer {
  width:min(1100px,95vw);
  max-width:1100px;
  padding:32px;
  max-height:94vh
}
#figure-viewer h2 {
  font-size:36px;
  font-size:var(--type-heading);
  margin:16px 35px 22px 0
}
#figure-viewer .figure-viewer-image {
  background:#fff;
  border:1px solid var(--line);
  padding:18px;
  max-height:65vh;
  overflow:auto
}
#figure-viewer-img {
  width:100%;
  height:auto;
  max-height:60vh;
  object-fit:contain
}
#figure-viewer-caption {
  font-size:14px;
  font-size:var(--type-small);
  margin:18px 0 12px;
  max-width:850px;
  line-height:1.75
}
.figure-viewer-citation {
  max-width:850px;
  padding-top:14px;
  border-top:1px solid var(--line);
  font-size:14px;
  font-size:var(--type-small);
  line-height:1.75
}
#figure-viewer .close {
  position:sticky;
  float:right;
  top:0;
  background:var(--paper);
  line-height:1;
  z-index:1;
  width:32px;
  height:32px
}
.hero-figure .zoom-hint {
  bottom:20px
}
@media(hover:none) {
  .zoom-hint {
    opacity:1
  }
}
@media(max-width:1100px) {
  .research-image {
    height:220px
  }
  .gallery-image {
    height:285px
  }
  .gallery-copy {
    padding:20px
  }
}
@media(max-width:800px) {
  .research-image {
    height:220px
  }
  .gallery-grid {
    gap:22px
  }
  .gallery-image {
    height:260px;
    padding:15px
  }
  .gallery-copy h3 {
    font-size:24px;
    font-size:var(--type-title-md)
  }
  .gallery-copy>p:not(.eyebrow) {
    font-size:var(--type-small)
  }
}
@media(max-width:600px) {
  .gallery-grid {
    grid-template-columns:1fr
  }
  .gallery-image {
    height:300px
  }
  .research-image {
    height:260px
  }
  .gallery-copy {
    padding:22px
  }
  .gallery-copy h3 {
    font-size:30px;
    font-size:var(--type-title-lg)
  }
  #figure-viewer {
    padding:22px 16px
  }
  #figure-viewer h2 {
    font-size:30px;
    font-size:var(--type-title-lg)
  }
  #figure-viewer .figure-viewer-image {
    padding:6px
  }
  #figure-viewer-img {
    max-height:56vh
  }
  .zoom-hint {
    opacity:1
  }
  .hero-figure .figure-zoom img {
    margin:16px 0
  }
  .gallery-credit {
    font-size:12px;
    font-size:var(--type-caption)
  }
}
:root {
  --reading-measure:60ch
}
.section-top {
  display:block;
  margin-bottom:22px
}
#research .section-top .eyebrow,
#publications .section-top .eyebrow,
#people .section-top .eyebrow,
#pi .pi-heading>.eyebrow,
#contact .contact-grid>.eyebrow {
  font-size:var(--type-title-md);
  text-align:center
}
#research .section-heading h2,
#pi .pi-bio h2 {
  font-size:var(--type-title-lg)
}
#pi .pi-heading {
  display:flex;
  flex-direction:column;
  align-items:center;
  width:100%;
  text-align:center
}
#pi .pi-heading>h2 {
  width:100%;
  text-align:center
}
#pi .pi-heading>.pi-role {
  width:fit-content;
  max-width:100%;
  text-align:center
}
#research .section-heading h2 {
  margin-left:auto;
  margin-right:auto;
  text-align:center
}
.section-top .section-note {
  display:block;
  margin-top:8px
}
.section-heading {
  display:block;
  max-width:680px;
  max-width:var(--reading-measure);
  margin-bottom:40px
}
#research .section-heading,
#publications .section-heading,
#people .section-heading {
  width:min(100%,var(--reading-measure));
  margin-left:auto;
  margin-right:auto
}
#research .section-top,
#publications .section-top,
#people .section-top {
  width:min(100%,var(--reading-measure));
  margin-left:auto;
  margin-right:auto
}
.section-heading>p {
  width:100%;
  max-width:100%;
  margin-top:20px
}
.hero-copy,.pi-bio,.contact-grid>div,.gallery-copy {
  text-align:left
}
.hero-copy {
  max-width:58ch
}
.hero-copy .intro,.pi-bio>p:not(.eyebrow),.contact p:not(.eyebrow),.gallery-copy>p:not(.eyebrow) {
  max-width:68ch
}
.research-grid {
  grid-template-columns:1fr;
  gap:0
}
.research article {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.9fr);
  grid-template-areas:
    "topic image"
    "title image"
    "summary image"
    "link image"
    ". image-credit";
  align-content:center;
  gap:10px 48px;
  padding:30px 0;
  border-top:1px solid var(--line);
  text-align:left
}
.research article .topic-number {
  grid-area:topic
}
.research article h3 {
  grid-area:title;
  margin:0
}
.research article>p {
  grid-area:summary;
  max-width:68ch
}
.research article>a {
  grid-area:link;
  justify-self:center;
  max-width:68ch;
  width:fit-content;
  font-size:var(--type-small);
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  margin-top:4px;
  padding:10px 16px;
  border:1px solid #c3cbbb;
  border-radius:2px;
  background:#eeeFe7;
  color:var(--ink);
  text-decoration:none;
  transition:background .2s,border-color .2s
}
.research article>a:hover {
  background:#e9ede3;
  border-color:#b5bbae
}
.research article small {
  grid-area:image-credit;
  margin-top:0;
  justify-self:stretch;
  text-align:center
}
.research article .research-image {
  grid-area:image;
  align-self:center;
  width:100%;
  height:280px;
  margin:0
}
@media(max-width:800px) {
  .research article {
    grid-template-columns:1fr;
    grid-template-areas:
      "topic"
      "title"
      "summary"
      "link"
      "image"
      "image-credit"
  }
  .research article small {
    grid-column:auto;
    justify-self:center;
    text-align:center
  }
}
.gallery-grid {
  grid-template-columns:1fr;
  gap:22px
}
.gallery-card {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.9fr);
  align-items:stretch
}
.gallery-copy {
  align-self:center;
  max-width:68ch;
  padding:30px
}
.gallery-copy h3 {
  max-width:24ch
}
.gallery-image {
  height:100%;
  min-height:300px;
  border-bottom:0;
  border-left:1px solid #e1e5da
}
.pi-grid {
  grid-template-columns:minmax(0,1fr) minmax(250px,.72fr);
  gap:64px;
  align-items:start
}
.pi-bio {
  max-width:68ch
}
.pi-grid>img {
  width:100%;
  max-width:360px;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center top;
  justify-self:start
}
.pi-bio h2 {
  max-width:18ch
}
.pi-bio>p:not(.eyebrow):not(.pi-role) {
  line-height:1.5;
  margin-bottom:8px
}
.pi-facts {
  text-align:center
}
.contact-grid {
  grid-template-columns:minmax(0,1fr) minmax(250px,.72fr);
  column-gap:64px;
  row-gap:24px;
  align-items:start
}
#contact .contact-grid>.eyebrow {
  grid-column:1/-1
}
.contact-grid>div,.contact-grid address {
  max-width:58ch;
  text-align:left
}
.contact-heading {
  display:block;
  margin:0 0 24px;
  color:var(--paper);
  font-family:var(--font-serif);
  font-size:var(--type-title-lg);
  font-weight:400;
  letter-spacing:normal;
  line-height:1.2;
  max-width:none;
  text-align:center;
  text-transform:none
}
#contact .contact-grid>div>.button {
  display:table;
  margin-left:auto;
  margin-right:auto
}
.contact-grid address {
  justify-self:stretch
}
.publication-navigation {
  align-items:flex-start;
  flex-direction:column
}
.publication-controls {
  align-items:flex-start;
  flex-direction:column
}
.publication-controls .search {
  width:min(100%,36rem)
}
.previous-members-list {
  grid-template-columns:repeat(2,minmax(0,1fr))
}
.previous-members-list li:nth-last-child(-n+2) {
  border-bottom:1px solid #c2cdba
}
@media(max-width:800px) {
  .contact-grid>div,.contact-grid address {
    margin-left:auto;
    margin-right:auto;
    text-align:center
  }
  .contact p:not(.eyebrow) {
    margin-left:auto;
    margin-right:auto
  }
  .section-heading {
    max-width:68ch
  }
  .research article {
    grid-template-columns:1fr;
    grid-template-areas:
      "topic"
      "title"
      "summary"
      "link"
      "credit"
      "image";
    gap:10px;
    padding:24px 0
  }
  .research article .research-image {
    height:260px;
    margin-top:10px
  }
  .pi-grid,.contact-grid {
    grid-template-columns:1fr;
    gap:32px
  }
  .gallery-card {
    grid-template-columns:1fr
  }
  .gallery-copy {
    max-width:68ch;
    padding:26px
  }
  .gallery-image {
    height:280px;
    min-height:0;
    border-left:0;
    border-top:1px solid #e1e5da
  }
  .pi-grid>img {
    justify-self:center;
    margin-left:auto;
    margin-right:auto;
    max-width:330px;
    aspect-ratio:4/5
  }
  .previous-members-list {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}
@media(max-width:540px) {
  .section-top {
    margin-bottom:16px
  }
  .section-heading {
    margin-bottom:32px
  }
  .section-heading>p {
    margin-top:16px
  }
  .gallery-copy {
    padding:22px
  }
  .previous-members-list {
    grid-template-columns:1fr
  }
  .previous-members-list li:last-child {
    border-bottom:1px solid #c2cdba
  }
  .pi-grid>img {
    max-width:260px
  }
}
.spotlights-page {
  padding-bottom:70px
}
.spotlight-page-heading {
  padding-top:42px;
  padding-bottom:24px
}
.spotlight-page-heading>.eyebrow {
  margin-top:35px;
  margin-bottom:14px
}
.spotlight-page-heading h1 {
  font-size:50px;
  font-size:var(--type-bibliography);
  margin-bottom:18px
}
.spotlight-page-heading>p:last-child {
  max-width:68ch
}
.spotlight-entry {
  max-width:1320px;
  margin:0 auto;
  padding:34px 32px 48px;
}
.spotlight-panel {
  max-width:1000px;
  margin:0 auto;
  padding:26px;
  border:1px solid var(--line);
  background:#f8f9f3
}
.spotlight-header {
  height:auto;
  padding:0;
  display:block;
  position:static;
  border:0;
  background:transparent
}
.spotlight-header .eyebrow {
  margin-bottom:14px
}
.spotlight-header h2 {
  max-width:26ch;
  font-size:36px;
  font-size:var(--type-heading);
  margin-bottom:12px
}
.spotlight-author {
  margin-bottom:12px
}
.spotlight-publication {
  width:fit-content;
  max-width:min(72ch,100%);
  margin:0 auto 16px;
  padding:12px 16px;
  border-left:3px solid #b5cc89;
  background:#f0f1e9
}
.spotlight-publication>.eyebrow {
  margin-bottom:6px;
  font-size:var(--type-caption)
}
.spotlight-publication-citation {
  font-size:var(--type-caption);
  line-height:1.65
}
.spotlight-publication .source-link {
  margin:8px 0 0
}
.spotlight-summary {
  max-width:72ch;
  font-size:18px;
  font-size:var(--type-lead);
  line-height:1.7
}
.spotlight-toc {
  margin-top:20px;
  padding:10px 14px;
  border:1px solid var(--line);
  background:#f0f1e9
}
.spotlight-toc summary {
  color:var(--ink);
  font-weight:600;
  cursor:pointer
}
.spotlight-toc ul {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));
  gap:6px 18px;
  margin:10px 0 0;
  padding-left:20px
}
.spotlight-toc a {
  color:var(--muted)
}
.spotlight-content {
  display:block;
  margin-top:28px
}
.spotlight-prose {
  max-width:none
}
.spotlight-prose>p {
  margin:0 0 18px;
  line-height:1.85
}
.spotlight-data {
  margin:26px 0;
  padding:18px;
  border:1px solid var(--line);
  background:#f0f1e9
}
.spotlight-data h3 {
  font-size:18px;
  font-size:var(--type-lead);
  margin-bottom:10px
}
.spotlight-data ul {
  margin:0;
  padding-left:20px
}
.spotlight-data li {
  margin-top:8px;
  line-height:1.65
}
.spotlight-figures {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  margin-top:28px
}
.spotlight-figure:last-child:nth-child(odd) {
  grid-column:1 / -1;
  width:calc((100% - 22px) / 2);
  justify-self:center
}
.spotlight-figure {
  min-width:0;
  margin:0;
  padding:16px;
  background:#fff;
  border:1px solid var(--line)
}
.spotlight-figure>.eyebrow {
  color:var(--ink);
  font-size:12px;
  font-size:var(--type-caption);
  margin-bottom:12px
}
.spotlight-figure .figure-zoom {
  display:flex;
  align-items:center;
  justify-content:center;
  height:300px;
  overflow:hidden;
  padding:8px;
  background:#fff
}
.spotlight-figure .figure-zoom img {
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  max-height:100%;
  object-fit:contain
}
.spotlight-figure figcaption {
  padding-top:12px;
  font-size:12px;
  font-size:var(--type-caption);
  line-height:1.8
}
@media(max-width:800px) {
  .page-promo {
    grid-template-columns:minmax(0,1fr);
    column-gap:20px
  }
  .page-promo h2,
  .page-promo p {
    width:100%;
    margin:0;
    text-align:center
  }
  .page-promo .publication-nav-link {
    grid-column:1 / -1;
    justify-self:center;
    margin:0
  }
  .spotlight-entry {
    padding:30px 35px 40px
  }
  .spotlight-panel {
    padding:20px
  }
  .spotlight-figures {
    gap:16px;
    margin-top:24px
  }
}
@media(max-width:540px) {
  .page-promo {
    grid-template-columns:1fr;
    justify-items:stretch;
    row-gap:10px
  }
  .page-promo h2 {
    width:100%
  }
  .page-promo .publication-nav-link {
    justify-self:center;
    margin:0
  }
  .spotlight-page-heading {
    padding-top:30px
  }
  .spotlight-entry {
    padding:26px 22px 34px
  }
  .spotlight-panel {
    padding:14px
  }
  .spotlight-page-heading h1 {
    font-size:40px;
    font-size:var(--type-heading-xl)
  }
  .spotlight-header h2 {
    font-size:30px;
    font-size:var(--type-title-lg)
  }
  .spotlight-summary {
    font-size:16px;
    font-size:var(--type-body)
  }
  .spotlight-figure {
    padding:10px
  }
  .spotlight-figure .figure-zoom {
    height:250px
  }
  .spotlight-figures {
    grid-template-columns:1fr;
    gap:18px;
    margin-top:22px
  }
  .spotlight-figure:last-child:nth-child(odd) {
    grid-column:auto;
    width:100%
  }
}
@media(max-width:360px) {
  .brand>span:last-child {
    display:none
  }
}
.site-footer {
  display:block;
  padding:0
}
.site-footer .footer-inner {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
  gap:18px;
  padding-top:28px!important;
  padding-bottom:24px!important
}
.site-footer .footer-name {
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:64px;
  padding:14px;
  border:1px solid var(--line);
  background:var(--paper);
  text-align:center;
  overflow-wrap:anywhere;
  font-family:var(--font-sans);
  font-size:16px;
  font-weight:600;
  line-height:1.4;
  margin:0;
  color:var(--ink)
}
.site-footer .footer-name span {
  font-size:inherit;
  margin-left:0
}
.site-footer .footer-affiliations {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:center;
  justify-items:center;
  min-width:0;
  min-height:64px;
  padding:14px;
  border:1px solid var(--line);
  background:var(--paper);
  position:static;
  inset:auto;
  width:auto;
  gap:8px 16px;
  font-size:12px;
  font-size:var(--type-caption);
  text-align:center
}
.site-footer .footer-affiliations a {
  display:block;
  min-height:0;
  min-width:0;
  margin:0;
  padding:0;
  border:0;
  color:var(--muted);
  background:none;
  text-align:center;
  overflow-wrap:anywhere
}
.site-footer .footer-affiliations a:hover,
.site-footer .footer-affiliations a:focus-visible {
  color:var(--ink);
  background:none
}
.site-footer .footer-meta {
  grid-column:1 / -1;
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:center;
  gap:8px 20px;
  border-top:1px solid var(--line);
  padding-top:14px;
  color:var(--muted)
}
.site-footer .footer-meta a {
  color:inherit
}
@media(max-width:600px) {
  .site-footer .footer-inner {
    grid-template-columns:minmax(0,1fr)
  }
  .site-footer .footer-name {
    font-size:13px
  }
  .site-footer .footer-affiliations {
    grid-template-columns:minmax(0,1fr);
    gap:10px
  }
  .site-footer .footer-meta {
    flex-direction:column;
    align-items:flex-start
  }
}
.button,
.text-link,
.filters button,
.people-tabs button,
.publication-controls .search input,
#result-count,
.menu-toggle,
.cv-controls button,
.publication-nav-link,
.zoom-hint,
.previous-members-list strong,
.previous-members-list span {
  font-size:var(--type-small)
}
.publications .publication-navigation {
  align-items:center
}
.publications .publication-navigation {
  position:relative;
  padding-top:24px
}
.publications .publication-navigation::before {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  border-top:1px solid #c2cdba;
  content:""
}
.publications .publication-navigation>span {
  align-self:center;
  margin-top:16px;
  text-align:center
}
.publications .publication-controls {
  align-items:center
}
.publications .filters {
  justify-content:center;
  width:100%
}
#people .people-tabs {
  justify-content:center;
  width:100%
}
.publications .publication-controls .search {
  width:min(100%,36rem);
  margin:0 auto
}
.publications #result-count {
  text-align:center
}
@media(max-width:1100px) {
  nav.open .nav-contact+.education-dropdown {
    margin-top:8px
  }
}
