.program-core-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	margin-top: 40px;
}

.program-card {
	min-height: 290px;
	padding: 28px 26px;
	border: 1px solid #d8dde3;
	border-radius: 14px;
	background: #fff;
	box-sizing: border-box;
}

.program-title {
	margin: 0 0 18px;
	padding-bottom: 13px;
	border-bottom: 1px dashed #d5d9de;
	color: #003b7b;
	font-size: 21px;
	font-weight: 800;
}

.program-card ul {
	margin: 0;
	padding-left: 20px;
	list-style: disc !important;
}

.program-card li {
	margin-bottom: 10px;
	list-style: disc !important;
	line-height: 1.65;
	word-break: keep-all;
}

.program-card .sub-list {
	margin-top: 7px;
	padding-left: 18px;
}

.program-card .sub-list li {
	margin-bottom: 4px;
	list-style: circle !important;
}

.program-sub-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	margin-top: 28px;
}

.program-sub-card {
	padding: 22px 24px;
	border: 1px solid #d8dde3;
	border-radius: 12px;
	background: #f7f9fb;
	box-sizing: border-box;
}

.program-sub-card p {
	margin: 0 0 8px;
	color: #003b7b;
	font-size: 18px;
	font-weight: 800;
}

.program-sub-card span {
	color: #333;
	font-size: 14px;
	line-height: 1.6;
}

@media screen and (max-width: 900px) {
	.program-core-grid,
	.program-sub-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media screen and (max-width: 600px) {
	.program-core-grid,
	.program-sub-grid {
		grid-template-columns: 1fr;
	}

	.program-card {
		min-height: auto;
		padding: 22px 18px;
	}
}