
:root{--ink:#152526;--muted:#5c6a6a;--bg:#fbfbf8;--panel:#ffffff;--line:#dce4e0;--accent:#087f8c;--accent-soft:#e4f4f3;--accent-2:#c65d2e;--max:1120px;}
*{box-sizing:border-box} body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);line-height:1.6} a{color:var(--accent);text-decoration:none} a:hover{text-decoration:underline}.container{width:min(var(--max),calc(100% - 40px));margin:0 auto}.site-header{position:sticky;top:0;z-index:10;background:rgba(251,251,248,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:800;letter-spacing:.02em}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;font-size:.85rem}nav{display:flex;gap:16px;flex-wrap:wrap;justify-content:flex-end}nav a{font-weight:650;color:var(--muted);font-size:.95rem}.active,nav a:hover{color:var(--ink)}.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center;padding:84px 0 56px}.hero h1,.page-hero h1{font-size:clamp(2.4rem,6vw,5rem);line-height:.98;margin:0 0 24px;letter-spacing:-.055em}.lead{font-size:clamp(1.08rem,2vw,1.35rem);color:#314243;max-width:820px}.eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:.17em;font-weight:800;color:var(--accent);margin:0 0 12px}.hero-figure,.media-card{margin:0;background:var(--panel);border:1px solid var(--line);border-radius:28px;padding:14px;box-shadow:0 20px 55px rgba(24,43,43,.08);overflow:hidden}.hero-figure img,.media-card img{width:100%;display:block;border-radius:20px}figcaption{font-size:.9rem;color:var(--muted);padding:10px 4px 0}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:999px;background:var(--accent);color:white;font-weight:750;border:1px solid var(--accent)}.button:hover{text-decoration:none;filter:brightness(.95)}.button.secondary{background:transparent;color:var(--accent)}section{padding:44px 0}.page-hero{padding:76px 0 28px}.page-hero.narrow h1{max-width:850px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.align-start{align-items:start}.section-header{display:flex;justify-content:space-between;gap:24px;align-items:end}.section-header h2{margin:0;font-size:2rem}.card-grid{display:grid;gap:18px}.card-grid.three{grid-template-columns:repeat(3,1fr)}.card-grid.two{grid-template-columns:repeat(2,1fr)}.card,.pub-card,.person-card,.contact-card,.note-box,.callout{background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:24px}.card h3,.card h2,.pub-card h3{margin-top:0}.callout{background:var(--accent-soft);border-color:#cde8e5}.pub-year{padding:24px 0}.pub-year h2{font-size:2rem;border-bottom:1px solid var(--line);padding-bottom:8px}.pub-list{display:grid;gap:14px}.pub-card h3{font-size:1.25rem}.authors{color:var(--muted);font-size:.96rem}.people-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.person-card{display:flex;gap:18px}.person-card img,.avatar-placeholder{width:96px;height:96px;object-fit:cover;border-radius:20px;flex:0 0 auto;background:linear-gradient(135deg,var(--accent-soft),#fff);border:1px solid var(--line)}.person-pi{grid-column:1 / -1}.person-pi img{width:88px;height:88px}.role{font-weight:800;color:var(--accent);margin-top:-8px}.small{font-size:.95rem;color:var(--muted)}.site-footer{margin-top:64px;background:#102223;color:#d9e7e5;padding:42px 0}.site-footer a{color:#c8f5ef}.footer-nav{font-size:.92rem;color:#adc2c0}@media(max-width:850px){.hero,.two-col,.people-grid,.card-grid.three,.card-grid.two{grid-template-columns:1fr}.nav-wrap{align-items:flex-start;flex-direction:column}.hero{padding-top:48px}.person-pi img{width:96px;height:96px}.hero h1,.page-hero h1{font-size:2.55rem}}


/* Resources page */
.resource-page .card { height: 100%; }
.value-list, .resource-list { padding-left: 1.15rem; }
.value-list li, .resource-list li { margin-bottom: .55rem; }
.highlight-card { background: var(--accent-soft); }
.muted-card { background: rgba(255,255,255,.65); }
.resource-grid { margin-top: 18px; }
.compact-pi { align-items: flex-start; }
.person-card .pi-thumb { width: 88px; height: 88px; border-radius: 18px; object-fit: cover; flex: 0 0 auto; }


/* Science gallery additions */
.compact{max-width:760px;margin-top:0}.science-grid{display:grid;gap:18px;margin-top:18px}.science-grid.four-up{grid-template-columns:repeat(4,1fr)}.science-grid.two-up{grid-template-columns:repeat(2,1fr)}.science-figure{margin:0;background:#0c1013;border:1px solid #1d2b33;border-radius:24px;padding:14px;color:#e3eff0;box-shadow:0 18px 50px rgba(10,18,24,.14)}.science-figure img{display:block;width:100%;border-radius:16px;background:#000}.science-figure figcaption{color:#d5e5e6;padding:12px 4px 2px}.image-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding-top:8px}.image-strip img{width:100%;display:block;border-radius:20px;background:#091015;border:1px solid #1d2b33}@media(max-width:850px){.science-grid.four-up,.science-grid.two-up,.image-strip{grid-template-columns:1fr}}

.affiliation-line{font-size:1rem;color:var(--muted);margin:10px 0 0}.affiliation-line a{font-weight:750}


/* Refined public version */
.affiliation-line{color:var(--muted);font-size:.98rem}.pi-section{padding-top:12px}.pi-bottom{grid-template-columns:1fr}.science-figure strong{color:#ffffff}.science-grid.two-up .science-figure img{max-height:520px;object-fit:contain}.science-grid.four-up .science-figure img{aspect-ratio:4/3;object-fit:contain}.science-figure{display:flex;flex-direction:column}.science-figure figcaption{line-height:1.45}

#block adjusted
.bio-block {
  max-width: 760px;
  margin: 0 auto;
  text-align: left;
}

.bio-block p {
  margin-bottom: 1rem;
}

.pi-bio-card {
  display: block;
  max-width: 900px;
  margin: 0 auto;
}

.pi-bio-card .pi-thumb {
  width: 120px;
  height: 120px;
  object-fit: cover;
  border-radius: 22px;
  float: left;
  margin: 0 24px 14px 0;
}

.pi-bio-card .bio-block {
  max-width: 780px;
  margin: 0 auto;
  text-align: left;
}

.pi-bio-card .bio-block p {
  margin-bottom: 1rem;
}

.pi-bio-card::after {
  content: "";
  display: block;
  clear: both;
}

.person-photo {
  width: 96px;
  height: 96px;
  object-fit: cover;
  border-radius: 20px;
  flex: 0 0 auto;
  background: linear-gradient(135deg, var(--accent-soft), #fff);
  border: 1px solid var(--line);
}

.stephanie-photo {
  object-position: center 25%;
}