.screen, #background-img{
	width: 100%;
	height: 51vw;
	max-height: 100vh;
	position: relative;
	overflow: hidden;
	outline: none;
	border: none;
	text-align: center;
	min-height: 10vh;
}

iframe{
	border: none;
	width: 100%;
	height: 100%;
}

body, html{
	font-family: "Segoe UI", sans-serif;
}

h1, h2, h3{
	font-family: "Segoe UI", sans-serif;
	font-weight: 300;
}

#background-img img{
	overflow: hidden;
	width: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin-top: auto;
	margin-bottom: auto;
}

.screen{
	position: relative;
}

.logo-wrapper{
	position: absolute;
	top: 4%;
	width: 100%;
	height: 20vh;
	overflow: hidden;
}

.logo{
	max-width: 60%;
	max-height: 100%;
	margin: 0 auto;
	/*background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain;*/
	object-fit: contain;
	display: inline-block;
}

.info-wrapper .logo{
	width: auto;
	max-width: 80%;
	max-height: 13vh;
}

.menu-wrapper{
	position: absolute;
	bottom: 0px;
	overflow: hidden;
	width: 100%;
	height: 10vh;
}

.menu-wrapper-fixed{
	position: fixed;
	top: 0px;
	background: white;
	opacity: 1;
	box-sizing: border-box;
}

.menu{
	margin: 0 auto;
	height: 100%;
	text-align: center;
	display: inline-block;
}

.menu-item{
	width: 9vw;
	float: left;
	height: 100%;
	background: rgb(72, 175, 219);
	opacity: 0.8;
	display: table;
	overflow: auto;
	text-align: center;
	box-sizing: border-box;
}

.menu-item div, .menu-item-lang span{
	display: table-cell;
	vertical-align: middle;
}

.menu-item:hover, .menu-item-selected, .menu-wrapper-fixed .menu-item-selected{
	background: rgb(255, 255, 255);
	cursor: pointer;
}

.row{
	display: table;
	width: 100%;
	text-align: center;
}

#content-wrapper .page-row:not(.not-shown):last-of-type {
	padding-bottom: 10vh;
}

.half-element-row, #content-wrapper .third-width-element.row-element.header-element{
	min-height: 0;
}

div.half-element-row, .first-page-preview > div.half-element-row:first-of-type{
	padding-top: 12vh;
	margin-top: 0px;
}

.first-page-preview .half-element-row{
	margin-top: 12vh;
	padding-top: 0px;
}

.first-page-preview .half-element-row:first-of-type{
	margin-top: 0px;
}

.one-element-row{
	min-height: 0px;
	margin-top: 6vh;
}

.page-row:not(.gallery):not(.downloads-row) .one-element-row{
	margin-top: 6vh;
}

.one-element-row.impressum{
	margin-top: 12vh;
}

#content-wrapper .page-row-home:first-of-type .row-elements-container{
	max-width: 60%;
	width: auto;
}

#content-wrapper .page-row-home:first-of-type .half-element-row:first-of-type .row-elements-container{
	width: 60%;
}

#content-wrapper .page-row-home:first-of-type .third-width-element{
	width: 18vw;
	margin-right: 1.6vw;
	display: inline-block;
}

.two-element-row, #content-wrapper .two-element-row .row-element, .two-element-row .gallery-image-container, .two-element-row .gallery-img-hover{
	height: 13.5vw;
}

#content-wrapper .page-row-home .two-element-row .row-element, .page-row-home .two-element-row .gallery-image-container, .page-row-home .two-element-row .gallery-img-hover{
	height: 15vw;
}

.two-element-row{
	margin-top: 6vh;
}

.page-row .two-element-row:not(.not-shown) + .two-element-row{
	margin-top: 1.2vw;
}

.first-page-preview .two-element-row{
	margin-top: 4vh;
}

.first-page-preview.page-row.page-row-home .one-element-row{
	margin-top: 4vh;
}

.three-element-row, #content-wrapper .three-element-row .row-element{
	height: 26vw;
}

.three-element-row{
	margin-top: 6vh;
}

.contact-row .row:not(.half-element-row):not(.two-element-row){
	margin-top: 6vh;
}

.row-elements-container, .row-elements-container-downloads{
	margin: 0 auto;
	width: 60%;
	height: 100%;
	display: table;
	text-align: center;
}

.row-element{
	vertical-align: middle;
	text-align: center;
	position: relative;
	overflow: hidden;
}

#content-wrapper .row-element{
	height: 100%;
}

.half-element-row .row-element{
	display: inline-block;
}

.full-width-element{
	width: 100%;
	position: relative;
	overflow: hidden;
}

.half-width-element{
	width: 49%;
	display: inline-block;
}

div.vertical-top{
	vertical-align: top;
	float: left;
}

.third-width-element{
	width: 31.5%;
	margin-right: 2.25%;
	display: inline-block;
}

.third-width-element.row-element{
	vertical-align: top;
}

.header-element.third-width-element.row-element{
	vertical-align: middle;
}

.row-elements-container .third-width-element:last-of-type, .row-elements-container .third-width-element.image-container:last-of-type{
	margin-right: 0px
}

.quarter-width-element{
	width: 22.6%;
	display: inline-block;
	margin-left: 2%;
}

.info-wrapper .third-width-element{
	float: none;
}

