/* reset styles */
html{line-height:1.5;-webkit-text-size-adjust:100%;width:100%;height:100%;padding:0}body{margin:0;width:100%;height:100%;padding:0}main{display:block}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.5;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}#radarPath,path.leaflet-interactive{stroke-width:0!important}


* {
	--colorVioletNormal: #9845cb;
	--colorVioletNormalSemi: rgba(152, 69, 203, 0.5);
	--colorVioletDark: #64379F;
	--colorVioletLight: #ddacf5;
	--colorBlue: #244271;
	--colorRed: #CC0000;
	--colorBlack: #2D2926;
	--shadowOutline: 0 0 0 4px rgba(255,255,255,0.5);
	--loaderRing:url('data: image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" stroke="%239845cb" width="38" height="38" viewBox="0 0 38 38" stroke-opacity="1"><g fill="none" fill-rule="evenodd"><g stroke-width="2" transform="translate(1 1)"><circle cx="18" stroke-opacity=".5" r="18" cy="18"/><path d="M36 18c0-9.94-8.06-18-18-18"><animateTransform from="0 18 18" attributeName="transform" to="360 18 18" repeatCount="indefinite" dur="1s" type="rotate"/></path></g></g></svg>');
	--mobileMenuHeight:60px;
}


/* Scrollbars */
* {
	scrollbar-width: thin;
	scrollbar-color: var(--colorVioletNormal) var(--colorVioletDark);
}

*::-webkit-scrollbar {
	width: 5px;
	background-color: var(--colorVioletDark);
}

*::-webkit-scrollbar-track {
	background: var(--colorVioletDark);
}

*::-webkit-scrollbar-thumb {
	background-color: var(--colorVioletNormal);
}

/* Scrollbars */

.ggskin,
.menuButtonText,
.menuLevelCounter,
.menuLevel02Description,
.loaderButton,
.loaderInfoText,
.loaderCopyright,
.startButton {
	font-family: 'Open Sans', sans-serif !important;
	font-size: 0.8rem;
}

.blur {
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}

.delay {
	transition-delay: 0.3s !important;
}

.logo svg{
	position: absolute;
	top:0;
	left:50%;
	transform: translateX(-50%);
}
.buttonPrimary {
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	box-shadow: var(--shadowOutline);
	transition: all 0.3s ease !important;
}

.buttonSecondary {
	transition: all 0.3s ease !important;
}

body:not(.mobile) .buttonSecondary:hover>div {
	transition: all 0.3s ease !important;
	box-shadow: 0 0 0 4px var(--colorVioletNormalSemi);
}

body:not(.mobile) .buttonPrimary:hover {
	background-color: var(--colorVioletNormal) !important;
	box-shadow: 0 0 0 4px var(--colorVioletNormalSemi);
}

.startButton {
	box-shadow: 0 0 0 4px var(--colorVioletNormalSemi);
}

body:not(.mobile) .startButton:hover {
	box-shadow: var(--shadowOutline);
}

.bottomGradient {
	background: linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%) !important;
}


/* Bottom Navigation */
.categoryTag {
	display: none !important;
}

.categoryName {
	position: relative !important;
	display: flex;
	align-items: center;
}
.categoryName>div{
	text-align: right !important;
	margin-right:10px;
	line-height: 1;
	padding: 10px 0 !important;
}
.categoryNameTitle{
	font-weight: 700;
	text-transform: uppercase;
}
.categoryCloner {
	width: auto !important;
	left: auto !important;
	top: auto !important;
}

.categoryCloner>div {
	right: 0px !important;
	bottom: 0 !important;
	display: flex !important;
	top: auto !important;
	left: auto !important;
	flex-direction: row-reverse;
	width: auto !important;
	height: 60px !important;
	align-items: center;
}

.nodeCloner {
	display: flex !important;
	width: auto !important;
	left: auto !important;
	top: auto !important;
	position: relative !important;
}

.nodeCloner>div {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	margin: 0 5px !important;
}

.nodeDot {
	transition: all 0.3s ease !important;
}

.nodeDot:hover {
	box-shadow: var(--shadowOutline);
}

body.mobile .nodeCloner {
	display: none !important;
}

/* Bottom Navigation */



/* Menu */
.menuRightTopButtons {
	display: flex !important;
	flex-direction: row-reverse;
	justify-content: space-evenly;
}

.menuRightTopButtons>div {
	left: auto !important;
	top: auto !important;
	transform: none !important;
	position: relative !important;
	width: auto !important;
}

/* .nodeTitle{
	transition: all 0.3s ease !important;
}
.nodeTitle:hover{
	transition: all 0.0s ease !important;
} */
.nodeImage {
	border: solid 1px rgba(255, 255, 255, 0.8);
	overflow: hidden !important;
}

.nodeImage>img {
	transition: all 0.3s ease;
}

.nodeImage.active {
	box-shadow: var(--shadowOutline) !important;
}

.nodeImage.active>img {
	transform: scale(120%);
}

.nodeImage:not(.active) {
	-webkit-filter: grayscale(1);
	filter: grayscale(1);
	opacity: 0.8;
}

/* Menu */

/* Map */
.leaflet-control-zoom.leaflet-bar.leaflet-control {
	border: solid 1px white;
	border-radius: 0;
}

.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
	color: white !important;
	background-color: var(--colorVioletDark) !important;
	transition: background 0.3s ease;
}

body:not(.mobile) .leaflet-control-zoom-in:hover,
body:not(.mobile) .leaflet-control-zoom-out:hover {
	background-color: var(--colorVioletNormal) !important;
}

.leaflet-control-zoom-in.leaflet-disabled,
.leaflet-control-zoom-out.leaflet-disabled {
	/* /* background-color: gray !important; */
	/* color:silver !important; */
	/* opacity: 0.5 !important; */
}

