#custom-map {
	margin-bottom: 50px;
	height: 500px;
	width: 100%;
	border-radius: 18px;
	overflow: hidden;

	@media (max-width: 991px) {
		height: 340px;
	}

	@media (max-width: 500px) {
		width: 100%;
		height: auto;
		aspect-ratio: 1 / 1;
		margin-bottom: 24px;
		border-radius: 14px;
	}

	.map-popup {
		width: 295px;
		background: #ffffff;
		box-shadow: 0 12px 30px rgba(12, 41, 78, 0.22);
		font-family: inherit;
		color: #0c294e;
		padding: 0 18px 18px 18px;
		box-sizing: border-box;
	}

	.map-popup__title {
		margin: 0 0 8px;
		font-size: 20px;
		line-height: 1.25;
		font-weight: 800;
		color: #0c294e;
	}

	.map-popup__address {
		margin: 0 0 14px;
		font-size: 13px;
		line-height: 1.45;
		color: #5f6f82;
	}

	.map-popup__stats {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 9px;
		@media (max-width: 500px) {
			display: block;
		}
	}

	.map-popup__stats div {
		padding: 10px 9px;
		border-radius: 8px;
		background: #f5f1e8;
		border: 1px solid rgba(12, 41, 78, 0.08);
		@media (max-width: 500px) {
			margin-bottom: 10px;
		}
	}
	
	.map-popup__stats div:last-child {
		grid-column: 1 / -1;
		@media (max-width: 500px) {
			margin-bottom: 0;
		}
	}

	.map-popup__stats span {
		display: block;
		margin-bottom: 3px;
		font-size: 10px;
		line-height: 1;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		color: #7a6a3a;
		font-weight: 700;
	}

	.map-popup__stats strong {
		font-size: 15px;
		line-height: 1.2;
		color: #0c294e;
		font-weight: 800;
	}

	.map-popup__learn-more {
		padding: 16px 0 0;

		a {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			padding: 10px 16px;
			border-radius: 999px;
			background: #0c294e;
			color: #ffffff;
			font-size: 13px;
			font-weight: 800;
			line-height: 1;
			text-decoration: none;
			transition: background 0.2s ease, transform 0.2s ease;

			&:hover {
				background: #c61f26;
				color: #ffffff;
			}
		}
	}
}

.defualt-content-info h2.first-h2 {
	margin-bottom: 30px;
}

/* Table styles
-------------------------------------------------------------- */

.table-wrap {
	width: 100%;
	overflow-x: auto;
	margin: 32px 0;
	border-radius: 16px;
	box-shadow: 0 16px 36px rgba(12, 41, 78, 0.12);
}

.outcomes-table {
	width: 100%;
	min-width: 900px;
	border-collapse: collapse;
	table-layout: fixed;
	background: #ffffff;
}

.outcomes-table th,
.outcomes-table td {
	border: 1px solid rgba(12, 41, 78, 0.14);
	padding: 16px 14px;
	text-align: left;
	vertical-align: top;
	line-height: 1.4;
	word-break: break-word;
}

.outcomes-table th {
	background: #0c294e;
	color: #ffffff;
	font-weight: 800;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.outcomes-table td {
	color: #24384f;
	font-size: 15px;
}

.outcomes-table tbody tr:nth-child(even) td {
	background: #f7f4ee;
}

.outcomes-table tbody tr:hover td {
	background: #fff8e8;
}

.average-row td {
	font-weight: 800;
	background: #f5f1e8;
	color: #0c294e;
}

.note {
	line-height: 1.5;
	margin-top: 28px;
	padding-left: 18px;
	border-left: 4px solid #c61f26;
	color: #43556b;
}

/* Mobile tweaks */
@media (max-width: 700px) {
	.outcomes-table th,
	.outcomes-table td {
		padding: 12px;
		font-size: 14px;
	}

	.table-wrap {
		border-radius: 12px;
	}
}