[hidden] { display: none !important; }
.research-tabs { display:flex; flex-wrap:wrap; gap:7px 26px; margin: 30px 0 0; border-bottom:1px solid var(--line); }
.research-tabs button { position:relative; border:0; background:transparent; color:var(--muted); padding:13px 2px 16px; cursor:pointer; font:500 14px var(--sans); }
.research-tabs button[aria-selected="true"] { color:var(--ink); }
.research-tabs button[aria-selected="true"]::after { content:""; position:absolute; bottom:-1px; left:0; right:0; height:3px; background:var(--rust); }
.research-tabs button:hover { color:var(--rust); }
.research-panel:focus-visible { outline:2px solid var(--rust); outline-offset:8px; }
.topic-jump { display:flex; flex-wrap:wrap; gap:12px 28px; margin:26px 0 9px; font-size:12px; color:var(--muted); }
.topic-jump a { text-decoration:none; border-bottom:1px solid var(--line); padding-block:5px; }
.topic-jump a:hover { color:var(--rust); border-color:var(--rust); }
.topic-list { margin-top:34px; }
.topic { display:grid; grid-template-columns:minmax(0,.64fr) minmax(0,1.36fr); gap:75px; padding:44px 0 64px; border-top:1px solid var(--line); scroll-margin-top:120px; }
.topic-heading { align-self:start; position:sticky; top:125px; }
.topic h3 { font-family:var(--serif); font-size:38px; line-height:1.17; letter-spacing:-.025em; margin-bottom:20px; }
.topic-heading > p:last-child { color:var(--muted); font-size:14px; line-height:1.85; max-width:350px; }
.topic-works { min-width:0; }
.research-work { padding:29px 0 32px; scroll-margin-top:130px; }
.research-work:first-child { padding-top:0; }
.research-work + .research-work { border-top:1px solid var(--line); }
.research-work:last-child { padding-bottom:0; }
.work-meta { color:var(--rust); font-size:10px; font-weight:500; line-height:1.5; letter-spacing:.09em; text-transform:uppercase; margin-bottom:9px; }
.work-meta span { margin-inline:7px; color:var(--muted); }
.research-work h4 { margin:0; font-family:var(--serif); font-size:27px; font-weight:400; line-height:1.22; letter-spacing:-.02em; }
.work-description { color:var(--muted); font-size:14px; line-height:1.85; margin-top:13px; }
.work-collaborators { display:block; margin-top:9px; color:var(--muted); font-size:12px; line-height:1.6; }
.work-related-body { flex:1 1 240px; min-width:0; }
.work-related-body .work-collaborators { margin-top:4px; font-size:11px; }
.work-links { margin-top:15px; }
.work-media { margin:13px 0 0; padding:0; list-style:none; }
.work-media li { display:flex; align-items:baseline; flex-wrap:wrap; gap:5px 13px; font-size:12px; line-height:1.7; }
.work-media li + li { margin-top:12px; }
.work-companion { scroll-margin-top:130px; }
.work-companion-body { flex:1 1 240px; min-width:0; }
.work-companion-book { display:block; margin-top:3px; color:var(--muted); font-size:11px; }
.work-media-kind { color:var(--rust); font-size:9px; letter-spacing:.07em; text-transform:uppercase; }
.work-media a { text-decoration:none; border-bottom:1px solid var(--line); }
.work-media a:hover { color:var(--rust); border-color:var(--rust); }
.catalogue-intro { max-width:660px; color:var(--muted); font-size:14px; margin:28px 0; }
.bibliography { list-style:none; padding:0; margin:0; }
.bibliography li { padding:24px 0; border-bottom:1px solid var(--line); }
.bibliography-authors { color:var(--muted); font-size:13px; margin-bottom:6px; }
.bibliography h3 { font-family:var(--serif); font-size:24px; line-height:1.3; margin-bottom:5px; }
.bibliography h3 a { text-decoration:none; }
.bibliography h3 a:hover { text-decoration:underline; }
.bibliography-journal { font-size:13px; color:var(--muted); }
.bibliography .publication-links { margin-top:10px; }
.related-paper { margin:0 0 25px 54px; font-size:12px; color:var(--muted); }
.teaching-content { max-width:760px; }
.teaching-description { max-width:760px; }
.teaching-description > p:not(.publication-meta) { color:var(--muted); font-size:14px; line-height:1.9; margin-top:14px; }
.teaching-description > p.teaching-lead { font-size:19px; line-height:1.7; color:var(--ink); margin-top:20px; }
.teaching-links { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin-top:26px; }
.book { scroll-margin-top:120px; }
@media(max-width:1050px) { .wordmark-symbol { display:none; } .header-inner { gap:20px; } .main-nav { gap:19px; } .topic { gap:40px; } }
@media(max-width:800px) { .topic { gap:35px; grid-template-columns:1fr; } .topic-heading { position:static; } .topic h3 { font-size:36px; } .topic-heading > p:last-child { max-width:600px; } }
@media(max-width:600px) { .topic-list { margin-top:28px; } .topic { gap:30px; padding-block:32px 48px; } .topic h3 { font-size:33px; } .topic-heading > p:last-child { max-width:none; } .research-work h4 { font-size:25px; } .work-description { font-size:13px; } .work-media li { font-size:11px; } .topic-jump { font-size:11px; gap:8px 20px; } .research-tabs { gap:24px; margin-top:25px; } .research-tabs button { font-size:12px; min-height:44px; } .bibliography h3 { font-size:23px; } .related-paper { margin-left:31px; } .teaching-description > p.teaching-lead { font-size:17px; } .main-nav { gap:17px; } .main-nav a { font-size:10px; } }
@media print { .research-tabs { display:none; } .research-panel[hidden] { display:block !important; } .topic { display:block; } .topic-heading { position:static; } .research-work { break-inside:avoid; } .topic-jump { display:none; } }

