/*
Theme Name: Identity in Messiah Revealed
Theme URI: https://worthyministries.com
Template: generatepress
Author: George Whitten
Author URI: https://worthyministries.com
Description: Custom GeneratePress child theme for the book "Identity in Messiah Revealed" by George Whitten. Palette and design drawn from the book cover artwork (lion of Judah, gold, and sunrise imagery).
Version: 1.0.0
Text Domain: identity-messiah-child
*/

/* ==========================================================================
   1. Brand palette (pulled from the book cover)
   ========================================================================== */
:root {
	--imr-black: #14100a;      /* deep shadow / lion mane shadow */
	--imr-brown: #3a2413;      /* warm brown midtone */
	--imr-gold: #d7a13a;       /* lion mane / title gold */
	--imr-gold-light: #f0c96a; /* highlight gold */
	--imr-amber: #e8871e;      /* sunrise amber */
	--imr-cream: #f6ecd9;      /* light text / parchment */
	--imr-navy: #1f2e3d;       /* subtitle blue from cover */
}

/* ==========================================================================
   2. Global type & body
   ========================================================================== */
body {
	background-color: var(--imr-cream);
	color: var(--imr-black);
	font-family: 'Georgia', 'Times New Roman', serif;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Georgia', 'Palatino Linotype', serif;
	color: var(--imr-black);
	letter-spacing: 0.02em;
}

a {
	color: var(--imr-amber);
}

a:hover,
a:focus {
	color: var(--imr-gold);
}

/* ==========================================================================
   3. Site header / nav
   ========================================================================== */
.main-navigation,
#site-navigation,
.site-header {
	background-color: var(--imr-black);
}

.main-navigation .main-nav ul li a,
.site-title a,
.site-description {
	color: var(--imr-cream) !important;
}

.main-navigation .main-nav ul li a:hover {
	color: var(--imr-gold) !important;
}

.site-title a {
	font-family: 'Georgia', serif;
	font-weight: 700;
	letter-spacing: 0.03em;
}

/* ==========================================================================
   4. Hero section (custom, injected via functions.php)
   ========================================================================== */
.imr-hero {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 620px;
	background: radial-gradient(circle at center, var(--imr-amber) 0%, var(--imr-brown) 45%, var(--imr-black) 100%);
	color: var(--imr-cream);
	overflow: hidden;
	padding: 60px 20px;
	text-align: center;
}

.imr-hero__inner {
	position: relative;
	z-index: 2;
	max-width: 900px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 22px;
}

.imr-hero__cover {
	max-width: 260px;
	width: 100%;
	height: auto;
	box-shadow: 0 20px 50px rgba(0,0,0,0.55);
	border-radius: 4px;
}

.imr-hero__title {
	font-size: clamp(2rem, 5vw, 3.4rem);
	line-height: 1.15;
	margin: 0;
	color: var(--imr-gold-light);
	text-shadow: 0 2px 12px rgba(0,0,0,0.6);
}

.imr-hero__title .imr-hero__script {
	display: block;
	font-family: 'Brush Script MT', 'Segoe Script', cursive;
	font-size: 1.3em;
	color: var(--imr-cream);
	margin-top: 6px;
}

.imr-hero__subtitle {
	font-size: 1.15rem;
	color: var(--imr-cream);
	max-width: 620px;
	margin: 0 auto;
	font-style: italic;
	opacity: 0.92;
}

.imr-hero__author {
	font-size: 1rem;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--imr-gold);
	margin-top: 4px;
}

.imr-hero__cta {
	display: inline-flex;
	gap: 16px;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 12px;
}

.imr-btn {
	display: inline-block;
	padding: 14px 34px;
	border-radius: 3px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	font-size: 0.9rem;
	text-decoration: none;
	transition: all 0.2s ease;
	border: 2px solid transparent;
}

.imr-btn--primary {
	background-color: var(--imr-gold);
	color: var(--imr-black);
}

