/* Generated from scoped fragments; do not edit this file. */
:root {
	/*  --title-logo-margin: calc(2vw + 2px);   */
	--title-logo-margin: calc(1vw + 2px);
	--title-text-margin: calc(1vw + 2px);
	--CHOCK-large-font-size: 60px;
	--CHOCK-medium-font-size: 44px;
	--CHOCK-font-weight: 900;
	/* --color-light-blue: #eef8fe; */
	/* --color-light-blue: #ceeeff; */
	/* --color-light-blue: #cdecfc; */
	/* --color-light-blue: #ecf8ff; */
	--color-light-blue: #e5f5ff;
	--charity-subtitle-family: "Source Sans Pro", "Segoe UI", system-ui, sans-serif;
	--charity-subtitle-weight: 600;
	--debug-none: 0;
	--debug-width: 0;
	--debug-red: var(--debug-width) solid #f00;
	--debug-green: var(--debug-width) solid #0f0;
	--debug-blue: var(--debug-width) solid #00f;
	--debug-magenta: var(--debug-width) solid #f0f;
	--debug-cyan: var(--debug-width) solid #0ff;
	--debug-black: var(--debug-width) solid #000;
}

:root .cgm-charity :where(.is-layout-constrained) > * {
	margin-block-start: 60px; margin-block-end: 60px; }

/* ============================================================
   HIGHLIGHTS (desktop only)
   ============================================================ */
.charity-highlights {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	/* grid-template-columns: repeat(3, minmax(320px, 1fr)); */
	gap: clamp(24px, 2.2vw, 48px);
	max-width: 1100px;
	max-width: min(90vw, 2400px);
	margin-inline: auto; justify-content: center;
	place-content: center;
	margin: 5vw auto;
	padding-inline: clamp(24px, 4vw, 96px); /* ⭐ buffer */
}

.charity-highlight {
	display: grid;
	grid-template-rows: auto auto;
	align-content: center;
	text-align: center;
	aspect-ratio: 1 / .65;
	/* padding: clamp(24px, 2vw, 48px) 0 clamp(24px, 2vw, 48px) 0; */
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 10px 30px #00000014;
	container-type: inline-size;
	box-sizing: border-box;
}

/* value (big number) */
.charity-highlight-value {
	font-weight: 900;
	line-height: 1;
	font-size: clamp(34px, 3.2vw, 72px);
	color: #005dab;
	margin-bottom: 12px;
	white-space: nowrap;
	word-break: keep-all;
	overflow-wrap: normal;
	position: relative;
}

.charity-highlight-value .charity-prefix {
	position: absolute;
	top: 0;
}

.charity-highlight-value .charity-prefix.charity-dollar > span {
	position: relative;
	font-size: 1.89vw;
	left: -1.2vw;
	top: -1.2vw;
}

.charity-highlight-value .charity-suffix {
	position: absolute;
	top: 0;
}

.charity-highlight-value .charity-suffix.charity-plus > span {
	position: relative;
	font-size: 1.89vw;
	left: 0.2vw;
	top: -0.6vw;
}

.charity-highlight-title {
	line-height: 1em;
	font-weight: 800;
	font-weight: 900;
	/* font-size:1.2em; */
	font-size: clamp(14px, 1.8vw, 38px);
	margin: 1vw clamp(24px, 2vw, 48px) 0.4vw clamp(24px, 2vw, 48px);
}

/* caption (label text) */
.charity-highlight-caption {
	font-size: clamp(18px, 1.05vw, 28px);
	line-height: normal;
	font-weight: 500;
	color: #4a4a4a;
	white-space: nowrap;
	margin: 0 clamp(24px, 2vw, 48px);
}

body.cgm-charity.page-template-charity-become .cgm-charity-hero-container {
	/* background:#fbfcfe; */
	background: linear-gradient( to right, #f5f9fc 0%, #f7fafc 8%, #fbfcfe 100% );
	/* background: linear-gradient( to right, #f5f9fc 0%, #fbfcfe 100%); */
	/* background: linear-gradient( to right, #f5f9fc 0%, #fbfcfe 100%); */
}

body.cgm-charity {
	background: #fff !important;
}

body.page-template-charity-partners {
	background: var(--color-light-blue) !important;
}

.cgm-text-center {
	text-align: center;
}

.cgm-charity .charity-container > .charity-sections {
	max-width: 900px;
	margin: 30px auto 0;
	margin-left: auto !important;
	margin-right: auto !important;
}

.cgm-charity #content > div.col-full {
	max-width: none;
	padding: 0;
	margin: 0 !important;
}

.cgm-charity .charity-zip-form .charity-zip-controls {
	display: inline-block;
}

.cgm-charity .charity-zip-form {
	background-color: var(--color-light-blue);
	position: relative;
	border-width: 0;
	padding: 30px 20px 38px 20px;
	margin: 50px auto 0;
	text-align: center;
	border-radius: 0 0 15px 15px;
}

.cgm-charity .charity-zip-form h3 {
	margin: 0 0 25px 0 !important;
}

.cgm-charity .charity-zip-button {
	background: #00a950;
	background-repeat: no-repeat !important;
	border: none;
	box-shadow: none;
	border-radius: 8px;
	text-transform: uppercase;
	font-weight: 800;
	font-size: 18px;
	width: 162px;
	height: 56px;
	color: #ffffff;
	margin: 0 !important;
	display: inline-block !important;
}

.cgm-charity .charity-zip-field:focus {
	background-color: #fcfcfc;
}

.cgm-charity .charity-zip-field {
	display: inline-block !important;
	margin: 0;
	margin-right: 8px;
	/* border: 1px solid #8d969a; */
	border: 0;
	border-radius: 0;
	font-size: 18px;
	line-height: 3em;
	float: left;
	box-sizing: content-box;
	color: #7a7a7a;
	text-align: center;
	font-weight: 300;
	padding: 0px;
	border-radius: 0px;
	box-shadow: 0 1px 0 0 #daf3f9;
	width: 160px;
	height: 54px;
	background-color: #fff;
	position: relative;
	top: 1px;
}

@media (min-width: 768px) and (max-width: 768px) {
	nav#site-navigation.main-navigation .primary-navigation {
		display: none;
	}
}

@media(max-width: 66.4989378333em) {
	.cgm-charity #content > div.col-full {
		margin-left:0;
		margin-right: 0;
		padding: 0
	}
}

@media(max-width: 984px) {
	.cgm-charity .charity-container > .charity-sections {
		margin-left:2.617924em !important;
		margin-right: 2.617924em !important;
	}
}

@media(max-width: 568px) {
	.cgm-charity #content > div.col-full {
		margin-left:0;
		margin-right: 0;
		padding: 0
	}

	.cgm-charity .charity-container > .charity-sections {
		margin-left: 1.41575em !important;
		margin-right: 1.41575em !important;
	}
}

.cgm-charity .charity-container {
	margin: 0 auto;
}

.cgm-charity .charity-container > .charity-header .charity-header-inner {
	background-color: #fff;
	border-radius: 15px 15px 20px 20px;
	max-width: 850px;
	padding: 50px 0 0;
	margin: 0 auto;
	box-shadow: 0px 11px 30px -5px #00000052;
}

.cgm-charity .charity-container > .charity-header {
	padding: 90px 40px;
	background-size: 550px;
	background-repeat: repeat;
}

.cgm-charity .charity-container > .charity-header .charity-masthead {
	margin-bottom: 40px;
}

.cgm-charity .charity-container > .charity-header .charity-masthead .charity-masthead-inner {
	max-width: 800px;
	margin: 0 50px;
}

.cgm-charity .charity-container .charity-table {
	display: table;
}

.cgm-charity .charity-container .charity-tr {
	display: table-row;
}

.cgm-charity .charity-container .charity-td {
	display: table-cell;
	vertical-align: middle;
	width: 50%;
}

.cgm-charity .charity-container .charity-td:first-child {
	width: 30%;
}

.cgm-charity .charity-container .charity-td:last-child {
	width: 70%;
}

.cgm-charity .charity-title {
	font-size: calc(2.3vw + 16px);
	font-size: 40px;
	text-align: right;
	font-weight: 800;
	margin: 0 var(--title-text-margin) 0 0;
	padding: 0;
	color: #065eab;
	text-transform: uppercase;
	text-align: right;
	white-space: nowrap;
}

body.cgm-charity .charity-logo {
	text-align: center !important;
	margin: 0 0 0 var(--title-logo-margin) !important;
	height: auto !important;
	display: block !important;
	align-items: normal !important;
	justify-content: normal !important;
}

body.cgm-charity .charity-logo img {
	max-height: 100% !important;
	max-width: 100% !important;
	object-fit: contain !important;
}

/* .cgm-charity .charity-logo img {
	max-height: 50px;
	aspect-ratio: 405 / 65;
	object-fit: cover;
	overflow: visible;
	margin: 0 auto;
	border-radius: 0 !important;
} */


.cgm-charity .charity-section.charity-zebra {
	gap: 24px 50px;
	gap: 24px 70px;
}

.cgm-charity .charity-section.charity-zebra .charity-content {
	display: inline;
	font-family: PT Sans,sans-serif !important;
}

.cgm-charity .charity-section .charity-content p, .cgm-charity .charity-section.charity-zebra .charity-content p {
	font-family: PT Sans,sans-serif !important;
}

body.page-template-charity-landing .cgm-lead-in .charity-content p {
	text-align: left;
	padding-top: 6px;
}

.cgm-charity .charity-section.charity-zebra .charity-column .wp-block-group.is-vertical.is-layout-flex {
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.cgm-charity .charity-section.charity-zebra:nth-child(odd of .charity-section.charity-zebra) {
	flex-direction: row-reverse;
}

.cgm-charity .charity-section.charity-zebra .charity-column:first-child {
	flex: 1.2;
}

.cgm-charity .charity-section.charity-zebra .charity-column:last-child {
	flex: 2;
}

.cgm-charity .charity-section ol, .cgm-charity .charity-section ul {
	width: 100%;
	padding-left: 25px;
	font-family: Filson-Pro, sans-serif;
}

.cgm-charity .charity-section.charity-zebra .charity-image {
	text-align: left;
}

.cgm-charity .charity-section.charity-zebra:nth-child(odd of .charity-section.charity-zebra) .charity-image {
	text-align: right;
}

/* SVGs get universally centered */
.cgm-charity .charity-section.charity-zebra .charity-image.charity-image-svg {
	text-align: center !important;
}

.cgm-charity .charity-section.charity-zebra .charity-image.charity-image-svg > svg {
	max-width: 300px;
	max-height: 300px;
	max-width: 200px;
	max-height: 200px;
	height: 100%;
	width: 100%;
	margin-left: 70px;
}

.cgm-charity .charity-section.charity-zebra:nth-child(odd of .charity-section.charity-zebra) .charity-image.charity-image-svg > svg {
	margin-right: 70px;
	margin-left: 0;
}

.cgm-charity .charity-section .charity-image img.charity-image-fixed-aspect {
	width: 300px;
	object-fit: cover;
	border-radius: 100%;
	aspect-ratio: 1/1;
	margin: 0 auto;
	margin: 0 auto 0 0;
	position: relative;
	left: 25px;
}

.cgm-charity .charity-section.charity-zebra:nth-child(odd of .charity-section.charity-zebra) .charity-image img.charity-image-fixed-aspect {
	margin: 0 0 0 auto;
	left: -25px;
}

.cgm-charity .hentry .entry-content .wp-block-columns .charity-image.charity-column.wp-block-column {
	margin-right: 0;
}

.cgm-charity .charity-block-heading {
	font-style: normal;
	font-weight: 900;
	line-height: 32px;
	/* color: #f00; */
}

.cgm-charity .charity-swatch {
	border: 3px solid #000;
	border-bottom: 0;
	border-radius: 15px 15px 0 0;
	background-color: #000;
	color: #fff;
	width: 175px;
	margin: 0 auto;
	padding: 5px 10px 0px 10px;
	text-align: center;
	position: fixed;
	z-index: 999;
	opacity: .1;
	transition: all .25s ease;
	left: 20px;
	bottom: -136px;
}

.cgm-charity .charity-swatch:hover {
	opacity: 1;
	bottom: 0;
}

.cgm-charity .charity-swatch > div {
	background-color: #fff;
	padding: 10px 10px 5px;
	border-radius: 10px 10px 0 0;
	margin-top: 8px;
}

.cgm-charity .charity-swatch > div > div {
	padding: 0;
	padding-top: 5px;
	margin: 0 auto;
	line-height: normal;
	height: 40px;
}

.cgm-charity .charity-swatch > div > div > div:first-child {
	float: left;
	margin-right: 10px;
	width: 25px;
	height: 25px;
	border-radius: 100%;
}

.cgm-charity .charity-swatch > div > div > div:last-child {
	color: #000;
	text-align: left;
	line-height: 18px;
	position: relative;
	top: -5px;
}

.cgm-charity .charity-swatch > div > div > div:last-child > div {
	font-size: 14px;
	color: #999;
}

.cgm-charity .charity-button {
	border-radius: 8px !important;
	transition: background-shadow, color, transform .18s ease;
	text-transform: uppercase;
}

.cgm-charity .charity-block-buttons .charity-aside > div {
	position: relative;
	top: -2px;
	left: -12px;
	font-size: 14px;
}

.cgm-charity .charity-block-buttons .charity-block-button {
	margin: 0;
}

.cgm-charity .charity-button:focus, .cgm-charity .charity-button:active {
	outline-color: transparent;
	outline-width: 0;
}

.cgm-charity .charity-button:hover {
	transform: scale(1.05) translateY(-2px);
	box-shadow: 0px 11px 30px -5px #00000026;
}

.charity-can_donate.charity-section .charity-block .charity-content > p {
	white-space: nowrap;
}

.charity-can_donate.charity-section .charity-block .charity-content > ul {
	max-width: 440px;
	margin: 0 !important;
}

body.page-template-charity-landing .cgm-lead-in.cgm-lead-in-has-image .cgm-flex-row {
	display: flex;
	align-items: center;
	gap: 4rem;
}

body.page-template-charity-landing .cgm-lead-in.cgm-lead-in-has-image .cgm-flex-row .cgm-flex-col-image {
	flex: 0 0 40%;
}

body.page-template-charity-landing .cgm-lead-in.cgm-lead-in-has-image .cgm-flex-row .cgm-flex-col-text {
	flex: 0 0 60%;
}

body.page-template-charity-landing .cgm-lead-in.cgm-lead-in-has-image .cgm-flex-row .cgm-flex-col-text p {
	margin: 0 6.1vw 0 0 !important;
}

@media(max-width: 781px) {
	.cgm-charity .charity-section.charity-zebra .charity-image {
		padding: 0;
		margin-bottom: 0 !important;
	}

	.cgm-charity .charity-section.charity-zebra .charity-image.charity-image-file img.charity-image-fixed-aspect {
		margin: 0 auto !important;
		left: 0 !important;
	}

	.cgm-charity .charity-section.charity-zebra .charity-image.charity-image-svg svg {
		margin: 0 !important;
	}

	:root .cgm-charity :where(.is-layout-constrained) > * {
		margin-block-start: 24px; margin-block-end: 30px; }

	:root .cgm-charity :where(.is-layout-constrained) > *:first-child {
		margin-block-start: 50px; }

	:root .cgm-charity :where(.is-layout-constrained) > .charity-can_donate {
		margin-block-start: 55px; }

	.cgm-charity .charity-container > .charity-header .charity-header-inner {
		padding: 38px 0 0;
	}

	.cgm-charity .charity-title {
		margin-right: var(--title-text-margin);
	}

	.cgm-charity .charity-logo {
		margin-left: var(--title-logo-margin);
	}

	.cgm-charity .charity-container > .charity-header .charity-masthead .charity-td {
		display: block;
		width: 100%;
	}

	.cgm-charity .charity-container > .charity-header .charity-masthead .charity-td .charity-title {
		margin: 0 auto;
		text-align: center;
		font-size: calc(2.3vw + 18px);
		margin-bottom: 35px;
	}

	.cgm-charity .charity-container > .charity-header .charity-masthead .charity-td .charity-logo {
		margin: 0 auto;
	}

	.cgm-charity .charity-container > .charity-header {
		padding: 45px 40px;
	}

	.cgm-charity .charity-container > .charity-header .charity-masthead .charity-masthead-inner {
		max-width: 100%;
	}

	.cgm-charity .charity-container > .charity-header .charity-masthead .charity-table {
		margin: 0 auto;
	}

	.cgm-charity .charity-block-heading {
		font-style: normal;
		font-weight: 900;
		line-height: 32px;
		text-align: center;
	}

	.cgm-charity .charity-block-buttons {
		display: block;
		margin: 0 auto;
		position: relative;
		top: -22px;
	}

	.cgm-charity .cgm-partner-card .charity-block-buttons {
		margin: auto auto 0 0;
		position: relative;
		top: 0;
	}

	.cgm-charity .charity-block-buttons .charity-block-button {
		display: block;
	}

	.cgm-charity .charity-block-buttons .charity-aside {
		position: absolute;
		left: 0;
		width: 100%;
		text-align: center;
		margin-top: 1.41575em;
	}

	.cgm-charity .charity-block-buttons .charity-aside > div {
		position: relative;
		top: -18px;
		left: 0;
		font-size: 14px;
		text-align: center;
	}

	.cgm-charity .hentry .entry-content .wp-block-columns .charity-column.wp-block-column:not(.charity-image) {
		margin-bottom: 1.4em;
	}

	.cgm-charity .charity-section.charity-zebra.charity-section-has-button-aside {
		margin-bottom: 55px;
	}

	.charity-can_donate.charity-section .charity-block .charity-content > p {
		text-align: center;
		max-width: 290px;
		margin-left: auto;
		margin-right: auto;
		white-space: normal;
		line-height: normal;
	}

	.charity-can_donate.charity-section .charity-block .charity-content > ul {
		max-width: 350px;
		margin-left: auto !important;
		margin-right: auto !important;
		padding: 0 !important;
	}

	.cgm-multi-col {
		column-gap: 105px !important;
	}
}

@media(max-width: 600px) {
	.cgm-charity .charity-zip-form {
	}

	.cgm-charity .charity-zip-form h3 {
		line-height: 26px;
		font-size: 24px !important;
		width: 295px !important;
		display: inline-block;
	}

	.cgm-charity .charity-zip-form .charity-zip-controls {
		display: block !important;
	}

	.cgm-charity .charity-zip-form.busy .charity-zip-controls {
		display: none !important;
	}

	.cgm-charity .charity-zip-field {
		float: none;
		display: block !important;
		width: 100%;
		margin-bottom: 8px;
	}

	.cgm-charity .charity-zip-button {
		display: block !important;
		width: calc(100% + 2px);
	}
}


@media(max-width: 415px) {
	.cgm-charity .charity-zip-form h3 {
		width: auto !important;
	}
}

.cgm-charity .charity-zip-form {
	min-height: 187px;
}

.cgm-charity .charity-zip-form .charity-zip-busy {
	display: none;
}

.cgm-charity .charity-zip-form .charity-zip-busy .charity-zip-message {
	display: none;
}

.cgm-charity .charity-zip-form .charity-zip-error {
	display: none;
}

.cgm-charity .charity-zip-form.busy {
	padding-bottom: 0;
}

.cgm-charity .charity-zip-form.busy .charity-zip-controls {
	display: none;
}

.cgm-charity .charity-zip-form.busy .charity-zip-busy {
	display: block;
	min-height: 56px;
}

.cgm-charity .charity-zip-form.error .charity-zip-error {
	display: block;
	margin: 12px 0 0 0;
}

/* busy spinner animation */
@keyframes spinner-chase {
	to {
		transform: rotate(360deg);
	}
}

.spinner-chase {
	display: inline-block;
	width: 2rem;
	height: 2rem;
	vertical-align: -.125em;
	border: .25em solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	-webkit-animation: .75s linear infinite spinner-chase;
	animation: .75s linear infinite spinner-chase;
}

.spinner-chase-sm {
	width: 1rem;
	height: 1rem;
	border-width: .2em;
}

@keyframes spinner-grow {
	0% {
		transform: scale(0);
	}

	50% {
		opacity: 1;
		transform: none;
	}
}

.spinner-grow {
	display: inline-block;
	width: 2rem;
	height: 2rem;
	vertical-align: -.125em;
	background-color: currentColor;
	border-radius: 50%;
	opacity: 0;
	-webkit-animation: .75s linear infinite spinner-grow;
	animation: .75s linear infinite spinner-grow;
}

.spinner-grow-sm {
	width: 1rem;
	height: 1rem;
}

.charity-landing-section-become {
	margin-bottom: 0 !important;
}

.charity-landing-section-become .charity-column {
	margin-bottom: 0 !important;
}

.charity-landing-section-partners {
	margin-top: 0 !important;
}

.charity-section-separator {
	text-align: center;
	margin: 0 !important;
	margin: 0;
}

.charity-section-separator > img {
	margin: 5vw auto;
	width: 25vw;
}

.charity-landing-images-wrap {
	margin-inline: auto; max-width: calc(100% - 100px);
	margin-top: 7vw;
	position: relative;
}

.charity-landing-images {
	display: flex;
	gap: 1.5rem;
}

.charity-landing-images img {
	flex: 1 1 0;
	max-width: 100%;
	width: 100%;
	object-fit: cover;
	display: block;
	height: auto;
	min-width: 0;
	border-radius: 8px;
}

.charity-landing-images-overlay {
	position: absolute;
	right: 0;
	top: 0;
	text-align: right;
}

.charity-landing-images-overlay > img {
	position: relative;
	width: 21vw;
	/* width:58%; */
	left: -18vw;
	top: -5.5vw;
}

/******** changes made to whole site ********/
body.post-template-default #secondary.widget-area, body.archive #secondary.widget-area {
	display: none;
}

body.post-template-default #primary.content-area, body.archive #primary.content-area {
	margin: 0 auto;
	float: none;
	width: auto;
	max-width: 1080px;
}

.container.container__small.blog__page.flex.row {
	justify-content: center;
}

.archive .col-full {
	max-width: 100%;
	padding: 0;
}

.archive .section--hero {
	background-position: 50%;
	min-height: 40vh;
}

a.blog__posts--post__readmore {
	color: #01a950;
}

.blog__posts .blog__posts--post {
	border-radius: 15px;
	overflow: hidden;
	transition: all .32s ease;
}

.blog__posts .blog__posts--post .blog__posts--post__meta {
	padding: 12px;
}

.blog__posts .blog__posts--post:hover {
	box-shadow: 0 0 20px 6px #00000014;
}

.charity-corid-warning {
	background: #dcff00;
	border: 8px solid #99b100;
	/* border-radius: 10px; */
	padding: 15px 25px;
	font-size: 14px;
	margin-bottom: 25px;
}

.charity-warning {
	background: #dcff00;
	border: 8px solid #99b100;
	padding: 15px 25px;
	font-size: 14px;
}

.charity-warning-fixed {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 99999;
	text-align: center;
	border-width: 8px 0 0 0;
}

.charity-corid-warning > div:first-child {
	font-weight: 800;
	margin-bottom: 5px;
}

.charity-corid-warning > div:last-child {
	line-height: normal;
}

