/* ==========================================================================
   UUJMCA Theme — Custom Styles
   ========================================================================== */


/* --------------------------------------------------------------------------
   Page fade in
   -------------------------------------------------------------------------- */

@keyframes fadeIn {
	from { opacity: 0; }
	to   { opacity: 1; }
}

.wp-site-blocks {
	animation: fadeIn 0.4s ease-in;
}

/* --------------------------------------------------------------------------
   Global colors & typography
   -------------------------------------------------------------------------- */


/* Palette color classes — front end + editor */
.has-primary-color,
.editor-styles-wrapper .has-primary-color { color: #325BFF !important; }
.has-primary-background-color,
.editor-styles-wrapper .has-primary-background-color { background-color: #325BFF !important; }

.has-primary-dark-color,
.editor-styles-wrapper .has-primary-dark-color { color: #152669 !important; }
.has-primary-dark-background-color,
.editor-styles-wrapper .has-primary-dark-background-color { background-color: #152669 !important; }

.has-primary-light-color,
.editor-styles-wrapper .has-primary-light-color { color: #F0F3FF !important; }
.has-primary-light-background-color,
.editor-styles-wrapper .has-primary-light-background-color { background-color: #F0F3FF !important; }

.has-accent-color,
.editor-styles-wrapper .has-accent-color { color: #FF7029 !important; }
.has-accent-background-color,
.editor-styles-wrapper .has-accent-background-color { background-color: #FF7029 !important; }

.has-accent-light-color,
.editor-styles-wrapper .has-accent-light-color { color: #FF9E6F !important; }
.has-accent-light-background-color,
.editor-styles-wrapper .has-accent-light-background-color { background-color: #FF9E6F !important; }

.has-background-color,
.editor-styles-wrapper .has-background-color { color: #FFFAF4 !important; }
.has-background-background-color,
.editor-styles-wrapper .has-background-background-color { background-color: #FFFAF4 !important; }

.has-surface-color,
.editor-styles-wrapper .has-surface-color { color: #FFFFFF !important; }
.has-surface-background-color,
.editor-styles-wrapper .has-surface-background-color { background-color: #FFFFFF !important; }

.has-dark-color,
.editor-styles-wrapper .has-dark-color { color: #000000 !important; }
.has-dark-background-color,
.editor-styles-wrapper .has-dark-background-color { background-color: #000000 !important; }

.has-text-muted-color,
.editor-styles-wrapper .has-text-muted-color { color: #888888 !important; }

.has-border-color,
.editor-styles-wrapper .has-border-color { color: #E8E4DE !important; }
.has-border-background-color,
.editor-styles-wrapper .has-border-background-color { background-color: #E8E4DE !important; }

/* --------------------------------------------------------------------------
   Buttons
   -------------------------------------------------------------------------- */

/* Base — pill shape */
.wp-block-button__link,
.editor-styles-wrapper .wp-block-button__link {
	border-radius: 999px !important;
	font-weight: 600 !important;
	padding-left: 3rem !important;
	padding-right: 3rem !important;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease !important;
}

/* Large buttons — Our Story, About Us, Learn More */
.section-our-story .wp-block-button__link,
.section-who-we-are .wp-block-button__link,
.section-what-we-work-for .wp-block-button__link {
	font-size: 1.4rem !important;
	padding-top: 0.75rem !important;
	padding-bottom: 0.75rem !important;
}

/* Primary — clear bg, orange outline, black text */
.wp-block-button:not([class*="is-style"]) .wp-block-button__link,
.wp-block-button.is-style-fill .wp-block-button__link,
.editor-styles-wrapper .wp-block-button:not([class*="is-style"]) .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-fill .wp-block-button__link {
	background-color: transparent !important;
	color: #000000 !important;
	border: 2px solid #FF7029 !important;
}
.wp-block-button:not([class*="is-style"]) .wp-block-button__link:hover,
.wp-block-button.is-style-fill .wp-block-button__link:hover,
.editor-styles-wrapper .wp-block-button:not([class*="is-style"]) .wp-block-button__link:hover,
.editor-styles-wrapper .wp-block-button.is-style-fill .wp-block-button__link:hover {
	background-color: #FF7029 !important;
	color: #ffffff !important;
	border-color: #FF7029 !important;
}

/* Secondary — clear bg, blue outline, black text */
.wp-block-button.is-style-outline .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-outline .wp-block-button__link {
	background-color: transparent !important;
	color: #325BFF !important;
	border: 2px solid #325BFF !important;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.editor-styles-wrapper .wp-block-button.is-style-outline .wp-block-button__link:hover {
	background-color: #325BFF !important;
	color: #ffffff !important;
	border-color: #325BFF !important;
}

/* Tertiary — clear bg, blue outline, orange text */
.wp-block-button.is-style-tertiary .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-tertiary .wp-block-button__link {
	background-color: transparent !important;
	color: #325BFF !important;
	border: 2px solid #FF7029 !important;
}
.wp-block-button.is-style-tertiary .wp-block-button__link:hover,
.editor-styles-wrapper .wp-block-button.is-style-tertiary .wp-block-button__link:hover {
	background-color: #FF7029 !important;
	color: #ffffff !important;
	border-color: #325BFF !important;
}

/* --------------------------------------------------------------------------
   Navigation — hide dropdown caret/chevron
   -------------------------------------------------------------------------- */

.site-header {
	background-color: #ffffff;
	padding: 1rem 2rem;
}

.site-header .wp-block-button__link {
	font-size: 1rem !important;
}


@media screen and (min-width: 961px) and (max-width: 1280px) {
	.site-header {
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
	}
}

@media screen and (max-width: 960px) {
	/* Hide desktop nav, show only hamburger */
	.site-header .wp-block-navigation__container,
	.site-header .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation-item {
		display: none !important;
	}
	/* Hide donate everywhere outside the open overlay */
	.site-header .wp-block-buttons,
	.site-header .wp-block-navigation .wp-block-buttons {
		display: none !important;
	}
	/* Hamburger button — custom icon */
	.site-header .wp-block-navigation__responsive-container-open {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		position: fixed !important;
		top: 1.4rem !important;
		right: 2rem !important;
		width: 49px !important;
		height: 49px !important;
		padding: 0 !important;
		background: none !important;
		border: none !important;
		cursor: pointer !important;
		transform: none !important;
		margin: 0 !important;
		z-index: 200 !important;
	}
	.site-header .wp-block-navigation__responsive-container-open svg {
		display: none !important;
	}
	.site-header .wp-block-navigation__responsive-container-open::before {
		content: '';
		display: block;
		width: 49px;
		height: 35px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='49' height='35' viewBox='0 0 49 35'%3E%3Cline x1='0' y1='3' x2='49' y2='3' stroke='%23000' stroke-width='4' stroke-linecap='round'/%3E%3Cline x1='0' y1='17.5' x2='49' y2='17.5' stroke='%23000' stroke-width='4' stroke-linecap='round'/%3E%3Cline x1='0' y1='32' x2='49' y2='32' stroke='%23000' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-size: contain;
	}
	/* Overlay covers full screen */
	.site-header .wp-block-navigation__responsive-container.is-menu-open {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 100vw !important;
		height: 100vh !important;
		z-index: 9999 !important;
		overflow-y: auto !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		padding: 2rem !important;
		box-sizing: border-box !important;
	}
	/* Close button always fixed so it takes no flow space; hidden when overlay closed */
	.site-header .wp-block-navigation__responsive-container-close {
		position: fixed !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}
	.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
		visibility: visible !important;
		pointer-events: auto !important;
	}
	/* Close button — custom icon, same position as hamburger */
	.site-header .wp-block-navigation__responsive-container-close {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		position: fixed !important;
		top: 1.4rem !important;
		right: 2rem !important;
		width: 44px !important;
		height: 44px !important;
		padding: 0 !important;
		background: none !important;
		border: none !important;
		cursor: pointer !important;
		z-index: 10000 !important;
		transform: none !important;
	}
	.site-header .wp-block-navigation__responsive-container-close svg {
		display: none !important;
	}
	.site-header .wp-block-navigation__responsive-container-close::before {
		content: '';
		display: block;
		width: 49px;
		height: 49px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='49' height='49' viewBox='0 0 49 49'%3E%3Cline x1='3' y1='3' x2='46' y2='46' stroke='%23000' stroke-width='4' stroke-linecap='round'/%3E%3Cline x1='46' y1='3' x2='3' y2='46' stroke='%23000' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-size: contain;
	}
	/* Nav items */
	.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		padding-top: 0 !important;
		gap: 0 !important;
		width: 100% !important;
	}
	.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
		width: 100% !important;
		display: block !important;
	}
	.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
		font-size: 1.5rem !important;
		text-align: left !important;
		padding-right: 0 !important;
		padding-top: 0.25rem !important;
		padding-bottom: 0.25rem !important;
		margin-right: auto !important;
	}
	/* Show donate inside overlay, left-aligned */
	.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-buttons {
		display: flex !important;
		justify-content: flex-start !important;
		width: 100% !important;
		margin-top: 1rem !important;
	}
	/* Submenus */
	.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
		position: static !important;
		min-width: unset !important;
		width: 100% !important;
		box-shadow: none !important;
		border: none !important;
		align-items: flex-start !important;
		padding-left: 0 !important;
		padding-top: 0 !important;
	}
	.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		font-size: 1.1rem !important;
		padding-left: 1.5rem !important;
	}
}

header.wp-block-template-part {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	transform: translateY(0);
	transition: transform 0.3s ease;
}

header.wp-block-template-part.header-hidden {
	transform: translateY(-100%);
}

.wp-site-blocks > main {
	padding-top: var(--header-height, 80px);
}

.header-logo img {
	width: 300px;
	max-width: 300px;
	height: auto;
}

.wp-block-navigation .wp-block-navigation__submenu-icon {
	display: none;
}

.wp-block-navigation .wp-block-navigation-item__content {
	font-weight: 400 !important;
	color: #000000 !important;
	cursor: pointer;
	transition: color 0.15s ease;
	padding-right: 3rem !important;
}

.wp-block-navigation .wp-block-navigation-item__content:hover,
.wp-block-navigation .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content {
	color: #325BFF !important;
}

.wp-block-navigation .wp-block-navigation__submenu-container {
	border: none !important;
	box-shadow: none !important;
	padding-top: 1em;
	left: -1em !important;
	padding-left: 1em !important;
	animation: fadeIn 0.1s ease-in;
}

.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding-left: 0 !important;
}

/* --------------------------------------------------------------------------
   Headings
   -------------------------------------------------------------------------- */

h1, .editor-styles-wrapper h1, .wp-block-heading[data-level="1"] { font-size: 4.8rem !important;  font-weight: 700 !important; }
h2, .editor-styles-wrapper h2, .wp-block-heading[data-level="2"] { font-size: 3.2rem !important;  font-weight: 600 !important; }
h3, .editor-styles-wrapper h3, .wp-block-heading[data-level="3"] { font-size: 1.6rem !important;  font-weight: 600 !important; }
h4, .editor-styles-wrapper h4, .wp-block-heading[data-level="4"] { font-size: 1.3rem !important;  font-weight: 600 !important; }
h5, .editor-styles-wrapper h5, .wp-block-heading[data-level="5"] { font-size: 1.2rem !important;  font-weight: 600 !important; }
h6, .editor-styles-wrapper h6, .wp-block-heading[data-level="6"] { font-size: 1rem !important;    font-weight: 600 !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; }

/* --------------------------------------------------------------------------
   Cover hero heading
   -------------------------------------------------------------------------- */

.cover-hero {
	min-height: 80vh;
}

.cover-heading {
	font-size: 7rem !important;
	font-weight: 900 !important;
	color: #ffffff !important;
	max-width: 1200px;
}

@media screen and (max-width: 900px) {
	.cover-heading {
		font-size: 5rem !important;
	}

	.cover-hero.is-position-bottom-left {
		align-items: flex-start;
	}
}

/* --------------------------------------------------------------------------
   Offset highlight effect
   -------------------------------------------------------------------------- */

mark.highlight-offset {
	color: inherit;
	background-color: transparent;
	background-image: linear-gradient(#FF7029, #FF7029);
	background-repeat: no-repeat;
	background-size: 100% 55%;
	background-position: -0.1em 70%;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
	padding: 0 0 0.03em 0.2em !important;
}

/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */

.site-footer {
	background-color: #152669;
	color: #ffffff;
	padding: 3rem 2rem 1.5rem;
}

.site-footer p {
	color: #ffffff;
	margin-block: 0.2em;
	font-size: 0.95rem;
}

.site-footer a {
	color: #ffffff;
}

.site-footer a:hover {
	color: #FF9E6F;
}

.footer-label {
	color: #FF9E6F !important;
	font-size: 0.7rem !important;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-weight: 600;
	margin-block-end: 0.1em !important;
}

.site-footer .wp-block-columns.footer-columns.is-layout-flex {
	padding-bottom: 2rem;
	margin-bottom: 1.25rem !important;
	align-items: stretch !important;
}

.site-footer .wp-block-columns.footer-columns > .wp-block-column {
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	align-items: center !important;
}

@media screen and (max-width: 782px) {
	.footer-columns {
		display: grid !important;
		grid-template-columns: 1fr 1fr !important;
		flex-wrap: unset !important;
		gap: 1rem !important;
	}
	/* Left col: address (1), tax id (2) */
	.footer-columns > .wp-block-column:nth-child(1) { grid-column: 1; grid-row: 1; }
	.footer-columns > .wp-block-column:nth-child(2) { grid-column: 1; grid-row: 2; }
	/* Right col: email (3), phone (4) */
	.footer-columns > .wp-block-column:nth-child(3) { grid-column: 2; grid-row: 1; }
	.footer-columns > .wp-block-column:nth-child(4) { grid-column: 2; grid-row: 2; }
	/* Socials: full width below, centered */
	.footer-columns > .wp-block-column:nth-child(5) { grid-column: 1 / -1; grid-row: 3; padding: 4rem 0 0; }
	.footer-columns > .wp-block-column:nth-child(5) .footer-social { width: 100%; justify-content: center; }

	/* Left-align within each grid cell */
	.site-footer .wp-block-columns.footer-columns > .wp-block-column {
		align-items: flex-start !important;
	}
}

.site-footer .footer-columns .wp-block-column p {
	text-align: left;
}

.footer-social {
	display: flex;
	justify-content: center;
	gap: 1rem;
}

.footer-social a {
	color: #ffffff;
	transition: color 0.15s ease;
	display: flex;
	align-items: center;
}

.footer-social a:hover {
	color: #FF9E6F;
}

.footer-bottom {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.25rem;
}

.footer-copyright,
.footer-credit {
	font-size: 0.75rem !important;
	color: rgba(255,255,255,0.55) !important;
	margin: 0 !important;
	text-align: center;
}

.footer-credit a {
	color: rgba(255,255,255,0.55) !important;
	text-decoration: none;
}

.footer-credit a:hover {
	color: #FF9E6F !important;
}

/* --------------------------------------------------------------------------
   Front page sections
   -------------------------------------------------------------------------- */

.section-stats {
	padding: 4rem 2rem;
	max-width: 1200px !important;
	margin-inline: auto !important;
	box-sizing: border-box;
}

.section-take-action {
	padding: 12rem 2rem;
	box-sizing: border-box;
}

.section-our-story {
	padding: 4rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
	width: 100%;
	box-sizing: border-box;
	margin-bottom: 0 !important;
	margin-top: 0 !important;
}

.section-newsletter {
	padding: 4rem 2rem;
	width: 100%;
	box-sizing: border-box;
	margin-bottom: 0 !important;
	margin-top: 0 !important;
}

/* Kill gap between newsletter and footer */
.wp-site-blocks > footer.wp-block-template-part {
	margin-block-start: 0 !important;
}

.section-our-story > *,
.section-our-story > .is-layout-flow > * {
	max-width: 1200px;
	margin-inline: auto;
	width: 100%;
	box-sizing: border-box;
}

.section-take-action .wp-block-columns {
	gap: 1.5rem !important;
	align-items: stretch !important;
}

.section-take-action .wp-block-column {
	margin: 0 !important;
}

.section-take-action .wp-block-query,
.section-take-action .campaign-card,
.section-take-action .program-card {
	height: 100%;
}


.section-split {
	max-width: 100% !important;
	width: 100% !important;
}

.section-who-we-are,
.section-what-we-work-for {
	padding: 0 !important;
	margin: 0 !important;
}

/* Who We Are: content is on the right half — push content left toward center */
.section-who-we-are .split-content {
	padding-top: 16rem !important;
	padding-bottom: 16rem !important;
	padding-right: max(3rem, calc((100vw - 1200px) / 2 + 3rem)) !important;
}

.section-who-we-are .split-content p {
	font-size: 1.6em;
}

/* What We Work For: content is on the left half — push content right toward center */
.section-what-we-work-for .split-content {
	padding-top: 16rem !important;
	padding-bottom: 16rem !important;
	padding-left: max(3rem, calc((100vw - 1200px) / 2 + 3rem)) !important;
	margin-left: auto !important;
	width: 100%;
}

/* Campaign card */
.campaign-card {
	display: flex;
	flex-direction: column;
	gap: 0;
	--wp--style--block-gap: 0 !important;
}

.campaign-card .wp-block-post-title,
.campaign-card .wp-block-post-featured-image {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.campaign-card > * + * {
	margin-block-start: 0 !important;
}

/* Program card */
.program-card {
	display: flex;
	flex-direction: column;
	gap: 0;
	--wp--style--block-gap: 0 !important;
}

.program-card .wp-block-post-title,
.program-card .wp-block-post-featured-image,
.program-card .wp-block-post-date,
.program-card .wp-block-post-excerpt {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}

.program-card > * + * {
	margin-block-start: 0 !important;
}

.program-card__actions {
	display: flex !important;
	align-items: center !important;
	gap: 1rem !important;
	margin-top: 0.5rem !important;
}

.program-card__actions .wp-block-buttons {
	margin: 0 !important;
}

.program-card__link {
	margin: 0 !important;
}

.program-card__link a {
	color: #325BFF !important;
	text-decoration: none;
	font-weight: 600;
}

.program-card__link a:hover {
	color: #FF7029 !important;
}

.program-card__title {
	font-size: 1.3rem !important;
	font-weight: 700 !important;
	margin-bottom: 0 !important;
}

.program-card__body {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 1.5rem !important;
	align-items: start !important;
}

.program-card__left {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.5rem !important;
}

.program-card__right {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.75rem !important;
}

.campaign-card .wp-block-post-featured-image,
.campaign-card .wp-block-post-featured-image figure,
.program-card__image .wp-block-post-featured-image,
.program-card__image .wp-block-post-featured-image figure {
	aspect-ratio: 1 / 1 !important;
	overflow: hidden !important;
	width: 100% !important;
}

.campaign-card__image img,
.program-card__image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	display: block !important;
}

@media screen and (max-width: 900px) {
	.wp-block-buttons {
		justify-content: center !important;
	}

	.wp-block-heading {
		text-align: center !important;
	}

	.section-take-action .wp-block-columns {
		flex-wrap: wrap !important;
	}
	.section-take-action .wp-block-column:nth-child(1),
	.section-take-action .wp-block-column:nth-child(2) {
		flex-basis: calc(50% - 0.75rem) !important;
		max-width: calc(50% - 0.75rem) !important;
	}
	.section-take-action .wp-block-column:nth-child(3) {
		flex-basis: 100% !important;
		max-width: 100% !important;
	}
	.program-card__body {
		grid-template-columns: 1fr !important;
	}
}

/* Section headings — wavy orange underline */
.section-take-action h2,
.section-who-we-are h2,
.section-what-we-work-for h2,
.section-newsletter h2 {
	display: inline-block;
	text-decoration-line: underline !important;
	text-decoration-style: wavy !important;
	text-decoration-color: #325BFF !important;
	text-decoration-thickness: 3px !important;
	text-underline-offset: 6px !important;
	margin-bottom: 0 !important;
}

.section-newsletter h2 + p,
.section-newsletter .wp-block-heading + p {
	margin-top: 0 !important;
	margin-block-start: 0 !important;
}

/* Take action card titles — shared size, orange, no underline */
.section-take-action .wp-block-post-title,
.section-take-action .wp-block-query h2,
.section-take-action .wp-block-query h3 {
	font-size: 2.4rem !important;
	text-decoration: none !important;
}

.section-take-action .wp-block-post-title a,
.section-take-action .wp-block-post-title {
	color: #FF7029 !important;
}

/* Split sections — full-bleed image half */
.section-split {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	min-height: 500px;
	padding: 0 !important;
	margin: 0 !important;
	gap: 0 !important;
	row-gap: 0 !important;
	column-gap: 0 !important;
}

.section-split > * {
	margin: 0 !important;
}

.section-split .split-image,
.section-split .wp-block-cover.split-image {
	min-height: 400px !important;
	height: 100% !important;
	background-color: transparent !important;
}

.section-split .split-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-left: 3rem !important;
	padding-right: 3rem !important;
}

.section-who-we-are,
.section-what-we-work-for {
	background-color: #F0F3FF;
}

@media screen and (max-width: 782px) {
	.section-split {
		grid-template-columns: 1fr !important;
	}
	.section-split .split-image,
	.section-split .wp-block-cover.split-image {
		min-height: 280px;
	}
	/* Who We Are: image(1), text(2) — already correct order */
	/* What We Work For: text is first in HTML, image second.
	   On mobile we want: text(3→1), image(4→2) so image comes after — no reorder needed.
	   But visually we want image on top, so push image before text: */
	.section-what-we-work-for .wp-block-cover.split-image {
		order: -1;
	}
}

.issue-list {
	list-style: none !important;
	padding: 0 !important;
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 0.5rem 1.5rem !important;
	margin-bottom: 1.5rem !important;
}

.issue-list li {
	font-size: 2.2em;
	font-weight: 800;
	color: #000000;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

.issue-list li:nth-child(1) { text-decoration-color: #FF0000; }
.issue-list li:nth-child(2) { text-decoration-color: #FF7029; }
.issue-list li:nth-child(3) { text-decoration-color: #FFD700; }
.issue-list li:nth-child(4) { text-decoration-color: #22A855; }
.issue-list li:nth-child(5) { text-decoration-color: #325BFF; }
.issue-list li:nth-child(6) { text-decoration-color: #8B00FF; }

.issue-list a {
	color: #FF7029 !important;
	text-decoration: none;
}

.issue-list a:hover {
	color: #325BFF !important;
}

/* Stats bar */
.section-stats {
	background-color: #FFFAF4;
	text-align: center;
	font-size: 1.5rem;
	font-weight: 600;
	padding-top: 20rem;
	padding-bottom: 20rem;
}

.section-stats p {
	font-size: 3rem;
	font-weight: 600;
}

/* Our story */
.section-our-story {
	background-color: #ffffff;
	text-align: center;
	padding-top: 20rem;
	padding-bottom: 20rem;
}


/* Newsletter */
.section-newsletter {
	background-color: #F0F3FF;
}


.newsletter-form {
	margin-top: 1.5rem;
}

.newsletter-fields {
	display: flex;
	flex-wrap: nowrap;
	gap: 1rem;
	align-items: flex-end;
}

.newsletter-field {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	flex: 1;
	min-width: 200px;
}

.newsletter-field label {
	font-size: 1.1rem;
	font-weight: 600;
	color: #484848;
}

.newsletter-field input {
	padding: 0.75rem 1rem;
	border: 1px solid #E8E4DE;
	border-radius: 4px;
	font-size: 1.1rem;
	font-family: inherit;
	background: #ffffff;
	width: 100%;
	box-sizing: border-box;
}

@media screen and (max-width: 960px) {
	.newsletter-fields {
		flex-wrap: wrap;
	}
	.newsletter-field {
		width: 100%;
	}
}

.newsletter-submit {
	padding: 1rem 3rem;
	background-color: transparent;
	color: #325BFF;
	border: 2px solid #325BFF;
	border-radius: 999px;
	font-size: 1.4rem;
	font-weight: 600;
	font-family: inherit;
	cursor: pointer;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
	white-space: nowrap;
}

.newsletter-submit:hover {
	background-color: #325BFF;
	color: #ffffff;
}

/* --------------------------------------------------------------------------
   Sticky footer — push footer to bottom when content is short
   -------------------------------------------------------------------------- */

.wp-site-blocks {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

body.admin-bar .wp-site-blocks {
	min-height: calc(100vh - 32px);
}

@media screen and (max-width: 782px) {
	body.admin-bar .wp-site-blocks {
		min-height: calc(100vh - 46px);
	}
}

.wp-site-blocks > main {
	flex: 1;
	margin-block-start: 0;
	margin-block-end: 0 !important;
}

/* --------------------------------------------------------------------------
   Page template
   -------------------------------------------------------------------------- */

.page-hero.wp-block-cover {
	width: 100% !important;
	max-width: 100% !important;
	min-height: 400px !important;
	margin: 0 !important;
	background-color: #FFE8D6 !important;
}

.page-hero .wp-block-cover__inner-container {
	text-align: center !important;
	position: absolute !important;
	bottom: 4rem !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
}

.page-hero__title.wp-block-post-title {
	display: inline !important;
	background-color: #ffffff;
	color: #000000 !important;
	padding: 0.2em 0.5em;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
	font-size: 3rem !important;
	line-height: 1.6 !important;
}

.page-content {
	padding-top: 4rem !important;
	padding-bottom: 8rem !important;
	max-width: 1200px;
	margin-inline: auto;
	padding-left: 2rem;
	padding-right: 2rem;
	box-sizing: border-box;
}

/* --------------------------------------------------------------------------
   Leadership grid
   -------------------------------------------------------------------------- */

.leadership-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 2.5rem;
	margin-top: 3rem;
}

.leader-card {
	display: flex;
	flex-direction: column;
}

.leader-card__image {
	aspect-ratio: 1 / 1;
	overflow: hidden;
	margin-bottom: 1rem;
}

.leader-card__photo {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.leader-card__body {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.leader-card__name {
	font-size: 1.2rem;
	font-weight: 700;
	margin: 0;
}

.leader-card__position {
	font-size: 1rem;
	font-weight: 600;
	color: #325BFF;
	margin: 0;
}

.leader-card__serve {
	font-size: 0.9rem;
	color: #666;
	margin: 0;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.leader-card__bio {
	font-size: 0.95rem;
	margin: 0.5rem 0 0;
	color: #333;
}

.leader-card__social {
	display: flex;
	gap: 0.75rem;
	margin-top: 0.75rem;
}

.leader-card__social a {
	color: #325BFF;
	transition: color 0.15s ease;
}

.leader-card__social a:hover {
	color: #FF7029;
}

/* --------------------------------------------------------------------------
   Congregations list
   -------------------------------------------------------------------------- */

.congregation-region {
	margin-bottom: 3rem;
}

.congregation-region__title {
	font-size: 1.4rem;
	font-weight: 700;
	color: #FF7029;
	border-bottom: 2px solid #FF7029;
	padding-bottom: 0.5rem;
	margin-bottom: 1rem;
}

.congregation-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.congregation-item {
	padding: 0.75rem 0;
	border-bottom: 1px solid #e8e8e8;
}

.congregation-item__header {
	display: flex;
	align-items: baseline;
	gap: 1rem;
	flex-wrap: wrap;
}

.congregation-item__name {
	font-weight: 700;
	font-size: 1.1rem;
	color: #000000;
	text-decoration: none;
}

.congregation-item__name:hover {
	color: #325BFF;
}

.congregation-item__url {
	font-size: 0.9rem;
	color: #325BFF;
	text-decoration: none;
}

.congregation-item__url:hover {
	text-decoration: underline;
}

.congregation-item__desc {
	margin: 0.25rem 0 0;
	font-size: 0.95rem;
	color: #555;
}

/* --------------------------------------------------------------------------
   Organizations list
   -------------------------------------------------------------------------- */

.organization-section {
	margin-bottom: 4rem;
}

.organization-section__title {
	font-size: 1.4rem;
	font-weight: 700;
	color: #FF7029;
	border-bottom: 2px solid #FF7029;
	padding-bottom: 0.5rem;
	margin-bottom: 1.5rem;
}

.organization-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 1.5rem;
}

.organization-card {
	border: 1px solid #e8e8e8;
	border-radius: 8px;
	padding: 1.25rem;
}

.organization-card__name {
	font-size: 1.3rem;
	font-weight: 700;
	color: #000000;
	text-decoration: none;
	display: block;
}

.organization-card__name:hover {
	color: #325BFF;
}

.organization-card__full-name {
	font-size: 0.95rem;
	color: #555;
	margin: 0.2rem 0 0;
}

.organization-card__url {
	font-size: 0.85rem;
	color: #325BFF;
	text-decoration: none;
	display: block;
	margin-top: 0.25rem;
}

.organization-card__url:hover {
	text-decoration: underline;
}

.organization-card__desc {
	font-size: 0.95rem;
	color: #333;
	margin: 0.75rem 0 0;
	line-height: 1.5;
}

/* --------------------------------------------------------------------------
   News grid
   -------------------------------------------------------------------------- */

.news-grid.wp-block-post-template {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
	list-style: none;
	padding: 0;
	margin: 0;
}

.news-card {
	display: flex;
	flex-direction: column;
	border: 1px solid #e8e8e8;
	border-radius: 8px;
	overflow: hidden;
}

.news-card__image .wp-block-post-featured-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.news-card__image .wp-block-post-featured-image {
	margin: 0 !important;
}

.news-card__body {
	padding: 1.25rem;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	flex: 1;
}

.news-card__date {
	font-size: 0.85rem;
	color: #888;
	margin: 0 !important;
}

.news-card__title {
	font-size: 1.1rem !important;
	font-weight: 700;
	margin: 0 !important;
	text-decoration: none !important;
}

.news-card__title a {
	color: #000 !important;
	text-decoration: none !important;
}

.news-card__title a:hover {
	color: #325BFF !important;
}

.news-card__excerpt {
	font-size: 0.9rem;
	color: #555;
	margin: 0 !important;
}

.news-pagination {
	margin-top: 3rem;
	display: flex;
	justify-content: center;
	gap: 0.5rem;
}

@media screen and (max-width: 900px) {
	.news-grid.wp-block-post-template {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 600px) {
	.news-grid.wp-block-post-template {
		grid-template-columns: 1fr;
	}
}

/* --------------------------------------------------------------------------
   Campaigns landing
   -------------------------------------------------------------------------- */

.campaigns-section {
	margin-bottom: 4rem;
}

.campaigns-section__title {
	font-size: 1.4rem;
	font-weight: 700;
	color: #FF7029;
	border-bottom: 2px solid #FF7029;
	padding-bottom: 0.5rem;
	margin-bottom: 1.5rem;
}

.campaigns-grid {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.campaign-landing-card {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 1.5rem;
	overflow: hidden;
}

.campaign-landing-card--past {
	opacity: 0.75;
}

.campaign-landing-card__img-wrap {
	display: block;
	width: 240px;
	height: 240px;
	flex-shrink: 0;
	overflow: hidden;
}

.campaign-landing-card__img-wrap figure,
.campaign-landing-card__img-wrap img {
	margin: 0 !important;
	padding: 0 !important;
	display: block !important;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.campaign-landing-card__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.campaign-landing-card__body {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	flex: 1;
	padding: 0;
	margin: 0;
}

.campaign-landing-card__title {
	font-size: 2rem !important;
	font-weight: 700;
	margin: 0 !important;
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
	padding: 0 !important;
}

.campaign-landing-card__title a {
	color: #000 !important;
	text-decoration: none !important;
}

.campaign-landing-card__title a:hover {
	color: #FF7029 !important;
}

.campaign-landing-card__date {
	font-size: 0.9rem;
	font-weight: 600;
	color: var(--wp--preset--color--primary);
	margin: 0 !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.campaign-landing-card__body p {
	font-size: 1.4rem !important;
	margin: 0 !important;
}

.campaign-landing-card__desc {
	font-size: 1.4rem;
	margin: 0 !important;
}

@media screen and (max-width: 600px) {
	.campaigns-grid {
		gap: 3rem;
	}
	.campaign-landing-card {
		flex-direction: column;
		gap: 0 !important;
	}
	.campaign-landing-card__img-wrap {
		width: 100%;
		height: auto;
		aspect-ratio: 16 / 9;
		margin: 0 !important;
		padding: 0 !important;
	}
	.campaign-landing-card__img-wrap figure,
	.campaign-landing-card__img-wrap img {
		margin: 0 !important;
		padding: 0 !important;
		display: block !important;
	}
	.campaign-landing-card__body {
		margin: 0 !important;
		padding: 0 !important;
	}
	.campaign-landing-card__title {
		margin-block-start: 0 !important;
	}
}

