/*
Theme Name: The Learners (Kadence Child)
Theme URI: https://learners.learnwellbooks.com
Description: Child theme of Kadence for The Learners — a daily email publication by LearnWell.
Author: LearnWell
Template: kadence
Version: 1.0.0
Text Domain: the-learners
*/

:root {
	--lw-bg: #faf9f6;
	--lw-bg-alt: #f2efe8;
	--lw-text: #1a1917;
	--lw-text-secondary: #6b6560;
	--lw-border: #e4dfd3;
	--lw-accent: #2d5a3d;
	--lw-accent-hover: #1f4029;
	--lw-white: #ffffff;
	--lw-font: Arial, Helvetica, sans-serif;
	--lw-content-width: 700px;
}

/* ---------- Typography reset: Arial everywhere ---------- */
html, body,
h1, h2, h3, h4, h5, h6,
p, a, span, div, li, ul, ol, blockquote,
button, input, textarea, select,
.entry-content, .entry-content *,
.site-title, .site-description,
.main-navigation, .menu, .kadence-menu-mobile,
.rt-reading-time,
.wp-block-heading {
	font-family: var(--lw-font) !important;
}

body {
	background-color: var(--lw-bg);
	color: var(--lw-text);
	-webkit-font-smoothing: antialiased;
}

a {
	color: var(--lw-accent);
}
a:hover,
a:focus {
	color: var(--lw-accent-hover);
}

::selection {
	background: var(--lw-accent);
	color: var(--lw-white);
}

/* ---------- Remove Kadence card chrome for a flatter, editorial feel ---------- */
.entry-content-wrap,
.wp-block-media-text {
	box-shadow: none !important;
	border-radius: 0 !important;
}

.hero-section-overlay {
	display: none;
}

/* ---------- Header ---------- */
.site-header {
	background-color: var(--lw-bg);
	border-bottom: 1px solid var(--lw-border);
}

/* Force a plain text wordmark: the Customizer logo image is intentionally not used */
.site-branding img.custom-logo,
.site-header .brand img {
	display: none !important;
}

.site-title {
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--lw-text) !important;
}
.site-title a {
	color: var(--lw-text) !important;
	text-decoration: none;
}

.main-navigation ul.primary-menu > li > a {
	font-size: 15px;
	color: var(--lw-text);
	text-transform: none;
	font-weight: 400;
}
.main-navigation ul.primary-menu > li > a:hover {
	color: var(--lw-accent);
}

/* The 4th nav item, tagged with this class, becomes the header CTA button */
.main-navigation .menu-item.header-cta a,
.main-navigation .menu-item-header-cta a {
	background-color: var(--lw-accent);
	color: var(--lw-white) !important;
	padding: 8px 18px;
	border-radius: 3px;
	font-size: 14px;
	font-weight: 700;
}
.main-navigation .menu-item.header-cta a:hover,
.main-navigation .menu-item-header-cta a:hover {
	background-color: var(--lw-accent-hover);
}

/* ---------- Footer ---------- */
.lw-footer-inner {
	max-width: var(--lw-content-width);
	margin: 0 auto;
	padding: 8px 24px;
	text-align: center;
}
.lw-footer-brand {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	margin-bottom: 10px;
}
.lw-footer-desc {
	font-size: 14px;
	color: #cfcac0;
	max-width: 440px;
	margin: 0 auto 18px;
	line-height: 1.6;
}
.lw-footer-nav, .lw-footer-legal {
	font-size: 13px;
	margin-bottom: 8px;
}
.lw-footer-nav a, .lw-footer-legal a {
	color: #f2efe8 !important;
	text-decoration: none;
}
.lw-footer-nav a:hover, .lw-footer-legal a:hover {
	text-decoration: underline;
}
.lw-footer-copy {
	font-size: 12px;
	color: #9fa89f;
	margin-top: 14px;
}