/* fixes for the current live site */
@media (min-width: 600px) {
	.hentry .entry-content .wp-block-columns .wp-block-column, .editor-styles-wrapper .wp-block-columns .wp-block-column {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

.cgm-charity-hero-container {
	height: 500px;
}

.cgm-charity-hero-container .wp-block-cover__inner-container {
	margin-top: 38px;
}

.cgm-charity-hero-container h1 {
	text-shadow: 3px 6px 9px #000000a8;
}

.cgm-charity-hero-container p {
	text-shadow: 3px 4px 9px #000000e0;
}

.cgm-charity-hero-container p {
	margin-top: 18px;
}

body.cgm-charity .section--hero .wp-block-cover__inner-container h1.CHOCK-large, body.cgm-charity .CHOCK-large {
	font-weight: var(--CHOCK-font-weight) !important;
	line-height: 1.1;
	font-size: clamp(36px, 8.3vw, 60px) !important;
}

body.cgm-charity .CHOCK-medium {
	font-size: var(--CHOCK-medium-font-size) !important;
	font-weight: var(--CHOCK-font-weight) !important;
	font-weight: 400 !important;
	line-height: 1.1;
	font-size: clamp(24px, 6.01vw, 32px) !important;
}

.charity-sections.cgm-last-child-bottom-margin .charity-section:last-child {
	margin-bottom: 75px;
	/*asdf*/
}

.charity-section.cgm-nix-col-margin > .charity-column {
	margin-bottom: 0 !important;
}

.cgm-svg-number {
	width: 30px;
	margin: 0 auto 5px;
}

body.page-template-charity-landing .cgm-svg-number svg {
	height: 46px
}

.cgm-svg-icon-container {
	height: 80px;
}

.cgm-svg-icon {
	height: 50px;
	margin: 0;
}

.cgm-group-block-2 .cgm-svg-icon {
	transform: scale(1.35);
	width: 80px;
	margin: 0 auto;
}

.cgm-svg-icon > svg {
	width: auto;
	height: 100%;
}

.cgm-landing-step, .cgm-group-block {
	margin-bottom: 0 !important;
}

.cgm-landing-step p, .cgm-group-block p {
	white-space: nowrap;
}

.cgm-landing-card {
	padding: 50px 0;
	border-radius: 15px;
}

.cgm-landing-steps, .cgm-group-blocks {
	padding: 0 50px;
}

.cgm-caption {
	max-width: 740px;
	margin: 0 auto;
	padding: 0 50px;
	line-height: normal;
}

.cgm-landing-card-button {
	margin-top: 45px !important;
	padding: 0 50px;
}

.cgm-block-group-headline {
	font-size: 22px;
}

.charity-info-group.cgm-info-group h2 strong {
	font-size: 22px;
}

.charity-info-group h2 {
	margin-bottom: 50px;
}

@media (max-width: 781px) {
	.cgm-landing-card-button {
		margin-top: 65px !important;
		padding: 0 50px;
	}
}

@media (max-width: 829px) {
	.cgm-landing-card-headline {
		display: block;
		font-size: clamp(22px, 5vw, 32px);
		white-space: nowrap;
	}

	.cgm-caption {
		padding: 0 !important;
		margin: 0 30px !important;
	}

	.charity-section-separator > img {
		margin: 9vw auto;
		width: 40vw !important;
	}

	.charity-highlights {
		grid-template-columns: 1fr;
	}

	.charity-highlight {
		/* aspect-ratio:1 / .4; */
		padding-block: clamp(20px, 4vw, 32px); margin-block:0; align-content: start;
		aspect-ratio: unset;
	}

	.charity-highlight-value {
		font-size: clamp(34px, 6.2vw, 72px);
	}

	.charity-highlight-value .charity-prefix {
		position: static;
	}

	.charity-highlight-value .charity-prefix.charity-dollar > span {
		position: static;
		font-size: clamp(34px, 3.2vw, 72px);
	}

	.charity-highlight-value .charity-suffix {
		position: static;
	}

	.charity-highlight-value .charity-suffix.charity-plus > span {
		position: static;
		font-size: clamp(34px, 3.2vw, 72px);
	}
}

@media (max-width: 939px) {
	.cgm-block-group-headline {
		display: block;
		font-size: clamp(22px, 4.3vw, 32px);
		white-space: nowrap;
	}

	.charity-info-group.cgm-info-group h2 strong {
		font-size: clamp(14px, 3.3vw, 22px);
	}

	.cgm-info-group-wrapper .cgm-group-blocks {
		flex-wrap: wrap !important;
	}

	.cgm-info-group-wrapper .cgm-group-blocks .cgm-group-block {
		flex-basis: 100%;
		margin: 0 0 2.25em 0 !important;
		padding: 0 0 2.25em 0 !important;
		border-bottom: 3px solid #ddebdc;
	}

	.cgm-info-group-wrapper .cgm-group-blocks .cgm-group-block:last-child {
		margin-bottom: 0 !important;
		padding-bottom: 0 !important;
		border-bottom: 0 !important;
	}
}

@media (max-width: 999px) {
	.charity-landing-images-wrap {
		max-width: calc(100% - 50px);
		margin-top: 7vw;
	}

	.charity-landing-images {
		gap: .75rem;
	}

	.cgm-landing-steps {
		flex-wrap: wrap !important;
		padding: 0;
		position: relative;
		left: 36px;
	}

	.cgm-landing-step h3, .cgm-group-block h3 {
		font-size: 1.618em;
	}

	.cgm-landing-step {
		width: 220px;
		flex-basis: 100% !important;
		position: relative;
		margin-right: 0 !important;
		margin: 0 0 50px 0 !important;
	}

	.cgm-landing-step:last-child, .cgm-group-block:last-child {
		margin-bottom: 5px !important;
	}

	.cgm-svg-number {
		position: absolute;
		left: calc(50% - 11rem);
		top: 24px;
		width: 40px;
		margin: 0;
	}
}

@media (max-width: 500px) {
	.hentry .entry-content .cgm-landing-card-button .wp-block-button .wp-block-button__link {
		line-height: normal !important;
	}

	.cgm-landing-card-button .charity-block-button .cgm-button-slam, .cgm-landing-card-button .charity-block-button .cgm-button-text {
		display: block;
	}

	.cgm-landing-card-button .charity-block-button .cgm-button-text {
		font-size: 16px;
		font-weight: 400;
		position: relative;
		top: -2px;
	}

	.cgm-landing-card-button .charity-block-button .cgm-button-space {
		display: none;
	}
}

.cgm-list {
	margin: 0 !important;
	padding: 0 !important;
	padding-left: 2.5em !important;
	list-style: disc outside;
	font-family: PT Sans,sans-serif !important;
}

.cgm-multi-col {
	column-count: 2;
	column-gap: 0;
}

.cgm-multi-col li {
	margin-bottom: 0.1rem;
	break-inside: avoid;
	line-height: normal;
	white-space: nowrap;
}

@media(max-width: 500px) {
	.charity-can_donate.charity-section .charity-block .charity-content > ul.cgm-multi-col {
		max-width: 200px;
		margin-left: auto !important;
		margin-right: auto !important;
		padding: 0 0 0 0px !important;
		border: 0px solid;
		position: relative;
		left: 50px;
	}

	.cgm-multi-col {
		column-count: 1;
	}
}

/* responsive card grid */
.wp-block-columns.is-style-cards {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
	justify-items: center;
}

.wp-block-columns.is-style-cards .wp-block-column {
	background: #fff;
	border-radius: 8px;
	padding: 1.25rem;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	text-align: center;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.wp-block-columns.is-style-cards .wp-block-column:hover {
	transform: translateY(-4px);
	box-shadow: 0 4px 12px rgba(0,0,0,0.12);
}

/* headings and text inside cards */
.wp-block-columns.is-style-cards .wp-block-column h3 {
	margin-top: 0;
	font-size: 1.25rem;
}

.wp-block-columns.is-style-cards .wp-block-column p {
	margin-bottom: 0;
	color: #555;
	font-size: 16px;
}

/* responsive collapse */
@media (max-width: 1024px) {
	.wp-block-columns.is-style-cards {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 640px) {
	.wp-block-columns.is-style-cards {
		grid-template-columns: 1fr;
	}
}

.cgm-partner-card .charity-block-buttons {
	margin-top: auto;
}

.cgm-partner-card > div > div {
	text-align: left;
}

.cgm-partner-card > div > div img {
	height: 90px;
	object-fit: contain;
	margin: 0 auto;
}

.cgm-partner-card > div {
	/* this is the wrapper that contains title, text, button */
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 0 25px;
	/* AG3 edit  */
}

.cgm-partner-card > div p.cgm-charity-blurb {
	margin: 10px 0 30px !important;
	text-align: left;
	line-height: normal;
	font-family: PT Sans,sans-serif !important;
}

@media (max-width: 1024px) {
	.cgm-partner-card > div p.cgm-charity-blurb {
		margin:25px 0 30px !important;
	}
}

.cgm-partner-card {
	padding: 1.25rem;
	display: flex;
	flex-direction: column;
	margin-bottom: 0 !important;
}

.cgm-partner-card .charity-block-buttons {
	margin-top: auto;
	padding-top: 1rem;
}

.cgm-lead-in-slam, .cgm-inline-slam {
	font-weight: 800;
	color: #00a950;
}

.cgm-become-overview {
	gap: 24px 70px;
}

.cgm-become-overview .charity-column {
	flex-basis: 0% !important;
	flex-shrink: 1 !important;
}

.cgm-become-overview .charity-column-0 {
	flex-grow: 1.2 !important;
}

.cgm-become-overview .charity-column-1 {
	flex-grow: 1 !important;
}

body.cgm-charity-static .cgm-lead-in, body.cgm-charity-static .cgm-indent {
	margin-left: auto;
	margin-right: auto;
	max-width: 750px;
}

body.page-template-charity-landing .cgm-lead-in, body.page-template-charity-landing .cgm-indent {
	text-align: center;
	max-width: 750px;
}

body.page-template-charity-partners .cgm-lead-in, body.page-template-charity-partners .cgm-indent {
	text-align: left;
	max-width: 700px;
}

body.page-template-charity-become .cgm-lead-in, body.page-template-charity-become .cgm-indent {
	text-align: left;
	max-width: 680px;
}

body.page-template-charity-become .hentry .entry-content .wp-block-columns.cgm-info-group-wrapper > .wp-block-column, .editor-styles-wrapper .wp-block-columns .wp-block-column {
	margin-bottom: 0 !important;
}

body.page-template-charity-become .hentry .entry-content .wp-block-columns.cgm-info-group-wrapper {
	margin-block-end:0; }

.cgm-charity .charity-section.cgm-become-overview .charity-image.charity-image-svg > svg {
	height: 100%;
	width: 100%;
}

.charity-info-group.cgm-info-group {
	padding: 50px 0;
	border-radius: 20px;
}

.charity-info-group.cgm-info-group h3 {
	font-size: 18px;
}

@media(max-width: 781px) {

	body.cgm-charity.page-template-charity-become .cgm-charity-hero-container > img {
		/* object-position: -96vw -26vw !important; */
		width: 193%;
		object-position: right top !important;
		left: -92%;
		top: clamp(0px, 31%, 150px);
	}

	body.cgm-charity.page-template-charity-become .section--hero .wp-block-cover__inner-container .cgm-charity-hero-title-container h1.cgm-charity-hero-title {
		color: #005dab !important;
		text-shadow: none;
		font-size: clamp(32px, 4.2vw, 50px) !important;
		/* font-size: clamp(45px, 4.2vw, 50px) !important; */
	}

	body.cgm-charity.page-template-charity-become .section--hero .wp-block-cover__inner-container .cgm-charity-hero-title-container {
		width: 68%;
		width: max-content;
		top: -150px;
		width: 100%;
	}

	body.page-template-charity-become .cgm-charity-hero-title-container p.cgm-charity-hero-subtitle {
		margin-bottom: 26px;
	}

	body.cgm-charity.page-template-charity-become .cgm-charity-hero-title-container .charity-button.charity-do-action {
		font-size: 18px !important;
		font-size: clamp(18px, 3vw, 24px) !important;
	}

	body.page-template-charity-become .charity-overview-image {
		margin: 0 auto !important;
		width: 80% !important;
	}

	body.page-template-charity-become .cgm-charity-hero-title-container {
		/* width: calc(50% + (25vw / 7)); */
		width: calc(55% + (25vw / 7));
		position: relative;
		top: clamp(-75px, -11.7vw, -60px);
		left: 1.4vw;
		outline: var(--debug-magenta);
	}

	body.page-template-charity-become .cgm-lead-in {
		max-width: none;
		text-align: center;
	}

	body.page-template-charity-landing .cgm-lead-in {
		max-width: none;
		text-align: center;
	}

	.cgm-charity .charity-section.cgm-become-overview {
		margin: 35px auto;
	}

	.cgm-charity .charity-section.cgm-become-overview .charity-image {
		text-align: center;
	}

	.cgm-charity .charity-section.cgm-become-overview .charity-image.charity-image-svg > svg {
		max-width: 65%;
		min-width: 200px;
	}

	.charity-column.charity-column-1 .charity-content {
		max-width: 85%;
		margin: 0 auto;
	}
}

body.cgm-charity-static .cgm-charity-hero-subtitle {
	font-family: var(--charity-subtitle-family) !important;
	font-weight: var(--charity-subtitle-weight) !important;
}

body.page-template-charity-partners.cgm-charity-static .wp-block-cover .wp-block-cover__inner-container h1.cgm-charity-hero-title {
	font-family: var(--charity-subtitle-family) !important;
	font-weight: var(--charity-subtitle-weight) !important;
	float: right;
	font-size: clamp(45px, 5.8vw, 70px) !important;
	margin-right: 30px;
}

body.page-template-charity-partners.cgm-charity-static .wp-block-cover .wp-block-cover__inner-container {
	margin-top: 0;
	top: clamp(-150px, calc((100vw / 7) - 35%), -3px);
}

@media(max-width: 599px) {
	body.page-template-charity-partners.cgm-charity-static .wp-block-cover .wp-block-cover__inner-container {
		top: -170px;
	}

	body.page-template-charity-partners.cgm-charity-static h1.cgm-charity-hero-title {
		float: none !important;
		text-align: center !important;
		line-height: 10.5vw !important;
		margin-right: 0 !important
	}

	body.page-template-charity-partners.cgm-charity-static h1.cgm-charity-hero-title span:nth-child(n+3) {
		font-size: clamp(30px, 10.8vw, 70px) !important;
	}

	body.page-template-charity-partners.cgm-charity-static h1.cgm-charity-hero-title span:nth-child(1) {
		font-size: clamp(20px, 7.1vw, 46px) !important;
	}
}

@media(max-width: 499px) {
	body.page-template-charity-partners.cgm-charity-static .wp-block-cover > img {
		height: 164% !important;
		object-position: 13% 0% !important;
		overflow: visible !important;
		transform-origin: center;
		transform-box: fill-box;
		/* transform: rotate(-28deg) translate(21%, -14%); */
		top:-18%;
	}
}

@media(max-width: 782px) {
	body.page-template-charity-partners.cgm-charity-static .wp-block-cover > img {
		object-position: 0% 41% !important;
	}
}

@media(max-width: 599px) {
	body.page-template-charity-partners.cgm-charity-static .wp-block-cover > img {
		/* height: 129% !important; */
		object-position: 13% 0% !important;
		overflow: visible !important;
		transform-origin: center;
		transform-box: fill-box;
		/* transform: rotate(-28deg) translate(21%, -14%); */
	}
}

.tag_maxWidth_829px::after, .tag_minWidth_830px::after {
	content: "\00a0";
}

.tag_maxWidth_829px, .tag_minWidth_830px {
	display: contents;
	content: "\00a0";
}

.cgm-nlsp br {
	display: none;
}

.cgm-nlsp span {
	display: inline;
}

@media(max-width: 1063px) {
	body.page-template-charity-partners.cgm-charity-static .wp-block-cover .wp-block-cover__inner-container h1.cgm-charity-hero-title {
		margin-right: 15px;
	}
}

body.page-template-charity-become .charity-overview-text .charity-content {
	min-width: auto !important;
	width: 100% !important;
}

body.page-template-charity-become .charity-overview-image {
	width: 95%;
	margin: 0 0% 0 auto;
}

	body.cgm-charity.page-template-charity-become .section--hero .wp-block-cover__inner-container .cgm-charity-hero-title-container h1.cgm-charity-hero-title {
		color: #005dab !important;
		text-shadow: none;
		font-size: clamp(38px, 5.2vw, 72px) !important;
		/* font-size: 86px !important; */
	}

	body.page-template-charity-become .cgm-charity-hero-title-container p.cgm-charity-hero-subtitle {
		color: #00a950 !important;
		text-shadow: none;
		margin-bottom: 26px;
		line-height: 1.1;
		/* font-size: clamp(24px, 3.5vw, 54px) !important; */
		font-size: calc(clamp(38px, 5.2vw, 72px) * 0.63) !important;
	}

	body.cgm-charity.page-template-charity-become .cgm-charity-hero-title-container .charity-button.charity-do-action {
		font-size: calc(clamp(38px, 5.2vw, 72px) * 0.46) !important;
	}



	body.page-template-charity-become .section--hero .wp-block-cover__inner-container {
		width: 100% !important;
		max-width: none !important;
		/* outline: var(--debug-blue); */
	}

	body.page-template-charity-become .cgm-charity-hero-title-container {
		/* width: calc(50% + (25vw / 7)); */
		width: calc(55% + (25vw / 7));
		position: relative;
		top: clamp(-75px, -11.7vw, -60px);
		left: 1.4vw;
		outline: var(--debug-none);
	}
	body.page-template-charity-become .cgm-charity-hero-title-container {

	}




/* body.page-template-charity-become .cgm-charity-hero-title-container {
	width: calc(50% + (25vw / 7));
	position: relative;
	top: clamp(-85px, -3.7vw, -30px);
	outline: var(--debug-magenta);
} */

body.cgm-charity.cgm-charity-static .charity-button {
	border-radius: 20px !important;
}

body.cgm-charity.cgm-charity-static.page-template-charity-partners .charity-button {
	border-radius: 12px !important;
	font-size: 14px;
}

/* body.cgm-charity.page-template-charity-become .section--hero .wp-block-cover__inner-container .cgm-charity-hero-title-container h1.cgm-charity-hero-title {
	color: #005dab !important;
	text-shadow: none;
	font-size: clamp(45px, 4.2vw, 50px) !important;
} */

/* body.cgm-charity.page-template-charity-become .section--hero .wp-block-cover__inner-container .cgm-charity-hero-title-container {
	width: 75%;
} */

/* body.page-template-charity-become .cgm-charity-hero-title-container p.cgm-charity-hero-subtitle {
	color: #00a950 !important;
	text-shadow: none;
	margin-bottom: 26px;
}
 */
@media(max-width: 999px) {
	/* body.page-template-charity-become .cgm-charity-hero-title-container {
		top: -7.8vw;
		width: calc(55% + (25vw / 7));
	} */

	body.page-template-charity-landing .cgm-lead-in .charity-content p {
		text-align: center;
		width: 100%;
	}

	body.page-template-charity-landing .cgm-lead-in.cgm-lead-in-has-image .cgm-flex-row {
		flex-direction: column;
		gap: 2rem;
	}

	body.page-template-charity-landing .cgm-lead-in.cgm-lead-in-has-image .cgm-flex-row .cgm-flex-col-image {
		flex: 0 0 auto;
	}

	body.page-template-charity-landing .cgm-lead-in.cgm-lead-in-has-image .cgm-flex-row .cgm-flex-col-image img {
		margin: 0 auto !important;
	}

	body.page-template-charity-landing .cgm-lead-in.cgm-lead-in-has-image .cgm-flex-row .cgm-flex-col-text {
		flex: 0 0 auto;
	}

	body.page-template-charity-landing .cgm-lead-in.cgm-lead-in-has-image .cgm-flex-row .cgm-flex-col-text p {
		/* margin:0 10.3vw 0 0 !important; */
	}
}

body.page-template-charity-partners .cgm-lead-in .charity-column .charity-content p {
	margin: 0 !important;
}

.cgm-form-container > div > h3 {
	color: #00a950;
	text-align: center;
	margin-bottom: 30px;
	line-height: normal;
	font-size: 30px;
}

.cgm-form-container > div > h3 > span {
	display: block;
	text-transform: uppercase;
	font-size: 22px;
	font-family: PT Sans,sans-serif !important;
}

.cgm-form-container > div > h3 > strong {
	display: block;
	text-transform: uppercase;
}

.cgm-form-container-inner {
	padding: 50px 50px;
}

.cgm-form-container {
	background: #e1f3fd;
	border-radius: 15px;
}

.cgm-form-container .gform_heading {
	display: none;
}

.cgm-form-container .cgm-form input[type="text"], .cgm-form-container .cgm-form input[type="tel"], .cgm-form-container .cgm-form input[type="email"], .cgm-form-container .cgm-form input[type="url"], .cgm-form-container .cgm-form select, .cgm-form-container .cgm-form textarea {
	background: #fff;
	box-shadow: none;
	min-height: 40px !important;
	outline: none;
	border: 0 !important;
	padding: 8px;
	resize: none;
	transition: all .25s ease;
}

.cgm-nix-margins, .cgm-form-container form, .cgm-form-container .gform-footer input[type="submit"], .charity-section-become-coda > .charity-column {
	margin: 0 !important;
}

.cgm-form-container .gform-footer {
	padding-bottom: 0 !important;
}

.cgm-form-container form .gfield select {
	/* color:#757575; */
}

.cgm-form-container form .gfield label.gfield_label, .cgm-form-container form .gfield legend.gfield_label {
	color: #44697e;
	line-height: normal;
}

.cgm-form-container form .gfield.gfield_error label.gfield_label, .cgm-form-container form .gfield.gfield_error legend.gfield_label {
	color: #44697e;
}

.cgm-form-container label.gfield_label.gform-field-label > span.gfield_required, .cgm-form-container legend.gfield_label.gform-field-label > span.gfield_required {
	position: relative;
	/* top: -10px; */
	left: 2px;
}

.cgm-form-container .gfield label.gfield_label.gform-field-label > span.gfield_required > span.gfield_required.gfield_required_custom, .cgm-form-container .gfield legend.gfield_label.gform-field-label > span.gfield_required > span.gfield_required.gfield_required_custom {
	position: absolute;
	font-style: normal;
	font-size: 8px;
	color: #9dbed1;
}

@keyframes cgm-required-pulse {
	0% {
		color: #9dbed1;
	}

	100% {
		color: #db6c6c;
	}
}

.cgm-form-container .gfield.gfield_error label.gfield_label.gform-field-label > span.gfield_required > span.gfield_required.gfield_required_custom, .cgm-form-container .gfield.gfield_error legend.gfield_label.gform-field-label > span.gfield_required > span.gfield_required.gfield_required_custom {
	color: #db6c6c;
	animation: cgm-required-pulse 0.5s ease-in-out infinite alternate;
	font-size: 16px;
}

.cgm-form-container .gfield.gfield_error label.gfield_label.gform-field-label > span.gfield_required, .cgm-form-container .gfield.gfield_error legend.gfield_label.gform-field-label > span.gfield_required {
	/* top: -17px; */
	left: -1px;
}

.cgm-form-container .gfield_description.validation_message.gfield_validation_message {
	display: none;
}

.cgm-form-container .cgm-form input[type="text"]:focus:not([disabled]), .cgm-form-container .cgm-form input[type="text"]:active:not([disabled]), .cgm-form-container .cgm-form input[type="tel"]:focus:not([disabled]), .cgm-form-container .cgm-form input[type="tel"]:active:not([disabled]), .cgm-form-container .cgm-form input[type="email"]:focus:not([disabled]), .cgm-form-container .cgm-form input[type="email"]:active:not([disabled]), .cgm-form-container .cgm-form input[type="url"]:focus:not([disabled]), .cgm-form-container .cgm-form input[type="url"]:active:not([disabled]), .cgm-form-container .cgm-form select:focus:not([disabled]), .cgm-form-container .cgm-form select:active:not([disabled]), .cgm-form-container .cgm-form textarea:focus:not([disabled]), .cgm-form-container .cgm-form textarea:active:not([disabled]) {
	outline: #9ac6df solid 2px;
	box-shadow: 0px 0px 20px 2px #9ac6df7d;
}

.cgm-form-container .gform_validation_errors {
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	width: 100% !important;
	line-height: normal !important;
	border-radius: 0 !important;
	outline: none !important;
}

.cgm-form-container.cgm-lock .cgm-form .gform_body input, .cgm-form-container.cgm-lock .cgm-form select, .cgm-form-container.cgm-lock .cgm-form textarea {
	opacity: 1.0 !important;
	color: #969b9d !important;
	background: #f5fbff !important;
	pointer-events: none !important;
}

.cgm-form-container.cgm-lock .cgm-form .gform_body input::-webkit-input-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form .gform_body input:-webkit-input-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form .gform_body input::-moz-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form .gform_body input:-moz-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form .gform_body input::-ms-input-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form .gform_body input:-ms-input-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form .gform_body input::placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form .gform_body input:placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form select::-webkit-input-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form select:-webkit-input-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form select::-moz-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form select:-moz-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form select::-ms-input-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form select:-ms-input-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form select::placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form select:placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form textarea::-webkit-input-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form textarea:-webkit-input-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form textarea::-moz-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form textarea:-moz-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form textarea::-ms-input-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form textarea:-ms-input-placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form textarea::placeholder {
	color: #969b9d !important;
}

.cgm-form-container.cgm-lock .cgm-form textarea:placeholder {
	color: #969b9d !important;
}

.cgm-form-container .gform_validation_errors {
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	width: 100% !important;
	line-height: normal !important;
	border-radius: 0 !important;
	outline: none !important;
}

.cgm-form-validation-summary-container {
	padding: 30px 0;
	border-radius: 6px;
	background: #44697e;
	margin: 0 0 30px 0;
}

.cgm-form-validation-summary {
	display: flex;
	font-size: 14px;
	align-items: flex-start;
	gap: 20px;
	color: #e5eef4;
	line-height: normal;
	width: 460px;
	margin: 0 auto;
}

.cgm-form-validation-icon {
	flex: 0 0 auto;
	font-size: 42px;
	color: #e5eef4;
	line-height: normal;
}

.cgm-form-validation-text {
	flex: 1 1 auto;
	/* text expands to fill remaining space */
}

.cgm-form-validation-title {
	margin-bottom: 3px;
	font-size: 22px;
}

.cgm-form-validation-info {
	color: #b8cbd6;
}

.cgm-form-validation-list {
	margin: 25px 0 0;
	column-count: 2;
	column-gap: 0;
	padding: 0 0 0 20px;
}

.cgm-form-validation-list-item {
	margin: 0 0 7px 0;
	break-inside: avoid;
	max-width: 180px;
}

.cgm-form-container > div > h3 > strong > span:first-child {
	margin-right: 9px;
}

@media(max-width: 781px) {
	.cgm-form-validation-summary {
		width: auto;
		display: block;
		text-align: center;
	}

	.cgm-form-validation-list {
		column-count: 1;
		column-gap: 0;
		padding: 0 0 0 20px;
		text-align: left;
		max-width: 200px;
		margin: 25px auto 0;
	}
}

@media(max-width: 669px) {
	.cgm-form-container-inner {
		padding:20px;
	}

	.cgm-form-container > div > h3 > span {
		font-size: 18px;
	}

	.cgm-form-container > div > h3 > strong {
		line-height: 44px;
		margin: 5px 0 0 0;
	}

	.cgm-form-container > div > h3 > strong > span {
		display: block;
	}

	.cgm-form-container > div > h3 > strong > span:first-child {
		font-size: 29px;
	}

	.cgm-form-container > div > h3 > strong > span:last-child {
		font-size: 64px;
		position: relative;
		left: -5px;
	}
}

@media(max-width: 499px) {
	.cgm-form-validation-title {
		font-size:18px;
	}

	.cgm-form-validation-info {
		font-size: 12px;
		width: 200px;
		margin: 0 auto;
	}

	.cgm-form-container > div > h3 > span {
		font-size: 15px;
	}

	.cgm-form-container > div > h3 > strong {
		line-height: 36px;
		margin: 5px 0 0 0;
	}

	.cgm-form-container > div > h3 > strong > span:first-child {
		font-size: 19px;
	}

	.cgm-form-container > div > h3 > strong > span:last-child {
		font-size: 42px;
		position: relative;
		left: -5px;
		top: -5px;
	}

	.cgm-form-container > div > h3 {
		margin-bottom: 20px
	}
}

@media(max-width: 495px) {

	body.cgm-charity.page-template-charity-become .cgm-charity-hero-container > img {
		width: 100% !important;
		left: 0 !important;
		right: auto !important;
		top: 0 !important;
		bottom: auto !important;
		height: clamp(500px, calc(100vw * 1.4), 1500px) !important;
		overflow: visible !important;
		object-position: 88% 140px !important;
		position: absolute !important;
		object-fit: cover !important;
	}

	body.cgm-charity.page-template-charity-become .cgm-charity-hero-container {
		padding-top:38px;
	}


	body.cgm-charity.page-template-charity-become .section--hero .wp-block-cover__inner-container .cgm-charity-hero-title-container h1.cgm-charity-hero-title {
		color: #005dab !important;
		text-shadow: none;
		font-size: clamp(24px, 9.2vw, 38px) !important;
		white-space: nowrap;
		margin-inline:auto;
		position:absolute;
		right:0;
		width:150%;
		left:-25%;
		text-align:center;
		top:-39px;
		outline:var(--debug-red);


	}

	body.page-template-charity-become .cgm-charity-hero-title-container p.cgm-charity-hero-subtitle {
		color: #00a950 !important;
		text-shadow: none;
		margin-bottom: 26px;
		line-height: 1.1;
		font-size: calc(clamp(24px, 9.2vw, 38px) * 0.63) !important;
		/* padding-top:21px; */
		position: relative;
		top: 21px;
		outline:var(--debug-magenta);
	}

	body.cgm-charity.page-template-charity-become .cgm-charity-hero-title-container .charity-button.charity-do-action {
		font-size: calc(clamp(24px, 9.2vw, 38px) * 0.46) !important;
	}

	body.cgm-charity.page-template-charity-become .cgm-charity-hero-title-container .charity-block-button.wp-block-button {
		outline:var(--debug-black);
		padding-top: 21px;
	}

}

.cgm-form-validation-list-item > span.bull-container {
	position: relative;
	top: 1px;
	color: #db6c6c;
	font-size: 16px;
}

a.cgm-form-validation-field-jump {
	color: #fff;
	font-family: PT Sans,sans-serif !important;
	text-decoration: none !important;
	transition: all .25s ease;
	margin-left: 10px
}

a.cgm-form-validation-field-jump:hover, a.cgm-form-validation-field-jump:active, a.cgm-form-validation-field-jump:focus {
	color: #b8cbd6;
	transition: all .25s ease;
}

@media(max-width: 799px) {
	/* body.cgm-charity.page-template-charity-become .cgm-charity-hero-container > img {
		width: 200%;
		object-position: right top !important;
		left: -88%;
	}

	body.cgm-charity.page-template-charity-become .section--hero .wp-block-cover__inner-container .cgm-charity-hero-title-container h1.cgm-charity-hero-title {
		color: #005dab !important;
		text-shadow: none;
		font-size: clamp(32px, 4.2vw, 50px) !important;
	}

	body.cgm-charity.page-template-charity-become .section--hero .wp-block-cover__inner-container .cgm-charity-hero-title-container {
		width: 100%;
	}

	body.page-template-charity-become .cgm-charity-hero-title-container p.cgm-charity-hero-subtitle {
		margin-bottom: 26px;
	}

	body.cgm-charity.page-template-charity-become .cgm-charity-hero-title-container .charity-button.charity-do-action {
		font-size: 18px !important;
		font-size: clamp(18px, 3vw, 24px) !important;
	} */
}

/*************************************************/
/* LANDING PAGE  */
/*************************************************/
@media(min-width: 1200px) {

	body.page-template-charity-landing .section--hero .wp-block-cover__inner-container {
		width: 100% !important;
		max-width: none !important;
		outline: var(--debug-blue);
	}

	body.page-template-charity-landing .section--hero .wp-block-cover__inner-container h1.CHOCK-large {
		font-weight: var(--CHOCK-font-weight) !important;
		line-height: 1.1;
		font-size: clamp(60px, 4.9vw, 120px) !important;
		outline: var(--debug-cyan);
	}

	body.page-template-charity-landing .CHOCK-medium {
		font-weight: 600 !important;
		line-height: 1.1;
		font-size: clamp(44px, 3.625vw, 87.6px) !important;
		outline: var(--debug-cyan);
	}

	body.page-template-charity-landing .cgm-landing-card {
		padding: 4.3vw 0;
		outline: var(--debug-blue);
	}

	body.page-template-charity-landing .cgm-lead-in {
		left: 0;
		margin-top: 5% !important;
		font-size: clamp(16px, calc(16px + 0.45vw), 46px);
		max-width: none;
		margin-top: 60px;
		outline: var(--debug-magenta);
		text-align: left;
		width: auto;
		margin-left: calc(2.617924em + 4.7vw) !important;
		margin-right: calc(2.617924em + 4.7vw) !important;
		margin-bottom: 5% !important;
	}

	body.page-template-charity-landing .cgm-lead-in .charity-content p {
		padding-top: 0;
	}

	body.page-template-charity-landing .cgm-lead-in .charity-content img {
		position: relative;
	}

	body.page-template-charity-landing .cgm-lead-in .charity-content {
		position: relative;
	}

	/* main title on each card */
	.charity-cta-card h2 {
		font-size: clamp(22px, calc(12px + 2.8vw), 80px);
		margin-bottom: 4.2vw;
	}

	/* single step item number */
	body.page-template-charity-landing .cgm-svg-number {
		width: 2.8vw;
		outline: var(--debug-magenta);
	}

	body.page-template-charity-landing .cgm-svg-number svg {
		height: 4vw;
	}

	/* single step item title */
	.cgm-landing-step h3 {
		font-size: clamp(22px, calc(22px + 0.72vw), 43px);
		outline: var(--debug-magenta);
	}

	/* single step item caption */
	.cgm-landing-step p {
		font-size: clamp(16px, calc(16px + 0.5vw), 46px);
		outline: var(--debug-green);
	}

	/* "make your donations count" card caption */
	.charity-cta-card.cgm-landing-card .cgm-caption {
		font-size: clamp(16px, calc(16px + 0.5vw), 46px);
		outline: var(--debug-magenta);
		width: 100% !important;
		max-width: 1120px;
	}

	.cgm-landing-card-button {
		margin-top: 4.7vw !important;
		outline: var(--debug-black);
	}

	.cgm-landing-card-button .charity-button {
		font-size: clamp(30px, 2.5vw, 46px) !important;
	}

	body.page-template-charity-landing .cgm-lead-in.cgm-lead-in-has-image .cgm-flex-row .cgm-flex-col-text p {
		margin: 0 10.3vw 0 0 !important;
	}
}

/*************************************************/
/* BECOME PAGE  */
/*************************************************/
@media(min-width: 1200px) {
	body.cgm-charity.page-template-charity-become .section--hero .wp-block-cover__inner-container .cgm-charity-hero-title-container h1.cgm-charity-hero-title {
		color: #005dab !important;
		text-shadow: none;
		font-size: clamp(72px, 4.2vw, 86px) !important;
		/* font-size: 86px !important; */
	}

	body.page-template-charity-become .cgm-charity-hero-title-container p.cgm-charity-hero-subtitle {
		color: #00a950 !important;
		text-shadow: none;
		margin-bottom: 26px;
		line-height: 1.1;
		/* font-size: clamp(24px, 3.5vw, 54px) !important; */
		font-size: calc(clamp(72px, 4.2vw, 86px) * 0.63) !important;
	}

	body.page-template-charity-become .section--hero .wp-block-cover__inner-container {
		width: 100% !important;
		max-width: none !important;
		/* outline: var(--debug-blue); */
	}

	body.page-template-charity-become .cgm-charity-hero-title-container {
		width: calc(50% + (25vw / 7));
		position: relative;
		top: clamp(-50px, -3.7vw, -30px);
		left: 1.4vw;
		outline: var(--debug-magenta);
	}
	body.page-template-charity-become .cgm-charity-hero-title-container {
		width: calc(55% + (25vw / 7));
	}

	body.cgm-charity.page-template-charity-become .cgm-charity-hero-title-container .charity-button.charity-do-action {
		font-size: calc(clamp(72px, 4.2vw, 86px) * 0.44) !important;
	}


	/* overview text right column */
	body.page-template-charity-become .charity-overview-text .charity-content {
		min-width: 380px !important;
		font-size: clamp(16px, calc(16px + 0.45vw), 46px);
		outline: var(--debug-magenta);
	}

	/* turnkey container  */
	.charity-info-group.cgm-info-group {
		padding: 5.8% 0;
		outline: var(--debug-blue);
	}

	/* container of entire "turnkey" title  */
	.charity-info-group h2 {
		margin-bottom: 6%;
		outline: var(--debug-blue);
	}

	/* "this is a turnkey partnership" */
	.charity-info-group.cgm-info-group h2 strong {
		display: block;
		font-size: clamp(22px, calc(8px + 1.5vw), 46px);
		outline: var(--debug-blue);
	}

	/* "where we handle everything"  */
	.cgm-block-group-headline {
		font-size: clamp(22px, calc(18px + 1.5vw), 46px);
		outline: var(--debug-blue);
	}

	/* turnkey single item icon container */
	.cgm-svg-icon-container {
		height: auto;
		margin-bottom: clamp(47px, 3.40vw, 67px);
		outline: var(--debug-blue);
	}

	/* turnkey single item icon */
	.cgm-svg-icon {
		height: clamp(75px, 6.2vw, 123px);
		margin: 0;
		outline: var(--debug-blue);
	}

	/* turnkey single item title */
	.charity-info-group.cgm-info-group h3 {
		font-size: clamp(18px, calc(16px + 0.7vw), 46px);
		outline: var(--debug-blue);
	}

	/* turnkey single item caption  */
	.cgm-group-block p {
		font-size: clamp(16px, calc(16px + 0.5vw), 46px);
		outline: var(--debug-blue);
	}
}

/*************************************************/
/* PARTNERS PAGE  */
/*************************************************/
@media(min-width: 1200px) {
	body.page-template-charity-partners.cgm-charity-static .cgm-keep-gutters {
		margin-left: calc(2.617924em + 1.6vw) !important;
		margin-right: calc(2.617924em + 1.6vw) !important;
	}

	body.page-template-charity-partners.cgm-charity-static .wp-block-cover > img {
		object-position: 0% 55% !important;
		overflow: visible !important;
	}

	body.page-template-charity-partners.cgm-charity-static .cgm-lead-in p {
		font-size: clamp(16px, calc(16px + 0.5vw), 46px);
	}

	body.page-template-charity-partners.cgm-charity-static .cgm-lead-in {
		max-width: 70%;
		margin: 60px auto 70px auto;
	}

	body.page-template-charity-partners.cgm-charity-static .wp-block-cover .wp-block-cover__inner-container {
		position: absolute;
		top: 60px;
		width: 58% !important;
		width: auto !important;
		right: -17px;
	}

	body.page-template-charity-partners.cgm-charity-static .wp-block-cover .wp-block-cover__inner-container h1.cgm-charity-hero-title {
		float: none;
		outline: var(--debug-none);
		font-size: clamp(69.5px, 5.2vw, 126px) !important;
		margin-right: 0;
		white-space: nowrap !important;
		margin-right: 4.2vw;
		position: absolute;
		top: 26%;
		left: -50vw;
	}

	body.page-template-charity-partners.cgm-charity-static .cgm-partner-card {
		width: 100%%;
	}

	.wp-block-columns.is-style-cards {
		gap: 2.2rem;
	}

	.wp-block-columns.is-style-cards .wp-block-column p {
		margin: clamp(0px, 1.8vw, 70px) 0 50px !important;
		font-size: clamp(16px, calc(16px + 0.5vw), 46px);
	}

	.cgm-partner-card > div {
		padding: 0 2.5rem;
	}

	.wp-block-columns.is-style-cards .wp-block-column {
		padding: 2.25rem;
	}

	.cgm-partner-card > div > div img {
		height: 120px;
	}

	.cgm-partner-card .charity-button {
		font-size: clamp(22px, 1.5vw, 34px) !important;
	}
}

@media(min-width: 1200px) {
	body.cgm-charity:not(.cgm-charity-single) .charity-container > .charity-sections {
		max-width:none;
	}

	body.page-template-charity-become .cgm-lead-in, body.page-template-charity-become .cgm-indent {
		left: 0;
		margin: 0 10%;
		font-size: clamp(16px, calc(16px + 0.45vw), 46px);
		max-width: none;
		width: min(80%, 1400px);
		margin-inline: auto; margin-top: 60px
	}

	.cgm-keep-gutters {
		margin-left: calc(2.617924em + 4.7vw) !important;
		margin-right: calc(2.617924em + 4.7vw) !important;
	}
}

@media(min-width: 1600px) {
	body.cgm-charity.page-template-charity-become .cgm-charity-hero-container > img {
		object-position: 0 clamp(-1200px, -12.3vw, 1px) !important;
		width: 104%;
	}
}

@media(min-width: 1900px) {
	.charity-cta-card.cgm-landing-card .cgm-caption {
		font-size: clamp(16px, calc(16px + 0.5vw), 46px);
		width: 70%;
		max-width: 1500px;
	}

	/* "this is a turnkey partnership" */
	.charity-info-group.cgm-info-group h2 strong {
		display: inline;
		font-size: clamp(22px, calc(18px + 1.5vw), 56px);
	}

	/* "where we handle everything"  */
	.cgm-block-group-headline {
		font-size: clamp(22px, calc(18px + 1.5vw), 56px);
	}
}

@media(max-width: 415px) {
	body.single-charity .charity-logo > img {
		outline:var(--debug-magenta);
		max-height: 50px;
		object-fit: contain;
		overflow: auto;
		margin: 0 auto;
		height: auto;
	}
}

#gform_confirmation_message_6 {
	text-align: center;
}

.cgm-charity-logo-container figure.wp-block-image {
	width:100%;
}

.cgm-christys-legacy-logo-wrap {
	background: #ffffff;
	padding: 10px 30px 30px;
	border-radius: 20px;
	box-shadow: 0px 0px 15px 6px #ccccccc9;
	margin-inline: auto;
	width:fit-content;
}



body:not(.page-id-269233) #content > div.col-full {
	padding: 0px !important;
}


/**************************************************************************************************/
/*!		DEBUG	*/
/**************************************************************************************************/


/* force open some divs when doing debug view */
body.qrk-origin #ds-fe__checkout-wrapper,
body.qrk-origin #psp-forgot-password,
body.qrk-origin #ds-fe__date-picker,
body.qrk-origin #ds-fe__products_wrapper,
body.qrk-origin #ds-fe__products_wrapper .ds-fe__display-none
{
	display: block !important;
}

.step-wizard a:focus-visible {
	outline-offset: 0px !important;
}

.step-wizard button:hover {
	outline: 0 !important;
}
.step-wizard button:focus {
	outline: 2px solid #015dab !important;
}


.step-spacer {
	height: 0 !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* --- Actual main styles for the step pages --- */
.steps-title {
  color: #015dab;
}

.confirm-num {
  color: #111827;
}

.scheduled-green-box {
  margin-left: 270px;
  margin-right: 270px;
}

@media (max-width: 781px) {
  .wizard-main-section .wp-block-columns.needed-items {
	flex-wrap: nowrap !important;
	flex-direction: row !important;
  }
}
@media (max-width: 767px) {

	.qrk-alert-wrap {
		margin-top: 0 !important;
	}
  .above-steps {
    height: 110px !important;
  }

  .step-2-btm-space {
    height: 250px;
  }

  .wizard-main-section {
    width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0px !important;
    padding-right: 0px !important;
  }

  .wizard-main-section > .wp-block-group__inner-container,
  .wizard-main-section > .wp-block-columns {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .wizard-main-section .wp-block-columns {
    flex-direction: column !important;
    gap: 30px !important;
  }

  .wizard-main-section .wp-block-columns.needed-items {
	flex-wrap: nowrap !important;
	flex-direction: row !important;
  }


  .step-content-2 .wizard-charity-main-section > div > div.wp-block-columns {
	  flex-direction: column-reverse !important;
  }


  .wizard-main-section .wp-block-columns > .wp-block-column {
	  width: 100%;
  }


  .charity-card {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* steps background */
.wizard-main-section {
  background: #f4f7fa !important;
  padding-top: 80px !important;
  padding-top: 40px !important;
  padding-bottom: 100px !important;
  padding-bottom: 50px !important;
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

/* Force the inner content to stay centered with side margins */
.wizard-main-section > .wp-block-group__inner-container,
.wizard-main-section > .wp-block-columns {
  max-width: 1440px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
}

.wizard-main-section .wp-block-columns {
  display: flex !important;
  align-items: flex-start !important;
  gap: 40px !important;
}

/* --- Pickup Guidelines Sidebar --- */
.needed-items-list {
	background: #fff;
	margin-top: var(--wp--preset--spacing--70);
	margin-top: 1.75em;
	margin-top: 45px;
	border-radius: 15px;
	max-width: 600px;
	margin-inline: auto;
	padding: 1.25em 2.375em 1.25em 1.8em;
	padding: 1.25em 1.8em 1.25em 1.5em;
	padding: 1.25em 0.4em 1.25em 0.4em;
	padding: 1.25em 2.375em;
	padding: 1.25em 2.375em 1.25em 1.0em;
	padding: 1.25em 2.0em;
	padding: 1.25em 1.7em;
	padding: 1.25em 1.9em 1.25em 1.7em;
	/* margin-bottom: 1.75em; */
}

.needed-items-list .heading {
	display: block;
	/* grid-template-columns:  40px 1fr; */

}

.wizard-main-section .wp-block-columns.needed-items {
	max-width: 600px;
	margin-inline: auto;
}

.pickup-guidelines-list {
	max-width: 600px;
	max-width: 490px;
	max-width: 410px;
	max-width: 340px;
	margin-inline: auto;
}
.pickup-guidelines-list-item {
	display: grid;
	grid-template-columns: 45px minmax(0, 1fr);
	grid-template-rows: auto auto;
	row-gap: 0;
	column-gap: 15px;
	align-items: start;
	margin-bottom: 36px;
}

.needed-items-inner {
	/* display: grid; */
	/* grid-template-columns: 45px minmax(0, 1fr); */
	/* grid-template-columns: .25fr minmax(0, 1fr); */
	/* grid-template-columns: .25fr minmax(0, 1fr); */
	/* grid-template-columns: 65px minmax(0, 1fr); */
	/* grid-template-columns: 60px minmax(0, 1fr); */
	/* grid-template-columns: .2fr minmax(0, 1fr); */
	/* grid-template-columns: 1fr; */

	/* grid-template-rows: auto auto; */
	/* row-gap: 0;
	column-gap: 15px;
	column-gap: 0;
	align-items: start; */
	margin-bottom: 0;
}

.pickup-guidelines-box > h4,
.pickup-guidelines-list-item h4 {
	font-size: 20px;
	font-weight: 800;
	color: #111827;
	grid-column: 2;
	grid-row: 1;
	margin: 0;
	line-height: 100%;
}
.pickup-guidelines-box > h4{
	margin-bottom: 1.75em;
	margin-bottom: 50px;

	font-size: 28px;
}
.needed-items-list h4 {
	font-size: 22px;
	font-weight: 800;
	color: #111827;
	line-height: 1.618;
	margin: 0;
	display: inline-block;
	position: relative;
	top: -5px;
	left: 10px;
}

.pickup-guidelines-list-item .caption {
	font-family: "filson-pro", sans-serif !important;
	color: #4a5565;
	margin-top: var(--wp--preset--spacing--20);
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0;
	font-size: 17px;
	font-style: normal;
	font-weight: 400;
	grid-column: 2;
	grid-row: 2;
	/* padding-right: 15px; */
}

.needed-items-list .caption {
	font-family: "filson-pro", sans-serif !important;
	color: #4a5565;
	margin-top: var(--wp--preset--spacing--20);
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 10px;
	font-size: 17px;
	font-style: normal;
	font-weight: 500;
	padding-right: 0;

}

.needed-items-list i.fas,
.pickup-guidelines-list-item i.fas {
	font-size: 27px;
	color: #0055a5;
	grid-column: 1;
	grid-row: 1 / span 2;
}

.needed-items-list i.fas {
	/* margin-top: 2px; */
	color: #0055a5;
	font-size: 35px;
	justify-self: center;
	/* justify-self: end; */
	justify-self: start;
	align-self: normal;
	position: relative;
	/* top: 5px; */
	/* left: -5px; */
}

.pickup-guidelines-box {
	/* flex: 0 0 33.34% !important; */
  background: #ebf7ff !important;
  border: 1px solid #bee3ff !important;
  border-radius: 15px !important;
  padding: 40px 30px !important;
  height: auto !important;
  align-self: flex-start !important;
  margin-inline: auto !important;
  box-shadow: 0 10px 30px rgba(1, 93, 171, 0.05) !important;
}

.charity-grid-container {
	flex: 0 0 66.67% !important;
}


/* Force the Icon element to remove default padding/margins */
.pickup-guidelines-box .wp-block-column:first-child .wp-block-icon {
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
}

/* Ensure images (like the heart) and icons share the same vertical nudge */
.pickup-guidelines-box .wp-block-column:first-child img,
.pickup-guidelines-box .wp-block-column:first-child .wp-block-icon svg {
  margin-top: 5px !important;
}

/* standardizing the gap across all rows */
.pickup-guidelines-box .wp-block-columns {
  gap: 15px !important;
}

/*--- ART START HERE FOR ALL PLACEHOLDER STYLING ---*/

/* --- Step Tracker Placeholder Styling --- */
.step-wizard .step-tracker .step-item[aria-disabled="false"] {
  cursor: pointer;
}
.step-wizard .step-tracker .step-item[aria-disabled="false"]:hover .step-label {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.step-wizard .step-tracker .step-item[aria-disabled="false"]:focus-visible {
  outline: 3px solid #015dab;
  outline-offset: 5px;
  border-radius: 8px;
}
.step-tracker {
  -webkit-user-select: none;
  user-select: none;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  max-width: 900px !important;
  margin: 0 auto 50px !important;
  padding: 20px !important;
  transition: opacity 0.4s ease;
  min-height: 143px;
}

.step-item {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 15px !important;
  flex: 1 !important;
  min-width: 62px;
}

.step-circle {
  width: 65px !important;
  height: 65px !important;
  background: #e9f2f9 !important;
  color: #1a2b3c !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  position: relative !important;
}

.step-label {
  font-size: 14px !important;
  font-weight: 800 !important;
  color: #94a3b8 !important;
  letter-spacing: 1px !important;
}

.step-line {
  height: 3px !important;
  background: #e2e8f0 !important;
  flex: 1 !important;
  margin-bottom: 30px !important;
}

.step-item.active .step-circle {
  background: #02a950 !important;
  color: #ffffff !important;
  box-shadow: 0 0 0 6px #d1f2e1 !important;
}

.step-item.completed .step-circle {
  background: #02a950 !important;
  color: #ffffff !important;
  font-size: 18px !important;
}

.step-item .step-circle i.fas {
  display: none;
}

.step-item.completed .step-circle .step-number {
  display: none;
}
.step-item.completed .step-circle i.fas {
  display: block;
}

.step-wizard.loading .step-item.completed .step-label {
	/* color: #86988d !important; */
	/* color: #94a3b8 !important; */
}

.step-wizard.loading .step-line.active,
.step-wizard.loading .step-item.completed .step-circle,
.step-wizard.error .step-line.active,
.step-wizard.error .step-item.completed .step-circle,
.step-wizard.error .step-item.active .step-circle

{
	/* background: #7a8da1 !important; */
	background: #1a2b3c85 !important;
	background: #6bae8a !important;
	background: #86988d !important;
}

.step-wizard.loading .step-item.completed.terminal .step-circle .step-number {
	display: block;
	font-size: 28px;
}

.step-wizard.loading .step-item.completed.terminal .step-circle i.fas {
	display: none;
}


.step-item.completed .step-label,
.step-item.active .step-label {
  color: #1a2b3c !important;
}

.step-line.active {
  background: #02a950 !important;
}

/* Final Step Circle Styling */
.step-item.final-step .step-circle {
  background: #015dab !important;
  box-shadow: 0 0 0 6px #dceefc !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

/* Sizing for the celebration PNG */
.final-step-icon {
  width: 32px !important;
  height: auto !important;
  object-fit: contain !important;
  filter: brightness(0) invert(1) !important;
}

.step-item.final-step .step-label {
  color: #1a2b3c !important;
  font-weight: 800 !important;
}

/* --- End Step Tracker Placeholder Styling --- */

/* --- STEP: 1 Zip Code Placeholder Card --- */
.zip-container {
  background: #f4f7fa !important;
  border-radius: 15px !important;
  padding: 60px 40px !important;
  max-width: 650px !important;
  margin: 0 auto !important;
  box-shadow: 0 32px 80px -16px rgba(0, 0, 0, 0.08) !important;
  display: flex !important;
  flex-direction: column !important;
  /* gap: 65px !important; */
  border: 1px solid rgba(0, 0, 0, 0.02) !important;
}

.zip-input {
	height: 71px;
	position: relative;
  background: #ffffff !important;
  border: 1px solid #d1d5db !important;
  border-radius: 12px !important;
  padding: 20px 25px !important;
  padding: 0 25px !important;
  display: flex !important;
  align-items: center !important;
  gap: 15px !important;
  color: #94a3b8 !important;
  font-size: 18px !important;
}

.ds-btn {
	background: var(--ds-button-background, #015dab) !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 50px !important;
	padding: 25px 50px !important;
	font-size: 18px !important;
	font-weight: 800 !important;
	cursor: pointer !important;
	transition: background 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease !important;
}

.ds-btn:hover {
	outline: 0 !important;
	box-shadow: 0 4px 11px 1px var(--ds-button-shadow, #e3e3e3) !important;
	transform: translateY(-4.2%) !important;
	background: var(--ds-button-hover, #018c42) !important;
}

/* The wizard's existing .active flag still gates confirmation actions. */
.ds-btn.disabled,
.ds-btn[disabled],
.ds-btn.step-confirm-btn:not(.active) {
	background: #bababa !important;
	pointer-events: none !important;
	box-shadow: none !important;
	transform: none !important;
	transition: background 0.3s ease !important;
}

.ds-btn.ds-btn-sm {
	padding: 14px 25px !important;
	font-size: 13px !important;
}

.zip-btn { margin-top: 50px; }

/* --- End Zip Code Placeholder Card --- */

/* --- Zip Code Change Bar Placeholder --- */


.zip-display-group {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.zip-display-group i {
  color: #015dab !important;
  font-size: 16px !important;
}

.zip-number {
  font-size: 20px !important;
  font-weight: 900 !important;
  color: #111827 !important;
  letter-spacing: 1.1px !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  display: inline-block !important;
}

.zip-change-container {
	display: none;
	width: 100%;
	text-align: center;
	margin-bottom: 40px;
}

.zip-change-bar {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 15px !important;
  max-width: fit-content !important;
  margin: 0 auto !important;
}



.secondary-btn {
	background: #fff !important;
	display: inline-block !important;
	padding: 10px 25px !important;
	border: 2px solid #e2e8f0;
	border-radius: 50px !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	color: #015dab !important;
	text-decoration: none !important;
	letter-spacing: 1px !important;
	text-transform: uppercase !important;
	transition: all 0.3s ease !important;
}


.secondary-btn:hover {
	box-shadow: 0px 4px 11px 1px #e3e3e37a !important;
	transform: translateY(-.8px) !important;
	transform: translateY(-1.5%) !important;
	transform: translateY(-4.2%) !important;
	background: #f8fafc !important;
	border-color: #015dab !important;
}

.zip-change-btn {
	padding: 10px 15px !important;
}


.zip-change-faux-link {
  font-size: 13px !important;
  font-weight: 800 !important;
  color: #015dab !important;
  letter-spacing: 1.5px !important;
  font-family: "filson-pro", sans-serif !important;
}




/* --- STEP: 1 End Zip Code Change Bar Placeholder --- */

/* --- STEP 2: Charity Selection Grid (Strict 2x2) --- */

.step-content-2 .charity-grid-wrap {
	margin: 0;
}

.step-content-2 .pickup-guidelines-box .pickup-guidelines-box-header.wp-block-columns > div.wp-block-column
 {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	justify-content: center !important;
	margin: 0 !important;
	width: 100% !important;
}

.pickup-guidelines-box > h4 {
	text-align: center;
}
.step-content-2 .pickup-guidelines-box .pickup-guidelines-box-header.wp-block-columns > div.wp-block-column h4 {
	text-align: center;
}


.charity-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 30px !important;
  margin-bottom: 50px !important;
  width: 100% !important;
}

.charity-card {
  background: #ffffff !important;
  border-radius: 20px !important;
  padding: 40px 30px !important;
  text-align: center !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05) !important;
  border: 3px solid transparent !important;
  transition: all 0.3s ease !important;
  transition: box-shadow 0.3s ease, transform 0.3s ease, border 0.1s ease !important;
  outline: 3px solid transparent;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.charity-card:hover {
	background: #ffffff !important;
  transform: translateY(-5px) !important;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08) !important;
}

.charity-card.selected {
  border-color: #02a950 !important;
  transform: translateY(-5px) !important;
  transition: box-shadow 0.3s ease, transform 0.3s ease, border 0.3s ease !important;
}


.charity-card a.read-more i.fa {
	opacity: 0;
	position: absolute;
	font-size: 12px;
	margin-left: 3px;
	margin-top: 1px;
	color: #AAA;
	/* color:#ccc; */
	transition: all .5s .1s ease;
}

.charity-card a.read-more:hover {
	/* transform: translateY(-7px); */
	transform: translateY(-1px);
	/* transform: translateY(-4.2%); */
	/* transform: translateY(-.75px); */
	/* opacity: .5; */
}

.charity-card a.read-more:hover i.fa {
	opacity: 1;
}



.charity-card a.read-more:hover > span {
	/* transform: translateY(-.75px); */
	opacity: .5;
}



.charity-logo {
  height: 120px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
}

.charity-logo img {
  max-height: 100% !important;
  max-width: 180px !important;
  object-fit: contain !important;
  border-radius: 0 !important;
}

.charity-card h4 {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #1a2b3c !important;
  margin-bottom: 15px !important;
  line-height: normal;
}

.charity-card p {
  font-size: 14px !important;
  color: #64748b !important;
  line-height: 1.6 !important;
  margin-bottom: 10px !important;
}

a.read-more {
  font-size: 11px !important;
  font-weight: 900 !important;
  color: #015dab !important;
  text-decoration: none !important;
  /* display: block !important; */
  display: inline-block !important;
  vertical-align: top !important;
  margin-bottom: 25px !important;
  letter-spacing: 1px !important;
  outline: none !important;
  outline-color: transparent !important;
  transition: all .25s ease;
}


.charity-grid .charity-card .ds-btn {
	width: 100% !important;
	text-transform: uppercase;
}

.charity-grid .charity-card.selected .ds-btn { background: #018c42 !important; }
.charity-grid .charity-card.selected .ds-btn:hover { background: #037237 !important; }

.charity-grid .charity-card .select-btn .default-text { display: inline; }
.charity-grid .charity-card.selected .select-btn .default-text { display: none; }

.charity-grid .charity-card .select-btn .selected-text { display: none; }
.charity-grid .charity-card.selected .select-btn .selected-text { display: inline; }

.charity-grid-action {
  text-align: center !important;
  width: 100% !important;
}








/* --- Mobile --- */
@media (max-width: 899px) {



.charity-grid-busy .faux-inner,
  .charity-grid {
    grid-template-columns: 1fr !important;
  }
}



@media (max-width: 767px) {

	.wizard-date-main-section .loading-placeholder .faux-calendar-month-year {
		width:200px !important;
		height:40px !important;
	}
	.wizard-date-main-section .loading-placeholder .faux-calendar-nav {
		width:115px !important;
		height:45px !important;
	}
	.wizard-date-main-section .loading-placeholder .faux-day-names {
		margin:40px 5% 15px !important;
		height:30px !important;
	}
	.wizard-date-main-section .loading-placeholder .faux-calendar-grid {
		margin:0 1.5% 0 !important;
		height:55vw !important;
		max-height: 420px !important;
	}

.pickup-guidelines-box > h4,
.pickup-guidelines-list-item h4,
.needed-items-inner h4 {
	font-size: 22px;
	text-size-adjust: 100%;
	letter-spacing: -1px;
}

.needed-items-inner h4 {
	position: relative;
	top: -5px;
	left: 10px;
}

.pickup-guidelines-box > h4 {
	font-size: 28px;
}

  .step-circle {
    width: 45px !important;
    height: 45px !important;
    font-size: 18px !important;
  }

  .step-label {
    font-size: 10px !important;
  }

  .zip-container {
    padding: 30px 20px !important;
    gap: 30px !important;
    margin: 0 15px !important;
  }

  .zip-input {
    padding: 15px !important;
    font-size: 16px !important;
  }

  .zip-btn { margin-top: 0 !important; }

  .ds-btn:not(.ds-btn-sm) {
    padding: 18px !important;
    font-size: 16px !important;
  }
}

@media (max-width: 479px) {
  .step-line {
    display: none !important;
  }

  .step-tracker {
    gap: 10px !important;
    gap: 0px !important;
	justify-content: center;
	padding: 20px 5px 0 !important;
	margin: 0 !important;
	position: absolute;
	left: 0;
	width: 100%;
  }

  .step-spacer {
	  height: 166px !important;
	  opacity: 1 !important;
	  pointer-events: none !important;
  }

}

/* --- STEP 2: End Charity Selection Grid (Strict 2x2) --- */


.step-content-3 .bottom-action {
	text-align: center;
}

/* --- STEP 3: Calendar Placeholder Styling --- */
.calendar-wrapper {
  background: #ffffff !important;
  border-radius: 20px !important;
  padding: 60px 40px !important;
  max-width: 1000px !important;
  margin: 0 auto 40px auto !important;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.03) !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
  min-height: 450px;
}

.calendar-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 50px !important;
}

.calendar-month-year {
  font-size: 38px !important;
  font-weight: 900 !important;
  color: #1a2b3c !important;
  margin: 0 !important;
}

.calendar-nav {
  display: flex !important;
  gap: 15px !important;
}

.nav-btn {
  width: 55px !important;
  height: 55px !important;
  border-radius: 50% !important;
  border: 1.5px solid #e2e8f0 !important;
  background: white !important;
  color: #94a3b8 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s ease !important;
}

.nav-btn:hover {
  border-color: #015dab !important;
  color: #015dab !important;
}

.weekday-labels,
.date-grid {
  display: grid !important;
  grid-template-columns: repeat(7, 1fr) !important;
  gap: 12px !important;
  text-align: center !important;
}

.weekday-labels {
  margin-bottom: 25px !important;
}

.weekday-labels span {
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #94a3b8 !important;
  letter-spacing: 0.8px !important;
  text-transform: uppercase !important;
}

.day-box {
  aspect-ratio: 1/1 !important;
  display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 14px !important;
	font-size: 24px !important;
	font-weight: 900 !important;
	position: relative !important;
	/* gap: 0.2em !important; */
  border-radius: 14px !important;
}

.day-box-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 14px !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  position: relative !important;
  gap: 0.2em !important;
}


.day-box.unavailable {
  background: #e5f5ff !important;
  color: #0055a526 !important;
}

.day-box.available {
  color: #1a2b3c !important;
  cursor: pointer !important;
}

.day-box.available .dot {
  width: 10px !important;
  height: 10px !important;
  background: #02a950 !important;
  border-radius: 50% !important;
  /* margin-top: 8px !important; */
}

.day-box.selected {
  border: 3px solid #015dab !important;
  color: #1a2b3c !important;
}

.calendar-legend {
  display: flex !important;
  justify-content: center !important;
  gap: 40px !important;
  margin-top: 60px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  color: #94a3b8 !important;
}

.legend-item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 16px;
}

.leg-dot {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #02a950;
}

.leg-square {
  width: 18px;
  height: 18px;
  border-radius: 4px;
  background: #e5f5ff;
}

.leg-outline {
  width: 18px;
  height: 18px;
  border-radius: 4px;
  border: 2.5px solid #015dab;
}

/* --- Mobile --- */
@media (max-width: 767px) {
  .calendar-wrapper {
    padding: 30px 15px !important;
    border-radius: 15px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 40px auto !important;
    overflow: hidden !important;
  }

  .calendar-header {
    margin-bottom: 30px !important;
    flex-direction: column !important;
    gap: 15px !important;
  }

  .calendar-month-year {
    font-size: 24px !important;
  }

  .nav-btn {
    width: 45px !important;
    height: 45px !important;
  }

  .weekday-labels {
    gap: 4px !important;
    margin-bottom: 15px !important;
  }

  .weekday-labels span {
    font-size: 9px !important;
    letter-spacing: 0 !important;
  }

  .date-grid {
    gap: 6px !important;
  }

	.calendar-picker table.calendar {
		border-spacing: 6px !important;
	}

  .day-box {
    font-size: 15px !important;
	font-size: clamp(15px, 3.2vw, 24px) !important;
    border-radius: 8px !important;
  }

  .day-box.available .dot {
    width: 5px !important;
    height: 5px !important;
    /* margin-top: 4px !important; */
  }

  .calendar-legend {
    flex-wrap: wrap !important;
    gap: 10px 15px !important;
    margin-top: 30px !important;
    justify-content: center !important;
  }

  .legend-item {
    font-size: 11px !important;
  }
}

/* Extra small fix for very narrow phones (iPhone SE, etc) */
@media (max-width: 379px) {
  .day-box {
    font-size: 13px !important;
  }
  .calendar-month-year {
    font-size: 20px !important;
  }
  .date-grid {
    gap: 4px !important;
  }

	.calendar-picker table.calendar {
		border-spacing: 4px !important;
	}
}

/* --- STEP 3: End Calendar Placeholder Styling --- */

/* --- Summary Placeholder Styling --- */
.summary-card {
  background: #ffffff !important;
  border-radius: 20px !important;
  /* padding: 70px !important; */
  padding: 40px 30px;
  max-width: 1200px !important;
  margin: 0 auto 50px auto !important;
  box-shadow: 0 15px 45px rgba(0, 0, 0, 0.05) !important;
  /* display: flex !important; */
  /* align-items: center !important; */
  /* gap: 40px !important; */
  align-items: center;
  /* justify-items: center; */
  display: grid;
  grid-template-columns: 1fr 30px 500px;
  grid-template-columns: 1fr 30px 1fr;
  grid-template-columns: 450px 30px minmax(350px, 500px);
  grid-template-columns: 1fr 30px minmax(350px, 500px);
  grid-template-columns: max-content 30px minmax(350px, 500px);
  grid-template-columns: max-content 60px minmax(350px, 500px);
  grid-template-columns: minmax(max-content, 1fr) 60px minmax(350px, 500px);
  grid-template-columns: minmax(max-content, 1fr) 60px minmax(250px, 500px);
  grid-template-columns: minmax(430px, 1fr) 60px minmax(250px, 500px);
  grid-template-columns: 1fr 60px 300px;
  grid-template-columns: 1fr 60px 250px;
  grid-template-columns: 1fr 100px 300px;
  grid-template-columns: 1fr 100px 240px;
  grid-template-columns: 1fr 100px 1fr;
  grid-template-columns: 1fr 60px 1fr;
  /* grid-template-columns: minmax(max-content, 1fr) 60px clamp(250px, 38vw, 700px);; */
}

.summary-card > h4.summary-label {
	display: none;
}

/* Left Content Styles */
.summary-left {
  display: grid !important;
  grid-template-columns: 200px 1fr;
  gap: 20px;
  /* align-items: center !important; */
  /* gap: 30px !important; */
  /* flex: 1.2 !important; */
  align-items: center;
}

.summary-logo {
	/* max-width: 200px; */
	/* width: 200px; */
	width: 200px;
	height: 200px;
	display: flex;
	align-items: center;
	/* align-items: flex-start; */
	justify-content: center;
}

.summary-logo img {
  /* max-width: 140px !important; */
  /* max-width: 120px !important; */
  /* max-width: none !important; */
  /* width: 200px; */
  /* height: auto !important; */
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}

.summary-label {
  font-size: 11px;
  font-weight: 900 !important;
  color: #015dab !important;
  letter-spacing: 1.5px !important;
  display: block;
  margin-bottom: 5px !important;
  text-transform: uppercase !important;
}

.summary-title {
  font-size: 22px !important;
  font-weight: 900 !important;
  color: #1a2b3c !important;
  margin: 0 !important;
  line-height: normal;
}

.summary-date {
  font-size: 17px !important;
  font-weight: 600;
  color: #7A818C !important;
  margin: 5px 0 0 0 !important;
  white-space: nowrap;
}

.summary-change-btn {
	margin: 20px 0 0 0;
  display: inline-block !important;
  padding: 10px 25px !important;
  border: 2px solid #e2e8f0 !important;
  border-radius: 50px !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  color: #015dab !important;
  text-decoration: none !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  transition: all 0.3s ease !important;
}

.summary-change-btn:hover {
  background: #f8fafc !important;
  border-color: #015dab !important;
  box-shadow: 0px 4px 11px 1px #e3e3e37a;
  transform: translateY(-.8px);
  transform: translateY(-4.2%);
}

/* Vertical Divider */
.summary-divider {
  /* width: 30px !important; */
  /* height: 100px !important; */
  height: 100% !important;
  /* background: #e2e8f0 !important; */
  /* margin: 0 20px; */
  display: flex;
  justify-content: flex-start;
  justify-content: center;
}

.summary-divider .summary-divider-inner {
	width: 1px;
	background: #e2e8f0;
	height: 100%;
}

.summary-right {
	display: flex;
	flex-direction: column;
	/* align-items: center; */
}

.guidelines-header {
  display: flex !important;
  /* align-items: center !important; */
  margin-bottom: 25px !important;
  justify-content: flex-start;
  /* width: fit-content; */
  width: 100%;
  text-align: center;
}

.g-header-img {
  width: 32px !important;
  height: auto !important;
  object-fit: contain !important;
  margin-right: 15px;
}

.guidelines-header h4 {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #1a2b3c !important;
  margin: 0 !important;

}

.guidelines-icons-row {
  display: flex;
  /* justify-content: flex-start; */
  gap: 30px;
  row-gap: 15px;
  width: 100%;
  max-width: 500px;
  /* flex-wrap: wrap; */
  /* width: fit-content; */
  /* width: min-content; */
}

.g-icon-item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  gap: 7px !important;
}

.g-icon-item i {
  color: #015dab !important;
  font-size: 23px !important;
}

.g-custom-img {
  width: 32px !important;
  height: auto !important;
  display: block !important;
  object-fit: contain !important;
}

.g-icon-item span {
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #1a2b3c !important;
  white-space: nowrap !important;
}


@media (max-width: 1259px) {

	.pickup-guidelines-list {
		max-width: 410px;
	}

	.charity-grid-container {
		width: 100%;
	}

	.step-content-2 .wizard-charity-main-section > div > div.wp-block-columns {
		flex-direction: column-reverse;
	}

	.summary-right {
		align-items: center;
	}
	.guidelines-header {
		width: fit-content;
	}
	.guidelines-icons-row {
		flex-wrap: wrap;
		width: min-content;
		/* justify-content: center; */
	}
	.summary-card {
		grid-template-columns: 1fr 100px 300px;
		grid-template-columns: 1fr 20px 300px;
		grid-template-columns: 1fr 30px 300px;
	}
	.summary-divider {
		justify-content: flex-end;
	}


	/* .needed-items-inner {
		grid-template-columns: 60px minmax(0, 1fr);
	} */
}


@media (max-width: 1199px) {

	.step-content-2 .wizard-charity-main-section > div > div.wp-block-columns {
		flex-direction: column-reverse;
	}

}


/* 1156 - bp at which summary width same as container width */

@media (max-width: 1156px) {

}


@media (max-width: 999px) {

	.summary-card {
		grid-template-columns: 1fr;
		grid-template-rows: auto 60px auto;
	}
	.summary-left {
		justify-content: center;
		grid-template-columns: 200px minmax(0, 300px);
	}

	.summary-details {
		width: fit-content;
	}

	.guidelines-icons-row {
		max-width: none;
		width: fit-content;
		justify-content: center;
	}

	.summary-divider {
		justify-content: normal;
		align-items: center;
	}

	.summary-divider .summary-divider-inner {
		height: 1px;
		width: 100%;
	}
}

@media (max-width: 899px) {
	/* .pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .zip,
	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > .space
	{
		display: none;
	} */
}

@media (max-width: 829px) {
	/* .pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .comma-space,
	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .state
	{
		display: none;
	} */
}

@media (max-width: 767px) {
	/* .pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription * {
		display: inline !important;
	} */
}

@media (max-width: 649px) {
	.summary-card {
		grid-template-rows: 60px auto 60px auto;
		padding: 30px 20px 50px;
	}

	.summary-card > h4.summary-label {
		display: block;
		text-align: center;
		font-size: 15px;
	}
	.summary-card > .summary-left h4.summary-label {
		display: none;
	}

	.guidelines-icons-row {
		width: min-content;
		justify-content: normal;
	}
	.summary-left {
		grid-template-columns: 1fr;
	}
	.summary-logo {
		width: 100%;
	}
	.summary-details {
		width: 100%;
		text-align: center;
	}
}

@media (max-width: 499px) {
	/* .pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city,
	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .comma-space
	{
		display: none !important;
	} */
}

@media (max-width: 399px) {
	/* .pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .state,
	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > .space
	{
		display: none !important;
	} */
}


@media (max-width: 379px) {
	.guidelines-header {
		flex-direction: column;
		align-items: center;
	}
	.g-header-img {
		display: none;
	}
}

@media (max-width: 359px) {
	/* .pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription
	{
		display: none !important;
	} */
}

.step-content-4 .bottom-action {
	text-align: center;
}

/* --- Step 4: Details Form Placeholder Styling --- */
.contact-details-container {
  background: #ffffff !important;
  border-radius: 20px !important;
  padding: 60px !important;
  max-width: 1000px !important;
  margin: 0 auto 40px auto !important;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.03) !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
}

.details-form {
  display: flex !important;
  flex-direction: column !important;
  gap: 25px !important;
  gap: 25px !important;
}

.details-form .form-row {
  display: flex !important;
  /* gap: 20px !important; */
  gap: 20px !important;
}

.form-row.three-col .form-group {
  flex: 1 !important;
}

/**************************************************************************************************/
/*!		MERGED FIELDS	*/
/**************************************************************************************************/
.form-row.merged {
	gap: 0px !important;
}

.form-row.merged > .form-group:first-child input {
	border-top-right-radius: 0px !important;
	border-bottom-right-radius: 0px !important;
	border-right: 0px !important;
}
.form-row.merged > .form-group:last-child input {
	border-top-left-radius: 0px !important;
	border-bottom-left-radius: 0px !important;
	border-left: 0px !important;
}


.form-row.two-col-wide-first > .form-group {
  min-width: 0;
}

@media (min-width: 768px) {
  .form-row.two-col-wide-first > .form-group:first-child {
    flex: 2 !important;
  }

  .form-row.two-col-wide-first > .form-group:last-child {
    flex: 1 !important;
  }
}

.form-group {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.form-group label {
  font-size: 16px !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #1a2b3c !important;
}

.form-group label span {
  color: #015dab !important;
  font-weight: 400 !important;
}

.form-group input,
.form-group select,
.form-group textarea {
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  padding: 18px 20px !important;
  font-size: 16px !important;
  color: #1a2b3c !important;
  width: 100% !important;
}

.form-group textarea {
  height: 120px !important;
  resize: none !important;
}

.checkbox-group {
  display: flex !important;
  flex-direction: column !important;
  gap: 15px !important;
  margin: 10px 0 !important;
}

.custom-checkbox {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  color: #475569 !important;
  width: fit-content !important;
  /* cursor: pointer !important; */
}

.custom-checkbox input {
  width: 20px !important;
  height: 20px !important;
  margin-top: 2px !important;
}

.custom-checkbox input[type="checkbox"] {
  accent-color: #015dab !important;
  width: 20px !important;
  height: 20px !important;
  cursor: pointer !important;
}

.custom-checkbox a {
  color: #015dab !important;
  text-decoration: none !important;
}

.furniture-warning-box {
  background: #fff1f2 !important;
  border: 1px solid #fee2e2 !important;
  border-radius: 12px !important;
  padding: 20px !important;
  color: #991b1b !important;
  font-weight: 900 !important;
  text-align: center !important;
  font-size: 16px !important;
}

/* Mobile */
@media (max-width: 767px) {
  .contact-details-container {
    padding: 30px 20px !important;
  }
 .details-form .form-row {
    flex-direction: column !important;
    gap: 25px !important;
  }
  .furniture-warning-box {
    font-size: 14px !important;
  }
}
/* END: Step 4: Details Form Placeholder Styling */

/* --- Step 5: Confirmation Card Placeholder Styling --- */
/* START: Confirmation Card */
.confirmation-card-container {
  padding: 40px 20px !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

.confirmation-card {
  background: #ebf7ff !important; /* The soft blue from your image */
  border: 1px solid #bee3ff !important;
  border-radius: 20px !important;
  padding: 60px 40px !important;
  max-width: 550px !important;
  width: 100% !important;
  text-align: center !important;
  box-shadow: 0 10px 30px rgba(1, 93, 171, 0.05) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important; /* Forces all children to center */
}

/* Header Section & Logo Centering */
.conf-logo-section {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  width: 100% !important;
}

.conf-logo-section img {
  max-width: 200px !important;
  height: auto !important;
  margin-bottom: 30px !important;
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.conf-proudly {
  display: block !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  color: #015dab !important;
  letter-spacing: 1.5px !important;
  margin-bottom: 10px !important;
  text-align: center !important;
  width: 100% !important;
}

.conf-charity-name {
  font-size: 32px !important;
  font-weight: 900 !important;
  color: #1a2b3c !important;
  margin: 0 0 15px 0 !important;
  line-height: 1.2 !important;
  text-align: center !important;
}

.conf-thank-you {
  font-size: 18px !important;
  color: #64748b !important;
  line-height: 1.5 !important;
  text-align: center !important;
  margin-bottom: 0px !important;
}

/* Data Rows & Labels */
.conf-data-row {
  width: 100% !important;
  text-align: center !important;
}

.conf-divider {
  height: 1px !important;
  background: #bee3ff !important;
  width: 100% !important;
  margin: 30px 0 !important;
}

.conf-label {
  display: block !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  color: #015dab !important;
  letter-spacing: 1.5px !important;
  margin-bottom: 12px !important;
  text-align: center !important;
}

.conf-value {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #1a2b3c !important;
  margin: 0 !important;
  line-height: 1.4 !important;
  text-align: center !important;
}

/* Mobile Responsive Confirmation */
@media (max-width: 767px) {
  .confirmation-card {
    padding: 40px 20px !important;
  }
  .conf-charity-name {
    font-size: 26px !important;
  }
  .conf-value {
    font-size: 18px !important;
  }
}
/* END: Step 5: Confirmation Card Placeholder Styling */

/* --- ART - END OF PLACEHOLDER STYLING --- */






.step-header-caption {
  color:#4a5565;
  margin-top:var(--wp--preset--spacing--50);
  margin-right:0;
  margin-bottom:var(--wp--preset--spacing--50);
  margin-left:0;
  font-size:20px;
  font-style:normal;
  font-weight:500;
  max-width: 560px;
  margin-inline: auto;
}

.step-header-1 .step-header-caption { max-width: 500px; }
.step-header-2 .step-header-caption { max-width: 680px; }
.step-header-3 .step-header-caption { max-width: 680px; }
.step-header-4 .step-header-caption { max-width: 750px; }


/**************************************************************************************************/
/*!		STEP WIZARD	*/
/**************************************************************************************************/

.step-engine {
  /* display: none; */
}

.step-wizard {
	margin-top:140px !important;
	/* margin-top:80px !important; */
	margin-bottom: 100px;
	min-height: 720px;
}

.step-wizard .step-header {
  display: none;
}

.step-wizard .step-header h1 {
	text-align: center;
}

.step-wizard .step-content {
  display: none;
}

.step-wizard.busy .step-header-busy {
  display: block;
}

.step-wizard.busy .step-content-busy {
  display: block;
}

.step-wizard.error .step-content-error .step-error-wrap {
	box-sizing: border-box;
	width: 90%;
	max-width: 600px;
	margin: 0 auto 100px;
	padding: 15px;
	text-align: center;
	border: 14px solid #db6c6c;
	border-radius: 10px;
}

.charity-grid-busy .faux-inner {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px !important;
	margin-bottom: 50px !important;
	margin-bottom: 0 !important;
	width: 100% !important;
}

.charity-grid-wrp {
	display: none;
}

.charity-card-template {
	display: none;
}

.zip-input-textbox {
	position: absolute !important;
	left:0 !important;
	background: transparent !important;
	border: 0 !important;
	color: #94a3b8 !important;
	color: #43454b !important;
	font-size: 18px !important;
	width:100% !important;
	height: 71px !important;
	outline: none !important;
	padding-left: 70px !important;
	border-color: transparent !important;
	border-radius: 12px !important;
}

.zip-input-textbox::-webkit-input-placeholder 		{ color: #94a3b8 !important; }
.zip-input-textbox:-webkit-input-placeholder 		{ color: #94a3b8 !important; }
.zip-input-textbox::-moz-placeholder 				{ color: #94a3b8 !important; }
.zip-input-textbox:-moz-placeholder 				{ color: #94a3b8 !important; }
.zip-input-textbox::-ms-input-placeholder 			{ color: #94a3b8 !important; }
.zip-input-textbox:-ms-input-placeholder 			{ color: #94a3b8 !important; }
.zip-input-textbox::placeholder 					{ color: #94a3b8 !important; }
.zip-input-textbox:placeholder 						{ color: #94a3b8 !important; }


.step-header-container {
	/* margin-top: 40px; */
}

.step-header-status {
	max-width: 300px;
	background: #e4e4e4;
	border-radius: 20px;
	text-align: center;
	margin: 0 auto;
	/* padding: 15px; */
}

.step-header-status-progress {
	border-radius: 20px;
	height: 15px;
	width: 0%;
	background: #015dab;
}


/**************************************************************************************************/
/*!		CLEAR OUT ALL PSP CALENDARD FLUFF	*/
/**************************************************************************************************/

body:not(.qrk-origin) tr.monthSelector,
body:not(.qrk-origin) .calendar-picker .monthMessage,
body:not(.qrk-origin) .calendar-picker .ds-fe__title,
body:not(.qrk-origin) .calendar-picker .ds-fe__sub-title,
body:not(.qrk-origin) .calendar-picker #ds-fe__date-selected,
body:not(.qrk-origin) .calendar-picker .ds-fe__date-picker-input-wrap
{
	display: none !important;
	pointer-events: none;
}

.calendar-picker table.calendar {
	margin: 0;
	border-spacing: 12px;
}


/**************************************************************************************************/
/*!		DEFAULT AVAILABLE DOT APPEARANCE	*/
/**************************************************************************************************/
.calendar-picker table.calendar > tbody > tr > td div.day-box .dot {
	transition: none !important;
	width: 10px !important;
	height: 10px !important;
	width: 13.22% !important;
	height: 13.22% !important;
	background: #02a950 !important;
	border-radius: 100% !important;
	width: clamp(4px, 1.2vw, 15px) !important;
	height: clamp(4px, 1.2vw, 15px) !important;
	/* margin-top: 8px !important; */
	/* margin-top: clamp(4px, 7%, 8px) !important; */
	/* margin-top: 0 !important; */
	/* margin-top: clamp(4px, calc(0.7rem - 0.54em), 9px); */
}

/**************************************************************************************************/
/*!		DEFAULT CALENDAR DAY	*/
/**************************************************************************************************/

.calendar-picker table.calendar > tbody > tr > td {
	border-radius: 0 !important;
	font-size: 24px !important;
	font-weight: 900 !important;
	padding: 0 !important;
	background: transparent !important;
	color: #1a2b3c !important;
	cursor: auto !important;
	line-height: normal !important;
}
.calendar-picker table.calendar > tbody > tr > td .inner {
	container-type: size;
	width: 100%;
	aspect-ratio: 1;
}

.calendar-picker table.calendar > tbody > tr > td:hover {
	border-color: transparent !important;
	cursor: auto !important;
	opacity: 1.0 !important;
}

.calendar-picker table.calendar > tbody > tr > td div.day-box {
	border: 3px solid transparent !important;
	border: clamp(3px, 6cqw, 5px) solid transparent !important;
}

/**************************************************************************************************/
/*!		EMPTY CALENDAR DAY	*/
/**************************************************************************************************/

.calendar-picker table.calendar > tbody > tr > td.empty div.day-box,
.calendar-picker table.calendar > tbody > tr > td.empty {
	background: #0000000a !important;
	background: #00000005 !important;
	background: transparent !important;
	color: transparent !important;
}

.calendar-picker table.calendar > tbody > tr > td.empty * {
	display: none !important;
}


/**************************************************************************************************/
/*!		UNAVAILABLE / DISABLED CALENDAR DAY	*/
/**************************************************************************************************/

.calendar-picker table.calendar > tbody > tr > td.disabled {
	border-color: transparent !important;
	cursor: not-allowed !important;
	cursor: default !important;
}

.calendar-picker table.calendar > tbody > tr > td.disabled div.day-box {
	background: #e5f5ff !important;
	color: #0055a526 !important;
}

.calendar-picker table.calendar > tbody > tr > td.disabled div.day-box .dot {
	display: none;
}


/**************************************************************************************************/
/*!		AVAILABLE CALENDAR DAY	*/
/**************************************************************************************************/

.calendar-picker table.calendar > tbody > tr > td.dayMarked {
	border-color: transparent !important;
	cursor: pointer !important;
}

.calendar-picker table.calendar td,
.calendar-picker table.calendar td:focus-visible
{
	outline: none !important;
}

.calendar-picker table.calendar > tbody > tr > td.dayMarked div.day-box {
	background: transparent !important;
	color: #1a2b3c !important
}

.calendar-picker table.calendar > tbody > tr > td.dayMarked div.day-box .dot {
	display: block;
}

.calendar-picker table.calendar div.day-box-inner {
	width: 100%;
}


.calendar-picker table.calendar > tbody > tr > td.dayMarked div.day-box-inner {
	transform: scale(1.0);
	transition: transform 0.10s ease;
}

.calendar-picker table.calendar > tbody > tr > td.dayMarked.ds-selected div.day-box-inner {
	transform: scale(1.2);
	transition: transform 0.10s ease;
}

.calendar-picker table.calendar > tbody > tr > td.dayMarked:hover div.day-box-inner {
	transform: scale(1.5);
	transition: transform .25s ease;
}


/**************************************************************************************************/
/*!		SELECTED CALENDAR DAY	*/
/**************************************************************************************************/

.calendar-picker table.calendar > tbody > tr > td.dayMarked.ds-selected div.day-box {
	border-color: #015dab !important;
	color: #1a2b3c !important;
}

.calendar-picker table.calendar > tbody > tr > td.dayMarked.ds-selected div.day-box .dot {
	display: block;
}

/**************************************************************************************************/
/*!		CALENDAR DAY HEADERS	*/
/**************************************************************************************************/

.calendar-picker.rerendering table.calendar > tbody > tr > th.week {
	opacity: 0.0 !important;
}

.calendar-picker table.calendar > tbody > tr > th.week {
	font-size: 15px !important;
	font-weight: 800 !important;
	color: #94a3b8 !important;
	letter-spacing: 0.8px !important;
	text-transform: uppercase !important;
	background: transparent !important;
}

.calendar-picker table.calendar > tbody > tr > th.week .name 	{ display: block; }
.calendar-picker table.calendar > tbody > tr > th.week .abbrev 	{ display: none; }
.calendar-picker table.calendar > tbody > tr > th.week .short 	{ display: none; }

@media (min-width: 768px) and (max-width: 1050px) {
	.calendar-picker table.calendar > tbody > tr > th.week .name 	{ display: none; }
	.calendar-picker table.calendar > tbody > tr > th.week .abbrev 	{ display: block; }
	.calendar-picker table.calendar > tbody > tr > th.week .short 	{ display: none; }
}
@media (min-width: 650px) and (max-width: 767px) {
	.calendar-picker table.calendar > tbody > tr > th.week .name 	{ display: block; }
	.calendar-picker table.calendar > tbody > tr > th.week .abbrev 	{ display: none; }
	.calendar-picker table.calendar > tbody > tr > th.week .short 	{ display: none; }
}
/* @media (min-width: 500px) and (max-width: 599px) { */
@media (max-width: 649px) {
	.calendar-picker table.calendar > tbody > tr > th.week .name 	{ display: none; }
	.calendar-picker table.calendar > tbody > tr > th.week .abbrev 	{ display: block; }
	.calendar-picker table.calendar > tbody > tr > th.week .short 	{ display: none; }
}

@media (max-width: 767px) {
	.calendar-picker table.calendar > tbody > tr > th.week {
		font-size: 9px !important;
		letter-spacing: 0px !important;
	}
}


@media (max-width: 499px) {
	.wizard-date-main-section > .wp-block-group__inner-container > .wp-block-columns:first-child{
		margin-left: -40px;
		width: calc(100% + 80px);
	}

	.calendar-picker table.calendar > tbody > tr > td.dayMarked div.day-box {
		row-gap: 1.5px !important;
	}

	.wizard-main-section .wp-block-columns.needed-items {
		flex-direction: column !important;
		padding: 20px 15px !important
	}

	.wizard-main-section .wp-block-columns.needed-items > .wp-block-column:first-child {
		position: relative;
		width: 100%;
		max-width: none !important;
		min-width: 0 !important;
		display: block !important;
	}

	.wizard-main-section .wp-block-columns.needed-items > .wp-block-column:last-child > h4 {
		text-align: center;
	}
	.wizard-main-section .wp-block-columns.needed-items > .wp-block-column:last-child > p {
		text-align: center !important;
	}
	/*

	.wizard-main-section .wp-block-columns.needed-items > .wp-block-column:last-child {

	} */

	/* .needed-items-inner {
		display: grid;
		grid-template-columns: auto 1fr;
		grid-template-rows: auto auto;
		column-gap: 0.5em;
		align-items: center;
	}
	.needed-items-inner i.fas {
		grid-row: 1;
		grid-column: 1 / span 2;
		left: 0;
		top: 0;
		left: calc(12%);
		align-self: normal;
		justify-self: normal;
	}
	.needed-items-inner h4 {
		grid-row: 1;
		grid-column: 1 / span 2;
		position: relative;
		left: calc(50%);
	}
	.needed-items-inner .caption {
		grid-row: 2;
		grid-column: span 2;
	} */

	.needed-items-list {
		/* padding: 20px 15px; */
	}

	/* .needed-items-inner {
		grid-template-columns: 1fr;
	} */

	.needed-items-inner i.fas {
		display: block;
		margin:15px auto 25px
		/* margin: 5px 0 15px 0; */
	}

	.needed-items-inner h4 {
		display: block;
		top: 0;
		left: 0;;
		/* margin: 0; */
		/* text-align: center; */
	}

	.needed-items-inner .heading {
		text-align: center;
		margin-bottom: 25px;
	}

	.needed-items-inner .caption {
		text-align: center;
		margin:0 0 15px;
	}

}

@media (max-width: 429px) {

	.pickup-guidelines-box h4 {
		line-height: normal;
	}
	.pickup-guidelines-list {
		/* padding: 20px 15px; */
	}

	.pickup-guidelines-list-item {
		grid-template-columns: 1fr;
		margin-bottom: 55px;
	}

	.pickup-guidelines-list-item:last-child {
		margin-bottom: 0;
	}

	.pickup-guidelines-list-item i.fas {
		grid-column: 1;
		grid-row: 1;
		margin-inline: auto;
		margin-bottom: 25px;
		font-size: 45px;
	}

	.pickup-guidelines-list-item h4 {
		grid-column: 1;
		grid-row: 2;
		margin: 0;
		text-align: center;
	}

	.pickup-guidelines-list-item .caption {
		grid-column: 1;
		grid-row: 3;
		text-align: center;
		padding: 0;
	}

	.pickup-guidelines-box > h4 {
		font-size: 26px;
		line-height: normal;
		margin-bottom: 50px;
	}
}


body:not(.qrk-origin) tr.monthSelector {
	display: none;
	pointer-events: none;
}

tr.monthSelector .nav.btn.month {
	border: 4px solid #099 !important;
}

.steps-title-container h1 {
	/* line-height: 1.3; */
}


@keyframes step-pulse {
	0% {
		scale: 1;
	}

	50% {
		scale: 1.15;
	}
	100% {
		scale: 1;
	}
}

.step-item.active .step-circle {
	transform-origin: center;
	animation: step-pulse 1s ease-in-out infinite;
}


.loading-placeholder,
.charity-card-loader {
	position: relative;
}

.loading-placeholder .animate,
.charity-card-loader .animate {
	background: #f4f7fa;
	border-radius: 15px;
	overflow: hidden;
	position: relative;
}

.wizard-date-main-section .date-busy {
	display: none;
}

.wizard-date-main-section .loading-placeholder .faux-calendar-month-year {
	width:300px;
	height:50px;
}
.wizard-date-main-section .loading-placeholder .faux-calendar-nav {
	width:125px;
	height:50px;
}
.wizard-date-main-section .loading-placeholder .faux-day-names {
	margin:60px 5% 25px;
	height:35px;
}
.wizard-date-main-section .loading-placeholder .faux-calendar-grid {
	margin:0;
	height:55vw;
	max-height: 600px;
}

.calendar-wrapper.loading-placeholder div {
	color: transparent !important;
}

.charity-card-loader .faux-img.animate {
	max-height: 100% !important;
	max-width: 180px !important;
	max-width: 45% !important;
	width: 180px;
	width: 45%;
	height: auto;
	height: 120px;
	object-fit: contain !important;
	display: block;
	margin-inline: auto;
	margin-bottom: 30px;
}

.charity-card-loader .faux-name.animate {
	width: 240px;
	width: 60%;
	height: 22px;
	margin-inline: auto;
	margin-bottom: 25px;
}

.charity-card-loader .faux-about.animate {
	width: 100%;
	height: 110px;
	margin-inline: auto;
	margin-bottom: 25px;
}
.charity-card-loader .faux-btn.animate {
	width: 100%;
	height: 49px;
	margin-inline: auto;
	border-radius: 50px;
}


.charity-card-loader:not(.animate) {
	/* border: 2px solid #f00 !important; */
}

.loading-placeholder.animate:after,
.charity-card-loader.animate:after {
  content: "";
  position: absolute;
  top: 20px;
  bottom: 20px;
  left: 0px;
  width: 0px;
  /* outline: 1px solid; */
  /* background: linear-gradient(90deg, #f4f7fa, #ffffff, #f4f7fa); */
  background: linear-gradient(90deg, transparent, #ffffff, transparent);
  animation: placeholder-loader 1s infinite ease-in-out;
}

.loading-placeholder.animate:after {
	top: 0px;
	bottom: 0px;
}

@keyframes placeholder-loader {
  0% {
	left: 0%;
	width: 0%;
  }

  50% {
	  width: 25%;
  }

  100% {
	left: 100%;
	width: 0%;
  }
}

.g1 {
	display: grid;
	grid-template-columns: .34fr .64fr;
}


/**************************************************************************************************/
/*!		Prettify	*/
/**************************************************************************************************/

.step-tracker .step-item .step-circle {
	opacity: 0;
}

.step-tracker .step-item .step-label {
	opacity: 0;
}

.step-tracker .step-line {
	opacity: 0;
}


.step-tracker {
	--circle-duration: 520ms;
	--label-offset: 165ms;
	--label-duration: 40ms;
	--line-duration: 40ms;
}

/* Circles */
.step-tracker > .step-item-1 { --step-delay: 0ms; }
.step-tracker > .step-item-2 { --step-delay: 300ms; }
.step-tracker > .step-item-3 { --step-delay: 600ms; }
.step-tracker > .step-item-4 { --step-delay: 900ms; }
.step-tracker > .step-item-5 { --step-delay: 1200ms; }

/* Lines begin after their associated labels appear. */
.step-tracker > .step-line-1 { --line-delay: 205ms; }
.step-tracker > .step-line-2 { --line-delay: 505ms; }
.step-tracker > .step-line-3 { --line-delay: 805ms; }
.step-tracker > .step-line-4 { --line-delay: 1105ms; }

/*
 * Delayed animations use "both", so elements remain at the first
 * keyframe while waiting and retain the final keyframe afterward.
 */
.step-tracker.animate > .step-item > .step-circle {
	transform-origin: center;
	animation:
		step-circle-pop
		var(--circle-duration)
		cubic-bezier(.2, .8, .25, 1)
		var(--step-delay)
		1
		both;
}

/* Keep the active circle pulsing after its one-time entrance animation. */
.step-tracker.animate > .step-item.active > .step-circle {
	animation:
		step-circle-pop
		var(--circle-duration)
		cubic-bezier(.2, .8, .25, 1)
		var(--step-delay)
		1
		both,
		step-pulse 1s ease-in-out infinite;
}

.step-tracker.animate > .step-item > .step-label {
	animation:
		step-label-fade-in
		var(--label-duration)
		ease-out
		calc(var(--step-delay) + var(--label-offset))
		1
		both;
}

@keyframes step-circle-pop {
	0% {
		opacity: 0;
		transform: scale(0);
		animation-timing-function: cubic-bezier(.15, .75, .25, 1);
	}

	32% {
		opacity: 1;
		transform: scale(1.45);
		animation-timing-function: ease-out;
	}

	58% {
		transform: scale(.90);
		animation-timing-function: ease-out;
	}

	76% {
		transform: scale(1.12);
		animation-timing-function: ease-out;
	}

	89% {
		transform: scale(.97);
		animation-timing-function: ease-out;
	}

	96% {
		transform: scale(1.025);
		animation-timing-function: ease-out;
	}

	100% {
		opacity: 1;
		transform: scale(1);
	}
}

@keyframes step-label-fade-in {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@media (prefers-reduced-motion: reduce) {
	.step-tracker.animate > .step-item > .step-circle,
	.step-tracker.animate > .step-item > .step-label {
		animation-duration: 1ms;
		animation-delay: 0ms;
	}
}

.step-tracker {
	--line-duration: 200ms;
}



.step-tracker.animate > .step-line {
	transform-origin: left center;
	animation:
		step-line-draw
		var(--line-duration)
		ease-out
		var(--line-delay)
		1
		both;
}

@keyframes step-line-draw {
	from {
		opacity: 0;
		transform: scaleX(0);
	}

	to {
		opacity: 1;
		transform: scaleX(1);
	}
}

@media (prefers-reduced-motion: reduce) {
	.step-tracker.animate > .step-line {
		animation-duration: 1ms;
		animation-delay: 0ms;
	}
}


/* .step-wizard.loading .step-tracker .step-item .step-label { */
.step-wizard.loading .step-tracker,
.step-wizard.error .step-tracker {
	opacity: 0.45;
	/* transition: opacity 0.25s ease; */
}
/* .step-wizard.loading .step-tracker .step-item .step-circle .step-number {
	opacity: 0.45;
} */



/**************************************************************************************************/
/*!		DETAILS / FORM CLEAN UP	*/
/**************************************************************************************************/

.step-wizard .details-wrap hr,
.step-wizard .details-wrap #psp-checkout-user-login,
.step-wizard .details-wrap .ds-fe__title,
.step-wizard .details-wrap #ds-fe__order-cta,
.step-wizard .details-wrap .ds-fe__flex-wrap,
.step-wizard .details-wrap label[for^="billing_address"],
.step-wizard .details-wrap label[for="order_comments"],
.step-wizard .details-wrap label.checkbox,
.step-wizard .details-wrap #ds-fe__order-disclaimer
{
	display: none;
}

.step-wizard .details-wrap #psp-checkout-create-user {
	height: 0 !important;
	width: 0 !important;
	opacity: 0 !important;
	visibility: hidden !important;
	position: absolute !important;
	bottom: 0 !important;
	left: 0 !important;
	z-index: 0 !important;
}
.step-wizard .details-wrap #ds-fe__checkout-form {
	margin-bottom: 0;
}


.step-wizard .details-wrap .form-group label {
	margin: 0 !important;
	position: relative;
}
.step-wizard .details-wrap .form-group label .field-label {
	margin: 0 0 12px 0;
}


.step-wizard .details-wrap .form-group label.is-required .field-label .required-mark > .fas::before {
	content: "\f111";
	position: relative;
	top: -6px;
	font-size: 9px;
	left: -2px;
	transition: all .25s ease;
}

.step-wizard .details-wrap .form-group label.is-required.is-valid .field-label .required-mark > .fas::before {
	content: "\f058";
	position: relative;
	top: 0px;
	font-size: 16px;
	left: 1px;
	color: var(--ds-green);
}
.step-wizard .details-wrap .form-group label.is-required.is-error .field-label .required-mark > .fas::before {
	/* exclamation */
	content: "\f06a";
	/* x */
	/* content: "\e12e"; */

	position: relative;
	top: 2px;
	font-size: 20px;
	left: 2px;
	color: #db6c6c;
	color: #e8ad59;
}


.step-wizard .details-wrap .form-group input,
.step-wizard .details-wrap .form-group select,
.step-wizard .details-wrap .form-group textarea {
	/* background-color: #ffffff !important; */
	background: #F9FAFC !important;
	box-shadow: none !important;
	width: 100% !important;
	padding: 15px 20px !important;
	/* border: 2px solid #e2e8f0 !important; */
	border: 2px solid #D1D5DB !important;
	border-radius: 15px !important;
	font-size: 16px !important;
	color: #1a2b3c !important;
	box-sizing: border-box !important;
	outline: 3px solid transparent !important;
	outline-offset: -2px !important;
	font-weight: 400 !important;
	transition: outline .25s ease, background .25s ease;
}

.step-wizard .details-wrap .form-group select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}


.step-wizard .details-wrap .checkbox-group .pretty-checkbox {
	background: #F9FAFC !important;
	width: 22px !important;
	height: 22px !important;
	max-width: 22px !important;
	max-height: 22px !important;
	min-width: 22px !important;
	min-height: 22px !important;
	overflow: hidden !important;
	border: 2px solid #D1D5DB !important;
	border-radius: 5px !important;
	outline: 3px solid transparent !important;
	outline-offset: -2px !important;
	transition: outline .25s ease, background .25s ease !important;
	position: relative !important;
}

.step-wizard .details-wrap .checkbox-group .pretty-checkbox.checked {

}

.step-wizard .details-wrap .checkbox-group .pretty-checkbox.checked::before {
	content: "\f00c" !important;
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900 !important;
	color: #fff !important;
	font-size: 12px !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width:100% !important;
	text-align: center !important;
	background: #015dab !important;
}

.step-wizard .details-wrap .checkbox-group .pretty-checkbox:focus-within {
	outline: 2px solid #005dab !important;
	outline: 3px solid #b1c8e4 !important;
	outline-offset: -2px !important;
	/* background: #f4f4f5 !important; */
	background: #fdfdfe !important;
}

.step-wizard .details-wrap .checkbox-group .pretty-checkbox:not(.checked):focus-within {
	background: #fdfdfe !important;
}
.step-wizard .details-wrap .checkbox-group .pretty-checkbox.checked:focus-within {
	/* background: transparent !important; */
}

.step-wizard .details-wrap .checkbox-group input[type="checkbox"] {
	opacity: 0 !important;
}
.step-wizard .details-wrap .checkbox-group input[type="checkbox"]:focus,
.step-wizard .details-wrap .checkbox-group input[type="checkbox"]:focus-visible,
.step-wizard .details-wrap .checkbox-group input[type="checkbox"]:focus-within,
.step-wizard .details-wrap .checkbox-group input[type="checkbox"]:active,
.step-wizard .details-wrap .checkbox-group input[type="checkbox"]:hover {
	opacity: 0.1 !important;
	outline: none !important;
	margin: 0 !important;
	height: 18px !important;
	width: 18px !important;
}


.step-wizard .details-wrap .form-group input:focus,
.step-wizard .details-wrap .form-group select:focus,
.step-wizard .details-wrap .form-group textarea:focus {
	outline: 2px solid #005dab !important;
	outline: 3px solid #b1c8e4 !important;
	outline-offset: -2px !important;
	background: #f4f4f5 !important;
	background: #fdfdfe !important;
}

.step-wizard .details-wrap .form-group input:focus-visible,
.step-wizard .details-wrap .form-group select:focus-visible,
.step-wizard .details-wrap .form-group textarea:focus-visible {
	/* outline: none !important; */
}

.step-wizard .details-wrap #psp_account_create_check {
	margin: 0 !important;
	width: 20px !important;
	height: 20px !important;
}
.step-wizard .details-wrap .custom-checkbox input[type="checkbox"] {
	outline: none !important;
}

.step-wizard .details-wrap input.disabled,
.step-wizard .details-wrap input.disabled:active,
.step-wizard .details-wrap input.disabled:hover,
.step-wizard .details-wrap input.disabled:focus,
.step-wizard .details-wrap input.disabled:focus-visible,
.step-wizard .details-wrap input.disabled:focus-within,
.step-wizard .details-wrap input.disabled:target,
.step-wizard .details-wrap select.disabled,
.step-wizard .details-wrap select.disabled:active,
.step-wizard .details-wrap select.disabled:hover,
.step-wizard .details-wrap select.disabled:focus,
.step-wizard .details-wrap select.disabled:focus-visible,
.step-wizard .details-wrap select.disabled:focus-within,
.step-wizard .details-wrap select.disabled:target,
.step-wizard .details-wrap textarea.disabled,
.step-wizard .details-wrap textarea.disabled:active,
.step-wizard .details-wrap textarea.disabled:hover,
.step-wizard .details-wrap textarea.disabled:focus,
.step-wizard .details-wrap textarea.disabled:focus-visible,
.step-wizard .details-wrap textarea.disabled:focus-within,
.step-wizard .details-wrap textarea.disabled:target {
	pointer-events: none !important;
	outline: none !important;
	opacity: 1 !important;
	background: #ebecee !important;
	position: relative;
}

.step-wizard .details-wrap .form-group label.locked .locked-icon {
/* .step-wizard .details-wrap .form-group label.locked::after { */
	/* content: "\f023"; */
	/* font-family: "Font Awesome 5 Free"; */
	font-size: 22px;
	position: absolute;
	width: auto;
	color: #bcc2c8;
	height: 60px;
	align-items: center;
	display: flex;
	/* outline: 1px solid #f00; */
	bottom: 0;
	right: 14px;
	z-index: 1;
}



/* .step-wizard .details-wrap input,
.step-wizard .details-wrap select {
	border-radius: 15px;
	padding: 23px 25px !important;
	font-size: 22px !important;
} */

.pca .pcaautocomplete.pcatext {
	font-family: "Source Sans Pro","HelveticaNeue-Light","Helvetica Neue Light","Helvetica Neue",Helvetica,Arial,"Lucida Grande",sans-serif !important;
	line-height: 1.618 !important;
	font-size: 16px !important;
	border-radius: 15px;
	overflow: auto;
	border: 2px solid rgb(209, 213, 219) !important;
	margin: 5px 0;
	z-index: 9999;
}

.pca .pcaautocomplete.pcatext .pcalist {
	border: 0;
}

.pca .pcaautocomplete.pcatext .pcalist .pcaitem {
	padding: 14px 20px !important;
	border: 0 !important;
}
.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription {
	margin: 0;
	float: right;
	font-size: 13px;
	font-weight: 400;
}
.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription b,
.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription strong {
	font-weight: 400 !important;
}

.pca .pcaautocomplete.pcatext .pcalist .pcaitem.pcaselected {
	background: #b1c8e4;
	background: #dae4ef;
	border: 0;
	outline: 0;
}

.blue-info-text {
	color: #015dab !important;
	font-weight: 400 !important;
	font-style: italic !important;
	/* margin-left: 10px; */
	position: relative;
	/* top: -2px; */
	left: 8px;
	font-size: 14px !important;
}
/* Submission progress stays separate from the still-mounted details form. */
.contact-details-container { position: relative; }
.pickup-submit-busy { text-align: center; padding: 35px 0; }
.pickup-submit-busy .spinner-grow-alternating-color {
 width: 80px; height: 80px; margin: 0 auto 30px;
 --first-color: #015dab; --second-color: #018c42;
}
.pickup-submit-busy p { color: #7a858e; margin: 0; }
.step-wizard.submitting .summary-change-btn,
.step-wizard.submitting .zip-change-btn { pointer-events: none; opacity: .45; }

/* Scheduled confirmation: scoped to the wizard; reuse the reference page's card classes. */
.step-header-5 { text-align: center; }
.step-header-5 .scheduled-hearts { margin: 0 auto 60px; }
.step-header-5 .scheduled-hearts .fas {
  color: #015dab;
  --heart-rest-scale: 1;
  --heart-hover-scale: 1.08;
  font-size: 180px;
  display: inline-block;
  transform-origin: center;
  transition: transform 180ms ease-out;
  cursor: pointer;
  touch-action: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
.step-header-5 .scheduled-hearts .fa-heart:hover,
.step-header-5 .scheduled-hearts .fa-heart:focus-visible {
  --heart-rest-scale: var(--heart-hover-scale);
  transform: scale(var(--heart-rest-scale));
}
.step-header-5 .scheduled-hearts .fa-heart:focus { outline: none; }
.step-header-5 .scheduled-hearts .fa-heart.is-celebrating {
  transition: none; /* Do not let the hover transition compete with the release animation. */
  animation: pickup-heart-pop var(--heart-pop-duration, 1000ms) ease-in-out;
}
.step-header-5 .scheduled-hearts .fa-heart.is-celebrating.is-jostling {
  animation: pickup-heart-jostle 240ms ease-out;
}
@keyframes pickup-heart-jostle {
  0% { transform: scale(var(--heart-pop-start, 1)); }
  65% { transform: scale(calc(var(--heart-rest-scale, 1) + 0.012)); }
  100% { transform: scale(var(--heart-rest-scale, 1)); }
}
/* Increasing resistance: the final part of the pull takes most of the hold. */
.step-header-5 .scheduled-hearts .fa-heart.is-charging {
  animation: none;
  transform: scale(0.3);
  transition: transform 3500ms cubic-bezier(0.12, 0.8, 0.15, 1);
}
/* Separate translate/rotate properties leave the held scale (and release power) untouched. */
.step-header-5 .scheduled-hearts .fa-heart.is-charging.is-trembling {
  animation: pickup-heart-tremble 280ms linear infinite;
}
@keyframes pickup-heart-tremble {
  0%, 100% { translate: 0 0; rotate: 0deg; }
  13% { translate: calc(2px * var(--heart-shake-strength, 1)) calc(-1.2px * var(--heart-shake-strength, 1)); rotate: calc(1.4deg * var(--heart-shake-strength, 1)); }
  29% { translate: calc(-1.6px * var(--heart-shake-strength, 1)) calc(0.8px * var(--heart-shake-strength, 1)); rotate: calc(-1.8deg * var(--heart-shake-strength, 1)); }
  47% { translate: calc(0.9px * var(--heart-shake-strength, 1)) calc(1.5px * var(--heart-shake-strength, 1)); rotate: calc(0.8deg * var(--heart-shake-strength, 1)); }
  61% { translate: calc(-2.4px * var(--heart-shake-strength, 1)) calc(-0.6px * var(--heart-shake-strength, 1)); rotate: calc(-1.2deg * var(--heart-shake-strength, 1)); }
  83% { translate: calc(1.4px * var(--heart-shake-strength, 1)) calc(-1.4px * var(--heart-shake-strength, 1)); rotate: calc(1.6deg * var(--heart-shake-strength, 1)); }
}
@keyframes pickup-heart-pop {
  0% { transform: scale(var(--heart-pop-start, 0.08)); }
  28% { transform: scale(var(--heart-pop-peak, 1.5)); }
  48% { transform: scale(var(--heart-pop-dip, 0.78)); }
  66% { transform: scale(var(--heart-pop-rebound, 1.16)); }
  82% { transform: scale(var(--heart-pop-settle, 0.94)); }
  100% { transform: scale(var(--heart-rest-scale, 1)); }
}
@media (prefers-reduced-motion: reduce) {
  .step-header-5 .scheduled-hearts .fas,
  .step-header-5 .scheduled-hearts .fa-heart.is-charging { transition: none; }
  .step-header-5 .scheduled-hearts .fa-heart.is-celebrating,
  .step-header-5 .scheduled-hearts .fa-heart.is-celebrating.is-jostling,
  .step-header-5 .scheduled-hearts .fa-heart.is-charging.is-trembling { animation: none; }
}
.step-header-5 .scheduled-hearts img { width: 264px; max-width: 65%; height: auto; margin: auto; }
.step-header-5 .scheduled-pickup-day { color: #02a950; font-size: 26px; font-weight: 800; margin: 24px 20px 10px; }
.step-header-5 .scheduled-pickup-id { color: #4a5565; font-size: 22px; font-weight: 800; margin: 0 20px; }
.step-content-5 .scheduled-confirmation { max-width: 1120px; margin: 36px auto 0; padding: 0 20px; text-align: center; color: #4a5565; }
.scheduled-confirmation p { font-size: 20px; line-height: 1.6; }
.scheduled-confirmation .scheduled-intro { margin: 0 auto 20px; }
.scheduled-confirmation .confirmation-card-container { padding: 40px 0 56px !important; }
.scheduled-confirmation .confirmation-card { max-width: 670px !important; padding: 38px 18px 38px !important; border-radius: 15px !important; background: #f1f7ff !important; border-color: #96bff0 !important; box-shadow: 0 24px 35px rgba(0,0,0,.09) !important; }
/* .scheduled-confirmation .confirmation-card { max-width: 670px !important; padding: 45px 18px 38px !important; border-radius: 15px !important; background: #f1f7ff !important; border-color: #96bff0 !important; box-shadow: 0 24px 35px rgba(0,0,0,.09) !important; } */
.scheduled-confirmation .conf-logo-section img { width: 180px; max-width: 65% !important; }
.scheduled-confirmation .conf-charity-name { color: #111827 !important; margin-bottom: 8px !important; }
.scheduled-confirmation .conf-thank-you { color: #4a5565 !important; font-size: 20px !important; }
/* .scheduled-confirmation .conf-logo-section + .conf-divider { margin-top: 74px !important; } */
.scheduled-confirmation .conf-divider { margin: 38px 0 !important; }
.scheduled-confirmation .conf-label, .scheduled-confirmation .conf-proudly { font-size: 13px !important; }
.scheduled-confirmation .conf-value { color: #111 !important; font-weight: 600 !important; }
.scheduled-confirmation .scheduled-green-box { margin: 0; padding: 20px 24px; border: 3px solid #7bc89e; border-radius: 16px; background: #02a950; color: white; box-shadow: 0 24px 35px rgba(0,0,0,.1); }
.scheduled-confirmation .scheduled-green-box h4, .scheduled-confirmation .scheduled-green-box p { font-size: 28px; line-height: 1.4; color: inherit; margin: 0; }
.scheduled-confirmation .scheduled-green-box h4, .scheduled-confirmation .scheduled-pickup-time { font-weight: 800; }
.scheduled-confirmation .scheduled-download { margin-top: 72px; }
.scheduled-confirmation button.uagb-buttons-repeater { display: inline-flex; align-items: center; justify-content: center; gap: 16px; background: #015dab; border: 2px solid #015dab; border-radius: 100px; color: white; font-weight: 800; letter-spacing: 1px; line-height: 1.4; cursor: pointer; }
.scheduled-confirmation .pickup-sign-btn { display: inline-flex; align-items: center; justify-content: center; gap: 16px; max-width: 100%; white-space: normal; }
.scheduled-confirmation .pickup-sign-btn i { font-size: 1.2em; }
.scheduled-confirmation .scheduled-sign-caption { margin: 20px 0 36px; }
.scheduled-confirmation .scheduled-manage h4 { font-size: 20px; letter-spacing: 1px; color: #015dab; font-weight: 800; margin: 0 0 8px; }
.scheduled-confirmation .scheduled-manage-note { font-style: italic; font-size: 18px; margin: 0 0 30px; }
.scheduled-confirmation .scheduled-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 26px; }
.scheduled-confirmation .scheduled-actions button { padding: 18px 30px; font-size: 14px; }
.scheduled-confirmation button.cancel-pickup-btn { color: #015dab; background: white; border-color: #deebf9; }
@media (min-width: 768px) {
  .scheduled-confirmation .scheduled-download { margin-top: 36px; }
  .scheduled-confirmation .scheduled-sign-caption { margin: 18px 0 0; }
}
@media (max-width: 600px) {
  .step-header-5 .scheduled-hearts { margin-bottom: 32px; }
  .step-header-5 .scheduled-pickup-day { font-size: 20px; }
  .step-header-5 .scheduled-pickup-id { font-size: 18px; }
  .scheduled-confirmation p { font-size: 16px; }
  .scheduled-confirmation .confirmation-card { padding: 32px 18px !important; }
  .scheduled-confirmation .scheduled-green-box h4, .scheduled-confirmation .scheduled-green-box p { font-size: 20px; }
  .scheduled-confirmation .scheduled-download { margin-top: 44px; }
  .scheduled-confirmation .scheduled-actions { gap: 16px; }
}
.scheduled-manage {
	display: none;
}

@media (max-width: 767px) {

	.step-wizard {
		margin-top: 100px !important;
	}
}

.details-wrap.contact-details-container .pickup-submit-busy {
	padding: 0px !important;
}
.details-wrap.contact-details-container .pickup-submit-busy .spinner-grow-alternating-color {
	margin: 0px !important;
}



/* hide all */
@media 	(max-width: 359px),
		(min-width: 768px) and (max-width: 772px) {

	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > * { display: none !important; }
	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > .found { display: inline !important; }
}

/* zip only */
@media 	(min-width: 360px) and (max-width: 399px),
		(min-width: 773px) and (max-width: 852px) {

	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > * { display: none !important; }

	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > .zip,
	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > .found
	{
		display: inline !important;
	}

}


/* state + zip only */
@media 	(min-width: 400px) and (max-width: 499px),
		(min-width: 853px) and (max-width: 1052px) {

	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > *,
	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > .city-state > *
	{
		display: none !important;
	}

	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > .city-state,
	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > .city-state > .state,
	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > .space,
	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > .zip,
	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip > .found
	{
		display: inline !important;
	}

}

/* show all */
@media 	(min-width: 500px) and (max-width: 767px),
		(min-width: 1053px) {

	.pca .pcaautocomplete.pcatext .pcalist .pcaitem .pcadescription .city-state-zip * { display: inline !important; }

}


/* ==========================================================================
   MOBILE STEP 1: PERSISTENT BACK / CONTINUE
   ========================================================================== */

/* Desktop: keep the existing button in its original layout. */
.step-wizard .cgm-mobile-step1-nav {
  display: contents;
}

.step-wizard .cgm-step1-back,
.step-wizard .cgm-step1-mobile-label {
  display: none;
}

@media (max-width: 767px) {

  /* Leave room so the fixed navigation does not cover the final content. */
  .step-wizard .step-content-1.cgm-step1-nav-ready {
    padding-bottom: calc(110px + env(safe-area-inset-bottom, 0px));
  }

  .step-wizard .cgm-mobile-step1-nav {
    position: fixed;
    inset: auto 0 0;
    z-index: 1000;

    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: center;
    gap: 12px;

    width: 100%;
    box-sizing: border-box;

    padding: 14px 20px;
    padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px));

    background: #ffffff;
    border-top: 1px solid #e2e8f0;
    box-shadow: 0 -4px 20px rgba(26, 43, 60, 0.08);
  }

  .step-wizard .cgm-mobile-step1-nav > button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;

    width: 100% !important;
    min-width: 0;
    min-height: 52px;
    box-sizing: border-box;

    margin: 0 !important;
    padding: 14px 18px !important;

    border-radius: 50px !important;
    font-family: inherit;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1.25;
    text-transform: none;
    letter-spacing: normal;

    transform: none !important;
  }

  .step-wizard .cgm-mobile-step1-nav > .cgm-step1-back {
    background: #f8fafc !important;
    color: #94a3b8 !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: none !important;
    opacity: 1;
    cursor: default;
  }

  .step-wizard .cgm-mobile-step1-nav > .zip-btn {
    background: #015dab !important;
    color: #ffffff !important;
    border: 1px solid #015dab !important;
    box-shadow: none !important;
  }

  .step-wizard .cgm-mobile-step1-nav > .zip-btn:focus-visible {
    outline: 3px solid #015dab !important;
    outline-offset: 3px !important;
  }

  .step-wizard .cgm-step1-desktop-label {
    display: none;
  }

  .step-wizard .cgm-step1-mobile-label {
    display: inline;
  }
}

/* ==========================================================================
   STEP 1: COMPACT MOBILE LAYOUT
   ========================================================================== */

.wizard-main-section > .wp-block-group__inner-container {
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* Additional Step 1 elements stay hidden on desktop. */
.step-wizard .cgm-step1-zip-label,
.step-wizard .cgm-step1-guidelines {
  display: none;
}

@media (max-width: 767px) {

  /* Heading and introduction */
  .step-wizard .step-header-1 {
    padding-inline: 20px;
  }

  .step-wizard .step-header-1 h1 {
    margin: 0 !important;
    font-size: 32px !important;
    line-height: 1.15 !important;
    letter-spacing: -0.8px;
	padding-left: 24px;
	text-align: left;
  }

  .step-wizard .step-header-1 .step-header-caption {
    max-width: 420px;
    margin: 14px 24px 24px !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
	text-align: left;
  }

  /* Remove the large card surrounding the ZIP field. */
  .step-wizard .step-content-1 .zip-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;

    width: calc(100% - 40px) !important;
    max-width: 520px !important;
    box-sizing: border-box;

    margin: 0 auto !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .step-wizard .cgm-step1-zip-label {
    display: block;
    margin: 0 0 8px;
    color: #1a2b3c;
    font-family: inherit;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.4;
  }

  /* Compact ZIP input */
  .step-wizard .step-content-1 .zip-input {
    height: 54px !important;
    box-sizing: border-box;
    padding: 0 16px !important;

    background: #ffffff !important;
    border: 1px solid #d1d5db !important;
    border-radius: 10px !important;
  }

  .step-wizard .step-content-1 .zip-input > i {
    display: none;
  }

  .step-wizard .step-content-1 .zip-input-textbox {
    top: 0 !important;
    height: 100% !important;
    box-sizing: border-box;
    padding: 0 16px !important;
    border-radius: 10px !important;
    font-size: 16px !important;
  }

  .step-wizard .step-content-1 .zip-input:focus-within {
    outline: 2px solid #015dab;
    outline-offset: 2px;
  }

  /* Compact guidelines below the ZIP field */
  .step-wizard .step-content-1 .cgm-step1-guidelines {
    display: block !important;
    flex: none !important;

    width: calc(100% - 40px) !important;
    max-width: 520px !important;
    min-width: 0 !important;
    box-sizing: border-box;

    margin: 24px auto 0 !important;
    padding: 20px 16px !important;

    background: #ebf7ff !important;
    border: 1px solid #bee3ff !important;
    border-radius: 12px !important;
    box-shadow: none !important;
  }

  .step-wizard .cgm-step1-guidelines > h4 {
    margin: 0 0 20px !important;
    color: #111827;
    font-size: 20px !important;
    line-height: 1.3 !important;
    text-align: left !important;
    letter-spacing: normal !important;
  }

  .step-wizard .cgm-step1-guidelines .pickup-guidelines-list {
    width: 100%;
    max-width: none;
    margin: 0;
  }

  /* Small icon beside each heading; description underneath. */
  .step-wizard .cgm-step1-guidelines .pickup-guidelines-list-item {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    grid-template-rows: auto auto;
    align-items: center;
    column-gap: 10px;
    row-gap: 6px;
    margin: 0 0 20px;
  }

  .step-wizard .cgm-step1-guidelines .pickup-guidelines-list-item > i.fas {
    grid-column: 1;
    grid-row: 1;
    justify-self: center;
    margin: 0 !important;
    color: #015dab;
    font-size: 21px !important;
  }

  .step-wizard .cgm-step1-guidelines .pickup-guidelines-list-item > h4 {
    grid-column: 2;
    grid-row: 1;
    margin: 0 !important;
    color: #111827;
    font-size: 16px !important;
    line-height: 1.35 !important;
    text-align: left !important;
    letter-spacing: normal !important;
  }

  .step-wizard .cgm-step1-guidelines .pickup-guidelines-list-item > .caption {
    grid-column: 1 / -1;
    grid-row: 2;
    margin: 0 !important;
    padding: 0 !important;
    color: #4a5565;
    font-size: 14px !important;
    font-weight: 400;
    line-height: 1.5 !important;
    text-align: left !important;
  }

  /* Needed Items uses the same compact treatment. */
  .step-wizard .cgm-step1-guidelines .needed-items-list {
    max-width: none;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent;
    border-radius: 0;
  }

  .step-wizard .cgm-step1-guidelines .needed-items-inner {
    margin: 0;
  }

  .step-wizard .cgm-step1-guidelines .needed-items-inner .heading {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    margin: 0 0 6px !important;
    text-align: left;
  }

  .step-wizard .cgm-step1-guidelines .needed-items-inner i.fas {
    position: static;
    display: block;
    justify-self: center;
    margin: 0 !important;
    color: #015dab;
    font-size: 21px !important;
  }

  .step-wizard .cgm-step1-guidelines .needed-items-inner h4 {
    position: static;
    display: block;
    margin: 0 !important;
    color: #111827;
    font-size: 16px !important;
    line-height: 1.35 !important;
    text-align: left;
    text-transform: none;
    letter-spacing: normal !important;
  }

  .step-wizard .cgm-step1-guidelines .needed-items-inner .caption {
    margin: 0 !important;
    padding: 0 !important;
    color: #4a5565;
    font-size: 14px !important;
    font-weight: 400;
    line-height: 1.5 !important;
    text-align: left !important;
  }
}
/* ==========================================================================
   MOBILE DONATION FLOW: APP-STYLE SCREEN
   ========================================================================== */

@media (max-width: 767px) {

  html.cgm-donation-app-active,
  html.cgm-donation-app-active body {
    height: 100%;
    overflow: hidden !important;
    overscroll-behavior: none;
  }

  /* Hide the entire footer, including the newsletter. */
  body.cgm-donation-app #colophon {
    display: none !important;
  }

  /* Keep the site header at the top. */
  body.cgm-donation-app #masthead {
    position: fixed !important;
    inset: 0 0 auto !important;
    width: 100% !important;
    margin: 0 !important;
    z-index: 1100;
  }

  /* The wizard fills the screen below the header. */
  body.cgm-donation-app .step-wizard {
    position: fixed !important;
    top: var(--cgm-app-header-height, 84px);
    right: 0;
    bottom: 0;
    left: 0;

    display: flex;
    flex-direction: column;

    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    box-sizing: border-box;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden;
    background: #ffffff;
  }

  /* Persistent step tracker */
  body.cgm-donation-app .step-wizard > .step-tracker {
    position: relative !important;
    inset: auto !important;

    flex: 0 0 auto;
    width: 100% !important;
    max-width: 520px !important;
    min-height: 0 !important;
    box-sizing: border-box;

    margin: 0 auto !important;
    padding: 18px 12px 16px !important;

    background: #ffffff;
  }

  body.cgm-donation-app .step-tracker .step-item {
    gap: 10px !important;
    min-width: 0;
  }

  body.cgm-donation-app .step-tracker .step-circle {
    width: 38px !important;
    height: 38px !important;
    font-size: 16px !important;
  }

  body.cgm-donation-app .step-tracker .step-label {
    font-size: 9px !important;
    letter-spacing: 0.3px !important;
  }

  /* The tracker no longer needs an artificial spacer. */
  body.cgm-donation-app .step-wizard > .step-spacer {
    display: none !important;
  }

  body.cgm-donation-app .step-wizard > .zip-change-container {
    flex: 0 0 auto;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 0 20px 14px;
    background: #ffffff;
	display: none !important;
  }

  /* Only this area scrolls. */
  body.cgm-donation-app .step-wizard > .step-body {
    flex: 1 1 auto;
    min-height: 0;
    width: 100%;
    box-sizing: border-box;

    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;

    padding-top: 12px;
    padding-bottom: calc(
      110px + env(safe-area-inset-bottom, 0px)
    );

    scroll-padding-top: 20px;
    scroll-padding-bottom: 110px;
  }

  /* Bottom clearance is now handled by the scrolling area. */
  body.cgm-donation-app .step-content-1.cgm-step1-nav-ready {
    padding-bottom: 0 !important;
  }

  body.cgm-donation-app .step-2-btm-space {
    display: none !important;
  }

  /* Retain the existing fixed Continue bar. */
  body.cgm-donation-app .cgm-mobile-step1-nav {
    z-index: 1050;
  }
}

/* ==========================================================================
   MOBILE STEP 2: CHARITY DROPDOWN + PERSISTENT NAVIGATION
   ========================================================================== */

/* Hide the added controls on desktop. */
.step-wizard .cgm-mobile-charity-chooser,
.step-wizard .cgm-mobile-step2-back {
  display: none;
}

@media (max-width: 767px) {

  .step-wizard .cgm-mobile-charity-chooser {
    display: block;
    margin-bottom: 20px;
    text-align: left;
  }

  .step-wizard .cgm-mobile-charity-chooser label {
    display: block;
    margin-bottom: 8px;
    color: #1a2b3c;
    font-size: 15px;
    font-weight: 800;
  }

  .step-wizard .cgm-mobile-charity-chooser select {
    width: 100%;
    min-height: 54px;
    box-sizing: border-box;
    padding: 14px 16px;
    border: 1px solid #d1d5db;
    border-radius: 10px;
    background: #ffffff;
    color: #1a2b3c;
    font-family: inherit;
    font-size: 16px;
  }

  .step-wizard .cgm-mobile-charity-chooser select:focus-visible {
    outline: 2px solid #015dab;
    outline-offset: 2px;
  }

  /* Reveal only the selected charity's existing card. */
  .step-wizard .step-content-2 .charity-grid {
    display: block !important;
    margin-bottom: 0 !important;
  }

  .step-wizard .step-content-2 .charity-card:not(.selected) {
    display: none !important;
  }

  .step-wizard .step-content-2 .charity-card.selected {
    display: flex;
    padding: 24px 20px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    transform: none !important;
  }

  /* Selection now happens through the dropdown. */
  .step-wizard .step-content-2 .charity-card .select-btn {
    display: none !important;
  }

  .step-wizard .step-content-2 .charity-card a.read-more {
    margin-bottom: 0 !important;
  }

  /* Fixed navigation using the existing forward button. */
  .step-wizard .step-content-2 .cgm-mobile-step2-nav {
    position: fixed;
    inset: auto 0 0;
    z-index: 1050;

    display: grid;
    grid-template-columns: minmax(75px, 0.8fr) minmax(0, 2fr);
    align-items: stretch;
    gap: 12px;

    width: 100% !important;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 14px 20px;
    padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px));

    background: #ffffff;
    border-top: 1px solid #e2e8f0;
    box-shadow: 0 -4px 20px rgba(26, 43, 60, 0.08);
  }

  .step-wizard .cgm-mobile-step2-nav > button {
    display: flex !important;
    align-items: center;
    justify-content: center;

    width: 100% !important;
    min-width: 0;
    min-height: 54px;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 14px 12px !important;

    border-radius: 50px !important;
    font-family: inherit;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.3;
    white-space: normal;
    transform: none !important;
  }

  .step-wizard .cgm-mobile-step2-nav > .cgm-mobile-step2-back {
    background: #ffffff;
    color: #015dab;
    border: 1px solid #d1d5db;
    cursor: pointer;
  }

  .step-wizard .cgm-mobile-step2-nav > .pickup-date-btn:not(.active) {
    background: #bababa !important;
    pointer-events: none !important;
    box-shadow: none !important;
  }
}
/* Hide Pickup Guidelines on Step 2, mobile only. */
@media (max-width: 767px) {
  .step-wizard .step-content-2 .pickup-guidelines-box {
    display: none !important;
  }
}
/* Step 2: compact selected charity card, mobile only */
@media (max-width: 767px) {

  .step-wizard .step-content-2 .charity-card.selected {
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr);
    align-items: center;
    gap: 12px;

    padding: 18px !important;
    text-align: left !important;

    background: #EAF7EF !important;
    border: 1px solid #008A48 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    transform: none !important;
  }

  .step-wizard .step-content-2 .charity-card.selected .charity-logo {
    grid-column: 1;
    grid-row: 1;

    width: 48px !important;
    height: 48px !important;
    margin: 0 !important;
  }

  .step-wizard .step-content-2 .charity-card.selected .charity-logo img {
    width: auto !important;
    height: auto !important;
    max-width: 48px !important;
    max-height: 48px !important;
    object-fit: contain !important;
  }

  .step-wizard .step-content-2 .charity-card.selected h4 {
    grid-column: 2;
    grid-row: 1;

    margin: 0 !important;
    color: #008A48 !important;
    font-size: 16px !important;
    line-height: 1.3 !important;
    text-align: left !important;
  }

  .step-wizard .step-content-2 .charity-card.selected p {
    grid-column: 1 / -1;

    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;

    margin: 0 !important;
    color: #4a5565 !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    text-align: left !important;
  }

  .step-wizard .step-content-2 .charity-card.selected a.read-more {
    grid-column: 1 / -1;
    justify-self: start;

    margin: 0 !important;
    color: #008A48 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.4 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
  }
    .step-wizard .step-content-2,
  .step-wizard .step-content-2 .wizard-main-section {
    background: #ffffff !important;
    padding-top: 0px !important;
  }
}

/* Step 2: match Step 1 heading and subheading on mobile */
@media (max-width: 767px) {
  .step-wizard .step-header-2 {
    padding-inline: 20px;
  }

  .step-wizard .step-header-2 h1 {
    margin: 0 !important;
    font-size: 32px !important;
    line-height: 1.15 !important;
    letter-spacing: -0.8px;
	text-align: left;
	padding-left: 24px;
  }

  .step-wizard .step-header-2 .step-header-caption {
    max-width: 420px;
    margin: 14px auto 24px !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
	text-align: left;
	padding-left: 24px;
  }
}
/* Selected charity above the mobile navigation buttons */
.step-wizard .cgm-mobile-selected-charity {
  display: none;
}

@media (max-width: 767px) {
  .step-wizard .cgm-mobile-step2-nav .cgm-mobile-selected-charity {
    display: block;
    grid-column: 1 / -1;
    grid-row: 1;

    color: #1a2b3c;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    text-align: left;
    overflow-wrap: anywhere;
  }

  /* Leave room for the taller Step 2 navigation bar. */
  body.cgm-donation-app .step-body:has(.step-content-2[style*="display: block"]) {
    padding-bottom: calc(
      160px + env(safe-area-inset-bottom, 0px)
    );
  }
}

/* ==========================================================================
   MOBILE STEP 3: DATE NAVIGATION
   ========================================================================== */

.step-wizard .cgm-mobile-step3-back,
.step-wizard .cgm-mobile-selected-date {
  display: none;
}

@media (max-width: 767px) {

  /* Match Step 2's heading size and alignment. */
  .step-wizard .step-header-3 {
    padding-inline: 20px;
    box-sizing: border-box;
  }

  .step-wizard .step-header-3 h1 {
    margin: 0 !important;
    font-size: 32px !important;
    line-height: 1.15 !important;
    letter-spacing: -0.8px;
    text-align: left !important;
	padding-left: 24px;;
  }

  .step-wizard .step-header-3 .step-header-caption {
    max-width: 420px;
    margin: 14px auto 0px !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    text-align: left !important;
	  padding-left: 24px;
  }

  /* Remove the summary on this step only. */
  .step-wizard .step-content-3 .summary-card {
    display: none !important;
  }

  .step-wizard .step-content-3,
  .step-wizard .step-content-3 .wizard-main-section {
    background: #ffffff !important;
  }

  /* Persistent bottom controls */
  .step-wizard .step-content-3 .cgm-mobile-step3-nav {
    position: fixed;
    inset: auto 0 0;
    z-index: 1050;

    display: grid;
    grid-template-columns: minmax(75px, 0.8fr) minmax(0, 2fr);
    align-items: stretch;
    gap: 12px;

    width: 100% !important;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 14px 20px;
    padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px));

    background: #ffffff;
    border-top: 1px solid #e2e8f0;
    box-shadow: 0 -4px 20px rgba(26, 43, 60, 0.08);
  }

  .step-wizard .cgm-mobile-step3-nav .cgm-mobile-selected-date {
    display: block;
    grid-column: 1 / -1;
    grid-row: 1;

    color: #1a2b3c;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    text-align: left;
    overflow-wrap: anywhere;
  }

  .step-wizard .cgm-mobile-step3-nav > button {
    display: flex !important;
    align-items: center;
    justify-content: center;

    width: 100% !important;
    min-width: 0;
    min-height: 54px;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 14px 12px !important;

    border-radius: 50px !important;
    font-family: inherit;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.3;
    white-space: normal;
    transform: none !important;
  }

  .step-wizard .cgm-mobile-step3-nav > .cgm-mobile-step3-back {
    background: #ffffff;
    color: #015dab;
    border: 1px solid #d1d5db;
    cursor: pointer;
  }

  .step-wizard .cgm-mobile-step3-nav > .confirm-pickup-date-btn:not(.active) {
    background: #bababa !important;
    pointer-events: none !important;
    box-shadow: none !important;
  }

  /* Space for the selected date and navigation controls. */
  body.cgm-donation-app .step-body:has(
    .step-content-3[style*="display: block"]
  ) {
    padding-bottom: calc(
      170px + env(safe-area-inset-bottom, 0px)
    );
  }
}
/* Step 3: white background and unboxed calendar, mobile only */
@media (max-width: 767px) {
  .step-wizard .step-content-3,
  .step-wizard .step-content-3 .wizard-main-section {
    background: #ffffff !important;
	padding-top: 0px !important;
  }

  .step-wizard .step-content-3 .calendar-wrapper {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
	  padding-top: 0px !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
}

/*calendar selected date*/
@media (max-width: 767px) {
  .calendar-picker table.calendar > tbody > tr > td.dayMarked.ds-selected div.day-box-inner {
    transform: none;
    transition: none;
  }
  .calendar-picker table.calendar > tbody > tr > td.dayMarked.ds-selected div.day-box .dot {
    display: none;
  }
}

@media (max-width: 767px) {
  .step-wizard .step-content-3 .calendar-header {
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 20px !important;
  }

  .step-wizard .step-content-3 .calendar-month-year {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
    margin: 0 !important;
    font-size: 22px !important;
    line-height: 1.2 !important;
    text-align: center !important;
  }

  .step-wizard .step-content-3 .calendar-nav {
    display: contents !important;
  }

  .step-wizard .step-content-3 .calendar-nav .nav-btn {
    grid-row: 1;
    width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
  }

  .step-wizard .step-content-3 .nav-btn[data-dir="prev"] {
    grid-column: 1;
  }

  .step-wizard .step-content-3 .nav-btn[data-dir="next"] {
    grid-column: 3;
  }
}
/* Step 3: reduce excess mobile spacing */
@media (max-width: 767px) {
  .step-wizard .step-content-3 .calendar-wrapper {
    min-height: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }

  .step-wizard .step-content-3 .calendar-legend {
    margin-top: 16px !important;
  }

  .step-wizard .step-content-3 .wizard-main-section {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }

  .step-wizard .step-content-3 .needed-items-list {
    display: none !important;
  }
}

/* Step 3: remove excess scrolling below the calendar */
@media (max-width: 767px) {
  body.cgm-donation-app .step-body:has(
    .step-content-3[style*="display: block"]
  ) {
    margin-bottom: var(--cgm-date-nav-height, 130px);
    padding-bottom: 12px !important;
  }

  .step-wizard .step-content-3 .wp-block-columns:has(.summary-card) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}
/* ==========================================================================
   MOBILE STEP 4: DETAILS + PERSISTENT NAVIGATION
   ========================================================================== */

.step-wizard .cgm-mobile-step4-back,
.step-wizard .cgm-mobile-details-date {
  display: none;
}

@media (max-width: 767px) {

  /* Match the previous steps' heading and supporting text. */
  .step-wizard .step-header-4 {
    padding-inline: 20px;
    box-sizing: border-box;
  }

  .step-wizard .step-header-4 h1 {
    margin: 0 !important;
    font-size: 32px !important;
    line-height: 1.15 !important;
    letter-spacing: -0.8px;
    text-align: left !important;
	  padding-left: 24px;
  }

  .step-wizard .step-header-4 .step-header-caption {
    max-width: 420px;
    margin: 14px auto 0px !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    text-align: left !important;
	padding-left: 24px;
  }

  /* Remove the summary and its row's extra margins. */
  .step-wizard .step-content-4 .summary-card {
    display: none !important;
  }

  .step-wizard .step-content-4 .wp-block-columns:has(.summary-card) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .step-wizard .step-content-4,
  .step-wizard .step-content-4 .wizard-main-section {
    background: #ffffff !important;
  }

  .step-wizard .step-content-4 .wizard-main-section {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }

  /* Persistent navigation: preserve the existing Schedule button text. */
  .step-wizard .step-content-4 .cgm-mobile-step4-nav {
    position: fixed;
    inset: auto 0 0;
    z-index: 1050;

    display: grid;
    grid-template-columns: minmax(75px, 0.8fr) minmax(0, 2fr);
    align-items: stretch;
    gap: 12px;

    width: 100% !important;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 14px 20px;
    padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px));

    background: #ffffff;
    border-top: 1px solid #e2e8f0;
    box-shadow: 0 -4px 20px rgba(26, 43, 60, 0.08);
  }

  .step-wizard .cgm-mobile-step4-nav .cgm-mobile-details-date {
    display: block;
    grid-column: 1 / -1;
    grid-row: 1;

    color: #1a2b3c;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    text-align: left;
    overflow-wrap: anywhere;
  }

  .step-wizard .cgm-mobile-step4-nav > button {
    display: flex !important;
    align-items: center;
    justify-content: center;

    width: 100% !important;
    min-width: 0;
    min-height: 54px;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 14px 12px !important;

    border-radius: 50px !important;
    font-family: inherit;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.3;
    white-space: normal;
    transform: none !important;
  }

  .step-wizard .cgm-mobile-step4-nav > .cgm-mobile-step4-back {
    background: #ffffff;
    color: #015dab;
    border: 1px solid #d1d5db;
    cursor: pointer;
  }

  /* Reserve the navigation's measured height outside the scroll area. */
  body.cgm-donation-app .step-wizard:not(.submitting) > .step-body:has(
    .step-content-4[style*="display: block"]
  ) {
    margin-bottom: var(--cgm-details-nav-height, 140px);
    padding-bottom: 16px !important;
  }

  /* Hide the controls while the existing submission panel is shown. */
  .step-wizard.submitting .cgm-mobile-step4-nav {
    display: none !important;
  }
}
@media (max-width: 767px) {
  /* Set the outer content spacing. */
  .step-wizard .step-content-4 .wizard-main-section > .wp-block-group__inner-container,
  .step-wizard .step-content-4 .wizard-main-section > .wp-block-columns {
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box;
  }

  /* Remove the form card and its additional side padding. */
  .step-wizard .step-content-4 .contact-details-container {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 10px !important;
  }
}

/* Prevent hidden account fields from extending mobile form scrolling. */
@media (max-width: 767px) {
  .step-wizard .step-content-4 #psp-checkout-create-user {
    overflow: hidden !important;
  }
}

/* Mobile loading heading and subheading */
@media (max-width: 767px) {
  .step-wizard .step-header-busy {
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box;
    text-align: left !important;
  }

  .step-wizard .step-header-busy h1 {
    margin: 0 0 14px !important;
    font-size: 32px !important;
    line-height: 1.15 !important;
    letter-spacing: -0.8px !important;
    text-align: left !important;
  }

  .step-wizard .step-header-busy p {
    margin: 0 0 24px !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    text-align: left !important;
  }
}

/* ==========================================================================
   MOBILE STEP 5: SCHEDULED CONFIRMATION
   ========================================================================== */
@media (max-width: 767px) {

  /* Remove the space reserved for previous steps' fixed navigation. */
  body.cgm-donation-app .step-wizard > .step-body:has(
    .step-content-5[style*="display: block"]
  ) {
    margin-bottom: 0 !important;
    padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .step-wizard .step-header-5 {
    padding: 12px 24px 0 !important;
    text-align: center !important;
    box-sizing: border-box;
  }

  /* Keep the existing interactive heart. */
  .step-wizard .step-header-5 .scheduled-hearts {
    margin: 0 0 20px !important;
  }

  .step-wizard .step-header-5 .scheduled-hearts .fa-heart {
    font-size: 80px !important;
    line-height: 1 !important;
  }

  .step-wizard .step-header-5 h1 {
    margin: 0 !important;
    font-size: 32px !important;
    line-height: 1.15 !important;
    letter-spacing: -0.8px !important;
    text-align: center !important;
  }

  .step-wizard .step-header-5 .scheduled-pickup-day {
    margin: 20px 0 0 !important;
    color: #4a5565 !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
  }

  .step-wizard .step-header-5 .scheduled-date {
    display: block;
    margin-top: 6px;
    color: #015dab !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
  }

  .step-wizard .step-header-5 .scheduled-pickup-id {
    margin: 12px 0 0 !important;
    color: #4a5565 !important;
    font-size: 13px !important;
    font-weight: 400 !important;
	display: none;
  }

  .step-wizard .step-content-5 {
    background: #ffffff !important;
  }

  .step-wizard .step-content-5 .scheduled-confirmation {
    width: 100%;
    max-width: 480px;
    box-sizing: border-box;
    margin: 24px auto 0 !important;
    padding: 0 24px !important;
    text-align: center;
  }

  /* Hide only the lengthy introduction. */
.step-wizard .step-content-5 .scheduled-intro {
  display: none !important;
}

/* Keep the Proudly Supporting confirmation card. */
.step-wizard .step-content-5 .confirmation-card-container {
  padding: 24px 0 !important;
}

  .step-wizard .step-content-5 .scheduled-green-box {
    margin: 0 !important;
    padding: 20px !important;
    background: #eaf7ef !important;
    border: 1px solid #008a48 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    color: #4a5565 !important;
  }

  .step-wizard .step-content-5 .scheduled-green-box h4 {
    margin: 0 0 12px !important;
    color: #0055a5 !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.4 !important;
  }

  .step-wizard .step-content-5 .scheduled-green-box p {
    margin: 0 !important;
    color: #4a5565 !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
  }

  .step-wizard .step-content-5 .scheduled-green-box br {
    display: none;
  }

  /* Explanation first, existing download button second. */
  .step-wizard .step-content-5 .scheduled-download {
    display: flex;
    flex-direction: column;
    gap: 18px;
    margin-top: 24px !important;
  }

  .step-wizard .step-content-5 .scheduled-sign-caption {
    order: 0;
    margin: 0 !important;
    color: #4a5565 !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
  }

  .step-wizard .step-content-5 .scheduled-sign-caption br {
    display: none;
  }

  .step-wizard .step-content-5 .pickup-sign-btn {
    order: 1;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100% !important;
    min-height: 54px;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 14px 18px !important;
    border-radius: 50px !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    white-space: normal !important;
  }
}

@media (max-width: 767px) {

  /* Pickup date panel */
  .step-wizard .step-header-5 .scheduled-pickup-day {
    padding: 18px 16px !important;
    margin: 20px 0 0 !important;
    background: #eaf7ef !important;
    border: 1px solid #008a48 !important;
    border-radius: 12px !important;

    color: #4a5565 !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: center !important;
  }

  .step-wizard .step-header-5 .scheduled-pickup-day .scheduled-date {
    display: block;
    margin-top: 8px !important;
    color: #008a48 !important;
    font-size: 21px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
  }

  /* Mobile content order */
  .step-wizard .step-content-5 .scheduled-confirmation {
    display: flex;
    flex-direction: column;
  }

  /* 1. You do not need to be present */
  .step-wizard .step-content-5 .scheduled-green-box {
    order: 1;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  /* 2. Proudly Supporting box */
  .step-wizard .step-content-5 .confirmation-card-container {
    order: 2;
    display: block !important;
    padding: 24px 0 !important;
  }

  /* 3. Pickup sign explanation and download */
  .step-wizard .step-content-5 .scheduled-download {
    order: 3;
    margin-top: 0 !important;
  }
}

/* No extra layout wrapper on desktop. */
.step-wizard .cgm-mobile-step5-nav {
  display: contents;
}

.step-wizard .step-content-5 .scheduled-pickup-checklist,
.step-wizard .step-content-5 .scheduled-home-link {
  display: none;
}

@media (max-width: 767px) {

  /* Allow the caption and navigation to be ordered independently. */
  .step-wizard .step-content-5 .scheduled-download {
    display: contents !important;
  }

  .step-wizard .step-content-5 .scheduled-green-box {
    order: 1;
  }

  .step-wizard .step-content-5 .cgm-mobile-pickup-list .scheduled-green-box p,
  .step-wizard .step-content-5 .cgm-mobile-pickup-list .scheduled-sign-caption {
    display: none !important;
  }

  .step-wizard .step-content-5 .scheduled-pickup-checklist {
    display: block;
    max-width: 340px;
    margin: 18px auto 0;
    padding: 0;
    color: #4a5565;
    list-style: none;
    text-align: left;
  }

  .step-wizard .step-content-5 .scheduled-pickup-checklist li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
  }

  .step-wizard .step-content-5 .scheduled-pickup-checklist li + li {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #e2e8f0;
  }

  .step-wizard .step-content-5 .scheduled-pickup-icon {
    display: inline-flex;
    flex: 0 0 32px;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #eaf3fc;
    color: #015dab;
    font-size: 14px;
  }

  .step-wizard .step-content-5 .scheduled-pickup-copy {
    display: block;
    padding-top: 2px;
    font-size: 14px;
    line-height: 1.45;
  }

  .step-wizard .step-content-5 .scheduled-pickup-copy strong,
  .step-wizard .step-content-5 .scheduled-pickup-copy span {
    display: block;
  }

  .step-wizard .step-content-5 .scheduled-pickup-copy strong {
    margin-bottom: 3px;
    color: #0055a5;
    font-size: 15px;
    font-weight: 800;
  }

  .step-wizard .step-content-5 .confirmation-card-container {
    order: 2;
  }

  .step-wizard .step-content-5 .scheduled-home-link {
    order: 3;
    display: inline-block;
    align-self: center;
    margin: 0 0 12px;
    color: #015dab;
    font-size: 15px;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
  }

  /* Persistent download navigation. */
  .step-wizard .step-content-5 .cgm-mobile-step5-nav {
    position: fixed;
    inset: auto 0 0;
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;

    box-sizing: border-box;
    padding: 14px 24px;
    padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px));

    background: #ffffff;
    border-top: 1px solid #e2e8f0;
    box-shadow: 0 -4px 20px rgba(26, 43, 60, 0.08);
  }

  .step-wizard .step-content-5 .cgm-mobile-step5-nav .pickup-sign-btn {
    width: 100% !important;
    min-height: 54px;
    margin: 0 !important;
  }

  /* Keep the final content clear of the fixed button. */
  body.cgm-donation-app .step-wizard > .step-body:has(
    .step-content-5[style*="display: block"]
  ) {
    margin-bottom: 0 !important;
    padding-bottom: calc(110px + env(safe-area-inset-bottom, 0px)) !important;
  }
}
/* Hide the repeated pickup date on mobile. */
@media (max-width: 767px) {
  .step-wizard .step-content-5 .conf-data-row:has(.scheduled-date),
  .step-wizard .step-content-5 .conf-divider:has(
    + .conf-data-row .scheduled-date
  ) {
    display: none !important;
  }

  .step-wizard .step-content-5 .scheduled-green-box strong,
  .step-wizard .step-content-5 .scheduled-sign-caption strong {
    font-weight: 800 !important;
  }
}
/* Mobile: Proudly Supporting confirmation card */
@media (max-width: 767px) {

  .step-wizard .step-content-5 .confirmation-card {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 24px 20px !important;

    background: #ffffff !important;
    box-shadow: none !important;
    text-align: center !important;
  }

  .step-wizard .step-content-5 .conf-logo-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }

  .step-wizard .step-content-5 .conf-logo-section img {
    width: auto !important;
    height: auto !important;
    max-width: 110px !important;
    max-height: 70px !important;
    object-fit: contain;
    margin: 0 0 4px !important;
  }

  .step-wizard .step-content-5 .conf-proudly {
    color: #4a5565 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
  }

  .step-wizard .step-content-5 .conf-charity-name {
    margin: 0 !important;
    color: #015dab !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    overflow-wrap: anywhere;
  }

  .step-wizard .step-content-5 .conf-thank-you {
    display: none !important;
  }

  .step-wizard .step-content-5 .conf-divider {
    margin: 20px 0 !important;
    border: 0 !important;
    height: 1px !important;
    background: #d6e4f2 !important;
  }

  .step-wizard .step-content-5 .conf-label {
    display: block;
    margin: 0 0 6px !important;
    color: #4a5565 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
  }

  .step-wizard .step-content-5 .conf-value {
    margin: 0 !important;
    color: #1a2b3c !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    overflow-wrap: anywhere;
  }

  /* Restore the pickup date included in this reference. */
  .step-wizard .step-content-5 .conf-data-row:has(.scheduled-date),
  .step-wizard .step-content-5 .conf-divider:has(
    + .conf-data-row .scheduled-date
  ) {
    display: block !important;
  }
}

/* Desktop retains its existing placeholder cards. */
.step-wizard .cgm-mobile-charity-orbs {
  display: none;
}

@media (max-width: 767px) {

  /* Replace the mobile placeholders with the existing orb animation. */
  .step-wizard .charity-grid-busy:has(> .cgm-mobile-charity-orbs)
    > :not(.cgm-mobile-charity-orbs) {
    display: none !important;
  }

  .step-wizard .charity-grid-busy > .cgm-mobile-charity-orbs {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 12px;

    width: 100%;
    min-height: 140px;
    box-sizing: border-box;
    padding: 32px 0;
  }

  .step-wizard .cgm-mobile-charity-orbs
    .spinner-grow-alternating-color {
    margin: 0 !important;
  }
}

/* Match the original submission orb on mobile. */
@media (max-width: 767px) {
  .step-wizard .cgm-mobile-charity-orbs
    .spinner-grow-alternating-color {
    display: inline-block !important;
    width: 80px !important;
    height: 80px !important;
    margin: 0 !important;
    background-color: #015dab !important;
    border-radius: 50% !important;
  }
}

@media (max-width: 767px) {
  .step-wizard .cgm-mobile-charity-orbs
    .spinner-grow-alternating-color {
    position: relative !important;
  }

  .step-wizard .cgm-mobile-charity-orbs
    .spinner-grow-alternating-color::before,
  .step-wizard .cgm-mobile-charity-orbs
    .spinner-grow-alternating-color::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 80px !important;
    height: 80px !important;
    border-radius: 50% !important;
  }

  .step-wizard .cgm-mobile-charity-orbs
    .spinner-grow-alternating-color::before {
    background-color: #02a950 !important;
  }

  .step-wizard .cgm-mobile-charity-orbs
    .spinner-grow-alternating-color::after {
    background-color: #015dab !important;
  }
}

/* Existing busy panel between Steps 4 and 5 */
.step-wizard .pickup-submit-busy .cgm-scheduling-copy {
  margin-top: 24px;
  padding: 0 24px;
  text-align: center;
}

.step-wizard .pickup-submit-busy .cgm-scheduling-copy h2 {
  margin: 0 0 12px !important;
  color: #015dab !important;
  font-size: 32px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

.step-wizard .pickup-submit-busy .cgm-scheduling-copy p {
  margin: 0 !important;
  color: #4a5565 !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
}

@media (max-width: 767px) {
  .step-wizard .pickup-submit-busy .cgm-scheduling-copy h2 {
    font-size: 28px !important;
  }

  .step-wizard .pickup-submit-busy .cgm-scheduling-copy p {
    font-size: 15px !important;
  }
}

/* Hide the details heading while scheduling the pickup. */
.step-wizard.submitting .step-header-4 {
  display: none !important;
}

/* Calendar step: keep navigation inside the visible mobile viewport. */
@media (max-width: 767px) {

  /* Reserve space inside the scroll area instead of shortening it. */
  body.cgm-donation-app .step-wizard > .step-body:has(
    .step-content-3[style*="display: block"]
  ) {
    margin-bottom: 0 !important;

    padding-bottom: calc(
      var(--cgm-date-nav-height, 130px) + 16px
    ) !important;
  }

  /* Keep the existing calendar navigation at the viewport bottom. */
  body.cgm-donation-app .step-content-3 .cgm-mobile-step3-nav {
    position: fixed !important;
    top: auto !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
  }

  /* Size the calendar screen using the changing browser viewport. */
  @supports (height: 100dvh) {
    body.cgm-donation-app .step-wizard:has(
      .step-content-3[style*="display: block"]
    ) {
      bottom: auto !important;
      height: calc(
        100dvh - var(--cgm-app-header-height, 84px)
      ) !important;
    }
  }
}

/* Steps 3 and 4: mobile viewport and navigation spacing. */
@media (max-width: 767px) {

  /* Calendar: reserve navigation space inside the scrolling panel. */
  body.cgm-donation-app .step-wizard > .step-body:has(
    .step-content-3[style*="display: block"]
  ) {
    margin-bottom: 0 !important;
    padding-bottom: calc(
      var(--cgm-date-nav-height, 130px) + 16px
    ) !important;
  }

  /* Details: reserve navigation space while the form is displayed. */
  body.cgm-donation-app .step-wizard:not(.submitting) > .step-body:has(
    .step-content-4[style*="display: block"]
  ) {
    margin-bottom: 0 !important;
    padding-bottom: calc(
      var(--cgm-details-nav-height, 140px) + 16px
    ) !important;
  }

  /* Anchor both navigation bars to the viewport bottom. */
  body.cgm-donation-app .step-content-3 .cgm-mobile-step3-nav,
  body.cgm-donation-app .step-content-4 .cgm-mobile-step4-nav {
    position: fixed !important;
    top: auto !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
  }

  /* Follow the available height as browser toolbars change. */
  @supports (height: 100dvh) {
    body.cgm-donation-app .step-wizard:has(
      .step-content-3[style*="display: block"],
      .step-content-4[style*="display: block"]
    ) {
      bottom: auto !important;
      height: calc(
        100dvh - var(--cgm-app-header-height, 84px)
      ) !important;
    }
  }
}

/* Step 4: give the form more room while entering details. */
@media (max-width: 767px) {

  body.cgm-donation-app
    .step-wizard.cgm-details-editing
    .cgm-mobile-step4-nav {
    display: none !important;
  }

  /* Remove the space reserved for the hidden navigation. */
  body.cgm-donation-app
    .step-wizard.cgm-details-editing:not(.submitting)
    > .step-body:has(
      .step-content-4[style*="display: block"]
    ) {
    margin-bottom: 0 !important;
    padding-bottom: 24px !important;
    scroll-padding-bottom: 24px !important;
  }
}


/* Step 1: inline ZIP validation on mobile. */
.step-wizard .cgm-step1-zip-error {
  display: none;
}
@media (max-width: 767px) {
  .step-wizard .step-content-1 .zip-input.cgm-zip-invalid {
    border: 2px solid #c8102e !important;
    outline: none;
  }
  .step-wizard .step-content-1 .cgm-step1-zip-error:not(:empty) {
    display: block;
    margin: 8px 0 0;
    color: #c8102e;
    font-family: inherit;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.4;
  }
}

/* Mobile details errors appear after an attempted submission. */
@media (max-width: 767px) {
  .step-wizard .details-wrap .required-mark > i { display: none; }
  .step-wizard .details-wrap .required-mark::after { content: " *"; }
  .step-wizard .details-wrap label.cgm-field-invalid { scroll-margin-top: 16px; }
  .step-wizard .details-wrap .form-group label.cgm-field-invalid .details-field,
  .step-wizard .details-wrap .form-group label.cgm-field-invalid .details-field:focus {
    border: 2px solid #c8102e !important;
    outline-color: #c8102e !important;
  }
  .step-wizard .step-content-4 .details-wrap .form-group label.cgm-field-invalid .cgm-field-error {
    display: block;
    margin-top: 8px;
    color: #c8102e !important;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.4;
  }
  .step-wizard .details-wrap .cgm-validation-summary {
    margin: 0 0 20px;
    padding: 14px;
    background: #fff2f4;
    border: 1px solid #f4a7b5;
    border-radius: 12px;
    color: #b3132b !important;
    font-size: 15px;
    line-height: 1.4;
  }
  .step-wizard .details-wrap .cgm-validation-summary p { margin: 6px 0 0; color: #b3132b !important; }
}

/* The unavailable-ZIP alert inherits the established Quark warning colors.
 * Keep recovery-action styling scoped to this alert; other warnings are unchanged. */
.step-wizard.error .step-item.active .step-circle {
  box-shadow: 0 0 0 6px #86988d33 !important;
}
.step-wizard .charity-grid-error .qrk-alert-link:has(.cgm-change-zip-action) .qrk-alert-link-chevron {
  display:none;
}
.step-wizard .charity-grid-error .cgm-change-zip-action {
  --ds-button-background: #29384b;
  --ds-button-hover: #111827;
  --ds-button-shadow: #29384b30;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:100%;
  box-sizing:border-box;
  text-align:center;
  text-decoration:none!important;
  white-space:normal;
}
.step-wizard .charity-grid-error .cgm-change-zip-action:focus-visible {
  background:var(--ds-button-hover)!important;
  outline:none!important;
  box-shadow:none!important;
}


.uagb-heading-text {
  outline: none !important;
}

/* NAV FIX FOR PAGES THAT DONT USE NEW TEMPALTE - USES SAME WIDTH AS NEW NAV	*/
body.donate-stuff:not(.page-template-template-website-refresh) .site-header .storefront-primary-navigation .col-med {
    max-width: 1690px !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    margin: 0 auto !important;
    box-sizing: border-box !important; 
}





/*start of fix menu responsive when viewing pages without new template*/

/* ==========================================================================
   STAGE 1: SMALLER/TIGHTER DESKTOP MENU (1400px down to 1171px)
   Keeps the desktop menu alive but makes it more compact
   ========================================================================== */
@media (max-width: 1650px) and (min-width: 1171px) {
    /* 1. Apply your preferred 18px font and tighten padding */
    body.donate-stuff:not(.page-template-template-website-refresh) .main-navigation ul.menu li a {
        padding-left: 6px !important;
        padding-right: 6px !important;
        font-size: 18px !important;
    }

    /* 2. THE EMERGENCY SQUEEZE: Triggers at 1400px to stop the 1382px jump */
    @media (max-width: 1400px) {
        body.donate-stuff:not(.page-template-template-website-refresh) .main-navigation ul.menu li a {
            font-size: 15px !important; /* Drops just enough to save the line */
            padding-left: 4px !important;
            padding-right: 4px !important;
        }
        body.donate-stuff:not(.page-template-template-website-refresh) .site-header .button {
            min-width: 140px !important; /* Slimmer buttons for the tight squeeze */
            font-size: 11px !important;
            padding: 10px 12px !important;
        }
    }

    /* 3. Minimize all gaps in the header container */
    body.donate-stuff:not(.page-template-template-website-refresh) .site-header .col-med {
        gap: 8px !important;
    }
}

/* ==========================================================================
   STAGE 2: MOBILE MENU SWITCH (1170px and below)
   Stacks the logo and menu button vertically and centers both
   ========================================================================== */
@media (max-width: 1170px) {
    /* 1. Hide the desktop menu items */
    body.donate-stuff:not(.page-template-template-website-refresh) .main-navigation ul.menu,
    body.donate-stuff:not(.page-template-template-website-refresh) .secondary-navigation {
        display: none !important;
        font-size: 13px !important;
    }

    /* 2. Force the header container to stack vertically */
    body.donate-stuff:not(.page-template-template-website-refresh) .site-header .col-med {
        display: flex !important;
        flex-direction: column !important; /* This forces the stacked look */
        align-items: center !important;    /* Centers everything horizontally */
        gap: 0 !important;
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    /* 3. Style the Logo for Mobile */
    body.donate-stuff:not(.page-template-template-website-refresh) .site-branding {
        display: flex !important;
        justify-content: center !important;
        margin-bottom: 20px !important; /* Space between logo and menu button */
        padding: 0 !important;
        width: 100% !important;
    }

    /* 4. Center the "Menu" Button */
    body.donate-stuff:not(.page-template-template-website-refresh) .menu-toggle {
        display: inline-block !important;
        margin: 0 auto !important;
        float: none !important; /* Removes legacy floats that cause offset */
    }

    /* 5. Header padding adjustment */
    body.donate-stuff:not(.page-template-template-website-refresh) #masthead {
        padding: 0 !important;
    }

    body.donate-stuff:not(.page-template-template-website-refresh) .site-header .storefront-primary-navigation .main-navigation {
      text-align: center !important;
    }
}

/*end of fix menu responsive when viewing pages without new template*/






/* SCHEDULE DONATION PAGE ZIP CODE ELEMENT FIX - TARGETS ONLY THAT PAGE	*/
.page-id-266250 #ds-fe__order-form #ds-fe__lead-wrapper {
  justify-content: center !important;
}

/* GLOBAL RESIZE FIX (Paired with bayli.js) - Stops the mobile menu from flashing when dragging the window size */
.no-transitions * {
  transition: none !important;
}

/* Removes padding from #masthead ONLY on pages NOT using the refresh template */
body.donate-stuff:not(.page-template-template-website-refresh) #masthead {
    padding: 0 !important;
}

/**************************************************************************************************/
/*!		GLOBAL DEFS	*/
/**************************************************************************************************/

:root {


  /**************************************************************************************************/
  /*!		BLACKS	*/
  /**************************************************************************************************/

  --ds-black-op05:			rgba(0, 0, 0, 0.05);
  --ds-black-op08:			rgba(0, 0, 0, 0.08);
  --ds-black-op10:			rgba(0, 0, 0, 0.10);


  /**************************************************************************************************/
  /*!		WHITES	*/
  /**************************************************************************************************/
  --ds-white:					#ffffff;


  /**************************************************************************************************/
  /*!		GRAYS	*/
  /**************************************************************************************************/
  --ds-gray:					#94a3b8;
  --ds-gray-blue-dark:		#6a7282;
  --ds-x:						#4a5568;
  --ds-x:						#475569;


  /**************************************************************************************************/
  /*!		BLUES	*/
  /**************************************************************************************************/
  --ds-blue:					#015dab;
  --ds-blue-light:			#90d5f9;

  /**************************************************************************************************/
  /*!		GREENS	*/
  /**************************************************************************************************/
  --ds-green:					#02a950;
  --ds-green-op70:			rgba(1, 169, 79, 0.7);
  --ds-green-op30: 			rgba(2, 169, 80, 0.3);
  --ds-peppermint: 			#d1f2e1;



  --ds-2: #f0f7ff;
  --ds-4: #f4f7fa;
  --ds-x: #f7fafc;

  --ds-x: #e2e8f0;
  --ds-x: #f3f4f6;
  --ds-x: #f1f5f9;
  --ds-x: #d1d5dc;
  --ds-x: #f0f0f0;
  --ds-x: #cbd5e0;



  --ds-navy: #1a2b3c;
  --ds-navy: #1e293b;

  --ds-x: #111827;
  --ds-x: #101828;

  --ds-x: rgba(1, 93, 171, 0.3);
  --ds-x: rgba(1, 93, 171, 0.12);
  --ds-x: rgba(1, 93, 171, 0.15);




}

/**************************************************************************************************/
/*!		NORMALIZE BUTTONS	*/
/**************************************************************************************************/

footer button,
button[id^="ds-fe_"],
a.wp-block-button__link {

  border-radius: 30px !important;

  font-family: "filson-pro", sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  line-height: 14px !important;
  letter-spacing: 1.2px !important;
  transition: all 0.3s ease !important;
}

a.wp-block-button__link .uagb-button__link {
  font-family: "filson-pro", sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  line-height: 14px !important;
  letter-spacing: 1.2px !important;
  transition: all 0.3s ease !important;
}


/**************************************************************************************************/
/*!		FOOTER	*/
/**************************************************************************************************/

/* --- 1. Footer Background & Swoosh (High-Power Overlap) --- */
.refresh-footer {
  /* Kill the white background here so the swoosh is truly transparent */
  background-color: transparent !important;
  padding: 0 !important;
  position: relative !important;
  margin-top: -50px !important; /* Pulls the curve up over the blog cards */
  z-index: 100 !important;
}

.footer-swoosh {
  width: 100% !important;
  line-height: 0 !important;
  position: relative !important;
  z-index: 1 !important;
}

.footer-swoosh img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* This is where the white background actually starts (below the curve) */
.footer-main-container {
  background-color: var(--ds-white) !important;
  max-width: 100% !important; /* Ensures the white stretches edge-to-edge */
  margin: 0 !important;
  padding: 60px 0 40px !important;
  position: relative !important;
  z-index: 10 !important;
}

/* --- 2. Newsletter Overlap Card --- */
.footer-newsletter-card {
  max-width: 1100px !important;
  /* Adjusted margin to sit perfectly on top of the curved swoosh */
  margin: -140px auto 0 !important;
  background: var(--ds-2) !important;
  border-radius: 24px !important;
  padding: 40px 60px !important;
  box-shadow: 0 25px 60px rgba(1, 93, 171, 0.12) !important;
  position: relative !important;
  z-index: 100 !important; /* This forces it to the absolute front */
}

/**************************************************************************************************/
/*!		NEWSLETTER	*/
/**************************************************************************************************/

/* 1. The Parent Container */
.newsletter-inner {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 40px !important;
    width: 100% !important;
}

/* 2. The Left Side (The Text) - Force to 50% */
.newsletter-intro {
    flex: 1 1 50% !important; /* Takes exactly half the space */
    width: 50% !important;
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
}

/* 3. The Right Side (The Form) - Force to 50% */
.newsletter-form-wrapper {
    flex: 1 1 50% !important; /* Takes exactly half the space */
    width: 50% !important;
    max-width: none !important; /* Remove the 500px/650px limit */
}

/* 4. The White Pill (Inside the Form side) */
.newsletter-form-wrapper .gform_wrapper.gravity-theme .gform_fields {
    max-width: 100% !important; /* Fills the right 50% of the card */
    width: 100% !important;
    display: flex !important;
    flex-direction: row !important;
}

/* 5. Ensure the Input box stretches inside that pill */
.newsletter-form-wrapper .gfield.gfield--type-email {
    flex-grow: 1 !important;
}

.newsletter-form-wrapper input[type=email] {
    width: 100% !important;
}

.newsletter-intro {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
}

.newsletter-icon img {
  width: 60px !important;
  height: auto !important;
}

.newsletter-title h3 {
  font-size: 25px !important;
  font-weight: 800 !important;
  margin: 0 !important;
  color: var(--ds-navy) !important;
}

.newsletter-title h3 span {
  color: var(--ds-blue) !important;
}

.newsletter-title p {
  font-size: 14px !important;
  color: var(--ds-gray) !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}

.newsletter-form {
  display: flex !important;
  background: #f8fafc !important;
  border-radius: 50px !important;
  padding: 6px 6px 6px 25px !important;
  width: 100% !important;
  max-width: 500px !important;
  border: 1px solid #e2e8f0 !important;
}

.input-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex-grow: 1 !important;
}

/* .input-wrapper i {
  color: var(--ds-gray) !important;
}

.newsletter-form input {
  border: none !important;
  background: transparent !important;
  font-size: 15px !important;
  outline: none !important;
}

.newsletter-form input[type=email] {
  box-shadow: none;
}

.newsletter-form button {
  background: var(--ds-blue) !important;
  color: var(--ds-white) !important;
  border: none !important;
  padding: 14px 30px !important;
  border-radius: 50px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: 0.3s !important;
}

.newsletter-form button:hover {
  background: var(--ds-green) !important;
} */


/**************************************************************************************************/
/*!		GRAVITY FORMS NEWSLETTER STYLING	*/
/**************************************************************************************************/

/* 1. The White Pill Container - Cleaned & Widened */
.newsletter-form-wrapper .gform_wrapper.gravity-theme .gform_fields {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important; /* Pushes input left, button right */
    background: #f8fafc !important;
    border-radius: 50px !important;
    padding: 6px 6px 6px 25px !important;
    width: 100% !important;
    max-width: 600px !important; /* Set this to your preferred width */
    border: 1px solid #e2e8f0 !important;
    align-items: center !important;
    grid-template-columns: none !important; /* Kill the grid conflict */
}

/* Remove default list styling and margins */
.newsletter-form-wrapper .gform_wrapper ul.gform_fields, 
.newsletter-form-wrapper .gform_wrapper .gform_fields {
    margin: 0 !important;
    list-style: none !important;
}

/* 2. The Email Field - Force it to stretch and eat the empty space */
.newsletter-form-wrapper .gfield.gfield--type-email {
    flex-grow: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    max-width: none !important;
}

/* 3. The Actual Text Input */
.newsletter-form-wrapper input[type=email] {
    width: 100% !important;
    border: none !important;
    background: transparent !important;
    font-size: 15px !important;
    outline: none !important;
    box-shadow: none !important;
    padding: 10px 0 !important;
    color: var(--ds-navy) !important;
}

/* 4. The Button Wrapper - Prevents the button from being pushed/stretched */
.newsletter-form-wrapper .gfield.gfield--type-submit {
    flex-shrink: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 5. THE GHOST KILLER - Completely nuke the hidden anti-spam field space */
.newsletter-form-wrapper .gform_validation_container,
.newsletter-form-wrapper .gfield_visibility_hidden {
    display: none !important;
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}

/* 1. The Main Button State */
.newsletter-form-wrapper .gform_wrapper.gravity-theme .gform_fields .gfield.gfield--type-submit input[type="submit"],
.newsletter-form-wrapper .gform_wrapper.gravity-theme .gform_fields .gfield.gfield--type-submit button[type="submit"] {
    background-color: var(--ds-blue) !important;
    color: var(--ds-white) !important;
    border: none !important;
    border-radius: 50px !important;
    padding: 14px 35px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    letter-spacing: 1.2px !important;
    cursor: pointer !important;
    transition: background-color 0.3s ease !important;
    height: auto !important;
    line-height: 1 !important;
    margin: 0 !important;
}

/* 2. The Hover State - Flip to Green */
.newsletter-form-wrapper .gform_wrapper.gravity-theme .gform_fields .gfield.gfield--type-submit input[type="submit"]:hover,
.newsletter-form-wrapper .gform_wrapper.gravity-theme .gform_fields .gfield.gfield--type-submit button[type="submit"]:hover {
    background-color: var(--ds-green) !important;
}

/* 5. Handling the Envelope Icon */
/* Since Gravity Forms doesn't natively include the <i> tag, 
   we can add the envelope icon using a pseudo-element on the field li */
/* .newsletter-form-wrapper .gfield {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    flex-grow: 1 !important;
    margin: 0 !important;
}

.newsletter-form-wrapper .gfield::before {
    content: "\f0e0";
    font-family: "Font Awesome 5 Free", "Font Awesome 6 Free" !important;
    font-weight: 400 !important;
    color: var(--ds-gray) !important;
} */

/* Hide labels and descriptions for that clean look */
.newsletter-form-wrapper .gfield_label,
.newsletter-form-wrapper .gfield_description,
.newsletter-form-wrapper .gform_validation_container {
    display: none !important;
}

 .newsletter-form-wrapper .gform_footer {
      display: none !important;
     }

/* Mobile Adjustment */
@media (max-width: 768px) {
    .newsletter-form-wrapper .gform_wrapper.gravity-theme .gform_fields {
        flex-direction: column !important;
        background: transparent !important;
        border: none !important;
        padding: 0 !important;
        gap: 15px !important;
        display: flex !important;
    }
    
    /* 1. Reset all fields (Removes the accidental white pill from the submit button wrapper) */
    .newsletter-form-wrapper .gfield,
    .newsletter-form-wrapper .gform_footer {
        background: transparent !important;
        border: none !important;
        padding: 0 !important;
        border-radius: 0 !important;
    }

    /* 2. Apply the white pill specifically to the FIRST field (the email input) */
    .newsletter-form-wrapper .gfield:first-child {
        background: var(--ds-white) !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 50px !important;
        padding: 15px 25px !important;
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* 3. Add the Envelope Icon back to the email field */
    .newsletter-form-wrapper .gfield:first-child::before {
        content: "\f0e0";
        font-family: "Font Awesome 5 Free", "Font Awesome 6 Free" !important;
        font-weight: 400 !important;
        color: var(--ds-gray) !important;
        margin-right: 12px !important;
        font-size: 16px !important;
        display: inline-block !important;
    }

    /* 4. Ensure the input text area fills the rest of the white pill */
    .newsletter-form-wrapper input[type=email] {
        width: 310px !important;
        flex-grow: 1 !important;
        background: white!important;
        border: none !important;
        padding: 20px 20px !important;
        border-radius: 15px;
        margin-bottom: 20px !important;
        box-shadow: none !important;
    }

    /* 5. Make the Submit button full width and match the input's height */
    .newsletter-form-wrapper input[type=submit],
    .newsletter-form-wrapper button[type=submit] {
        width: 310px !important;
        padding: 18px 30px !important; /* Thickens the button to match the email field */
    }
}

/* --- 3. 5-Column Grid --- */
.footer-grid {
  display: grid !important;
  grid-template-columns: 1.5fr 1fr 1fr 1.2fr 1.5fr !important;
  gap: 50px !important;
  max-width: 1800px !important; /* Design constraint */
  margin: 0 auto !important;
  padding: 0 40px 60px !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

.footer-col h4 {
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 1.5px !important;
  margin-bottom: 30px !important;
  color: #101828 !important;
}

.footer-col ul {
  list-style: none !important;
  padding: 0 !important;
  margin-left: 0px;
}

.footer-col ul li {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important; /* Space between chevron and text */
}

/* The Light Green Chevron */
.footer-col ul li::before {
  content: "\f054" !important; /* FontAwesome Chevron-Right */
  font-family: "Font Awesome 5 Free", "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  font-size: 14px !important;
  color: var(--ds-peppermint) !important; /* Light green from your design */
  display: inline-block !important;
  transition: all .3s ease;
}

/* icon gets a hover flourish if the link is hovered */
.footer-col ul li:has(> a:hover)::before {
  color: #6ec488 !important;
}

.footer-col ul li a {
  color: #6a7282 !important; /* Exact hex requested */
  text-decoration: none !important;
  font-size: 15px !important; /* Exact size requested */
  font-weight: 500 !important; /* Bold */
  transition: all 0.3s ease !important;
  line-height: 1 !important;
}

.footer-col ul li a:hover {
  color: var(--ds-blue) !important;
}

/* --- 4. Brand & Phone Styling --- */
.brand-col .footer-logo img {
  max-width: 250px !important;
  margin-bottom: 25px !important;
  /* margin: 0 auto 25px auto !important; */
}

@media (max-width: 768px)  {
  .brand-col .footer-logo img {
     margin: 0 auto 25px auto !important;
  }
}

.footer-serving-text {
  font-size: 14px !important;
  color: #475569 !important;
  line-height: 1.6 !important;
}

.footer-social-icons {
  display: flex !important;
  gap: 12px !important;
  margin-top: 30px !important;
}

.social-circle {
  width: 44px !important;
  height: 44px !important;
  background: var(--ds-green-op70) !important;
  color: var(--ds-green) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: 0.3s !important;
}

.social-circle:hover {
  background: var(--ds-green) !important;
  color: var(--ds-white) !important;
  transform: translateY(-3px) !important;
}

.phone-block {
  margin-bottom: 18px !important;
}

.phone-block strong {
  display: block !important;
  font-size: 14px !important;
  color: #101828 !important;
  margin-bottom: 2px !important;
}

.phone-block a {
  position: relative;
  top: -2px;
  display: inline-block;
  color: #6a7282 !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  transition: all 0.3s ease;
  }

/* The Light Green Phone Icon */
.phone-block a::before {
  position: relative;
  top: 2px;
  content: "\f095" !important; /* FontAwesome Phone Icon */
  font-family: "Font Awesome 5 Free", "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  color: var(--ds-peppermint) !important; /* Light green from your design */
  display: inline-block !important;
  padding-right: 8px;
  transition: all 0.3s ease;
}

.phone-block a:hover::before {
  color: #6ec488 !important;
}

.phone-block a:hover {
  color: var(--ds-blue) !important;
}

/* --- 5. Bottom Bar --- */
.footer-bottom-bar {
  display: flex !important;
  justify-content: space-between !important;
  padding-top: 35px !important;
  font-size: 13px !important;
  color: var(--ds-gray) !important;
  margin-left: 145px;
  margin-right: 40px;
  padding-left: 40px;
  padding-right: 40px;
}

.footer-legal-links a {
  margin-left: 20px !important;
  color: var(--ds-gray) !important;
  text-decoration: none !important;
}

/* --- 6. Mobile Responsiveness --- */
@media (max-width: 1200px) {
  .footer-grid {
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 40px !important;
  }
}

@media (max-width: 768px) {
  .footer-swoosh {
    top: 20px !important;
  }
  .footer-grid {
  grid-template-columns: 1fr !important;
  text-align: center !important;
  }
  .footer-social-icons {
  justify-content: center !important;
  }
  .newsletter-inner {
  flex-direction: column !important;
  text-align: center !important;
  }
  .footer-newsletter-card {
  padding: 30px !important;
  margin-top: -140px !important;
  margin: 25px !important; 
  }
}
/* --- Global Background Reset --- */

body.donate-stuff
  .wp-block-uagb-advanced-heading.uagb-block-74c2fffd.wp-block-uagb-advanced-heading {
  margin-right: 0px;
}

/* Forces the entire site container and content area to be white */
body,
#page,
#content,
.site-content,
#primary {
  background-color: var(--ds-white) !important;
}

/* Removes any specific grey background from the refresh template */
.page-template-template-website-refresh #content {
  background-color: var(--ds-white) !important;
}

.entry-taxonomy {
  display: none !important;
}

#masthead {
  border: none;
  padding: 55px 0;
}

/* --- Layout Grid --- */
.header-grid-container {
  display: grid !important;
  grid-template-columns: auto 1fr;
  align-items: center !important;
  align-content: center !important;
  gap: 40px;
}

.site-branding {
  display: flex !important;
  align-items: center !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
}

.site-branding a {
  display: flex;
  align-items: center;
}

.site-branding img {
  margin: 0 !important;
  display: block;
}

/* ==========================================================================
   DESKTOP DROPDOWN STYLING
   ========================================================================== */
@media (min-width: 1025px) {
  /* 1. Set the parent as the anchor */
  .baylis-menu-grid-container ul li {
    position: relative;
  }

  /* 2. Add a tiny chevron to parent items (Using WP default class) */
  .baylis-menu-grid-container ul li.menu-item-has-children > a::after {
    content: "\f078";
    font-family: "Font Awesome 5 Free", "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 10px;
    margin-left: 8px;
    color: var(--ds-green);
    transition: transform 0.3s ease;
    display: inline-block;
  }

  /* Flip chevron on hover */
  .baylis-menu-grid-container ul li.menu-item-has-children:hover > a::after {
    transform: rotate(180deg);
  }

  /* 3. The Dropdown Card */
  .baylis-menu-grid-container ul li ul.sub-menu {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(15px); 
    min-width: 240px;
    background: var(--ds-white);
    border-radius: 16px;
    padding: 15px 0;
    margin: 0;
    box-shadow: 0 20px 40px rgba(1, 93, 171, 0.12);
    border: 1px solid #f1f5f9;
    
    /* Animation defaults */
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    
    /* Override top-level flex settings */
    display: flex;
    flex-direction: column;
    gap: 0;
    z-index: 9999;
  }

  /* Invisible hover bridge (prevents dropdown from disappearing when moving mouse down) */
  .baylis-menu-grid-container ul li ul.sub-menu::before {
    content: "";
    position: absolute;
    top: -15px;
    left: 0;
    width: 100%;
    height: 15px;
  }

  /* 4. Trigger the Dropdown */
  .baylis-menu-grid-container ul li:hover > ul.sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0); 
  }

  /* 5. Dropdown Link Styling */
  .baylis-menu-grid-container ul li ul.sub-menu li {
    width: 100%;
    display: block;
  }

  .baylis-menu-grid-container ul li ul.sub-menu li a {
    display: block;
    padding: 12px 25px;
    font-size: 14px;
    text-transform: none; 
    font-weight: 600;
    letter-spacing: 0.5px;
    color: #475569; 
    text-align: left;
    min-width: auto;
    height: auto;
    border-radius: 0; 
  }

  /* Dropdown Link Hover */
  .baylis-menu-grid-container ul li ul.sub-menu li a:hover {
    color: var(--ds-blue);
    background-color: #f8fafc; 
    padding-left: 32px; 
  }
}

/* ==========================================================================
   MOBILE NAVIGATION DROPDOWN STYLING
   ========================================================================== */
@media (max-width: 1024px) {
  /* 1. Add a chevron to mobile parent items */
  .baylis-menu-grid-container ul li.menu-item-has-children > a::after {
    content: "\f078";
    font-family: "Font Awesome 5 Free", "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 12px;
    float: right;
    color: #cbd5e0;
    margin-top: 2px;
    transition: transform 0.3s ease; /* Added for smooth animation */
  }

  /* 2. Container for nested items - CLOSED BY DEFAULT */
  .baylis-menu-grid-container ul li ul.sub-menu {
    display: none; /* Changed from flex to none so it starts closed */
    flex-direction: column;
    /* background: #f8fafc;  */
    border-radius: 12px;
    margin: 5px 0 15px 0;
    padding: 10px 0;
    width: 100%;
    /* border-left: 3px solid var(--ds-green); */
  }

  /* 3. Nested items styling */
  .baylis-menu-grid-container ul li ul.sub-menu li {
    border-bottom: none;
  }

  .baylis-menu-grid-container ul li ul.sub-menu li a {
    padding: 12px 20px 12px 20px; 
    font-size: 14px;
    text-transform: none;
    font-weight: 600;
    color: #4a5568;
    height: auto;
    margin: 0;
    justify-content: left !important;
  }

  .baylis-menu-grid-container ul li ul.sub-menu li a:hover,
  .baylis-menu-grid-container ul li ul.sub-menu li a:active {
    color: var(--ds-blue);
    background-color: rgba(1, 93, 171, 0.05);
  }

  /* 4. ACTIVE STATE: Applied via JavaScript to open the menu */
  .baylis-menu-grid-container ul li.is-dropdown-open ul.sub-menu {
    display: flex; 
  }

  /* Flip the chevron upside down when the menu is open */
  .baylis-menu-grid-container ul li.menu-item-has-children.is-dropdown-open > a::after {
    transform: rotate(180deg);
  }
}

/* ==========================================================================
   MOBILE UI/UX FIXES 
   ========================================================================== */

/* 1. Remove the default blue tap-highlight box on mobile devices */
.baylis-menu-grid-container ul li a,
.baylis-menu-grid-container ul li.menu-item-has-children > a,
.menu-toggle,
.menu-close {
    /* Makes the default mobile tap flash completely invisible */
    -webkit-tap-highlight-color: transparent !important; 
    
    /* Removes the rigid default browser focus outline */
    outline: none !important; 
}

/* 2. Add a very subtle background color change on active tap for better UX */
.baylis-menu-grid-container ul li a:active {
    background-color: rgba(1, 93, 171, 0.05) !important;
}


/* --- Navigation Container --- */
.baylis-menu-grid-container {
  display: flex !important;
  justify-content: flex-end;
  align-items: center !important;
}

.baylis-menu-grid-container ul {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 25px;
  list-style: none;
  margin: 0;
  padding: 0;
  white-space: nowrap;
}

.baylis-menu-grid-container ul li a {
  text-decoration: none;
  color: #111827;
  font-weight: 700;
  letter-spacing: 1.3px;
  font-size: 14px;
  text-transform: uppercase;
  transition: all 0.3s ease;
}

/* Restored Hover for Links */
.baylis-menu-grid-container ul li a:hover {
  color: var(--ds-blue);
}

/* --- Button Styles --- */
.baylis-menu-grid-container ul li:nth-last-child(2) a,
.baylis-menu-grid-container ul li:last-child a {
  text-align: center;
  line-height: 1;
  letter-spacing: 1.2px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50px;
  transition: all 0.3s ease;
  box-sizing: border-box;
  min-width: 210px;
  height: 58px;
}

/**************************************************************************************************/
/*!		MENU BUTTONS, GENERALLY	*/
/**************************************************************************************************/
.ds-menu-btn > a {
  padding: 0 20px;
  gap: 12px;
  border: 2px solid var(--ds-blue);
}

/**************************************************************************************************/
/*!		"MY PICKUPS" MENU BUTTON	*/
/**************************************************************************************************/

/* truck Icon tucked in before the text */
.ds-menu-btn.ds-menu-btn-my-pickups > a::before {
  content: "\f0d1";
  font-family: "Font Awesome 5 Free", "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 18px;
  -webkit-font-smoothing: antialiased;
}

.ds-menu-btn.ds-menu-btn-my-pickups > a {
  color: var(--ds-blue);
  background-color: transparent;
  margin-left: 40px;
}

/* Restored Hover for "MY PICKUPS" */
.ds-menu-btn.ds-menu-btn-my-pickups > a:hover {
  color: var(--ds-white) !important;
  background-color: var(--ds-blue);
}

/**************************************************************************************************/
/*!		"SCHEDULE PICKUP" MENU BUTTON	*/
/**************************************************************************************************/

/* "SCHEDULE PICKUP" - Solid Blue */
.ds-menu-btn.ds-menu-btn-schedule-pickup > a {
  color: var(--ds-white) !important;
  background-color: var(--ds-blue);
}

/* Restored Hover for "SCHEDULE PICKUP" */
.ds-menu-btn.ds-menu-btn-schedule-pickup > a:hover {
  border-color: var(--ds-green);
  background-color: var(--ds-green);
}

/* --- MOBILE RESPONSIVE VERSION (SCOPED TO NEW TEMPLATE ONLY) --- */

/* Hide custom menu elements on desktop, ONLY on the new template */
.page-template-template-website-refresh .menu-toggle,
.page-template-template-website-refresh .menu-close,
.page-template-template-website-refresh .mobile-drawer-logo,
.page-template-template-website-refresh .menu-overlay {
  display: none;
}

@media (max-width: 1375px) {
  .page-template-template-website-refresh #masthead {
    padding: 20px 0;
  }

  .page-template-template-website-refresh .header-grid-container {
    display: flex !important;
    justify-content: space-between;
    width: 100%;
    gap: 0;
  }

  /* Logo Sizing */
  .page-template-template-website-refresh .site-branding img,
  .page-template-template-website-refresh .mobile-drawer-logo img {
    width: 133px !important;
    height: 36px !important;
    object-fit: contain;
  }

  /* Safely style the new toggle without squishing the old one */
  .page-template-template-website-refresh .menu-toggle,
  .page-template-template-website-refresh .menu-close {
    outline: none !important;
    -webkit-tap-highlight-color: transparent !important;
    box-shadow: none !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
  }

  /* The 3 hamburger bars */
  .page-template-template-website-refresh .menu-toggle span {
    width: 28px;
    height: 3px;
    background: #111827 !important;
    border-radius: 2px;
    display: block !important;
    margin: 0 auto;
    position: relative !important;
  }

  /* Mobile Drawer Container */
  .page-template-template-website-refresh .baylis-menu-grid-container {
    position: fixed;
    top: 0;
    right: -100%;
    width: 85%;
    max-width: 400px;
    height: 100vh;
    background: var(--ds-white);
    z-index: 9999;
    flex-direction: column !important;
    justify-content: flex-start !important;
    padding: 40px 25px !important;
    transition: 0.4s cubic-bezier(0.77, 0.2, 0.05, 1);
    box-shadow: -5px 0 15px var(--ds-black-op10);
  }

  /* Open States */
  .page-template-template-website-refresh.menu-open .baylis-menu-grid-container {
    right: 0;
  }

  .page-template-template-website-refresh .menu-overlay {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 9998;
    opacity: 1;
    visibility: hidden;
    transition: 0.3s;
  }

  .menu-open .page-template-template-website-refresh .menu-overlay {
    opacity: 1;
    visibility: visible;
  }

  .page-template-template-website-refresh .mobile-drawer-logo {
    display: block;
    width: 100%;
    margin-bottom: 20px;
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 20px;
  }

  .page-template-template-website-refresh .menu-close {
    position: absolute;
    top: 35px;
    right: 20px;
    font-size: 45px;
    color: #111827 !important;
    line-height: 1;
    cursor: pointer;
  }

  .page-template-template-website-refresh .baylis-menu-grid-container ul {
    flex-direction: column;
    width: 100%;
    gap: 0;
  }

  .page-template-template-website-refresh .baylis-menu-grid-container ul li {
    width: 100%;
    border-bottom: 1px solid #f0f0f0;
  }

  .page-template-template-website-refresh .baylis-menu-grid-container ul li a {
    display: block;
    padding: 15px 0;
    font-size: 15px;
    letter-spacing: 1px;
    text-align: left;
  }

  /* .page-template-template-website-refresh .baylis-menu-grid-container ul li:nth-last-child(2) a,
  .page-template-template-website-refresh .baylis-menu-grid-container ul li:last-child a {
    width: 100%;
    min-width: 100%;
    margin-left: 0;
    height: 52px;
    margin-top: 15px;
  } */

/* --- CENTER MOBILE MENU BUTTONS --- */
  /* Added '>' to ensure we ONLY target the top-level main menu items, not sub-menus */
  .page-template-template-website-refresh .baylis-menu-grid-container > ul > li:nth-last-child(2) > a,
  .page-template-template-website-refresh .baylis-menu-grid-container > ul > li:last-child > a {
    display: flex !important; 
    justify-content: center !important; 
    align-items: center !important; 
    text-align: center !important;
    padding: 0 !important;
    gap: 12px !important; 
  }

  /* Remove the desktop left-margin on My Pickups so it is perfectly dead-center on mobile */
  .page-template-template-website-refresh .ds-menu-btn.ds-menu-btn-my-pickups > a,
  .page-template-template-website-refresh .ds-menu-btn-schedule-pickup > a  {
    margin-left: 0 !important;
    margin-top: 15px !important;
    margin-bottom: 15px !important;
  }
}

/* --- Hero & Transparent Header Logic --- */

/* 1. Base Header Reset */
.page-template-template-website-refresh #masthead {
  position: absolute !important;
  top: 0;
  left: 0;
  right: 0;
  width: 100% !important;
  max-width: none !important;
  z-index: 10000 !important;
  background: var(--ds-white);
  border: none !important;
  padding: 23px 0 !important;
  transition:
  padding 0.3s ease,
  background-color 0.3s ease !important;
}

/* 2. Inner Grid Alignment - Desktop Stays Centered */
.page-template-template-website-refresh .header-grid-container {
  display: grid !important;
  grid-template-columns: auto 1fr;
  align-items: center !important;
  width: 100% !important;
  max-width: 1800px !important; /* Keep desktop contained */
  margin: 0 auto !important;
  padding: 0 40px !important;
}

/* --- MOBILE ONLY OVERRIDE --- */
@media (max-width: 1375px) {
  /* Force the container to fill the screen on mobile to kill the gap */
  .page-template-template-website-refresh .header-grid-container {
  max-width: 100% !important;
  display: flex !important; /* Switch to flex for easier edge alignment */
  justify-content: space-between !important;
  padding: 0 20px !important; /* Slimmer side gutters for mobile */
  }

  /* Ensure the header itself has no margins causing shifts */
  .page-template-template-website-refresh #masthead.is-sticky {
  left: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  }
}

/* 3. Sticky State - Mobile & Desktop Fix */
.page-template-template-website-refresh #masthead.is-sticky {
  position: fixed !important;
  background-color: var(--ds-white) !important;
  box-shadow: 0 4px 15px var(--ds-black-op08) !important;
  padding: 15px 0 !important;
  z-index: 10001 !important;
}

/* 4. Fix Hamburger Bars & Kill Blue Streaks - MOBILE ONLY */
@media (max-width: 1375px) {
  /* Targets BOTH states: standard and sticky so bars always stack */
  .page-template-template-website-refresh #masthead .menu-toggle,
  .page-template-template-website-refresh #masthead.is-sticky .menu-toggle {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 4px !important;
  }

  /* Styles the 3 spans for a clean black hamburger on both states */
  .page-template-template-website-refresh #masthead .menu-toggle span,
  .page-template-template-website-refresh
  #masthead.is-sticky
  .menu-toggle
  span {
  background-color: #111827 !important;
  display: block !important;
  width: 28px !important;
  height: 3px !important;
  border-radius: 2px !important;
  margin: 0 !important;
  position: relative !important;
  left: auto !important;
  }

  /* Kills the extra horizontal "junk" lines */
  .page-template-template-website-refresh #masthead .menu-toggle::before,
  .page-template-template-website-refresh #masthead .menu-toggle::after,
  .page-template-template-website-refresh #masthead .menu-toggle span::before,
  .page-template-template-website-refresh #masthead .menu-toggle span::after,
  .page-template-template-website-refresh
  #masthead.is-sticky
  .menu-toggle::before,
  .page-template-template-website-refresh
  #masthead.is-sticky
  .menu-toggle::after,
  .page-template-template-website-refresh
  #masthead.is-sticky
  .menu-toggle
  span::before,
  .page-template-template-website-refresh
  #masthead.is-sticky
  .menu-toggle
  span::after {
  display: none !important;
  content: none !important;
  }
}

/* 5. Mobile & Desktop Sticky Padding Adjustments */
@media (max-width: 1375px) {
  /* Force the container to fill the screen on mobile to kill the gap */
  .page-template-template-website-refresh .header-grid-container {
  max-width: 100% !important;
  display: flex !important;
  justify-content: space-between !important;
  padding: 0 20px !important;
  }

  .page-template-template-website-refresh #masthead {
  padding: 20px 0 !important;
  left: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  }

  .page-template-template-website-refresh #masthead.is-sticky {
  padding: 10px 0 !important;
  }
}

/* 6. Reset Desktop Nav Visibility on Scroll */
@media (min-width: 1376px) {
  .page-template-template-website-refresh .baylis-menu-grid-container {
  display: flex !important;
  position: relative !important;
  right: 0 !important;
  width: auto !important;
  height: auto !important;
  background: transparent !important;
  box-shadow: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  }
}

/* --- Hero Section & Full Width Pattern --- */
.hero-color {
  color: var(--ds-green);
}

.hero-pattern-group {
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  padding-top: 180px !important;
  padding-bottom: 80px !important;
  /* background-repeat: repeat !important;
  background-size: auto !important; */
  background-repeat: no-repeat !important; /* Stop the double pattern */
  background-size: cover !important; /* Stretch to fill the tall mobile space */
  background-position: center bottom !important; /* Keep the wave at the bottom */
}

.hero-pattern-group > .wp-block-group__inner-container,
.hero-pattern-group > div:first-child {
  max-width: 1550px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
}

/* ==========================================================================
   HERO SECTION TABLET/MOBILE FIX
   Hides the image and makes text full-width below 1313px
   ========================================================================== */
@media (max-width: 1313px) {
    /* 1. Stop WordPress from trying to force a flex grid */
    .hero-responsive-fix {
        display: block !important;
    }

    /* 2. Force the Left Column (Text & Zip) to take up the full screen width */
    .hero-responsive-fix > .wp-block-column:nth-child(1) {
        width: 100% !important;
        flex-basis: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
    }

    /* 3. Completely hide the Right Column (Image) */
    .hero-responsive-fix > .wp-block-column:nth-child(2) {
        display: none !important;
    }
}

/* ==========================================================================
   HOW IT WORKS SECTION TABLET FIX
   Forces the columns to stack before the text gets crushed into a single line
   ========================================================================== */
@media (max-width: 1024px) {
    
    /* 1. Break the native WordPress side-by-side grid */
    .how-it-works-fix {
        display: block !important;
    }

    /* 2. Force both columns to take up the full screen width */
    .how-it-works-fix > .wp-block-column {
        width: 100% !important;
        flex-basis: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-bottom: 50px !important; /* Adds breathing room between the image and text once stacked */
    }

    /* 3. Center the image nicely when it stacks on top */
    .how-it-works-fix > .wp-block-column:nth-child(1) {
        display: none !important;
    }
    
    .how-it-works-fix > .wp-block-column:nth-child(1) img {
        margin: 0 auto !important;
        display: inline-block !important;
    }
}

/* --- Hero Mobile Responsiveness --- */
@media (max-width: 768px) {
  .hero-pattern-group > .wp-block-group__inner-container,
  .hero-pattern-group > div:first-child {
  /* Reduce padding so text has more room on small screens */
  padding: 0 20px !important;

  /* Ensure the container stacks or scales correctly */
  max-width: 100% !important;
  }
  .hero-pattern-group {
  padding-top: 130px !important;
  padding-left: 0px !important;
  padding-right: 0px !important;
  }
  .hero-description {
  margin-right: 0px !important;
  font-size: 20px !important;
  }
  #ds-fe__zipcode {
  box-shadow: none !important;
  }
}

@media (max-width: 480px) {
  .hero-pattern-group > .wp-block-group__inner-container,
  .hero-pattern-group > div:first-child {
  padding: 0 15px !important;
  }
}

.page-template-template-website-refresh #primary {
  float: none !important;
  margin: 0 auto !important;
  width: 100% !important;
  max-width: 1550px !important;
}

/* --- Zip Code Design: Specific to .donate-stuff pages --- */

body.donate-stuff #ds-fe__order-form #ds-fe__lead-wrapper {
  justify-content: left;
}

body.donate-stuff .ds-fe__zipcode-container {
  display: flex !important;
  background: var(--ds-white) !important;
  border-radius: 15px !important;
  border: 1px solid #f3f4f6 !important;
  padding: 14px 25px !important;
  box-shadow: 0 32px 64px -16px var(--ds-black-op10) !important;
  max-width: 654px !important;
  width: 100% !important;
  height: 92px !important;
  align-items: center !important;
  position: relative;
}

/* Icon - only on .donate-stuff pages */
body.donate-stuff .ds-fe__zipcode-container:before {
  content: "\f3c5";
  font-family: "Font Awesome 5 Free", "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 24px;
  color: #d1d5dc;
  margin-right: 15px;
}

body.donate-stuff #ds-fe__zipcode {
  flex-grow: 1 !important;
  border: none !important;
  font-size: 24px !important;
  background: transparent !important;
  outline: none !important;
  box-shadow: none;
}

