:root{--purple:#4f2c85;--deep:#2a1a49;--ink:#22222b;--soft:#56566a;--paper:#fff;--bg:#f5f5f7;--line:#e3e3ee;--lav:#faf7ff;--teal:#25615c}*{box-sizing:border-box}html{scroll-padding-top:2rem}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--purple);text-underline-offset:.2em}a:hover{color:var(--deep)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #8760bb;outline-offset:4px}header{background:white;border-bottom:5px solid var(--purple)}.masthead{max-width:1200px;margin:auto;padding:1.4rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{text-decoration:none;color:var(--deep);font-size:1.55rem;letter-spacing:-.045em;font-weight:700}.brand span{font-weight:350}.identity{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--soft)}.navwrap{background:var(--lav);border-bottom:1px solid var(--line)}nav.primary{max-width:1200px;margin:auto;padding:.7rem 2rem;display:flex;flex-wrap:wrap;gap:.35rem}nav.primary a{padding:.35rem .8rem;border-radius:2rem;text-decoration:none;font-size:.9rem}nav.primary a[aria-current=page]{background:var(--purple);color:white}.skip{position:absolute;left:1rem;top:-5rem;background:white;padding:.7rem;z-index:10}.skip:focus{top:.5rem}main{max-width:1160px;padding:2rem 2rem 4rem;margin:auto}h1,h2,h3{line-height:1.18;color:var(--deep);font-weight:550}h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.05rem,4.2vw,3.6rem);letter-spacing:-.035em;max-width:26ch;margin:.6rem 0 1.3rem}h2{font-size:1.65rem;margin:2.8rem 0 1rem}h3{font-size:1.18rem}p{margin:.85rem 0 1.25rem}.lead{font-size:1.2rem;max-width:68ch;color:var(--soft)}.eyebrow{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;font-weight:650;color:var(--teal)}.hero{padding:2rem 0 3rem;border-bottom:1px solid var(--line)}.hero h1{font-size:clamp(2.7rem,5.8vw,4.8rem);max-width:17ch}.hero-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:3rem;align-items:center}.hero-aside{border-left:2px solid var(--purple);padding-left:2rem}.hero-aside a{display:block;margin:1rem 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1rem}.card{background:white;border:1px solid var(--line);border-radius:.9rem;padding:1.4rem;box-shadow:0 2px 3px #2a1a4905}.card h2,.card h3{margin:.6rem 0}.card h3 a,.card h2 a{text-decoration:none}.card p{font-size:.95rem;color:var(--soft)}.card .count,.meta{font-size:.84rem;color:var(--soft)}.stats{display:flex;flex-wrap:wrap;gap:2.5rem;padding:1.5rem 0}.stats strong{font:2rem Georgia,serif;color:var(--purple);display:block}.stats span{font-size:.82rem}.reading{max-width:76ch}.reading p,.reading li{overflow-wrap:anywhere}.reading h2{padding-top:.5rem;border-top:1px solid var(--line)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:3rem;align-items:start}.toc{background:var(--lav);border:1px solid var(--line);border-radius:.7rem;padding:1.2rem;font-size:.85rem}.toc ul{list-style:none;padding:0;margin:.5rem 0}.toc li{margin:.55rem 0}.toc a{text-decoration:none}.breadcrumbs{font-size:.8rem;color:var(--soft);margin-bottom:1.5rem}.breadcrumbs a{text-decoration:none}.badge{display:inline-block;background:#eaf3f0;color:var(--teal);padding:.18rem .6rem;border-radius:.3rem;font-size:.78rem;font-weight:650}.chips{display:flex;flex-wrap:wrap;gap:.45rem;margin:.8rem 0}.chips a,.button{display:inline-block;background:white;border:1px solid var(--line);border-radius:.4rem;padding:.45rem .75rem;text-decoration:none;font-size:.84rem}.button{background:var(--purple);color:white;border-color:var(--purple)}.button:hover{color:white;background:var(--deep)}.note{background:var(--lav);border-left:3px solid var(--purple);padding:1rem 1.3rem;margin:1.6rem 0;font-size:.94rem}.filters{background:white;padding:1.2rem;border:1px solid var(--line);border-radius:.8rem;display:flex;flex-wrap:wrap;gap:1rem;align-items:end;margin:1.5rem 0}.filters label{display:grid;gap:.3rem;flex:1;min-width:150px;font-size:.85rem}.filters label:first-child{flex:2}input,select,button{font:inherit;min-height:44px;padding:.55rem;border:1px solid #aaa5b4;border-radius:.35rem;background:white;color:var(--ink)}button{cursor:pointer}.publication{padding:1.5rem 0;border-bottom:1px solid var(--line)}.publication h2,.publication h3{font-size:1.2rem;margin:.5rem 0}.publication p{font-size:.94rem;max-width:85ch;margin:.65rem 0}.publication h2 a,.publication h3 a{text-decoration:none}.publication[hidden]{display:none}.byline{font-size:.94rem;overflow-wrap:anywhere}dl{display:grid;grid-template-columns:130px 1fr;gap:.5rem 1rem;font-size:.93rem}dt{font-weight:600}dd{margin:0;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);background:white;padding:2rem}footer>div{max-width:1096px;margin:auto}footer p{font-size:.85rem;color:var(--soft);max-width:85ch}footer a{margin-right:1rem}table{border-collapse:collapse;display:block;overflow:auto;width:100%;font-size:.9rem}td,th{padding:.7rem;border:1px solid var(--line);text-align:left}code{overflow-wrap:anywhere;font-size:.85em}.reading ul{padding-left:1.4rem}.resource-list{columns:2;column-gap:3rem}.resource-list li{break-inside:avoid;margin-bottom:.7rem}.empty{padding:2rem;border:1px solid var(--line)}@media(max-width:800px){.layout{grid-template-columns:1fr}.toc{grid-row:1}.toc ul{columns:2}.hero-grid{grid-template-columns:1fr;gap:1rem}.hero-aside{padding-left:1rem}.masthead{align-items:start}.identity{max-width:170px;text-align:right;font-size:.65rem}}@media(max-width:480px){main{padding:1.4rem 1rem 3rem}.masthead{padding:1rem}.brand{font-size:1.3rem}.identity{max-width:110px}nav.primary{padding:.6rem .5rem;gap:.1rem}nav.primary a{padding:.4rem .6rem;font-size:.8rem}.hero{padding-top:.5rem}.stats{gap:1.5rem}.resource-list{columns:1}.toc ul{columns:1}dl{grid-template-columns:1fr;gap:.2rem}dd{margin-bottom:.6rem}h1{overflow-wrap:anywhere}}@media print{header,.navwrap,.filters,.toc,footer,.skip{display:none}body{background:white;font-size:11pt}main{padding:0;max-width:none}.layout{display:block}.reading{max-width:none}.card{box-shadow:none;break-inside:avoid}a{color:inherit}.publication[hidden]{display:block}}
.filters input,.filters select{width:100%;min-width:0;max-width:100%}.filters label{overflow:hidden}
footer a{display:inline-block;max-width:100%;margin-bottom:.45rem}
