/*
Theme Name: Creí Moderno
Theme URI: https://creiporlocualhable.com/
Author: Creí por lo cual hablé
Description: Tema moderno y accesible para organizar sermones, estudios, audio, video y recursos bíblicos.
Version: 1.4.2
Text Domain: crei-moderno
*/

:root {
	--aubergine: #4a304b;
	--aubergine-dark: #2f1c31;
	--clay: #b85f3a;
	--clay-dark: #984524;
	--linen: #f5efe6;
	--paper: #fffdf9;
	--ink: #242126;
	--stone: #817a76;
	--line: rgba(74, 48, 75, .14);
	--shadow: 0 20px 55px rgba(36, 33, 38, .10);
	--radius: 22px;
	--content: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--paper);
	color: var(--ink);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
	font-size: 17px;
	line-height: 1.65;
}
body.admin-bar .site-header { top: 32px; }
img { max-width: 100%; height: auto; }
a { color: var(--clay-dark); }
a:hover { color: var(--aubergine); }
button, input, select, textarea { font: inherit; }
.screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0, 0, 0, 0);
	white-space: nowrap; border: 0;
}
.wrap { width: min(var(--content), calc(100% - 40px)); margin-inline: auto; }
.serif { font-family: Georgia, "Times New Roman", serif; }

/* Header */
.site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: rgba(255, 253, 249, .94);
	backdrop-filter: blur(16px);
	border-bottom: 1px solid var(--line);
}
.header-inner {
	min-height: 84px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
}
.brand { display: inline-flex; align-items: center; gap: 12px; color: var(--aubergine); text-decoration: none; }
.brand-mark {
	width: 42px;
	height: 42px;
	border-radius: 11px;
	background: linear-gradient(135deg, var(--aubergine) 0 50%, var(--clay) 50%);
	position: relative;
	flex: 0 0 auto;
}
.brand-mark::after {
	content: "";
	position: absolute;
	inset: 11px 9px;
	background: var(--linen);
	clip-path: polygon(0 0, 100% 50%, 0 100%, 28% 50%);
}
.brand-name { display: block; font: 700 23px/1 Georgia, "Times New Roman", serif; max-width: 190px; }
.site-nav { display: flex; align-items: center; gap: 18px; }
.site-nav a {
	color: var(--ink);
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}
.site-nav a:hover, .site-nav a[aria-current="page"] { color: var(--clay); }
.nav-contact { border: 1px solid var(--clay); border-radius: 999px; padding: 8px 16px; }
.menu-toggle {
	display: none;
	border: 0;
	background: var(--linen);
	color: var(--aubergine);
	border-radius: 10px;
	width: 46px;
	height: 46px;
	font-size: 24px;
	cursor: pointer;
}

