.photo-reel-container {
	border-radius: 2px;
	display: flex;
	flex-wrap: wrap;
	height: 200px;
	overflow: hidden;
	gap: 3px;
	margin: 5px;
}

	.photo-reel {
		display: inline-block;
		position: relative;
		line-height: 0;
		overflow: hidden;
		border-radius: 2px;
		z-index: 1;
		transition-duration: 0.3s;
		height: 100%;
		min-width: 130px;
		flex: 1;
	}

		.photo-reel:hover {
			z-index: 2;
		}

		.photo-reel-container .photo-reel-container {
			margin: 0;
		}

		.photo-reel-container .photo-reel-container .photo-reel {
			min-width: auto;
			max-width: 50%;
		}

	.photo-reel-image {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition-duration: 0.3s;
	}

		.photo-reel:hover .photo-reel-image {
			transform: scale(1.1);
		}

	.photo-reel-preview {
		object-fit: cover;
		position: absolute;

		left: -9999px;
		right: -9999px;
		top: -9999px;
		bottom: -9999px;
		margin: auto;

		width: calc(100% + 40px);
		height: calc(100% + 40px);

		filter: blur(10px);
	}

.stat-container {
	display: flex;
	flex-wrap: wrap;
	min-height: 99px;
	border-radius: 2px;
}

	.stat {
		flex: 1;
		position: relative;
		padding: 25px;
		padding-left: 75px;
		box-shadow: -1px -1px 0 0 rgba(0,0,0,0.05);
		color: #333;
		transition-duration: 0.3s;
	}

		.stat:hover,
		.stat:focus {
			color: #333;
			z-index: 2;
			box-shadow: 0 0px 20px -5px rgba(0,0,0,0.3);
		}

	.stat-icon {
		position: absolute;
		border-radius: 100%;
		top: 0;
		bottom: 0;
		left: 25px;
		width: 37px;
		height: 37px;
		margin: auto;
	}

	.stat-name {
		font-size: 0.85em;
		white-space: nowrap;
	}

	.stat-value {
		font-size: 1.7em;
		line-height: 1.3em;
	}

	/*
	@media (prefers-color-scheme: dark) {

		.stat,
		.stat:hover,
		.stat:focus {
			color: #ddd;
		}

		.stat:hover,
		.stat:focus {
			box-shadow: none;
			background: rgba(255,255,255,0.03);
		}

	}
	*/

.map-container {
	overflow: hidden;
	border-radius: 2px;
	margin: 5px;
}

	.map-container a {
		position: relative;
		height: 200px;
		display: block;
	}

	.map-container a .map-image {
		width: 100%;
		height: 100%;
		transition-duration: 0.3s;
		object-fit: cover;
	}

	.map-container a:hover .map-image {
		transform: scale(1.05);
	}


@keyframes animation-heartbeat {
	0% {
		opacity: 0;
		clip-path: inset(0 100% 0 0);
	}
	70% {
		opacity: 1;
		clip-path: inset(0 0 0 0);
	}
	100% {
		opacity: 0;
		clip-path: inset(0 0 0 0);
	}
}

.icon-heartbeat {
	animation-name: animation-heartbeat;
	animation-delay: 0s;
	animation-duration: 0.6s;
	animation-iteration-count: infinite;
	position: absolute;
	top: 0;
	left: 0;
}