/* ---------- Signup / GHL form ---------- */
.lw-signup {
	max-width: var(--lw-content-width);
	margin: 0 auto;
}
.lw-signup-box {
	background: var(--lw-bg-alt);
	border-radius: 6px;
	padding: 40px 32px;
	text-align: center;
}
.lw-signup-eyebrow {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--lw-accent);
	margin: 0 0 10px;
}
.lw-signup-title {
	font-size: 22px;
	font-weight: 700;
	margin: 0 0 10px;
	color: var(--lw-text);
}
.lw-signup-sub {
	font-size: 15px;
	color: var(--lw-text-secondary);
	max-width: 460px;
	margin: 0 auto 24px;
	line-height: 1.6;
}
.lw-signup-frame-wrap {
	max-width: 420px;
	margin: 0 auto;
}
.lw-signup-frame-wrap iframe {
	display: block;
	width: 100%;
	min-height: 90px;
	border: none;
	background: transparent;
}
.lw-signup-note {
	font-size: 12px;
	color: var(--lw-text-secondary);
	margin-top: 14px;
}

.lw-hero .lw-signup-box {
	background: transparent;
	padding: 0;
}
.lw-hero .lw-signup-title { display: none; }
.lw-hero .lw-signup-eyebrow { display: none; }

/* ---------- Homepage hero ---------- */
.lw-hero {
	max-width: var(--lw-content-width);
	margin: 0 auto;
	padding: 64px 24px 48px;
	text-align: center;
}
.lw-hero h1 {
	font-size: 34px;
	font-weight: 700;
	letter-spacing: 0.02em;
	margin: 0 0 22px;
	color: var(--lw-text);
}
.lw-hero-tagline {
	font-size: 19px;
	line-height: 1.6;
	color: var(--lw-text);
	max-width: 560px;
	margin: 0 auto 14px;
}
.lw-hero-sub {
	font-size: 15px;
	color: var(--lw-text-secondary);
	margin: 0 auto 32px;
}

/* ---------- Latest list ---------- */
.lw-latest {
	max-width: var(--lw-content-width);
	margin: 0 auto;
	padding: 8px 24px 24px;
}
.lw-latest-heading {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--lw-text-secondary);
	border-bottom: 1px solid var(--lw-border);
	padding-bottom: 14px;
	margin-bottom: 8px;
}
.lw-entry {
	padding: 32px 0;
	border-bottom: 1px solid var(--lw-border);
}
.lw-entry:last-child {
	border-bottom: none;
}
.lw-entry-date {
	font-size: 13px;
	color: var(--lw-text-secondary);
	margin-bottom: 8px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
.lw-entry-title {
	font-size: 22px;
	line-height: 1.35;
	margin: 0 0 10px;
	font-weight: 700;
}
.lw-entry-title a {
	color: var(--lw-text);
	text-decoration: none;
}
.lw-entry-title a:hover {
	color: var(--lw-accent);
}
.lw-entry-excerpt {
	font-size: 16px;
	line-height: 1.65;
	color: var(--lw-text-secondary);
	margin: 0 0 12px;
	max-width: 640px;
}
.lw-entry-read {
	font-size: 14px;
	font-weight: 700;
	color: var(--lw-accent);
	text-decoration: none;
}
.lw-entry-read:hover {
	color: var(--lw-accent-hover);
}

.lw-more-link {
	text-align: center;
	margin: 40px 0 8px;
}
.lw-more-link a {
	font-size: 14px;
	font-weight: 700;
	color: var(--lw-accent);
	text-decoration: none;
	border-bottom: 1px solid var(--lw-accent);
	padding-bottom: 2px;
}

.lw-section-signup {
	max-width: var(--lw-content-width);
	margin: 56px auto 24px;
	padding: 0 24px;
}

/* ---------- Single lesson ---------- */
.lw-lesson {
	max-width: var(--lw-content-width);
	margin: 0 auto;
	padding: 48px 24px 8px;
}
.lw-lesson-eyebrow {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--lw-text-secondary);
	margin-bottom: 20px;
}
.lw-lesson-date {
	font-size: 14px;
	color: var(--lw-text-secondary);
	margin-bottom: 12px;
}
.lw-lesson h1.lw-lesson-title {
	font-size: 32px;
	line-height: 1.3;
	font-weight: 700;
	margin: 0 0 8px;
	color: var(--lw-text);
}
.lw-lesson .rt-reading-time {
	font-size: 14px !important;
	color: var(--lw-text-secondary) !important;
	margin: 0 0 36px !important;
	padding: 0 !important;
}
.lw-lesson .entry-content {
	font-size: 18px;
	line-height: 1.75;
	color: var(--lw-text);
}
.lw-lesson .entry-content p {
	margin-bottom: 1.6em;
}
.lw-lesson .entry-content a {
	text-decoration: underline;
}

