/* Sermon Library (/sermons) — ported from MH-sermon-library-mockup.html.
   Reuses the homepage design tokens + body/wrap/.final/.paste/.site-footer
   from splash.css; this file adds only the library-specific head, filters,
   grid, cards, and pager. Scoped under .lib-page. */

.lib-page main{padding-bottom:20px}

.lib-page .lib-head{padding:56px 0 28px;text-align:center}
.lib-page .crumb{font-size:13px;color:var(--slate);margin-bottom:14px}
.lib-page .crumb a{color:var(--gold-deep);font-weight:600}
.lib-page .lib-head h1{font-size:clamp(32px,5vw,48px);font-weight:600;letter-spacing:-.01em}
.lib-page .lib-head p{margin:14px auto 0;max-width:560px;color:var(--slate);font-size:16.5px}
.lib-page .lib-stats{margin-top:18px;font-size:14px;color:var(--slate)}
.lib-page .lib-stats b{color:var(--gold-deep);font-family:'Fraunces',Georgia,serif;font-size:17px}

.lib-page .filters{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;padding:10px 0 34px}
.lib-page .chip{border:1px solid var(--line);background:var(--paper);border-radius:24px;padding:8px 18px;font-size:13.5px;font-weight:600;color:var(--slate);cursor:pointer}
.lib-page .chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}

.lib-page .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding-bottom:40px}
@media(max-width:900px){.lib-page .grid{grid-template-columns:1fr}}

.lib-page .card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}
.lib-page .card:hover{transform:translateY(-3px);box-shadow:0 18px 44px -18px rgba(23,28,38,.22)}
.lib-page .card .thumb-link{display:block}
.lib-page .card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#ddd}
.lib-page .card .thumb-ph{width:100%;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;text-align:center;padding:0 16px;background:linear-gradient(135deg,var(--ink-soft),var(--ink))}
.lib-page .card .body{padding:16px 18px 18px}
.lib-page .card .meta{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-deep);font-weight:700}
.lib-page .card .meta a.pastor-link{color:inherit;text-decoration:none;border-bottom:1px dotted currentColor;padding-bottom:1px}
.lib-page .card .meta a.pastor-link:hover{border-bottom-style:solid}
.lib-page .card h3{font-size:16.5px;font-weight:600;margin:6px 0 6px;line-height:1.35}
.lib-page .card h3 a{color:var(--ink)}
.lib-page .card h3 a:hover{color:var(--ink-soft)}
.lib-page .card .date{font-size:12.5px;color:var(--slate);margin-bottom:10px}
.lib-page .card .date b{color:var(--ink)}
.lib-page .card .pieces{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.lib-page .card .pill{font-size:11px;font-weight:600;background:rgba(214,166,68,.12);color:var(--gold-deep);border-radius:14px;padding:3px 10px}
.lib-page .card .pill.more{background:transparent;color:var(--slate)}
.lib-page .card .link{font-size:13.5px;font-weight:600;color:var(--ink)}
.lib-page .card .link span{color:var(--gold-deep)}

.lib-page .pager{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 0 66px}
.lib-page .pager a{min-width:40px;height:40px;border:1px solid var(--line);background:var(--paper);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--slate);padding:0 6px}
.lib-page .pager a:hover{border-color:var(--ink-soft);color:var(--ink)}
.lib-page .pager a.on{background:var(--ink);color:#fff;border-color:var(--ink);cursor:default}
.lib-page .pager a.prev,.lib-page .pager a.next{padding:0 16px}
.lib-page .pager .gap{color:var(--slate);padding:0 4px}

.lib-page .lib-empty{text-align:center;padding:60px 0;color:var(--slate);font-size:16px}
