/* CSS Document 

Farbcode: a7173a

*/

*,html {
	margin:0px;
	padding:0px;
	box-sizing:border-box;
}

img {
	border:none;
}

.clearer,
.clear {
	clear:both;
}

body {
	font-size:24px;
    font-family: "minion-pro",serif;
	font-weight:400;
	color:#2a2a2a;
	line-height:1.5em;
   
}

.footer_nl,
.footer2_wrap,
a.button,
span.button,
header h3,
h1,
.dce2i_subhead,
.news_start_time,
.text2,
 .dce_cta,
.buchen,
.top1,
#menu ul,
#main #formhandler-contact-form button,
#main #optin_form button{
    font-family: 'MaisonNeue';
    text-rendering: optimizeLegibility;
}

/* Inhaltsberete Default Breite */

.frame-default,
.page {
	width:75%;
	margin:0 auto;	
}

.two-cols-container .frame-default,
.three-cols-container .frame-default,
.four-cols-container .frame-default {
	width:100%;	
}

.top_wrap {
	position:fixed;
	top:0;
	width:100%;
	z-index:1001;
}

	.top1 {
		text-align:right;
		height:100px;
		line-height:100px;
		color:#fff;
        display: flex;
        padding:0 100px;
        color:#dbbc9c;
        font-size: 16px;
        z-index: 2;
        position: relative;
	}

        .top1_left {
            min-width: calc(50% - 130px);
            text-align:left;
        }
        
            .lang_wrap {
                padding-left:10px;
                display: none;
            }

        .logo {
            width:260px;
            padding-top:50px;
            text-align: center;
        }

            .logo_ws {
                width:145px;
            }
            
            .logo_farbe {
                display:none;
                width:145px;
            }
	
        .buchen {
            min-width: calc(50% - 130px);
            text-align: right;
        }      

	.top2 {
		display: none;
        position: absolute;
        top:0;
        left:0;
        z-index: 1;
        width:100%;
        height: 100vh;
        background:#fbf4ee url("../Images/top2_bg.png") top left no-repeat;
        
	}

        .top2.active {
            display: flex;
        }

        .top2_menu,
        .top2_img {
            min-width: 50%;
            padding-top:100px;
            position:relative;
        }

            .top2_menu {
                display: flex;
                align-items: center;
                padding:100px 100px 0 100px;
            }

            .top2_menu div {
                width: 100%;
            }

            .top2_img {
                overflow: hidden;
            }

            .top2_img .dce_mi img {
                bottom: -9999px;
                height: auto;
                left: -9999px;
                margin: auto;
                min-height: 100%;
                min-width: 100%;
                position: absolute;
                right: -9999px;
                top: -9999px;
                width: auto;	
            }
    
    /* Scroll Settings */
	
	.nobanner .top1,
    .active .top1,
	.scroll .top1 {		
			-webkit-box-shadow: 0px 2px 5px 0px rgba(50, 50, 50, 0.25);
			-moz-box-shadow:    0px 2px 5px 0px rgba(50, 50, 50, 0.25);
			box-shadow:         0px 2px 5px 0px rgba(50, 50, 50, 0.25);
            background:#fff;
	}
	
	.top_wrap:hover .top1,
	.nobanner .top1,
	.scroll .top1 {
	}
		
        .active .logo_ws,	
		.nobanner .logo_ws,	
		.scroll .logo_ws {
			display:none;
		}
	
        .active .logo_farbe,
		.nobanner .logo_farbe,
		.scroll .logo_farbe {
			display:inline-block;
		}

        .active .logo,
        .nobanner .logo,
		.scroll .logo {
			padding-top:20px;
		}



	
.banner_wrap {
	position:relative;
	line-height:0;
	z-index:1;
	height: 100vh;
	overflow:hidden;
}

	.nobanner .banner_wrap {
		display:none;	
	}
	
	.banner50 .banner_wrap,
	.banner50 .banner_wrap .banner-item {
		height: calc(70vh);
	}

	.banner_wrap .banner-item {
		height: 100vh;
	}	

	.banner_wrap .banner-item img {
		bottom: -9999px;
		height: auto;
		left: -9999px;
		margin: auto;
		min-height: 100%;
		min-width: 100%;
		position: absolute;
		right: -9999px;
		top: -9999px;
		width: auto;
	}


    
   
    .top2_img::after,
    .banner_items .slick-list::before {
        content:' ';
        z-index: 11;
        position: absolute;
        top:0;
        left:0;
        background:rgba(0,0,0,0.4);
        width:100%;
        height: 100%;
    }


    .banner_items .slick-list::after {
        content:' ';
        z-index: 2;
        position: absolute;
        top:0;
        left:0;
        background:url("../Images/main_bg.png") top left no-repeat;
        width:100%;
        height: 100%;
    }

    .banner50 .banner_items .slick-list::after {
        display: none;
    }

    .bannertext {
        position: absolute;
        z-index: 2;
        text-align: right;
        color:#fff;
        right:100px;
        bottom:200px;
    }
        .text1 {
            font-size: 100px;
            line-height: 100px;
            font-family: 'SangBleuKingdom';
        }

        .text2 {
            font-size:16px;
            line-height: 16px;
            display: block;
            letter-spacing:0.1em;
        }

    .scrolldown {
          position: absolute;
          z-index: 3;
          width:100%;
          margin:0 auto;
          height:0px;
          padding:0
        }

.hscroll-line {
	bottom:30px;
	right: calc(50% - 30px);
	height: 1px;
	position: absolute;
	overflow: hidden;
    width:60px;
    transform: rotate(90deg);
    tranform-origin:50% 50%;
}


.hscroll-line::before,
.hscroll-line::after {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	content: ""
}

.hscroll-line:before {
	background: #dbbc9c;
}

