/* Shared Card */
	.bc-container {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(300px, 380px));
		gap: 1em;
		padding: 1em;
		justify-content: center;
	}
	.bc-heading {
		font-size: 1.5em;
		padding: unset;
		margin: unset;
		letter-spacing: unset;
	}
	.bc-item {
		position: relative;
		border-radius: 1rem;
		display: flex;
		flex-direction: column;
	}
	.bc-cta-link {
		inset: 0;
		z-index: 1;
		text-decoration: none;
		position: absolute;
	}
	.bc-cta-link:hover, .bc-cta-link:focus {
		border: none;
	}
	
/* Program Card */
	.program-card .bc-container {}
	.program-card .bc-item {
		background-color: #E7E7E7;
		border: 1px solid #CDCDCD;
		padding-bottom: 75px;
	}
	.program-card .bc-image {
		order: 1;
		object-fit: cover;
		width: 100%;
		height: auto;
		display: block;
		border-top-left-radius: 1rem;
		border-top-right-radius: 1rem;
		border-bottom: 1px solid #b6b6b6;
	}
	.program-card .bc-image[src=""] {
		visibility: hidden;
	}
	.program-card .bc-icon {
		order: 2;
		display: none;
		position: relative;
		clip-path: circle();
		aspect-ratio: 1 / 1;
		align-items: center;
		justify-content: center;
		color: #FFFFFF;
		background-color: #003366;
		width: 48px;
		font-size: 28px;
		margin-top: -25px;
		margin-bottom: -25px;
		margin-left: calc(50% - 24px);
	}
	.program-card .bc-icon:not(:empty) {
		display: flex;
	}
	.program-card .bc-icon[class*="fa-"] {
		display: flex;
	}
	.program-card .bc-heading {
		order: 3;
		text-align: center;
		color: #FFFFFF;
		line-height: 2em;
		text-align: center;
		font-weight: bold;
		width: 100%;
		padding-top: 25px;
		padding-bottom: 15px;
		font-size: 1.55em;
		border-top: 1px solid #b6b6b6;
		color: #003366;
	}
	.program-card .bc-item .bc-heading::after {
		content: "\f061"; /* Unicode character U+F061 */
		font-family: "Font Awesome 5 Free"; /* or the correct icon font you're using */
		font-weight: 900; /* needed for some Font Awesome icons */
		font-size: 1.5em;
		justify-content: right;
		position: absolute;
		right: 32px;
		bottom: 28px;
		color: #003366;
	}
	.program-card .bc-snippet {
		order: 4;
		padding-left:  2em;
		padding-right: 1.5em;
		line-height: 1.5em;
		font-size: 1em;
		line-height: 1.5em;
	}
	.program-card .bc-item:hover .bc-snippet::after {
		content: '◯';
		font-size: 52px;
		justify-content: right;
		position: absolute;
		right: 19px;
		bottom: 40px;
  		font-weight: bold;
	  	color: #003366;
	}
	.program-card .bc-cta-link {
		order: 5;
	}
	.program-card .bc-cta-text {
		display: none;
	}
	
/* Thumb Card */
	.thumb-card .bc-container {
		grid-template-columns: repeat(auto-fill, minmax(278px, 1fr));
	}
	.thumb-card .bc-item {
		background-color: #E7E7E7;
		aspect-ratio: 1 / 1;
	}
	.thumb-card .bc-icon {
		order: 1;
		display: none;
		margin: 2rem auto;
		clip-path: circle();
		width: 50%;
		aspect-ratio: 1 / 1;
		align-items: center;
		justify-content: center;
		color: #FFFFFF;
		background-color: #003399;
		font-size: 72px;
	}
	.thumb-card .bc-item:hover {
		background-color: #003399;
	}
	.thumb-card .bc-heading {
		order: 2;
		text-align: center;
		color: #003399;
		line-height: 2em;
		margin-top: 0;
		border-top-left-radius: 1rem;
		border-top-right-radius: 1rem;
	}
	.thumb-card .bc-item:hover .bc-heading {
		color: #E7E7E7;
	}
	.thumb-card .bc-cta-link {
		order: 3;
	}
	.thumb-card .bc-cta-text {
		display: none;
	}
	.thumb-card .bc-image {
		display: none;
	}
	.thumb-card .bc-snippet {
		display: none;
	}
	.thumb-card .bc-icon:not(:empty) {
		display: flex;
	}
	.thumb-card .bc-icon[class*="fa-"] {
		display: flex;
	}
	
/* Blue Card */
	.blue-card .bc-container {
		grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
	}
	.blue-card .bc-item {
		height: 300px;
		background-color: #076AB0;
	}
	.blue-card .bc-item:nth-child(even) {
		background-color: #003366;
	}
	.blue-card .bc-icon {
		order: 1;
		margin-top: 40px;
		margin-left: 20px;
		font-size: xx-large;
		color: #FFFFFF;
		font-weight: 600;
	}
	.blue-card .bc-heading {
		margin-left: 20px;
		order: 2;
		text-align: left;
		color: #FFFFFF;
		font-weight: 600;
		font-size: 1.55em;
		line-height: 1.86em;
		margin-top: 0;
	}
	.blue-card .bc-snippet {
		order: 3;
		padding: 0px 20px 20px 20px;
		font-size: 1em;
		line-height: 1.5em;
		color: #FFFFFF;
	}
	.blue-card .bc-item .bc-heading::after {
		content: "\f061"; /* Unicode character U+F061 */
		font-family: "Font Awesome 5 Free"; /* or the correct icon font you're using */
		font-weight: 900; /* needed for some Font Awesome icons */
		font-size: 1.5em;
		justify-content: right;
		position: absolute;
		right: 31px;
		bottom: 30px;

	}
	.blue-card .bc-item:hover .bc-snippet::after {
		content: '◯';
		font-size: 3em;
		justify-content: right;
		position: absolute;
		right: 20px;
		bottom: 40px;
	}
	.blue-card .bc-cta-link {
		order: 3;
	}
	.blue-card .bc-image {
		display: none;
	}
	.blue-card .bc-cta-text {
		font-size: 0;
	}
	