body.donate-stuff #ds-fe__zip-btn {
  background-color: var(--ds-green) !important;
  color: var(--ds-white) !important;
  border-radius: 50px !important;
  padding: 0 30px !important;
  height: 64px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  border: none !important;
  margin-left: 15px !important;
  transition: background-color 0.3s ease;
  /* --- NEW FIXES TO PREVENT SQUISHING --- */
  flex-shrink: 0 !important;      /* Forces the button to keep its full width */
  white-space: nowrap !important; /* Prevents text from stacking vertically */
}

body.donate-stuff #ds-fe__zip-btn:hover {
  background-color: var(--ds-blue) !important;
}

/* Mobile Zip Stack - only on .donate-stuff pages */
@media (max-width: 600px) {
  body.donate-stuff .ds-fe__zipcode-container {
  flex-direction: column !important;
  height: auto !important;
  padding: 20px !important;
  }
  body.donate-stuff #ds-fe__zip-btn {
  width: 100% !important;
  margin-left: 0 !important;
  margin-top: 10px;
  }
  body.donate-stuff .ds-fe__zipcode-container:before {
  display: none !important;
  }
}

/* --- Impact Cards Section --- */
.impact-card {
  /* Layout & Centering */
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;

/* FLUID DESIGN DIMENSIONS (Fixes the overlap!) */
  width: 100% !important;        /* Fill the column */
  max-width: 400px !important;   /* Never get too big */
  height: 330px !important;

  /* Spacing & Style */
  margin: 0 auto !important;
  padding: 30px !important;
  background: var(--ds-white) !important;
  box-sizing: border-box !important;
  border-radius: 20px !important; /* Added to match design */
}