.lw-lesson-cta {
	max-width: var(--lw-content-width);
	margin: 48px auto;
	padding: 0 24px;
}

.lw-post-nav {
	max-width: var(--lw-content-width);
	margin: 0 auto;
	padding: 32px 24px 64px;
	border-top: 1px solid var(--lw-border);
	display: flex;
	justify-content: space-between;
	gap: 24px;
}
.lw-post-nav > div {
	max-width: 46%;
}
.lw-post-nav .lw-next {
	text-align: right;
	margin-left: auto;
}
.lw-post-nav a {
	color: var(--lw-text);
	text-decoration: none;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	display: block;
}
.lw-post-nav a:hover {
	color: var(--lw-accent);
}
.lw-post-nav .lw-nav-label {
	display: block;
	font-size: 12px;
	font-weight: 400;
	color: var(--lw-text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	margin-bottom: 6px;
}

/* ---------- Archive page ---------- */
.lw-archive {
	max-width: var(--lw-content-width);
	margin: 0 auto;
	padding: 48px 24px 80px;
}
.lw-archive h1 {
	font-size: 30px;
	font-weight: 700;
	margin: 0 0 44px;
}
.lw-archive-year {
	font-size: 24px;
	font-weight: 700;
	margin: 48px 0 8px;
	color: var(--lw-text);
}
.lw-archive-year:first-of-type {
	margin-top: 0;
}
.lw-archive-month {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--lw-text-secondary);
	margin: 26px 0 10px;
}
.lw-archive-list {
	list-style: none;
	margin: 0;
	padding: 0;
}
.lw-archive-list li {
	display: flex;
	gap: 16px;
	padding: 9px 0;
	border-bottom: 1px solid var(--lw-border);
}
.lw-archive-list li:last-child {
	border-bottom: none;
}
.lw-archive-day {
	flex: 0 0 28px;
	color: var(--lw-text-secondary);
	font-size: 15px;
}
.lw-archive-list a {
	color: var(--lw-text);
	text-decoration: none;
	font-size: 16px;
}
.lw-archive-list a:hover {
	color: var(--lw-accent);
}

/* ---------- Generic pages (About, Privacy, Terms) ---------- */
.lw-page {
	max-width: var(--lw-content-width);
	margin: 0 auto;
	padding: 48px 24px 80px;
}
.lw-page-head h1 {
	font-size: 30px;
	font-weight: 700;
	margin: 0 0 32px;
}
.lw-page .entry-content {
	font-size: 18px;
	line-height: 1.75;
}
.lw-page .entry-content p {
	margin-bottom: 1.5em;
}
.lw-page .entry-content figure {
	margin: 0 0 28px;
}
.lw-page .entry-content img {
	max-width: 220px;
	height: auto;
	border-radius: 8px;
}
.lw-page .entry-content h2 {
	font-size: 20px;
	margin: 40px 0 14px;
}

/* ---------- Mobile ---------- */
@media (max-width: 600px) {
	.site-title { font-size: 14px; }
	.lw-hero { padding: 40px 20px 32px; }
	.lw-hero h1 { font-size: 26px; }
	.lw-hero-tagline { font-size: 17px; }
	.lw-lesson h1.lw-lesson-title { font-size: 26px; }
	.lw-lesson .entry-content { font-size: 17px; }
	.lw-entry-title { font-size: 19px; }
	.lw-signup-box { padding: 28px 20px; }
	.lw-post-nav { flex-direction: column; }
	.lw-post-nav > div { max-width: 100%; }
	.lw-post-nav .lw-next { text-align: left; }
	.lw-archive-list li { flex-direction: row; }
}
