.hotspot_size {
	height: calc(5vmax + 1vmin);
	width: calc(8vmax + 1vmin);
	background-repeat: no-repeat;
	background-size: calc(8vmax + 1vmin) calc(5vmax + 1vmin);
}

.hotspot_size:hover {
	margin-top: -0.3%;
}

@media only screen and (max-width: 640px) {
	.hotspot_size {
		height: calc(8vmax + 1vmin);
		width: calc(12vmax + 1vmin);
		background-repeat: no-repeat;
		background-size: calc(12vmax + 1vmin) calc(8vmax + 1vmin);
	}
}
.uxbridge-lowerbrock {
	background-image: url(../hotspots/lowerbrock.png);
}
.uxbridge-8389brock {
	background-image: url(../hotspots/8389brock.png);
}

.info_size {
	height: calc(4vmax + 1vmin);
	width: calc(20vmax + 1vmin);
	background-repeat: no-repeat;
	background-size: calc(20vmax + 1vmin) calc(4vmax + 1vmin);
	opacity: 0.8;
}
@media only screen and (max-width: 640px) {
	.info_size {
		height: calc(12vmax + 1vmin);
		width: calc(20vmax + 1vmin);
		background-repeat: no-repeat;
		background-size: calc(20vmax + 1vmin) calc(5vmax + 1vmin);
		opacity: 0.8;
	}
}
.click_drag {
	background-image: url(../hotspots/click_drag.png);
	background-position: bottom;
}

.icon_hotspot_tooltip {
	width: calc(8vmax + 1vmin);
	transform: translate(calc(-1vmax + 1vmin), calc(-7vmax + 1vmin));
}
@media only screen and (max-width: 640px) {
	.icon_hotspot_tooltip {
		width: calc(12vmax + 1vmin);
		transform: translate(calc(-2vmax + 1vmin), calc(-10vmax + 1vmin));
	}
}
.icon_top_left {
	transform: translate(calc(-1vmax + 1vmin), calc(-3vmax + 1vmin));
}
.icon_top_right {
	transform: translate(calc(6vmax + 1vmin), calc(-3vmax + 1vmin));
}
.icon_left {
	transform: translate(calc(2.5vmax + 1vmin), calc(-3vmax + 1vmin));
}
.icon_right {
	transform: translate(calc(8.5vmax + 1vmin), calc(3vmax + 1vmin));
}
.icon_top_left i,
.icon_top_right i,
.icon_left i,
.icon_right i {
	font-size: 4vmax;
	color: #1C5828;
	cursor: pointer;
}
.icon_top_left:hover,
.icon_top_right:hover,
.icon_left:hover {
	filter: brightness(80%);
}
@media only screen and (max-width: 640px) {
	.icon_top_left {
		transform: translate(calc(0vmax + 1vmin), calc(-5vmax + 1vmin));
	}
	.icon_top_right {
		transform: translate(calc(9vmax + 1vmin), calc(-5vmax + 1vmin));
	}
	.icon_left {
		transform: translate(calc(4.7vmax + 1vmin), calc(-5vmax + 1vmin));
	}
	.icon_right {
		transform: translate(calc(12.5vmax + 1vmin), calc(4vmax + 1vmin));
	}
	.icon_top_left i,
	.icon_top_right i,
	.icon_left i,
	.icon_right i {
		font-size: 6vmax;
	}
}

.hoverEffect {
	z-index: 2;
	filter: brightness(120%);
}
.hoverReduceBrightness {
	filter: brightness(60%);
}

/* The Modal (background) */
.modal-viewer {
	display: none; /* Hidden by default */
	position: fixed; /* Stay in place */
	z-index: 1; /* Sit on top */
	padding-top: 50px; /* Location of the box */
	left: 0;
	top: 0;
	width: 100%; /* Full width */
	height: 100%; /* Full height */
	overflow: auto; /* Enable scroll if needed */
	background-color: rgba(0, 0, 0, 0.8); /* Black w/ opacity */
}
@media only screen and (max-width: 640px) {
	.modal-viewer {
		padding-top: 50%;
	}
}