.mapPinSvg {
	background-color: var(--colorVioletNormal) !important;
}

.mapPin {
	cursor: pointer !important;
	border:solid 1px white;
}
.leaflet-marker-pane>div:hover{
	position: absolute;
	z-index: 9;
}
.mapPinHover{

}
.mapPinHoverText{	
	box-shadow: var(--shadowOutline);
}
.mapPinHoverText>div{

}
.mapPinInside {
	transform: scale(50%);
	-webkit-animation: animationInside 4s infinite linear;
	animation: animationInside 4s infinite linear;
}

.mapPinOutside, .htNodeAnimation{
	-webkit-animation: animationOutside 4s infinite linear;
	animation: animationOutside 4s infinite linear;
}
.mapPinImage{
	box-shadow:0 0 0 5px var(--colorVioletNormal);
	background-color: gray;
}
@keyframes animationInside{0%{opacity:0;transform:scale(100%)}100%{transform:scale(0%);opacity:1}}@-webkit-keyframes animationInside{0%{opacity:0;transform:scale(100%)}100%{transform:scale(0%);opacity:1}}@keyframes animationOutside{0%{transform:scale(100%);opacity:1}100%{transform:scale(300%);opacity:0}}@-webkit-keyframes animationOutside{0%{transform:scale(100%);opacity:1}100%{transform:scale(300%);opacity:0}}

/* Map */

/* Tooltips */
.tippy-box{
	font-family: 'Open Sans', sans-serif !important;
	padding: 10px;
}
/* Tooltips */

/* Hotspots */
.htInfoSquare, .popupCloseButton{
	transition: all 0.3s ease !important;
}
body:not(.mobile) .htInfoSquare.hover, body:not(.mobile) .popupCloseButton.hover{
	box-shadow: var(--shadowOutline);
	
}

/* Hotspots */

/* Popup */
.popupText{
	box-shadow: var(--shadowOutline);
	border:solid 1px white !important;
	max-width: 800px;
	left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
	max-height: 90%;
    overflow: auto;
}
.popupText h2{
	font-weight: 300 !important;
    text-transform: uppercase;
	font-size: 1.5em !important;
	text-align: center;
	margin:0 !important;
}
.imagePlaceHolder{
	width:100%;
	min-height:100px;
	background-image: var(--loaderRing);
	background-repeat: no-repeat;
	background-position: center;
}
.imagePlaceHolder img{
	width:100%;
}
/* Popup */





/* Vertical mobile */
@media only screen and (max-width: 480px) {
	.nodeNameTitle{
		display: none !important;
	}
	.menuLeft{
		left:0 !important;
		top:0 !important;
		height: var(--mobileMenuHeight) !important;
		width:100% !important;
	}
	.menuLeftTop{
		height:100% !important;
		width:70% !important;
		top:0px !important;
		left:0px !important;
	}
	.menuLeftBottom{
		height:100% !important;
		width:30% !important;
		top:0px !important;
		left:70% !important;
	}
	.menuLogoAnimated{
		width:58px !important;
		height:40px !important;
		left:10px !important;
		top:10px !important;
	}
	.menuIcon{
		left:auto !important;
		right:10px !important;
		top: 10px !important;
		bottom:auto !important;
	}
	.mapIcon{
		top: 10px !important;
		bottom:auto !important;
	}
	.mapContainer{
		width:100% !important;
		height:calc(100% - var(--mobileMenuHeight)) !important;
		top:var(--mobileMenuHeight) !important;
		left:0 !important;
		transform-origin: top !important;
	}
	.menuRight{
		width:100% !important;
		height:calc(100% - var(--mobileMenuHeight)) !important;
		top:var(--mobileMenuHeight) !important;
		left:0 !important;
		transform-origin: top !important;
	}
}

/* Horizontal mobile */
@media only screen and (max-height: 480px) {
	.menuRightTop, .menuRightBottom{
		display: none !important;
	}
	.menuScrollArea{
		top:0 !important;
		height:100% !important;
	}
}
/* V or H Mobile */
@media only screen and (max-width: 480px), only screen and (max-height:480px) {
	.popupText>div{
		padding: 20px !important;
	}
	.logo{
		transform:scale(70%);
		transform-origin: bottom !important;
	}
	.startButton{
		top:10px !important;
	}
}


/* Tabindex */
.mapPin:focus .mapPinImage, .mapPin:focus .mapPinHoverText{
	transform: scale(100%) !important;
	opacity: 1 !important;
	visibility: visible !important;
}

.hotspot:focus .htInfoSquare, .popupCloseButton:focus{
	box-shadow: var(--shadowOutline);
	background-color: var(--colorVioletDark) !important;
	background-color: var(--colorRed) !important;
}
.hotspot:focus .mapPinImage, .hotspot:focus .mapPinHoverText{
	transform: scale(100%) !important;
	opacity: 1 !important;
	visibility: visible !important;
}
.menuLeftTop:focus{
	background-color: var(--colorVioletNormal) !important;
}
.menuLeftBottom:focus{
	background-color: var(--colorVioletDark) !important;
}
.startButton:focus{
	box-shadow: var(--shadowOutline);
}
.startButton:focus>div{
	background-color: var(--colorVioletDark) !important;
}
.nextButton:focus, .prevButton:focus{
	background-color: var(--colorVioletNormal) !important;
}
.leaflet-control-zoom-in:focus, .leaflet-control-zoom-out:focus{
	background-color: var(--colorVioletNormal) !important;
}
.menuCategoryName:focus{
	background-color: var(--colorVioletNormal) !important;
}
.nodeTitle:focus{
	background-color: var(--colorVioletDark) !important;
}
.nodeTitle:focus>div{
	color:white !important;
}
/* Tabindex */