/* GALAA Estate — Map */

.gae-map {
	width: 100%;
	border-radius: var(--gae-radius);
	overflow: hidden;
	border: 1px solid var(--gae-border);
}

/* Half-map layout */
.gae-halfmap {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	height: calc(100vh - 100px);
}
@media (min-width: 1024px) {
	.gae-halfmap { grid-template-columns: 1fr 1fr; }
}
.gae-halfmap .gae-map { height: 100%; border-radius: 0; }
.gae-halfmap-list {
	overflow-y: auto;
	padding: 1rem;
}

/* Pin popup */
.leaflet-popup-content { margin: 0; }
.gae-pin-popup {
	padding: 0;
	min-width: 200px;
}
.gae-pin-popup img { width: 100%; height: 120px; object-fit: cover; }
.gae-pin-popup-body { padding: .75rem; }
.gae-pin-popup-title { font-size: .95rem; font-weight: 600; margin: 0 0 .25rem; }
.gae-pin-popup-title a { text-decoration: none; color: var(--gae-text); }
.gae-pin-popup-price { color: var(--gae-primary); font-weight: 700; }

/* Price pin */
.gae-price-pin {
	background: var(--gae-primary);
	color: #fff;
	padding: 4px 8px;
	border-radius: 4px;
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
	box-shadow: 0 2px 6px rgba(0,0,0,.3);
}
.gae-price-pin::after {
	content: '';
	position: absolute;
	bottom: -6px;
	left: 50%;
	transform: translateX(-50%);
	border: 6px solid transparent;
	border-top-color: var(--gae-primary);
}

/* Google Maps link buttons under a map */
.gae-map-actions { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: .85rem; }
.gae-gmaps-link, .gae-gmaps-dir { display: inline-flex; align-items: center; gap: .45rem; }
