/**********************************************************
// Block >> Programs
**********************************************************/
.Block-Programs {
	padding: var(--40px) var(--20px) var(--60px) var(--20px);
	text-align: center;
	}

.Block-Programs h2 {
	padding: 0 !important;
	line-height: 0.7em;
	font-family: var(--Font-Script);
	font-weight: 400;
	font-size: var(--60px);
	color: var(--Color-Blue-1);
	}

.Block-Programs.header-red h2 {
	color: var(--Color-Red);
	}

.Block-Programs-Description {
	margin: var(--20px) auto 0 auto;
	max-width: 50rem;
	text-align: center;
	line-height: 1.5em;
	font-size: var(--16px);
	}

.Block-Programs-Header {
	margin: 0 auto;
	max-width: 62.5rem; /* Match the Programs-List container width */
	}

/* Left alignment styles */
.Block-Programs.align-left .Block-Programs-Header {
	padding: 0 1%; /* Match the Programs-Item margin */
	}

.Block-Programs.align-left .Block-Programs-Header h2 {
	text-align: left;
	}

.Block-Programs.align-left .Block-Programs-Description {
	max-width: 50%;
	margin-left: 0;
	margin-right: auto;
	text-align: left;
	}

.Block-Programs-List {
	margin: auto;
	font-size: 0;
	}

.Block-Programs-Item {
	margin: var(--70px) 1% 0 1%;
	padding: var(--40px) var(--10px);
	width: 23%;
	max-width: 15rem;
	min-height: 34.375rem;
	background: var(--Color-White);
	border-radius: var(--20px);
	box-shadow: 0 var(--3px) var(--6px) rgba(0, 0, 0, 0.24);
	text-align: left;
	position: relative;
	display: inline-block;
	vertical-align: top;
	}

.Block-Programs-Item-Link {
	position: absolute;
	z-index: 1000;
	bottom: 0;
	right: 0;
	left: 0;
	top: 0;
	}

.Block-Programs-Item-Icon {
	line-height: 0;
	font-size: 0;
	display: flex;
	align-items: center;
	position: absolute;
	left: var(--10px);
	top: -2.5rem;
	}

.Block-Programs-Item-Icon img {
	width: auto;
	height: auto;
	max-height: var(--90px);
	max-width: 7.5rem;
	}

.Block-Programs-Item h3 {
	margin: var(--20px) 0 0 0;
	padding: 0 !important;
	max-width: 10.625rem;
	min-height: var(--60px);
	line-height: 1.2em;
	font-family: var(--Font-Titles);
	font-weight: 400;
	font-size: 1.4375rem;
	color: var(--Color-Blue-1);
	}

.Block-Programs-Item-Description {
	margin: var(--10px) auto 0 auto;
	line-height: 1.5em;
	font-size: var(--14px);
	}

.Block-Programs-Item-Details { margin-top: var(--20px); }
.Block-Programs-Item-Detail {
	margin: var(--10px) auto 0 auto;
	width: 100%;
	}

.Block-Programs-Item-Detail-Label {
	line-height: 1.2em;
	font-weight: 900;
	font-size: var(--12px);
	}

.Block-Programs-Item-Detail-Value {
	margin-top: var(--4px);
	line-height: 1.2em;
	font-family: var(--Font-Titles);
	font-weight: 400;
	font-size: var(--18px);
	color: var(--Color-Blue-1);
	}

.Block-Programs-Item-Button {
	text-align: center;
	position: absolute;
	z-index: 100;
	bottom: -1.25rem;
	right: 0;
	left: 0;
	}

.Block-Programs-Item-Button span {
	margin: auto;
	padding: var(--10px);
	width: 100%;
	max-width: 9.375rem;
	border-radius: var(--30px);
	background: var(--Color-Green);
	color: var(--Color-Blue-1);
	line-height: 1.5em;
	text-transform: uppercase;
	letter-spacing: var(--1px);
	font-family: var(--Font-Condsd);
	font-weight: 700;
	font-size: var(--15px);
	display: block;
	}

.Block-Programs-Item:hover,
.Block-Programs-Item:focus {
	background: var(--Color-Blue-1);
	color: var(--Color-White);
	}

.Block-Programs-Item:hover h3,
.Block-Programs-Item:focus h3,
.Block-Programs-Item:hover .Block-Programs-Item-Detail-Value,
.Block-Programs-Item:focus .Block-Programs-Item-Detail-Value {
	color: var(--Color-White);
	}

.Block-Programs-Item:hover .Block-Programs-Item-Button span,
.Block-Programs-Item:focus .Block-Programs-Item-Button span {
	background: var(--Color-Red);
	color: var(--Color-White);
	}

/**********************************************************
// Media Queries
**********************************************************/
@media /* 768px */
all and (max-width: 48rem),
all and (max-device-width: 48rem)
{
	.Block-Programs-Item {
		margin: var(--90px) auto 0 auto;
		padding: var(--40px) var(--20px);
		width: 100%;
		max-width: var(--400px);
		min-height: 0;
		display: block;
		}

	.Block-Programs-Item-Detail {
		margin: var(--10px) 1% 0 1%;
		width: 47%;
		display: inline-block;
		vertical-align: top;
		}

	.Block-Programs-Item-Detail:nth-child(2n+1) { width: 58%; }
	.Block-Programs-Item-Detail:nth-child(2n+2) { width: 38%; }

	.Block-Programs-Item h3 { min-height: 0; }
}