/* Hero */
.hero {
	background: linear-gradient(120deg, var(--paper) 0 58%, var(--aubergine-dark) 58% 100%);
	overflow: hidden;
position: relative;
}
.hero::after {
	content: "";
	position: absolute;
	right: -100px;
	bottom: -130px;
	width: 410px;
	height: 260px;
	background: var(--clay);
	transform: rotate(-18deg);
	opacity: .95;
}
.hero-grid {
	min-height: 665px;
	display: grid;
	grid-template-columns: 58% 42%;
	align-items: stretch;
position: relative;
	z-index: 2;
}
.hero-copy { padding: 84px 50px 68px 0; align-self: center; }
.eyebrow {
	margin: 0 0 16px;
	color: var(--clay);
	font-size: 13px;
	font-weight: 850;
	letter-spacing: .18em;
	text-transform: uppercase;
}
.hero h1 {
	margin: 0 0 24px;
	color: var(--aubergine);
	font: 700 clamp(54px, 6vw, 86px)/.96 Georgia, "Times New Roman", serif;
	letter-spacing: -.045em;
	max-width: 720px;
}
.hero-lead { margin: 0 0 28px; font-size: 20px; max-width: 610px; }
.hero-actions, .social-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 0 22px;
	border-radius: 10px;
	font-weight: 800;
	text-decoration: none;
	transition: transform .15s ease, box-shadow .15s ease;
}
.button:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(36,33,38,.14); }
.button-primary { background: var(--aubergine); color: #fff; }
.button-primary:hover { background: var(--clay); color: #fff; }
.button-outline { color: var(--clay-dark); border: 2px solid var(--clay); background: transparent; }
.hero-portrait { position: relative; min-width: 0; }
.hero-portrait::before {
	content: "";
	position: absolute;
	inset: 55px -35px 25px -20px;
	background: radial-gradient(circle at 52% 42%, rgba(255,255,255,.16), rgba(255,255,255,.035) 42%, transparent 69%);
	border-radius: 50%;
}
.hero-portrait img {
	position: absolute;
	left: 50%;
	bottom: -8px;
	width: min(650px, 50vw);
	max-width: none;
	transform: translateX(-50%);
	filter: drop-shadow(0 28px 36px rgba(17,10,18,.28)) saturate(.96) contrast(1.03);
}
.hero-quote {
	position: absolute;
	right: 6px;
	top: 120px;
	width: 175px;
	color: rgba(255,255,255,.92);
	font: 21px/1.35 Georgia, "Times New Roman", serif;
	z-index: 3;
}
.hero-quote strong { display: block; color: var(--clay); font-size: 42px; line-height: .7; }
.hero-quote cite { display: block; margin-top: 9px; font: 700 12px/1.3 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.search-panel {
	position: relative;
	z-index: 6;
	margin-top: -35px;
	margin-bottom: 46px;
}
.resource-search {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 12px;
	background: #fff;
	border: 1px solid var(--line);
	box-shadow: var(--shadow);
	border-radius: 16px;
	padding: 12px;
}
.resource-search input[type="search"] {
	width: 100%;
	border: 0;
	outline: 0;
	padding: 12px 14px;
	font-size: 16px;
	background: transparent;
}
.resource-search button { border: 0; cursor: pointer; padding-inline: 30px; }
.search-meta { display: flex; flex-wrap: wrap; gap: 20px; color: var(--stone); font-size: 14px; padding: 15px 6px 0; }
.search-meta strong { color: var(--aubergine); }

/* Sections and cards */
.section { padding: 78px 0; }
.section-soft { background: var(--linen); }
.section-dark { background: linear-gradient(135deg, var(--ink), #18151a); color: #fff; }
.home #recursos { padding-bottom: 38px; }
.home .teaching-intro { padding-bottom: 28px; padding-top: 38px; }
.home .books-section { padding-top: 30px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 25px; margin-bottom: 32px; }
.section-heading h2 { margin: 0; color: var(--aubergine); font: 700 clamp(35px, 4vw, 54px)/1.08 Georgia, "Times New Roman", serif; }
.section-heading p { margin: 8px 0 0; color: var(--stone); max-width: 650px; }
.text-link { font-weight: 800; text-decoration: none; white-space: nowrap; }
.feature-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.feature-card, .post-card {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	box-shadow: 0 9px 28px rgba(36,33,38,.06);
}
.feature-card { padding: 25px; }
.feature-icon {
	width: 48px; height: 48px;
	display: grid; place-items: center;
	background: var(--linen);
	color: var(--aubergine);
	border-radius: 50%;
	font-size: 23px;
	margin-bottom: 17px;
}
.feature-card h3 { margin: 0 0 6px; font: 700 21px/1.2 Georgia, "Times New Roman", serif; }
.feature-card p { margin: 0 0 15px; color: var(--stone); font-size: 15px; }
.feature-card a { font-weight: 800; text-decoration: none; }
.teaching-intro { padding-top: 20px; }
.teaching-panel {
	background: linear-gradient(135deg, var(--linen), #fff 68%);
	border: 1px solid var(--line);
	border-radius: 30px;
	display: grid;
	grid-template-columns: 1.4fr .6fr;
	gap: 58px;
	padding: 54px;
	box-shadow: 0 14px 42px rgba(36,33,38,.07);
}
.teaching-panel h2 { margin: 0 0 16px; color: var(--aubergine); font: 700 clamp(38px, 4vw, 56px)/1.04 Georgia, "Times New Roman", serif; }
.teaching-panel p { color: var(--stone); }
.teaching-points { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 24px; }
.teaching-points span { border: 1px solid var(--line); border-radius: 999px; color: var(--aubergine); font-size: 13px; font-weight: 800; padding: 7px 12px; }
.teaching-cta { border-left: 3px solid var(--clay); align-self: center; padding-left: 30px; }
.teaching-cta p { color: var(--aubergine); font: 700 24px/1.3 Georgia, "Times New Roman", serif; }
.teaching-cta strong { display: block; color: var(--clay); font-size: 13px; letter-spacing: .1em; margin-bottom: 24px; text-transform: uppercase; }
.books-section { border-top: 1px solid var(--line); }
.books-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 22px; align-items: start; }
.book-card { min-width: 0; }
.book-cover {
	aspect-ratio: 2 / 3;
	border-radius: 8px 15px 15px 8px;
	box-shadow: 0 18px 35px rgba(36,33,38,.18);
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 24px 18px;
	position: relative;
	overflow: hidden;
	text-decoration: none;
	transition: transform .2s ease, box-shadow .2s ease;
}
.book-cover::before {
	content: "";
	position: absolute;
	inset: 10px;
	border: 1px solid rgba(255,255,255,.38);
	border-radius: 3px 10px 10px 3px;
}
.book-cover::after {
	content: "Creí por lo cual hablé";
	position: absolute;
	top: 24px;
	left: 18px;
	right: 18px;
	font-size: 9px;
	font-weight: 850;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: rgba(255,255,255,.72);
}
.book-cover:hover { color: #fff; transform: translateY(-6px); box-shadow: 0 25px 45px rgba(36,33,38,.24); }
.book-cover span { position: relative; z-index: 1; font: 700 25px/1.02 Georgia, "Times New Roman", serif; }
.book-cover small { position: relative; z-index: 1; display: block; margin-top: 10px; font-size: 11px; line-height: 1.35; letter-spacing: .08em; text-transform: uppercase; }
.book-cover-a { background: linear-gradient(155deg, #5f3f60, var(--aubergine-dark)); }
.book-cover-b { background: linear-gradient(155deg, #d37449, var(--clay-dark)); }
.book-cover-c { background: linear-gradient(155deg, #2c2a30, #111015); }
.book-cover-d { background: linear-gradient(155deg, #806a5a, #44372f); }
.book-cover-e { background: linear-gradient(155deg, var(--aubergine), var(--clay-dark)); }
.book-cover-image { background: var(--linen); padding: 0; }
.book-cover-image::before, .book-cover-image::after { display: none; }
.book-cover-image img { display: block; height: 100%; object-fit: cover; width: 100%; }
.book-card h3 { margin: 20px 0 7px; color: var(--aubergine); font: 700 20px/1.18 Georgia, "Times New Roman", serif; }
.book-card p { margin: 0 0 12px; color: var(--stone); font-size: 14px; line-height: 1.5; }
.book-link { font-size: 14px; font-weight: 800; text-decoration: none; }
.posts-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.library-summary { color: var(--stone); display: flex; justify-content: space-between; margin: 0 0 22px; }
.library-summary p { margin: 0; }
.library-pagination { margin-top: 42px; }
.library-pagination .page-numbers { align-items: center; display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; list-style: none; margin: 0; padding: 0; }
.library-pagination a, .library-pagination span { align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 10px; color: var(--aubergine); display: inline-flex; font-size: 15px; font-weight: 800; justify-content: center; min-height: 44px; min-width: 44px; padding: 8px 13px; text-decoration: none; }
.library-pagination a:hover { border-color: var(--clay); color: var(--clay-dark); }
.library-pagination .current { background: var(--aubergine); border-color: var(--aubergine); color: #fff; }
.library-pagination .prev, .library-pagination .next { padding-inline: 17px; }
.post-card { padding: 27px; display: flex; flex-direction: column; min-height: 255px; }
.post-card[hidden] { display: none; }
.post-card .meta { color: var(--clay); font-size: 12px; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.post-card h3 { margin: 10px 0 12px; font: 700 25px/1.17 Georgia, "Times New Roman", serif; }
.post-card h3 a { color: var(--aubergine); text-decoration: none; }
.post-card p { margin: 0 0 18px; color: var(--stone); font-size: 15px; }
.post-card .read-more { margin-top: auto; font-weight: 800; text-decoration: none; }
.post-card .sharedaddy,
.post-card .sd-sharing-enabled,
.post-card .jp-relatedposts,
.post-card .jetpack-likes-widget-wrapper { display: none !important; }
.library-search { background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); display: flex; gap: 10px; margin: 0 0 32px; padding: 12px 16px; }
.library-search input { background: transparent; border: 0; color: var(--ink); flex: 1; min-width: 0; outline: 0; padding: 8px; }
.library-global-search button { border: 0; flex: 0 0 auto; padding: 10px 24px; }
.sticky-library-tools { background: rgba(255,253,249,.96); border-bottom: 1px solid var(--line); box-shadow: 0 10px 28px rgba(36,33,38,.06); position: sticky; top: 84px; z-index: 40; }
body.admin-bar .sticky-library-tools { top: 116px; }
.library-tools-inner { align-items: center; display: grid; gap: 20px; grid-template-columns: minmax(0, 1fr) auto; padding-block: 14px; }
.library-tools-inner .library-search { box-shadow: none; margin: 0; }
.library-tools-inner .text-link { font-size: 14px; font-weight: 800; white-space: nowrap; }
.resources-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.resource-card { background: #fff; border: 1px solid var(--line); border-radius: 18px; display: flex; flex-direction: column; min-height: 205px; padding: 24px; box-shadow: 0 8px 25px rgba(36,33,38,.05); }
.resource-card[hidden] { display: none; }
.resource-badge { align-self: flex-start; background: var(--linen); border-radius: 999px; color: var(--clay-dark); font-size: 11px; font-weight: 850; letter-spacing: .1em; padding: 5px 10px; text-transform: uppercase; }
.resource-card h3 { color: var(--aubergine); font: 700 21px/1.18 Georgia, "Times New Roman", serif; margin: 15px 0 20px; }
.resource-card a { font-size: 14px; font-weight: 800; margin-top: auto; text-decoration: none; }
.resource-count { color: var(--stone); font-size: 14px; margin-top: -20px; margin-bottom: 28px; }
.audio-stage { background: linear-gradient(145deg, var(--aubergine-dark), var(--ink)); border-radius: 28px; color: #fff; display: grid; grid-template-columns: auto 1fr; gap: 26px; margin: 35px 0; padding: 42px; box-shadow: var(--shadow); }
.audio-stage .brand-mark { width: 64px; height: 64px; }
.entry-content .audio-stage h2 { color: var(--paper); margin: 0 0 8px; }
.entry-content .audio-stage p { color: rgba(255,255,255,.82); margin: 0; }
.audio-migration-note { align-items: center; background: var(--linen); border: 1px solid var(--line); border-radius: 18px; display: flex; gap: 18px; margin: 28px 0; padding: 24px; }
.audio-migration-note strong { color: var(--aubergine); }
.audio-migration-note p { color: var(--stone); margin: 3px 0 0; }
.crei-audio-player { background: linear-gradient(145deg, var(--aubergine-dark), var(--ink)); border-radius: 22px; box-shadow: var(--shadow); margin: 28px 0; overflow: hidden; padding: 24px; }
.crei-audio-brand { align-items: center; color: #fff; display: flex; gap: 14px; margin-bottom: 18px; }
.crei-audio-brand .brand-mark { height: 44px; width: 44px; }
.crei-audio-brand strong, .crei-audio-brand small { display: block; }
.crei-audio-brand small { color: rgba(255,255,255,.62); }
.crei-audio-player audio { width: 100%; }
.audio-library { background: var(--paper); }
.audio-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.audio-card {
	background: linear-gradient(145deg, var(--aubergine-dark), var(--ink));
	border: 1px solid rgba(255,255,255,.08);
	border-radius: 22px;
	box-shadow: var(--shadow);
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 25px;
}
.audio-card[hidden] { display: none; }
.audio-card h2 { color: var(--paper); font: 700 25px/1.18 Georgia, "Times New Roman", serif; margin: 2px 0 10px; }
.audio-card .audio-duration { color: rgba(255,255,255,.66); font-size: 13px; margin: 0 0 18px; }
.audio-card .wp-audio-shortcode { margin-top: auto; max-width: 100%; width: 100% !important; }
.audio-card .mejs-container { border-radius: 10px; overflow: hidden; }
.audio-page-hero { padding-bottom: 34px; padding-top: 46px; }
.audio-library { background: var(--paper); padding: 28px 0 72px; }
.audio-intro-strip { align-items: center; background: var(--linen); border: 1px solid var(--line); border-radius: 16px; display: flex; gap: 16px; margin-bottom: 22px; padding: 16px 20px; }
.audio-intro-strip .brand-mark { height: 46px; width: 46px; }
.audio-intro-strip strong { color: var(--aubergine); font: 700 20px/1.2 Georgia, "Times New Roman", serif; }
.audio-intro-strip p { color: var(--stone); margin: 2px 0 0; }
.audio-library-layout { align-items: start; display: grid; gap: 24px; grid-template-columns: minmax(320px, .72fr) minmax(0, 1.28fr); }
.audio-now-playing { background: linear-gradient(145deg, var(--aubergine-dark), var(--ink)); border-radius: 22px; box-shadow: var(--shadow); color: #fff; padding: 28px; position: sticky; top: 108px; }
body.admin-bar .audio-now-playing { top: 140px; }
.audio-now-label { color: var(--clay); font-size: 12px; font-weight: 850; letter-spacing: .12em; margin: 4px 0 9px; text-transform: uppercase; }
.audio-now-playing h2 { color: var(--paper); font: 700 30px/1.13 Georgia, "Times New Roman", serif; margin: 0 0 9px; }
.audio-current-duration { color: rgba(255,255,255,.68); font-size: 13px; margin: 0 0 20px; }
.audio-player-shell audio { display: block; width: 100%; }
.audio-transport { display: grid; gap: 9px; grid-template-columns: 1fr 1fr; margin-top: 14px; }
.audio-skip { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.22); border-radius: 9px; color: #fff; cursor: pointer; font-size: 13px; font-weight: 800; min-height: 42px; padding: 7px 10px; }
.audio-skip:hover { background: var(--clay-dark); border-color: var(--clay); }
.audio-playlist-panel { min-width: 0; }
.audio-search { background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 8px 24px rgba(36,33,38,.07); display: flex; padding: 10px 14px; }
.audio-search input { background: transparent; border: 0; color: var(--ink); flex: 1; min-width: 0; outline: 0; padding: 7px; }
.audio-results-count { color: var(--stone); font-size: 13px; margin: 11px 3px 14px; }
.audio-track-list { display: grid; gap: 8px; list-style: none; margin: 0; padding: 0; }
.audio-track-row[hidden] { display: none; }
.audio-track { align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 13px; color: var(--ink); cursor: pointer; display: grid; gap: 13px; grid-template-columns: 42px minmax(0, 1fr) auto; padding: 12px 14px; text-align: left; transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; width: 100%; }
.audio-track:hover { border-color: rgba(184,95,58,.55); box-shadow: 0 8px 22px rgba(36,33,38,.07); transform: translateY(-1px); }
.audio-track[aria-pressed="true"] { background: var(--linen); border-color: var(--clay); box-shadow: inset 4px 0 0 var(--clay); }
.audio-track-play { align-items: center; background: var(--aubergine); border-radius: 50%; color: #fff; display: inline-flex; font-size: 13px; height: 38px; justify-content: center; padding-left: 2px; width: 38px; }
.audio-track[aria-pressed="true"] .audio-track-play { background: var(--clay-dark); }
.audio-track-copy { min-width: 0; }
.audio-track-copy strong, .audio-track-copy small { display: block; }
.audio-track-copy strong { color: var(--aubergine); font: 700 17px/1.18 Georgia, "Times New Roman", serif; }
.audio-track-copy small { color: var(--stone); font-size: 11px; margin-top: 3px; }
.audio-track-duration { color: var(--stone); font-size: 12px; font-weight: 750; white-space: nowrap; }
.audio-load-more { background: var(--linen); border: 1px solid var(--line); color: var(--aubergine); cursor: pointer; margin-top: 14px; width: 100%; }
.audio-load-more[hidden] { display: none; }
.audio-load-more:hover { background: var(--aubergine); color: #fff; }
.topic-cloud { display: flex; flex-wrap: wrap; gap: 10px; }
.topic-cloud a {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 999px;
	color: var(--aubergine);
	font-weight: 750;
	text-decoration: none;
	padding: 9px 15px;
}
.about-grid { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 60px; }
.about-image { border-radius: 28px; overflow: hidden; background: #dce9f8; box-shadow: var(--shadow); }
.about-image img { display: block; width: 100%; }
.about-copy h2 { margin: 0 0 20px; font: 700 clamp(40px, 5vw, 62px)/1.02 Georgia, "Times New Roman", serif; }
.about-copy p { color: rgba(255,255,255,.72); }
.entry-content .social-actions .button-outline { background: #fff; border-color: var(--clay-dark); color: var(--aubergine); }
.entry-content .social-actions .button-outline:hover { background: var(--clay-dark); color: #fff; }
.about-copy .social-actions .button-outline { background: transparent; border-color: var(--clay); color: #fff; }

/* Content pages */
.page-hero { padding: 78px 0 52px; background: var(--linen); border-bottom: 1px solid var(--line); }
.page-hero h1 { margin: 0; color: var(--aubergine); font: 700 clamp(44px, 6vw, 72px)/1 Georgia, "Times New Roman", serif; }
.page-hero p { color: var(--stone); max-width: 720px; }
.content-layout { padding: 60px 0 90px; }
.article-shell { max-width: 820px; margin: 0 auto; }
.article-meta { color: var(--stone); font-size: 14px; margin-bottom: 20px; }
.entry-content { font-size: 18px; }
.entry-content h2, .entry-content h3, .entry-content h4 { color: var(--aubergine); font-family: Georgia, "Times New Roman", serif; line-height: 1.2; }
.entry-content h2 { margin-top: 2em; font-size: 35px; }
.entry-content a { overflow-wrap: anywhere; }
.entry-content img { border-radius: 15px; }
.entry-content blockquote { margin: 30px 0; padding: 4px 0 4px 24px; border-left: 4px solid var(--clay); color: var(--aubergine); font-family: Georgia, "Times New Roman", serif; font-size: 23px; }
.info-lead { color: var(--stone); font-size: 21px; margin: 0 0 35px; }
.info-note { background: var(--linen); border-left: 4px solid var(--clay); border-radius: 0 14px 14px 0; color: var(--aubergine); margin: 0 0 38px; padding: 22px 26px; }
.info-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin: 32px 0; }
.info-card { background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 26px; box-shadow: 0 8px 25px rgba(36,33,38,.05); }
.info-card h2, .info-card h3 { margin-top: 0; }
.info-card p:last-child { margin-bottom: 0; }
.scripture-list { display: grid; gap: 22px; margin: 35px 0; }
.scripture-item { border-bottom: 1px solid var(--line); padding-bottom: 22px; }
.scripture-item:last-child { border-bottom: 0; }
.scripture-item h2 { margin: 0 0 8px; font-size: 30px; }
.reference { color: var(--clay-dark); font-size: 13px; font-weight: 800; letter-spacing: .04em; }
.contact-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; margin: 34px 0; }
.contact-card { background: var(--linen); border-radius: 20px; padding: 30px; }
.contact-card h2 { margin-top: 0; }
.contact-card .contact-value { color: var(--aubergine); font-weight: 850; overflow-wrap: anywhere; }
.contact-card .button { margin-top: 12px; }
.privacy-content h2 { margin-top: 42px; }
.privacy-meta { color: var(--stone); font-size: 14px; }
.pagination, .post-navigation { margin-top: 45px; display: flex; justify-content: space-between; gap: 20px; }
.archive-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.no-results { padding: 50px; background: var(--linen); border-radius: var(--radius); text-align: center; }
.search-result-count { color: var(--stone); margin: 24px 0 18px; }
.search-result-count strong { color: var(--aubergine); }

/* Restored resources */
.resource-hub-nav { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.resource-hub-nav a { background: #fff; border: 1px solid var(--line); border-radius: 999px; color: var(--aubergine); font-weight: 800; padding: 9px 16px; text-decoration: none; }
.resource-hub-nav a:hover { background: var(--aubergine); color: #fff; }
.resource-filter { align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 8px 25px rgba(36,33,38,.06); display: grid; gap: 10px; grid-template-columns: 1fr auto; margin: 0 0 26px; padding: 10px; }
.resource-filter input { border: 0; color: var(--ink); min-width: 0; outline: 0; padding: 8px 12px; }
.download-grid { display: grid; gap: 16px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.download-card { background: #fff; border: 1px solid var(--line); border-radius: 17px; box-shadow: 0 8px 24px rgba(36,33,38,.05); display: flex; flex-direction: column; min-height: 184px; padding: 24px; }
.download-card .resource-badge { align-self: flex-start; }
.download-card h3 { color: var(--aubergine); font: 700 21px/1.2 Georgia, "Times New Roman", serif; margin: 16px 0 22px; }
.download-card a { font-weight: 850; margin-top: auto; text-decoration: none; }
.links-grid { display: grid; gap: 16px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.preacher-link { background: var(--linen); border: 1px solid var(--line); border-radius: 17px; color: var(--ink); display: block; min-height: 150px; padding: 24px; text-decoration: none; }
.preacher-link:hover { background: var(--aubergine); color: #fff; transform: translateY(-2px); }
.preacher-link strong { display: block; font: 700 22px/1.18 Georgia, "Times New Roman", serif; }
.preacher-link span { display: block; font-size: 14px; margin-top: 8px; opacity: .75; }
.legacy-note { background: #fff; border-left: 4px solid var(--clay); border-radius: 0 14px 14px 0; color: var(--stone); margin-top: 24px; padding: 18px 22px; }

/* Footer */
.site-footer { background: var(--aubergine-dark); color: rgba(255,255,255,.72); padding: 55px 0 28px; }
.footer-grid { display: grid; grid-template-columns: 1.2fr 1fr 1fr 1fr; gap: 38px; }
.site-footer .brand { color: #fff; margin-bottom: 14px; }
.site-footer h3 { color: #fff; margin: 0 0 12px; font: 700 20px/1.2 Georgia, "Times New Roman", serif; }
.site-footer a { color: rgba(255,255,255,.78); text-decoration: none; }
.site-footer a:hover { color: #fff; }
.footer-links { list-style: none; margin: 0; padding: 0; display: grid; gap: 7px; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.12); margin-top: 40px; padding-top: 22px; display: flex; justify-content: space-between; gap: 20px; font-size: 13px; }

@media (max-width: 980px) {
	body.admin-bar .site-header { top: 46px; }
	.menu-toggle { display: grid; place-items: center; }
	.site-nav {
		display: none;
		position: absolute;
		top: 100%; left: 0; right: 0;
		background: var(--paper);
		border-bottom: 1px solid var(--line);
		padding: 22px 20px 28px;
		box-shadow: 0 18px 30px rgba(36,33,38,.10);
		flex-direction: column;
		align-items: stretch;
		gap: 15px;
	}
	.site-nav.is-open { display: flex; }
	.nav-contact { text-align: center; }
	.hero { background: linear-gradient(180deg, var(--paper) 0 58%, var(--aubergine-dark) 58% 100%); }
	.hero-grid { grid-template-columns: 1fr; }
	.hero-copy { padding: 62px 0 45px; }
	.hero-portrait { min-height: 490px; }
	.hero-portrait img { width: min(570px, 90vw); }
	.hero-quote { right: 8%; top: 60px; }
	.feature-grid { grid-template-columns: repeat(2, 1fr); }
	.books-grid { grid-template-columns: repeat(3, 1fr); }
	.posts-grid, .archive-grid { grid-template-columns: repeat(2, 1fr); }
	.resources-grid { grid-template-columns: repeat(2, 1fr); }
	.download-grid, .links-grid { grid-template-columns: repeat(2, 1fr); }
	.about-grid { grid-template-columns: 1fr; }
	.about-image { max-width: 530px; }
	.teaching-panel { grid-template-columns: 1fr; gap: 30px; }
	.info-grid, .contact-grid { grid-template-columns: 1fr; }
	.footer-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 650px) {
	.wrap { width: min(100% - 28px, var(--content)); }
	.header-inner { min-height: 70px; }
	.sticky-library-tools { top: 70px; }
	body.admin-bar .sticky-library-tools { top: 116px; }
	.library-tools-inner { gap: 8px; grid-template-columns: 1fr; padding-block: 10px; }
	.library-tools-inner .text-link { display: none; }
	.library-summary { font-size: 14px; }
	.library-pagination .prev, .library-pagination .next { width: 100%; }
	.brand-name { font-size: 19px; max-width: 155px; }
	.brand-mark { width: 38px; height: 38px; }
	.hero h1 { font-size: clamp(46px, 15vw, 66px); }
	.hero-lead { font-size: 18px; }
	.hero-actions { display: grid; }
	.hero-actions .button { width: 100%; }
	.hero-portrait { min-height: 400px; }
	.hero-portrait img { width: min(480px, 98vw); bottom: -4px; }
	.hero-quote { display: none; }
	.resource-search { grid-template-columns: 1fr; }
	.resource-search button { width: 100%; }
	.feature-grid, .posts-grid, .archive-grid { grid-template-columns: 1fr; }
	.resources-grid { grid-template-columns: 1fr; }
	.download-grid, .links-grid { grid-template-columns: 1fr; }
	.resource-filter { grid-template-columns: 1fr; }
	.audio-grid { grid-template-columns: 1fr; }
	.audio-page-hero { padding-bottom: 28px; padding-top: 36px; }
	.audio-library { padding: 20px 0 58px; }
	.audio-intro-strip { align-items: flex-start; margin-bottom: 16px; padding: 14px 16px; }
	.audio-intro-strip p { font-size: 14px; }
	.audio-library-layout { grid-template-columns: 1fr; gap: 16px; }
	.audio-now-playing { padding: 23px; position: static; }
	.audio-now-playing h2 { font-size: 26px; }
	.audio-track { gap: 10px; grid-template-columns: 38px minmax(0, 1fr); padding: 11px 12px; }
	.audio-track-play { height: 34px; width: 34px; }
	.audio-track-duration { grid-column: 2; }
	.audio-stage { grid-template-columns: 1fr; padding: 30px 24px; }
	.books-grid { grid-template-columns: repeat(2, 1fr); gap: 18px; }
	.book-cover span { font-size: 21px; }
	.section { padding: 58px 0; }
	.section-heading { align-items: start; flex-direction: column; }
	.teaching-panel { padding: 32px 24px; }
	.footer-grid { grid-template-columns: 1fr; gap: 30px; }
	.footer-bottom { flex-direction: column; }
}