.hscroll-line::after {
	background: #fbf4ee;
	animation: move 3s infinite
}

@keyframes move {
	0% {
		transform: translate3d(-200%, 0, 0)
	}
	60% {
		transform: translate3d(100%, 0, 0)
	}
	100% {
		transform: translate3d(100%, 0, 0)
	}
}
	
main {
    
}

    #main {
        background:url("../Images/main_bg.png") top left no-repeat;
        padding-top:100px;
    }

    #main.sticky {
        position: relative;
        z-index: 1;
        background:none;
    }

        #main.sticky::before {
            content:' ';
            position: fixed;
            top:100px;
            width: 100%;
            z-index: -1;
            background:url("../Images/main_bg.png") top left no-repeat;
            height:370px;
        }

.nobanner main {
	margin-top:100px;
}	

.h1_wrap {
	text-align:right;
	border-bottom:1px solid #d2d2d2;
	border-top:1px solid #d2d2d2;
	margin-bottom:80px;	
	background:url(../Images/h1_wrap_bg.png);
	padding:50px 0 40px 0;
}

	.h1_wrap .preh1 {
		text-transform:uppercase;	
		margin-bottom:10px;
	}

footer {
	position: relative;
    z-index: 1;
}

	.footer_wrap {
		background:#2a2a2a url("../Images/footer_wrap_bg.jpg") top center no-repeat;
        background-size: auto 300px;
        color:#4c6828;
        padding-top:170px;
        margin-top:110px;
	}

        .footer_inner  {
            background:#fbf4ee url("../Images/footer_inner_bg.png") top center no-repeat;
            background-size: 100% auto;
            max-width: 950px;
            margin:0 auto;
            padding: 30px 50px;
            color:#2a2a2a;
        }

            .footer_logo {
                width:145px;
                margin:0 auto;
            }

            .footer_nl {
                text-align: center;
                margin:20px 0;
            }

            .footer_cols {
                display: flex;
            }
                
                .fcol {
                    width:33.33%;
                }

                    .fc2 {
                        text-align: center;
                    }

                    .fc3 {
                        text-align: right;
                    }
                    
                    .fc3 li {
                        list-style: none;
                    }

                    .fc3 li:hover span {
                        padding-right:5px;
                    }

        .footer2_wrap {
            text-align: center;
            line-height: 38px;
            padding:24px 0;
            font-size:12px;
        }

            
	
	
/* *****************************************************************************************
   RESPONSIVE SECTION
*******************************************************************************************/

/* portrait */
@media only screen 
and (min-device-width: 768px) 
and (max-device-width: 1024px) 
and (orientation: portrait) {
.frame-default,
.page {
	width:85%;
}

}

/* landscape */
@media only screen 
and (min-device-width: 768px) 
and (max-device-width: 1024px) 
and (orientation: landscape) {

.frame-default,
.page {
	width:85%;
}

}

@media screen and (max-width: 1023px) {
   .top1 {
        padding:0 5%;
    }
    
    .banner_wrap,
    .banner_wrap .banner-item{
        height:50vh;
    }
    
    .bannertext {
        right:5%;
        bottom:75px;
    }
        
        .text1 {
            font-size:60px;
            line-height: 60px;
        }
    
    .top2_menu {
        padding:100px 50px 0 50px;
    }
    
    .footer_wrap {
        background-size:auto 200px;
    }
}

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

body {
    font-size: 22px;
}
    
.frame-default, .page , .f3_right{
	width:96%;
	margin:0 2%;
}

.donly {
	display:none;	
}
    
.top1 {
    padding: 0 2%;
    -webkit-box-shadow: 0px 2px 5px 0px rgba(50, 50, 50, 0.25);
    -moz-box-shadow:    0px 2px 5px 0px rgba(50, 50, 50, 0.25);
    box-shadow:         0px 2px 5px 0px rgba(50, 50, 50, 0.25);
    background:#fff;
    height:60px;
    line-height: 60px;
}

.top2 {
    background-size: 100% auto;
    top:60px;
    height: calc(100vh - 60px);
}
    
.top2_img {
    display: none;
}
    
.top2_menu {
    min-width: 100%;
}
    
    .active .logo_ws, 
    .nobanner .logo_ws, 
    .scroll .logo_ws {
        display: inline-block;
    }
    
    .active .logo_farbe, .nobanner .logo_farbe, .scroll .logo_farbe {
        display: none;
    }
    
    .active .logo, .nobanner .logo, .scroll .logo {
        padding-top:5px;
    }
    
.logo {
    width: calc(100% - 240px);
    padding-top:5px;
}
    
    .logo_ws {
        width:46px;
        height: auto;
    }
    
    .top1 .logo a,
    .top1 .logo a:link,
    .top1 .logo a:active,
    .top1 .logo a:visited,
    .top1 .logo a:hover {
        display: block;
    }
    
    .top1_left {
        min-width: 120px;
    }
    
    .buchen {
        min-width: 120px;
    }

.banner_wrap {
    margin-top:60px;
}
    
    .banner_items .slick-list::after {
        background-size:100% auto;
    }
    
    .banner50 .banner_wrap, .banner50 .banner_wrap .banner-item {
        height:50vh;
    }
    
#main {
    padding-top:50px;
    background-size:100% auto;
}
    
.nobanner main {
    margin-top:60px;
}
    
    #main.sticky::before {
        background-size:100% auto;
        top:60px;
    }
    
    .footer_wrap {
        margin-top:55px;
    }
    
    .footer_inner {
        max-width: 100%;
        padding:30px 2%;
    }
    
    .footer_cols {
        flex-direction: column;
    }
    
    .fcol {
        width:100%;
    }
    
    .fc1, .fc2, .fc3 {
        text-align: center;
        margin-bottom:1em;
    }

}