/* ChristianPure shared design system */
:root {
	--cp-ink: #002b63;
	--cp-ink-deep: #001b43;
	--cp-gold: #c58c23;
	--cp-gold-line: rgb(171 127 54 / 32%);
	--cp-coral: #d8583f;
	--cp-stone: #fbf8f3;
	--cp-stone-deep: #f5ede1;
	--cp-focus: #2d6db0;
	--cp-heading: "Tiempos Headline", "TM Pose", var(--wp--preset--font-family--heading, Georgia), serif;
	--cp-body: var(--wp--preset--font-family--body, "FK Roman Text", Georgia, serif);
	--cp-site-stone-texture: url("/wp-content/uploads/2026/08/christianpure-stone-texture.webp");
	--cp-template-top-canvas-height: clamp(18rem, 34vw, 30rem);
	--cp-sitewide-gradient-center-y: 88%;
	--cp-mega-prayer: url("../images/navigation/prayer-scripture.webp");
	--cp-mega-faith: url("../images/navigation/faith-understanding.webp");
	--cp-mega-relationships: url("../images/navigation/life-relationships.webp");
	--cp-mega-explore: url("../images/navigation/explore.webp");
	--cp-mega-divider: url("../images/navigation/divider-tile.webp");
	--cp-mega-medallion: url("../images/navigation/divider-medallion.webp");
	--cp-mega-mobile-crown: url("../images/navigation/mobile-crown-cross.webp");
	--cp-mega-mobile-divider: url("../images/navigation/mobile-divider-colored.webp");
	--cp-mega-mobile-footer-cross: url("../images/navigation/mobile-footer-cross.webp");
	--cp-nav-search-icon: url("../images/navigation/search.webp");
}

@property --cp-sitewide-gradient-angle {
	syntax: "<angle>";
	inherits: false;
	initial-value: 12deg;
}

html {
	overflow-x: clip;
}

.wp-site-blocks {
	position: relative;
	isolation: isolate;
	overflow: visible;
}

.cp-top-gradient-hero {
	overflow-x: clip;
	overflow-y: visible;
}

.wp-site-blocks::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 50%;
	width: 100vw;
	height: var(--cp-template-top-canvas-height);
	pointer-events: none;
}

.wp-site-blocks::before,
.cp-top-gradient-hero::before {
	--cp-sitewide-gradient-angle: 12deg;
	left: 50%;
	right: auto;
	width: 110vw;
	background: conic-gradient(
		from var(--cp-sitewide-gradient-angle) at 50% var(--cp-sitewide-gradient-center-y),
		rgba(190, 216, 255, 0.98) 0deg,
		rgba(190, 216, 255, 0.56) 64deg,
		rgba(255, 255, 255, 0.72) 122deg,
		rgba(255, 226, 202, 0.86) 182deg,
		rgba(244, 151, 83, 0.64) 246deg,
		rgba(255, 248, 242, 0.76) 312deg,
		rgba(190, 216, 255, 0.98) 360deg
	);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	filter: blur(3.5rem);
	transform: translateX(-50%) scale(1.08);
	transform-origin: 50% 50%;
	animation: cp-sitewide-gradient-orbit 45s linear infinite;
}

@keyframes cp-sitewide-gradient-orbit {
	from {
		--cp-sitewide-gradient-angle: 12deg;
	}

	to {
		--cp-sitewide-gradient-angle: 372deg;
	}
}

body.category .wp-site-blocks:has(.cp-top-gradient-shell)::before,
.wp-site-blocks:has(.cp-top-gradient-hero)::before {
	display: none;
}


/* Universal header geometry. Surface, border, wall, and mosaic are owned by the template part. */
header.wp-block-template-part:has(.cp-universal-header) {
	box-sizing: border-box;
	position: relative;
	z-index: 10000;
	width: 100%;
	max-width: none !important;
	margin: 0 !important;
}

header.wp-block-template-part:has(.cp-universal-header) > .cp-universal-header {
	width: 100vw;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
}

header.wp-block-template-part .cp-header-mosaic {
	box-sizing: border-box;
	min-height: 12px;
	height: 12px;
	max-height: 12px;
	overflow: hidden;
}

.cp-top-gradient-shell:has(.cp-mega-trigger > .wp-block-navigation__submenu-icon[aria-expanded="true"]) {
	position: relative;
	z-index: 100000;
	overflow: visible !important;
}

body:has(.cp-site-header .cp-mega-trigger > .wp-block-navigation__submenu-icon[aria-expanded="true"]) :is(
	#wpj-jtoc,
	.wpj-jtoc--widget-floating,
	.wpj-jtoc--widget-progress,
	.wpj-jtoc--widget-progress-bar
) {
	display: none !important;
	pointer-events: none !important;
}

.cp-site-header,
.cp-site-header *,
.cp-site-header *::before,
.cp-site-header *::after {
	box-sizing: border-box;
}

.cp-site-header > .wp-block-column > .wp-block-group,
.cp-site-header .navigation-wrapper {
	width: min(100%, 1520px) !important;
	max-width: 1520px !important;
	margin-inline: auto !important;
}

.cp-site-header .navigation-wrapper {
	position: relative;
	flex-wrap: nowrap !important;
	gap: clamp(1.5rem, 3vw, 4rem);
}

.cp-site-header .wp-block-image {
	flex: 0 0 auto;
	width: clamp(150px, 12vw, 190px);
	margin: 0 !important;
}

.cp-site-header .wp-block-image img {
	display: block;
	width: 100%;
	height: auto;
}

.cp-site-header .wp-block-navigation,
.cp-site-header .wp-block-navigation__container {
	position: static;
	text-transform: none !important;
}

.cp-site-header .wp-block-navigation__container {
	gap: clamp(1rem, 1.7vw, 2rem) !important;
}

.cp-site-header .wp-block-navigation a,
.cp-site-header .wp-block-navigation button {
	color: var(--cp-ink);
	font-family: var(--cp-body);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: none;
	-webkit-tap-highlight-color: transparent;
}

.cp-site-header .wp-block-navigation a:focus-visible,
.cp-site-header .wp-block-navigation button:focus-visible {
	border-radius: 3px;
	outline: 3px solid var(--cp-focus);
	outline-offset: 4px;
}

.cp-site-header .wp-block-navigation__submenu-icon svg {
	transition: transform 180ms ease;
}

.cp-site-header .wp-block-navigation__submenu-icon[aria-expanded="true"] svg {
	transform: rotate(180deg);
}

.cp-site-header .cp-nav-member > .wp-block-navigation-item__content,
.cp-site-header .cp-mega-footer-member > .wp-block-navigation-item__content {
	justify-content: center;
	padding: 0.72rem 1.05rem;
	border: 1px solid var(--cp-ink);
	border-radius: 3px;
	color: #fff !important;
	background: var(--cp-ink);
	box-shadow: 0 4px 12px rgb(0 43 99 / 16%);
	text-decoration: none;
}

.cp-site-header .cp-nav-member > .wp-block-navigation-item__content:hover,
.cp-site-header .cp-mega-footer-member > .wp-block-navigation-item__content:hover {
	background: var(--cp-ink-deep);
}

.cp-site-header .cp-nav-search > .wp-block-navigation-item__content {
	position: relative;
	display: block;
	width: 30px;
	height: 30px;
	padding: 0;
	overflow: hidden;
	color: transparent !important;
	font-size: 0;
	background: var(--cp-nav-search-icon) center / 30px 30px no-repeat;
}

.cp-top-gradient-hero :is(h1, h2, h3, h4, h5, h6) {
	text-transform: none;
}

