/* Readability pass: shared by every page in the v5 preview. */
:root{--muted:#53584f;--accent:#795829}
body{font-size:18px;line-height:1.7}
nav,.text-links,.thread article a,footer,.small,.authors,.tags,.paper-meta,.number,.eyebrow,.manuscript figcaption,.object-view figcaption,.resource span:last-child,.chapter aside{font-size:14px;line-height:1.65}
.paper-meta,.number,.eyebrow{letter-spacing:1px}
.filters button{font-size:15px;min-height:44px}
.education span{font-size:14px}
.manuscript-note figcaption{font-size:14px}
h1,h2,h3{overflow-wrap:break-word}
p,li,a{overflow-wrap:break-word}
@media(max-width:560px){body{font-size:18px}.identity{white-space:normal}.lead{font-size:21px}}
.home-portrait{margin:0;align-self:center;transform:none}.home-portrait img{display:block;width:100%;height:auto;border:3px solid #dfd5c1}.home-portrait figcaption{font:14px/1.6 Arial,sans-serif;color:var(--muted);margin-top:12px}@media(max-width:560px){.home-portrait{width:200px;max-width:100%;margin:8px 0 0}}
.home-portrait{width:230px;max-width:100%;justify-self:center}.home-portrait img{width:100%;height:auto;aspect-ratio:23/31;object-fit:cover;object-position:right center;border-radius:50%;border:1px solid #d8cdb9;padding:7px;background:var(--paper);box-shadow:0 5px 18px #40321b0a}.home-portrait figcaption{text-align:center;margin-top:18px;letter-spacing:.5px}@media(max-width:800px){.home-portrait{width:190px}}@media(max-width:560px){.home-portrait{width:200px;justify-self:start;margin-top:12px}}
.roots-feature{margin:40px 0;padding:30px 28px;border-top:1px solid #b5a17d;border-bottom:1px solid #b5a17d;background:#f0eee5}.roots-feature h2{font-size:34px}.roots-faces{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0}.roots-faces a{display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;gap:9px}.roots-faces img{width:100px;height:125px;object-fit:cover;border-radius:50%;border:1px solid #b5a17d;padding:3px;background:var(--paper)}.roots-faces span{font-size:17px;line-height:1.4}.roots-faces small{font:12px/1.5 Arial,sans-serif}.roots-faces a:hover span{text-decoration:underline}.roots-feature-link{font:16px/1.6 Arial,sans-serif}.roots-image-credit{font:12px/1.6 Arial,sans-serif;color:var(--muted)}@media(max-width:560px){.roots-feature{padding:25px 16px}.roots-faces{gap:10px}.roots-faces img{width:70px;height:90px}.roots-faces span{font-size:15px}.roots-feature h2{font-size:29px}}
.margin-essay{display:grid;grid-template-columns:205px minmax(0,1fr);gap:48px;border-top:1px solid var(--line);padding:35px 0 45px}.margin-essay aside p{font:30px/1.8 Tahoma,Arial,sans-serif;color:var(--accent);margin:0;text-align:left}.margin-essay aside span{font:14px/1.6 Arial,sans-serif;color:var(--muted)}.margin-essay h2{font-size:34px}.margin-essay a{font-size:15px}.margin-essay>div{max-width:720px}.margin-selection{border-top:1px solid var(--line);padding:30px 0 15px}.margin-selection h2{font-size:30px}.margin-selection p{max-width:760px;color:var(--muted);font-size:16px}@media(max-width:700px){.margin-essay{grid-template-columns:1fr;gap:20px}.margin-essay aside p{font-size:28px}}
/* Mobile reading: keep navigation visible and give text the full column. */
@media screen and (max-width: 800px) {
  .chapter { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .chapter > *, .intro > *, .home-index > a > * { min-width: 0; }
  .chapter > aside { padding-top: 0; }
  .intro { grid-template-columns: minmax(0, 1fr) 150px; }
  .home-portrait { width: 150px; }
  .masthead nav a { display: flex; align-items: center; min-height: 44px; padding: 8px 4px; }
  .thread article p a { font: inherit; }
}
@media screen and (max-width: 600px) {
  .masthead, main, footer { padding-left: 20px; padding-right: 20px; }
  .masthead { padding-top: 22px; padding-bottom: 18px; gap: 14px; }
  .identity { white-space: normal; font-size: 23px; }
  .identity span { display: inline-block; }
  .masthead nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; gap: 4px 8px; font-size: 14px; }
  .masthead nav a { justify-content: center; text-align: center; padding: 8px 2px; border-bottom: 1px solid var(--line); }
  .masthead nav a[aria-current=page] { border-bottom-color: var(--blue); }
  .intro { grid-template-columns: minmax(0, 1fr); gap: 24px; padding: 34px 0 40px; }
  h1, .page-heading h1 { font-size: clamp(34px, 9vw, 44px); line-height: 1.15; letter-spacing: -1px; margin-bottom: 22px; }
  h2, .margin-essay h2 { font-size: 30px; line-height: 1.25; }
  .lead { font-size: 21px; line-height: 1.55; }
  .page-heading { padding: 34px 0 24px; }
  .eyebrow { margin-bottom: 16px; }
  .home-portrait { width: 160px; justify-self: center; margin: 0; }
  .chapter { padding: 30px 0 40px; }
  .chapter > aside p { display: block; margin: 8px 0; }
  .chapter > aside a, .text-links a { display: inline-block; padding: 8px 0; min-height: 44px; }
  .text-links { gap: 4px 18px; }
  .thread { padding-left: 22px; }
  .thread-index { left: -37px; }
  .thread article > a { display: inline-block; min-height: 44px; padding: 10px 0; }
  .current { padding: 18px; }
  .paper h3 { font-size: 23px; line-height: 1.4; }
  .filters button { flex: 1 1 125px; }
  .education p { padding-left: 0; }
  .education span { position: static; display: block; margin-bottom: 4px; }
  .roots-faces { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .roots-faces a { display: grid; grid-template-columns: 70px minmax(0, 1fr); gap: 4px 16px; text-align: left; }
  .roots-faces img { grid-row: span 2; }
  .roots-faces span { font-size: 18px; align-self: end; }
  .roots-faces small { align-self: start; font-size: 14px; }
  .collection-grid { gap: 32px; }
  .collection-grid article { display: block; padding-bottom: 24px; border-bottom: 1px solid var(--line); }
  .collection-image { height: auto; padding: 12px; margin-bottom: 18px; }
  .collection-image img { display: block; height: auto; max-height: 380px; object-fit: contain; }
  .collection-grid p, .margin-selection p { font-size: 18px; }
  .object-view { padding-bottom: 40px; }
  .course-body ul, .course-body ol { padding-left: 24px; }
  .resource { flex-direction: column; gap: 6px; }
  .resource span:last-child { text-align: left; }
  summary { min-height: 44px; }
  footer { flex-direction: column; }
}