.row-elements-container .quarter-width-element:first-of-type{
	margin-left: 0;
}

.three-quarters-width-element{
	width: 73.5%;
	display: inline-block;
}

.third-width-element .img-div, .quarter-width-element .img-div, .round-img, .gallery-image{
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: contain;
	width: 100%;
	height: 100%;
	margin: auto;
	max-height: 100%;
	top: 0;
	bottom: 0;
	left: -9999px;
	right: -9999px;
	position: absolute;
	object-fit: cover;
}

.quarter-width-element .img-div{
	background-size: cover;
}

.quarter-width-element .gallery-image-container .gallery-image, .third-width-element .gallery-image-container .gallery-image{
	background-size: cover;
}

.full-width-element .gallery-image{
	width: 100%;
}

.quarter-width-element .img-div{
	object-fit: cover;
	box-sizing: border-box;
}

.gallery .gallery-image{
	height: 15vw;
	box-sizing: border-box;
}

.gallery-image{
	height: 100%;
	bottom: auto;
}

.gallery .image-container{
	border: none;
	height: 15vw;
}

.gallery .gallery-img-border, .gallery .gallery-img-hover, .gallery .gallery-image-container{
	height: 15vw;
}

.gallery-image-container{
	width: 100%;
	height: 30vh;
	box-sizing: border-box;
	position: relative;
}

.two-element-row .quarter-width-element .gallery-img-hover, .two-element-row .quarter-width-element .gallery-image, .two-element-row .quarter-width-element .gallery-image-container{
	height: 100%;
}

.three-element-row .full-width-element .gallery-img-hover, .three-element-row .full-width-element .gallery-image, .three-element-row .full-width-element .gallery-image-container{
	height: 100%;
}

.gallery-description{
	padding-top: 1em;
}

.full-width-element div.gallery-image{
	width: auto;
	height: 52vh;
}

.quarter-width-element div.gallery-image{
	height: 32vh;
}

.full-width-element h1{
	float: left;
	font-size: 2.5em;
	color: inherit;
	text-align: left;
}

.row-element p{
	text-align: left;
	line-height: 1.5em;
}

.page-row-home .one-element-row .third-width-element.row-element p:first-child{
	display: inline-block;
}

.page-row-home .one-element-row .third-width-element.row-element > *:not(img):not(div){
	display: none;
}

.page-row .row:last-of-type p{
	padding-bottom: 0px;
}

.full-width-element .img-div{
	width: auto;
	height: 100%;
	max-height: 100%;
	margin: auto;
	position: absolute;
	left: -9999px;
	right: -9999px;
	top: 0;
	bottom: 0;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: contain;
}

.vertical-centered{
	display: table;
	height: 100%;
	margin: auto;
}

.half-width-element h1, .third-width-element h1, .quarter-width-element h1{
	display: table-cell;
	vertical-align: middle;
}

.small-title-parent{
	height: 100%;
}

.info-container{
	width: 100%;
	height: 25vh;
	overflow: auto;
}

.info-wrapper{
	width: 60%;
	height: 100%;
	margin: 0 auto;
	text-align: center;
	white-space: nowrap;
}

#content-wrapper .info-wrapper{
	height: auto;
}

.logo-small::before /*.row-elements-container::before, .downloads-text-container::before*/{
	content: '';
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.header-margin{
	margin-top: 1.8em;
}

.info-wrapper p{
	padding: 0px;
	padding-top: 1em;
	font-size: 0.8em;
}

.downloads-title-element{
	height: 20%;
	width: 100%;
	font-size: 1.8em;
	text-align: left;
	line-height: 1.2em;
}

.downloads-text-element{
	height: 80%;
	width: 100%;
	margin-top: 1em;
	text-align: left;
}

.downloads-container{
	overflow: auto;
	background: rgba(255,255,255,0.2);
}

div.downloads-icon, img.img-div.downloads-icon{
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 300% 300%;
	width: 15vh;
	height: 15vh;
}

div.downloads-icon.downloads-preview{
	background-size: cover;
}

.downloads-text-container{
	float: left;
	height: 100%;
	max-width: 80%;
	line-height: 1.5em;
	padding-left: 1em;
	padding-top: 1em;
}

.gallery-text{
	display: none;
	padding: 1em;
	text-align: left;
	height: 9em;
	width: 100%;
	box-sizing: border-box;
	overflow: hidden;
}

.gallery .gallery-text{
	display: inline-block;
}

.gallery-img-hover:hover {
	opacity: 0.5;
	cursor: pointer;
}

#gallery-outter-div{
	background-color: rgba(0,0,0,0.6);
}

.gallery-img-hover{
	width: 100%;
	height: 30vh;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	z-index: 10;
	background-color: black;
	background-image: url(../images/icon_gallery.svg);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 150%;
}

.gallery-img-border{
	width: 100%;
	height: 30vh;
	position: absolute;
	top: 0;
	left: 0;
	background: transparent;
	box-sizing: border-box;
}

.full-width-element .gallery-img-hover{
	height: 100%;
}

.gallery .one-element-row{
	padding-top: 6vh;
	margin-top: 0px;
}

.gallery .half-element-row.not-shown + .one-element-row{
	padding-top: 12vh;
}

.gallery .one-element-row + .one-element-row{
	padding-top: 1.3vw;
}

