.landing-main { width: min(1040px, calc(100% - 2rem)); margin: 0 auto; padding: 4rem 0; }
.hero { max-width: 720px; margin-bottom: 3.5rem; }
.hero h1 { margin: .2rem 0 1rem; font: 700 clamp(2.4rem, 7vw, 5rem)/.95 var(--font-serif); }
.hero h1 + p { font: 1.2rem/1.6 var(--font-serif); color: var(--color-text-muted); }
.hero-sources { margin-top: 1.25rem; font-size: .9rem; line-height: 1.55; color: var(--color-text-muted); }
.hero-sources a { color: var(--color-accent); }
.eyebrow { color: var(--color-accent); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; font-size: .78rem; }
.book-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1rem; }
.book-card, .connections-callout { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 12px; padding: 1.4rem; box-shadow: 0 8px 25px rgba(42,38,32,.05); }
.book-card h2 { font: 700 2rem var(--font-serif); margin: .8rem 0 .2rem; }
.primary-link { display: inline-block; margin-top: .5rem; padding: .6rem .85rem; border-radius: 6px; background: var(--color-accent); color: white; text-decoration: none; font-weight: 700; }
.connections-callout { margin-top: 3rem; background: #2f2a22; color: white; }
.connections-callout p { color: #ddd2c0; }
