@import url("media.css");

* {
	box-sizing: border-box;
	line-height:1.2em;
}

.browsehappy {
	margin: 0.2em 0;
	background: #ccc;
	color: #000;
	padding: 0.2em 0;
}

.browsehappy a
{
	text-decoration:underline;
}

.clearfix:before,
.clearfix:after {
	content:"";
	display:table;
}
.clearfix:after {
	clear:both;
}
.clearfix {
	zoom:1; /* For IE 6/7 (trigger hasLayout) */
}

html
{
	height:100%;
}

body
{
	font-family: 'DaxOT', sans-serif;
	
	min-height:100%;
	color:#6a6a6a;
}

body
{
	position:relative;
}

body.playerOpen
{
	overflow:hidden;
}

.logo
{
	position:absolute;
	right:2em;
	top:50%;
	margin-top:-45px;
	height:70px;
}

.popup
{
	display:none;
}

.popup.visible
{
	position: fixed;
	top: 0;
	left: 0;
	right:0;
	bottom:0;
	display:block;
	background:rgb(0,0,0);
	background:rgba(0,0,0,.66);
	overflow-y:scroll;
	-webkit-overflow-scrolling: touch;
	z-index:700;
	margin:0;
	max-width: none;
}

.popup.visible .wrapper
{
	width:786px;
	background:white;
	margin:1em auto;
	box-shadow: 3px 3px 10px 0px rgba(50, 50, 50, 1);
}

.fancybox__content
{
	padding:0;
	width:786px;
	max-width:100%;
}

.fancybox__content button
{
	margin: 0;
}

.popup.visible .container
{
	width:100%;
	margin:0px;
}

.popup.visible h1
{
	position:relative;
	padding-right:50px;
}

.popup.visible .close
{
	position:absolute;
	right:0px;
	top:0px;
	cursor:pointer;
}

.popup.bannerpopup.visible 
{
	background:none;
	padding:240px 2em 2em 2em;

}

.popup.bannerpopup.visible .wrapper
{
	background:none;
	position: relative;
	width:100%;
	max-width: 500px;
}

.popup.bannerpopup img
{
	width:100%;
	display:block;
}

.popup.bannerpopup.inner
{
	position: relative;
}

.popup.bannerpopup.visible .close
{
	font-size: 2rem;
	top: -1rem;
	right: -.8rem;
	color:#6a6a6a;
}

header
{
	background:white;
	top:0px;
	left:0px;
	right:0px;
	overflow: auto;
	z-index:601;
}

.home header,
.gallery header
{
	position:fixed;
}

.gallery2.center
{
	padding-top:173px;
	margin-bottom: 240px;

}

.gallery2 .content
{
	margin:auto -.5em 0 -.5em;
}

.gallery2.center .row
{
	display: flex;
	flex-wrap: wrap;
}

.gallery2 .row a
{
	display:block;
	overflow:hidden;
	margin:.5em;
	border:1px solid #6a6a6a;
	width: calc(25% - 1em);
}

.gallery2 .row a img
{
	display:block;
	width: 100%;
}

.gallery2 h1
{
	margin-top: 2em;
}

.typo,
table,
p
{
	font-weight:300;
	font-size:1em;
}

.typo,
table,
p,
.typo *,
table *,
p *
{
	line-height:1.5em;
}

.typo.small
{
	font-size: .85em;
}

.inner
{
	overflow:auto;
	padding:2em;
	clear: both;
}

.center
{
	max-width:1200px;
	margin:auto;
}

section .center,
section .pad
{
	padding:4em 0em 2em 0em;
}

header .center,
footer .center
{
	padding:0em 2em;
	position:relative;
}

section .center
{
	padding:4em 2em 4em 2em;
}

header h1
{
	font-size:48px;
	padding-right:270px;
	margin:30px 0 0 0;
}

header h2
{
	font-size:22px;
	font-weight:300;
	margin:0 0 20px 0;
}



.nav-toggle
{
	display:none;
	font-size:48px;
	float:right;
	color:white;
	padding:.5em;
	cursor:pointer;
	margin:0 0 0 .5em;
}

.container
{
	float:right;
	width:50%;
	margin:0 0 1em 2em;
}

