.site-header.on-paper{position:absolute;background:var(--ink-2);color:var(--white)}
.people-page{;background:var(--surface);min-height:100vh}
.people-hero{;margin:var(--s6) 0 var(--s7)}
.people-hero h1{font:600 clamp(2rem,5vw,3.5rem)/.96 var(--font-display);letter-spacing:-.02em;margin:var(--s4) 0}
.people-lede{max-width:640px;line-height:1.75;color:var(--muted)}
.people-search{display:block;max-width:520px;margin-top:var(--s6)}
.people-search span{display:block;margin-bottom:var(--s2)}

.people-filters{display:grid;gap:var(--s5);padding:var(--s6) 0;border-top:1px solid var(--juniper);border-bottom:1px solid var(--juniper)}
.filter-row{display:grid;grid-template-columns:120px 1fr;gap:var(--s4);align-items:start}
.chips{display:flex;flex-wrap:wrap;gap:var(--s2)}
.chip{border:1px solid var(--juniper);background:var(--white);color:var(--ink);padding:var(--s2) var(--s3);font:500 var(--step--1) var(--sans);cursor:pointer;transition:.18s}
.chip span{color:var(--muted);font-weight:400}
.chip:hover{border-color:var(--ink-2)}
.chip.active{background:var(--ink-2);border-color:var(--ink-2);color:var(--white)}
.chip.active span{color:var(--juniper)}

.alpha-jump{display:flex;flex-wrap:wrap;gap:var(--s1);padding:var(--s5) 0 var(--s2)}
.alpha-jump a{display:grid;place-items:center;width:30px;height:30px;text-decoration:none;font-size:var(--step--1);color:var(--ink-2);border:1px solid transparent}
.alpha-jump a:hover{border-color:var(--ink-2);background:var(--surface)}
.result-count{min-height:1.2rem;margin:var(--s2) 0 var(--s5);font-size:var(--step--1);color:var(--muted)}

.surname-group{padding:var(--s6) 0;border-top:1px solid var(--juniper-soft);scroll-margin-top:var(--s9)}
.surname-group>header{margin-bottom:var(--s4)}
.surname-group h2{font:500 var(--step-3) var(--serif);margin:0}
.surname-group>header p{margin:var(--s1) 0 0;font-size:var(--step--1);color:var(--muted);letter-spacing:.04em}
.surname-group li[hidden]{display:none}
.surname-group a{display:flex;min-width:0;flex-direction:column;gap:var(--s1);padding:var(--s4) var(--s4);text-decoration:none;height:100%}
.surname-group a:hover{background:var(--surface)}
.surname-group a strong{font-weight:600;font-size:var(--step-0);color:var(--ink)}
.surname-group a:hover strong{color:var(--ink-2)}


.ev-inferred{background:var(--surface);color:var(--crit)}

.no-results{padding:var(--s7) 0;color:var(--muted)}
.no-results button{border:0;background:none;color:var(--ink-2);text-decoration:underline;cursor:pointer;font:inherit}

.not-found{max-width:760px}
.not-found h1{font:500 clamp(2.6rem,5vw,4.2rem)/.98 var(--serif);letter-spacing:-.02em;margin:var(--s4) 0}
.not-found-lede{line-height:1.75;color:var(--muted);max-width:60ch}
.not-found-search{display:block;max-width:480px;margin:var(--s6) 0}
.not-found-search span{display:block;margin-bottom:var(--s2)}
.not-found-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1px;margin-top:var(--s4)}
.not-found-actions a{display:grid;gap:var(--s1);padding:var(--s4) var(--s4);background:var(--white);text-decoration:none;box-shadow:0 0 0 1px var(--juniper-soft)}
.not-found-actions a:hover{background:var(--surface)}
.not-found-actions strong{font-size:var(--step-0)}
.not-found-actions span{font-size:var(--step--1);color:var(--muted)}