/* Fix Icon Centering - The "Auto" margin fix */
.impact-card .wp-block-image,
.impact-card figure,
.impact-card img {
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 20px !important;
  display: block !important;
}

/* --- Specific Card Glows --- */

/**************************************************************************************************/
/*!		SPECIFIC CARD GLOWS	*/
/**************************************************************************************************/

/* 1. Raised for Charities - Blue (var(--ds-blue)) */
.card-blue {
  border: 2px solid var(--ds-blue) !important;
  box-shadow: 0 32px 80px -16px rgba(1, 93, 171, 0.3) !important;
}

/* 2. Lives Improved - Green  */
.card-green {
  border: 2px solid var(--ds-green) !important;
  /* box-shadow: 0 32px 80px -16px rgba(2, 169, 80, 0.3) !important; */
  box-shadow: 0 32px 80px -16px var(--ds-green-op30) !important;
}

/* 3. Donations Picked Up - Light Blue */
.card-cyan {
  border: 2px solid var(--ds-blue-light) !important;
  box-shadow: 0 32px 80px -16px rgba(144, 213, 249, 0.3) !important;
}

/* Mobile Responsiveness */
@media (max-width: 1200px) {
  .impact-card {
  width: 100% !important;
  max-width: 400px !important;
  height: auto !important;
  min-height: 330px !important;
  margin-bottom: 30px !important;
  }
}

