/*
 * Expedition SC — Zone Map
 *
 * Every rule is scoped under .exscmap on purpose. Elementor's kit stylesheet
 * targets things like ".elementor-kit-6 button" and ".elementor-kit-6 a",
 * which outrank a single class. Scoping gives us two classes and wins
 * cleanly, without needing !important anywhere.
 */

.exscmap {
	display: flex;
	flex-wrap: wrap;
	gap: 34px;
	align-items: flex-start;
}

.exscmap .exscmap__panel { flex: 1 1 380px; min-width: 0; }
.exscmap .exscmap__side  { flex: 0 0 420px; max-width: 100%; }

/* ---------------------------------------------------------------- panel */

.exscmap .exscmap__zone { display: none; }

.exscmap .exscmap__zone.is-active {
	display: block;
	animation: exscmapFade .28s ease;
}

@keyframes exscmapFade {
	from { opacity: 0; transform: translateY(6px); }
	to   { opacity: 1; transform: none; }
}

.exscmap .exscmap__photo {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: 14px;
	margin: 0 0 18px;
	display: block;
}

.exscmap .exscmap__badge {
	display: inline-block;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: 1.1px;
	padding: 8px 14px;
	border-radius: 100px;
	margin: 0 0 12px;
}

.exscmap .exscmap__name {
	margin: 0 0 10px;
	color: var(--e-global-color-primary, #1B3A5C);
}

.exscmap .exscmap__desc {
	margin: 0 0 16px;
	line-height: 1.7;
	color: var(--e-global-color-text, #52606D);
}

.exscmap .exscmap__chips {
	list-style: none;
	margin: 0 0 22px;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.exscmap .exscmap__chips li {
	margin: 0;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	padding: 8px 12px;
	border-radius: 100px;
	background: var(--e-global-color-sand, #E8DCC8);
	color: var(--e-global-color-primary, #1B3A5C);
}

/* The panel button. Elementor colours every <a> from the kit, so the
   colour is restated here at a specificity that beats it. */
.exscmap .exscmap__btn,
.exscmap a.exscmap__btn:link,
.exscmap a.exscmap__btn:visited {
	display: inline-block;
	text-decoration: none;
	color: #fff;
	background: var(--e-global-color-secondary, #D4764E);
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	padding: 14px 28px;
	border: 0;
	border-radius: 100px;
	transition: transform .12s ease, filter .12s ease;
}

.exscmap a.exscmap__btn:hover,
.exscmap a.exscmap__btn:focus {
	color: #fff;
	text-decoration: none;
	filter: brightness(1.07);
}

.exscmap a.exscmap__btn:active { transform: scale(.97); }

/* ------------------------------------------------------------------ map */

.exscmap .exscmap__figure {
	position: relative;
	border-radius: 16px;
	overflow: hidden;
	margin: 0 0 14px;
	box-shadow: 0 8px 30px rgba(20, 33, 61, .14);
}

.exscmap .exscmap__base {
	width: 100%;
	height: auto;
	display: block;
}

.exscmap .exscmap__svg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.exscmap .exscmap__shape {
	fill: transparent;
	stroke: transparent;
	stroke-width: 2;
	cursor: pointer;
	transition: fill .15s ease, stroke .15s ease;
}

.exscmap .exscmap__shape:hover {
	fill: color-mix(in srgb, var(--c) 22%, transparent);
	stroke: var(--c);
}

.exscmap .exscmap__shape.is-active {
	fill: color-mix(in srgb, var(--c) 30%, transparent);
	stroke: var(--c);
	stroke-width: 3;
}

.exscmap .exscmap__tip {
	position: absolute;
	bottom: 12px;
	left: 50%;
	transform: translateX(-50%);
	padding: 7px 16px;
	border-radius: 100px;
	color: #fff;
	white-space: nowrap;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	pointer-events: none;
	box-shadow: 0 3px 10px rgba(0, 0, 0, .22);
}

/* ------------------------------------------------------------ zone list */

.exscmap .exscmap__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.exscmap .exscmap__list li {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Elementor styles every <button> from the kit — orange background, white
   text, uppercase. All of it is reset here. */
.exscmap .exscmap__row,
.exscmap button.exscmap__row {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 12px;
	text-align: left;
	cursor: pointer;
	margin: 0;
	padding: 12px 15px;
	border: 1.5px solid transparent;
	border-radius: 12px;
	background: transparent;
	background-image: none;
	box-shadow: none;
	font-family: inherit;
	font-size: inherit;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: normal;
	text-transform: none;
	color: inherit;
	transition: background .15s ease, border-color .15s ease;
}

.exscmap button.exscmap__row:hover {
	background: color-mix(in srgb, var(--c) 8%, transparent);
	box-shadow: none;
}

.exscmap button.exscmap__row.is-active {
	background: color-mix(in srgb, var(--c) 11%, transparent);
	border-color: color-mix(in srgb, var(--c) 38%, transparent);
}

.exscmap .exscmap__dot {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--c);
	flex: 0 0 auto;
}

.exscmap button.exscmap__row.is-active .exscmap__dot {
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--c) 25%, transparent);
}

.exscmap .exscmap__rowname {
	flex: 1 1 auto;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	color: var(--e-global-color-primary, #14213D);
}

.exscmap button.exscmap__row.is-active .exscmap__rowname { color: var(--c); }

.exscmap .exscmap__count {
	flex: 0 0 auto;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	color: var(--c);
	text-transform: none;
	letter-spacing: normal;
}

/* ---------------------------------------------------------------- focus */

.exscmap .exscmap__shape:focus-visible,
.exscmap button.exscmap__row:focus-visible {
	outline: 3px solid var(--c);
	outline-offset: 2px;
}

/* ----------------------------------------------------------- responsive */

@media (max-width: 1024px) {
	.exscmap .exscmap__side { flex: 1 1 100%; }
}

@media (max-width: 600px) {
	.exscmap { gap: 24px; }
	.exscmap button.exscmap__row { padding: 11px 13px; }
	.exscmap .exscmap__rowname { font-size: 13px; }
}

/* Browsers without color-mix get a readable fallback. */
@supports not (color: color-mix(in srgb, red 50%, transparent)) {
	.exscmap button.exscmap__row.is-active {
		background: rgba(0, 0, 0, .04);
		border-color: rgba(0, 0, 0, .12);
	}
	.exscmap .exscmap__shape:hover,
	.exscmap .exscmap__shape.is-active {
		fill: var(--c);
		fill-opacity: .28;
	}
}
