/* BASICS */
*,
html {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    outline: 0;
}
img,
video {
    max-width: 100%;
    height: auto;
    border: 0;
}
iframe {
    border: 0;
}

body.modal {
    overflow-y: hidden;
}

html {
    background-color: #fff;
    color: #000;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
	font:400 20px/1.7 "sofia-pro", sans-serif;	
}

.monly {
    display: none;
}

.clear {
    clear: both;
}

.frame-default {
    width: 1220px;
    max-width: 85%;
    margin: 0 auto;
}

/* Effekte */
.top_wrap,
.top_wrap a,
a.booklink,
.top1 svg,
.logo svg,
.footer_address a,
#main a.button,
#main a.dce_cta_btn,
.logo::after,
.logo::before,
.langmenu,
.oz,
.frame-type-form_formframework button,
#menu > li > a,
.top2{
	-moz-transition: all 0.3s linear;
	-o-transition: all 0.3s linear;
	transition: all 0.3s linear;	
}

/* RESPONSIVE */
@media (max-width: 1440px) {}
@media (max-width: 1366px) {}
@media (max-width: 1279px) {

	.top1_left .monly {
		display: flex;
		height: 54px;
		align-items: center;
	}
	
	.donly {
		display: none;
	}
}
@media (max-width: 1023px) {
	
	html {
		font-size:16px;
	}
	
    .frame-default {
        max-width: 92%;
    }
	
	
}
@media (max-width: 767px) {

	.frame-default {
        max-width: 92%;
		width:92%;
    }
		
}
@media (max-width: 359px) {}


/* ###################################################################################################### */
/* ###################################################################################################### */


.top_wrap {
    display: flex;
    justify-content: space-between;
    position: fixed;
    top:0;
    width:100%;
    left:0;
    z-index: 99;
    padding:0 100px;
    height: 150px;
    line-height: 80px;
    z-index: 999;
	color:#fff;
}

	.logo {
		display: flex;
		align-items: center;
		line-height: 0;
		width:110px;
		position: relative;
	}

		.logo::after,
		.logo::before{
			position: absolute;
			content:' ';
			height: 1px;
			background:#fff;
			opacity: 0.5;
			width:100px;
			top:54px;
			left: -130px;
		}

		.logo::after {
			width:100vw;
			/* Logo Width + 30px !!!*/
			left:140px;
		}

		.logo svg {
			height: 110px;
			width: inherit;
			fill:#fff;
		}

	.top_right {
		flex:auto;
	}

	.top1 {
		display: flex;
		position: relative;
		justify-content: flex-end;
		height: 54px;
		line-height: 54px;
		font-size:18px;
	}

		.top1 svg {
			height: 22px;
			width: auto;
			fill:#fff;
		}

		.top1_left {
			position: absolute;
			top:0;
			left: 0;
			width:100%;
			text-align: center;
			display: flex;
			justify-content: center;
			z-index: 1;
		}

			.waspan {
			  display: flex;
			  height: 54px;
			  align-items: center;
			}

		.top1_right {
			position: relative;
			z-index: 2;
		}

			.bookreq,
			.oz{
				margin-right: 10px;
			}

			.langmenu {

			}

	.top2 {
		text-align: center;
	}

	/* Scroll Settings */
	
	.nobanner .top_wrap,
	.top_wrap.scroll {
		background:#fff;
		height: 150px;
		-webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
		-moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
		box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
	}

		.nobanner .logo::after,
		.nobanner .logo::before,	
		.top_wrap.scroll .logo::after,
		.top_wrap.scroll .logo::before{
			opacity: 1;
		}

	.hamburger_wrap {
		display: none;
	}

/* RESPONSIVE */
@media (max-width: 1440px) {}
@media (max-width: 1366px) {

	.top1_left {
		justify-content: flex-start;
	}
}
@media (max-width: 1279px) {
	
	.top1 {
		justify-content: center;
	}
	
	.top1_left {
		position: relative;
		width: inherit;
	}
}
@media (max-width: 1023px) {
	
	.top_wrap,
	.nobanner .top_wrap{
		padding: 0 4%;
		height: 60px;
		line-height: 60px;
		background:#fff;
		-webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
		-moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
		box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
	}
		.logo {
			width:50px;
		}
	
		.logo svg {
			height: 50px;
		}
	
		.logo::after,
		.logo::before {
			display: none;
		}
	
	.bookreq {
		margin-right: 0;
	}
	
	.hamburger_wrap {
		display: inline-block;
	}	
	
	.top2 {
		position: fixed;
		top: 60px;
		background: #fff;
		width: 100%;
		left: -100%;
		height: calc(100vh - 60px);
	}
	
		.top2.active {
			left:0;
			z-index: 11;
			max-height: calc(100vh - 60px);
			overflow-x: hidden;
			overflow-y: scroll;
		}
	
		.top2.active .oz,
		.top2.active .langmenu {
			display: block;
			line-height: 60px;
			height: 60px;
			text-align: center;
		}
	
}
@media (max-width: 767px) {}
@media (max-width: 359px) {}


/* ###################################################################################################### */
/* ###################################################################################################### */

#main {
	margin-top:160px;
}

.nobanner #main {
	margin-top:260px;
}

/* RESPONSIVE */
@media (max-width: 1440px) {}
@media (max-width: 1366px) {}
@media (max-width: 1279px) {}
@media (max-width: 1023px) {
	#main {
		margin-top:80px;
	}

	.nobanner #main {
		margin-top:160px;
	}
}
@media (max-width: 767px) {

	#main {
		margin-top:40px;
	}

	.nobanner #main {
		margin-top:100px;
	}
	
}
@media (max-width: 359px) {}


/* ###################################################################################################### */
/* ###################################################################################################### */

#footer {
	background:#f36;
	color:#fff;
}

	.footer_inner {
		padding:54px 0;
	}
		.footer_address {
			display: flex;
			flex-wrap: wrap;
			justify-content: space-between;
		}

			.footer_address .col {
				width:33%;
				max-width: 33%;
			}

			.footer_address .col2 {
				text-align: center;
			}

				.footer_address .sm_menu {
					margin-top:1em;
				}

			.footer_address .col3 {
				text-align: right;
			}

		.footer_menu {
			font-size:16px;
			min-height: 40px;
			line-height: 40px;
			text-align: center;
			background:#fff;
		}

/* RESPONSIVE */
@media (max-width: 1440px) {}
@media (max-width: 1366px) {}
@media (max-width: 1279px) {}
@media (max-width: 1023px) {}
@media (max-width: 767px) {
	
	.footer_inner {
		padding:25px 0;
		text-align: center;
	}
	
	.footer_address {
		flex-direction: column;
	}
	
	.footer_address .col {
		width:100%;
		max-width: 100%;
	}
	
	.footer_address .col2 {
		margin:1em 0;
	}
	
	.footer_address .col3 {
		text-align: center;
	}
	
}
@media (max-width: 359px) {}
