.pm-map-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	width: 100%;
	border: 1px solid #e0e0e0;
	box-sizing: border-box;
}

#pm-map {
	flex: 1 1 65%;
	min-width: 280px;
	height: var(--pm-map-height, 600px);
}

.pm-sidebar {
	flex: 1 1 30%;
	min-width: 260px;
	max-height: var(--pm-map-height, 600px);
	overflow-y: auto;
	background: #fff;
}

.pm-card {
	padding: 20px;
	border-bottom: 1px solid #eee;
	cursor: pointer;
	transition: background 0.15s ease;
}

.pm-card:hover {
	background: #f7f9fc;
}

.pm-card h3 {
	margin: 0 0 8px;
	font-size: 17px;
	font-weight: 700;
	color: #1a2b5c;
}

.pm-card .pm-country {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 0 0 10px;
	font-size: 15px;
	color: #333;
}

.pm-card .pm-pin {
	font-size: 14px;
}

.pm-card .pm-more {
	display: inline-block;
	font-size: 14px;
	color: #2a5cd6;
	text-decoration: none;
	font-weight: 600;
}

.pm-card .pm-more:hover {
	text-decoration: underline;
}

.pm-empty {
	padding: 20px;
	color: #777;
}

/* Marqueur personnalisé sur la carte */
.pm-marker-icon {
	background: transparent;
	border: none;
}

.pm-pin-shape {
	width: 26px;
	height: 26px;
	background: #2a5cd6;
	border: 3px solid #fff;
	border-radius: 50% 50% 50% 0;
	transform: rotate(-45deg);
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.35);
}

.pm-popup {
	font-size: 14px;
	line-height: 1.5;
}

.pm-popup a {
	color: #2a5cd6;
}

@media (max-width: 782px) {
	#pm-map,
	.pm-sidebar {
		flex: 1 1 100%;
	}
	.pm-sidebar {
		max-height: 400px;
	}
}