.cp-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 50px;
	padding: 0.78rem 1.35rem;
	border: 1px solid var(--cp-ink);
	border-radius: 3px;
	font-family: var(--cp-body);
	font-size: 1rem;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: color 160ms ease, background-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.cp-button--primary,
.cp-button--primary:visited {
	color: #fff;
	background: var(--cp-ink);
	box-shadow: 0 4px 14px rgb(0 43 99 / 14%);
}

.cp-button--secondary,
.cp-button--secondary:visited {
	color: var(--cp-ink);
	background: rgb(255 255 255 / 52%);
}

.cp-button:hover {
	color: #fff;
	background: var(--cp-ink-deep);
	transform: translateY(-1px);
}

.cp-button:focus-visible {
	outline: 3px solid var(--cp-focus);
	outline-offset: 3px;
}

.cp-button--compact {
	min-height: 42px;
	padding: 0.62rem 1.05rem;
	font-size: 0.92rem;
}

@media (min-width: 1101px) {
	/* Shared desktop header and mega-menu interaction contract. */
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .navigation-wrapper > .wp-block-image {
		width: 190px;
		height: 48px;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .navigation-wrapper > .wp-block-image img {
		width: 100%;
		height: 100%;
		object-fit: contain;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .cp-nav-member > .wp-block-navigation-item__content {
		padding: 0.65rem !important;
		font-size: 0.8125rem !important;
	}

	.cp-site-header {
		position: relative !important;
	}

	.cp-site-header > .wp-block-column > .wp-block-group,
	.cp-site-header .navigation-wrapper,
	.cp-site-header .wp-block-navigation__responsive-container,
	.cp-site-header .wp-block-navigation__responsive-dialog {
		position: static !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container-open {
		display: none !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: block !important;
	}

	.cp-site-header .cp-mega-trigger {
		position: static !important;
	}

	.cp-site-header .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation__submenu-icon {
		line-height: 0;
	}

	.cp-site-header .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation__submenu-icon svg {
		display: block;
		margin-top: 0;
	}

	.cp-site-header .cp-mega-trigger > .wp-block-navigation-item__content {
		position: relative;
	}

	.cp-site-header .cp-mega-trigger > .wp-block-navigation-item__content::after {
		content: "";
		position: absolute;
		top: 100%;
		left: 0;
		width: calc(100% + 1rem);
		height: 1.15rem;
	}

	.cp-site-header .cp-mega-trigger > .wp-block-navigation__submenu-container,
	.cp-site-header .cp-mega-trigger > .wp-block-navigation__submenu-container * {
		pointer-events: none !important;
	}

	.cp-site-header .cp-mega-trigger > .wp-block-navigation__submenu-container {
		position: absolute !important;
		top: 100% !important;
		left: 50% !important;
		right: auto !important;
		display: grid !important;
		grid-template-columns: repeat(12, minmax(0, 1fr));
		width: min(1460px, calc(100vw - 3.5rem)) !important;
		min-width: 0 !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: calc(100vh - 7rem);
		padding: clamp(2rem, 3vw, 3.2rem) clamp(1.75rem, 3.3vw, 3.25rem) 1.35rem !important;
		gap: 0 clamp(1rem, 2vw, 2rem);
		border: 1px solid rgb(171 127 54 / 26%) !important;
		border-radius: 0 !important;
		background-color: var(--cp-stone) !important;
		background-image: var(--cp-site-stone-texture) !important;
		background-position: left top !important;
		background-repeat: repeat !important;
		background-size: 360px 600px !important;
		box-shadow: 0 18px 42px rgb(52 34 13 / 18%);
		overflow-x: hidden !important;
		overflow-y: auto !important;
		overscroll-behavior: contain;
		visibility: hidden;
		opacity: 0;
		pointer-events: none;
		transform: translate(-50%, 10px) !important;
		transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
	}

	.cp-site-header .cp-mega-trigger > .wp-block-navigation__submenu-container::before {
		content: "";
		position: absolute;
		z-index: 2;
		bottom: 10px;
		left: 50%;
		width: 62px;
		height: 62px;
		background: var(--cp-mega-medallion) center / contain no-repeat;
		pointer-events: none;
		transform: translateX(-50%);
	}

	.cp-site-header .cp-mega-trigger > .wp-block-navigation__submenu-container::after {
		content: "";
		position: absolute;
		z-index: 1;
		right: 0;
		bottom: 0;
		left: 0;
		height: 22px;
		background: var(--cp-mega-divider) left -8px / auto 30px repeat-x;
		pointer-events: none;
	}

	.cp-site-header .cp-mega-trigger > .wp-block-navigation-item__content:hover ~ .wp-block-navigation__submenu-container,
	.cp-site-header .cp-mega-trigger > .wp-block-navigation__submenu-icon:hover ~ .wp-block-navigation__submenu-container,
	.cp-site-header .cp-mega-trigger.cp-mega-open > .wp-block-navigation__submenu-container,
	.cp-site-header .cp-mega-trigger:focus-within > .wp-block-navigation__submenu-container,
	.cp-site-header .cp-mega-trigger > .wp-block-navigation__submenu-icon[aria-expanded="true"] ~ .wp-block-navigation__submenu-container {
		visibility: visible;
		opacity: 1;
		pointer-events: auto;
		transform: translate(-50%, 0) !important;
	}

	.cp-site-header .cp-mega-trigger > .wp-block-navigation-item__content:hover ~ .wp-block-navigation__submenu-container *,
	.cp-site-header .cp-mega-trigger > .wp-block-navigation__submenu-icon:hover ~ .wp-block-navigation__submenu-container *,
	.cp-site-header .cp-mega-trigger.cp-mega-open > .wp-block-navigation__submenu-container *,
	.cp-site-header .cp-mega-trigger:focus-within > .wp-block-navigation__submenu-container *,
	.cp-site-header .cp-mega-trigger > .wp-block-navigation__submenu-icon[aria-expanded="true"] ~ .wp-block-navigation__submenu-container * {
		pointer-events: auto !important;
	}

	.cp-site-header .cp-mega-intro {
		position: relative;
		display: block !important;
		grid-column: 1 / -1;
		width: auto !important;
		min-height: 4.35rem;
		margin-bottom: 1.25rem;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
	}

	.cp-site-header .cp-mega-intro > .wp-block-navigation-item__content {
		display: block;
		width: fit-content;
		padding: 0 !important;
		color: var(--cp-ink);
		font-family: var(--cp-heading);
		font-size: clamp(1.75rem, 2.2vw, 2.35rem);
		line-height: 1.05;
		text-decoration: none;
	}

	.cp-site-header .cp-mega-intro::after {
		content: "Prayer, Scripture, and faithful guidance for the life in front of you.";
		display: block;
		margin-top: 0.45rem;
		color: #31384f;
		font-family: var(--cp-body);
		font-size: 1rem;
		line-height: 1.35;
	}

	.cp-site-header .cp-mega-group {
		position: relative !important;
		display: flex !important;
		grid-column: span 3;
		width: auto !important;
		min-width: 0;
		min-height: 292px;
		flex-direction: column;
		padding: 0 clamp(0.65rem, 1.25vw, 1.35rem) 1.15rem !important;
		border: 0 !important;
		border-right: 1px solid var(--cp-gold-line) !important;
		background: transparent !important;
	}

	.cp-site-header .cp-mega-group::before {
		content: "";
		position: absolute;
		top: 0;
		left: 50%;
		width: 82px;
		height: 82px;
		background: var(--cp-mega-icon) center / contain no-repeat;
		clip-path: circle(48% at 50% 50%);
		mix-blend-mode: multiply;
		pointer-events: none;
		transform: translateX(-50%);
	}

	.cp-site-header .cp-mega-group--explore {
		border-right: 0 !important;
	}

	.cp-site-header .cp-mega-group > .wp-block-navigation-item__content {
		display: block;
		min-height: 126px;
		padding: 96px 0 0 !important;
		color: var(--cp-ink);
		background: transparent !important;
		font-family: var(--cp-heading);
		font-size: 1.15rem;
		font-weight: 400;
		line-height: 1.2;
		text-align: center;
		text-decoration: none;
		white-space: normal;
	}

	.cp-site-header .cp-mega-group--prayer > .wp-block-navigation-item__content {
		--cp-mega-icon: var(--cp-mega-prayer);
	}

	.cp-site-header .cp-mega-group--prayer {
		--cp-mega-icon: var(--cp-mega-prayer);
	}

	.cp-site-header .cp-mega-group--faith {
		--cp-mega-icon: var(--cp-mega-faith);
	}

	.cp-site-header .cp-mega-group--relationships {
		--cp-mega-icon: var(--cp-mega-relationships);
	}

	.cp-site-header .cp-mega-group--explore {
		--cp-mega-icon: var(--cp-mega-explore);
	}

	.cp-site-header .cp-mega-group > .wp-block-navigation__submenu-icon {
		display: none !important;
	}

	.cp-site-header .cp-mega-group > .wp-block-navigation__submenu-container {
		position: static !important;
		display: flex !important;
		width: 100% !important;
		min-width: 0 !important;
		height: auto !important;
		min-height: 0 !important;
		flex-direction: column;
		padding: 0 !important;
		gap: 0 !important;
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		overflow: visible !important;
		visibility: inherit;
		opacity: inherit;
		transform: none !important;
	}

	.cp-site-header .cp-mega-group > .wp-block-navigation__submenu-container > .wp-block-navigation-item {
		width: 100% !important;
		border-bottom: 1px solid var(--cp-gold-line);
		background: transparent !important;
	}

	.cp-site-header .cp-mega-group > .wp-block-navigation__submenu-container > .wp-block-navigation-item:last-child {
		border-bottom: 0;
	}

	.cp-site-header .cp-mega-group > .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content {
		position: relative;
		display: block;
		width: 100%;
		min-height: 42px;
		padding: 0.7rem 1.45rem 0.65rem 0 !important;
		color: var(--cp-ink);
		font-family: var(--cp-body);
		font-size: 0.9375rem;
		font-weight: 400;
		letter-spacing: 0;
		line-height: 1.3;
		text-align: left;
		text-decoration: none;
		text-transform: none;
		white-space: normal;
	}

	.cp-site-header .cp-mega-group > .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content::after {
		content: "›";
		position: absolute;
		top: 50%;
		right: 0.15rem;
		color: var(--cp-ink);
		font-size: 1.35rem;
		line-height: 1;
		transform: translateY(-52%);
	}

	.cp-site-header .cp-mega-group .wp-block-navigation-item__content:hover,
	.cp-site-header .cp-mega-group .wp-block-navigation-item__content:focus-visible {
		color: var(--cp-coral);
	}

	.cp-site-header .cp-mega-footer-link {
		display: none !important;
	}

	.cp-site-header .wp-block-navigation__container > li.cp-nav-resources {
		position: relative !important;
	}

	.cp-site-header .cp-nav-resources > .wp-block-navigation__submenu-container {
		left: 50% !important;
		right: auto !important;
		width: 15rem !important;
		min-width: 15rem !important;
		padding: 0.65rem !important;
		border: 1px solid var(--cp-gold-line) !important;
		background-color: var(--cp-stone) !important;
		background-image: var(--cp-site-stone-texture) !important;
		background-repeat: repeat !important;
		background-size: 360px 600px !important;
		box-shadow: 0 14px 30px rgb(52 34 13 / 14%);
		transform: translateX(-50%) !important;
	}

	.cp-site-header .cp-nav-resources .wp-block-navigation-item__content {
		width: 100%;
		padding: 0.7rem 0.75rem !important;
		text-decoration: none;
	}
}

@media (max-width: 1100px) {
	:root {
		--cp-template-top-canvas-height: clamp(16rem, 72vw, 24rem);
		--cp-sitewide-gradient-center-y: 20%;
	}

	.wp-site-blocks::before,
	.cp-top-gradient-hero::before {
		filter: blur(2.5rem);
	}

	.cp-site-header {
		min-height: 84px !important;
		padding-block: 0.8rem !important;
		--cp-header-row-height: 84px;
	}

	.cp-site-header .navigation-wrapper {
		width: 100% !important;
	}

	.cp-site-header .wp-block-image {
		width: min(46vw, 184px);
	}

	.cp-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container-open {
		position: relative;
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		min-width: 44px;
		min-height: 44px;
		padding: 0;
		overflow: hidden;
		border: 0;
		color: var(--cp-ink) !important;
		background: transparent;
		font-size: 0 !important;
		line-height: 0 !important;
		text-indent: 120%;
		white-space: nowrap;
	}

	.cp-site-header .wp-block-navigation__responsive-container-open svg {
		display: block !important;
		width: 24px;
		height: 24px;
		stroke: currentColor;
		fill: currentColor;
	}

	.cp-site-header .wp-block-navigation__responsive-container-open:not(:has(svg))::before {
		content: "" !important;
		position: absolute;
		top: 50%;
		left: 50%;
		display: block !important;
		width: 22px;
		height: 2px;
		border-radius: 1px;
		background: var(--cp-ink);
		box-shadow: 0 -7px 0 var(--cp-ink), 0 7px 0 var(--cp-ink);
		transform: translate(-50%, -50%);
	}

	.cp-site-header .wp-block-navigation__responsive-container-open:has(svg)::before,
	.cp-site-header .wp-block-navigation__responsive-container-open::after {
		content: none !important;
		display: none !important;
	}

	header.wp-block-template-part:has(.cp-site-header .wp-block-navigation__responsive-container.is-menu-open) {
		z-index: 2147483647;
	}

	.cp-site-header:has(.wp-block-navigation__responsive-container.is-menu-open) {
		--cp-open-menu-inset-top: max(env(safe-area-inset-top, 0px), 1.5rem);
	}

	body.admin-bar .cp-site-header:has(.wp-block-navigation__responsive-container.is-menu-open) {
		--cp-open-menu-inset-top: env(safe-area-inset-top, 0px);
	}

	.cp-top-gradient-shell:has(.cp-site-header .wp-block-navigation__responsive-container.is-menu-open) {
		position: relative;
		z-index: 2147483646;
		overflow: visible !important;
	}

	body:has(.cp-site-header .wp-block-navigation__responsive-container.is-menu-open) :is(
		#wpj-jtoc,
		.wpj-jtoc--widget-floating,
		.wpj-jtoc--widget-progress,
		.wpj-jtoc--widget-progress-bar
	) {
		display: none !important;
		pointer-events: none !important;
	}

	.cp-site-header:has(.wp-block-navigation__responsive-container.is-menu-open) .navigation-wrapper > .wp-block-image {
		position: relative;
		z-index: 2;
		top: var(--cp-open-menu-inset-top);
	}

	.cp-site-header:has(.wp-block-navigation__responsive-container.is-menu-open) .wp-block-navigation {
		position: relative;
		z-index: 1;
	}

	.cp-site-header:has(.wp-block-navigation__responsive-container.is-menu-open) .wp-block-navigation__responsive-container-open {
		visibility: hidden !important;
		pointer-events: none !important;
	}

	header.wp-block-template-part:has(.cp-site-header .wp-block-navigation__responsive-container.is-menu-open) .cp-header-mosaic {
		visibility: hidden;
	}

	.cp-site-header .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open,
	.cp-site-header .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open.has-modal-open,
	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open,
	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open:not(.disable-default-overlay) {
		position: fixed;
		inset: 0;
		display: block;
		padding: 0 !important;
		color: var(--cp-ink);
		background-color: var(--cp-stone) !important;
		background-image: var(--cp-site-stone-texture) !important;
		background-repeat: repeat !important;
		background-size: 360px 600px !important;
		overflow: hidden;
		transform: none !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open > .cp-mega-mobile-header-plate {
		position: absolute;
		z-index: 2147483645;
		top: var(--cp-open-menu-inset-top);
		left: 0;
		width: 100%;
		height: var(--cp-header-row-height, 84px);
		pointer-events: none;
		background-color: var(--cp-stone);
		background-image: var(--cp-site-stone-texture);
		background-repeat: repeat;
		background-size: 360px 600px;
	}

	body.admin-bar .cp-site-header .wp-block-navigation__responsive-container.is-menu-open {
		top: 32px;
		height: calc(100dvh - 32px);
	}

	body.admin-bar .cp-site-header .wp-block-navigation__responsive-container.is-menu-open > .cp-mega-mobile-header-plate {
		top: 0;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		display: flex;
		width: 100%;
		max-width: none;
		height: auto;
		min-height: 0;
		margin: 0 auto !important;
		flex-direction: column;
		padding-top: 0;
		overflow: hidden;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog::before,
	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog::after {
		content: "";
		position: absolute;
		z-index: 2147483646;
		pointer-events: none;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog::before {
		top: calc(var(--cp-open-menu-inset-top, 0px) + var(--cp-header-row-height, 84px));
		left: 0;
		width: 100%;
		height: 30px;
		background: var(--cp-mega-mobile-divider) left center / auto 30px repeat-x;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog::after {
		content: none !important;
		display: none !important;
		background: none !important;
	}

	body.admin-bar .cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog::before {
		top: var(--cp-header-row-height, 84px);
	}

	body.admin-bar .cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog::after {
		top: 4.1rem;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
		position: absolute;
		z-index: 2147483647;
		top: calc(var(--cp-open-menu-inset-top, 0px) + (var(--cp-header-row-height, 84px) - 44px) / 2);
		right: max(1.25rem, env(safe-area-inset-right));
		display: flex;
		align-items: center;
		justify-content: flex-end;
		width: 110px;
		min-width: 44px;
		height: 44px;
		padding: 0;
		gap: 0.55rem;
		border: 0;
		color: var(--cp-ink);
		background: transparent;
		font-size: 0;
		line-height: 0;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close::before {
		content: "Close";
		font-family: var(--cp-heading);
		font-size: 1.1rem;
		line-height: 1;
	}

	body.admin-bar .cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
		top: calc((var(--cp-header-row-height, 84px) - 44px) / 2);
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close::after {
		content: "×";
		font-family: var(--cp-body);
		font-size: 1.85rem;
		font-weight: 300;
		line-height: 0.75;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg {
		display: none;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
		display: block;
		width: 100%;
		padding: 0;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		height: 100%;
		min-height: 0;
		flex: 1 1 auto;
		padding: calc(var(--cp-open-menu-inset-top, 0px) + var(--cp-header-row-height, 84px) + 2.15rem) 0 max(1.5rem, env(safe-area-inset-bottom)) !important;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior-y: contain;
		-webkit-overflow-scrolling: touch;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item:not(.cp-mega-trigger) {
		display: none !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-trigger {
		display: block;
		width: 100%;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-trigger > .wp-block-navigation-item__content,
	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-trigger > .wp-block-navigation__submenu-icon {
		display: none !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-trigger > .wp-block-navigation__submenu-container {
		position: static !important;
		display: flex !important;
		width: 100% !important;
		min-width: 0 !important;
		height: auto !important;
		min-height: 0 !important;
		flex-direction: column;
		margin-inline: 0 !important;
		padding: 0 !important;
		gap: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		overflow: visible !important;
		visibility: visible !important;
		opacity: 1 !important;
		transform: none !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-intro {
		position: relative;
		display: block !important;
		width: 100%;
		min-height: 0;
		padding: 0 max(1.25rem, env(safe-area-inset-right)) 1rem max(1.25rem, env(safe-area-inset-left));
		border-bottom: 0;
		background: transparent !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-intro > .wp-block-navigation-item__content,
	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-intro .wp-block-navigation-item__label {
		display: block;
		width: auto;
		padding: 0 !important;
		color: var(--cp-ink) !important;
		font-family: "Tiempos Headline", var(--cp-heading), Georgia, serif !important;
		font-size: clamp(1.05rem, 3.6vw, 1.34rem) !important;
		font-weight: 600 !important;
		letter-spacing: 0 !important;
		line-height: 1.15 !important;
		text-decoration: none;
		text-transform: none !important;
		white-space: normal;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-intro::after {
		content: "Prayer, Scripture, and faithful guidance for the life in front of you.";
		display: block;
		max-width: 34rem;
		margin-top: 0.65rem;
		color: #31384f;
		font-family: var(--cp-body);
		font-size: clamp(1.02rem, 3.8vw, 1.22rem);
		line-height: 1.35;
		text-transform: none;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group {
		position: relative !important;
		display: grid !important;
		grid-template-columns: max(0.85rem, env(safe-area-inset-left)) 56px minmax(0, 1fr) 44px max(0.85rem, env(safe-area-inset-right));
		align-items: center;
		column-gap: 0.5rem;
		width: 100% !important;
		min-height: 72px;
		padding-block: 0.35rem;
		padding-inline: 0;
		border: 0 !important;
		border-bottom: 1px solid rgb(171 127 54 / 28%) !important;
		background: transparent !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group:last-of-type {
		border-bottom: 0 !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group::before {
		content: "";
		position: static;
		grid-column: 2;
		grid-row: 1;
		align-self: center;
		width: 56px;
		height: 56px;
		margin: 0;
		background: var(--cp-mega-icon) center / contain no-repeat;
		clip-path: circle(48% at 50% 50%);
		mix-blend-mode: multiply;
		pointer-events: none;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group--prayer {
		--cp-mega-icon: var(--cp-mega-prayer);
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group--faith {
		--cp-mega-icon: var(--cp-mega-faith);
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group--relationships {
		--cp-mega-icon: var(--cp-mega-relationships);
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group--explore {
		--cp-mega-icon: var(--cp-mega-explore);
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation-item__content {
		grid-column: 3;
		grid-row: 1;
		display: flex;
		align-items: center;
		width: 100%;
		min-height: 0;
		padding: 0.85rem 0 !important;
		color: var(--cp-ink);
		font-family: var(--cp-heading);
		font-size: clamp(1.2rem, 4.2vw, 1.45rem);
		font-weight: 500;
		letter-spacing: 0;
		line-height: 1.2;
		text-decoration: none;
		white-space: normal;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-icon {
		position: relative;
		z-index: 2;
		grid-column: 4;
		grid-row: 1;
		align-self: center;
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 24px;
		height: 24px;
		margin: 0 !important;
		padding: 0;
		border: 0 !important;
		border-radius: 0 !important;
		color: var(--cp-ink);
		background: transparent !important;
		box-shadow: none !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-icon::before,
	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-icon::after {
		content: none !important;
		display: none !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-icon svg {
		width: 28px;
		height: 28px;
		transform: none !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-icon[aria-expanded="true"] svg {
		transform: rotate(180deg) !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-container {
		position: static !important;
		grid-column: 2 / 5;
		display: none !important;
		width: 100% !important;
		min-width: 0 !important;
		height: auto !important;
		margin: 0 !important;
		padding: 0 0 0.35rem !important;
		gap: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		overflow: visible !important;
		visibility: visible !important;
		opacity: 1 !important;
		transform: none !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-icon[aria-expanded="true"] ~ .wp-block-navigation__submenu-container {
		display: block !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group.cp-is-open > .wp-block-navigation__submenu-container {
		display: block !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-container,
	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-container.has-background,
	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-container > .wp-block-navigation-item,
	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		background: transparent !important;
		background-color: transparent !important;
		box-shadow: none !important;
		border-radius: 0 !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group .wp-block-navigation__submenu-container,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation__responsive-container.is-menu-open:where(:not(.disable-default-overlay)) .cp-mega-group.has-child > .wp-block-navigation__submenu-container {
		background: transparent !important;
		background-color: transparent !important;
		background-image: none !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-container > .wp-block-navigation-item {
		width: 100%;
		border-top: 1px solid rgb(171 127 54 / 22%);
		background: transparent !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-container > .wp-block-navigation-item:first-child {
		border-top: 0 !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		position: relative;
		display: block;
		width: 100%;
		min-height: 52px;
		padding: 0.9rem 2.5rem 0.8rem 0 !important;
		font-family: var(--cp-body);
		font-size: clamp(1.05rem, 4vw, 1.2rem);
		line-height: 1.25;
		text-decoration: none;
		white-space: normal;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-container .wp-block-navigation-item__content::after {
		content: "›";
		position: absolute;
		top: 50%;
		right: 0.75rem;
		font-size: 1.55rem;
		line-height: 1;
		transform: translateY(-52%);
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-footer-link {
		display: block;
		width: 100% !important;
		margin-left: 0;
		border-bottom: 1px solid var(--cp-gold-line);
		background: transparent !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-footer-link > .wp-block-navigation-item__content {
		position: relative;
		display: flex;
		align-items: center;
		width: 100%;
		min-height: 52px;
		padding: 0.72rem max(2.5rem, env(safe-area-inset-right)) 0.68rem max(1.25rem, env(safe-area-inset-left)) !important;
		font-size: 1.05rem !important;
		line-height: 1.2 !important;
		text-decoration: none;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-footer-link > .wp-block-navigation-item__content::after {
		content: "›";
		position: absolute;
		top: 50%;
		right: 0.75rem;
		font-size: 1.55rem;
		line-height: 1;
		transform: translateY(-52%);
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-footer-member {
		width: calc(100% - 2.5rem) !important;
		margin: 1rem 1.25rem 0;
		border-bottom: 0;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-footer-member > .wp-block-navigation-item__content {
		justify-content: center;
		min-height: 52px;
		padding: 0.8rem 1rem !important;
		font-size: 1.05rem !important;
		line-height: 1.2 !important;
		color: #fff !important;
		background: var(--cp-ink) !important;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-footer-member > .wp-block-navigation-item__content::after {
		display: none;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-trigger > .wp-block-navigation__submenu-container::after {
		content: none;
		display: none;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open a:focus-visible,
	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open button:focus-visible {
		outline: 2px solid var(--cp-gold);
		outline-offset: 3px;
	}
}

@media (max-width: 782px) {
	body.admin-bar .cp-site-header .wp-block-navigation__responsive-container.is-menu-open {
		top: 46px;
		height: calc(100dvh - 46px);
	}

	body.admin-bar .cp-site-header .wp-block-navigation__responsive-container.is-menu-open > .cp-mega-mobile-header-plate {
		top: 0;
	}

	body.admin-bar .cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
		top: calc((var(--cp-header-row-height, 84px) - 44px) / 2);
	}

	body.admin-bar .cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog::before {
		top: var(--cp-header-row-height, 84px);
	}

	body.admin-bar .cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog::after {
		top: 4.1rem;
	}
}

@media (max-width: 1100px) {
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation__responsive-container.is-menu-open li.cp-mega-group.has-child {
		display: grid !important;
		grid-template-columns: 0.85rem 56px minmax(0, 1fr) 44px 0.85rem !important;
		align-items: center;
		column-gap: 0.5rem;
		padding-inline: 0 !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation__responsive-container.is-menu-open li.cp-mega-group.has-child::before {
		grid-column: 2 !important;
		grid-row: 1;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation__responsive-container.is-menu-open li.cp-mega-group.has-child > .wp-block-navigation-item__content {
		grid-column: 3 !important;
		grid-row: 1;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation__responsive-container.is-menu-open li.cp-mega-group.has-child > .wp-block-navigation__submenu-icon {
		grid-column: 4 !important;
		grid-row: 1;
		width: 24px !important;
		height: 24px !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation__responsive-container.is-menu-open li.cp-mega-group.has-child > .wp-block-navigation__submenu-container {
		grid-column: 2 / 5 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}

@media (max-width: 430px) {
	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
		right: 0;
		left: 0;
		padding-top: 0;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-intro {
		min-height: 0;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group {
		min-height: 72px;
		grid-template-columns: max(0.85rem, env(safe-area-inset-left)) 56px minmax(0, 1fr) 44px max(0.85rem, env(safe-area-inset-right));
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group::before {
		grid-column: 2;
		width: 56px;
		height: 56px;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation-item__content {
		grid-column: 3;
		min-height: 0;
		padding: 0.75rem 0 !important;
		font-size: 1.2rem;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-icon {
		grid-column: 4;
	}

	.cp-site-header .wp-block-navigation__responsive-container.is-menu-open .cp-mega-group > .wp-block-navigation__submenu-container {
		grid-column: 2 / 5;
	}
}

@media (prefers-reduced-motion: reduce) {
	.wp-site-blocks::before,
	.cp-top-gradient-hero::before {
		--cp-sitewide-gradient-angle: 12deg;
		width: 100vw;
		background-repeat: no-repeat;
		background-size: 100% 100%;
		transform: translateX(-50%);
		animation: none;
	}

	.cp-site-header .wp-block-navigation *,
	.cp-site-header .wp-block-navigation *::before,
	.cp-site-header .wp-block-navigation *::after {
		scroll-behavior: auto;
		transition-duration: 0.01ms !important;
	}
}

/* BEGIN native category archive composition */
/* Native Core-block content with route-owned Golden Apse decoration. */

body.category {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-fallback.webp");
	background-color: #f7f1e8;
	background-image: var(--cp-site-stone-texture);
}

.editor-styles-wrapper {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-fallback.webp");
}

body.category-bible-metrics {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-bible-metrics.webp");
}

body.category-bible-mysteries {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-bible-mysteries.webp");
}

body.category-bible-study {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-bible-study.webp");
}

body.category-bible-verses {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-bible-verses-v2.webp");
	--cp-category-medallion-size: 102%;
}

body.category-biblical-debates {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-biblical-debates.webp");
}

body.category-biblical-finance {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-biblical-finance.webp");
}

body.category-children {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-children.webp");
}

body.category-christian-art {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-christian-art.webp");
}

body.category-christian-education {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-christian-education.webp");
}

body.category-christian-history {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-christian-history.webp");
}

body.category-christian-news {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-christian-news.webp");
}

body.category-facts-stats {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-facts-stats.webp");
}

body.category-islam {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-islam.webp");
}

body.category-love-relationships {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-love-relationships.webp");
}

body.category-marriage {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-marriage.webp");
}

body.category-money {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-money.webp");
}

body.category-parenting {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-parenting.webp");
}

body.category-prayers {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-prayers.webp");
}

body.category-press {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-press.webp");
}

body.category-quizzes {
	--cp-category-medallion: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-quizzes.webp");
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive) {
	--cp-category-ink: #002b63;
	--cp-category-coral: #d8583f;
	--cp-category-paper: #fbf8f3;
	--cp-category-shadow: 0 15px 36px rgb(55 39 17 / 9%);
	background: var(--cp-category-paper);
	color: var(--cp-category-ink);
	overflow: clip;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive a) {
	text-decoration-thickness: 1px;
	text-underline-offset: 0.17em;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__masthead) {
	background-color: #f4ede3;
	background-image: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-masthead-surface-desktop-v4.webp");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	border-bottom: 0;
	isolation: isolate;
	min-height: clamp(37rem, 44.9vw, 41.75rem);
	padding: clamp(3.25rem, 5.05vw, 4.7rem) max(1.5rem, calc((100% - 65rem) / 2)) clamp(2.75rem, 3vw, 3.5rem);
	position: relative;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__masthead)::before {
	display: none;
}

@media (min-width: 1101px) {
	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__masthead)::after {
		background: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-top-cornice-desktop-v2.webp") center / 100% 100% no-repeat;
		box-shadow: none;
		content: "";
		height: 2rem;
		inset: 0 0 auto;
		pointer-events: none;
		position: absolute;
		z-index: 1;
	}
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__masthead-content) {
	margin-inline: auto;
	max-width: 59rem;
	position: relative;
	z-index: 1;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__medallion-frame) {
	align-items: center;
	background: rgb(244 239 231 / 88%);
	border: 1px solid rgb(145 110 61 / 27%);
	border-radius: 50%;
	box-shadow:
		inset 0 0 0 5px rgb(255 255 255 / 52%),
		inset 0 0 0 8px rgb(116 82 38 / 11%),
		0 5px 12px rgb(58 39 16 / 11%);
	display: grid;
	height: clamp(8.75rem, 11vw, 10.25rem);
	justify-items: center;
	margin: 0 auto clamp(2.75rem, 3.55vw, 3.3rem);
	padding: 0;
	position: relative;
	width: clamp(8.75rem, 11vw, 10.25rem);
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__medallion-frame)::before {
	border: 1px solid rgb(255 255 255 / 74%);
	border-radius: inherit;
	box-shadow: inset 0 0 7px rgb(80 55 25 / 15%);
	content: "";
	inset: 0.45rem;
	pointer-events: none;
	position: absolute;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__medallion) {
	background-color: #e9e1d5;
	background-image: var(--cp-category-medallion);
	background-position: center;
	background-repeat: no-repeat;
	background-size: var(--cp-category-medallion-size, 150%);
	border: 1px solid rgb(93 67 34 / 20%);
	border-radius: 50%;
	box-shadow: 0 1px 4px rgb(57 38 16 / 18%);
	height: 82%;
	margin: 0;
	position: relative;
	width: 82%;
	z-index: 1;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__title) {
	color: var(--cp-category-ink);
	font-family: var(--cp-heading);
	font-size: clamp(4.5rem, 7.2vw, 6.65rem);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 0.94;
	margin: 0 auto;
	max-width: 48rem;
	text-wrap: balance;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__scripture) {
	border-inline-start: 2px solid var(--cp-category-coral);
	color: #233f6f;
	font-family: var(--cp-body);
	font-size: clamp(1.28rem, 1.62vw, 1.5rem);
	font-style: italic;
	line-height: 1.54;
	margin: clamp(1.1rem, 1.8vw, 1.25rem) auto clamp(2.2rem, 3vw, 2.75rem);
	max-width: 37.5rem;
	padding-inline-start: 1.45rem;
	text-align: start;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__scripture strong) {
	font-weight: 400;
	white-space: nowrap;
}

@media (min-width: 541px) {
	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__scripture br) {
		display: none;
	}
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search) {
	margin: 0 auto;
	max-width: 59rem;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__inside-wrapper) {
	align-items: center;
	background: rgb(255 255 255 / 92%);
	border: 1px solid rgb(136 104 58 / 25%);
	border-radius: 0.75rem;
	box-shadow: var(--cp-category-shadow);
	min-height: 5.25rem;
	padding: 0.45rem;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__input) {
	background: transparent;
	border: 0;
	box-shadow: none;
	color: var(--cp-category-ink);
	font-family: var(--cp-body);
	font-size: 1.25rem;
	min-height: 4rem;
	padding: 0.7rem 1.45rem;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__input::placeholder) {
	color: #67625d;
	opacity: 1;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__button) {
	background: var(--cp-category-ink);
	border: 0;
	border-radius: 0.5rem;
	box-shadow: none;
	color: #fff;
	font-family: var(--cp-body);
	font-size: 1.12rem;
	min-height: 4rem;
	min-width: 8.875rem;
	padding: 0.7rem 1.45rem;
	text-transform: none;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__button:hover),
:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__button:focus-visible) {
	background: #123b77;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search :focus-visible) {
	outline: 3px solid var(--cp-focus);
	outline-offset: 3px;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__threshold) {
	background-color: #f7f2ea;
	background-image: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-divider-rails-desktop-v4.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	border: 0;
	height: 46px;
	margin: 0;
	position: relative;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__threshold)::before {
	background-image: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-divider-desktop-v3.webp");
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto 100%;
	content: "";
	display: block;
	inset-block: 0;
	left: 50%;
	mask-image: linear-gradient(90deg, transparent 0, #000 17%, #000 83%, transparent 100%);
	pointer-events: none;
	position: absolute;
	transform: translateX(-50%);
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 17%, #000 83%, transparent 100%);
	width: min(15rem, 100%);
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__threshold)::after {
	display: none;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles) {
	background: #fbf8f3;
	padding: 1.5rem max(1.5rem, calc((100% - 68.125rem) / 2)) clamp(4rem, 7vw, 6.5rem);
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles > .wp-block-query) {
	max-width: 68.125rem !important;
	width: 100%;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles .wp-block-post-template) {
	gap: 1rem;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles .wp-block-post-template > li > .wp-block-group) {
	background: #fff;
	border: 1px solid rgb(122 91 50 / 20%);
	border-radius: 0.55rem;
	box-shadow: 0 8px 20px rgb(54 37 16 / 6%);
	overflow: hidden;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__card-media img) {
	display: block;
	height: clamp(13.75rem, 16vw, 15rem);
	object-fit: cover;
	width: 100%;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles .wp-block-post-template > li > .wp-block-group > .wp-block-post-featured-image) {
	margin: 0;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__card-copy) {
	padding: 1rem 1.2rem 1.35rem;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles .wp-block-post-template .wp-block-post-title) {
	font-family: var(--cp-heading);
	font-size: clamp(1.35rem, 2vw, 1.8rem);
	font-weight: 400;
	line-height: 1.08;
	margin: 0;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__card-excerpt) {
	color: #6b6762;
	font-family: var(--cp-body);
	font-size: 1rem;
	line-height: 1.45;
	margin: 0;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__card-excerpt p) {
	margin: 0;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles .wp-block-post-template .wp-block-post-title a) {
	color: var(--cp-category-ink);
	text-decoration: none;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles .wp-block-post-template .wp-block-post-title a:hover),
:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles .wp-block-post-template .wp-block-post-title a:focus-visible) {
	text-decoration: underline;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles .wp-block-query-pagination) {
	margin-top: 2.5rem;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__membership) {
	background: var(--cp-category-ink);
	background-image: linear-gradient(135deg, rgb(255 255 255 / 6%), transparent 48%), var(--cp-site-stone-texture);
	color: #fff;
	padding: clamp(3rem, 6vw, 5rem) 1.5rem;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__membership h2) {
	color: #fff;
	font-family: var(--cp-heading);
	font-size: clamp(2rem, 3.5vw, 2.75rem);
	font-weight: 400;
	line-height: 1.05;
	margin: 0;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__membership p) {
	color: rgb(255 255 255 / 80%);
	font-family: var(--cp-body);
	font-size: 1.08rem;
	line-height: 1.55;
	margin: 0;
	max-width: 39rem;
}

:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__membership .wp-block-button__link) {
	background: #fff;
	border: 1px solid #fff;
	border-radius: 0.35rem;
	box-shadow: none;
	color: var(--cp-category-ink);
	font-family: var(--cp-body);
	font-weight: 600;
	padding: 0.85rem 1.25rem;
}

/* Compact landscape/tablet: preserve the desktop hierarchy and inline control. */
@media (min-width: 541px) and (max-width: 767px) {
	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__masthead) {
		min-height: 22rem;
		padding: 1.25rem 2.25rem 1.5rem;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__masthead)::before {
		background:
			repeating-conic-gradient(from -2deg at 50% 17%, transparent 0deg 4.9deg, rgb(119 87 46 / 6%) 5.02deg 5.18deg, transparent 5.34deg 10deg),
			radial-gradient(circle at 50% 17%, transparent 0 4.35rem, rgb(255 255 255 / 34%) 4.45rem 4.6rem, rgb(112 81 43 / 6%) 4.68rem 4.8rem, transparent 4.9rem 100%);
		mask-image: radial-gradient(ellipse 92% 74% at 50% 17%, #000 0 48%, rgb(0 0 0 / 54%) 70%, transparent 98%);
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__masthead-content) {
		max-width: 40rem;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__medallion-frame) {
		height: 5.5rem;
		margin-bottom: 1.25rem;
		width: 5.5rem;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__title) {
		font-size: 3.4rem;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__scripture) {
		font-size: 1.2rem;
		line-height: 1.3;
		margin: 0.75rem auto 1.25rem;
		max-width: 36rem;
		padding-inline-start: 1rem;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__inside-wrapper) {
		min-height: 3.75rem;
		padding: 0.35rem;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__input),
	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__button) {
		font-size: 1rem;
		min-height: 3rem;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__button) {
		min-width: 7rem;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__threshold) {
		height: 3rem;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles) {
		padding: 1rem 1.5rem 4rem;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles .wp-block-post-template) {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__card-media img) {
		height: 10.5rem;
	}
}

/* Narrow portrait phone: translate the approved 853 × 1844 raster. */
@media (max-width: 781px) {
	body.category-bible-verses {
		--cp-category-medallion-size: 100%;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__masthead) {
		background-image: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-masthead-surface-mobile-v4.webp");
		min-height: 0;
		padding: clamp(2.15rem, 8.7vw, 2.75rem) 6.3vw 1.9rem;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__masthead)::before {
		background:
			repeating-conic-gradient(from -2deg at 50% 15.5%, transparent 0deg 5.7deg, rgb(119 87 46 / 6%) 5.82deg 5.98deg, transparent 6.12deg 12deg),
			radial-gradient(circle at 50% 15.5%, transparent 0 10.6vw, rgb(255 255 255 / 34%) 10.8vw 11.25vw, rgb(112 81 43 / 6%) 11.45vw 11.8vw, transparent 12.1vw 100%);
		mask-image: radial-gradient(ellipse 118% 78% at 50% 15.5%, #000 0 48%, rgb(0 0 0 / 54%) 70%, transparent 98%);
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__medallion-frame) {
		height: clamp(5.5rem, 22.6vw, 7.25rem);
		margin-bottom: clamp(2.1rem, 8.7vw, 2.75rem);
		width: clamp(5.5rem, 22.6vw, 7.25rem);
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__title) {
		font-size: clamp(3rem, 11vw, 4rem);
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__scripture) {
		font-size: 1rem;
		line-height: 1.48;
		margin: 0.875rem auto 1.75rem;
		max-width: 60vw;
		padding-inline-start: 4vw;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__scripture strong) {
		white-space: normal;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__inside-wrapper) {
		align-items: stretch;
		background: transparent;
		border: 0;
		box-shadow: none;
		flex-direction: column;
		gap: 2.2vw;
		padding: 0;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__input) {
		background: rgb(255 255 255 / 92%);
		border: 1px solid rgb(136 104 58 / 25%);
		border-radius: 0.75rem;
		box-shadow: var(--cp-category-shadow);
		font-size: clamp(1.1rem, 3.8vw, 1.65rem);
		min-height: clamp(3.5rem, 14vw, 4.25rem);
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__search .wp-block-search__button) {
		font-size: 1.125rem;
		min-height: 3rem;
		padding-block: 0.5rem;
		width: 100%;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__threshold) {
		background-image: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-divider-rails-mobile-v4.webp");
		height: clamp(1.5rem, 6.6vw, 1.75rem);
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__threshold)::before {
		background-image: url("/wp-content/mu-plugins/christianpure-design-system/assets/images/category/category-divider-mobile-v3.webp");
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles) {
		padding: clamp(1.125rem, 4.6vw, 1.35rem) min(5vw, 2.2rem) 4rem;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles .wp-block-post-template) {
		gap: 1.35rem;
		grid-template-columns: minmax(0, 1fr) !important;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__card) {
		border-radius: min(2vw, 1rem);
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__card-media img) {
		aspect-ratio: 2 / 1;
		height: auto;
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__card-copy) {
		padding: clamp(1rem, 3.2vw, 1.4rem) clamp(1.2rem, 5vw, 2.2rem) clamp(1.3rem, 4vw, 1.75rem);
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__articles .wp-block-post-template .wp-block-post-title) {
		font-size: clamp(1.45rem, 4.7vw, 2rem);
	}

	:is(body.category, .editor-styles-wrapper) :where(.cp-category-archive__card-excerpt) {
		font-size: clamp(1rem, 3.55vw, 1.55rem);
	}
}

/* Site Editor canvas presentation; structural proof does not depend on it. */
.editor-styles-wrapper {
	background-color: #ded6ca;
	background-image: var(--cp-site-stone-texture);
	padding-block: 2rem;
}

.editor-styles-wrapper :where(.cp-category-archive) {
	box-shadow: 0 18px 60px rgb(13 36 64 / 16%);
	margin-inline: auto;
	max-width: 90rem;
}

.editor-styles-wrapper :where(.cp-category-archive__masthead) {
	min-height: 0;
	padding-block: 3rem;
}

.editor-styles-wrapper :where(.cp-category-archive__masthead-content) {
	max-width: 48rem;
}

.editor-styles-wrapper :where(.cp-category-archive__articles) {
	padding-block: 2.5rem;
}

/* END native category archive composition */

/* Universal footer mosaic. Option A: Limestone Latin Cross. 3000×60, centered, no-repeat. */
.cp-universal-footer-mosaic {
	box-sizing: border-box;
	width: 100%;
	max-width: none !important;
	min-height: 78px;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible;
	background-color: transparent !important;
	background-image: url("../images/footer/christianpure-footer-mosaic-limestone-latin-cross-3000x78.png") !important;
	background-position: 50% 100% !important;
	background-repeat: no-repeat !important;
	background-size: 3000px 78px !important;
}

/* Homepage Golden Apse still owns a page-level band; reuse Option A so mosaics match. */
.cp-golden-footer-mosaic {
	box-sizing: border-box;
	width: 100%;
	max-width: none !important;
	min-height: 60px !important;
	height: 60px;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible;
	border: 0 !important;
	background-color: transparent !important;
	background-image: url("../images/footer/christianpure-footer-mosaic-limestone-latin-cross-3000x78.png") !important;
	background-position: 50% 100% !important;
	background-repeat: no-repeat !important;
	background-size: 3000px 78px !important;
}

body:has(.cp-universal-footer-mosaic) .cp-golden-footer-mosaic,
body:has(.cp-universal-footer) .cp-golden-footer {
	display: none !important;
	height: 0 !important;
	min-height: 0 !important;
	overflow: hidden !important;
	border: 0 !important;
	background: none !important;
}

/*
 * Production Global Styles still contains a paper-footer restyle for every
 * primary-background template-part footer. Keep the site-wide footer navy,
 * let Gutenberg own the wordmark and column titles, and do not flatten the
 * logo with an invert filter.
 */
body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color {
	overflow: visible;
	width: 100%;
	max-width: none !important;
	color: #fffaf1;
	background: #002159 !important;
}

body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color > :not(.cp-universal-footer-mosaic) {
	background: transparent;
}

body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color::before {
	content: none !important;
	display: none !important;
	height: 0 !important;
	background: none !important;
}

body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color > .wp-block-group > .wp-block-group.is-layout-flex:first-child {
	border-bottom-color: rgb(255 250 241 / 18%);
}

body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color figure.wp-block-image {
	width: auto !important;
	max-width: 100%;
	height: auto !important;
}

body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color .ns-button {
	--ns-btn-color: transparent !important;
	--ns-icon-color: #fffaf1 !important;
	box-shadow: inset 0 0 0 1px rgb(255 250 241 / 28%);
}

body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color .is-layout-grid,
body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color .is-layout-grid p,
body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color .is-layout-grid a,
body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color .is-layout-grid > .wp-block-group:not(:last-child) > p + p,
body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color .is-layout-grid > .wp-block-group:not(:last-child) > p + p a,
body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color .is-layout-grid > .wp-block-group:last-child p,
body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color .is-layout-grid > .wp-block-group:last-child a {
	color: inherit !important;
}

body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color .is-layout-grid > .wp-block-group > p:first-child,
body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color .is-layout-grid > .wp-block-group > p:first-child a {
	font-family: inherit !important;
	font-size: inherit !important;
	line-height: inherit !important;
}

/* Keep FluentCommunity portal, checkout, cart, and account off the Golden Apse sky. */
body[data-route] .wp-site-blocks::before,
body.woocommerce-checkout .wp-site-blocks::before,
body.woocommerce-cart .wp-site-blocks::before,
body.woocommerce-account .wp-site-blocks::before {
	display: none !important;
	animation: none !important;
}

/*
 * Production Global Styles still contains an older 2-column dropdown rule for
 * every header submenu. These selectors beat that Additional CSS so Topics
 * keeps the 12-column mega menu.
 */
@media (min-width: 1101px) {
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container {
		display: grid !important;
		grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
		top: 100% !important;
		width: min(1460px, calc(100vw - 3.5rem)) !important;
		min-width: 0 !important;
		padding: clamp(2rem, 3vw, 3.2rem) clamp(1.75rem, 3.3vw, 3.25rem) 1.35rem !important;
		gap: 0 clamp(1rem, 2vw, 2rem) !important;
		border-radius: 0 !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container * {
		pointer-events: none !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation-item__content:hover ~ .wp-block-navigation__submenu-container,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-icon:hover ~ .wp-block-navigation__submenu-container,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child.cp-mega-open > .wp-block-navigation__submenu-container,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child:focus-within > .wp-block-navigation__submenu-container,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-icon[aria-expanded="true"] ~ .wp-block-navigation__submenu-container {
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		transform: translate(-50%, 0) !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation-item__content:hover ~ .wp-block-navigation__submenu-container *,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-icon:hover ~ .wp-block-navigation__submenu-container *,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child.cp-mega-open > .wp-block-navigation__submenu-container *,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child:focus-within > .wp-block-navigation__submenu-container *,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-icon[aria-expanded="true"] ~ .wp-block-navigation__submenu-container * {
		pointer-events: auto !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item.cp-mega-intro {
		grid-column: 1 / -1 !important;
		width: auto !important;
		padding: 0 !important;
		margin: 0 0 1.25rem !important;
		border: 0 !important;
		background: transparent !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item.cp-mega-intro > .wp-block-navigation-item__content,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item.cp-mega-intro .wp-block-navigation-item__label {
		display: block !important;
		width: fit-content !important;
		padding: 0 !important;
		color: var(--cp-ink) !important;
		font-family: "Tiempos Headline", var(--cp-heading), Georgia, serif !important;
		font-size: clamp(1.75rem, 2.2vw, 2.35rem) !important;
		font-weight: 400 !important;
		letter-spacing: 0 !important;
		line-height: 1.05 !important;
		text-decoration: none !important;
		text-transform: none !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item.cp-mega-intro::after {
		color: #31384f !important;
		font-family: var(--cp-body) !important;
		font-size: 1rem !important;
		font-weight: 400 !important;
		letter-spacing: 0 !important;
		line-height: 1.35 !important;
		text-transform: none !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item.cp-mega-group > .wp-block-navigation-item__content,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item.cp-mega-group > .wp-block-navigation-item__content > .wp-block-navigation-item__label {
		color: var(--cp-ink) !important;
		font-family: "Tiempos Headline", var(--cp-heading), Georgia, serif !important;
		font-size: 1.15rem !important;
		font-weight: 400 !important;
		letter-spacing: 0 !important;
		line-height: 1.2 !important;
		text-align: center !important;
		text-decoration: none !important;
		text-transform: none !important;
		white-space: normal !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item.cp-mega-group > .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content,
	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item.cp-mega-group > .wp-block-navigation__submenu-container > .wp-block-navigation-item .wp-block-navigation-item__label {
		color: var(--cp-ink) !important;
		font-family: var(--cp-body) !important;
		font-size: 0.9375rem !important;
		font-weight: 400 !important;
		letter-spacing: 0 !important;
		line-height: 1.3 !important;
		text-align: left !important;
		text-decoration: none !important;
		text-transform: none !important;
		white-space: normal !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item.cp-mega-group {
		display: flex !important;
		grid-column: span 3 !important;
		width: auto !important;
		flex-direction: column !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item.cp-mega-group > .wp-block-navigation__submenu-icon {
		display: none !important;
	}

	body .wp-site-blocks header.wp-block-template-part .cp-site-header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.cp-mega-trigger.has-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item.cp-mega-group > .wp-block-navigation__submenu-container {
		position: static !important;
		display: flex !important;
		flex-direction: column !important;
		width: auto !important;
		min-width: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: none !important;
		visibility: inherit;
		opacity: inherit;
		pointer-events: inherit;
	}
}

body .wp-site-blocks footer.wp-block-template-part {
	overflow: visible;
}

body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color p {
	white-space: normal;
	overflow-wrap: anywhere;
	min-width: 0;
}

@media (max-width: 781px) {
	body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color .is-layout-flex:first-child {
		flex-wrap: wrap !important;
		align-items: flex-start;
		row-gap: 1rem;
	}

	body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color .is-layout-grid {
		grid-template-columns: 1fr !important;
		gap: 1.1rem !important;
	}

	body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color a[href*="/bible-verses"],
	body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color a[href*="bible-verses"],
	body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color a[href*="/resources"],
	body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color a[href$="/about/"],
	body .wp-site-blocks footer.wp-block-template-part .cp-universal-footer.has-primary-background-color a[href$="/about"] {
		display: none !important;
	}
}

/* Paywall meter CTA — match site navy/gold buttons, not a black rectangle. */
.leaky-paywall-content-container a.lp-button,
.leaky-paywall-content-container .leaky_paywall_message_wrap a,
.pww-cta a,
.paywall-cta a,
[class*="paywall"] .wp-element-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0.7rem 1.35rem;
	border: 1px solid #002b63;
	border-radius: 3px;
	background: linear-gradient(135deg, #001f50, #063a78);
	color: #fffaf1 !important;
	font-family: var(--cp-body);
	font-size: 1rem;
	font-weight: 500;
	text-decoration: none;
	box-shadow: 0 8px 18px rgb(0 33 89 / 16%);
}
