:root{--ink:#14171f;--paper:#fbfaf7;--panel:#fff;--rule:#e4e0d6;--navy:#161c2e;--navy-2:#232b45;--gold:#b9902f;--gold-light:#d9b665;--muted:#6b6f7a;--winner-bg:#fbf3df;--winner-border:#d9b665;--font-display:"Fraunces", "Georgia", serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);margin:0;line-height:1.55}a{color:var(--navy)}a:hover{color:var(--gold)}.wrap{max-width:1120px;margin:0 auto;padding:0 24px}.site-header{background:var(--navy);color:#fff;border-bottom:3px solid var(--gold);padding:18px 0}.site-header .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.brand{font-family:var(--font-display);color:#fff;letter-spacing:.01em;font-size:1.4rem;font-weight:700;text-decoration:none}.brand:hover{color:var(--gold-light)}.site-nav{flex-wrap:wrap;gap:20px;display:flex}.site-nav a{color:#ffffffd1;font-size:.92rem;font-weight:500;text-decoration:none}.site-nav a:hover{color:var(--gold-light)}main{min-height:60vh}.page-head{border-bottom:1px solid var(--rule);margin-bottom:36px;padding:48px 0 32px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--gold);margin:0 0 8px;font-size:.78rem;font-weight:700}h1.page-title{font-family:var(--font-display);color:var(--navy);margin:0 0 12px;font-size:2.4rem;line-height:1.15}.page-lead{color:var(--muted);max-width:68ch;margin:0;font-size:1.05rem}.breadcrumbs{color:var(--muted);margin-bottom:12px;font-size:.85rem}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs a:hover{color:var(--gold)}.breadcrumbs .sep{opacity:.5;margin:0 6px}.card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;display:grid}.card{background:var(--panel);border:1px solid var(--rule);color:inherit;border-radius:8px;padding:20px;text-decoration:none;transition:box-shadow .15s,transform .15s,border-color .15s;display:block}.card:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 6px 20px #14171f14}.card h3{font-family:var(--font-display);color:var(--navy);margin:0 0 6px;font-size:1.1rem}.card .meta{color:var(--muted);font-size:.82rem}.pill{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:3px 9px;font-size:.72rem;font-weight:700;display:inline-block}.pill--winner{background:var(--winner-bg);color:#8a6415;border:1px solid var(--winner-border)}.pill--nominee{color:var(--muted);border:1px solid var(--rule);background:#eef0f4}.pill--bestseller{background:var(--navy);color:var(--gold-light);border:1px solid var(--navy);text-decoration:none}.pill--bestseller:hover{background:var(--navy-2);color:#fff}.bestseller-callout{background:var(--winner-bg);border:1px solid var(--winner-border);border-left:4px solid var(--gold);color:var(--navy);border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:.9rem;line-height:1.55;text-decoration:none;display:block}.bestseller-callout:hover{border-left-color:var(--gold-light);color:var(--navy)}.bestseller-callout strong{color:#8a6415}.bestseller-callout .go{color:var(--gold);white-space:nowrap;font-weight:700}.book-row{background:var(--panel);border:1px solid var(--rule);color:inherit;border-radius:8px;align-items:center;gap:16px;margin-bottom:10px;padding:14px 18px;text-decoration:none;display:flex}.book-row:hover{border-color:var(--gold)}.book-row.is-winner{border-left:4px solid var(--gold)}.book-row .title{font-family:var(--font-display);color:var(--navy);font-weight:600}.book-row .author{color:var(--muted);font-size:.9rem}.cover-thumb{object-fit:cover;background:var(--rule);border-radius:3px;flex-shrink:0;width:46px;height:68px}.site-footer{background:var(--navy);color:#ffffff8c;margin-top:72px;padding:28px 0;font-size:.8rem}.site-footer .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.site-footer a{color:#ffffffb3;text-decoration:none}.site-footer a:hover{color:var(--gold-light)}.site-footer .disclaimer{opacity:.7;text-align:center;border-top:1px solid #ffffff1a;max-width:1120px;margin:16px auto 0;padding:14px 24px 0;font-size:.74rem}.btn{border-radius:6px;align-items:center;gap:8px;padding:10px 18px;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-flex}.btn--gold{background:var(--gold);color:#fff}.btn--gold:hover{color:#fff;background:#a37f28}.btn--outline{border:1px solid var(--navy);color:var(--navy);background:0 0}.btn--outline:hover{background:var(--navy);color:#fff}
