@charset "UTF-8";
/* Portfolio research desk: Swiss typography, ruled grids, restrained vermilion. */
.portfolio-dashboard{margin:38px 0 0;border-top:3px solid var(--ink)}
.portfolio-stats{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;border-bottom:1px solid var(--rule)}
.portfolio-stats>div{padding:24px 18px 24px 0;min-width:0}
.portfolio-stats>div+div{border-left:1px solid var(--rule);padding-left:24px}
.portfolio-stats span,.portfolio-stats small{display:block}
.portfolio-stats span{font:10px/1.5 var(--mono);letter-spacing:.05em;color:var(--muted)}
.portfolio-stats strong{font:600 clamp(20px,2.1vw,34px)/1.8 var(--sans);letter-spacing:-.045em;white-space:nowrap}
.portfolio-stats strong i{font:11px var(--mono);font-style:normal;letter-spacing:0}
.portfolio-stats small{font-size:11px;color:var(--muted)}
.portfolio-tabs{display:flex;border-bottom:1px solid var(--ink);overflow-x:auto;gap:26px;scrollbar-width:thin}
.portfolio-tabs a{display:flex;align-items:center;gap:10px;padding:19px 0 17px;white-space:nowrap;font-size:13px;font-weight:600;border-bottom:3px solid transparent}
.portfolio-tabs a[aria-current]{color:var(--red);border-color:var(--red)}
.portfolio-tabs a span{font:10px var(--mono);background:#e8e9e1;border-radius:2px;padding:3px 5px;color:var(--muted)}
.depth-section{padding:48px 0 30px}
.depth-section h2{font:600 clamp(30px,3.2vw,48px)/1.15 var(--sans);letter-spacing:-.045em;margin:20px 0}
.depth-section h2>span{color:var(--red)}
.depth-description{max-width:760px;color:var(--muted);line-height:1.8;margin-bottom:30px}
.depth-filters{display:flex;gap:16px;align-items:end;flex-wrap:wrap;padding:20px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin:25px 0}
.depth-filters label{display:flex;flex-direction:column;gap:8px;font:10px var(--mono);text-transform:uppercase;letter-spacing:.07em}
.depth-filters input,.depth-filters select{border:1px solid var(--rule);background:transparent;padding:11px 14px;min-width:180px;font:13px var(--body);text-transform:none;max-width:100%}
.depth-filters .button{min-height:42px}
.depth-scope{font:11px/1.8 var(--mono);color:var(--muted);margin:24px 0}
.depth-table{width:100%;border-collapse:collapse;font-size:13px;min-width:890px}
.depth-table th{font:10px var(--mono);letter-spacing:.05em;text-align:left;padding:18px 14px;border-bottom:2px solid var(--ink);color:var(--muted);white-space:nowrap}
.depth-table td{padding:19px 14px;border-bottom:1px solid var(--rule);vertical-align:middle}
.depth-table tr:hover td{background:#eeefe7}
.depth-table td small{display:block;color:var(--muted);font-size:11px;margin-top:5px}
.depth-table td b{font:600 17px var(--sans)}
.depth-table th:first-child,.depth-table td:first-child{padding-left:0}
.activity-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin:28px 0}
.activity-counts>a{background:var(--paper);padding:20px;display:flex;align-items:center;gap:20px}
.activity-counts strong{font:500 34px var(--sans);letter-spacing:-.05em}
.activity-counts span{font:11px var(--mono);color:var(--muted)}
.activity-tag{font:11px var(--mono);white-space:nowrap}
.activity-tag.increase{color:#236443}.activity-tag.decrease{color:#b24132}
.history-chart{display:flex;gap:3px;height:180px;border-bottom:1px solid var(--ink);margin-top:45px;align-items:end}
.history-chart>div{flex:1;height:100%;display:flex;align-items:end;min-width:0}
.history-chart>div>span{display:block;width:100%;height:var(--bar,1%);background:var(--ink)}
.history-chart>div:hover>span{background:var(--red)}
.chart-axis{display:flex;justify-content:space-between;font:10px var(--mono);color:var(--muted);margin:12px 0 16px}
.quarter-history{border-top:2px solid var(--ink)}
.quarter-history details{border-bottom:1px solid var(--rule)}
.quarter-history summary{display:grid;grid-template-columns:140px 140px 1fr 20px;gap:16px;padding:22px 0;align-items:center;cursor:pointer;list-style:none}
.quarter-history summary::-webkit-details-marker{display:none}
.quarter-history summary>strong{font:500 20px var(--sans)}
.quarter-history summary>span{font:12px var(--mono)}
.quarter-history summary>small{font:11px var(--mono);color:var(--muted)}
.quarter-history summary>i{font:22px var(--mono);font-style:normal;text-align:right}
.quarter-history details[open] summary>i{transform:rotate(45deg);color:var(--red)}
.history-holdings{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}
.history-holdings a{display:grid;grid-template-columns:24px 1fr auto;gap:10px;padding:12px;border:1px solid var(--rule);align-items:center}
.history-holdings a:hover{border-color:var(--red)}
.history-holdings a>span{font:9px var(--mono);color:var(--muted)}
.history-holdings a>b{font-size:13px}.history-holdings a>small{font:10px var(--mono)}
.stock-history-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--ink);padding:24px 0}
.stock-history-heading h3{font:600 40px var(--sans);margin:10px 0;letter-spacing:-.04em}
.stock-history-heading h3 small{font:14px var(--body);margin-left:20px;letter-spacing:0;color:var(--muted)}
.stock-history-heading>p{font:11px/2 var(--mono);text-align:right}
.sector-chart{border-top:2px solid var(--ink);margin:40px 0 22px}
.sector-chart>div{display:grid;grid-template-columns:30px 220px 1fr 70px;gap:20px;padding:22px 0;border-bottom:1px solid var(--rule);align-items:center}
.sector-chart>div>span{font:10px var(--mono);color:var(--muted)}
.sector-chart b{font-size:14px;font-weight:500}.sector-chart strong{font:12px var(--mono);text-align:right}
.sector-track{height:10px;background:#e5e6dc}.sector-track i{display:block;height:100%;width:var(--bar,0);background:var(--red)}
.reading-links{border-top:2px solid var(--ink);margin:35px 0}
.reading-links article{border-bottom:1px solid var(--rule);padding:25px 0}
.reading-links article>span{font:10px var(--mono);color:var(--red);text-transform:uppercase}
.reading-links h3{font:500 24px var(--sans);letter-spacing:-.035em;margin:10px 0}
.reading-links small{color:var(--muted);font-size:11px}
.coverage-errors{border:1px solid var(--rule);padding:16px;margin:24px 0;font-size:12px}
.reported-price{color:var(--ink)!important}
@media(max-width:900px){.portfolio-stats{grid-template-columns:1.3fr 1fr}.portfolio-stats>div:nth-child(3){border-left:0;border-top:1px solid var(--rule);padding-left:0}.portfolio-stats>div:nth-child(4){border-top:1px solid var(--rule)}.portfolio-stats strong{font-size:26px}.history-holdings{grid-template-columns:repeat(3,1fr)}.activity-counts>a{gap:10px;padding:15px}.activity-counts strong{font-size:28px}.sector-chart>div{grid-template-columns:20px 170px 1fr 60px;gap:12px}}
@media(max-width:560px){.portfolio-stats>div{padding:18px 10px 18px 0}.portfolio-stats>div+div{padding-left:14px}.portfolio-stats>div:nth-child(3){padding-left:0}.portfolio-stats strong{font-size:20px}.portfolio-stats strong i{font-size:9px}.portfolio-stats small{font-size:10px}.portfolio-stats span{font-size:9px}.portfolio-tabs{gap:20px}.portfolio-tabs a{font-size:12px}.depth-section{padding-top:32px}.depth-filters{gap:14px}.depth-filters label{width:100%}.depth-filters input,.depth-filters select{width:100%;min-width:0}.activity-counts{grid-template-columns:1fr 1fr}.activity-counts>a{padding:14px}.quarter-history summary{grid-template-columns:90px 90px 1fr 15px;gap:8px}.quarter-history summary>strong{font-size:17px}.quarter-history summary>small{font-size:9px}.quarter-history summary>span{font-size:11px}.history-holdings{grid-template-columns:1fr 1fr;gap:8px}.history-holdings a{gap:5px;padding:10px 6px;grid-template-columns:15px 1fr auto}.history-holdings a>b{font-size:11px}.history-holdings a>small{font-size:9px}.stock-history-heading{display:block}.stock-history-heading h3 small{display:block;margin:10px 0}.stock-history-heading>p{text-align:left}.sector-chart>div{grid-template-columns:18px 1fr 65px;gap:10px}.sector-track{grid-column:2 / 4;grid-row:auto;height:6px}.sector-chart strong{grid-column:3;grid-row:auto}.sector-chart>div>strong{grid-column:3;grid-row:1}.sector-chart>div{position:relative}.sector-chart>div>strong{grid-row:initial}.history-chart{gap:1px;height:130px}}
:root {
  --paper: #f7f6f1;
  --ink: #151713;
  --red: #f0442e;
  --muted: #73756e;
  --rule: #d5d6cd;
  --sans: "Archivo", sans-serif;
  --body: "DM Sans", sans-serif;
  --mono: "IBM Plex Mono", monospace;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 30px;
}
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 15px/1.5 var(--body);
  -webkit-font-smoothing: antialiased;
}
a {
  color: inherit;
  text-decoration: none;
}
button,
input,
select,
textarea {
  font: inherit;
  color: inherit;
}
button,
a,
input,
select,
textarea {
  -webkit-tap-highlight-color: transparent;
}
button {
  cursor: pointer;
  background: none;
  border: 0;
}
button:disabled {
  opacity: 0.45;
  cursor: wait;
}
button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline: 2px solid var(--red);
  outline-offset: 5px;
}
::selection {
  background: var(--red);
  color: white;
}
h1,
h2,
h3,
p {
  margin: 0;
}
h1,
h2,
h3 {
  font-family: var(--sans);
  font-weight: 700;
  line-height: 1.03;
}
h1,
h2 {
  letter-spacing: -0.055em;
}
input,
select,
textarea {
  background: transparent;
  border: 1px solid var(--rule);
  border-radius: 0;
  padding: 12px 14px;
  max-width: 100%;
  outline-offset: 2px;
}
textarea {
  width: 100%;
  resize: vertical;
}
select {
  cursor: pointer;
}
img {
  display: block;
  max-width: 100%;
  height: auto;
}
.site-wrap {
  max-width: 1720px;
  padding: 0 56px;
  margin: auto;
}
.feedback-invitation {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;border-top:1px solid var(--ink);padding:48px 0;margin-top:64px}
.feedback-invitation h2 {font-size:clamp(28px,3.2vw,44px);line-height:1.05;margin:16px 0}
.feedback-invitation h2 span {color:var(--red)}
.feedback-invitation>div>p {max-width:420px;font-size:14px;line-height:1.7;margin:20px 0}
.feedback-form {max-width:800px;width:100%;margin:32px 0}
.feedback-invitation .feedback-form {margin:0}
.feedback-fields {display:grid;gap:18px;min-width:0}
.feedback-fields label {display:grid;gap:9px;font-size:13px;font-weight:600;min-width:0}
.feedback-fields input,.feedback-fields textarea,.feedback-fields select {width:100%;min-width:0;background:transparent;border:1px solid var(--rule);padding:12px;font:14px/1.6 var(--body);color:var(--ink);border-radius:0;box-sizing:border-box}
.feedback-fields textarea {resize:vertical}
.feedback-fields .honeypot {display:none}
.feedback-fields .button {justify-self:start}
.feedback-note,.feedback-setup-note {font-size:12px;line-height:1.6;color:var(--muted)}
.feedback-setup-note {border-left:2px solid var(--red);padding-left:12px;color:var(--ink)}
.feedback-form [disabled] {opacity:.6;cursor:not-allowed}
.header-feedback {border:1px solid var(--ink);padding:8px 12px;gap:12px!important;white-space:nowrap}
.ad-slot {margin:40px 0;padding:16px 0;border-top:1px solid var(--rule);text-align:center}
.ad-slot[hidden] {display:none!important}
.ad-slot-label {font:10px var(--mono);color:var(--muted)}
.ad-slot-content {min-height:100px;max-width:970px;margin:10px auto 0}
@media(max-width:640px){.feedback-invitation{grid-template-columns:minmax(0,1fr);gap:28px;padding:32px 0}.header-feedback{padding:7px 10px;font-size:11px!important}.header-feedback span{font-size:16px}.site-header{gap:12px!important}}
.site-header {
  height: 108px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--ink);
  gap: 30px;
}
.brand {
  display: inline-flex;
  align-items: center;
  font: 700 32px/1 var(--sans);
  letter-spacing: -1.5px;
}
.brand-icon {
  background: var(--red);
  color: var(--paper);
  font-size: 28px;
  width: 35px;
  height: 35px;
  display: grid;
  place-items: center;
  margin-right: 10px;
  letter-spacing: 0;
}
.brand-dot {
  color: var(--red);
}
.site-header nav {
  display: flex;
  gap: 34px;
  font-size: 14px;
}
.site-header nav a {
  padding: 8px 0;
  position: relative;
}
.site-header nav a:hover,
.site-header nav a.active {
  color: var(--red);
}
.site-header nav a.active:after {
  content: "";
  width: 4px;
  height: 4px;
  background: var(--red);
  position: absolute;
  bottom: 0;
  left: 50%;
}
.header-action {
  display: flex;
  align-items: center;
  gap: 32px;
  font-size: 14px;
}
.header-action span {
  font-size: 24px;
}
.edition-bar {
  display: flex;
  gap: 20px;
  justify-content: space-between;
  font: 10px/1.5 var(--mono);
  padding: 10px 0;
  border-bottom: 1px solid var(--rule);
  color: #5c5f57;
}
.edition-bar span:first-child {
  display: flex;
  align-items: center;
  gap: 7px;
}
.edition-bar i {
  width: 5px;
  height: 5px;
  background: var(--red);
  display: inline-block;
}
.edition-bar a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.section-label,
.eyebrow {
  font: 10px/1.5 var(--mono);
  letter-spacing: 0.04em;
}
.section-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.hero {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  margin-top: 36px;
  position: relative;
}
.hero-left {
  padding: 0 42px 44px 0;
  min-width: 0;
}
.hero-left .section-label {
  font-size: 9px;
  padding-bottom: 26px;
}
.hero h1 {
  font-size: clamp(68px, 7.7vw, 124px);
  line-height: 0.92;
  letter-spacing: -0.078em;
}
.hero h1 > span {
  color: var(--red);
}
.hero-intro {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  padding-top: 35px;
}
.hero-intro p {
  font-size: 15px;
  line-height: 1.5;
}
.button {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  background: var(--ink);
  color: var(--paper);
  padding: 15px 20px;
  font-size: 13px;
  border: 1px solid var(--ink);
  white-space: nowrap;
  transition:
    background 0.16s,
    color 0.16s;
}
.button span {
  font-size: 20px;
  line-height: 1;
}
.button:hover {
  background: var(--red);
  border-color: var(--red);
  color: var(--paper);
}
.button.outline {
  background: transparent;
  color: var(--ink);
}
.button.outline:hover {
  background: var(--ink);
  color: var(--paper);
}
.button.small {
  padding: 9px 13px;
  gap: 12px;
}
.hero-right {
  background: var(--red);
  padding: 21px 24px 0;
  min-width: 0;
  overflow: hidden;
}
.hero-red-top {
  display: flex;
  justify-content: space-between;
  font: 9px var(--mono);
  border-bottom: 1px solid #181a1550;
  padding-bottom: 13px;
}
.hero-feature {
  display: grid;
  grid-template-columns: 1fr 0.92fr;
  align-items: end;
  gap: 13px;
  padding-top: 36px;
  height: calc(100% - 30px);
}
.hero-portrait {
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}
.hero-portrait .portrait {
  width: 100%;
  height: 100%;
  max-height: 410px;
  object-fit: cover;
  object-position: 50% 25%;
  filter: grayscale(1);
  mix-blend-mode: multiply;
}
.portrait-reference {
  position: absolute;
  bottom: 13px;
  left: 10px;
  color: white;
  font: 8px var(--mono);
  text-shadow: 0 1px 4px black;
}
.hero-feature-text {
  align-self: end;
  padding-bottom: 32px;
}
.hero-feature-text .eyebrow {
  font-size: 8px;
  display: block;
  margin-bottom: 20px;
}
.hero-feature-text h2 {
  font-size: clamp(37px, 4.7vw, 70px);
  letter-spacing: -0.07em;
  line-height: 0.94;
  position: relative;
}
.hero-feature-text h2 span {
  font-size: 27px;
  display: inline-block;
  margin-left: 8px;
  vertical-align: top;
}
.hero-feature-text p {
  font-size: 10px;
  line-height: 1.7;
  margin-top: 22px;
}
.hero-baseline {
  grid-column: 1/-1;
  border-top: 1px solid var(--ink);
  border-bottom: 1px solid var(--ink);
  padding: 17px 0;
  display: flex;
  justify-content: space-between;
  font: 10px var(--mono);
  letter-spacing: 0.025em;
}
.hero-baseline a {
  font-family: var(--body);
  font-size: 12px;
  letter-spacing: 0;
}
.stat-strip {
  display: grid;
  grid-template-columns: repeat(3, 1fr) 1.2fr;
  padding: 30px 0 34px;
  border-bottom: 1px solid var(--rule);
}
.stat-strip > div {
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--rule);
  padding: 0 28px;
}
.stat-strip > div:first-child {
  padding-left: 0;
}
.stat-strip strong {
  font: 700 46px/1 var(--sans);
  letter-spacing: -0.06em;
}
.stat-strip span {
  font: 10px var(--mono);
  margin-top: 8px;
}
.stat-strip > div:last-child {
  border: 0;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  gap: 18px;
  padding-right: 0;
}
.stat-explainer p {
  font-size: 12px;
  line-height: 1.6;
}
.tiny-red-square {
  width: 13px;
  height: 13px;
  background: var(--red);
  display: inline-block;
  margin: 0 !important;
  flex: none;
}
.index-section {
  padding-top: 62px;
}
.index-section > .section-label {
  padding-bottom: 26px;
  border-bottom: 1px solid var(--rule);
}
.section-title {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin: 33px 0 38px;
  gap: 30px;
}
.section-title h2 {
  font-size: clamp(38px, 4.4vw, 64px);
  line-height: 0.98;
}
.section-title h2 span {
  color: var(--red);
}
.section-title > p {
  font-size: 12px;
  line-height: 1.6;
  padding-bottom: 3px;
  color: #5f625a;
}
.category-tabs {
  display: flex;
  gap: 25px;
  border-bottom: 1px solid var(--ink);
}
.category-tabs button {
  padding: 12px 0 15px;
  color: var(--muted);
  font-size: 13px;
  position: relative;
}
.category-tabs button.selected {
  color: var(--ink);
}
.category-tabs button.selected:after {
  content: "";
  position: absolute;
  bottom: -1px;
  height: 3px;
  left: 0;
  right: 0;
  background: var(--red);
}
.search-controls {
  display: flex;
  align-items: stretch;
  gap: 15px;
  padding: 19px 0;
}
.search-box {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
  border: 1px solid var(--rule);
  padding: 0 14px;
  min-width: 0;
}
.search-box input {
  border: 0;
  flex: 1;
  min-width: 0;
  padding: 13px 0;
}
.search-box kbd {
  font: 11px var(--mono);
  border: 1px solid var(--rule);
  padding: 1px 5px;
}
.search-controls select {
  height: 100%;
  font-size: 12px;
  width: 160px;
}
.filter-submit {
  padding: 0 15px;
  border: 1px solid var(--ink);
  font-size: 12px;
}
.filter-submit:hover {
  background: var(--ink);
  color: var(--paper);
}
.results-meta {
  display: flex;
  justify-content: space-between;
  font: 10px var(--mono);
  color: var(--muted);
  padding: 3px 0 18px;
}
.results-meta span:first-child {
  color: var(--ink);
}
.people-table-head {
  display: grid;
  grid-template-columns: 1.5fr 1fr 0.55fr 0.44fr;
  gap: 25px;
  border-top: 1px solid var(--ink);
  border-bottom: 1px solid var(--rule);
  padding: 13px 0;
  font: 8px var(--mono);
  letter-spacing: 0.035em;
}
.person-row {
  display: grid;
  grid-template-columns: 25px minmax(300px, 1.5fr) minmax(
      180px,
      1fr
    ) 0.55fr 0.38fr 22px;
  align-items: center;
  column-gap: 18px;
  padding: 23px 0;
  border-bottom: 1px solid var(--rule);
  transition: background 0.18s;
}
.person-row:hover {
  background: #efeee7;
}
.row-number {
  font: 10px var(--mono);
  color: var(--muted);
  align-self: start;
  padding-top: 3px;
}
.person-identity {
  display: flex;
  align-items: center;
  gap: 20px;
  min-width: 0;
}
.portrait {
  width: 72px;
  height: 88px;
  object-fit: cover;
  object-position: center 23%;
  filter: grayscale(1);
  flex: none;
  background: #dedfd6;
}
.person-identity > span {
  min-width: 0;
}
.person-identity .eyebrow {
  font-size: 8px;
  color: var(--muted);
  text-transform: uppercase;
  display: block;
  margin-bottom: 6px;
}
.person-identity h3 {
  font-size: 23px;
  letter-spacing: -0.04em;
  transition: color 0.15s;
}
.person-identity:hover h3 {
  color: var(--red);
}
.bio-short {
  display: block;
  font-size: 10px;
  line-height: 1.55;
  color: #696c63;
  max-width: 300px;
  margin-top: 7px;
}
.person-coverage {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 11px;
  min-width: 0;
  padding-right: 4px;
}
.person-coverage strong {
  font-weight: 400;
  font-size: 12px;
  line-height: 1.4;
}
.person-coverage small {
  font-size: 9px;
  color: var(--muted);
  line-height: 1.5;
}
.person-coverage span {
  font: 9px/1.5 var(--mono);
}
.person-date {
  font: 10px var(--mono);
  align-self: center;
}
.person-date small {
  display: block;
  font: 9px/1.5 var(--body);
  color: var(--muted);
  margin-top: 6px;
  max-width: 120px;
}
.source-count {
  font: 10px var(--mono);
  white-space: nowrap;
}
.source-count:hover,
.text-link:hover,
.source-link:hover {
  color: var(--red);
}
.person-arrow {
  font-size: 26px;
  line-height: 1;
}
.portrait-missing {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font: 700 26px var(--sans);
  color: #777c6e;
}
.portrait-missing small {
  font: 5px var(--mono);
  margin-top: 5px;
}
.empty-state {
  padding: 70px 20px;
  text-align: center;
  border-bottom: 1px solid var(--rule);
}
.empty-state > span {
  font: 60px var(--sans);
  color: var(--red);
}
.empty-state h3 {
  font-size: 30px;
  margin: 12px 0;
}
.empty-state p {
  max-width: 460px;
  margin: 10px auto 24px;
  color: var(--muted);
}
.editorial-band {
  margin: 72px 0 0;
  background: #eaeae2;
  padding: 35px 40px 40px;
  position: relative;
}
.editorial-band > .section-label {
  padding-bottom: 32px;
  border-bottom: 1px solid #c4c6ba;
}
.editorial-band h2 {
  font-size: 64px;
  line-height: 0.97;
  margin-top: 35px;
}
.editorial-band h2 span {
  color: var(--red);
}
.guide-columns {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 42px;
  margin: 45px 0 35px;
}
.guide-columns b {
  font: 10px var(--mono);
  color: var(--red);
}
.guide-columns h3 {
  font-size: 20px;
  letter-spacing: -0.03em;
  margin: 12px 0;
}
.guide-columns p {
  font-size: 12px;
  line-height: 1.75;
  color: #66695e;
}
.site-footer {
  margin-top: 80px;
  border-top: 1px solid var(--ink);
}
.footer-top {
  display: grid;
  grid-template-columns: 1fr 1fr 0.7fr 0.7fr;
  gap: 35px;
  padding: 38px 0 45px;
  align-items: start;
}
.footer-top .brand {
  font-size: 28px;
}
.footer-top .brand-icon {
  width: 30px;
  height: 30px;
  font-size: 24px;
}
.footer-top > p {
  font-size: 15px;
  line-height: 1.5;
}
.footer-top > div {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-size: 11px;
}
.footer-top a:hover {
  color: var(--red);
}
.footer-bottom {
  border-top: 1px solid var(--rule);
  padding: 20px 0 30px;
  display: flex;
  justify-content: space-between;
  font: 8px/1.7 var(--mono);
  color: var(--muted);
  gap: 20px;
}
.page-kicker {
  font: 10px var(--mono);
  padding-top: 30px;
}
.page-kicker + .index-section {
  padding-top: 30px;
}
.breadcrumb {
  display: flex;
  gap: 13px;
  font: 10px var(--mono);
  padding: 29px 0;
  color: var(--muted);
}
.breadcrumb a {
  color: var(--ink);
}
.breadcrumb a:hover {
  color: var(--red);
}
.profile-heading {
  display: grid;
  grid-template-columns: 230px 1fr;
  gap: 50px;
  padding: 22px 0 44px;
}
.profile-photo .portrait {
  width: 230px;
  height: 284px;
}
.profile-photo > a {
  display: block;
  font: 8px var(--mono);
  margin-top: 9px;
}
.profile-intro .section-label {
  padding: 0 0 26px;
  border-bottom: 1px solid var(--rule);
}
.profile-intro h1 {
  font-size: clamp(50px, 7vw, 94px);
  margin-top: 28px;
  letter-spacing: -0.065em;
}
.profile-bio {
  font-size: 17px;
  line-height: 1.55;
  max-width: 680px;
  margin: 23px 0 8px;
}
.bio-reference {
  font: 9px var(--mono);
  color: var(--muted);
}
.bio-reference a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.profile-meta {
  display: grid;
  grid-template-columns: 1.3fr 1fr 1fr;
  gap: 24px;
  border-top: 1px solid var(--rule);
  padding-top: 24px;
  margin-top: 28px;
}
.profile-meta > div {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.profile-meta span {
  font: 8px var(--mono);
  color: var(--muted);
}
.profile-meta strong {
  font-size: 12px;
  font-weight: 400;
}
.context-box {
  background: #ecece4;
  border-left: 3px solid var(--red);
  padding: 19px 22px;
  font-size: 12px;
  line-height: 1.7;
}
.context-box > b {
  font: 9px var(--mono);
  display: block;
  margin-bottom: 7px;
}
.context-box p {
  max-width: 1000px;
}
.holdings-chart {
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 70px;
  padding: 55px 0;
  border-bottom: 1px solid var(--ink);
}
.holdings-chart h2 {
  font-size: 42px;
  line-height: 1.02;
  margin: 20px 0;
}
.holdings-chart h2 span {
  color: var(--red);
}
.holdings-chart p {
  font-size: 11px;
  color: var(--muted);
  max-width: 350px;
  line-height: 1.7;
}
.text-link {
  padding: 0;
  text-decoration: underline;
  text-underline-offset: 4px;
  font-size: 11px;
  margin-top: 17px;
}
.weight-chart {
  padding-top: 40px;
}
.weight-row {
  display: grid;
  grid-template-columns: 55px 1fr 55px;
  gap: 20px;
  align-items: center;
  padding: 10px 0;
  font: 11px var(--mono);
}
.weight-track {
  height: 24px;
  background: #e7e8df;
}
.weight-fill {
  display: block;
  height: 100%;
  width: 0;
  background: var(--red);
  transition: width 0.7s cubic-bezier(0.2, 0.7, 0.1, 1);
}
.weight-row:nth-child(n + 3) .weight-fill {
  background: #282c24;
}
.weight-row strong {
  font-weight: 400;
  text-align: right;
}
.weight-chart > small {
  display: block;
  font: 9px/1.7 var(--mono);
  color: var(--muted);
  margin-top: 18px;
}
.records-section {
  padding-top: 35px;
}
.records-title {
  display: flex;
  gap: 20px;
  align-items: end;
  justify-content: space-between;
  padding: 22px 0 28px;
}
.records-title h2 {
  font-size: 40px;
}
.records-title h2 > span,
.references h2 > span,
.document-heading h1 > span,
.desk-header h1 > span,
.desk-content h2 > span,
.login-panel h1 > span,
.version-history h2 > span {
  color: var(--red);
}
.records-title > a {
  font-size: 11px;
}
.record-filters {
  display: flex;
  gap: 20px;
  align-items: end;
  padding-bottom: 24px;
}
.record-filters label {
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.record-filters label > span {
  font: 9px var(--mono);
  color: var(--muted);
}
.record-filters select {
  width: 240px;
}
.record-filters .record-search {
  flex: 1;
}
.record-filters .button {
  padding: 12px 20px;
}
.table-scroll {
  overflow: auto;
}
.holdings-table {
  border-collapse: collapse;
  width: 100%;
  text-align: left;
  font-size: 11px;
  min-width: 850px;
}
.holdings-table th {
  font: 8px/1.5 var(--mono);
  padding: 15px 14px 15px 0;
  border-top: 1px solid var(--ink);
  border-bottom: 1px solid var(--rule);
  white-space: nowrap;
}
.holdings-table td {
  padding: 20px 15px 20px 0;
  border-bottom: 1px solid var(--rule);
  vertical-align: top;
}
.holdings-table td:first-child {
  width: 23%;
}
.holdings-table td > span,
.holdings-table td > small {
  display: block;
  max-width: 200px;
  margin-top: 6px;
  line-height: 1.5;
}
.holdings-table td > small {
  font-size: 9px;
  color: var(--muted);
}
.asset-name {
  font: 700 15px var(--sans);
}
.asset-name:hover {
  color: var(--red);
}
.holdings-table td .draft-label {
  font: 8px var(--mono);
  color: #9b3d2d;
  border: 1px solid #e1b3a7;
  padding: 2px 5px;
  display: inline-block;
}
.source-link {
  display: block;
  padding: 0;
  text-align: left;
  font-size: 10px;
  margin-bottom: 7px;
}
.record-permalink {
  font-size: 9px;
  color: var(--muted);
}
.table-footnote {
  font-size: 10px;
  color: var(--muted);
  margin-top: 18px;
  max-width: 780px;
}
.references {
  padding-top: 60px;
}
.references > .section-label {
  padding-bottom: 20px;
}
.references h2 {
  font-size: 40px;
  margin-bottom: 28px;
}
.reference-card {
  display: flex;
  gap: 25px;
  align-items: start;
  padding: 25px 0;
  border-top: 1px solid var(--rule);
}
.reference-card > div {
  flex: 1;
  min-width: 0;
}
.reference-card h3 {
  font-family: var(--body);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0;
}
.reference-card h3 a:hover {
  color: var(--red);
}
.reference-card p {
  font-size: 10px;
  color: var(--muted);
  line-height: 1.6;
  margin-top: 7px;
}
.reference-card > button {
  font: 10px var(--mono);
  white-space: nowrap;
  padding: 3px 0;
}
.source-type {
  font: 8px/1.5 var(--mono);
  text-transform: uppercase;
  display: inline-block;
  padding: 4px 7px;
  border: 1px solid var(--rule);
  white-space: nowrap;
  min-width: 90px;
  text-align: center;
}
.correction-strip {
  padding: 25px 0;
  margin-top: 42px;
  display: flex;
  justify-content: space-between;
  border-top: 1px solid var(--ink);
  font-size: 12px;
  gap: 30px;
}
.correction-strip a {
  color: var(--red);
}
.document-heading {
  padding: 65px 0 45px;
  border-bottom: 1px solid var(--ink);
}
.document-heading h1 {
  font-size: clamp(50px, 7.7vw, 108px);
  line-height: 0.94;
  margin-top: 30px;
  max-width: 1000px;
}
.document-heading > p {
  max-width: 620px;
  font-size: 16px;
  line-height: 1.7;
  margin-top: 28px;
  color: #62665b;
}
.prose-grid {
  display: grid;
  grid-template-columns: 230px 1fr;
  gap: 90px;
  padding-top: 50px;
}
.prose-grid aside {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 18px;
  font: 11px var(--mono);
}
.prose-grid aside span {
  color: var(--muted);
  font-size: 8px;
  margin-bottom: 10px;
}
.prose {
  max-width: 750px;
}
.prose section {
  margin-bottom: 45px;
  scroll-margin-top: 40px;
}
.prose h2 {
  font-size: 27px;
  letter-spacing: -0.035em;
  margin-bottom: 20px;
  line-height: 1.2;
}
.prose p {
  font-size: 15px;
  line-height: 1.85;
  color: #5e6357;
  margin-bottom: 20px;
}
.prose a {
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.prose .button {
  color: var(--paper);
  text-decoration: none;
}
.prose.standalone {
  margin: 50px 0 0 26%;
  max-width: 730px;
}
.source-filters {
  display: flex;
  gap: 15px;
  margin: 30px 0;
}
.source-filters label:first-child {
  flex: 1;
}
.source-filters input {
  width: 100%;
}
.source-filters select {
  height: 100%;
  min-width: 210px;
}
.source-filters button {
  padding: 10px 20px;
}
.sources-list .reference-card {
  padding: 26px 0;
}
.sources-list .source-type {
  margin-bottom: 10px;
}
.sources-list .reference-card h3 {
  font-size: 19px;
  letter-spacing: -0.025em;
  font-family: var(--sans);
}
.credits-list {
  padding-top: 28px;
}
.credit-card {
  display: flex;
  align-items: start;
  gap: 28px;
  padding: 30px 0;
  border-bottom: 1px solid var(--rule);
}
.credit-card .portrait {
  width: 90px;
  height: 108px;
}
.credit-card h2 {
  font-size: 26px;
  margin-bottom: 10px;
}
.credit-card p {
  font-size: 12px;
  line-height: 1.7;
  margin: 6px 0;
}
.credit-card p:nth-last-child(2) {
  font-size: 10px;
  color: var(--muted);
}
.credit-card a {
  border-bottom: 1px solid var(--rule);
}
.correction-form {
  max-width: 700px;
  margin: 40px 0 0 26%;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.correction-form label,
.login-panel label,
#import-form label,
#password-form label {
  display: flex;
  flex-direction: column;
  gap: 9px;
  font-size: 12px;
}
.correction-form input,
.correction-form textarea {
  width: 100%;
}
.correction-form > p {
  font-size: 11px;
  color: var(--muted);
}
.correction-form > .button {
  align-self: start;
}
.honeypot {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden;
}
.record-detail-card {
  margin-top: 35px;
  border: 1px solid var(--rule);
  padding: 32px;
}
.record-detail-card > .state-tag {
  display: inline-block;
  padding: 4px 8px;
  background: var(--ink);
  color: var(--paper);
  font: 9px var(--mono);
  text-transform: uppercase;
}
.detail-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px 35px;
  margin: 32px 0;
}
.detail-grid > div {
  min-width: 0;
}
.detail-grid dt {
  font: 9px var(--mono);
  color: var(--muted);
  margin-bottom: 7px;
}
.detail-grid dd {
  font-size: 13px;
  margin: 0;
  line-height: 1.7;
  overflow-wrap: anywhere;
}
.record-detail-card > p {
  font-size: 12px;
  color: var(--muted);
  margin: 12px 0;
  max-width: 900px;
}
.version-history {
  padding-top: 50px;
}
.version-history h2 {
  font-size: 35px;
  margin-bottom: 20px;
}
.version-history > div {
  display: grid;
  grid-template-columns: 100px 230px 1fr;
  gap: 30px;
  padding: 15px 0;
  border-top: 1px solid var(--rule);
  font-size: 11px;
}
.version-history a {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.version-history p {
  color: var(--muted);
}
.error-page {
  min-height: 500px;
}
.error-page .button {
  margin-top: 25px;
}
.hero-empty {
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 45px;
}
.hero-empty strong {
  font: 700 68px/0.95 var(--sans);
  letter-spacing: -0.06em;
}
.login-panel {
  max-width: 670px;
  margin: 70px auto 30px;
}
.login-panel h1 {
  font-size: 60px;
  line-height: 1.01;
  margin: 25px 0;
}
.login-panel > p {
  font-size: 14px;
  max-width: 470px;
  color: var(--muted);
}
.login-panel form {
  margin: 30px 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-width: 450px;
}
.login-panel .button {
  align-self: start;
}
.login-panel > p.fine-print {
  font-size: 10px;
  line-height: 1.8;
}
.desk-header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 30px;
  margin: 45px 0 40px;
}
.desk-header h1 {
  font-size: 62px;
  margin-top: 22px;
  line-height: 0.98;
}
.desk-header > div:last-child {
  display: flex;
  flex-direction: column;
  align-items: end;
  gap: 12px;
  font: 10px var(--mono);
}
.desk-header button {
  margin-top: 10px;
}
.desk-nav {
  display: flex;
  gap: 25px;
  border-top: 1px solid var(--ink);
  border-bottom: 1px solid var(--rule);
  overflow: auto;
}
.desk-nav a {
  font-size: 12px;
  white-space: nowrap;
  padding: 18px 0;
  position: relative;
}
.desk-nav a.selected:after {
  content: "";
  position: absolute;
  height: 3px;
  background: var(--red);
  bottom: 0;
  left: 0;
  right: 0;
}
.desk-content {
  padding-top: 35px;
  min-height: 400px;
}
.desk-content h2 {
  font-size: 38px;
  margin-bottom: 17px;
}
.desk-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 28px;
}
.desk-section-heading p,
.desk-content > p {
  font-size: 12px;
  color: var(--muted);
  margin-bottom: 18px;
}
.desk-section-heading form {
  display: flex;
  gap: 10px;
}
.desk-section-heading select {
  font-size: 11px;
  max-width: 190px;
}
.review-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  align-items: center;
  background: #e9eae1;
  padding: 18px;
  margin-bottom: 25px;
  font-size: 10px;
}
.review-actions > label {
  display: flex;
  align-items: center;
  gap: 8px;
}
.review-actions input[type="checkbox"] {
  accent-color: var(--red);
}
.acknowledgement {
  flex: 1;
  min-width: 280px;
}
.review-actions > input {
  font-size: 11px;
  width: 100%;
  background: var(--paper);
}
.review-actions > div {
  display: flex;
  gap: 18px;
  align-items: center;
}
.review-actions > div > button:not(.button) {
  padding: 7px 0;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.desk-record {
  display: flex;
  gap: 20px;
  padding: 25px 0;
  border-bottom: 1px solid var(--rule);
}
.record-select input {
  accent-color: var(--red);
  width: 15px;
  height: 15px;
}
.desk-record > div {
  min-width: 0;
}
.desk-record h3 {
  font-size: 20px;
  letter-spacing: -0.025em;
  margin: 12px 0;
}
.desk-record h3 span {
  font-weight: 400;
  font-size: 15px;
}
.desk-record p {
  font-size: 11px;
  margin: 6px 0;
  color: #686c60;
}
.desk-record > div > a {
  font-size: 10px;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.desk-source-links {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  margin: 12px 0;
  font-size: 10px;
}
.desk-source-links button {
  color: var(--red);
  padding: 0;
}
.pagination {
  display: flex;
  justify-content: space-between;
  gap: 25px;
  font: 10px var(--mono);
  margin: 30px 0;
}
.collector-list {
  margin: 25px 0 45px;
}
.collector-list article {
  display: grid;
  grid-template-columns: 1fr 1.2fr 80px;
  gap: 15px;
  padding: 18px 0;
  border-bottom: 1px solid var(--rule);
  font-size: 12px;
}
.collector-list article > span {
  font: 10px var(--mono);
  color: var(--muted);
}
.collector-list article input {
  accent-color: var(--red);
  margin-right: 8px;
}
.collector-list button {
  font-size: 10px;
  color: var(--red);
}
.job-card {
  font-size: 11px;
  border: 1px solid var(--rule);
  padding: 18px;
  margin: 15px 0;
}
.job-card summary {
  cursor: pointer;
  font: 11px var(--mono);
}
.job-card li {
  padding: 5px 0;
  overflow-wrap: anywhere;
}
.published-item {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 25px 0;
  border-bottom: 1px solid var(--rule);
  font-size: 12px;
}
.published-item h3 {
  font-size: 20px;
  margin-bottom: 9px;
}
.published-item p {
  font-size: 11px;
  color: var(--muted);
}
.published-item a {
  font-size: 10px;
  display: block;
  margin-top: 10px;
}
.published-item > button {
  font-size: 10px;
  color: var(--red);
}
.inbox-item,
.audit-item {
  padding: 24px 0;
  border-bottom: 1px solid var(--rule);
  font-size: 12px;
}
.inbox-item p,
.audit-item p {
  margin: 10px 0;
  overflow-wrap: anywhere;
}
.inbox-item button {
  display: block;
  margin-top: 15px;
  color: var(--red);
  font-size: 11px;
  padding: 0;
}
.settings-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  margin-top: 30px;
}
.settings-grid > article {
  padding: 25px;
  border: 1px solid var(--rule);
}
.settings-grid h3 {
  font-size: 22px;
  margin-bottom: 18px;
}
.settings-grid p {
  font-size: 12px;
  line-height: 1.8;
  color: var(--muted);
}
#password-form {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
#password-form button {
  align-self: start;
  padding: 0;
  text-decoration: underline;
  font-size: 11px;
}
#import-form {
  margin-top: 30px;
  max-width: 900px;
}
#import-form textarea {
  font: 12px/1.6 var(--mono);
  background: #efefe7;
  margin-bottom: 20px;
}
code {
  font: 10px/1.6 var(--mono);
  overflow-wrap: anywhere;
}
.form-status {
  font-size: 12px;
  line-height: 1.6;
  min-height: 20px;
}
.form-status.error {
  color: #bb3020;
}
.form-status.success {
  color: #2a6642;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.skip-link {
  position: absolute;
  left: 20px;
  top: -60px;
  background: var(--ink);
  color: var(--paper);
  padding: 12px 18px;
  z-index: 100;
}
.skip-link:focus {
  top: 12px;
}
#toast {
  position: fixed;
  right: 25px;
  bottom: 25px;
  background: var(--ink);
  color: var(--paper);
  padding: 15px 22px;
  max-width: 420px;
  font-size: 12px;
  z-index: 50;
  box-shadow: 0 3px 15px #0002;
  display: none;
}
#toast.visible {
  display: block;
}
dialog {
  background: var(--paper);
  border: 1px solid var(--ink);
  padding: 38px;
  width: min(760px, calc(100vw - 32px));
  max-height: 88vh;
  color: var(--ink);
}
dialog::backdrop {
  background: #171a145e;
  backdrop-filter: blur(3px);
}
.dialog-close {
  position: absolute;
  right: 16px;
  top: 9px;
  font-size: 31px;
  font-weight: 400;
  padding: 0;
  line-height: 1;
}
#source-dialog-content > h2 {
  font-size: 34px;
  letter-spacing: -0.035em;
  line-height: 1.08;
  padding-top: 20px;
  padding-right: 15px;
  margin-bottom: 25px;
}
#source-dialog-content .button {
  font-size: 12px;
  padding: 10px 14px;
}
#source-dialog-content .detail-grid {
  margin: 30px 0;
}
.source-url {
  font: 9px/1.8 var(--mono);
  overflow-wrap: anywhere;
  padding: 18px 0;
  border-top: 1px solid var(--rule);
}
.fine-print {
  font-size: 10px;
  line-height: 1.7;
  color: var(--muted);
  margin-top: 20px;
}
.mono {
  font: 9px/1.8 var(--mono);
  overflow-wrap: anywhere;
  margin-top: 12px;
}
details summary {
  cursor: pointer;
  font-size: 11px;
}
#job-status {
  font: 12px/1.8 var(--mono);
  color: var(--red);
  white-space: pre-wrap;
}
main {
  animation: appear 0.45s ease-out;
}
@keyframes appear {
  from {
    opacity: 0.2;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@media (min-width: 1500px) {
  .person-row {
    grid-template-columns: 30px minmax(350px, 1.5fr) minmax(
        200px,
        1fr
      ) 0.55fr 0.38fr 25px;
  }
  .portrait {
    width: 82px;
    height: 98px;
  }
  .hero-portrait .portrait {
    max-height: 460px;
  }
  .hero-feature {
    padding-top: 42px;
  }
  .hero-feature-text {
    padding-bottom: 45px;
  }
  .hero-intro {
    padding-top: 45px;
  }
}
@media (max-width: 1180px) {
  .site-wrap {
    padding: 0 35px;
  }
  .site-header {
    height: 90px;
  }
  .hero {
    grid-template-columns: 1.25fr 1fr;
  }
  .hero-left {
    padding-right: 28px;
  }
  .hero h1 {
    font-size: 8.4vw;
  }
  .hero-intro {
    display: block;
  }
  .hero-intro .button {
    margin-top: 22px;
  }
  .hero-intro p {
    font-size: 13px;
  }
  .hero-feature {
    grid-template-columns: 0.9fr 1fr;
    gap: 10px;
  }
  .hero-feature-text h2 {
    font-size: 5vw;
  }
  .hero-feature-text .eyebrow {
    font-size: 7px;
  }
  .hero-right {
    padding-left: 16px;
    padding-right: 16px;
  }
  .hero-feature-text p {
    font-size: 9px;
  }
  .hero-portrait .portrait {
    max-height: none;
  }
  .person-row {
    grid-template-columns: 20px minmax(260px, 1.45fr) minmax(
        175px,
        1fr
      ) 0.55fr 0.37fr 20px;
    gap: 12px;
  }
  .person-identity {
    gap: 14px;
  }
  .person-identity h3 {
    font-size: 20px;
  }
  .person-identity .portrait {
    width: 62px;
    height: 78px;
  }
  .bio-short {
    font-size: 9px;
  }
  .person-coverage strong {
    font-size: 11px;
  }
  .person-date,
  .source-count {
    font-size: 9px;
  }
  .profile-heading {
    gap: 35px;
  }
  .profile-meta {
    gap: 15px;
  }
  .holdings-chart {
    gap: 40px;
  }
  .profile-intro h1 {
    font-size: 7vw;
  }
  .people-table-head {
    font-size: 7px;
  }
  .prose-grid {
    gap: 45px;
    grid-template-columns: 190px 1fr;
  }
  .footer-bottom {
    font-size: 7px;
  }
  .site-header nav {
    gap: 25px;
  }
}
@media (max-width: 900px) {
  .site-wrap {
    padding: 0 26px;
  }
  .brand {
    font-size: 29px;
  }
  .site-header nav {
    gap: 20px;
    font-size: 12px;
  }
  .header-action {
    font-size: 12px;
    gap: 15px;
  }
  .edition-bar {
    font-size: 8px;
  }
  .hero {
    grid-template-columns: 1.2fr 1fr;
    margin-top: 28px;
  }
  .hero h1 {
    font-size: 8.6vw;
  }
  .hero-left .section-label {
    font-size: 7px;
    gap: 10px;
  }
  .hero-right {
    padding-top: 16px;
  }
  .hero-red-top {
    font-size: 7px;
  }
  .hero-feature {
    display: flex;
    flex-direction: column-reverse;
    gap: 18px;
    padding-top: 22px;
    align-items: start;
  }
  .hero-portrait {
    align-self: end;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 45%;
    height: 64%;
    z-index: 0;
  }
  .hero-feature {
    position: relative;
    overflow: hidden;
  }
  .hero-feature-text {
    z-index: 1;
    position: relative;
    padding-bottom: 18px;
    align-self: start;
    width: 100%;
  }
  .hero-feature-text h2 {
    font-size: 6.8vw;
    max-width: 180px;
  }
  .hero-feature-text p {
    font-size: 9px;
    max-width: 180px;
  }
  .hero-portrait .portrait {
    object-position: center 24%;
    mix-blend-mode: multiply;
  }
  .portrait-reference {
    display: none;
  }
  .hero-feature-text .eyebrow {
    font-size: 7px;
  }
  .hero-baseline {
    font-size: 8px;
    padding: 15px 0;
  }
  .hero-baseline a {
    font-size: 10px;
  }
  .stat-strip strong {
    font-size: 36px;
  }
  .stat-strip > div {
    padding: 0 18px;
  }
  .stat-strip span {
    font-size: 8px;
  }
  .stat-explainer p {
    font-size: 10px;
  }
  .stat-strip > div:last-child {
    gap: 12px;
  }
  .index-section {
    padding-top: 45px;
  }
  .section-title h2 {
    font-size: 45px;
  }
  .section-title > p {
    font-size: 10px;
  }
  .search-controls {
    gap: 10px;
  }
  .search-controls select {
    width: 130px;
    font-size: 10px;
  }
  .search-box input {
    font-size: 12px;
  }
  .filter-submit {
    font-size: 10px;
    padding: 0 10px;
  }
  .person-row {
    grid-template-columns: 20px minmax(245px, 1.5fr) minmax(
        150px,
        1fr
      ) 90px 22px;
    gap: 12px;
  }
  .person-coverage {
    font-size: 10px;
  }
  .person-date {
    font-size: 9px;
  }
  .source-count {
    display: none;
  }
  .people-table-head {
    grid-template-columns: 1.65fr 1fr 0.55fr;
  }
  .people-table-head span:last-child {
    display: none;
  }
  .person-identity h3 {
    font-size: 20px;
  }
  .bio-short {
    font-size: 9px;
  }
  .editorial-band h2 {
    font-size: 55px;
  }
  .guide-columns {
    gap: 25px;
  }
  .footer-top {
    grid-template-columns: 1fr 1fr 0.8fr 0.8fr;
    gap: 20px;
  }
  .footer-top > p {
    font-size: 12px;
  }
  .footer-top > div {
    font-size: 10px;
  }
  .profile-heading {
    grid-template-columns: 180px 1fr;
    gap: 30px;
  }
  .profile-photo .portrait {
    width: 180px;
    height: 230px;
  }
  .profile-bio {
    font-size: 14px;
  }
  .profile-intro h1 {
    font-size: 7.8vw;
  }
  .profile-meta {
    grid-template-columns: 1fr 1fr;
  }
  .profile-meta > div:last-child {
    display: none;
  }
  .profile-meta strong {
    font-size: 10px;
  }
  .holdings-chart h2 {
    font-size: 34px;
  }
  .holdings-chart {
    gap: 35px;
  }
  .weight-row {
    gap: 12px;
    font-size: 10px;
  }
  .records-title h2,
  .references h2 {
    font-size: 33px;
  }
  .reference-card {
    gap: 20px;
  }
  .reference-card h3 {
    font-size: 12px;
  }
  .prose-grid {
    grid-template-columns: 150px 1fr;
    gap: 32px;
  }
  .prose-grid aside {
    font-size: 9px;
  }
  .prose h2 {
    font-size: 23px;
  }
  .prose p {
    font-size: 13px;
  }
  .prose.standalone,
  .correction-form {
    margin-left: 20%;
  }
  .document-heading h1 {
    font-size: 8vw;
  }
  .desk-header h1 {
    font-size: 48px;
  }
  .desk-nav {
    gap: 20px;
  }
  .desk-nav a {
    font-size: 11px;
  }
  .desk-section-heading {
    align-items: start;
  }
  .desk-content h2 {
    font-size: 32px;
  }
  .collector-list article {
    grid-template-columns: 1fr 1fr 60px;
  }
  .collector-list article > span {
    font-size: 8px;
  }
  .detail-grid dd {
    font-size: 12px;
  }
}
@media (max-width: 650px) {
  .site-wrap {
    padding: 0 20px;
  }
  .site-header {
    height: 79px;
    gap: 15px;
    flex-wrap: wrap;
    align-content: center;
    position: relative;
  }
  .brand {
    font-size: 27px;
    letter-spacing: -1px;
  }
  .brand-icon {
    width: 29px;
    height: 29px;
    font-size: 24px;
    margin-right: 8px;
  }
  .site-header nav {
    font-size: 11px;
    gap: 19px;
    order: 3;
    width: 100%;
    display: none;
  }
  .header-action {
    font-size: 11px;
    gap: 14px;
  }
  .header-action span {
    font-size: 21px;
  }
  .edition-bar {
    font-size: 7px;
    padding: 9px 0;
    gap: 15px;
    align-items: center;
    line-height: 1.65;
  }
  .edition-bar > span:first-child {
    white-space: nowrap;
    gap: 5px;
  }
  .edition-bar > span:last-child {
    font-family: var(--body);
    font-size: 8px;
    text-align: right;
    max-width: 180px;
  }
  .edition-bar a {
    display: inline;
  }
  .hero {
    display: block;
    margin-top: 25px;
  }
  .hero-left {
    padding: 0 0 30px;
  }
  .hero-left > .section-label {
    padding-bottom: 25px;
    font-size: 7px;
  }
  .hero h1 {
    font-size: clamp(49px, 13.9vw, 90px);
    line-height: 0.94;
    letter-spacing: -0.075em;
  }
  .hero-intro {
    display: flex;
    align-items: end;
    gap: 15px;
    padding-top: 25px;
  }
  .hero-intro p {
    font-size: 11px;
    line-height: 1.65;
  }
  .hero-intro .button {
    font-size: 10px;
    margin: 0;
    padding: 12px 13px;
    gap: 14px;
  }
  .hero-intro .button span {
    font-size: 20px;
  }
  .hero-right {
    padding: 15px 18px 0;
    min-height: 265px;
  }
  .hero-red-top {
    font-size: 8px;
    padding-bottom: 10px;
  }
  .hero-feature {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 25px;
    padding-top: 20px;
    height: 235px;
    position: static;
  }
  .hero-portrait {
    position: relative;
    right: auto;
    bottom: auto;
    width: auto;
    height: 100%;
    align-self: stretch;
    order: 0;
  }
  .hero-portrait .portrait {
    height: 100%;
    width: 100%;
    object-position: 50% 23%;
    mix-blend-mode: multiply;
  }
  .hero-feature-text {
    padding-bottom: 24px;
    align-self: end;
    order: 1;
  }
  .hero-feature-text h2 {
    font-size: 43px;
    line-height: 0.94;
    max-width: none;
  }
  .hero-feature-text h2 span {
    font-size: 23px;
    margin-left: 4px;
  }
  .hero-feature-text .eyebrow {
    font-size: 6px;
    margin-bottom: 17px;
  }
  .hero-feature-text p {
    font-size: 8px;
    margin-top: 20px;
    line-height: 1.7;
  }
  .portrait-reference {
    display: block;
    font-size: 5px;
    bottom: 10px;
    left: 6px;
  }
  .hero-baseline {
    font-size: 7px;
    gap: 20px;
    margin-top: 0;
    padding: 14px 0;
    align-items: center;
  }
  .hero-baseline > span {
    max-width: 150px;
  }
  .hero-baseline a {
    font-size: 9px;
    text-align: right;
  }
  .stat-strip {
    grid-template-columns: repeat(3, 1fr);
    padding: 24px 0;
  }
  .stat-strip > div {
    padding: 0 15px;
  }
  .stat-strip > div:nth-child(3) {
    border-right: 0;
    padding-right: 0;
  }
  .stat-strip strong {
    font-size: 33px;
  }
  .stat-strip span {
    font-size: 7px;
    line-height: 1.55;
  }
  .stat-strip > div:last-child {
    display: none;
  }
  .index-section {
    padding-top: 37px;
  }
  .index-section > .section-label {
    font-size: 7px;
    padding-bottom: 18px;
  }
  .index-section > .section-label > span:last-child {
    max-width: 140px;
    text-align: right;
  }
  .section-title {
    display: block;
    margin: 25px 0 26px;
  }
  .section-title h2 {
    font-size: 41px;
    line-height: 1.02;
  }
  .section-title > p {
    margin-top: 17px;
    font-size: 11px;
  }
  .category-tabs {
    gap: 19px;
    overflow-x: auto;
  }
  .category-tabs button {
    font-size: 10px;
    white-space: nowrap;
    padding: 11px 0 14px;
  }
  .search-controls {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    padding: 15px 0;
  }
  .search-box {
    grid-column: 1/-1;
    height: 45px;
  }
  .search-box input {
    font-size: 12px;
  }
  .search-box kbd {
    display: none;
  }
  .search-controls select {
    width: 100%;
    height: 39px;
    font-size: 10px;
  }
  .search-controls > label {
    min-width: 0;
  }
  .filter-submit {
    display: none;
  }
  .results-meta {
    font-size: 8px;
    align-items: start;
    padding: 2px 0 16px;
    gap: 25px;
  }
  .results-meta > span:last-child {
    font: 9px/1.5 var(--body);
    max-width: 190px;
    text-align: right;
  }
  .people-table-head {
    display: none;
  }
  .person-row {
    display: grid;
    grid-template-columns: 17px 1fr 22px;
    gap: 12px;
    padding: 21px 0;
    align-items: start;
  }
  .person-row:first-of-type {
    border-top: 1px solid var(--ink);
  }
  .row-number {
    font-size: 8px;
    padding-top: 3px;
  }
  .person-identity {
    align-items: start;
    gap: 16px;
    min-width: 0;
  }
  .person-identity .portrait {
    width: 65px;
    height: 81px;
  }
  .person-identity h3 {
    font-size: 21px;
    letter-spacing: -0.045em;
    line-height: 1.05;
    margin-top: 2px;
  }
  .person-identity .eyebrow {
    font-size: 7px;
    margin-bottom: 5px;
  }
  .bio-short {
    font-size: 9px;
    line-height: 1.6;
    margin-top: 8px;
    max-width: none;
  }
  .person-arrow {
    grid-column: 3;
    grid-row: 1;
    font-size: 23px;
    align-self: start;
  }
  .person-coverage {
    grid-column: 2;
    grid-row: 2;
    padding-left: 81px;
    margin-top: 1px;
    gap: 4px;
  }
  .person-coverage strong {
    font-size: 10px;
    line-height: 1.4;
  }
  .person-coverage > span {
    font-size: 8px;
  }
  .person-coverage small {
    font-size: 8px;
    display: none;
  }
  .person-date {
    grid-column: 2;
    grid-row: 3;
    padding-left: 81px;
    font-size: 8px;
  }
  .person-date small {
    display: inline;
    margin-left: 7px;
    font-size: 7px;
  }
  .source-count {
    display: inline-block;
    grid-column: 2;
    grid-row: 4;
    padding-left: 81px;
    font-size: 8px;
    color: var(--red);
    margin-top: 1px;
  }
  .editorial-band {
    margin-top: 40px;
    padding: 24px 22px 28px;
  }
  .editorial-band > .section-label {
    font-size: 8px;
    padding-bottom: 22px;
  }
  .editorial-band h2 {
    font-size: 45px;
    margin-top: 26px;
  }
  .guide-columns {
    grid-template-columns: 1fr;
    gap: 25px;
    margin: 30px 0;
  }
  .guide-columns > div {
    padding-bottom: 25px;
    border-bottom: 1px solid #ccd0c3;
  }
  .guide-columns > div:last-child {
    border: 0;
    padding-bottom: 0;
  }
  .guide-columns h3 {
    font-size: 22px;
    margin: 10px 0;
  }
  .guide-columns p {
    font-size: 12px;
    line-height: 1.75;
  }
  .editorial-band .button {
    font-size: 11px;
    padding: 12px 15px;
  }
  .site-footer {
    margin-top: 45px;
  }
  .footer-top {
    grid-template-columns: 1fr 1fr;
    padding: 28px 0;
    gap: 27px 20px;
  }
  .footer-top .brand {
    font-size: 25px;
  }
  .footer-top > p {
    font-size: 12px;
    line-height: 1.55;
  }
  .footer-top > div {
    font-size: 11px;
    gap: 12px;
  }
  .footer-bottom {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 18px 0 25px;
    font-size: 7px;
  }
  .footer-bottom a {
    padding-top: 3px;
  }
  .breadcrumb {
    font-size: 8px;
    gap: 9px;
    padding: 22px 0;
  }
  .profile-heading {
    grid-template-columns: 92px 1fr;
    gap: 18px;
    padding: 8px 0 25px;
    align-items: start;
  }
  .profile-photo .portrait {
    width: 92px;
    height: 118px;
  }
  .profile-photo > a {
    font-size: 6px;
    line-height: 1.7;
    margin-top: 8px;
  }
  .profile-intro .section-label {
    font-size: 6px;
    gap: 10px;
    padding-bottom: 11px;
  }
  .profile-intro h1 {
    font-size: clamp(32px, 9.3vw, 54px);
    margin-top: 15px;
    letter-spacing: -0.06em;
    line-height: 0.98;
    overflow-wrap: normal;
  }
  .profile-bio {
    font-size: 11px;
    line-height: 1.65;
    margin: 16px 0 9px;
  }
  .bio-reference {
    font-size: 7px;
    line-height: 1.8;
  }
  .profile-meta {
    grid-template-columns: 1fr;
    gap: 13px;
    margin-top: 18px;
    padding-top: 17px;
  }
  .profile-meta span {
    font-size: 6px;
  }
  .profile-meta strong {
    font-size: 10px;
    line-height: 1.5;
  }
  .profile-meta > div {
    gap: 5px;
  }
  .profile-meta > div:last-child {
    display: block;
  }
  .profile-meta > div:last-child > strong {
    display: block;
    margin-top: 5px;
  }
  .context-box {
    font-size: 10px;
    line-height: 1.75;
    padding: 15px 17px;
  }
  .context-box > b {
    font-size: 8px;
  }
  .holdings-chart {
    display: block;
    padding: 30px 0;
  }
  .holdings-chart h2 {
    font-size: 33px;
    margin: 14px 0;
  }
  .holdings-chart .eyebrow {
    font-size: 8px;
  }
  .holdings-chart p {
    font-size: 10px;
  }
  .weight-chart {
    padding-top: 20px;
  }
  .weight-row {
    font-size: 10px;
    gap: 14px;
    grid-template-columns: 45px 1fr 53px;
  }
  .weight-track {
    height: 22px;
  }
  .weight-chart > small {
    font-size: 7px;
    line-height: 1.7;
    margin-top: 12px;
  }
  .records-section {
    padding-top: 28px;
  }
  .records-section > .section-label {
    font-size: 7px;
  }
  .records-title {
    display: block;
    padding: 20px 0;
  }
  .records-title h2 {
    font-size: 31px;
    line-height: 1.05;
    max-width: 290px;
  }
  .records-title a {
    font-size: 10px;
    display: inline-block;
    margin-top: 13px;
  }
  .record-filters {
    display: grid;
    grid-template-columns: 1fr 85px;
    gap: 12px;
    padding-bottom: 19px;
  }
  .record-filters > label:first-child {
    grid-column: 1/-1;
  }
  .record-filters label > span {
    font-size: 7px;
  }
  .record-filters select {
    width: 100%;
    font-size: 11px;
    height: 42px;
    padding: 8px 12px;
  }
  .record-filters input {
    width: 100%;
    font-size: 10px;
    padding: 10px;
    height: 41px;
  }
  .record-filters .button {
    padding: 10px;
    font-size: 10px;
    justify-content: center;
    align-self: end;
    height: 41px;
  }
  .holdings-table {
    font-size: 10px;
    min-width: 795px;
  }
  .holdings-table th {
    font-size: 7px;
  }
  .holdings-table td {
    padding-top: 18px;
    padding-bottom: 18px;
  }
  .table-footnote {
    font-size: 9px;
    line-height: 1.7;
    margin-top: 13px;
  }
  .references {
    padding-top: 36px;
  }
  .references .section-label {
    font-size: 8px;
    padding-bottom: 17px;
  }
  .references h2 {
    font-size: 31px;
    line-height: 1.05;
    margin-bottom: 22px;
  }
  .reference-card {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 12px;
    padding: 20px 0;
  }
  .reference-card > .source-type {
    grid-column: 1/-1;
    justify-self: start;
    font-size: 7px;
    min-width: 0;
  }
  .reference-card > div {
    grid-column: 1;
    grid-row: auto;
  }
  .reference-card h3 {
    font-size: 12px;
    line-height: 1.65;
  }
  .reference-card p {
    font-size: 9px;
    line-height: 1.65;
  }
  .reference-card > button {
    font-size: 8px;
    grid-column: 2;
    align-self: start;
  }
  .correction-strip {
    font-size: 10px;
    gap: 25px;
    line-height: 1.7;
    margin-top: 28px;
    padding: 20px 0;
  }
  .correction-strip a {
    max-width: 140px;
    flex: none;
  }
  .document-heading {
    padding: 35px 0 30px;
  }
  .document-heading .eyebrow {
    font-size: 8px;
  }
  .document-heading h1 {
    font-size: clamp(40px, 11.5vw, 72px);
    margin-top: 23px;
    line-height: 0.97;
  }
  .document-heading > p {
    font-size: 12px;
    line-height: 1.75;
    margin-top: 22px;
  }
  .prose-grid {
    display: block;
    padding-top: 26px;
  }
  .prose-grid aside {
    display: none;
  }
  .prose h2 {
    font-size: 24px;
    line-height: 1.15;
    margin-bottom: 17px;
  }
  .prose p {
    font-size: 13px;
    line-height: 1.85;
    margin-bottom: 18px;
  }
  .prose section {
    margin-bottom: 33px;
  }
  .prose.standalone {
    margin: 30px 0 0;
  }
  .correction-form {
    margin: 30px 0 0;
    gap: 22px;
  }
  .correction-form input,
  .correction-form textarea {
    font-size: 12px;
  }
  .correction-form label {
    font-size: 11px;
  }
  .source-filters {
    display: grid;
    grid-template-columns: 1fr 85px;
    gap: 10px;
    margin: 22px 0;
  }
  .source-filters > label:first-child {
    grid-column: 1/-1;
  }
  .source-filters input {
    font-size: 11px;
  }
  .source-filters select {
    min-width: 0;
    width: 100%;
    font-size: 11px;
  }
  .source-filters .button {
    padding: 10px;
    font-size: 10px;
    justify-content: center;
  }
  .sources-list .reference-card {
    grid-template-columns: 17px 1fr;
    gap: 13px;
  }
  .sources-list .reference-card > .row-number {
    grid-column: 1;
    grid-row: 1;
  }
  .sources-list .reference-card > div {
    grid-column: 2;
    grid-row: 1;
  }
  .sources-list .reference-card > button {
    grid-column: 2;
    grid-row: 2;
    justify-self: start;
    font-size: 9px;
    color: var(--red);
  }
  .sources-list .reference-card h3 {
    font-size: 19px;
    line-height: 1.25;
  }
  .credit-card {
    gap: 18px;
    padding: 25px 0;
  }
  .credit-card .portrait {
    width: 65px;
    height: 81px;
  }
  .credit-card h2 {
    font-size: 23px;
    margin-bottom: 13px;
  }
  .credit-card p {
    font-size: 10px;
    line-height: 1.8;
  }
  .credit-card p:nth-last-child(2) {
    font-size: 8px;
  }
  .record-detail-card {
    padding: 20px;
    margin-top: 25px;
  }
  .detail-grid {
    gap: 22px 18px;
    margin: 23px 0;
  }
  .detail-grid dt {
    font-size: 7px;
  }
  .detail-grid dd {
    font-size: 10px;
  }
  .record-detail-card > p {
    font-size: 10px;
    line-height: 1.7;
  }
  .version-history {
    padding-top: 30px;
  }
  .version-history h2 {
    font-size: 30px;
  }
  .version-history > div {
    grid-template-columns: 80px 1fr;
    gap: 12px;
    font-size: 10px;
  }
  .version-history p {
    grid-column: 1/-1;
    font-size: 10px;
  }
  .login-panel {
    margin: 38px auto 25px;
  }
  .login-panel h1 {
    font-size: 42px;
  }
  .login-panel > p {
    font-size: 12px;
  }
  .login-panel label {
    font-size: 11px;
  }
  .login-panel .fine-print {
    font-size: 9px;
  }
  .desk-header {
    display: block;
    margin: 35px 0 25px;
  }
  .desk-header h1 {
    font-size: 43px;
    margin-top: 19px;
  }
  .desk-header > div:last-child {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    font-size: 8px;
    gap: 12px;
    margin-top: 22px;
  }
  .desk-header button {
    margin: 0;
    font-size: 8px;
    white-space: nowrap;
  }
  .desk-header .eyebrow {
    font-size: 8px;
  }
  .desk-nav {
    gap: 23px;
  }
  .desk-nav a {
    font-size: 10px;
    padding: 15px 0;
  }
  .desk-content {
    padding-top: 28px;
  }
  .desk-content h2 {
    font-size: 33px;
  }
  .desk-section-heading {
    display: block;
    margin-bottom: 22px;
  }
  .desk-section-heading p,
  .desk-content > p {
    font-size: 11px;
    line-height: 1.7;
  }
  .desk-section-heading form {
    margin-top: 20px;
  }
  .desk-section-heading select {
    max-width: none;
    flex: 1;
    font-size: 10px;
  }
  .review-actions {
    padding: 15px;
    gap: 17px;
    font-size: 9px;
  }
  .acknowledgement {
    min-width: 0;
    flex: 1 1 100%;
    align-items: start !important;
    line-height: 1.6;
  }
  .review-actions > div {
    gap: 13px;
    flex-wrap: wrap;
  }
  .review-actions .button {
    font-size: 9px;
  }
  .review-actions input {
    font-size: 10px !important;
  }
  .desk-record {
    gap: 13px;
  }
  .desk-record .eyebrow {
    font-size: 7px;
  }
  .desk-record h3 {
    font-size: 18px;
    line-height: 1.2;
  }
  .desk-record h3 span {
    font-size: 13px;
  }
  .desk-record p {
    font-size: 10px;
    line-height: 1.65;
  }
  .desk-record > div > a {
    font-size: 9px;
  }
  .desk-source-links {
    font-size: 9px;
    gap: 12px;
  }
  .pagination {
    font-size: 8px;
    gap: 12px;
  }
  .collector-list article {
    grid-template-columns: 1fr 55px;
    gap: 8px;
    font-size: 11px;
    padding: 17px 0;
  }
  .collector-list article > span {
    grid-column: 1;
    grid-row: 2;
    font-size: 8px;
    padding-left: 24px;
  }
  .collector-list article > button {
    grid-column: 2;
    grid-row: 1/3;
  }
  .job-card {
    padding: 14px;
    font-size: 10px;
  }
  .job-card summary {
    font-size: 9px;
    line-height: 1.8;
  }
  .published-item h3 {
    font-size: 18px;
  }
  .published-item p {
    font-size: 10px;
  }
  .inbox-item,
  .audit-item {
    font-size: 11px;
  }
  .settings-grid {
    grid-template-columns: 1fr;
    gap: 17px;
  }
  .settings-grid > article {
    padding: 20px;
  }
  .settings-grid p {
    font-size: 11px;
  }
  #import-form textarea {
    font-size: 10px;
  }
  dialog {
    padding: 26px 22px;
    width: calc(100vw - 24px);
    max-height: 88vh;
  }
  #source-dialog-content > h2 {
    font-size: 26px;
    line-height: 1.1;
    padding-top: 17px;
  }
  #source-dialog-content > .eyebrow {
    font-size: 8px;
  }
  #source-dialog-content .detail-grid {
    gap: 22px 18px;
  }
  #source-dialog-content .detail-grid dd {
    font-size: 10px;
  }
  #source-dialog-content .fine-print {
    font-size: 9px;
  }
  .source-url {
    font-size: 8px;
  }
  #toast {
    right: 14px;
    left: 14px;
    bottom: 14px;
    max-width: none;
    font-size: 11px;
  }
  .hero-empty {
    padding: 25px;
    min-height: 220px;
  }
  .hero-empty strong {
    font-size: 50px;
  }
}
@media (max-width: 360px) {
  .site-wrap {
    padding: 0 16px;
  }
  .hero h1 {
    font-size: 13.7vw;
  }
  .hero-intro {
    gap: 8px;
  }
  .hero-intro p {
    font-size: 10px;
  }
  .hero-intro .button {
    font-size: 9px;
    padding: 10px;
    gap: 10px;
  }
  .hero-feature {
    gap: 15px;
    grid-template-columns: 1fr 1fr;
    height: 225px;
  }
  .hero-feature-text h2 {
    font-size: 38px;
  }
  .hero-feature-text .eyebrow {
    font-size: 5px;
  }
  .category-tabs {
    gap: 16px;
  }
  .category-tabs button {
    font-size: 9px;
  }
  .person-identity {
    gap: 12px;
  }
  .person-identity .portrait {
    width: 56px;
    height: 72px;
  }
  .person-identity h3 {
    font-size: 19px;
  }
  .person-coverage,
  .person-date,
  .source-count {
    padding-left: 68px;
  }
  .person-date small {
    display: block;
    margin-left: 0;
  }
  .profile-heading {
    grid-template-columns: 75px 1fr;
    gap: 15px;
  }
  .profile-photo .portrait {
    width: 75px;
    height: 100px;
  }
  .profile-intro h1 {
    font-size: 9.5vw;
  }
  .hero-baseline {
    font-size: 6px;
  }
  .edition-bar {
    font-size: 6px;
  }
  .edition-bar > span:last-child {
    font-size: 7px;
  }
  .section-title h2 {
    font-size: 37px;
  }
  .brand {
    font-size: 25px;
  }
  .brand-icon {
    width: 27px;
    height: 27px;
    font-size: 23px;
  }
  .header-action {
    font-size: 10px;
    gap: 10px;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  main {
    animation: none;
  }
  * {
    transition: none !important;
  }
}

@media(max-width:560px){.sector-chart>div{grid-template-areas:"idx label value" ". bar bar"}.sector-chart>div>span{grid-area:idx}.sector-chart>div>b{grid-area:label}.sector-chart>div>strong{grid-area:value}.sector-chart>div>.sector-track{grid-area:bar}}

/* Versioned disclosure comparisons and creator research tools. */
.comparison-summary { border:1px solid var(--rule);border-top:3px solid var(--ink);margin:0 0 38px;padding:26px; }
.comparison-heading { display:flex;justify-content:space-between;gap:30px;align-items:flex-start; }
.comparison-heading h3 { font:600 clamp(26px,3vw,40px)/1.2 var(--sans);letter-spacing:-.045em;margin:12px 0; }
.comparison-heading h3>span { color:var(--muted);font-weight:400;margin:0 10px; }
.comparison-heading p,.comparison-summary.unavailable p { max-width:730px;font-size:12px;line-height:1.8;color:var(--muted); }
.comparison-summary.unavailable h3 { font:500 27px var(--sans);margin:12px 0;letter-spacing:-.03em; }
.comparison-toggles { display:flex;flex-direction:column;gap:10px;min-width:200px; }
.comparison-switch { border:1px solid var(--rule);padding:10px 12px;font:11px var(--mono); }
.comparison-switch[aria-checked=true] { border-color:var(--ink);background:#eeefe7; }
.change-counts { display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin:25px 0 17px; }
.change-counts>a { padding:18px 12px 18px 0;display:flex;gap:17px;align-items:center; }
.change-counts>a+a { border-left:1px solid var(--rule);padding-left:20px; }
.change-counts strong { font:500 33px var(--sans);letter-spacing:-.05em; }
.change-counts span { font:10px var(--mono);color:var(--muted); }
.holding-change.holding-new>td { background:#e8f2e9!important; }
.holding-change.holding-increased>td { background:#eff5ed!important; }
.holding-change.holding-reduced>td,.holding-change.holding-exited>td { background:#f9ece8!important; }
.holding-change>td:first-child { box-shadow:inset 3px 0 #36825a;padding-left:12px; }
.holding-reduced>td:first-child,.holding-exited>td:first-child { box-shadow:inset 3px 0 #bb503e; }
.change-tag { display:inline-block;border:1px solid currentColor;font:9px/1.5 var(--mono);padding:3px 6px;letter-spacing:.04em;color:#326e4c;margin-bottom:9px;white-space:nowrap; }
.change-reduced,.change-exited { color:#a14435; }.change-unchanged { color:var(--muted);border-color:var(--rule); }
.quantity-transition { display:block;font:11px/1.8 var(--mono);white-space:nowrap; }
.change-evidence { margin-top:9px;max-width:430px;min-width:160px; }
.change-evidence>summary { font:10px/1.8 var(--mono);cursor:pointer;text-decoration:underline;text-underline-offset:3px; }
.change-proof { padding:16px;background:var(--paper);border:1px solid var(--rule);margin-top:10px;min-width:270px;white-space:normal; }
.change-proof>p { font-size:11px;line-height:1.8;margin:0 0 12px; }
.change-proof dl { font:10px/1.7 var(--mono);margin:0; }.change-proof dt { color:var(--muted);margin-top:9px; }.change-proof dd { margin:3px 0 10px; }
.evidence-links { display:flex;gap:10px;flex-direction:column;font-size:11px;margin:12px 0; }
.citation-controls { display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin-top:12px; }
.citation-controls button { font-size:10px;text-align:left; }.citation-controls .record-permalink { font-size:9px; }
.exits-section { margin:40px 0 0;border-top:2px solid #bb503e;padding-top:24px; }
.exits-section>h3 { font:500 30px var(--sans);letter-spacing:-.035em; }.exits-section>h3>span { color:var(--red); }
.exits-section>p { font-size:12px;line-height:1.8;color:var(--muted);max-width:800px; }
.exits-table { margin:22px 0; }
.change-feed { border-top:2px solid var(--ink);margin:24px 0 50px; }
.change-feed-item { display:grid;grid-template-columns:1fr 1fr 220px;gap:35px;padding:30px 0;border-bottom:1px solid var(--rule);align-items:start; }
.change-feed-item h2 { font:600 30px var(--sans);letter-spacing:-.04em;margin:12px 0; }
.change-feed-item h2 small { display:block;font:13px var(--body);letter-spacing:0;color:var(--muted);margin-top:9px; }
.change-feed-item p { font-size:12px;color:var(--muted); }
.asset-results { border-top:2px solid var(--ink);margin:25px 0 50px; }
.asset-results>article { display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;padding:28px 0;border-bottom:1px solid var(--rule); }
.asset-results h2 { font:500 30px var(--sans);margin:10px 0;letter-spacing:-.04em; }
.asset-results p { font-size:12px;color:var(--muted);line-height:1.8; }.asset-results small { font:11px var(--mono); }
.quotation-page { max-width:960px;margin:0 0 65px; }.quotation-page>label { display:block;font:11px var(--mono);margin-bottom:15px; }
.quotation-page textarea { display:block;width:100%;padding:22px;background:#eeefe7;border:1px solid var(--rule);font:13px/1.8 var(--mono);resize:vertical;margin-bottom:20px; }
.quotation-page h2 { font:500 28px var(--sans);margin-top:36px; }.quotation-page p { overflow-wrap:anywhere; }.copy-status { font-size:12px;color:var(--muted); }
.snapshot-list { display:grid;gap:22px;margin-top:25px; }.snapshot-card { border:1px solid var(--rule);padding:24px; }
.snapshot-card h3 { font:500 25px var(--sans); }.snapshot-card p,.snapshot-card details { font-size:12px;line-height:1.8; }
.snapshot-card details ol { padding-left:20px; }.snapshot-ack { display:flex!important;align-items:flex-start;gap:12px;margin:20px 0;font-size:12px; }
.snapshot-ack input { width:auto!important;margin-top:4px; }.snapshot-actions { display:flex;gap:12px;flex-wrap:wrap;margin-top:18px; }.snapshot-card label:not(.snapshot-ack) { display:block;font-size:12px; }.snapshot-card label input { display:block;width:100%;padding:10px;border:1px solid var(--rule);background:transparent;margin-top:9px; }
@media(max-width:1000px){.change-feed-item{grid-template-columns:1fr 1fr;gap:24px}.change-feed-item>div:last-child{grid-column:1/-1}.comparison-heading{display:block}.comparison-toggles{flex-direction:row;flex-wrap:wrap;margin-top:18px}.asset-results>article{grid-template-columns:1fr 1fr}.asset-results>article>div:last-child{grid-column:1/-1}}
@media(max-width:560px){.comparison-summary{padding:18px;margin-bottom:25px}.comparison-heading h3{font-size:27px}.comparison-toggles{display:grid;grid-template-columns:1fr;min-width:0}.comparison-switch{font-size:10px}.change-counts{grid-template-columns:1fr 1fr}.change-counts>a{padding:12px 8px;gap:12px}.change-counts>a+a{padding-left:12px}.change-counts>a:nth-child(3){border-left:0;border-top:1px solid var(--rule)}.change-counts>a:nth-child(4){border-top:1px solid var(--rule)}.change-counts strong{font-size:28px}.change-feed-item,.asset-results>article{display:block}.change-feed-item>div+div,.asset-results>article>div+div{margin-top:22px}.change-proof{min-width:230px}.exits-section>h3{font-size:25px}.quotation-page textarea{padding:15px;font-size:11px}.snapshot-card{padding:16px}.snapshot-actions .button{width:100%}.site-header nav{gap:15px}}

.research-home { padding:50px 0;border-bottom:1px solid var(--rule); }
.research-home-heading { display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start;margin:28px 0; }
.research-home-heading h2 { font:600 clamp(35px,4vw,57px)/1.1 var(--sans);letter-spacing:-.05em;margin:0; }.research-home-heading h2>span { color:var(--muted); }
.research-home-heading p { font-size:13px;line-height:1.9;color:var(--muted);margin-top:0; }
.asset-quick-search { display:flex;gap:10px; }.asset-quick-search input { border:1px solid var(--rule);background:transparent;padding:12px;width:100%;min-width:0;font-size:12px; }.asset-quick-search .button { white-space:nowrap; }
.research-entry-links { display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:32px 0 45px; }.research-entry-links>a { padding:24px;border:1px solid var(--rule);border-top:3px solid var(--ink); }.research-entry-links h3 { font:500 28px var(--sans);letter-spacing:-.035em;margin:16px 0; }.research-entry-links p { color:var(--muted);font-size:12px;line-height:1.8; }
.research-cards { display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:24px 0 60px; }.research-cards>a { padding:24px;border:1px solid var(--rule);display:flex;flex-direction:column; }.research-cards>a:hover { border-color:var(--red); }.research-cards h3 { font:500 23px/1.2 var(--sans);letter-spacing:-.035em;margin:20px 0 15px; }.research-cards p { font-size:12px;line-height:1.8;color:var(--muted);flex:1; }.research-cards .record-permalink { margin-top:20px; }
.guide-layout { display:grid;grid-template-columns:260px 1fr;gap:70px;margin:45px 0 70px; }.guide-layout aside { display:flex;flex-direction:column;gap:18px;align-items:flex-start; }.guide-layout aside>a { font:11px/1.7 var(--mono);color:var(--muted); }.guide-layout aside>a:hover { color:var(--red); }.guide-layout .prose { max-width:800px; }.guide-layout ul,.guide-layout ol { padding-left:20px; }.guide-layout li { margin:13px 0;line-height:1.9; }.guide-layout .prose h2 { scroll-margin-top:35px; }
.snapshot-card select { max-width:100%;padding:10px;background:transparent;border:1px solid var(--rule);margin-top:8px;display:block; }
.reference-card > a[data-source] { font:10px var(--mono);color:var(--red); }
.sources-list .reference-card { display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:start; }
.sources-list .reference-card > .row-number { grid-column:1;grid-row:1; }
.sources-list .reference-card > div { grid-column:2;grid-row:1;min-width:0; }
.sources-list .reference-card > a[data-source] { grid-column:3;grid-row:1; }
.source-metadata { grid-column:2/-1;min-width:0;width:100%;font:12px/1.8 var(--sans); }
.source-metadata summary { cursor:pointer;color:var(--red); }
.source-metadata dl { display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px 16px;margin:14px 0; }
.source-metadata dt { color:var(--muted); }
.source-metadata dd { margin:0;min-width:0;overflow-wrap:anywhere; }
.source-metadata a { overflow-wrap:anywhere; }
@media(max-width:650px){.sources-list .reference-card{grid-template-columns:17px minmax(0,1fr)}.sources-list .reference-card>a[data-source]{grid-column:2;grid-row:2}.source-metadata{grid-column:2;grid-row:3}.source-metadata dl{grid-template-columns:minmax(0,1fr);gap:4px}.source-metadata dd{margin-bottom:10px}}
@media(max-width:1000px){.research-cards{grid-template-columns:1fr 1fr}.research-home-heading{gap:35px}.guide-layout{grid-template-columns:200px 1fr;gap:35px}}
@media(max-width:650px){.research-home-heading,.research-entry-links,.guide-layout{grid-template-columns:1fr;gap:24px}.research-cards{grid-template-columns:1fr 1fr;gap:12px}.research-cards>a{padding:17px}.research-cards h3{font-size:20px}.asset-quick-search{flex-direction:column}.guide-layout aside{border-bottom:1px solid var(--rule);padding-bottom:25px}}
@media(max-width:390px){.research-cards{grid-template-columns:1fr}.research-home-heading h2{font-size:36px}}

/* AI collection disclosure: present in server-rendered pages, without JavaScript. */
.ai-notice{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px;padding:20px 0;border-bottom:1px solid var(--rule)}
.ai-notice>strong{font:11px/1.7 var(--mono);letter-spacing:.04em;color:var(--red)}
.ai-notice p{margin:0;font:13px/1.7 var(--body);color:var(--muted)}
.ai-notice a{display:inline-block;margin-top:7px;font-size:12px;text-decoration:underline;text-underline-offset:3px}
@media(max-width:640px){.ai-notice{grid-template-columns:minmax(0,1fr);gap:8px;padding:18px 0}.ai-notice p{font-size:12px}}

/* HoldingsAtlas: keep the longer wordmark and Feedback usable on narrow screens. */
.site-header .brand{white-space:nowrap}
@media(max-width:650px){.site-header .brand{font-size:clamp(20px,5.8vw,27px)}}

[hidden]{display:none!important}.static-asset-directory{margin:48px 0}.static-asset-directory .sources-list{display:grid;gap:12px;padding:20px 0}
