.phwm-map {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.55fr);
	gap: 24px;
	align-items: stretch;
	width: 100%;
	color: #132249;
}

.phwm-map *,
.phwm-map *::before,
.phwm-map *::after {
	box-sizing: border-box;
}

.phwm-map__stage,
.phwm-map__panel {
	border: 1px solid #d8e2ee;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 14px 34px rgba(19, 34, 73, 0.08);
}

.phwm-map__stage {
	min-height: 540px;
	overflow: hidden;
	background: #eef2f5;
}

.phwm-map__leaflet {
	width: 100%;
	height: 540px;
	background: #eef2f5;
}

.phwm-map .leaflet-container {
	font: inherit;
	background: #eef2f5;
}

.phwm-map .leaflet-control-zoom {
	border: 1px solid #d8e2ee;
	border-radius: 8px;
	box-shadow: 0 10px 24px rgba(19, 34, 73, 0.12);
	overflow: hidden;
}

.phwm-map .leaflet-control-zoom a {
	color: #132249;
}

.phwm-map__panel {
	padding: 24px;
	min-height: 540px;
	max-height: 540px;
	overflow: auto;
}

.phwm-map__entries {
	display: none;
}

.phwm-map__entries.is-active {
	display: block;
}

.phwm-map__entries h3 {
	margin: 0 0 14px;
	color: #132249;
	font-size: 28px;
	line-height: 1.15;
}

.phwm-map__link {
	margin: 0 0 14px;
	font-size: 14px;
	line-height: 1.4;
}

.phwm-map__link a {
	color: #1ccabd;
	text-decoration: none;
}

.phwm-map__entry-content,
.phwm-map__entry-content p,
.phwm-map__empty {
	margin: 0;
	color: #44506a;
	font-size: 15px;
	line-height: 1.55;
}

.phwm-map__entry-content ul {
	margin: 10px 0 0 20px;
	padding: 0;
}

.phwm-map__entry-content li + li {
	margin-top: 4px;
}

.phwm-map__entry-content p + p {
	margin-top: 8px;
}

.phwm-contact-email {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	max-width: 100%;
	font-size: 14px;
	line-height: 1.3;
	margin-top: 2px;
}

.phwm-contact-email-icon {
	color: #05498A;
	font-size: 12px;
	line-height: 1;
}

.phwm-contact-email a {
	color: #05498A;
	text-decoration: none;
	font-weight: 500;
	text-transform: lowercase;
}

.phwm-contact-email a:hover {
	text-decoration: underline;
}

@media (max-width: 980px) {
	.phwm-map {
		grid-template-columns: 1fr;
	}

	.phwm-map__stage,
	.phwm-map__leaflet {
		min-height: 420px;
	}

	.phwm-map__leaflet {
		height: 420px;
	}

	.phwm-map__panel {
		min-height: 0;
		max-height: none;
	}
}

@media (max-width: 560px) {
	.phwm-map__stage,
	.phwm-map__leaflet {
		min-height: 340px;
	}

	.phwm-map__leaflet {
		height: 340px;
	}

	.phwm-map__panel {
		padding: 18px;
	}
}
