/* The map is a full-bleed editorial section; the source SVG stays undistorted. */
.dealers-page .dealers-page__map-section {
	padding: 0;
	background: #f7fafb;
}

.dealers-page .dealers-page__map-figure {
	position: relative;
	width: 100%;
	height: clamp(26.875rem, 31vw, 30rem);
	overflow: hidden;
	margin: 0;
	background: #f7fafb;
}

/* Give the page intro a deliberate breathing space before the full-bleed map. */
.dealers-page .internal-page-header--dealers {
	padding-bottom: clamp(2.5rem, 3vw, 3.5rem);
}

.dealers-page .dealers-map-canvas {
	position: absolute;
	inset: 0;
	overflow: hidden;
	background: #f7fafb;
}

/* The slightly zoomed-out, right-shifted stage leaves geographic breathing
 * room inside the compact full-bleed section without changing coordinates. */
.dealers-page .dealers-map-canvas__stage {
	position: absolute;
	top: 50%;
	left: calc(50% + clamp(1rem, 3vw, 3.5rem));
	z-index: 2;
	width: min(100%, 56rem);
	aspect-ratio: 16 / 9;
	transform: translate(-50%, -52.5%);
}

.dealers-page .dealers-map-canvas__stage::before {
	position: absolute;
	inset: 0;
	z-index: 1;
	content: "";
	pointer-events: none;
	background: linear-gradient(90deg, #f7fafb 0%, rgb(247 250 251 / 72%) 18%, rgb(247 250 251 / 38%) 34%, rgb(247 250 251 / 14%) 48%, transparent 60%);
}

.dealers-page .dealers-map-canvas__stage::after {
	position: absolute;
	inset: 0;
	z-index: 1;
	content: "";
	pointer-events: none;
	background: linear-gradient(90deg, transparent 70%, rgb(247 250 251 / 34%) 88%, #f7fafb 100%);
}

@media (width > 68rem) {
	/* Keep the source scale readable while moving its right edge toward the
	 * site's main content boundary. */
	.dealers-page .dealers-map-canvas__stage {
		left: calc(50% + clamp(8rem, 14vw, 14rem));
	}
}

.dealers-page .dealers-page__map-figure .dealers-map-canvas__geography {
	position: absolute;
	inset: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: fill;
}

.dealer-map-marker {
	position: absolute;
	left: var(--map-x);
	top: var(--map-y);
	z-index: 3;
}

.dealer-map-marker__dot {
	position: absolute;
	left: 0;
	top: 0;
	width: 0.8rem;
	height: 0.8rem;
	border: 0.15rem solid #fff;
	border-radius: 50%;
	background: var(--ugur-brand-primary);
	box-shadow: 0 0 0 1px rgb(13 92 171 / 22%);
	transform: translate(-50%, -50%);
}

.dealer-map-marker__label {
	position: absolute;
	width: max-content;
	color: var(--ugur-ink);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.25;
	white-space: nowrap;
}

.dealer-map-marker--minsk .dealer-map-marker__label {
	left: -0.7rem;
	top: -0.65rem;
	transform: translate(-100%, -100%);
}

.dealer-map-marker--moskva .dealer-map-marker__label {
	left: 0.7rem;
	top: 0.65rem;
}

.dealer-map-marker--kazan .dealer-map-marker__label {
	left: 0.7rem;
	top: 0.65rem;
}

.dealer-map-marker--volgograd .dealer-map-marker__label {
	left: 0.7rem;
	top: 0.65rem;
}

.dealer-map-marker--pyatigorsk .dealer-map-marker__label {
	left: -0.7rem;
	top: -0.65rem;
	transform: translate(-100%, -100%);
}

.dealers-page .dealers-page__map-note {
	position: absolute;
	display: block;
	top: 50%;
	left: max(var(--ugur-gutter), calc((100% - var(--ugur-max)) / 2));
	z-index: 4;
	width: min(24.375rem, 31vw);
	max-width: none;
	margin: 0;
	padding: 0;
	transform: translateY(-50%);
	color: var(--ugur-ink);
	font-size: clamp(1.875rem, 2.2vw, 2rem);
	font-weight: 500;
	line-height: 1.2;
}

.dealers-page .dealers-page__map-note p {
	max-width: 100%;
	margin: 0;
}

@media (width <= 52rem) {
	.dealers-page .dealers-page__map-figure {
		height: auto;
		max-width: none;
		overflow: visible;
	}

	.dealers-page .dealers-map-canvas {
		position: relative;
		width: 100%;
		height: auto;
		min-height: 0;
		overflow: hidden;
		padding-top: 56.25%;
	}

	.dealers-page .dealers-map-canvas__stage {
		top: 0;
		left: 0;
		width: 100%;
		transform: none;
	}

	.dealers-page .dealers-map-canvas__stage::before {
		bottom: auto;
		height: 10rem;
		background: linear-gradient(180deg, #f7fafb 0%, rgb(247 250 251 / 88%) 48%, transparent 100%);
	}

	.dealers-page .dealers-map-canvas__stage::after {
		display: none;
	}

	.dealer-map-marker__label {
		font-size: clamp(0.72rem, 2.2vw, 0.875rem);
	}

	.dealers-page .dealers-page__map-note {
		position: relative;
		top: auto;
		left: auto;
		width: min(100%, 32rem);
		padding: 2rem var(--ugur-gutter) 1.5rem;
		transform: none;
		font-size: clamp(1.5rem, 5.8vw, 1.875rem);
	}
}