.get-more-button{
	float: right;
	padding: 1em 2em;
	margin-top: 4vh;
	width: 6vw;
}

div.get-more-middle{
	float: none;
	margin-left: auto;
	margin-right: auto;
	width: 10%;
	margin-top: 6vh;
}

.get-more-button:hover{
	cursor: pointer;
}

.contact-error{
	float: left;
	color: red;
}

.contact-input{
	background-color: transparent;
	width: 100%;
	height: 100%;
	line-height: 3em;
	padding-left: 1em;
	box-sizing: border-box;
	color: inherit;
	overflow: hidden;
	border: 1px solid #646464;
}

#background-img > div {
	max-height: 100vh;
	height: 51vw;
	width: 100vw;
	position: absolute;
}

.background-button-container{
	height: 4%;
	width: 100%;
	text-align: center;
	position: absolute;
	bottom: 120px;
	top: auto;
	right: 0px;
	left: 0px;
}

.background-button-container .background-change {
	height: 100%;
	width: 4vh;
	margin: 0 auto;
	display: inline-block;
	background-size: 200% 200%;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-color: #87888a;
	opacity: 0.8;
	border-radius: 2vh;
	-webkit-border-radius: 2vh;
	-moz-border-radius: 2vh;
}

.background-button-container .background-change:hover{
	cursor: pointer;
}

.options-container{
	line-height: 3vh;
	padding-top: 10px;
	position: absolute;
	right: 19vw;
	left: 20vw;
}

#search-input{
	width: 15%;
	line-height: 3vh;
	display: inline-block;
	float: right;
	margin-top: 1vh;
	vertical-align: middle;
	z-index: 10;
	position: relative;
}

.search-button{
	height: 5vh;
	width: 4vh;
	background-repeat: no-repeat;
	background-size: 200% 200%;
	background-position: 50% 50%;
	display: inline-block;
	float: right;
	vertical-align: middle;
	z-index: 10;
	position: relative;
}

.search-button:hover{
	cursor: pointer;
}

.languages-chooser{
	margin-top: 0.6em;
}

.language-dropdown{
	position: relative;
	vertical-align: middle;
	z-index: 10;
	float: right;
}

.language-dropdown:hover{
	cursor: pointer;
}

.language-dropdown ul{
	display: none;
	list-style-image: none;
	list-style-type: none;
	position: absolute;
	z-index: 1000;
	top: 4vh;
	left: 0;
	width: 4vh;
}

.language-dropdown ul li{
	width: 100%;
	text-align: center;
}

#map{
	width: 100%;
	height: 100%;
}

.full-width-element h2{
	text-align: left;
	font-size: 1.2em;
	margin: 1em 0px;
}

img.img-div.downloads-icon{
	display: block;
}

.downloads-icon{
	background-color: #87888a;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 300% 300%;
	width: 10vw;
	height: 10vw;
}

.download:last-of-type{
	margin-bottom: 0px;
	padding-bottom: 3vh;
}

div.download:nth-of-type(2){
	padding-bottom: 0px;
}

.downloads-row .download:nth-of-type(2){
	margin-top: 6vh;
}

div.impressum h2, div.impressum p{
	padding-left: 0px;
}

.maps iframe{
	pointer-events: none;
}

.header-small{
	display: none;
}

#content-wrapper .contact-row .two-element-row .full-width-element{
	height: 40vh;
}

.languages-chooser{
	background-color: transparent;
	width: 4vh;
	height: 5vh;
	margin-top: 0;
	font-size: 1em;
	text-align: center;
	cursor: pointer;
}

#content-wrapper div.contact-input-div{
	height: 3em;
	display: table-cell;
	padding-right: 0.5em;
	box-sizing: border-box;
	width: 49.4%;
}

.language-container{
	display: none;
}

.contact-map, .contact-map .full-width-element{
	height: 58vh;
}

.contact-map{
	display: inline-block;
}

.info-container h1{
	font-size: 1.5em;
}

.last-row{
	padding-bottom: 10vh;
}

.page-row-search .one-element-row{
	margin-top: 12vh;
}

.gallery-text h1{
	max-width: 100%;
}

.two-element-row .third-width-element.image-container{
	background-color: black;
}

.screen.no-background{
	min-height: 34vh;
}

.two-element-row .quarter-width-element .gallery-img-hover, .two-element-row .quarter-width-element .gallery-image, .two-element-row .quarter-width-element .gallery-image-container, .two-element-row .quarter-width-element .gallery-img-border{
	height: 100%;
}

.info-wrapper .third-width-element{
	vertical-align: top;
	margin-top: 6vh;
}

.quarter-width-element iframe{
	background: black;
}

.third-width-element.row-element.image-container.empty-image-container{
	background: transparent;
}