.modal_info_div {
	position: relative;
	display: flex;
	width: fit-content;
	max-width: 60%;
	padding: 30px;
	height: fit-content;
	margin: auto;
	color: rgb(255, 255, 255);
	/* background-color: #cf2626; */
	background: linear-gradient(180deg, rgb(235, 45, 61) 60%, rgb(105, 34, 34) 100%);
	border-radius: 10px;
	border: #000 solid 3px;
}
.modal_info_span {
	font-family: Arimo;
	font-size: 16px;
	text-align: justify;
	line-height: 25px;
}
@media only screen and (max-width: 640px) {
	.modal_info_div {
		max-width: 90%;
	}
	.modal_info_span {
		font-size: 14px;
		/* line-height: 10px; */
	}
}

/* Modal Content (Image) */
.modal-content {
	margin: auto;
	display: block;
	height: 90%;
	width: 80%;
	border: none;
}

.img-content {
	margin: auto;
	display: block;
	border: none;
	width: 90%;
	position: relative;
	height: auto;
	max-width: 1200px;
}
@media only screen and (max-width: 850px) {
	.img-content {
		max-height: 90%;
		width: auto;
	}
}
@media only screen and (max-width: 640px) {
	.img-content {
		max-width: 100%;
		height: auto;
	}
}

/* Caption of Modal Image (Image Text) - Same Width as the Image */
#caption {
	margin: auto;
	display: block;
	width: 80%;
	max-width: 900px;
	text-align: center;
	color: #ffffff;
	font-weight: bold;
	padding: 10px 0;
	height: 150px;
}

/* The Close Button */
.close {
	position: absolute;
	top: 10px;
	right: 25px;
	color: white;
	font-size: 40px;
	font-weight: bold;
	transition: 0.3s;
}

.close:hover,
.close:focus {
	color: #999;
	text-decoration: none;
	cursor: pointer;
}

.custom-hotspot-circle {
	height: calc(1.2vmax + 1vmin);
	width: calc(1.2vmax + 1vmin);
	background-color: #ea1d2e;
	border-radius: 50%;
}

@media only screen and (max-width: 640px) {
	.custom-hotspot-circle {
		height: calc(2vmax + 1vmin);
		width: calc(2vmax + 1vmin);
	}
}
.custom-hotspot-line-top {
	width: max-content;
	color: rgb(255, 255, 255);
	font-size: 1vmax;
	transform: translate(calc(0.3vmax + 1vmin), calc(-41.4vmax + 1vmin));
	margin-left: -145.5px;
	/* background: #fff; */
	background: linear-gradient(180deg, rgb(235, 45, 61) 60%, rgb(105, 34, 34) 100%);
	border: rgb(0, 0, 0);
	border-style: solid;
	border-radius: 10px;
	padding: 10px;
    line-height: 2.25vmax;

	transition-property: margin;
	transition-timing-function: ease-in-out;
	transition-duration: 0.4s;
}

.custom-hotspot-line-top:hover {
	margin-top: -30%;
}

.custom-hotspot-line-top span {
    color: rgb(255, 255, 255);
    font-size: 1.15vmax;
    font-weight: bold;
}

.custom-hotspot-line-top i {
    position: absolute;
    right: 0%;
    color: rgb(255, 255, 255);
}

.custom-hotspot-line-top a {
    text-decoration: none;
    color: rgb(255, 255, 255);
    display: flex;
    flex-direction: row;
    align-items: center;
    font-size: 1vmax;
}

div.custom-hotspot2 div {
	position: absolute;
	cursor: default;
}
div.custom-hotspot2:hover div {
	visibility: visible;
	z-index: 3;
}

div.tooltipName span {
	visibility: hidden;
	position: absolute;
	border-radius: 8px;
	border: #000 3px solid;
	background: linear-gradient(180deg, rgb(235, 45, 61) 60%, rgb(126, 32, 32) 100%);
	color: rgb(255, 255, 255);
	text-align: center;
	max-width: 200px;
	padding: 5px 15px;
	cursor: default;
	z-index: 99;
}
div.tooltipName:hover span {
	visibility: visible;
}
div.tooltipName:hover span:after {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-width: 10px;
	border-style: solid;
	border-color: rgb(0, 0, 0) transparent transparent transparent;
	bottom: -20px;
	left: -10px;
	margin: 0 50%;
}

/* The Close Button */
.close-info {
	color: black;
	position: absolute;
	top: 2%;
	right: 2%;
	font-size: 35px;
	font-weight: bold;
}

.close-info:hover,
.close-info:focus {
	color: #999;
	text-decoration: none;
	cursor: pointer;
}

.visible {
	visibility: visible;
}
.hidden {
	visibility: hidden;
}
