/*
Theme Name: Adopted
Theme URI: https://adoptedbook.au
Author: Ken Wootton / TPDG Publishing
Author URI: https://tpdg.au
Description: Block theme for Adopted: Taking Your Place in the Family of God. White space, charcoal type, one warm accent. Built around a buy first, claim bonuses second launch sequence and designed to pair with the Adopted Book Toolkit plugin.
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
Version: 2.0.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: adopted
*/

/* ---------- Base ---------- */
:root {
	--ad-ink: #161616;
	--ad-stone: #4a4a4a;
	--ad-mist: #8a8a8a;
	--ad-line: #e4e1dc;
	--ad-paper: #ffffff;
	--ad-cream: #f6f3ee;
	--ad-accent: #b8862b;
}

html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }

h1, h2, h3, h4 { letter-spacing: -0.015em; text-wrap: balance; }
p { text-wrap: pretty; }

.wp-site-blocks a { text-underline-offset: 3px; }

/* ---------- Buttons ---------- */
.wp-block-button__link {
	border-radius: 2px;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	font-size: 0.8rem;
	font-weight: 600;
	padding: 1em 1.9em;
	transition: background 0.15s ease, color 0.15s ease, transform 0.15s ease;
}
.wp-block-button__link:hover { transform: translateY(-1px); }
.is-style-outline .wp-block-button__link { border: 2px solid currentColor; }
.is-style-accent .wp-block-button__link { background: var(--ad-accent); color: #fff; border-color: var(--ad-accent); }

/* ---------- Toolkit components ---------- */
.ad-buy-buttons { display: flex; flex-wrap: wrap; gap: 0.6rem; margin: 1.25rem 0; }
.ad-buy-buttons a {
	display: inline-block; text-decoration: none; border: 2px solid var(--ad-ink);
	color: var(--ad-ink); background: var(--ad-paper); padding: 0.75em 1.3em;
	border-radius: 2px; font-weight: 600; font-size: 0.8rem; letter-spacing: 0.04em; text-transform: uppercase;
}
.ad-buy-buttons a:hover { background: var(--ad-ink); color: #fff; }
.ad-buy-buttons a.ad-buy-direct { background: var(--ad-ink); color: #fff; }
.ad-buy-buttons a.ad-buy-direct:hover { background: var(--ad-accent); border-color: var(--ad-accent); }

.ad-cta { display: inline-block; text-decoration: none; background: var(--ad-ink); color: #fff;
	padding: 1em 2em; border-radius: 2px; font-weight: 600; font-size: 0.85rem; letter-spacing: 0.04em; text-transform: uppercase; }
.ad-cta:hover { background: var(--ad-accent); color: #fff; }
.ad-cta--accent { background: var(--ad-accent); }
.ad-cta--accent:hover { background: var(--ad-ink); }

.ad-step { display: flex; gap: 1.25rem; align-items: flex-start; }
.ad-step__num { flex: 0 0 auto; width: 2.75rem; height: 2.75rem; border-radius: 50%; background: var(--ad-ink); color: #fff;
	display: flex; align-items: center; justify-content: center; font-weight: 700; font-family: var(--wp--preset--font-family--heading); font-size: 1.2rem; }

.ad-form { max-width: 560px; }
.ad-form label { display: block; font-size: 0.85rem; font-weight: 600; margin: 0.9rem 0 0.3rem; letter-spacing: 0.02em; }
.ad-form input[type=text], .ad-form input[type=email], .ad-form textarea, .ad-form select {
	width: 100%; padding: 0.8em 0.9em; border: 1px solid var(--ad-line); border-radius: 2px;
	font: inherit; font-size: 1rem; background: #fff; color: var(--ad-ink);
}
.ad-form input:focus, .ad-form textarea:focus { outline: 2px solid var(--ad-accent); outline-offset: 1px; border-color: var(--ad-accent); }
.ad-form button { margin-top: 1.1rem; cursor: pointer; border: 0; }
.ad-form .ad-form__note { font-size: 0.8rem; color: var(--ad-mist); margin-top: 0.75rem; }
.ad-form .ad-hp { position: absolute; left: -9999px; }
.ad-notice { border-left: 4px solid var(--ad-accent); background: var(--ad-cream); padding: 1rem 1.25rem; margin: 1rem 0; }
.ad-notice--error { border-left-color: #a33; }

.ad-endorsements { display: grid; gap: 1.5rem; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.ad-endorsement { background: var(--ad-paper); border: 1px solid var(--ad-line); padding: 1.75rem; border-radius: 2px; }
.ad-endorsement__quote { font-family: var(--wp--preset--font-family--heading); font-size: 1.15rem; line-height: 1.5; margin: 0 0 1.25rem; }
.ad-endorsement__who { display: flex; align-items: center; gap: 0.9rem; }
.ad-endorsement__who img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.ad-endorsement__name { font-weight: 700; font-size: 0.95rem; }
.ad-endorsement__role { color: var(--ad-mist); font-size: 0.85rem; }

.ad-countdown { font-family: var(--wp--preset--font-family--heading); font-size: 1.1rem; }
.ad-countdown strong { color: var(--ad-accent); }

.ad-badge { display: inline-block; font-size: 0.72rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ad-accent); font-weight: 700; }

.ad-chapters { counter-reset: ch; list-style: none; padding: 0; margin: 0; }
.ad-chapters li { counter-increment: ch; border-top: 1px solid var(--ad-line); padding: 1rem 0; display: flex; gap: 1.25rem; align-items: baseline; }
.ad-chapters li:last-child { border-bottom: 1px solid var(--ad-line); }
.ad-chapters li::before { content: counter(ch, decimal-leading-zero); font-family: var(--wp--preset--font-family--heading); color: var(--ad-accent); font-weight: 700; min-width: 2.2rem; }

.ad-pullquote { font-family: var(--wp--preset--font-family--heading); font-size: clamp(1.4rem, 3vw, 2rem); line-height: 1.3; font-weight: 500; }
.ad-pullquote::before { content: ""; display: block; width: 3rem; height: 3px; background: var(--ad-accent); margin-bottom: 1.25rem; }

.ad-questions p { font-family: var(--wp--preset--font-family--heading); font-style: italic; font-size: 1.25rem; margin: 0.35rem 0; }

.ad-cover { box-shadow: 0 30px 60px -20px rgba(0,0,0,0.35); }

/* ---------- Header ---------- */
.ad-header { border-bottom: 1px solid var(--ad-line); }
.ad-header .wp-block-site-title a { text-decoration: none; letter-spacing: 0.18em; text-transform: uppercase; font-weight: 700; font-size: 0.95rem; }
.wp-block-navigation a { font-size: 0.85rem; letter-spacing: 0.02em; }

/* ---------- Footer ---------- */
.ad-footer { border-top: 1px solid var(--ad-line); font-size: 0.85rem; color: var(--ad-mist); }
.ad-footer a { color: inherit; }

@media (max-width: 781px) {
	.ad-step { gap: 0.9rem; }
	.wp-block-columns.ad-hero { gap: 1.5rem; }
}
