/*
 * Fundraising — donate button, urgent banner, impact stats bar, footer
 * trust block. Every color/font/spacing value comes from a
 * --charity-donate-*/--charity-impact-*/--charity-urgent-*/--charity-ft-trust-*
 * custom property (see functions.php charity_dynamic_css()) so the whole
 * thing is Customizer-driven, not hardcoded here.
 */

/* ── Donate button ── */
.charity-donate-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: var(--charity-donate-pad-t, 12px) var(--charity-donate-pad-r, 24px) var(--charity-donate-pad-b, 12px) var(--charity-donate-pad-l, 24px);
	margin: var(--charity-donate-m-t, 0) var(--charity-donate-m-r, 0) var(--charity-donate-m-b, 0) var(--charity-donate-m-l, 0);
	border-radius: var(--charity-donate-radius, 999px);
	background: var(--charity-donate-bg, #e8722c);
	color: var(--charity-donate-color, #fff);
	font-family: var(--charity-donate-font, var(--charity-body-font));
	font-weight: var(--charity-donate-weight, 600);
	font-size: var(--charity-donate-size, 15px);
	text-decoration: none;
	border: none;
	cursor: pointer;
	transition: background-color 0.15s ease, filter 0.15s ease, transform 0.15s ease;
}
.charity-donate-btn:hover {
	background: var(--charity-donate-hover-bg, var(--charity-donate-bg, #e8722c));
	filter: var(--charity-donate-hover-filter, brightness(1.1));
}
.charity-donate-btn:active {
	transform: translateY(1px);
}

/* ── Urgent banner ── */
.charity-urgent-bar {
	background: var(--charity-urgent-bg, #b8501a);
	color: var(--charity-urgent-text, #fff);
	font-family: var(--charity-urgent-font, var(--charity-body-font));
	font-weight: var(--charity-urgent-weight, 500);
	font-size: var(--charity-urgent-size, 15px);
}
.charity-urgent-bar__inner {
	position: relative;
	max-width: 1240px;
	margin: 0 auto;
	padding: var(--charity-urgent-pad-t, 10px) var(--charity-urgent-pad-r, 20px) var(--charity-urgent-pad-b, 10px) var(--charity-urgent-pad-l, 20px);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	flex-wrap: wrap;
	text-align: center;
}
.charity-urgent-bar__text.charity-urgent-bar__text {
	margin: 0;
	font: inherit;
}
.charity-urgent-bar__link {
	color: inherit;
	font-weight: 700;
	text-decoration: none;
	text-underline-offset: 3px;
	white-space: nowrap;
}
.charity-urgent-bar.is-underlined .charity-urgent-bar__link {
	text-decoration: underline;
}
.charity-urgent-bar__link:hover {
	text-decoration-thickness: 2px;
}
.charity-urgent-bar__dismiss.charity-urgent-bar__dismiss {
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	color: inherit;
	font-size: 1.5rem;
	line-height: 1;
	cursor: pointer;
	opacity: 0.75;
	padding: 4px 8px;
}
.charity-urgent-bar__dismiss:hover {
	opacity: 1;
}

/* ── Impact stats bar ── */
.charity-impact-stats {
	background: var(--charity-impact-bg, #0f3327);
	color: var(--charity-impact-text, #fff);
}
.charity-impact-stats__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: var(--charity-impact-pad-t, 28px) var(--charity-impact-pad-r, 20px) var(--charity-impact-pad-b, 28px) var(--charity-impact-pad-l, 20px);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--charity-impact-gap, 40px);
}
.charity-impact-stats__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	min-width: 100px;
}
.charity-impact-stats__number {
	font-family: var(--charity-impact-number-font, var(--charity-heading-font));
	font-weight: var(--charity-impact-number-weight, 700);
	font-size: var(--charity-impact-number-size, 32px);
	line-height: 1.1;
}
.charity-impact-stats__label {
	font-family: var(--charity-impact-label-font, var(--charity-body-font));
	font-size: var(--charity-impact-label-size, 13px);
	color: var(--charity-impact-label-color, inherit);
	opacity: var(--charity-impact-label-opacity, .85);
	margin-top: 4px;
}

/* ── Footer trust & credibility ── */
.charity-ft__trust {
	display: flex;
	align-items: center;
	gap: var(--charity-ft-trust-gap, 16px);
	padding: var(--charity-ft-trust-pad-t, 20px) var(--charity-ft-trust-pad-r, 0) var(--charity-ft-trust-pad-b, 20px) var(--charity-ft-trust-pad-l, 0);
	background: var(--charity-ft-trust-bg, transparent);
	font-family: var(--charity-ft-trust-font, var(--charity-body-font));
	margin-bottom: 20px;
}
.charity-ft__trust.has-divider {
	border-top: 1px solid var(--charity-ft-trust-divider-color, rgba(255, 255, 255, 0.15));
	border-bottom: 1px solid var(--charity-ft-trust-divider-color, rgba(255, 255, 255, 0.15));
}
.charity-ft__trust-seal {
	width: var(--charity-ft-trust-seal-size, 56px);
	height: var(--charity-ft-trust-seal-size, 56px);
	object-fit: contain;
	flex-shrink: 0;
}
.charity-ft__trust-text {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.charity-ft__trust-reg.charity-ft__trust-reg {
	margin: 0;
	font-weight: var(--charity-ft-trust-reg-weight, 600);
	font-size: var(--charity-ft-trust-reg-size, 14px);
	color: var(--charity-ft-trust-reg-color, inherit);
}
.charity-ft__trust-disclaimer.charity-ft__trust-disclaimer {
	margin: 0;
	font-size: var(--charity-ft-trust-disc-size, 13px);
	color: var(--charity-ft-trust-disc-color, inherit);
	opacity: var(--charity-ft-trust-disc-opacity, .8);
}

@media (max-width: 640px) {
	.charity-urgent-bar__dismiss.charity-urgent-bar__dismiss {
		position: static;
		transform: none;
	}
	.charity-ft__trust {
		flex-direction: column;
		align-items: flex-start;
	}
}