/*tablet landscape*/
@media only screen and (orientation: landscape) and (max-device-width : 1050px) and (min-device-width: 760px){
	.background-button-container div.background-change{
		width: 5.5vh;
	}

	div.background-button-container{
		height: 5.5vh;
		bottom: 12vh;
	}

	#content-wrapper .three-element-row div.full-width-element, #content-wrapper div.three-element-row, #content-wrapper .page-row-home:first-of-type .two-element-row div.third-width-element{
		height: 35vh;
	}

	div.menu-wrapper{
		height: 10vh;
	}

	#content-wrapper .page-row-home:first-of-type .two-element-row .third-width-element, #content-wrapper .page-row-home:first-of-type .two-element-row{
		height: 36vh;
	}

	.gallery-image-container div.gallery-img-hover, .gallery .gallery-image-container div.gallery-image, .gallery div.gallery-image-container, .gallery-image-container .gallery-img-border{
		/*height: 40vh;*/
	}

	.downloads-container div.downloads-icon{
		width: 16vh;
		height: 16vh;
	}

	#content-wrapper .page-row-home:first-of-type .two-element-row .third-width-element{
		height: 36vh;
	}

	#content-wrapper .two-element-row div.quarter-width-element{
		height: 20.7vw;
	}

	#content-wrapper div.half-element-row, #content-wrapper .first-page-preview .half-element-row{
		padding-top: 12vh;
	}

	div.three-element-row, #content-wrapper .page-row-home:first-of-type div.two-element-row{
		margin-top: 12vh;
	}

	.downloads-row div.download:nth-of-type(2), .contact-row div.row:not(.half-element-row):not(.two-element-row){
		margin-top: 12vh;
	}

	.page-row:not(.gallery) div.download.one-element-row{
		margin-top: 6vh;
	}

	.page-row:not(.gallery) div.download.one-element-row:nth-of-type(2){
		margin-top: 12vh;
	}

	div.downloads-row div.download:nth-of-type(2), .contact-row div.row:not(.half-element-row):not(.two-element-row), div.one-element-row.impressum{
		margin-top: 12vh;
	}

	.two-element-row{
		margin-top: 5vw;
	}

	.gallery div.half-element-row:not(.not-shown) + div.row.one-element-row{
		padding-top: 12vh;
	}

	#content-wrapper .gallery div.one-element-row + div.row.half-element-row{
		padding-top: 7vh;
	}

	#content-wrapper .gallery div.gallery-img-hover, #content-wrapper .gallery .gallery-image,
	#content-wrapper .gallery .gallery-image-container, #content-wrapper .gallery .gallery-img-border{
		height: 21vw;
	}

	.page-row .two-element-row:not(.not-shown) + .two-element-row{
		margin-top: 1.7vw;
	}

	.gallery div.half-element-row.not-shown + div.one-element-row{
		padding-top: 7vh;
	}
}


/*handy landscape*/
@media only screen and (orientation: landscape) and (max-device-width : 760px){
	#content-wrapper .page-row-home:first-of-type .two-element-row .third-width-element{
		height: 36vh;
	}
	/*
	.screen div.menu-wrapper{
		height: 14vh;
	}

	.screen div.background-button-container{
		bottom: 17vh;
	}
	*/

	.screen{
		margin-top: 8vh;
	}

	.half-element-row{
		height: auto;
		min-height: 0;
	}

	.full-width-element h1{
		font-size: 1.8em;
	}

	#content-wrapper .three-element-row div.full-width-element, #content-wrapper div.three-element-row.row{
		height: 48vh;
	}

	#content-wrapper .two-element-row div.quarter-width-element{
		height: 35vh;
	}

	.downloads-title-element{
		font-size: 1.5em;
	}

	.downloads-text-element{
		font-size: 0.8em;
	}

	#content-wrapper .downloads-container div.downloads-icon{
		width: 17vw;
		height: 17vw;
	}

	.page-row div.download{
		margin-bottom: 10vh;
	}

	div#content-wrapper div.contact-input-div{
		width: 100%;
		display: block;
	}

	#content-wrapper .contact-row .two-element-row div.full-width-element{
		height: 35vh;
	}

	div#content-wrapper .contact-input-div:nth-of-type(2){
		margin-top: 10px;
	}

	div.contact-map, .contact-map div.full-width-element{
		height: 50vh;
	}

	#content-wrapper .page-row-home:first-of-type .two-element-row div.third-width-element{
		height: 48vh;
	}
	/*
	.languages-chooser{
		width: auto;
		height: 10vh;
	}

	.search-button{
		width: 10vh;
		height: 10vh;
	}

	div.language-dropdown ul{
		top: 9vh;
	}

	div.language-dropdown ul li{
		height: 5vh;
	}*/

	#search-input{
		line-height: 7vh;
	}

	.gallery-description{
		font-size: 0.8em;
	}

	.downloads-row .download:nth-of-type(2){
		margin-top: 16vh !important;
	}

	div.half-element-row, .first-page-preview > div.half-element-row:first-of-type{
		padding-top: 16vh;
		margin-top: 0px;
	}

	#content-wrapper div.get-more-middle, div.get-more-button{
		margin-top: 8vh;
	}

	div.info-wrapper p{
		font-size: 0.8em;
	}

	div.info-wrapper h1{
		font-size: 1.5em;
	}

	#content-wrapper .page-row .half-element-row{
		padding-top: 16vh;
	}

	#content-wrapper .page-row-home:first-of-type div.two-element-row{
		margin-top: 16vh;
	}

	.three-element-row, .gallery .one-element-row:nth-of-type(2){
		margin-top: 16vh;
	}

	.one-element-row.impressum{
		margin-top: 16vh;
	}

	#content-wrapper .row-element.half-width-element:first-of-type{
		margin-top: 16vh;
	}

	div.gallery-text{
		margin-bottom: 10vh;
	}

	div.one-element-row{
		margin-top: 16vh;
	}

	div.three-element-row{
		margin-top: 16vh;
	}

	.gallery div.one-element-row:nth-of-type(2), div.downloads-row div.download:nth-of-type(2){
		margin-top: 16vh;
		padding-top: 0px;
	}

	.gallery div.half-element-row.not-shown:nth-of-type(1) + div.one-element-row{
		padding-top: 16vh;
		margin-top: 0px;
	}

	.gallery div.half-element-row.not-shown + div.one-element-row{
		padding-top: 6vh;
	}

	.contact-row div.row:not(.half-element-row):not(.two-element-row){
		margin-top: 0px;
	}

	#content-wrapper .page-row:not(.not-shown):last-of-type, .last-row{
		padding-bottom: 16vh;
	}

	.background-button-container{
		display: none;
	}

	.gallery div.gallery-image-container div.gallery-img-hover, .gallery div.gallery-image, .gallery div.gallery-image-container, .gallery div.gallery-img-border{
		height: 50vh;
	}

	div.header-small{
		height: 16vh;
	}

	.open-menu-button{
		width: 16vh;
	}

	.search-wrapper-top div.search-button{
		width: 16vh;
		height: 16vh;
	}

	div.menu-wrapper{
		top: 16vh;
		max-height: 84vh;
		overflow: auto;
	}

	.menu-wrapper div.menu-item, div.menu-item-lang{
		height: 16vh;
	}

	#content-wrapper .gallery div.third-width-element{
		width: 40%;
	}

	.search-wrapper-top input#search-input{
		height: 10vh;
		left: 2vh;
	}

	div.logo-small{
		margin-left: 4vh;
	}

	#content-wrapper div.row-element.quarter-width-element{
		width: 23%;
		display: inline-block;
		height: 20.7vw;
		margin-top: 0px;
		float: none;
	}

	#content-wrapper div.row-element.quarter-width-element:first-of-type{
		margin-top: 0px;
	}

	.first-page-preview.page-row.page-row-home .one-element-row{
		margin-top: 8vh;
	}

	.page-row div.two-element-row:not(.not-shown) + div.two-element-row{
		margin-top: 1vh;
	}

	#content-wrapper .page-row .one-element-row:not(.not-shown) + .half-element-row{
		padding-top: 6vh;
	}

	#content-wrapper .page-row .half-element-row:not(.not-shown) + .one-element-row:not(:nth-of-type(2)){
		padding-top: 16vh;
	}

	.contact-row.page-row:nth-of-type(2) div.row:not(.half-element-row):not(.two-element-row):nth-of-type(4){
		margin-bottom: 16vh;
	}
}

