:root{
  --imp-red:#E9463C;
  --ink:#242526;
  --paper:#fff;
  --soft:#f5f4f2;
  --line:#dedbd7;
  --sans:"Inter UI","Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --serif:"Tiempos Text","Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --mono:"Roboto Mono","SFMono-Regular",Consolas,"Liberation Mono",monospace;
}
*{box-sizing:border-box}
html{font-size:18px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);line-height:1.68}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.18em}
.shell{width:min(1160px,calc(100% - 44px));margin:0 auto}
.site-header{border-top:6px solid var(--imp-red);border-bottom:1px solid var(--line);background:#fff}
.header-inner{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.brand img{width:52px;height:auto}
.brand-name{font:700 1.02rem/1.1 var(--sans);letter-spacing:-.025em}
nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.quick-search{display:flex;gap:12px;align-items:center;padding:0 0 20px}
.quick-search label{font:500 .7rem var(--mono);white-space:nowrap}
.quick-search input{flex:1;min-width:0;padding:12px;border:1px solid var(--line);font:1rem var(--sans);border-radius:0}
button{cursor:pointer;padding:12px 18px;border:1px solid var(--ink);background:var(--ink);color:white;font:500 .8rem var(--sans)}
button:hover{background:var(--imp-red);border-color:var(--imp-red)}
input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--imp-red);outline-offset:3px}
.article-tags{margin:24px 0;display:grid;gap:10px}
.tag-label{display:inline-block;width:70px;font:500 .7rem var(--mono);text-transform:uppercase}
.tag{display:inline-block;border:1px solid var(--line);padding:3px 9px;margin:3px 5px 3px 0;font:500 .7rem/1.6 var(--sans);text-decoration:none}
.tag:hover{color:var(--imp-red);border-color:var(--imp-red)}
.directory{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px}
.directory li{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:16px 0;font:1rem var(--sans)}
.directory span{color:#76726d;font:.8rem var(--mono)}
.search-filters{display:flex;gap:18px;align-items:end;margin-top:22px;flex-wrap:wrap}
.search-filters>div{flex:1;min-width:180px}
.search-filters select{width:100%;padding:12px;border:1px solid var(--line);background:white;font:1rem var(--sans)}
.load-more{justify-self:start;margin-top:24px}
.nav-link{font:500 .72rem/1.2 var(--mono);text-transform:uppercase;letter-spacing:.035em;text-decoration:none}
.nav-link.active,.nav-link:hover{color:var(--imp-red)}
.hero{padding:88px 0 80px;border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:80px;align-items:end}
.eyebrow,.card-meta,.section-head{font:500 .69rem/1.5 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--imp-red)}
.hero h1,.article h1,.category-page>h1,.about h1{font:800 clamp(2.7rem,6vw,5.8rem)/.92 var(--sans);letter-spacing:-.065em;margin:.3em 0 0}
.hero-copy{font-size:1.24rem;max-width:520px}
.muted{color:#73706c;font-size:.92rem}
.listing{padding:62px 0 110px}
.section-head{display:flex;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:9px;margin-bottom:4px;color:var(--ink)}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.card{padding:34px 34px 40px 0;border-bottom:1px solid var(--line);min-height:280px}
.card:nth-child(even){padding-left:34px;padding-right:0;border-left:1px solid var(--line)}
.card h2{font:750 1.55rem/1.08 var(--sans);letter-spacing:-.035em;margin:.48rem 0 .8rem;max-width:22ch}
.card h2 a{text-decoration:none}.card h2 a:hover{color:var(--imp-red)}
.card p{font-size:.94rem;margin:0 0 1rem;color:#494744}
.card-author{font:500 .69rem/1.4 var(--mono);color:#76726d}
.article-shell{max-width:920px;padding-top:72px;padding-bottom:120px}
.article{max-width:780px}
.article h1{font-size:clamp(2.7rem,6vw,5.1rem);margin:.25em 0 .35em}
.article-actions{margin:24px 0}
.pdf-button{display:inline-block;background:var(--ink);color:white;text-decoration:none;padding:11px 15px;font:500 .72rem/1.2 var(--mono)}
.pdf-button:hover{background:var(--imp-red)}
.pdf-missing{display:inline-block;border:1px solid var(--line);padding:10px 14px;font:500 .7rem/1.2 var(--mono);color:#777}
.recovery-note{background:var(--soft);border-left:4px solid var(--imp-red);padding:16px 18px;margin:28px 0 45px;font:400 .74rem/1.55 var(--mono)}
.article-body{font-size:1.05rem}
.article-body h2{font:750 2rem/1.05 var(--sans);letter-spacing:-.035em;margin:2.2em 0 .65em}
.article-body h3{font:700 1.35rem/1.15 var(--sans);letter-spacing:-.02em;margin:1.8em 0 .5em}
.article-body blockquote{margin:2em 0;padding:0 0 0 24px;border-left:3px solid var(--imp-red);font-size:1.15rem;font-style:italic}
.article-body table{width:100%;border-collapse:collapse;font:400 .72rem/1.45 var(--mono);margin:2rem 0}
.article-body th,.article-body td{border-bottom:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.article-body img{max-width:100%;height:auto}
.article-body code,.provenance code{font-family:var(--mono);font-size:.8em}
.provenance{margin-top:72px;border-top:1px solid var(--line);padding-top:18px;font:400 .69rem/1.6 var(--mono);color:#777;overflow-wrap:anywhere}
.category-page{padding-top:72px;padding-bottom:110px}.category-page>h1{margin:.18em 0 .7em}
.about{max-width:820px;padding:76px 0 120px}.about h1{margin:.2em 0 .6em}.about p{font-size:1.12rem}.about h2{font:750 1.8rem/1.1 var(--sans);margin-top:2em}
.search-page>h1{font:800 clamp(2.5rem,5vw,4rem)/1 var(--sans);letter-spacing:-.055em;margin:.25em 0 .8em}
.search-page label{display:block;font:500 .75rem/1.4 var(--mono);margin-bottom:10px}
.search-page input{width:min(100%,700px);border:1px solid var(--line);padding:16px;font:1rem var(--sans);border-radius:0}
.search-page input:focus{outline:2px solid var(--imp-red);outline-offset:2px}
#search-status{font:.75rem var(--mono);color:#68635e;margin:20px 0 12px}
.site-footer{background:var(--ink);color:white;padding:48px 0}
.footer-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;font-family:var(--sans)}
.footer-note{font:400 .7rem/1.55 var(--mono);color:#c8c5c0}
@media(max-width:760px){
 html{font-size:16px}.shell{width:min(100% - 28px,1160px)}
 .header-inner{align-items:flex-start;flex-direction:column;padding:20px 0;min-height:0}
 nav{gap:14px;flex-wrap:wrap}.nav-link{font-size:.62rem}
 .quick-search{flex-wrap:wrap}.quick-search label{width:100%}.directory{grid-template-columns:1fr}
 .hero{padding:55px 0}.hero-grid{grid-template-columns:1fr;gap:36px}
 .cards{grid-template-columns:1fr}.card,.card:nth-child(even){padding:28px 0;border-left:0}
 .footer-inner{grid-template-columns:1fr;gap:25px}
 .article-shell{padding-top:48px}
}