@media(max-width:800px){
  .filter-row{grid-template-columns:1fr;gap:var(--s2)}
}
.letter-anchor{display:block;height:0;scroll-margin-top:var(--s9)}
.surname-group{scroll-margin-top:var(--s9)}
.surname-hit{background:var(--surface)}
.surname-hit span{color:var(--ink-2)}

/* --- legibility: nothing on a card below ~10px --- */
.p-years{font-size:var(--step--1)}
.p-meta{font-size:var(--step--1)}

/* --- collapsible surname groups (small screens only) --- */
.surname-group>header{position:relative}
.group-toggle{display:none}
.groups-collapsible .surname-group{padding:0;border-top:1px solid var(--juniper-soft)}
.groups-collapsible .surname-group>header{
  display:flex;align-items:center;justify-content:space-between;gap:var(--s4);
  margin:0;padding:var(--s4) var(--s1);cursor:pointer;
}
.groups-collapsible .surname-group h2{font-size:var(--step-1)}
.groups-collapsible .surname-group>header p{margin:var(--s1) 0 0}
.groups-collapsible .group-toggle{
  display:grid;place-items:center;flex:0 0 auto;width:30px;height:30px;
  border:1px solid var(--juniper);background:var(--white);cursor:pointer;
}
.groups-collapsible .group-toggle span{
  display:block;width:9px;height:9px;border-right:2px solid var(--ink-2);border-bottom:2px solid var(--ink-2);
  transform:translateY(-2px) rotate(45deg);transition:transform .18s ease;
}
.groups-collapsible .surname-group.is-open .group-toggle span{transform:translateY(2px) rotate(-135deg)}
.groups-collapsible .surname-group>ul{display:none}
.groups-collapsible .surname-group.is-open>ul{display:grid;padding-bottom:var(--s4)}
.groups-collapsible .surname-group[hidden]{display:none}

.p-row{display:grid;grid-template-columns:minmax(12rem,1.2fr) 6rem 1fr 1fr 1.5rem;gap:var(--s4);align-items:baseline;padding:var(--s3) 0;border-bottom:1px solid var(--line-soft);color:var(--ink);text-decoration:none;font-family:var(--font-data);font-size:var(--step--0)}
.p-row:hover .p-name{color:var(--juniper);text-decoration:underline}
.p-name{font-family:var(--font-body);font-weight:600}
.p-years{color:var(--muted)}
.p-line,.p-place{color:var(--ink-2);font-size:var(--step--1)}
.p-mark{color:var(--juniper);font-size:.6em;justify-self:end}
@media(max-width:760px){.p-row{grid-template-columns:1fr auto;grid-template-rows:auto auto}.p-line,.p-place{grid-column:1/-1}}

.people-page .surname-group{margin-bottom:var(--s5);padding:0;border:0;display:block}
.surname-group>header{display:flex;align-items:baseline;gap:var(--s4);margin:0;padding:var(--s2) 0;border-bottom:1px solid var(--line)}
.surname-group>header h2{font-size:var(--step-1);line-height:1.25;margin:0}
.surname-group>header p{font-size:var(--step--1);margin:0}
.surname-group>ul{display:block;list-style:none;padding:0;margin:0}
.surname-group li{margin:0;padding:0;border:0;min-width:0}
.surname-group .p-row{display:grid;height:auto;padding:var(--s1) 0;line-height:1.3;min-height:0;background:transparent;border-radius:0}
.p-name small{display:block;font-size:var(--step--1);font-weight:400;color:var(--muted);line-height:1.3}
.p-name,.p-line,.p-place{min-width:0}
.p-line,.p-place{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.p-row .p-mark{font-size:var(--step--1)}
@media(max-width:760px){.p-line,.p-place{white-space:normal}.surname-group>header{align-items:start}.p-row .p-mark{grid-column:2;grid-row:1}.p-row:has(.p-mark) .p-years{padding-right:var(--s4)}}
/* Keep the complete desktop directory compact while retaining formal names. */
.people-page .surname-group{margin-bottom:var(--s3)}
.surname-group>header{padding:var(--s1) 0}