/* CTA Card */
	.cta-card .bc-container {
		grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	}
	.cta-card .bc-item {
		height: 300px;
	}
	.cta-card .bc-image {
		order: 1;
		height: 100%;
		object-fit: cover;
		border-radius: 1rem;
	}
	.cta-card .bc-cta-text {
		order: 2;
		margin-top: auto;
		line-height: 4em;
		color: #FFFFFF;
		text-align: center;
		font-weight: bold;
		border-bottom-left-radius: 1rem;
		border-bottom-right-radius: 1rem;
		background-color: #036;
		opacity: .8;
		position: absolute;
		bottom: 0;
		width: 100%;
	}
	.cta-card .bc-item:hover .bc-cta-text::after {
		content: '➜';
		width: auto;
		font-size: 1.25em;
		line-height: 2em;
		display: flex;
		justify-content: center;
	}
	.cta-card .bc-cta-link {
		order: 3;
	}
	.cta-card .bc-heading {
		display: none;
	}
	.cta-card .bc-snippet {
		display: none;
	}
	.cta-card .bc-icon {
		display: none;
	}
	
/* Standard Card */
	.standard-card .bc-container {}
	.standard-card .bc-item {
		background-color: #E7E7E7;
	}
	.standard-card .bc-heading {
		order: 1;
		text-align: center;
		color: #FFFFFF;
		background-color: #013366;
		line-height: 2em;
		margin-top: 0;
		border-top-left-radius: 1rem;
		border-top-right-radius: 1rem;
	}
	.standard-card .bc-cta-link {
		order: 5;
	}
	.standard-card .bc-snippet {
		order: 3;
		padding-left:  2em;
		padding-right: 1.5em;
		line-height: 1.5em;
	}
	.standard-card .bc-cta-text {
		order: 4;
		margin-top: auto;
		line-height: 4em;
		color: #FFFFFF;
		text-align: center;
		background-color: #013366;
		font-weight: bold;
		border-bottom-left-radius: 1rem;
		border-bottom-right-radius: 1rem;
	}
	.standard-card .bc-item:hover .bc-cta-text::before {
		content: '→ ';
		width: auto;
		font-size: 1.5em;
		line-height: 0;
	}
	.standard-card .bc-item:hover .bc-cta-text::after {
		content: ' ←';
		width: auto;
		font-size: 1.5em;
		line-height: 0;
	}
	.standard-card .bc-image {
		order: 2;
		margin: 1rem auto;
		clip-path: circle();
		width: 40%;
		aspect-ratio: 1 / 1;
		object-fit: cover;
	}
	.standard-card .bc-image[src=""] {
		display: none;
	}
	.standard-card .bc-icon {
		order: 2;
		display: none;
		margin: 1rem auto;
		clip-path: circle();
		width: 40%;
		aspect-ratio: 1 / 1;
		align-items: center;
		justify-content: center;
		color: #FFFFFF;
		background-color: #167196;
		font-size: 72px;
	}
	.standard-card .bc-image[src=""] + .bc-icon:not(:empty) {
		display: flex;
	}
	.standard-card .bc-image[src=""] + .bc-icon[class*="fa-"] {
		display: flex;
	}
	
/* Simple Card */
	.simple-card .bc-container {
		grid-template-columns: repeat(auto-fill, minmax(278px, 1fr));
	}
	.simple-card .bc-item {
		transition: transform 0.3s ease;
		box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	}
	.simple-card .bc-image {
		order: 1;
		object-fit: cover;
		width: 100%;
		height: auto;
		display: block;
		border-top-left-radius: 1rem;
		border-top-right-radius: 1rem;
		border-bottom: 1px solid #e0e0e0;
	}
	.simple-card .bc-heading {
		order: 2;
		color: #333333;
		text-align: center;
		font-weight: bold;
		border-bottom-left-radius: 1rem;
		border-bottom-right-radius: 1rem;
		background-color: #FFFFFF;
		width: 100%;
		padding: 15px;
		font-size: 16px;
		border-top: 1px solid #e0e0e0;
	}
	.simple-card .bc-item:hover {
		transform: scale(1.075);
	}
	.simple-card .bc-cta-link {
		order: 3;
	}
	.simple-card .bc-cta-text {
		display: none;
	}
	.simple-card .bc-snippet {
		display: none;
	}
	.simple-card .bc-icon {
		display: none;
	}
	
/* Hide unused elements */
	.bc-cta-text:empty, .bc-heading:empty, .bc-snippet:empty, .bc-snippet:empty {
		visibility: hidden;
	}
	.bc-cta-link[href=""], .bc-icon:not([class*="fa-"]), .bc-image[alt=""], .bc-image[src=""] {
		visibility: hidden;
	}