/* --- How It Works Section --- */

.how-it-works-section {
  background-color: var(--ds-4) !important;

  /* The Breakout Trick: Forces the block to span the full viewport width */
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;

  /* Internal Spacing */
  padding-top: 100px !important;
  padding-bottom: 100px !important;
  box-sizing: border-box !important;
}

/* Ensure the content inside stays centered and aligned with the header */
.how-it-works-section .wp-block-columns {
  max-width: 1630px !important; /* Matches your design grid */
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Slimmer padding for mobile screens */
@media (max-width: 768px) {
  .how-it-works-section {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  }
  .tax-description {
  margin-left: 0px !important;
  margin-right: 0px !important;
  }
  .how-steps {
    text-align: center;
    padding-bottom: 40px !important;
  }
  .how-steps-text {
    text-align: center;
  }
  .how-steps-img {
    display: block;
    margin: auto;
    width: 60%;
  }
}

/* ==========================================================================
   TAX RECEIPT BOX FIX
   Forces the container to stack items vertically instead of crushing them
   ========================================================================== */
.tax-receipt-fix {
    display: flex !important;
    flex-direction: column !important; 
    align-items: center !important;   
    text-align: center !important;    
    gap: 15px !important;             
}

.tax-receipt-fix .wp-block-button__link,
.tax-receipt-fix a {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

/* --- Our Impact Section -- */
.impact-cta1 {
  color: var(--ds-blue-light);
}

.impact-cta2 {
  color: var(--ds-green);
}

.impact-cta-bg-2 {
  box-shadow: 0 20px 25px -5px var(--ds-black-op10) !important;
}

.impact-cta-bg-1 {
  box-shadow: 0 20px 25px -5px var(--ds-black-op10) !important;
}

.impact-divider {
  height: 0.25px !important;
}

.impact-cta-3 {
  padding: 80px !important;
}



@media (max-width: 1068px) {
  .impact-cta-mobile {
    padding: 20px !important;
  }
}

@media (max-width: 768px) {
  .impact-cta-3 {
    padding: 20px !important;
  }
  .impact-cta-mobile {
    flex-wrap: inherit !important;
    padding: 30px !important;
  }
  .impact-divider {
    margin-top: 25px !important;
    margin-bottom: 25px !important;
  }
}

/* --- What can I donate Section --- */
.what-donate {
  color: var(--ds-blue);
}

.what-donate-card {
  box-shadow: 0 20px 25px -5px var(--ds-black-op10) !important;
  padding: 20px !important;
}

/* =========================================
   SVG Icon Fix for "What can I donate" Section
   ========================================= */

.what-donate-svg {
    display: block !important;
    text-align: center !important;
    margin: 0 auto 15px auto !important;
    width: 100% !important; 
}

/* 2. Force the actual SVG image to render using STRICT pixel values */
.what-donate-svg img {
    width: 65px !important;      
    height: 65px !important;     
    min-width: 65px !important;   
    min-height: 65px !important;  
    display: inline-block !important;
    object-fit: contain !important; 
}

/* ==========================================================================
   "WHAT CAN I DONATE" GRID FIX
   Prevents the 7 columns from squishing into text towers on tablets
   ========================================================================== */
@media (max-width: 1250px) {
    
    /* 1. Break the rigid single-row layout and allow wrapping */
    .what-donate-wrap-fix {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 20px !important; /* Adds clean spacing between the wrapping rows */
    }

    /* 2. Give each card a comfortable minimum size so it never squishes */
    .what-donate-wrap-fix > .wp-block-column {
        flex: 1 1 140px !important;  /* Allows the card to naturally grow/shrink around 140px */
        max-width: 160px !important; /* Stops cards on the bottom row from stretching too wide */
        margin-left: 0 !important;   /* Kills WordPress's native spacing */
        margin-bottom: 10px !important;
    }
}

@media (max-width: 768px) {
    .donate-card-title p{
        font-size: 13px !important;       /* Shrinks the font just enough to fit the container */
        letter-spacing: -0.2px !important; /* Pulls the letters slightly closer together */
        padding-left: 5px !important;      /* Reclaims some internal padding for extra room */
        padding-right: 5px !important;
        line-height: 1.4 !important;
    }
}


@media (max-width: 768px) {
 .what-donate-text {
  text-align: center !important;
 }
}


/* --- Nonprofits/Charities Section --- */
.nonprofit-steps-section {
  padding: 80px !important;
  position: relative !important;
  overflow: visible !important; /* Critical: allows the seal to overlap the edge */
  box-shadow: 0 20px 25px -5px var(--ds-black-op10);
}

@media (max-width: 768px) {
 .nonprofit-steps-section {
  padding: 60px 40px !important;
 }
}

.non-profits-heading {
  color: var(--ds-green);
  text-transform: uppercase;
  font-weight: 800;
}

.seal-container {
  margin: 0px !important;
}

.floating-seal {
  position: absolute !important;
  top: 45px !important;
  right: 45px !important; /* Distance from the right edge */
  width: 170px !important; /* Adjust size to match the design scale */
  z-index: 10 !important; /* Keeps it on top of all other blocks */
  margin: 0 !important;
}


@media (max-width: 1650px) {
    .floating-seal {
        top: 25px !important;   
        right: 20px !important;  
        width: 140px !important;
    }
}


@media (max-width: 1350px) {
    .floating-seal {
        top: 15px !important;
        right: 20px !important;
        width: 120px !important;
    }
}

@media (max-width: 768px) {
  .floating-seal {
  top: 10px !important;
  right: 15px !important;
  width: 80px !important;
  }
}

.donors-heading {
  color: var(--ds-blue);
  text-transform: uppercase;
  font-weight: 800;
}

.donors-big-section {
  padding: 80px 80px !important;
  margin-bottom: 50px;
  box-shadow: 0 20px 25px -5px var(--ds-black-op10);
}
@media (max-width: 768px) {
.donors-big-section {
  padding: 60px 40px !important;
 }
}

.donors-cards {
  padding: 50px !important;
}


/* ==========================================================================
   DONORS SECTION RESPONSIVE FIX (V2 - 1250px Breakpoint)
   Forces early stacking to prevent "Million Dollar" number wrap
   ========================================================================== */

/* 1. Force the numbers to stay on one line and scale down slightly */
.donors-num-heading {
    white-space: nowrap !important;
    font-size: 36px !important; /* Starts a bit smaller so it fits longer */
    display: block !important;
}

/* 2. Force the stack at 1250px (before the squishing starts) */
@media (max-width: 1250px) {
    .donors-columns-fix {
        display: block !important;
    }
    
    .donors-columns-fix > .wp-block-column {
        width: 100% !important;
        flex-basis: 100% !important;
        max-width: 500px !important;         /* Keeps the cards from getting too wide */
        margin: 0 auto 30px auto !important; /* Centers them and adds bottom spacing */
    }
}

/* 3. Scale numbers down more for smaller mobile devices */
@media (max-width: 480px) {
    .donors-num-heading {
        font-size: 28px !important;
    }
}

/* ---  TESTIMONIALS INTRO  --- */

@media (max-width: 768px) {
  .testimonial-intro-text {
    text-align: center !important;
  }
}

/* --- 1. The Slider Window (Stationary Frame) --- */
.review-slider-window {
  overflow: visible !important; /* * Changed from hidden to show the overlap */
  width: 100% !important;
  max-width: 950px !important;
  margin: 0 auto !important;
  position: relative !important;
  padding-top: 30px;
}

/* --- 2. The Slider Track (The moving train) --- */
.review-slider-track,
.review-slider-track > .wp-block-group__inner-container {
  display: flex !important;
  flex-wrap: nowrap !important; /* Keeps slides in a single horizontal line */
  gap: 0 !important; /* Set to 0 to match the 100% movement in JS */
  width: 100% !important;
  transition: transform 0.5s ease !important;
}

.review-slider-track {
  overflow: hidden !important;
  border-radius: 20px !important; /* Match your slide corners */
}

/* --- 3. The Individual Slide --- */
.review-slide {
  flex: 0 0 100% !important; /* Each slide takes exactly the full window width */
  min-width: 100% !important;
  background-color: var(--ds-peppermint) !important;
  border-radius: 20px !important;
  padding: 60px 80px !important;
  position: relative !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

.review-slide::before {
  content: "" !important;
  position: absolute !important;
  top: 30px !important;
  left: 30px !important;
  width: 60px !important;
  height: 60px !important;
  /* background-image: url("https://stg-donatestuff200-staging.kinsta.cloud/wp-content/uploads/2026/03/quote-img.png") !important; */
  background-image: url("https://stg-donatestuff200-staging.kinsta.cloud/wp-content/uploads/2026/03/quote-img.png") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  z-index: 5 !important;
}

.review-slide p {
  font-size: 26px !important;
  line-height: 1.4 !important;
  font-weight: 500 !important;
  font-style: italic !important;
  color: #1e2939 !important;
  margin-bottom: 20px !important;
}

.review-slide h4 {
  font-size: 30px !important;
  font-weight: 900 !important;
  color: #1e2939 !important;
  margin: 0 !important;
}

.testimonial-div {
  /* background: rgba(2, 169, 80, 0.31); */
  background: var(--ds-green-op30);
  height: 3px;
}

/* --- 4. Navigation Layout (Outside the Window) --- */
.slider-nav-container {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 20px !important;
  margin-top: -30px !important;
  position: relative !important;
  z-index: 100 !important;
}

/* Circular Arrows */
.slider-arrow {
  background: var(--ds-white) !important;
  border: none !important;
  width: 60px !important;
  height: 60px !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 15px var(--ds-black-op10) !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: transform 0.2s ease !important;
}

.slider-arrow img {
  width: 20px !important; /* Ensures arrows don't explode in size */
  height: auto !important;
}

.slider-arrow:hover {
  transform: scale(1.1) !important;
}

/* Dots Navigation */
.slider-dots {
  display: flex !important;
  gap: 8px !important;
  background: var(--ds-white) !important;
  padding: 12px 24px !important;
  border-radius: 40px !important;
  box-shadow: 0 4px 20px var(--ds-black-op08) !important;
}

.dot {
  width: 12px !important;
  height: 12px !important;
  background: #e2e8f0 !important;
  border-radius: 50% !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

.dot.active {
  background: var(--ds-green) !important;
  width: 30px !important;
  border-radius: 10px !important;
}


@media (max-width: 768px) {
 .review-slide {
    padding: 60px 30px !important;
 }
}


.lives-impacted-heart {
  position: relative !important;
  /* This creates the 'bottom' of the sandwich */
  transform-style: preserve-3d !important;
  z-index: 1 !important;

  /* Your existing styles */
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  border: 2px solid #f3f4f6;
  height: 100% !important;
  padding: 40px 20px !important;
  background-color: var(--ds-white) !important; /* Forces the card to stay white */
  border-radius: 24px !important;
}

/* This forces the Heart and Text to the absolute front */
.lives-impacted-heart > * {
  position: relative !important;
  z-index: 2 !important;
  transform: translateZ(1px); /* Extra insurance for modern browsers */
}

.lives-impacted-heart::after {
  content: "" !important;
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* background-color: rgba(2, 169, 80, 0.2) !important; */
  background-color: var(--ds-green-op30) !important;
  border-radius: 24px !important;

  /* This pushes it behind the white card */
  z-index: -1 !important;
  transform: rotate(-6deg) translateZ(-1px) !important;
}

/* Let's add the blue one back while we're at it so it looks complete */
.lives-impacted-heart::before {
  content: "" !important;
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(1, 93, 171, 0.15) !important;
  border-radius: 24px !important;
  z-index: -2 !important;
  transform: rotate(6deg) translateZ(-2px) !important;
}

/* --- 1. The Full-Width Section Wrapper --- */
.heading-blog {
  color: var(--ds-green);
}

.blog-section {
  background-color: var(--ds-4) !important;
  /* The Breakout Trick: Exactly like your 'How It Works' section */
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  padding-top: 100px !important;
  padding-bottom: 100px !important;
  box-sizing: border-box !important;
}

/* Constrain the inner grid to match your design grid */
.blog-section .wp-block-columns,
.blog-section .wp-block-query {
  max-width: 1550px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Grid layout for the cards */
.blog-section .wp-block-post-template {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 30px !important;
  /* padding: 0 60px !important; */
  margin-left: 0 !important;
}

/* --- 2. Individual Blog Card Styling --- */
.blog-card-container {
  background: var(--ds-white) !important;
  border-radius: 20px !important;
  padding: 40px !important;
  border: 2px solid var(--ds-blue) !important; /* Default Blue Border */
  box-shadow: 0 10px 30px var(--ds-black-op05) !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  transition: all 0.3s ease !important;
}

/* Alternate colors: Blue for 1 & 3, Green for 2nd card */
.wp-block-post:nth-child(even) .blog-card-container {
  border-color: var(--ds-green) !important;
}

.blog-card-container:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 20px 40px var(--ds-black-op10) !important;
}

/* --- 3. Headline & Excerpt Typography --- */
.blog-headline a {
  font-size: 24px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  color: #1a2b3c !important;
  text-decoration: none !important;
  margin-bottom: 15px !important;
  display: block !important;
}

.blog-headline a:hover {
  color: var(--ds-green) !important;
}

.blog-excerpt {
  font-size: 15px !important;
  line-height: 1.6 !important;
  color: #4a5568 !important;
  margin-bottom: 25px !important;
  /* Limits text to 4 lines for uniform height */
  display: -webkit-box !important;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* --- 4. Date & Arrow Footer --- */
.blog-card-footer {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-top: auto !important;
}

.blog-date {
  font-size: 13px !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  color: #cbd5e0 !important;
}

.blog-arrow-circle {
  width: 45px !important;
  height: 45px !important;
  background: #f7fafc !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--ds-blue) !important;
  transition: 0.3s !important;
}

.blog-card-container:hover .blog-arrow-circle {
  background: var(--ds-blue) !important;
  color: var(--ds-white) !important;
}

/* --- 5. Mobile Responsiveness --- */
@media (max-width: 1024px) {
  .blog-section .wp-block-post-template {
  grid-template-columns: 1fr !important; /* Stack cards on tablet/mobile */
  padding: 0 20px !important;
  }
}

@media (max-width: 768px) {
  .blog-section .wp-block-post-template {
  padding: 60px 0px !important;
  margin-left: 0px !important;
  }
}



/* ==========================================================================
   FOOTER MOBILE OPTIMIZATIONS (UPDATED FOR 2-COLUMN MOCKUP)
   ========================================================================== */
@media (max-width: 768px) {
    
    /* 1. The Main Footer Grid - 2 Columns Left Aligned! */
    .footer-grid {
        grid-template-columns: 1fr 1fr !important;
        text-align: left !important; /* Reverts the center alignment */
        padding: 0 20px 40px !important;
        gap: 40px 20px !important; /* 40px gap between rows, 20px between columns */
    }

    /* 2. Full-width rows for non-navigation columns */
    .brand-col,
    .instagram-col,
    .contact-col {
        grid-column: span 2 !important;
    }

    /* Keep the brand logo and socials centered, as they usually look best that way */
    .brand-col {
        text-align: center !important;
    }
    .brand-col .footer-social-icons {
        justify-content: center !important;
    }

    /* 3. The Navigation Lists - Ensure they stay left aligned */
    .footer-col ul li {
        justify-content: flex-start !important; 
    }

    /* 4. Phone Numbers Sub-Grid (2 Columns) */
    .contact-col {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 20px 15px !important;
    }
    
    /* Make the "GIVE US A CALL" title span across both phone columns */
    .contact-col h4 {
        grid-column: span 2 !important;
        margin-bottom: 0 !important; /* We let the grid gap handle the spacing */
    }

    /* Remove bottom margin from phone blocks so they align perfectly in the grid */
    .phone-block {
        margin-bottom: 0 !important;
    }

    /* 5. Keep the bottom bar and newsletter stacked and centered */
    .footer-bottom-bar {
        flex-direction: column !important;
        align-items: center !important;
        margin: 0 !important; /* Kills the 145px desktop margins */
        padding: 30px 20px 0 !important;
        gap: 15px !important;
        text-align: center !important;
    }
    .footer-legal-links a {
        margin: 0 10px !important; 
    }
    .newsletter-intro {
        flex-direction: column !important;
        gap: 15px !important;
        text-align: center !important;
    }
    .newsletter-title h3 {
      line-height: 1 !important;
      padding-bottom: 20px !important;
    }
}
.donate-stuff html, body {
    overflow-x: hidden !important;
}

.sign-in-form-card {
    border: 1px solid #F3F4F6;
    box-shadow: 0 32px 80px -16px rgba(0, 0, 0, 0.08);
    margin-right: auto !important;
    max-width: 560px;
    padding: 50px;
}

.sign-in-form-heading {
    color: #015DAB;
}

.sign-in-pickups {
    color:#02A950;
}

.sign-up-form-heading {
       color: #015DAB;
}

.join-thousands-heading {
    color:#02A950;
}

.form-note {
    font-size: 12px;
}


/* --- Feature Cards Section Styling --- */

.feature-cards-section {
    position: relative !important;
    padding: 20px !important;
    display: flex !important;
    justify-content: center !important;
    z-index: 1 !important;
}

.feature-cards-container {
    position: relative !important;
    z-index: 2 !important; 
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    width: 100% !important;
    max-width: 500px !important;
}

/* Floating Background Blobs */
.blur-blob {
    position: absolute !important;
    width: 335px !important;
    height: 335px !important;
    border-radius: 335px !important;
    background: rgba(0, 85, 165, 0.25) !important; 
    filter: blur(150px) !important;
    z-index: -1 !important;
    pointer-events: none !important;
}

.blur-blob.blob-bottom {
    background: rgba(2, 169, 80, 0.25) !important;
    bottom: 20px !important;
    left: 120px !important;
}

.blob-top {
    top: -50px !important;
    right: 30px !important;
}


/* Individual Card Styling */
.feature-card {
    background: #ffffff !important;
    border-radius: 15px !important;
    padding: 25px 30px !important;
    display: flex !important;
    align-items: center !important;
    gap: 25px !important;
    text-align: left !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.04) !important;
    transition: transform 0.3s ease !important;
}

.feature-card:hover {
    transform: translateY(-5px) !important;
}

.feature-card-icon {
    /* 1. This prevents the container from squishing the icon */
    flex-shrink: 0 !important;
    
    /* 2. Ensure the container matches the intended image width */
    width: 35px !important;
    
    /* 3. Optional: Ensure the icon stays at the top if text is long */
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
}

/* Icon Sizing */
.feature-card-icon img {
 width: 35px !important;
    height: auto !important;
    display: block !important;
}


/* Text Styling */
.feature-card-text h3 {
    margin: 0 0 5px 0 !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #1a2b3c !important;
}

.feature-card-text p {
    margin: 0 !important;
    font-size: 15px !important;
    color: #64748b !important;
    line-height: 1.4 !important;
}

/* Responsive fix for smaller phones */
@media (max-width: 480px) {
    .feature-card {
        padding: 20px !important;
        gap: 15px !important;
    }
    .feature-card-text h3 {
        font-size: 18px !important;
    }
}



/*--- ART START HERE FOR ALL PLACEHOLDER STYLING ---*/

/*SIGN IN FORM PLACEHOLDER*/

/* Container sizing */
.signin-container {
    max-width: 450px !important;
}

.signin-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 25px !important;
}

/* Label Styling */
.form-group label {
    display: block !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #64748b !important; 
    margin-bottom: 8px !important;
}

/* Label Row for Password + Forgot Link */
.label-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.forgot-link {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #015dab;
    text-decoration: none !important;
}

.forgot-link:hover {
    color:#02A950 !important;
}

/* Input Styling */
.form-group input {
    width: 100% !important;
    padding: 15px 20px !important;
    border: 2px solid #e2e8f0 !important;
    border-radius: 15px !important;
    font-size: 16px !important;
    background-color: #ffffff !important;
    color: #1a2b3c !important;
    box-sizing: border-box !important;
}

.form-group input::placeholder {
    color: #94a3b8 !important;
}

/* Password Wrapper & Icon */
.password-wrapper {
    position: relative !important;
    width: 100% !important;
}

/* Green Button Styling */
.btn-signin {
    background-color: #02A950 !important;
    color: #ffffff !important;
    border: none !important;
    padding: 18px !important;
    border-radius: 50px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    letter-spacing: 1px !important;
    cursor: pointer !important;
    margin-top: 10px !important;
    transition: background 0.3s ease !important;
}

.btn-signin:hover {
    background-color: #1e833a !important;
}

/* Footer Text */
.form-footer {
    text-align: center !important;
    font-size: 16px !important;
    color: #64748b !important;
}

.form-footer a {
    color: #015dab !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.form-footer a:hover {
    color: #02A950 !important;
}

/*END SIGN IN FORM PLACEHOLDER*/




/* --- [psp_my_account] SIGN IN FIELDS --- */

/* 1. Force the plugin's internal wrappers to fill your container */
#donate-psp-login-form .ds-fe-flex-wrap, 
#donate-psp-login-form .ds-fe-flex-column,
#donate-psp-login-form span {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* 2. Style the Labels */
#donate-psp-login-form label {
    display: block !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #64748b !important;
    margin-bottom: 8px !important;
    text-align: left !important;
}

/* 3. Style the Input Fields (Email & Password) */
#donate-psp-login-form input[type="email"],
#donate-psp-login-form input[type="password"],
#donate-psp-login-form input[type="text"] {
    width: 100% !important; /* This now fills your container's width */
    padding: 15px 20px !important;
    border: 2px solid #e2e8f0 !important;
    border-radius: 15px !important;
    font-size: 16px !important;
    background-color: #ffffff !important;
    color: #1a2b3c !important;
    box-sizing: border-box !important; /* Critical to prevent padding overflow */
    margin-bottom: 20px !important;
    display: block !important;
}

/* 4. The Submit Button */
#psp-login-submit {
    width: 100% !important;
    background-color: #02A950 !important;
    color: #ffffff !important;
    border: none !important;
    padding: 18px !important;
    border-radius: 50px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    cursor: pointer !important;
}

