@import url("fonts/ptsans/style.css");
@import url("fonts/csicons/style.css");

body {
	padding: 0;
	margin: 0;
	font-family: 'PTSans';
	font-size: 100%;
	background: lightgray;
}
html, body, #map {
	height: 100%;
}

html {
	font-size: 1em;
}

*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; 
}


h2,h3 {
	font-family: 'PTSansNarrowBold';
	font-size: 1.6em;
	font-weight: normal;
}

h3 {
	font-size: 1.4em;
}

a {
	text-decoration: none;
	color: #028e9b; 

}

.supportbox {
	padding: 5px; 
	border: 1px solid rgba(2, 142, 155, 1); 
	text-align: center;
	font-weight: bold;
}

/* Button style
------------------*/

.button {
	padding: 7px 10px 2px 10px;
	background-color: rgba(2, 142, 155, 1);
	color: white;
	border: none;
	font-family: 'PTSansNarrowBold';
	font-size: 1em;
}

a.button {

}

.button {
	-moz-box-shadow:    	0px 0px 2px 0px gray;
	-webkit-box-shadow:  	0px 0px 2px 0px gray;
	box-shadow:          	0px 0px 2px 0px gray;
}



.button:hover,
.button:active {
	opacity: 0.6;
	cursor: pointer;
}

.button.active {
	background: white;
	color: black;
}


/* Header 
-------------------*/

.header {
	position: absolute;
	height: 60px;
	top: 0;
	left: 0;
	z-index: 500;
	width: 100%;
	background-color: rgba(2, 142, 155, 0.8);
	font-size: 1.1em;
	z-index: 1600;
}

.breadcrumb {
	text-align: left;
	padding: 5px;
	margin: 12px 0px 0 60px;
	width: 100%;
	max-width: 80%;
	font-family: 'PTSansNarrowBold';
	color: white;
	font-size: 1.2em;
}

.breadcrumb a {
	color: lightgray;
}

.breadcrumb a:hover,
.breadcrumb a:active {
	color: rgba(2, 142, 155, 1);
}

.breadcrumb br {
	display: none;
}

#logo {
	position: absolute;
	z-index: 2000;
	width: 40px;
	top: 10px;
	left: 10px;
	color: white !important;
}



.toggle_markerbox {
	position: absolute;
	right: 70px;
	top: 10px;

}

.zoomlink {
	padding: 6px 6px 0px 6px;
	position: absolute;
	right: 10px;
	top: 70px;
}


/* Main menu 
-----------------*/

#menu {
	position: absolute;
	top: 0;
	right: 0;
	width: 250px;
	display: block;

}

#menu .menu_button {
	z-index: 1000;
	width: 60px;
	height: 60px;
	right: 0px;
	top: 0px;
	position: absolute;
	text-align: center;
	display: block;
	font-size: 1.5em;
}

#menu ul {
	position: absolute;
	top: 70px;
	right: 10px;
	display: none;
	padding: 0;
	margin: 0px 0px 0 0;
	text-align: left;
	list-style: none;
}

#menu ul li {

}

#menu a {
	margin-bottom: 10px;
	display: block;
}


#menu a.active {

}

#menu i {
	font-size: 0.8em;
}

/* Page content 
-----------------*/

.page {
	z-index: 1500;
  max-width: 50%;
  margin: auto;
  position: absolute;
	top: 100px;
	left: 25%;
  background: white;
  padding: 1.5em;
  display: block;
	opacity: 0.8;
	box-shadow: 0px 0px 3px gray;
	font-size: 1em;
}

.page h2,
.page h3 {
	margin: 0;
}
.page h3 {
	margin-bottom: 8px;
	margin-top: 20px !important;
}
.page p {
	margin: 0 0 10px 0;
}




.page ol {
	margin: 0 0 20px 0;
	padding: 0;
}

.page ol li {
	list-style: none;
	line-height: 1.8em;
	padding-left: 25px;
	position: relative;
}

.page ol li button {
	text-align: left;
	display: inline !important;


}

.page ol li img {
	width: 20px;
	position: absolute;
	top: 0.2em;
	left: 0px;
}


/* Tour list 
-----------------*/

ul.tourlist {
	display: block;
	padding: 0;
	margin: 0;
	list-style: none;
	z-index: 1500;
}

ul.tourlist h3{
margin: 0;
}

.tourlist  h4 {
	margin: 0;
	font-weight: 600;
	font-family: 'PTSans';
}

ul.tourlist li > * {
	color: white !important;
}

.tourlist li  {
	margin-bottom: 10px !important;
	padding: 0;
}

.tourlist .tourlist_link {
	position: relative;
	display: block;
	padding: 10px 20px 30px 20px;
}


.tourlist .tourlist_link:hover,
.tourlist .tourlist_link:active {
	opacity: 0.6;
}

.tourlist .tourlist_link h4 {
	margin: 0;
	font-weight: 600;
	font-family: 'PTSans';
}

.tourlist .tourlist_link p {
	font-family: 'PTSans';
	font-weight: bold;
	font-size: 0.9em;
}



.tourlist .linkicon {
	position: absolute;
	top: 40%;
	right: 20px;
	font-size: 1.5em;
}

.tourlist .tourlist_link-special {
	border: 8px solid orange;
	padding-bottom: 55px;
}