/* tablet all */
@media only screen and (max-device-width : 1100px) and (min-device-width: 760px),
only screen and (orientation: portrait) and (max-device-width : 1050px) and (min-device-width: 500px){
	.screen, #background-img{
		height: 51vw;
	}

	.info-container .info-wrapper div.third-width-element.logo-wrapper-bottom{
		display: inline-block;
		position: absolute;
		right: 0;
		left: auto;
		top: 0;
		height: 90%;
	}

	.info-container .info-wrapper{
		position: relative;
	}

	.info-container .info-wrapper .logo{
		height: auto;
		max-width: 40%;
		max-height: 40%;
		float: right !important;
	}

	.one-element-row{
		min-height: 0;
		margin-top: 8vh;
	}

	div.get-more-middle{
		margin-top: 4vw;
	}

	div.get-more-button, div.get-more-button.get-more-middle{
		margin-top: 4vh;
	}

	.downloads-title-element{
		font-size: 1.5em;
	}

	div.download{
		margin-bottom: 5vh;
	}

	.contact-row .row:not(.half-element-row):not(.two-element-row){
		margin-top: 0px;
	}

	.options-container{
		left: 2vw;
		right: 2vw;
	}

	div.language-dropdown{
		margin-right: 0px;
	}

	.gallery .one-element-row{
		margin-top: 0px;
		padding-top: 0px;
	}

	.downloads-row div.download:nth-of-type(2), .contact-row .row:not(.half-element-row):not(.two-element-row), .one-element-row.impressum{
		margin-top: 8vh;
	}

	.gallery div.half-element-row:not(.not-shown) + div.one-element-row{
		padding-top: 8vh;
	}

	div.gallery-text{
		min-height: 6.5em;
	}

	.download:last-of-type{
		padding-bottom: 0px;
	}

	.screen .logo-wrapper img.logo{
		max-width: 30%;
	}

	#content-wrapper .gallery div.third-width-element{
		width: 30%;
		margin: 0 5% 0 0;
		display: inline-block;
	}
}

