/*
 * JRS network map — rewritten from scratch for the jrs/network block.
 * Markers are centered on their coordinate (transform: translate(-50%,-50%))
 * instead of anchored by their top-left corner, so a marker near the map's
 * edge no longer spills past the card's border by its own width/height.
 */

.jrs2-network__map {
	position: relative;
	width: 100%;
	aspect-ratio: 4 / 3;
	padding: 24px;
	border: 1px solid var(--jrs-line);
	border-radius: 28px;
	overflow: visible;
	background: radial-gradient(circle at 50% 37%, #fff 0, #fff8f6 56%, #f7e5e4 100%);
	box-shadow: 0 18px 45px rgba(94, 57, 51, .08);
}

.jrs2-network__map-base {
	position: absolute;
	top: 10%;
	left: 12%;
	width: 76%;
	height: 80%;
	object-fit: contain;
	opacity: .9;
	filter: saturate(.78);
}

.jrs2-network__point {
	position: absolute;
	z-index: 2;
	width: 78px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--jrs-ink);
	text-align: center;
	transform: translate(-50%, -50%);
	transition: transform .25s ease;
}

.jrs2-network__point:hover,
.jrs2-network__point.is-active {
	transform: translate(-50%, -50%) translateY(-6px) scale(1.06);
}

.jrs2-network__point:focus-visible {
	outline: 3px solid var(--jrs-rose);
	outline-offset: 5px;
	border-radius: 50%;
}

.jrs2-network__point img {
	display: block;
	width: 56px;
	height: 56px;
	margin: 0 auto 6px;
	border: 3px solid #fff;
	border-radius: 50%;
	object-fit: cover;
	box-shadow: 0 7px 17px rgba(62, 46, 42, .18);
}

.jrs2-network__point span {
	display: block;
	font: 600 11px/1.1 "Bodoni Moda", var(--jrs-serif);
	letter-spacing: .04em;
	text-shadow: 0 1px 0 #fff;
	white-space: nowrap;
}

.jrs2-network__point.is-fukuoka   { left: 7.8%;  top: 70%; }
.jrs2-network__point.is-kumamoto  { left: 46.4%; top: 83%; }
.jrs2-network__point.is-yamaguchi { left: 20.1%; top: 59.8%; }
.jrs2-network__point.is-sanin     { left: 47.8%; top: 47.5%; }
.jrs2-network__point.is-shizuoka  { left: 74.4%; top: 78%; }
.jrs2-network__point.is-kanagawa  { left: 88%;   top: 62.6%; }

@media (max-width: 767px) {
	.jrs2-network__map {
		padding: 14px;
		border-radius: 22px;
	}

	.jrs2-network__point {
		width: 62px;
	}

	.jrs2-network__point img {
		width: 44px;
		height: 44px;
		margin-bottom: 4px;
		border-width: 2px;
	}

	.jrs2-network__point span {
		font-size: 9px;
	}
}