/* A book stays visible beside its chapter, including in the topic view. */
.inline-book {
  display:grid;
  grid-template-columns:var(--inline-book-cover-width, 110px) minmax(0,1fr);
  align-items:start;
  gap:20px;
  max-width:560px;
  margin-top:22px;
  padding-top:0;
}
.inline-book-cover { display:block; text-decoration:none; }
.inline-book-cover img {
  width:100%;
  height:auto;
  object-fit:contain;
  object-position:top left;
  filter:drop-shadow(3px 4px 3px var(--theme-shadow, rgba(24,56,60,.12)));
}
.inline-book-copy { min-width:0; }
.inline-book-label {
  margin:0 0 6px;
  color:var(--rust);
  font-size:9px;
  font-weight:500;
  line-height:1.5;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.inline-book-title {
  margin:0;
  font-family:var(--serif);
  font-size:17px;
  line-height:1.45;
}
.inline-book-title a, .inline-book-chapter { text-decoration:none; }
.inline-book-title cite { font-style:italic; }
.inline-book-title a:hover, .inline-book-chapter:hover { text-decoration:underline; }
.inline-book-chapter {
  display:inline-block;
  font-family:var(--serif);
  font-size:18px;
  line-height:1.35;
}
.inline-book-companion .inline-book-title {
  margin-top:7px;
  color:var(--muted);
  font-size:14px;
}
.inline-book-editor {
  margin:5px 0 0;
  color:var(--muted);
  font-size:10px;
  line-height:1.65;
}
.inline-book-details {
  display:inline-block;
  margin-top:9px;
  padding-bottom:2px;
  border-bottom:1px solid var(--line);
  font-size:11px;
  line-height:1.5;
  text-decoration:none;
}
.inline-book-details:hover { color:var(--rust); border-color:var(--rust); }
.inline-book .inline-book-links { margin-top:12px; gap:9px 16px; font-size:11px; line-height:1.6; }
@media(max-width:600px) {
  .inline-book { grid-template-columns:var(--inline-book-cover-width, 110px) minmax(0,1fr); gap:16px; margin-top:20px; }
  .inline-book-title { font-size:16px; }
  .inline-book-chapter { font-size:17px; }
  .inline-book-companion .inline-book-title { font-size:13px; }
}
@media print {
  .inline-book { break-inside:avoid; }
  .inline-book-cover img { filter:none; }
}