/*tablet portrait*/
@media only screen and (max-device-width : 1050px) and (min-device-width: 760px) and (orientation: portrait){
	.downloads-row div.download:nth-of-type(2), .contact-row .row:not(.half-element-row):not(.two-element-row), .one-element-row.impressum{
		margin-top: 8vh;
	}

	.gallery .one-element-row:nth-of-type(2){
		padding-top: 8vh;
	}

	div.menu-wrapper-fixed{
		height: 8vh;
	}

	.page-row-search .one-element-row{
		margin-top: 8vh;
	}

	.two-element-row, #content-wrapper .two-element-row .row-element, .two-element-row .gallery-image-container, .two-element-row .gallery-img-hover{
		height: 24vh;
	}

	.page-row:not(.gallery):not(.downloads-row) .one-element-row{
		margin-top: 4vh;
	}

	.page-row .two-element-row{
		margin-top: 4vh;
	}

	.page-row .two-element-row:not(.not-shown) + .two-element-row{
		margin-top: 1.8vw;
	}

	.gallery .one-element-row:not(.not-shown) + .one-element-row{
		padding-top: 0px;
	}

	#content-wrapper .contact-row:first-child .half-element-row:not(.not-shown) + .row{
		margin-top: 7.6vh;
	}

	.gallery .one-element-row + .half-element-row{
		padding-top: calc(8vh - 4.5vw);
	}

	div.contact-map{
		height: 30vh;
	}

	div.gallery-text{
		margin-bottom: 4.5vw;
	}

	#content-wrapper .three-element-row div.full-width-element, #content-wrapper div.three-element-row{
		height: 24vh;
	}

	.gallery div.half-element-row.not-shown:first-child + div.one-element-row{
		padding-top: 8vh;
	}

	.gallery div.half-element-row.not-shown + div.one-element-row{
		padding-top: calc(8vh - 4.5vw);
	}
}

/*tablet portrait, handy landscape*/
@media only screen and (max-device-width : 1050px),
only screen and (orientation: landscape) and (max-device-width : 480px){
	.menu-wrapper{
		height: 8vh;
	}

	#content-wrapper .page-row-home:first-of-type .two-element-row .third-width-element{
		height: 24vh;
	}

	#content-wrapper .page-row-home:first-of-type .two-element-row{
		height: auto;
		margin-top: 8vh;
	}

	.row{
		display: block;
	}

	.row-elements-container, .row-elements-container-downloads, #content-wrapper .page-row-home:first-of-type .row-elements-container{
		width: 90%;
		max-width: 90%;
		height: auto;
	}

	.half-width-element{
		width: 90%;
	}

	#content-wrapper .contact-input-div{
		width: 49.4%;
		height: 3em;
	}

	.language-container{
		display: none;
	}

	.search-wrapper{
		margin-top: 0.5em;
	}

	div.downloads-icon{
		width: 12.5vh;
		height: 12.5vh;
	}

	.row{
		position: relative;
	}

	.info-wrapper{
		margin-top: 5vw;
		width: 90%;
	}

	.info-wrapper .third-width-element.logo-wrapper-bottom{
		display: none;
		margin: 0px;
	}

	#content-wrapper .info-wrapper .third-width-element, .info-wrapper .third-width-element{
		display: block;
		width: 100%;
		margin-bottom: 5vw;
		margin-left: 0px;
		margin-top: 5vh;
		height: auto;
		float: none;
	}

	.info-wrapper p{
		font-size: 1em;
	}

	.info-container{
		height: auto;
	}

	.follow-us{
		width: 20vw;
		height: 20vw;
		margin-right: 2vw;
		margin-bottom: 2vw;
	}

	.get-more-button{
		float: none;
		width: 15vw;
		margin-left: auto;
		margin-right: auto;
	}

	div.get-more-middle{
		float: none;
		width: 15vw;
	}

	.half-width-element h1{
		padding-bottom: 1em;
	}

	.two-element-row .row-elements-container.image-container-div{
		min-height: 20vh;
		height: auto;
	}

	#content-wrapper .three-element-row .full-width-element, #content-wrapper .three-element-row{
		height: 24vh;
	}

	.two-element-row{
		min-height: 0;
		height: auto;
	}

	.two-element-row div.row-elements-container.image-container-div{
		min-height: 0;
		height: auto;
	}

	.gallery-row-element{
		width: 40%;

	}

	.gallery div.gallery-img-hover, .gallery .gallery-image, .gallery .gallery-image-container, .gallery .gallery-img-border{
		height: 24vw;
	}

	.gallery-img-hover{
		opacity: 1;
		background-color: rgba(0,0,0,0.3);
		background-size: 150%;
	}

	.gallery-text{
		padding: 0.5em;
	}

	.gallery-description{
		padding-top: 0.5em;
	}

	.info-wrapper:before, .downloads-text-container:before, .three-element-row:before{
		content: none;
		display: none;
	}

	#content-wrapper .three-element-row .half-width-element.row-element.image-container-div{
		min-height: 40vh;
	}

	#content-wrapper .row-element.image-container-div{
		width: 100%;
	}

	.half-width-element.image-container-div{
		position: absolute;
		left: 0;
	}

	#content-wrapper .row-element p{
		padding: 0;
	}

	#content-wrapper .info-wrapper .row-element p{
		padding-top: 1em;
	}

	.downloads-text-container{
		max-width: 65%;
		padding-top: 0.5em;
		padding-left: 0.5em;
	}

	.info-wrapper{
		min-height: 25vh;
		height: auto;
	}

	#content-wrapper .two-element-row .quarter-width-element{
		height: 20.8vw;
	}

	.third-width-element,  #content-wrapper .page-row-home:first-of-type .third-width-element{
		width: 100%;
		display: block;
	}

	.page-row:not(.gallery) .download.one-element-row{
		/*margin-top: 8vh;*/
	}

	#content-wrapper .page-row-home:first-of-type .one-element-row{
		height: auto;
	}

	.page-row:not(.page-row-home) .one-element-row{
		min-height: 0;
		height: auto;
	}

	.page-row .one-element-row.download{
		min-height: 0;
	}

	.page-row .one-element-row.download{
		margin-top: 0;
	}

	.downloads-row .one-element-row{
		min-height: 0;
	}

	.downloads-text-element{
		line-height: 1.4em;
		margin-top: 0.5em;
		margin-bottom: 0.5em;
	}

	#content-wrapper .gallery .third-width-element{
		width: 40%;
		margin: auto;
		/*min-height: 40vh;*/
	}

	.half-width-element:nth-of-type(2){
		margin-top: 1.5em;
	}

	#content-wrapper .contact-row .two-element-row .full-width-element{
		height: 26vh;
	}

	.background-button-container{
		bottom: 10vh;
		height: 3.5vh;
	}

	.background-button-container .background-change{
		width: 3.5vh;
		border-radius: 4vh;
		-webkit-border-radius: 4vh;
		-moz-border-radius: 4vh;
	}

	.language-dropdown{
		margin-right: 4.5%;
	}

	.language-dropdown ul{
		top: 4vh;
		left: 0;
	}

	.screen .logo-wrapper{
		height: 35%;
	}

	.screen .logo-wrapper .logo{
		width: auto;
		max-width: 50%;
	}

	.background-button-container .background-change:first-of-type{
		background-position: 55% 50%;
	}

	.background-button-container .background-change:last-of-type{
		background-position: 45% 50%;
	}

	.contact-map, div.contact-map .full-width-element{
		height: 50vh;
	}

	.gallery-text{
		margin-bottom: 5vh;
	}

	div.gallery-text{
		height: auto;
		min-height: 7em;
	}

	#content-wrapper .row-element:not(.full-width-element) h1, .info-wrapper h1{
		font-size: 1.5em;
	}

	div.half-element-row, .first-page-preview .half-element-row{
		margin-top: 0px;
		padding-top: 8vh;
	}

	.three-element-row{
		margin-top: 8vh;
	}
}