.tourlist .tourlist_link-special .linkicon {
	color: orange;
	top: 30%;
}

.tourlist .tourlist_specialtext {
	padding: 12px 0 0px 0;
	margin: 0;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	background:orange;
	color: black;
	font-size: 1em !important;
	width: 100%;
	text-transform: uppercase;
	text-align: center;
}

/* Legend list 
-----------------*/

.legend {
	margin: 0px 0 0 0;
	padding: 0;
}

.legend li {
	margin: 0;
	padding: 0;
	list-style: none;
	line-height: 1.4em;
}

.legend li {
	position: relative;
	margin-bottom: 20px;
}

.legend li.legend_one {
	padding-left:  50px;
}

.legend li.legend_two {
	padding-left:  90px;

}

.legend li img {
	position: absolute;
	top: 0px;
	left: 0;
}


/* locations dialog 
--------------------*/

.markerbox {
	z-index: 1603;
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	max-width: 30%;
	height: 100vh;

	background-color:rgba(255, 255, 255, 0.9);

	padding: 0px 20px 15px 15px;
	text-align: left;
}

.markerbox div {
	overflow: auto;
	height: 90%;
	padding: 0 0 25px 0;
}


.markerlist {
	display: block;
	font-family: 'PTSansNarrowBold';
	margin:0;
	padding: 0;
	border-bottom: 1px solid lightgray;

}

.markerlist li {
	display: inline-block;
	padding: 5px;
	width: 100%;
	border: 0;
	border-top: 1px solid lightgray;

}

.markerlist ul {
	margin: 0;
	padding: 0 0 0 35px ;
	font-family: 'PTSans';
}


.markerlist_icon {
	width: 25px;
	margin-right: 10px;
	float: left;
	position: relative;
	top: -4px;
}

.markerlist_button {
	padding: 10px 0 0px 0px;
	display: inline-block;
	text-align: left;
	font-family: 'PTSansNarrowBold';
	font-size: 1.1em;
	line-height: 1.2em;
	background: 0;
	border: 0;
	width: 100%;
	color: #028e9b; 
}



.markerlist_button:hover {
	cursor: pointer;
	color: gray;
}


.markerbox_close {
	position: absolute;
	top: 15px;
	right: 15px;
	padding: 3px 5px 0 5px;
	font-size: 1.4em;
	line-height: 1em;
	border: 0;

}


/* Leaflet styling 
-----------------*/

.leaflet-popup-pane {
	font-family: 'PTSans';
	font-weight: 400;
	font-size: 1.3em;

}

.leaflet-popup {
	width: 550px;
}

.leaflet-popup > * {
	border-radius: 0 !important;

}
.leaflet-popup h3 {

	font-family: 'PTSansNarrowBold';
	margin-bottom: 10px;
	width: 500px;
}

.leaflet-popup-content {

}

.leaflet-popup-content ul {
	width: 500px !important;
}

.leaflet-popup-content ul li {
	margin-left: -20px !important;
	margin-bottom: 15px;
}

.leaflet-popup-content img {
	max-width: 100%;
	height: auto;
}

.leaflet-popup-content img {
	max-width: 100% !important;
	height: auto !important;
}

.my-custom-control,
#my-custom-control {
	width: 100px;
	background-color: white;
	height: 100px;
}

.leaflet-control-scale-line {
	z-index: 4 !Important;
}

.leaflet-control-zoom {
	position: absolute;
	top: 60px;
	left: 5px;
}

.clearfix:before, 
.clearfix:after {
	content: " " !important;
	display: table !important;
}

.clearfix:after {
	clear: both !important;
}

ol.article_list li {
	list-style-type: circle !important;
	padding-left: 0px;
	margin-left: 28px;
	line-height: 1.4em;
}



.leaflet-popup-content .popup_markerlink {
	text-transform: uppercase !important;
	font-size: 0.8em;
}



@media only screen and (max-width: 1024px) {
	.page {
		max-width: 75%;
		position: absolute;
		top: 100px;
		left: 12%;
	}
}

@media only screen and (max-width: 767px) {

	.page {
		top: 60px;
		width: 100%;
		max-width: 100%;
		left: 0;
	}

	.markerbox {
		top: auto;
		left: 0;
		bottom: 0 !important;
		width: 100%;
		max-width: 100%;
		height: 40%;
	}

	.markerbox div {
		height: 85%;
	}


	.leaflet-popup {
		width: 450px !important;
	}

	.leaflet-popup h3,
	.leaflet-popup-content ul {
		width: 450px !important;
	} 

}

@media only screen and (max-width: 700px) {
	.breadcrumb {
		text-align: left;
		margin: 8px 0px 0 60px;
		font-size: 0.9em;
		line-height: 1.15em;
		max-width: 50%;


	}	

	.breadcrumb span {
		display: none;
	}

	.breadcrumb br {
		display: block;
	}

}


@media only screen and (max-width: 479px) {


	/*
.breadcrumb {
	background-color: lightgray;
	position: relative;
	top: 60px;
	margin: 0;
	width: 100%;
	max-width: 100%;
	font-size: 0.9em;
	text-align: center;
}

	*/



	.leaflet-control-scale.leaflet-control {
		bottom: 50px;
	}

	/* .leaflet-popup {
		width: 350px ;
	} */

	.leaflet-popup h3,
	.leaflet-popup-content ul {
		width: auto !important;
	}



}