:root {
  --bg: #fbfbf8;
  --text: #171717;
  --muted: #61615d;
  --line: #d8d8d1;
  --accent: #315d50;
  --max: 980px;
  --measure: 760px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background:var(--bg); color:var(--text); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size:15.5px; line-height:1.5; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
a:hover { color:var(--accent); }
.container { width:min(calc(100% - 36px),var(--max)); margin:0 auto; }
header { border-bottom:1px solid var(--line); }
.nav { min-height:54px; display:flex; align-items:center; justify-content:flex-end; }
.navlinks { display:flex; gap:20px; align-items:center; font-size:13px; }
.navlinks a { text-decoration:none; color:var(--muted); white-space:nowrap; }
.navlinks a:hover,.navlinks a[aria-current='page'] { color:var(--text); }
main { min-height:72vh; }
.home-intro { padding:48px 0 34px; border-bottom:1px solid var(--line); }
.home-copy { max-width:790px; }
.home-intro h1 { margin:0 0 22px; font-size:42px; line-height:1.05; letter-spacing:-.03em; font-weight:700; }
.home-copy .lead { margin:0 0 18px; font-size:20px; line-height:1.42; color:var(--text); }
.home-copy p { margin:0 0 13px; color:#363632; }
.home-section { padding:26px 0 29px; border-bottom:1px solid var(--line); }
.simple-heading { display:flex; align-items:baseline; justify-content:space-between; gap:18px; margin-bottom:10px; }
.simple-heading h2 { margin:0; font-size:17px; line-height:1.2; font-weight:650; letter-spacing:-.01em; }
.simple-heading > a { font-size:12px; text-decoration:none; }
.work-list,.research-lines,.entry-list,.media-list,.talk-groups { border-top:1px solid var(--text); }
.work-row { display:grid; grid-template-columns:150px minmax(0,1fr); gap:18px; padding:10px 0 11px; border-bottom:1px solid var(--line); }
.work-meta { font-size:12px; color:var(--muted); }
.work-title { font-size:14.5px; line-height:1.35; }
.work-title a { text-decoration:none; }
.research-line { display:grid; grid-template-columns:250px 1fr; gap:24px; padding:11px 0 12px; border-bottom:1px solid var(--line); }
.research-line h3 { margin:0; font-size:14.5px; line-height:1.35; font-weight:620; }
.research-line h3 a { text-decoration:none; }
.research-line p { margin:0; font-size:13.5px; color:#454541; }
.page-head { padding:40px 0 24px; border-bottom:1px solid var(--line); }
.page-head h1 { margin:0 0 11px; font-size:38px; line-height:1.08; letter-spacing:-.025em; font-weight:700; }
.page-head p { margin:0; max-width:var(--measure); font-size:17px; color:#40403c; }
.page-section { padding:30px 0; border-bottom:1px solid var(--line); }
.page-grid { display:grid; grid-template-columns:190px minmax(0,1fr); gap:42px; }
.page-grid aside h2 { margin:0 0 7px; font-size:16px; font-weight:650; }
.page-grid aside p { margin:0; font-size:12px; color:var(--muted); }
.page-grid article > p:first-child { margin-top:0; }
.page-grid article p { max-width:760px; color:#373733; }
.entry-list { margin-top:18px; }
.entry { display:grid; grid-template-columns:135px minmax(0,1fr); gap:18px; padding:10px 0 11px; border-bottom:1px solid var(--line); }
.entry .meta { font-size:12px; color:var(--muted); }
.entry h3 { margin:0 0 3px; font-size:14.5px; line-height:1.35; font-weight:620; }
.entry h3 a { text-decoration:none; }
.entry p { margin:0; font-size:12.5px; color:var(--muted); }
.about-wrap { display:grid; grid-template-columns:minmax(0,1.6fr) 260px; gap:52px; align-items:start; }
.about-wrap p { margin-top:0; color:#33332f; }
.portrait { width:100%; display:block; border:1px solid var(--line); filter:grayscale(100%); }
.small-links { display:flex; gap:16px; flex-wrap:wrap; margin-top:22px; font-size:13px; }
.speaking-summary { display:flex; gap:22px; flex-wrap:wrap; margin-top:18px; padding-top:11px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }
.speaking-summary strong { color:var(--text); font-size:15px; margin-right:4px; }
.talk-group { display:grid; grid-template-columns:150px minmax(0,1fr); gap:20px; padding:14px 0 17px; border-bottom:1px solid var(--line); }
.talk-group > h3 { margin:1px 0 0; font-size:13px; line-height:1.35; }
.compact-entry { display:grid; grid-template-columns:46px minmax(0,1fr); gap:12px; padding:6px 0; border-bottom:1px solid #e8e8e2; }
.compact-entry:last-child { border-bottom:0; }
.compact-entry strong { display:block; font-size:13.2px; line-height:1.32; font-weight:600; }
.compact-entry span:not(.compact-year) { display:block; margin-top:2px; color:var(--muted); font-size:11.5px; }
.compact-year { color:var(--muted); font-size:11px; padding-top:2px; }
.source-note { margin:15px 0 0 !important; font-size:11.5px; color:var(--muted) !important; }
.media-entry { display:grid; grid-template-columns:150px minmax(0,1fr); gap:18px; padding:10px 0 11px; border-bottom:1px solid var(--line); }
.media-outlet { color:var(--muted); font-size:11.5px; }
.media-entry h3 { margin:0 0 3px; font-size:14px; line-height:1.34; }
.media-entry h3 a { text-decoration:none; }
.media-entry p { margin:0 !important; color:var(--muted) !important; font-size:12px; }
footer { padding:26px 0 36px; }
.footer-inner { display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; color:var(--muted); font-size:12px; }
.footer-links { display:flex; gap:14px; flex-wrap:wrap; }
@media (max-width:760px) {
  .nav { justify-content:flex-start; padding:13px 0; }
  .navlinks { gap:11px; flex-wrap:wrap; }
  .home-intro { padding-top:34px; }
  .home-intro h1 { font-size:34px; }
  .home-copy .lead { font-size:18.5px; }
  .work-row { grid-template-columns:100px minmax(0,1fr); gap:12px; }
  .research-line,.page-grid,.about-wrap,.talk-group { grid-template-columns:1fr; gap:8px; }
  .entry { grid-template-columns:100px minmax(0,1fr); gap:12px; }
  .media-entry { grid-template-columns:95px minmax(0,1fr); gap:12px; }
  .about-wrap .portrait { max-width:280px; }
}


/* v2.6: Current & Previous sidebar */
.home-hero-grid {
  display:grid;
  grid-template-columns:minmax(0, 1fr) 300px;
  gap:56px;
  align-items:start;
}
.home-hero-grid .home-copy { max-width:none; }
.current-panel {
  margin-top:2px;
  border-top:1px solid var(--text);
}
.current-panel-title {
  padding:12px 0 13px;
  color:var(--muted);
  font-size:11px;
  line-height:1.2;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.current-panel-list { border-top:1px solid var(--line); }
.current-panel-item {
  display:block;
  padding:10px 0;
  border-bottom:1px solid var(--line);
  font-size:13.5px;
  line-height:1.35;
  text-decoration:none;
}
a.current-panel-item:hover { color:var(--accent); }
@media (max-width:860px) {
  .home-hero-grid { grid-template-columns:1fr; gap:28px; }
  .current-panel { max-width:560px; }
}

/* v2.7 publication normalization */
.publication-list .entry h3 { margin-bottom:5px; }
.publication-list .authors { margin:0 0 6px; color:var(--muted); font-size:14px; line-height:1.45; }
.publication-list .authors strong { color:var(--text); font-weight:600; }
.resource-link { display:inline-block; font-size:13px; }
.about-subhead { margin:34px 0 12px; font-size:18px; }
.compact-list .entry { padding:10px 0; }
.compact-list .entry h3 { font-size:15px; font-weight:500; }

.affiliations-inline{font-size:14px;line-height:1.55;color:var(--muted)!important;margin-top:28px!important;padding-top:16px;border-top:1px solid var(--line)}