#psp-login-submit:hover {
    background-color: #1e833a !important;
}

/* 5. Forgot Password Link */
.psp-forgot-pass-link {
    display: block !important;
    text-align: center !important;
    margin-top: 15px !important;
    font-size: 14px !important;
    color: #015dab !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.psp-forgot-pass-link:hover {
    color:#02A950 !important;
}

/* --- END [psp_my_account] SIGN IN FIELDS --- */

.sign-up-form-card {

    border: 1px solid #F3F4F6;
    box-shadow: 0 32px 80px -16px rgba(0, 0, 0, 0.08);
    margin-right: auto !important;
    max-width: 690px;
    padding: 50px;
}



/* --- CREATE ACCOUNT FORM PLACEHOLDER --- */
.signup-form {
    width: 100% !important;
    /* max-width: 500px !important; */
    margin: 0 0 auto !important; 
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
}

.form-row {
    display: flex !important;
    gap: 20px !important;
    width: 100% !important;
}

.form-row .form-group {
    flex: 1 !important;
}

/* Typography for labels and footer text */
.form-group label {
    font-weight: 700 !important;
    color: #64748b !important;
    margin-bottom: 8px !important;
}

.form-footer {
    text-align: center !important;
    margin-top: 20px !important;
    color: #64748b !important;
}