/* handy protrait */
@media only screen and (max-device-width : 480px) and (orientation: portrait) {
	.page-row:not(.gallery):not(.downloads-row) div.row.one-element-row:not(.download){
		margin-top: 4vh;
	}

	.page-row.gallery div.row.one-element-row{
		padding-top: 8vh;
	}

	.page-row.gallery div.row.one-element-row:not(.not-shown) + .one-element-row{
		padding-top: 0px;
	}

	.page-row .one-element-row.download:nth-of-type(2){
		margin-top: 8vh;
	}

	#content-wrapper div.row-element.quarter-width-element,
	#content-wrapper div.row-element.quarter-width-element:first-of-type{
		margin-top: 4vh;
	}

	.one-element-row + .two-element-row{
		margin-top: 0px;
	}

	div.gallery-text{
		margin-bottom: 4vh;
	}
}

/* handy portrait, landscape */
@media only screen and (max-device-width : 480px) and (orientation: portrait),
only screen and (orientation: landscape) and (max-device-width : 760px){
	.menu-wrapper{
		height: 0;
		top: 10%;
		z-index: 11;
	}

	.menu-wrapper{
		position: fixed;
		top: 8vh;
		padding: 0;
		background: tran;
		opacity: 0.9;
	}

	div.menu-wrapper-fixed{
		background-color: transparent;
		height: 0px;
	}

	.menu-wrapper .menu-item, .menu-item-lang{
		width: 100%;
		height: 10vh;
		display: table;
		text-align: center;
		opacity: 0.9;
	}

	.menu-item, .menu-item-lang{
		opacity: 0.9;
	}

	.menu{
		width: 100%;
	}

	.screen{
		min-height: 8vh;
		margin-top: 8vh;
	}

	.logo-wrapper{
		display: none;
	}

	.logo-small{
		height: 100%;
		width: 46%;
		float: left;
		margin-left: 4vw;
		display: inline-block;
		overflow: hidden;
		text-align: left;
	}

	.logo-small::before{
		margin-right: 0px;
	}

	.logo-small .logo{
		width: auto;
		max-height: 60%;
		max-width: 90%;
		vertical-align: middle;
	}

	.background-button-container{
		display: none;
	}

	.header-small{
		display: block;
		height: 8vh;
		width: 100%;
		position: fixed;
		z-index: 100;
		top: 0;
	}

	.screen, #background-img{
		/*position: initial;*/
		height: 51vw;
	}

	#content-wrapper .page-row-home:first-of-type .half-element-row{
		display: none;
	}

	#content-wrapper .page-row-home:first-of-type{
		width: 90%;
		margin: auto;
	}

	.half-element-row{
		min-height: 0;
		height: auto;
	}

	.one-element-row{
		min-height: 0px;
		height: auto;
	}

	.gallery .one-element-row{
		margin-top: 0px;
	}

	.two-element-row{
		min-height: 22vh;
		height: auto;
	}

	.three-element-row{
		height: 24vh;
	}

	.row-element p{
		font-size: 1em;
	}

	div.get-more-middle{
		width: 100%;
		padding: 1em 0px;
	}

	.row-elements-container{
		width: 90%;
		display: block;
		height: auto;
		overflow: auto;
	}

	#content-wrapper div.three-element-row, #content-wrapper .three-element-row .row-element,
	#content-wrapper .page-row-home:first-of-type .third-width-element.image-container{
		height: 26vh;
	}

	.third-width-element{
		width: 100%;
		display: block;
	}

	#content-wrapper .row-element.quarter-width-element{
		width: 65%;
		display: block;
		height: 58.6vw;
		margin-top: 10vh;
		float: none;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	#content-wrapper .row-element.quarter-width-element:first-of-type{
		margin-top: 5vh;
	}

	.gallery-image{
		max-width: 100%;
		background-size: cover;
	}

	.gallery-text{
		width: 100%;
	}

	.downloads-text-container{
		padding-left: 0.5em;
		padding-top: 0.5em;
		line-height: 1.8em;
		box-sizing: border-box;
		width: 70%;
	}

	.downloads-container{
		height: 100%;
	}

	.downloads-container .row-element a{
		height: 100%;
	}

	div.downloads-icon{
		background-repeat: no-repeat;
		background-position: 50% 50%;
		background-size: 300% 300%;
		width: 30vw;
		height: 30vw;
	}

	.downloads-title-element{
		height: auto;
		font-size: 1.5em;
	}

	.downloads-text-element{
		margin-top: 0.5em;
		font-size: 0.8em;
	}

	.row-elements-container-downloads{
		width: 100%;
	}

	.downloads-text-container::before, .info-wrapper::before{
		content: none;
	}

	div.vertical-top{
		display: block;
		width: 100%;
	}

	.row-elements-container div.vertical-top:last-of-type{
		margin-top: 1.5em;
	}

	.info-wrapper{
		margin-top: 5vh;
		width: 90%;
	}

	.info-wrapper .third-width-element{
		display: block;
		width: 100%;
		float: none;
		margin-bottom: 5vh;
	}

	.info-wrapper .third-width-element:nth-of-type(2){
		margin-top: 0px;
	}

	.info-wrapper p{
		font-size: 1em;
	}

	.info-container{
		height: auto;
	}

	.download:last-of-type{
		margin-top: 2.5vh;
		padding-bottom: 3vh;
	}

	.download{
		margin-top: 2.5vh;
	}

	.search-wrapper-top{
		float: right;
	}

	.search-wrapper-top .search-button{
		width: 8vh;
		height: 8vh;
		background-position: 50% 45%;
	}

	.search-wrapper-top #search-input{
		position: absolute;
		left: 3vw;
		right: 16vh;
		top: 0px;
		bottom: 0px;
		margin: auto 0px;
		height: 5vh;
		box-sizing: border-box;
		border: 1px solid white;
	}

	.full-width-element h1{
		font-size: 1.8em;
	}

	.options-container{
		display: none;
	}

	.language-container{
		display: inline-block;
		border-left: none;
		border-right: none;
		border-top: 4px solid black;
	}

	.language-container .lang-wrapper{
		width: 25%;
		height: 100%;
		display: inline-block;
		box-sizing: border-box;
	}

	.language-container .lang{
		display: table;
		height: 100%;
		width: 100%;
	}

	.language-container .lang:focus{
		border: none;
	}

	#content-wrapper .quarter-width-element{
		margin-left: 0;
	}

	.gallery .third-width-element{
		width: 80%;
	}

	.gallery .gallery-image, .gallery .gallery-image-container, .gallery .gallery-img-border, div.gallery div.gallery-img-hover{
		height: 37.5vh;
	}

	#content-wrapper div.contact-input-div{
		width: 100%;
		display: block;
		padding-right: 0px;
	}

	#content-wrapper .contact-input-div:nth-of-type(2){
		margin-top: 10px;
	}

	#content-wrapper .gallery .third-width-element{
		width: 80%;
	}

	#content-wrapper .page-row-home:first-of-type .two-element-row{
		height: auto;
		min-height: 0;
	}

	.third-width-element, #content-wrapper .page-row-home:first-of-type .third-width-element{
		margin: 0;
	}

	.get-more-button{
		width: 100%;
		float: none;
		padding: 1em 0px;
	}

	#content-wrapper .page-row-home:first-of-type .third-width-element.image-container{
		width: 111% !important;
		margin-left: -5.5% !important;
	}

	.info-container h1, .image-container div.gallery-text h1{
		font-size: 1.5em !important;
	}

	.info-container p, .gallery-text .gallery-description{
		font-size: 0.8em;
	}

	.contact-row .row:not(.half-element-row):not(.two-element-row){
		margin-top: 8vh;
	}

	.downloads-text-element{
		height: auto;
	}

	.page-row-search .one-element-row{
		margin-top: 12vh;
	}

	.two-element-row{
		margin-top: 5vw;
	}

	#content-wrapper .page-row-home:first-of-type div.row-elements-container{
		width: 100%;
		max-width: 100%;
	}

	.download{
		margin-bottom: 5vh;
	}

	.screen .no-background{
		min-height: 0px;
		height: 0px;
	}

	.screen.no-background{
		height: 0px;
		min-height: 0px;
	}

	.info-wrapper div.logo{
		display: none;
	}

	div.get-more-middle{
		margin-top: 4vh;
	}

	.page-row .two-element-row:not(.not-shown) + .two-element-row{
		margin-top: 0px;
	}

	.gallery .one-element-row:not(.not-shown) + .one-element-row{
		padding-top: 0px;
	}

	#content-wrapper .gallery .one-element-row + div.half-element-row{
		padding-top: 3vh;
	}
}