/* Global Economic Impacts — custom typefaces */
@font-face {
	font-family: 'AkkuratProLight';
	src: url('assets/fonts/akkurat-light.woff') format('woff');
	font-weight: 300 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'AkkuratProBold';
	src: url('assets/fonts/akkurat-bold.woff2') format('woff2');
	font-weight: 600 700;
	font-style: normal;
	font-display: swap;
}

/* Optional heading above diagram */
.sld-geo-heading {
	font-family: 'AkkuratProBold', system-ui, sans-serif;
	font-size: 1.5rem;
	font-weight: 700;
	color: #323232;
	text-align: center;
	margin: 0 0 1.25rem;
	padding: 0;
	border: none;
	background: none;
}

/* Outer wrapper — full container width, height set by JS */
.sld-geo-infographic {
	width: 100%;
	position: relative;
	overflow: hidden;
	aspect-ratio: 1000 / 680;
	background: #ffffff;
}

/* Fixed 1000×680 canvas — scaled via transform by JS */
.sld-geo-stage {
	position: absolute;
	top: 0;
	left: 0;
	width: 1000px;
	height: 680px;
	transform-origin: top left;
	background: #ffffff;
}

/* SVG wire layer */
.sld-geo-wires {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: visible;
	pointer-events: none;
}

.sld-geo-wires line {
	transition: stroke 0.18s ease, stroke-width 0.18s ease;
}

/* Centre title */
.sld-geo-title {
	position: absolute;
	left: 340px;
	top: 330px;
	transform: translate(-50%, -50%);
	width: 236px;
	text-align: center;
	z-index: 1;
	pointer-events: none;
}

.sld-geo-title p {
	font-family: 'AkkuratProLight', system-ui, sans-serif;
	font-weight: 300;
	font-size: 23px;
	line-height: 1.34;
	color: #323232;
	margin: 0;
	text-wrap: balance;
}

/* Node: circle + icon + label */
.sld-geo-node {
	position: absolute;
	transform: translate(-50%, -50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
	width: 210px;
	cursor: pointer;
	z-index: 2;
	transition: opacity 0.18s ease;
}

.sld-geo-circle {
	width: 116px;
	height: 116px;
	border-radius: 50%;
	border: 2.4px solid #eb146e;
	background: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.sld-geo-icon {
	width: 60px;
	height: 60px;
	transition: transform 0.18s ease;
}

.sld-geo-icon svg {
	width: 100%;
	height: 100%;
	display: block;
}

.sld-geo-label {
	font-family: 'AkkuratProLight', system-ui, sans-serif;
	font-weight: 300;
	font-size: 19px;
	line-height: 1.3;
	text-align: center;
	color: #323232;
	transition: color 0.18s ease;
}

/* Hover states */
.sld-geo-node.hot .sld-geo-circle {
	background: #fdeef4;
	transform: scale(1.06);
	box-shadow: 0 12px 28px rgba(235, 20, 110, 0.22);
}

.sld-geo-node.hot .sld-geo-icon {
	transform: scale(1.08);
}

.sld-geo-node.hot .sld-geo-label {
	font-family: 'AkkuratProBold', system-ui, sans-serif;
	font-weight: 700;
	color: #eb146e;
}

.sld-geo-node.dim {
	opacity: 0.55;
}

/* Responsive: swap diagram ↔ SVG image at 767px */
.sld-geo-mobile-image {
	display: none;
	width: 100%;
	height: auto;
}
div#sld-geo-node-1 span {
    padding-left: 50px;
}
@media (max-width: 766px) {
	.sld-geo-mobile-image {
		display: block;
	}

	.sld-geo-infographic {
		display: none;
	}
}
