/**
 * Homestead sitewide base: body prose size and content/footer link styles.
 *
 * Nav, header CTAs, buttons, social icons, and footer menu keep their own rules.
 * Prefer this file + theme.json over Customizer / Site Editor overrides.
 */

:root {
	/* Muted sage/cream palette (client corrections). */
	--homestead-sage: var(--wp--preset--color--sage, #a8b89a);
	--homestead-light-sage: var(--wp--preset--color--light-sage, #c7d3c0);
	--homestead-cream: var(--wp--preset--color--cream, #f5f1e8);
	--homestead-warm-linen: var(--wp--preset--color--warm-linen, #e7ded1);
	--homestead-soft-gray: var(--wp--preset--color--soft-gray, #b9b8b3);
	--homestead-stone: var(--wp--preset--color--stone, #8e9188);
	--homestead-stone-dark: var(--wp--preset--color--olive-dark, #6f7566);

	/* Shape language — sharp corners site-wide. */
	--homestead-radius: 4px;
	--homestead-radius-sm: 2px;

	--homestead-body-size: clamp(1rem, 1.35vw, 1.125rem);
	--homestead-body-line: 1.6;

	/* AA-safe links on cream backgrounds. */
	--homestead-link: #5a6454;
	--homestead-link-hover: #434b3f;
	--homestead-link-on-dark: #e7ded1;
	--homestead-link-on-dark-hover: #f5f1e8;

	/* Logo-stripe accents — blue / gold / red only (match CMY logo bars). */
	--homestead-accent-cyan: var(--wp--preset--color--divider-blue, #0ca6d4);
	--homestead-accent-gold: var(--wp--preset--color--divider-gold, #e8a240);
	--homestead-accent-red: var(--wp--preset--color--divider-red, #c02050);

	/* Primary CTA on light backgrounds. */
	--homestead-cta-bg: var(--homestead-stone-dark);
	--homestead-cta-bg-hover: #5a6454;
}

body {
	font-size: var(--homestead-body-size);
	line-height: var(--homestead-body-line);
}

/* Post/page body copy — match homepage prose to this size. */
.entry-content,
.wp-block-post-content {
	font-size: var(--homestead-body-size);
	line-height: var(--homestead-body-line);
	color: var(--wp--preset--color--body, #313131);
}

.homestead-hero__lede,
.homestead-services__lede,
.homestead-about__body,
.homestead-about__body p,
.homestead-contact__lede,
.homestead-news__lede {
	font-size: var(--homestead-body-size);
	line-height: var(--homestead-body-line);
}

/*
 * In-content links (pages, posts, homepage prose).
 * Exclude WP button elements and obvious CTA/button classes.
 */
.entry-content a:where(:not(.wp-element-button):not([class*="btn"]):not([class*="button"])),
.wp-block-post-content a:where(:not(.wp-element-button):not([class*="btn"]):not([class*="button"])),
.homestead-contact__lede-phone,
a.homestead-contact__info-value,
.homestead-contact__faq-maps {
	color: var(--homestead-link);
	text-decoration: underline;
	text-underline-offset: 0.12em;
}

.entry-content a:where(:not(.wp-element-button):not([class*="btn"]):not([class*="button"])):hover,
.entry-content a:where(:not(.wp-element-button):not([class*="btn"]):not([class*="button"])):focus-visible,
.wp-block-post-content a:where(:not(.wp-element-button):not([class*="btn"]):not([class*="button"])):hover,
.wp-block-post-content a:where(:not(.wp-element-button):not([class*="btn"]):not([class*="button"])):focus-visible,
.homestead-contact__lede-phone:hover,
.homestead-contact__lede-phone:focus-visible,
a.homestead-contact__info-value:hover,
a.homestead-contact__info-value:focus-visible,
.homestead-contact__faq-maps:hover,
.homestead-contact__faq-maps:focus-visible {
	color: var(--homestead-link-hover);
	text-decoration: underline;
}

.entry-content a:where(:not(.wp-element-button):not([class*="btn"]):not([class*="button"])):focus-visible,
.wp-block-post-content a:where(:not(.wp-element-button):not([class*="btn"]):not([class*="button"])):focus-visible,
.homestead-contact__lede-phone:focus-visible,
a.homestead-contact__info-value:focus-visible,
.homestead-contact__faq-maps:focus-visible {
	outline: 2px solid var(--homestead-link-hover);
	outline-offset: 3px;
}

/*
 * Footer content links (phone, email, privacy) — styled in footer.css for sage/stone palette.
 */

/*
 * Site-wide section divider — single source of truth.
 * Section/context classes may only position or space this bar.
 */
.section-divider {
	width: 100%;
	height: 6px;
	margin: 0;
	border: 0;
	background: repeating-linear-gradient(
		to right,
		var(--homestead-accent-cyan) 0 200px,
		var(--homestead-accent-gold) 200px 400px,
		var(--homestead-accent-red) 400px 600px
	);
}

@media (max-width: 600px) {
	.section-divider {
		/* Narrower bands so more of the stripe cycle fits on phone. */
		background: repeating-linear-gradient(
			to right,
			var(--homestead-accent-cyan) 0 140px,
			var(--homestead-accent-gold) 140px 280px,
			var(--homestead-accent-red) 280px 420px
		);
	}
}
