:root{--ink:#1a1a1a;--muted:#5d5a54;--paper:#f2f2f0;--line:#d4d4d2;--red:#a4161a;--red-dark:#780f12;--gold:#c8a85a;--navy:#0f1f3a;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#d8d8d6;color:var(--ink);font:17px/1.5 "Crimson Pro",Georgia,serif}.paper{max-width:1140px;min-height:100vh;margin:24px auto;padding:22px 28px 150px;background:var(--paper);box-shadow:0 4px 24px #0002;background-image:radial-gradient(#0000000f .5px,transparent .7px);background-size:4px 4px}.topstrip{display:flex;justify-content:space-between;border-bottom:1.5px solid;padding-bottom:4px;font-size:.78rem;font-weight:700}.masthead{text-align:center;padding:10px 0 6px}.masthead h1{margin:0;font:900 clamp(2.2rem,7vw,4.6rem)/1 "Playfair Display",Georgia,serif}.masthead .red{color:var(--red)}.tagline{border-top:1px solid;border-bottom:1px solid;padding:5px;font-style:italic;letter-spacing:1px}.site-nav{display:flex;justify-content:center;overflow:auto;border-block:1.5px solid;margin:14px -28px 0}.site-nav a{padding:11px 18px;color:var(--ink);font:700 .95rem "Playfair Display",serif;text-decoration:none;white-space:nowrap;border-right:1px solid var(--line)}.site-nav a[aria-current=page],.site-nav a:hover{background:var(--red);color:#fff}.hero{display:grid;grid-template-columns:1.4fr .8fr;gap:28px;padding:38px 0 26px;border-bottom:5px double}.kicker,.eyebrow{color:var(--red);font:800 .78rem/1.2 Arial,sans-serif;text-transform:uppercase;letter-spacing:2px}.hero h2{font:900 clamp(2.2rem,6vw,4.8rem)/.98 "Playfair Display",serif;margin:10px 0 14px}.hero p{font-size:1.15rem;max-width:680px}.hero-note{align-self:end;background:var(--navy);color:#fff;padding:22px;border-top:6px solid var(--gold)}.hero-note strong{font:700 1.2rem "Playfair Display",serif}.toolbar{display:grid;grid-template-columns:1fr auto;gap:12px;margin:24px 0}.search{width:100%;padding:13px 15px;border:1px solid #aaa;background:#fff;font:inherit}.filters{display:flex;flex-wrap:wrap;gap:7px}.filter{border:1px solid var(--line);background:#fff;padding:9px 13px;cursor:pointer;font-weight:700}.filter.active{background:var(--ink);color:#fff}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;border-bottom:3px solid;margin:34px 0 16px}.section-head h2{margin:0;font:900 clamp(1.7rem,4vw,2.7rem) "Playfair Display",serif}.result-count{color:var(--muted);font-style:italic}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);min-width:0}.cover{aspect-ratio:1.35;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,var(--navy),#1f4770);color:#fff;text-align:center;font:900 1.65rem/1.05 "Playfair Display",serif}.card.music .cover{background:linear-gradient(135deg,var(--red-dark),#d76b26)}.card-body{display:flex;flex:1;flex-direction:column;padding:16px}.meta{color:var(--red);font:700 .75rem Arial,sans-serif;letter-spacing:1px;text-transform:uppercase}.card h3{font:800 1.38rem/1.1 "Playfair Display",serif;margin:7px 0}.card p{color:var(--muted);margin:0 0 14px}.card-actions{display:flex;gap:8px;margin-top:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;background:var(--red);color:#fff;padding:10px 13px;font:700 .85rem Arial,sans-serif;text-decoration:none;cursor:pointer}.btn.secondary{background:var(--navy)}.btn:disabled{opacity:.45;cursor:not-allowed}.empty{grid-column:1/-1;padding:36px;text-align:center;border:1px dashed #999}.profile{display:grid;grid-template-columns:260px 1fr;gap:30px;padding:34px 0}.profile-cover{aspect-ratio:1;display:grid;place-items:center;background:var(--navy);color:#fff;padding:20px;text-align:center;font:900 2rem "Playfair Display",serif}.profile h2{font:900 clamp(2rem,6vw,4rem)/1 "Playfair Display",serif;margin:6px 0 12px}.profile-list{border-top:3px solid}.permissions{margin-top:38px;padding:22px;background:#fff;border-left:6px solid var(--gold)}.permissions h2{margin-top:0;font-family:"Playfair Display",serif}.permissions a{color:var(--red);font-weight:700}.footer{margin-top:42px;padding-top:18px;border-top:3px double;text-align:center;color:var(--muted)}.player{position:fixed;z-index:200;left:0;right:0;bottom:0;background:#101c31;color:#fff;box-shadow:0 -6px 20px #0004}.player-inner{max-width:1140px;margin:auto;padding:12px 24px;display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(240px,1.2fr);align-items:center;gap:16px}.now-title{font:700 1rem "Playfair Display",serif}.now-sub{font-size:.78rem;color:#d5d9df}.player button{border:1px solid #ffffff55;background:#fff;color:var(--navy);width:42px;height:42px;border-radius:50%;font-size:1rem;cursor:pointer}.seek-wrap{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;font:12px Arial,sans-serif}.seek{width:100%;accent-color:var(--gold)}.player-status{position:absolute;left:-9999px}.no-results{display:none;padding:28px;text-align:center}.no-results.show{display:block}.back{display:inline-block;margin-top:20px;color:var(--red);font-weight:700}.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}
@media(max-width:800px){.paper{margin:0;padding:16px 16px 150px}.site-nav{margin-inline:-16px;justify-content:flex-start}.hero,.profile{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr)}.toolbar{grid-template-columns:1fr}.player-inner{grid-template-columns:1fr auto}.seek-wrap{grid-column:1/-1}.profile-cover{max-width:260px}}
@media(max-width:520px){.topstrip span:last-child{display:none}.grid{grid-template-columns:1fr}.hero{padding-top:25px}.card{display:grid;grid-template-columns:110px 1fr}.cover{aspect-ratio:auto;font-size:1.1rem}.player-inner{padding:10px 14px}.paper{padding-bottom:160px}.site-nav a{padding:10px 13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