.gallery .cycle-toggle
{
	font-size: 3em;
	display:block;
	margin-bottom:0px;
	opacity: .66;
	color:white;

}
.gallery .cycle-toggle:hover
{
	opacity: 1;
}
.gallery .cycle-toggle:before
{

	content: "\f106";
	text-shadow:0px 0px 15px #333;
}

.gallery #no-template-pager.open .cycle-toggle:before { content:"\f107"; }

.gallery #no-template-pager
{
	-ms-transition:all .5s;
	transition: all .5s; 
}

.cycle-prev,
.cycle-next
{
	position:absolute;
	top:50%;
	z-index:600;
	font-size:6em;
	color:white;
	opacity:.66;
	transition:opacity .5s linear;
	padding:20px;
	margin-top:-60px;
	cursor:pointer;
}

.cycle-prev:hover,
.cycle-next:hover
{
	opacity:1;
}

.cycle-prev
{
	left:0px;
}

.cycle-next
{
	right:0px;
}

.cycle-slideshow
{
	overflow:hidden;
}

.cycle-slideshow .slide
{
	width:100%;
	background-size:cover;
	background-position:center center;
	height:450px;
}

.cycle-slideshow[data-mediaplayer]
{
	cursor:pointer;
}

.cycle-slideshow.big .slide
{
	height:850px;
	height:100vh;
	border-top: 150px solid white;
	border-bottom: 38px solid white;
	box-sizing: border-box;
}

.cycle-overlay,
.cycle-pager { 
	position: absolute; 
	bottom: 0; 
	left:0; 
	right:0;
	z-index: 600;
	color:white;
	text-align:center;
}

.cycle-overlay
{
	padding:1em 0px 1.5em 0px;
	pointer-events: none;
}

.cycle-overlay,
.plrInfo
{
	text-shadow:0px 0px 15px #333;
}

.home .cycle-overlay,
.gallery .cycle-overlay
{
	padding-bottom:3.5em;
}

.cycle-overlay img
{
	float:left;
	border: 5px solid white;
	margin-right:32px;
}

.cycle-pager
{
	position:absolute;
	bottom:2px;
	left:0px;
	right:0px;
	color:#cacaca;
}

.cycle-pager img
{
	cursor:pointer;
	display:inline-block;
	width: 120px;
	height: 80px;
	margin:3px;
	background:white;
	color:white;
	overflow:hidden;
	border: 2px solid white;
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.5);
}

.cycle-pager img.cycle-pager-active
{
	border-color: #6a6a6a;
}

.home .cycle-pager,
.gallery .cycle-pager
{
	bottom:40px;
}

.cycle-overlay.animated{ 
	visibility:visible;
}

.cycle-overlay.hidden{ 
}

.cycle-overlay h1
{
	font-size:1.6em;
	color:white;
	margin:0;
	text-align:right;
}

.cycle-overlay .center
{
	padding:0px 32px;
}

.language
{
	list-style-type: none;
	display: block;
	position: absolute;
	right: 0px;
	top: 0px;
	margin: 0px;
	padding: 0 2em;
}

.language li
{
	float: left;
}

.language a
{
	padding: 10px 5px 10px 5px;
	display:block;
	text-transform:uppercase;
	color:white;
}

nav a
{
	padding: 10px 25px 10px 0;
	display:block;
	text-transform:uppercase;
	color:white;
}




table
{
	width:100%;
}

.status
{
	text-align:right;
	white-space: nowrap;
}

.status.reserved,
.status.rented,
.status.sold,
.status.offline,
.status.reserviert,
.status.vermietet
{
	color:rgb(255,51,51);
}

.info
{
	position:absolute;
	bottom:80px;
	left:30%;
	z-index:600;
	background:#2D2D2D;
	color:white;
	width:180px;
	padding:1em .5em;
	text-align:center;
	box-shadow: 3px 3px 10px 0px rgba(50, 50, 50, 1);
	font-weight:300;
	cursor:pointer;
	display:none;
}

.info.animated
{
	display:block;
}