.imr-btn--primary:hover {
	background-color: var(--imr-gold-light);
	color: var(--imr-black);
}

.imr-btn--secondary {
	background-color: transparent;
	border-color: var(--imr-cream);
	color: var(--imr-cream);
}

.imr-btn--secondary:hover {
	background-color: var(--imr-cream);
	color: var(--imr-black);
}

/* ==========================================================================
   5. Content sections
   ========================================================================== */
.imr-section {
	padding: 70px 20px;
	max-width: 900px;
	margin: 0 auto;
}

.imr-section--dark {
	background-color: var(--imr-black);
	color: var(--imr-cream);
	max-width: none;
}

.imr-section--dark .imr-section__inner {
	max-width: 900px;
	margin: 0 auto;
}

.imr-section--dark h2 {
	color: var(--imr-gold-light);
}

.imr-section h2 {
	font-size: 2rem;
	margin-bottom: 20px;
	position: relative;
	padding-bottom: 14px;
}

.imr-section h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 60px;
	height: 3px;
	background-color: var(--imr-amber);
}

.imr-section--dark h2::after {
	background-color: var(--imr-gold);
}

.imr-section p {
	font-size: 1.08rem;
	line-height: 1.75;
}

/* Endorsements */
.imr-endorsements {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 24px;
	margin-top: 24px;
}

.imr-endorsement {
	background: rgba(255,255,255,0.05);
	border-left: 3px solid var(--imr-gold);
	padding: 22px;
	font-style: italic;
}

.imr-endorsement cite {
	display: block;
	margin-top: 12px;
	font-style: normal;
	color: var(--imr-gold);
	font-size: 0.9rem;
}

/* Author bio */
.imr-author {
	display: flex;
	gap: 30px;
	align-items: center;
	flex-wrap: wrap;
}

.imr-author img {
	border-radius: 50%;
	width: 160px;
	height: 160px;
	object-fit: cover;
	border: 3px solid var(--imr-gold);
}

.imr-author__bio {
	flex: 1;
	min-width: 260px;
}

/* Newsletter / footer CTA */
.imr-cta-band {
	background: linear-gradient(135deg, var(--imr-amber), var(--imr-brown));
	color: var(--imr-cream);
	text-align: center;
	padding: 60px 20px;
}

.imr-cta-band h2 {
	color: var(--imr-cream);
}

/* Footer */
.site-footer,
#site-footer,
.site-info {
	background-color: var(--imr-black);
	color: var(--imr-cream);
}

.site-footer a {
	color: var(--imr-gold);
}

/* ==========================================================================
   6. Compact hero (shown on every page except the front page)
   ========================================================================== */
.imr-hero--compact {
	min-height: 0;
	padding: 34px 20px;
}

.imr-hero--compact .imr-hero__inner {
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	gap: 18px;
}

.imr-hero--compact .imr-hero__cover {
	max-width: 90px;
	box-shadow: 0 8px 20px rgba(0,0,0,0.5);
}

.imr-hero--compact .imr-hero__title {
	font-size: clamp(1.4rem, 3vw, 2rem);
	text-align: left;
}

.imr-hero--compact .imr-hero__title .imr-hero__script {
	font-size: 1.15em;
}

.imr-hero--compact .imr-hero__subtitle,
.imr-hero--compact .imr-hero__author {
	display: none;
}

.imr-hero--compact .imr-hero__cta {
	margin-top: 0;
}

.imr-hero--compact .imr-btn {
	padding: 10px 22px;
	font-size: 0.78rem;
}

@media (max-width: 600px) {
	.imr-hero--compact .imr-hero__inner {
		flex-direction: column;
		text-align: center;
	}
	.imr-hero--compact .imr-hero__title {
		text-align: center;
	}
}

/* Responsive */
@media (max-width: 600px) {
	.imr-hero {
		min-height: 520px;
	}
	.imr-author {
		flex-direction: column;
		text-align: center;
	}
}
