/* ==========================================================================
   NFCR donate CTA  [nfcr_donate_cta]
   ========================================================================== */

.nfcr-cta {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 48px;
	padding: 48px 54px;
	background: var(--nfcr-white);
	border-radius: var(--nfcr-r-section);
	box-shadow: var(--nfcr-shadow);
	font-family: var(--nfcr-font);
}
.nfcr-cta .nfcr-cta__copy { max-width: 560px; }
.nfcr-cta .nfcr-cta__title {
	margin: 0;
	padding: 0;
	font-family: var(--nfcr-font);
	font-size: var(--nfcr-fs-h2-sm);
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: -.035em;
	color: var(--nfcr-navy);
	text-transform: none;
}
.nfcr-cta .nfcr-cta__text {
	margin: 12px 0 0;
	font-size: var(--nfcr-fs-intro);
	line-height: 1.7;
	color: var(--nfcr-text);
}
.nfcr-cta .nfcr-cta__text + .nfcr-cta__text { margin-top: 10px; }
.nfcr-cta .nfcr-cta__phone a {
	font-weight: 600;
	color: var(--nfcr-orange);
	text-decoration: none;
	transition: color .15s ease;
}
.nfcr-cta .nfcr-cta__phone a:hover { color: var(--nfcr-navy); }

.nfcr-cta .nfcr-cta__actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px;
	flex-shrink: 0;
}

@media (max-width: 1024px) {
	.nfcr-cta { flex-direction: column; align-items: flex-start; gap: 26px; padding: 40px; }
	.nfcr-cta .nfcr-cta__copy { max-width: 680px; }
}
@media (max-width: 767px) {
	.nfcr-cta { padding: 28px 22px; }
	.nfcr-cta .nfcr-cta__actions { flex-direction: column-reverse; align-items: stretch; width: 100%; }
	.nfcr-cta .nfcr-cta__actions .nfcr-btn-combo .nfcr-btn { flex: 1; }
	.nfcr-cta .nfcr-cta__actions .nfcr-btn { white-space: normal; text-align: center; }
}

/* ---- Photo layout (Discoveries): text + buttons + phone line left, photo filling the right side ---- */
.nfcr-cta.nfcr-cta--photo {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
	gap: 0;
	align-items: stretch;
	padding: 0;
	overflow: hidden;
}
.nfcr-cta--photo .nfcr-cta__copy { box-sizing: border-box; max-width: none; padding: 52px 56px; }
.nfcr-cta--photo .nfcr-cta__text { max-width: 620px; font-size: var(--nfcr-fs-intro); line-height: var(--nfcr-lh-body); }
.nfcr-cta--photo .nfcr-cta__actions { margin-top: 28px; }
.nfcr-cta--photo .nfcr-cta__phone { margin-top: 20px; font-size: var(--nfcr-fs-small); line-height: 1.6; }
.nfcr-cta--photo .nfcr-cta__photo { position: relative; min-height: 340px; background: var(--nfcr-line-chip); }
.nfcr-cta--photo .nfcr-cta__img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}
@media (max-width: 1024px) {
	.nfcr-cta.nfcr-cta--photo { grid-template-columns: minmax(0, 1fr); }
	.nfcr-cta--photo .nfcr-cta__copy { padding: 40px; }
	.nfcr-cta--photo .nfcr-cta__photo { min-height: 260px; }
}
@media (max-width: 767px) {
	.nfcr-cta--photo .nfcr-cta__copy { padding: 28px 22px; }
	.nfcr-cta--photo .nfcr-cta__actions { flex-direction: column; align-items: stretch; }
	.nfcr-cta--photo .nfcr-cta__photo { min-height: 200px; }
}

/* ---- 0.9.18 Navy tone: navy box, white copy, soft-orange phone link (Cancer Information hub) ---- */
.nfcr-cta.nfcr-cta--dark { background: var(--nfcr-navy); box-shadow: none; }
.nfcr-cta--dark .nfcr-cta__title { color: #fff; }
.nfcr-cta--dark .nfcr-cta__text { color: var(--nfcr-on-dark-text); }
.nfcr-cta--dark .nfcr-cta__phone a { color: var(--nfcr-orange-soft); }
.nfcr-cta--dark .nfcr-cta__phone a:hover { color: #fff; }

/* ---- Photo on the left (Ways to Give): photo | text | buttons, one row ---- */
.nfcr-cta.nfcr-cta--photo-left {
	display: grid;
	grid-template-columns: minmax(200px, .75fr) minmax(0, 2.2fr) auto;
	gap: 0;
	align-items: center;
	padding: 0;
	overflow: hidden;
}
.nfcr-cta--photo-left .nfcr-cta__photo { position: relative; align-self: stretch; min-height: 300px; background: var(--nfcr-line-chip); }
.nfcr-cta--photo-left .nfcr-cta__img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}
.nfcr-cta--photo-left .nfcr-cta__copy { box-sizing: border-box; max-width: none; padding: 40px 40px; }
.nfcr-cta--photo-left .nfcr-cta__actions { box-sizing: border-box; padding-right: 54px; }
@media (max-width: 1280px) {
	.nfcr-cta.nfcr-cta--photo-left { grid-template-columns: minmax(180px, .6fr) minmax(0, 2fr); }
	.nfcr-cta--photo-left .nfcr-cta__actions { grid-column: 2; padding: 0 40px 40px; }
}
@media (max-width: 1024px) {
	.nfcr-cta.nfcr-cta--photo-left { grid-template-columns: minmax(0, 1fr); }
	.nfcr-cta--photo-left .nfcr-cta__photo { min-height: 240px; }
	.nfcr-cta--photo-left .nfcr-cta__copy { padding: 36px 40px 24px; }
	.nfcr-cta--photo-left .nfcr-cta__actions { grid-column: auto; padding: 0 40px 40px; }
}
@media (max-width: 767px) {
	.nfcr-cta--photo-left .nfcr-cta__photo { min-height: 200px; }
	.nfcr-cta--photo-left .nfcr-cta__copy { padding: 26px 22px 18px; }
	.nfcr-cta--photo-left .nfcr-cta__actions { padding: 0 22px 28px; }
}