.label-text a:hover {
    color:#02A950 !important;
}


/* --- Fix for shrinking checkboxes - Art if you comment this out you will see what is going on here. --- */
.custom-checkbox input[type="checkbox"] {
    flex-shrink: 0 !important;
    width: 20px !important;
    height: 20px !important;
    margin-top: 2px !important; 
}

/* mobile responsiveness */
@media (max-width: 600px) {
    .form-row {
        flex-direction: column !important;
        gap: 0 !important;
    }
}

/* --- END CREATE ACCOUNT FORM PLACEHOLDER --- */

/*--- ART END HERE FOR ALL PLACEHOLDER STYLING ---*/

/* --- Testimonial Wall Fix --- */

.testimonial-wall {
    padding: 60px 20px;
    display: flex;
    justify-content: center;
    /* CRITICAL FIX: Creates a container for z-index: -1 elements */
    position: relative !important;
    z-index: 1 !important; 
    /* overflow: hidden !important;  */
    overflow: visible !important; 
}

.testimonial-grid {
    display: flex;
    flex-direction: column;
    gap: 25px;
    width: 100%;
    max-width: 800px;
    position: relative !important;
    z-index: 2 !important; /* Ensures text stays above blobs */
    padding: 0 20px; /* Moves the padding here so cards don't hit screen edges */
}

