@charset "UTF-8";
/* Body */
html, body {
	font-family: futura-pt;
	background-color: #f2f2f2;
	margin: 0px;
	padding: 0px;
	font-style: normal;
	font-weight: 200;
	width: 100%;
	height: 100%;
}
#page {
    max-width: 1940px;
	min-height: 100%;
    margin: 0 auto;
    display: block;
    position: relative;
    box-shadow: #DDDDDD 0px 0px 10px;
}
#page header {
    background-color: #1B4390;
    padding: 15px 20px 20px 20px;
}
#page header h1#title {
    font-size: xxx-large;
    padding: 0px;
    margin: 0px;
    color: #FFF;
    font-weight: bold;
	text-transform: uppercase;
	text-align: center;
	letter-spacing: 10px;
}
#page #subline { 
    background: #FFF;
}
#page #subline h2 {
    margin: 0px;
    padding: 10px 20px 12px 20px;
    text-align: center;
    font-size: large;
    text-transform: uppercase;
	color: #737373;
	letter-spacing: 2px;
}
#page #subline.adress {
    background-color: #1B4390;
}
#page #subline.adress > h2 {
    font-size: x-large;
	color: #FFF;
	letter-spacing: 10px;
}
#page .visual {
    display: block;
	width: 100%;
}
#page .visual.v1 {
    background: url(/layout/visual-1.jpg);
    height: 450px;
    border-top: 1px solid #987;
    background-position: 0px 0px;
    background-size: cover;
}
#page .visual.v2 {
	border-top: 1px solid #afb5bd;
	border-bottom: 1px solid #afb5bd;
    background: url(/layout/visual-2.jpg);
    height: 350px;
    background-position: 0px 0px;
    background-size: cover;
}
#page section#map {
    border-top: 1px solid #CCC;
    border-bottom: 1px solid #CCC;
}
#page section#map iframe {
	display: block;
	width: 100%;
	height: 300px;
}
#page .gallery {
	clear: both;
	display: inline-block;
	width: 100%;
	background-color: #FFFFFF;
	padding-bottom: 35px;
	padding-top: 0px;
	margin-top: 0px;
	margin-bottom: 0px;
}
#page .thumbnail {
	width: 25%;
	text-align: center;
	float: left;
	margin-top: 2px;
}
#page .gallery .thumbnail h4 {
	margin-top: 5px;
	margin-right: 5px;
	margin-bottom: 5px;
	margin-left: 5px;
	color: #1B4390;
}
#page .gallery .thumbnail p {
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	color: #A3A3A3;
}
#page section#about,
#page section#philosophy {
    display: flex;
    width: 100%;
    background-color: #FFFFFF;
    padding-top: 0px;
    margin-top: 0px;
    margin-bottom: 20px;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-direction: row;
    flex-wrap: nowrap;
}
#page section#about > .text_col {
	width: 30%;
    margin: 1.5%;
    font-size: larger;
    text-align: center;
    text-wrap-style: balance;
}
#page section#philosophy > .text_col50 {
	width: 47%;
    margin: 1.5%;
    font-size: larger;
    text-align: center;
    text-wrap-style: balance;
}
#page section.intro {
    display: flex;
    background-color: #6DC7D0;
    align-content: center;
    justify-content: space-around;
    flex-wrap: nowrap;
    flex-direction: row;
    align-items: center;
    padding: 30px 0px 30px 0px;
    margin: 10px 0px;
}
#page section.intro > .column {
    width: 50%;
    text-align: center;
	color: #FFFFFF;
}
#page section.intro > .column.left {}
#page section.intro > .column.left h3 {
	letter-spacing: 1px;
	color: #FFFFFF;
    text-align: center;
	margin: 0px 0px 10px 0px;
	padding: 0px;
}
#page section.intro > .column.left img {
	width: 50%;
}
#page section.intro > .column.right {}
#page section.intro > .column.right h3 {
	letter-spacing: 1px;
	color: #FFFFFF;
    text-align: left;
	margin: 0px 0px 10px 0px;
	padding: 0px;
	font-size: x-large;
}
#page section.intro > .column.right p {
    text-align: justify;
    line-height: 25px;
    font-weight: lighter;
    width: 80%;
	font-size: large;
}
#page #spots {    
	width: 100%;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    display: flex;
    justify-content: space-evenly;
    align-content: center;
    align-items: center;
}
#page #spots > .columns {
    width: fit-content;
    font-weight: bold;
    color: #A5A5A5;
    line-height: 24px;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: justify;
    margin-top: 15px;
    margin-bottom: 15px;
    padding-left: 0px;
    padding-right: 0px;
    margin-left: 0px;
    margin-right: 0px;
    display: flex;
    flex-direction: column;
    align-items: center;
    align-content: center;
    justify-content: center;
    flex-wrap: nowrap;
}
#page #spots > .columns > h4 {
	font-size: larger;
	letter-spacing: 2px;
}
#page #spots > .columns > .thumbnaily {
    width: 150px;
    border-radius: 200px;
    height: 150px;
}
#page #call-to-action {
    background-color: #B3B3B3;
    padding-top: 60px;
    padding-bottom: 60PX;
    margin-bottom: 0px;
}
#page .call-to-action-text {
    color: #1B4390;
    text-align: center;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    letter-spacing: 4px;
    font-size: 1.7em;
	
}
#page .call-to-action-button {
    display: block;
    width: 200px;
    margin-top: 40px;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
    padding-top: 20px;
    padding-right: 10px;
    padding-bottom: 20px;
    padding-left: 10px;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 100px;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 2px;
    border: 3px solid #FFFFFF;
    color: #FFFFFF;
    transition: all 0.3s linear;
	font-size: x-large;
	background-color: #CCCCCC30;
}
#page .call-to-action-button:active,
#page .call-to-action-button:hover {
	background-color: #CCCCCC90;	
}
#page > #copyright {
	text-align: center;
    padding-top: 20px;
    padding-bottom: 20px;
    background-color: #717070;
    color: #FFFFFF;
    text-transform: uppercase;
    font-weight: lighter;
    letter-spacing: 2px;
    border-top-width: 2px;	
}
#page > #copyright > .imprint {
	font-size: larger;
	padding: 0px;
	margin: 0px;
}
#page > #copyright > .imprint > a {
	color: #FFF;
	text-decoration: none;
}
#page > #copyright > .disclaimer {
    opacity: 0.25;
    font-size: small;
    padding: 0px 20px;
	text-wrap-style: balance;
}
/*   */
.hidden {
	display: none;
}
.desktop-only {
	display: inline-block;
}
.mobile-only {
	display: none;	
}
/*



 


*/
@media only screen and (max-width: 949px), only screen and (max-device-width: 949px) {
	.desktop-only {
		display: none;
	}
	.mobile-only {
		display: inline-block;
	}
	#page header {
		padding: 15px 20px 15px 20px;
	}
	#page header h1#title {
		font-size: medium;
	}
	#page #subline h2 {
		font-size: x-small;
		padding: 10px 20px 10px 20px;
	}
	#page .visual.v1 {
		background-position: -130px;
	}
	#page #subline.adress > h2 {
		font-size: medium;
	}
	#page section#about {
		flex-direction: column;
		flex-wrap: nowrap;
		padding-top: 20px;
		padding-bottom: 20px;
	}
	#page section#about > .text_col {
		width: unset;
		margin-bottom: 15px;
		text-wrap-style: balance;
	}
	#page .gallery {
		display: flex;
		width: unset;
		flex-direction: column;
		align-content: center;
		align-items: center;
		padding: 20px 20px 0px 20px;
	}
	#page .thumbnail {
		width: unset;
		text-align: center;
		float: unset;
		margin-top: unset;
		margin-bottom: 20px;
	}
	#page .thumbnail > h1.stats {
		margin: 0px;
		padding: 0px;
	}
	#page .visual.v2 {
		background-position: center;
	}
	#page section.intro {
		flex-direction: column;
		padding: 20px 0px 0px 0px;
		margin: 10px 0px;
	}
	#page section.intro > .column {
		width: unset;
		text-align: center;
		color: #FFFFFF;
	}
	#page section.intro > .column.left img {
		width: 75%;
	}
	#page section.intro > .column.right h3 {
		color: #FFFFFF;
		text-align: unset;
		margin: 20px 0px 0px 0px;
		padding: 0px;
		font-size: x-large;
		text-wrap-style: balance;
	}
	#page section.intro > .column.right p {
		text-align: center;
		line-height: 25px;
		font-weight: lighter;
		width: unset;
		font-size: large;
		padding: 0px 20px;
		text-wrap-style: balance;
	}
	#page section#philosophy {
		flex-direction: column;
		flex-wrap: nowrap;
		width: unset;
		padding: 20px 20px 0px 20px;
	}
	#page section#philosophy > .text_col50 {
		width: unset;
		margin: 0px 0px 20px 0px;
		text-align: center;
		text-wrap-style: balance;
		font-size: large;
	}
	#page #spots {
		flex-direction: column;
	}
	#page #call-to-action {
		padding: 55px 20px 60px;
	}
	#page .call-to-action-text {
		font-size: xx-large;
	}
	#page .call-to-action-button {
		font-size: larger;
	}
	#page > #copyright > .disclaimer {
		font-size: xx-small;
		text-wrap-style: balance;
		text-align: justify;
	}
}