.arrow_box:after, .arrow_box:before {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.arrow_box:after {
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #2D2D2D;
	border-width: 30px;
	margin-left: -30px;
}
.arrow_box:before {
	border-color: rgba(0, 0, 0, 0);
	border-width: 36px;
	margin-left: -36px;
}



.status.free,
.status.frei
{
	color:forestgreen;
}

.status.free:AFTER,
.status.frei:AFTER
{
	content:'>';
}

.facts tbody tr
{
	border-top:1px solid #bbb;
}

.facts
{
	border-bottom:1px solid #bbb;
}


.facts tr td:nth-child(2)
{
	text-align: right;
}

section table.offer tbody tr[data-popup]:hover{
	cursor:pointer;
}

.typo table.offer
{
	border-bottom:1px solid #bbb;
}

.typo table.offer tbody tr
{
	border-top:1px solid #bbb;
}

.typo table.offer td
{
	padding:.66em .33em;
}

.typo table.offer thead th
{
	text-align: left;
	font-weight:normal;
	padding:.5em 0em;
	white-space: nowrap;
}

.typo table.offer thead th .fa,
.typo table.offer thead th[data-sort].sorting-asc .fa-sort,
.typo table.offer thead th[data-sort].sorting-desc .fa-sort
{
	display:none;
	color:#757575;
}

.typo table.offer thead th[data-sort]
{
	cursor:pointer;
}

.typo table.offer thead th[data-sort] .fa-sort
{
	display:inline;
}

.typo table.offer thead th[data-sort].sorting-asc .fa-sort-asc
{
	display:inline;
}
.typo table.offer thead th[data-sort].sorting-desc .fa-sort-desc
{
	display:inline;
}

.typo table.offer .right
{
	text-align: right;
}

.typo table.offer .center
{
	text-align: center;
}

.typo table.offer .left
{
	text-align: left;
}

.offerMobile
{
	display:none;
	font-size:.8em;
	line-height: 1.2em;
	color:#666;
}

.offerMobile span
{
	white-space: nowrap;
}

.facts table td
{
	padding:.33em .5em;
}

a
{
	color:inherit;
	text-decoration: none;
}

nav li
{
	float:left;
}

input[type=text],textarea
{
	width:100%;
	margin-bottom:1.2em;
	border:1px solid #ccc;
	padding:.5em;
	background:#eee;
}

textarea
{
	height:120px;
}

nav ul
{
	display:block;
	margin:0px;
	padding:0px;
	list-style-type: none;
}

section
{
	overflow:auto;
}

section:nth-child(even)
{
	background:#f1f1f1;
}

section h1
{
	font-size:2em;
	margin:0em 0em 1em 0em;
}

section h1:first-line
{
	line-height:1em;
}

.kontakt .form
{
	width:45%;
}

.kontakt h3
{
	margin-bottom:.2em;
}

.kontakt p .fa,
.button .fa,
.offer .fa,
.colored .fa,
.info .fa
{
	width:16px;
	text-align:center;
	margin-right:3px;
}

.typo,
.popup .facts
{
	margin:2em 0;
}

.kontakte
{
	width:50%;
	float:right;
	overflow:auto;
}

.kontakte .clip
{
	float:left;
	clear:left;
	margin:0 1em 1em 0;
	overflow:hidden;
	width:160px;
	height:160px;
	line-height:160px;
	border:1px solid white;
	background:white;
}

section:nth-child(odd) .kontakte .clip
{
	border-color:#bbb;
}


.clip
{
	text-align:center;
}

.person
{
	padding-top:-10px;
}

.person :first-child
{
	margin-top:0px;
}

.person :first-child:first-line
{
	line-height:1em;
}

.person .clip
{
	line-height:160px;
	height:160px;
}

 .clip .fa
{
	font-size:3em;
	line-height:100px;
}


.kontakte .typo{
	margin:0px;
}

.button,
button
{
	background:#ccc3c0;
	color:white;
	padding:.66em;
	margin: 0 1em 1em 0;
	white-space: nowrap;
	display: inline-block;
	border:none;
	font-weight:bold;
}

.button.green,
button.green
{
	background: #B1C33B;
	
}

.button.secondary,
button.secondary
{
	font-weight: normal;
}


.files
{
	margin:2em 0 0 0;
}

.colored
{
	background:#ccc3c0;
	position:relative;
}

label.error
{
	color:red;
	margin-bottom: .5em;
	margin-top:-.66em;
	display:block;
}

input.error{
	border-color:red;
}

tr.detail
{
	display:none;
}

tr.detail.visible
{
	display:table-row;
}

tr.detail .center
{
	padding:0;
}

footer
{
	background:url(../images/footer.png) center bottom -3px no-repeat;
	padding-bottom:20px;
	position:absolute;
	bottom:0px;
	left:0px;
	right:0px;
	z-index:601;
	
}

.home footer,
.gallery footer
{
	background:white;
	padding-bottom:0px;
	text-align:right;
}

footer .center
{
	padding-top:10px;
	padding-bottom:10px;
}

footer address
{
	font-style: normal;
	margin:0px -8px;
}

footer span
{
	white-space:nowrap;
	padding-right:8px;
	padding-left:8px;
}

.decorator
{
	display:none;
	position:relative;
}

.decorator .decorator
{
	background:url(../images/overlay.png) bottom right no-repeat;
	background-size:contain;
	z-index:599;
	position:absolute;
	right:0px;
	bottom:10px;
	width:600px;
	height:325px;
}

.home .decorator,
.gallery .decorator
{
	display:block;
}

.gallery .decorator .decorator
{
	width:450px;
	height:240px;
}

.vtour
{
	overflow: hidden; height: 540px; width: 100%;
}

nav a.active,
nav a:hover,
.language a.active,
.button:hover,
button:hover
{
	color:#6a6a6a;
}


section table.offer tbody tr:nth-child(odd):hover,
section table.offer tbody tr:nth-child(even):hover{background-color:#e9e2e0;}
.player .plrNavigation .plrImages img.active{border-color:#6a6a6a;}


.consent-cover
{
	position:absolute;
	width:100%;
	height:100%;
	background:rgba(0,0,0,.2);
	display:flex;
	justify-content: center;
	align-items:center;
}

.consent-cover .consent-message
{
	text-align:center;
}

.consent-cover-info
{
	display:flex;
	flex-direction:column;
	align-items: center;
	gap:.5em;
	padding:2em;
}

.consent-dialog
{
	position:fixed;
	bottom:0;
	width: 100%;
	background:white;
	z-index:601;
	box-shadow: 3px 3px 10px 0px rgb(50 50 50);
}

.consent-dialog .wrapper
{
	display:flex;
	flex-direction:column;
	gap:.5em;
	margin:auto;
	max-width:1200px;
	padding:1em 2em;
}

.toggle-button
{
	font-size:1.4em;
	position:relative;
	width:2em;
	height:1em;
	background:gray;
	box-sizing:border-box;
	border-radius:.5em;
	transition:background .5s;
	cursor:pointer;
}

.toggle-button::after
{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:calc(1em - 4px);
	height:calc(1em - 4px);
	margin:2px;
	background:white;
	border-radius:.4em;
}

.toggle-button.active
{
	background:green;
}

.toggle-button.active::after
{
	right:0;
	left:auto;
}

a[consent-settings]
{
	cursor: pointer;
}

.consent-settings .tab
{
	border-top:1px solid black;
}

.consent-settings .consent-preferences
{
	margin-top:2em;
	border-bottom: 1px solid black;
}

.consent-settings .tab .header
{
	display:flex;
	justify-content: space-between;
	align-items:center;
	gap:.5em;
}

.consent-links
{
	gap:.5em;
	display:inline-flex;
	text-decoration: underline;
	flex-wrap: wrap;
}

.consent-settings .tab [data-toggle]
{
	cursor:pointer;
}


.consent-settings .tab [data-toggle] h2
{
	display: flex;
	gap:.5em;
	align-items: center;
}

.consent-settings .tab [data-toggle] h2:before
{
	display: block;
	font-weight: bold;
	content:"+"
}

.consent-settings .tab [data-toggle].active h2:before
{
	content:"-";
}


.consent-settings .tab .body
{
	padding-bottom: 1em;
}

.tab .body.toggled
{
	display:block;
}

.contactForm > label
{
	display:flex;
	gap:.5em;
	margin-bottom: 1.2em;
}

label span a
{
	text-decoration: underline;
}

.responsive
{
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 0px;
	height: 0;
	overflow: hidden;
}

.responsive iframe,
.responsive > .consent-content
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border:0;
}

.hidden
{
	display:none;
}

@media only screen 
and (max-width : 1200px) {
	.popup.bannerpopup.visible
	{
		padding-top:180px;
	}

	.cycle-slideshow.big .slide
	{
		background-attachment:scroll;
	}
	
	header h1,
	section h1,
	.nav-toggle
	{
		font-size:2em;
	}
	
	.cycle-overlay h1,
	header h2
	{
		font-size:22px;
	}
	
	.cycle-pager img {
		width: 60px;
	  	height: 40px;
	}	
	.gallery2.center
	{
		padding-top: 153px;
	}
	
}

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

	.gallery2.center
	{
		padding-top: 0px;
	}

	.gallery2 .row a
	{
		width:calc(33.33% - 1em)
	}

	main section  .gallery2 h1
	{
		margin-top: 1.5em;
	}

	.lage .typo table
	{
		width:100% !important;
	}
	
	.vtour
	{
		height: 350px;
	}

	.language
	{
		position: static;
		padding: 0 0px;
	}
	
	.language li
	{
	   float:right;
	}

	.offerMobile
	{
		display:block;
	}

	.logo,
	.info.animated
	{
		display:none;
	}

	section:nth-child(even) .container,
	section:nth-child(odd) .container,
	.kontakte
	{
		float:none;
		margin:0px;
		width:auto;
	}
	
	.kontakt .typo,
	.cycle-slide
	{
		width:100%;
	}
	
	.popup.visible
	{
		padding:2em 0;
	}
	
	.popup.visible .inner
	{
		padding:1em;
	}
	
	.popup.visible .wrapper
	{
		width:100%;
		margin:1em auto;
	}
	
	.home header,
	.home footer,
	.gallery header,
	.gallery footer
	{
		position:relative;
	}
	
	.nav-toggle
	{
		display:block;
	}
	
	.decorator .decorator
	{
		width:400px;
	}
	
	.home .cycle-overlay, .gallery .cycle-overlay
	{
		padding-bottom: 1.5em;
	}
	
	nav
	{
		display:none;
	}
	
	nav.visible
	{
		display:block;
	}
	
	nav li
	{
		float:none;
	}
	
	.colored
	{
		min-height:20px;
	}
	
	section:FIRST-CHILD
	{
		margin-top:0px;
	}
	
	section h1
	{
		margin:1em 0;
	}
	
	section h1:FIRST-CHILD
	{
		margin-top:0;
	}
	
	.cycle-slideshow.big .slide
	{
		height:450px;
	}
	
	
	.home .cycle-pager,
	.gallery .cycle-pager
	{
		bottom: 2px;
	}

	.optional,
	.project
	{display:none;}
	
	section .center
	{
		padding-top:3em;
	}
	
	header h1
	{
		padding-right: 65px;
	}
		
	.cycle-slideshow.big .slide
	{
		border: 0px;
	}

}
	
@media only screen 
and (max-width : 640px) {
	
	.gallery2 .row a
	{
		width:calc(50% - 1em)
	}
	
	.gallery2.center
	{
		margin-bottom: 100px;
	}
	
	.popup.bannerpopup.visible
	{
		padding-top:160px;
	}
	
	header h1,
	section h1,
	.nav-toggle
	{
		font-size:26px;
	}
	
	.cycle-overlay h1,
	header h2
	{
		font-size:18px;
	}
	
	header .center,
	footer .center
	{
		padding:0em 1em;
	}
	
	footer .center
	{
		padding:1em;
	}
	
	footer
	{
		position:relative;
	}
	
	section .center
	{
		padding:2em 1em 1em 1em;
	}
	
	.project
	{display:none;}
	
	.cycle-slideshow .slide
	{
		height:300px;
		overflow:hidden;
	}
	
	
	.cycle-slideshow.big .slide
	{
		height:350px;
	}
	
		

	
	.kontakte .clip
	{
		float:none;
		margin:1em 0em;
	}
	
	.kontakte p
	{
		padding-left:0px;
	}
	
	.person h3
	{
		margin-top:.5em;
	}
	
	.gallery #no-template-pager
	{
		position:relative;
	}
	
	.gallery .cycle-next, .gallery .cycle-prev
	{
		top:175px;
	}
	
	.gallery .cycle-toggle
	{
		display:none;
	}
	
	.gallery .cycle-content
	{
		margin-top:8px;
	}
	
	.decorator .decorator,
	.gallery .decorator .decorator
	{
		width:250px;
	}
	
	footer address
	{
		margin:0px -4px;
	}
	
	footer span
	{
		padding-right:4px;
		padding-left:4px;
	}
}

input[name=Email_Address]{display:none;}