/* --- Base Blob Styling --- */
.blur-blob {
    position: absolute !important;
    width: 335px !important;
    height: 335px !important;
    border-radius: 50% !important;
    background: rgba(0, 85, 165, 0.25) !important; /* Blue */
    filter: blur(150px) !important;
    -webkit-filter: blur(150px) !important;
    z-index: -1 !important;
    pointer-events: none !important;
    will-change: filter; /* Helps browser performance */
}

/* --- Specific Blob Positions (Covering 6 Cards) --- */
.blob-top { top: -50px !important; right: 30px !important; }

.blob-bottom { 
    background: rgba(2, 169, 80, 0.25) !important; /* Green */
    bottom: 20px !important; 
    left: 120px !important; 
}

.blob-mid-1 { 
    top: 20% !important; 
    left: 160px !important; 
}

.blob-mid-2 { 
    top: 40% !important; 
    right: -100px !important; 
    background: rgba(2, 169, 80, 0.25) !important; 
}

.blob-mid-3 { 
    top: 60% !important; 
    left: 210px !important; 
}

.blob-mid-4 { 
    top: 80% !important; 
    right: 150px !important; 
    background: rgba(2, 169, 80, 0.25) !important; 
}

/* Adjusting blob positions so they peek but don't cause massive scroll */
.blur-blob.pos-1 { 
    left: -50px !important; 
}
.blur-blob.pos-2 { 
    right: -50px !important; 
}
.blur-blob.pos-5 { 
    left: -30px !important; 
}
.blur-blob.pos-6 { 
    right: -30px !important; 
}

/* --- Quote Cards --- */
.quote-card {
    background: #ffffff;
    padding: 25px 30px;
    border-radius: 15px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.04);
    max-width: 460px;
    transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.3s ease !important;
    cursor: default;
}

/* Hover State */
.quote-card:hover {
    z-index: 10 !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1) !important;
}

/* Fonts per specs */
.quote-text {
    color: #27272A !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 22.75px !important;
    margin-bottom: 12px !important;
}

.quote-name {
    color: #71717A !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 16px !important;
}

.quote-footer {
    display: flex;
    align-items: center;
    gap: 10px;
}

.quote-stars {
    color: #02a950;
    font-size: 14px;
    letter-spacing: 1px;
}

/* --- Scatter Effect --- */
.quote-card:nth-child(odd) { align-self: flex-start; transform: rotate(-1deg); }
.quote-card:nth-child(even) { align-self: flex-end; transform: rotate(1.2deg); }

.quote-card:nth-child(1) { margin-left: 20px; }
.quote-card:nth-child(3) { margin-left: 50px; transform: rotate(-0.5deg); }
.quote-card:nth-child(4) { margin-right: 40px; }
.quote-card:nth-child(6) { margin-right: 15px; transform: rotate(0.8deg); }

/* Hover Maintenance of Rotation */
.quote-card:nth-child(odd):hover { transform: translateY(-10px) scale(1.03) rotate(-1deg) !important; }
.quote-card:nth-child(even):hover { transform: translateY(-10px) scale(1.03) rotate(1.2deg) !important; }
.quote-card:nth-child(3):hover { transform: translateY(-10px) scale(1.03) rotate(-0.5deg) !important; }
.quote-card:nth-child(6):hover { transform: translateY(-10px) scale(1.03) rotate(0.8deg) !important; }

@media (max-width: 768px) {
    .quote-card {
        max-width: 100% !important;
        align-self: center !important;
        transform: none !important;
        margin: 0 !important;
    }
}

.wp-block-uagb-advanced-heading h1,.wp-block-uagb-advanced-heading h2,.wp-block-uagb-advanced-heading h3,.wp-block-uagb-advanced-heading h4,.wp-block-uagb-advanced-heading h5,.wp-block-uagb-advanced-heading h6,.wp-block-uagb-advanced-heading p,.wp-block-uagb-advanced-heading div {
	word-break: break-word
}

.wp-block-uagb-advanced-heading .uagb-heading-text {
	margin: 0
}

.wp-block-uagb-advanced-heading .uagb-desc-text {
	margin: 0
}

.wp-block-uagb-advanced-heading .uagb-separator {
	font-size: 0;
	border-top-style: solid;
	display: inline-block;
	margin: 0 0 10px 0
}

.wp-block-uagb-advanced-heading .uagb-highlight {
	color: #f78a0c;
	border: 0;
	transition: all .3s ease
}

.uag-highlight-toolbar {
	border-left: 0;
	border-top: 0;
	border-bottom: 0;
	border-radius: 0;
	border-right-color: #1e1e1e
}

.uag-highlight-toolbar .components-button {
	border-radius: 0;
	outline: none
}

.uag-highlight-toolbar .components-button.is-primary {
	color: #fff
}

.wp-block-uagb-icon svg {
	width: 30px
}

.uagb-icon-wrapper .uagb-svg-wrapper {
	transition: box-shadow .2s ease
}

.wp-block-uagb-advanced-heading.uagb-block-5e265a2d.wp-block-uagb-advanced-heading .uagb-heading-text {
	color: #111827;
}

.wp-block-uagb-advanced-heading.uagb-block-5e265a2d.wp-block-uagb-advanced-heading {
	/* text-align: center; */
	margin-top: 0%;
	margin-right: 0%;
	margin-bottom: 0%;
	margin-left: 0%;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}

.wp-block-uagb-advanced-heading.uagb-block-5e265a2d.wp-block-uagb-advanced-heading .uagb-desc-text {
	margin-bottom: 15px;
}

.wp-block-uagb-advanced-heading.uagb-block-5e265a2d.wp-block-uagb-advanced-heading .uagb-highlight {
	font-style: normal;
	font-weight: Default;
	background: #007cba;
	color: #fff;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-5e265a2d.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection {
	color: #fff;
	background: #007cba;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-5e265a2d.wp-block-uagb-advanced-heading .uagb-highlight::selection {
	color: #fff;
	background: #007cba;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-5e265a2d .uagb-heading-text {
	font-weight: 700;
	font-size: 60px;
	line-height: 90px;
	letter-spacing: -2px;
}

.wp-block-uagb-advanced-heading.uagb-block-a1d26c19.wp-block-uagb-advanced-heading .uagb-heading-text {
	color: #111827;
}

.wp-block-uagb-advanced-heading.uagb-block-a1d26c19.wp-block-uagb-advanced-heading {
	margin-top: 0%;
	margin-right: 0%;
	margin-bottom: 0%;
	margin-left: 0%;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}

.wp-block-uagb-advanced-heading.uagb-block-a1d26c19.wp-block-uagb-advanced-heading .uagb-desc-text {
	margin-bottom: 15px;
}

.wp-block-uagb-advanced-heading.uagb-block-a1d26c19.wp-block-uagb-advanced-heading .uagb-highlight {
	font-style: normal;
	font-weight: Default;
	background: #007cba;
	color: #fff;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-a1d26c19.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection {
	color: #fff;
	background: #007cba;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-a1d26c19.wp-block-uagb-advanced-heading .uagb-highlight::selection {
	color: #fff;
	background: #007cba;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-a1d26c19 .uagb-heading-text {
	font-weight: 800;
	font-size: 28px;
}

.uagb-block-a2519403.uagb-icon-wrapper {
	text-align: center;
}

.uagb-block-a2519403.uagb-icon-wrapper .uagb-svg-wrapper a {
	display: contents;
}

.uagb-block-a2519403.uagb-icon-wrapper svg {
	width: 30px;
	height: 30px;
	transform: rotate(0deg);
	box-sizing: content-box;
	fill: #0055a5;
	filter: drop-shadow( 0px 0px 0px #00000070 );
}

.uagb-block-a2519403.uagb-icon-wrapper .uagb-svg-wrapper {
	display: inline-flex;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 5px;
	padding-left: 5px;
	border-style: default;
	box-shadow: 0px 0px 0 #00000070 ;
}

.uagb-block-a2519403.uagb-icon-wrapper .uagb-svg-wrapper:hover {
	box-shadow: 0px 0px 0 #00000070 ;
}

.uagb-block-a2519403.uagb-icon-wrapper .uagb-svg-wrapper:focus-visible {
	box-shadow: 0px 0px 0 #00000070 ;
}

.wp-block-uagb-advanced-heading.uagb-block-ee381f51.wp-block-uagb-advanced-heading .uagb-heading-text {
	color: #111827;
}

.wp-block-uagb-advanced-heading.uagb-block-ee381f51.wp-block-uagb-advanced-heading {
	margin-top: 0%;
	margin-right: 0%;
	margin-bottom: 0%;
	margin-left: 0%;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}

.wp-block-uagb-advanced-heading.uagb-block-ee381f51.wp-block-uagb-advanced-heading .uagb-desc-text {
	margin-bottom: 15px;
}

.wp-block-uagb-advanced-heading.uagb-block-ee381f51.wp-block-uagb-advanced-heading .uagb-highlight {
	font-style: normal;
	font-weight: Default;
	background: #007cba;
	color: #fff;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-ee381f51.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection {
	color: #fff;
	background: #007cba;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-ee381f51.wp-block-uagb-advanced-heading .uagb-highlight::selection {
	color: #fff;
	background: #007cba;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-ee381f51 .uagb-heading-text {
	font-weight: 800;
	font-size: 20px;
}

.uagb-block-f0141cf6.uagb-icon-wrapper {
	text-align: center;
}

.uagb-block-f0141cf6.uagb-icon-wrapper .uagb-svg-wrapper a {
	display: contents;
}

.uagb-block-f0141cf6.uagb-icon-wrapper svg {
	width: 30px;
	height: 30px;
	transform: rotate(0deg);
	box-sizing: content-box;
	fill: #0055a5;
	filter: drop-shadow( 0px 0px 0px #00000070 );
}

.uagb-block-f0141cf6.uagb-icon-wrapper .uagb-svg-wrapper {
	display: inline-flex;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 5px;
	padding-left: 5px;
	border-style: default;
	box-shadow: 0px 0px 0 #00000070 ;
}

.uagb-block-f0141cf6.uagb-icon-wrapper .uagb-svg-wrapper:hover {
	box-shadow: 0px 0px 0 #00000070 ;
}

.uagb-block-f0141cf6.uagb-icon-wrapper .uagb-svg-wrapper:focus-visible {
	box-shadow: 0px 0px 0 #00000070 ;
}

.wp-block-uagb-advanced-heading.uagb-block-b2429502.wp-block-uagb-advanced-heading .uagb-heading-text {
	color: #111827;
}

.wp-block-uagb-advanced-heading.uagb-block-b2429502.wp-block-uagb-advanced-heading {
	margin-top: 0%;
	margin-right: 0%;
	margin-bottom: 0%;
	margin-left: 0%;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}

.wp-block-uagb-advanced-heading.uagb-block-b2429502.wp-block-uagb-advanced-heading .uagb-desc-text {
	margin-bottom: 15px;
}

.wp-block-uagb-advanced-heading.uagb-block-b2429502.wp-block-uagb-advanced-heading .uagb-highlight {
	font-style: normal;
	font-weight: Default;
	background: #007cba;
	color: #fff;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-b2429502.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection {
	color: #fff;
	background: #007cba;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-b2429502.wp-block-uagb-advanced-heading .uagb-highlight::selection {
	color: #fff;
	background: #007cba;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-b2429502 .uagb-heading-text {
	font-weight: 800;
	font-size: 20px;
}

.wp-block-uagb-advanced-heading.uagb-block-4b75ac25.wp-block-uagb-advanced-heading .uagb-heading-text {
	color: #111827;
}

.wp-block-uagb-advanced-heading.uagb-block-4b75ac25.wp-block-uagb-advanced-heading {
	margin-top: 0%;
	margin-right: 0%;
	margin-bottom: 0%;
	margin-left: 0%;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}

.wp-block-uagb-advanced-heading.uagb-block-4b75ac25.wp-block-uagb-advanced-heading .uagb-desc-text {
	margin-bottom: 15px;
}

.wp-block-uagb-advanced-heading.uagb-block-4b75ac25.wp-block-uagb-advanced-heading .uagb-highlight {
	font-style: normal;
	font-weight: Default;
	background: #007cba;
	color: #fff;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-4b75ac25.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection {
	color: #fff;
	background: #007cba;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-4b75ac25.wp-block-uagb-advanced-heading .uagb-highlight::selection {
	color: #fff;
	background: #007cba;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-4b75ac25 .uagb-heading-text {
	font-weight: 800;
	font-size: 20px;
}

.uagb-block-1dfae051.uagb-icon-wrapper {
	text-align: center;
}

.uagb-block-1dfae051.uagb-icon-wrapper .uagb-svg-wrapper a {
	display: contents;
}

.uagb-block-1dfae051.uagb-icon-wrapper svg {
	width: 30px;
	height: 30px;
	transform: rotate(0deg);
	box-sizing: content-box;
	fill: #0055a5;
	filter: drop-shadow( 0px 0px 0px #00000070 );
}

.uagb-block-1dfae051.uagb-icon-wrapper .uagb-svg-wrapper {
	display: inline-flex;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 5px;
	padding-left: 5px;
	border-style: default;
	box-shadow: 0px 0px 0 #00000070 ;
}

.uagb-block-1dfae051.uagb-icon-wrapper .uagb-svg-wrapper:hover {
	box-shadow: 0px 0px 0 #00000070 ;
}

.uagb-block-1dfae051.uagb-icon-wrapper .uagb-svg-wrapper:focus-visible {
	box-shadow: 0px 0px 0 #00000070 ;
}

.wp-block-uagb-advanced-heading.uagb-block-6035e44f.wp-block-uagb-advanced-heading .uagb-heading-text {
	color: #111827;
}

.wp-block-uagb-advanced-heading.uagb-block-6035e44f.wp-block-uagb-advanced-heading {
	margin-top: 0%;
	margin-right: 0%;
	margin-bottom: 0%;
	margin-left: 0%;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}

.wp-block-uagb-advanced-heading.uagb-block-6035e44f.wp-block-uagb-advanced-heading .uagb-desc-text {
	margin-bottom: 15px;
}

.wp-block-uagb-advanced-heading.uagb-block-6035e44f.wp-block-uagb-advanced-heading .uagb-highlight {
	font-style: normal;
	font-weight: Default;
	background: #007cba;
	color: #fff;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-6035e44f.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection {
	color: #fff;
	background: #007cba;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-6035e44f.wp-block-uagb-advanced-heading .uagb-highlight::selection {
	color: #fff;
	background: #007cba;
	-webkit-text-fill-color: #fff;
}

.wp-block-uagb-advanced-heading.uagb-block-6035e44f .uagb-heading-text {
	font-weight: 800;
	font-size: 20px;
}

@media only screen and (max-width: 976px) {
	.uagb-block-a2519403.uagb-icon-wrapper .uagb-svg-wrapper {
		display: inline-flex;
	}

	.uagb-block-f0141cf6.uagb-icon-wrapper .uagb-svg-wrapper {
		display: inline-flex;
	}

	.uagb-block-1dfae051.uagb-icon-wrapper .uagb-svg-wrapper {
		display: inline-flex;
	}
}



@media only screen and (max-width: 767px) {
	.wp-block-uagb-advanced-heading.uagb-block-5e265a2d .uagb-heading-text {
		font-size: 47px;
		line-height: 50px;
		letter-spacing: -1px;
	}

	.wp-block-uagb-advanced-heading.uagb-block-a1d26c19.wp-block-uagb-advanced-heading {
		padding-top: 0px;
		padding-right: 0px;
		padding-bottom: 0px;
		padding-left: 0px;
	}

	.wp-block-uagb-advanced-heading.uagb-block-a1d26c19 .uagb-heading-text {
		font-size: 22px;
		letter-spacing: -1px;
	}

	.uagb-block-a2519403.uagb-icon-wrapper .uagb-svg-wrapper {
		display: inline-flex;
	}

	.wp-block-uagb-advanced-heading.uagb-block-ee381f51.wp-block-uagb-advanced-heading {
		padding-top: 0px;
		padding-right: 0px;
		padding-bottom: 0px;
		padding-left: 0px;
	}

	.wp-block-uagb-advanced-heading.uagb-block-ee381f51 .uagb-heading-text {
		font-size: 22px;
		letter-spacing: -1px;
	}

	.uagb-block-f0141cf6.uagb-icon-wrapper .uagb-svg-wrapper {
		display: inline-flex;
	}

	.wp-block-uagb-advanced-heading.uagb-block-b2429502.wp-block-uagb-advanced-heading {
		padding-top: 0px;
		padding-right: 0px;
		padding-bottom: 0px;
		padding-left: 0px;
	}

	.wp-block-uagb-advanced-heading.uagb-block-b2429502 .uagb-heading-text {
		font-size: 22px;
		letter-spacing: -1px;
	}

	.wp-block-uagb-advanced-heading.uagb-block-4b75ac25.wp-block-uagb-advanced-heading {
		padding-top: 0px;
		padding-right: 0px;
		padding-bottom: 0px;
		padding-left: 0px;
	}

	.wp-block-uagb-advanced-heading.uagb-block-4b75ac25 .uagb-heading-text {
		font-size: 22px;
		letter-spacing: -1px;
	}

	.uagb-block-1dfae051.uagb-icon-wrapper .uagb-svg-wrapper {
		display: inline-flex;
	}

	.wp-block-uagb-advanced-heading.uagb-block-6035e44f.wp-block-uagb-advanced-heading {
		padding-top: 0px;
		padding-right: 0px;
		padding-bottom: 0px;
		padding-left: 0px;
	}

	.wp-block-uagb-advanced-heading.uagb-block-6035e44f .uagb-heading-text {
		font-size: 22px;
		letter-spacing: -1px;
	}
}

.uag-blocks-common-selector {
	z-index: var(--z-index-desktop) !important
}

@media(max-width: 976px) {
	.uag-blocks-common-selector {
		z-index:var(--z-index-tablet) !important
	}
}

@media(max-width: 767px) {
	.uag-blocks-common-selector {
		z-index:var(--z-index-mobile) !important
	}
}
