@charset "UTF-8";
/* CSS Document */

@media only screen and (min-width: 980px) and (max-width: 20000px) {
	
	.desktop, .mobile {
		display: none;
	}
	.desktop {
		display: block;
	}
	
	body, html {
		font-size: 18px;
		line-height: 31.5px;
	}
	
	.cd-auto-hide-header.transpi {
	}
	.cd-auto-hide-header {
		height: 6rem;
	}
	.cont-header-outer {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
	}
	.cont-header-inner {
		max-width: 84rem;
		height: 6rem;
		padding: 0 2rem;
		margin: 0 auto;
		position: relative;
		-webkit-transition: all 0.3s ease-in-out 0s;
		transition: all 0.3s ease-in-out 0s;
	}
/*	.cont-header-inner.shrink {
		height: 4rem;
		-webkit-transition: all 0.3s ease-in-out 0s;
		transition: all 0.3s ease-in-out 0s;
	}
*/
	
	/* logo */
	.logo {
        font-size: 0.8889rem;
        line-height: 1.75em;
        
        /*position: absolute;*/
        display: block !important;
		-webkit-transition: all 0.3s ease-in-out 0s;
		transition: all 0.3s ease-in-out 0s;
	}
    .shrink .logo {
		-webkit-transition: all 0.3s ease-in-out 0s;
		transition: all 0.3s ease-in-out 0s;
    }
    .slider-opened .logo {
		-webkit-transition: all 0.3s ease-in-out 0s;
		transition: all 0.3s ease-in-out 0s;
    }
    .home .logo {    
    }
    .home .shrink .logo {
    }
    .home.slider-opened .shrink .logo {
    }
	.logo .svg {
		width: 100%;
		height: 100%;
		display: block;
	}
	
	.mainmenu {
		position: absolute;
		bottom: 1.25rem;
		right: 0.75rem;
		font-size: 1.1rem;
	}
	.mainmenu ul li {
		float: left;
		padding: 0 0.75rem;
	}
	
    .vertmenu {
        float: left;
    }
	.vertmenu li {
		float: left;
		padding: 0 0.2rem;
	}
    .logo .vertmenu {
        margin-left: -0.2rem;
    }

	/* hamburger */
	.hamburger {
		width: 2rem;
	}
	.hamburger span {
		width: 2rem;
		height: 2px;
		margin: 5px 0;
	}
	.slider-opened .hamburger span.top-bar {
		width: 2.2rem;
		top: 0.45rem;
		left: -0.1rem;
	}
	.slider-opened .hamburger span.middle-bar {
		left: -40px;
	}
	.slider-opened .hamburger span.bottom-bar {
		width: 2.2rem;
		top: -0.45rem;
		left: -0.1rem;
	}
	
	/* navigation */
	.cont-navigation-outer {
		width: 100%;
	}
	.cont-navigation-inner {
		max-width: 80rem;
		margin: 0 auto;
		padding: 12rem 0 11rem;
		font-size: 2rem;
		line-height: 3rem;
	}
	.navigation .nav {
	}
	.navigation .nav a {
	}
	
	/* closer */
	.cont-closer-outer {
		height: 6rem;
	}
	.cont-closer-inner {
		position: relative;
		width: 100%;
		margin: 0 auto;
	}
	.closer {
		width: 2rem;
		top: 2rem;
		right: 2rem;
	}
	.closer span {
		width: 2rem;
		height: 2px;
		margin: 5px 0;
	}
	.closer span.top-bar {
		width: 2.2rem;
		top: 0.45rem;
		left: -0.1rem;
	}
	.loser span.middle-bar {
		left: -40px;
	}
	.closer span.bottom-bar {
		width: 2.2rem;
		top: -0.45rem;
		left: -0.1rem;
	}
	
	/* layout01 */
	.cont-layout01-outer {
		
	}
	.cont-layout01-inner {
		position: relative;
		max-width: 100%;
		padding: 0;
		margin: 0 auto;
		height: 100vh !important;
        min-height: 45rem !important;
	}
	.layout01 {
		background: transparent;
		width: 100%;
		padding: 0;
		margin: 0 auto;
		text-align: center;
	}
	.layout01 img {
		margin: 0 0 0.75rem 0;
	}
	.layout01 .introtext {
		font-size: 1.4rem;
		line-height: 1.5em;
		display: block;
		width: 100%;
		margin: 0 auto 2rem;
	}
	
	/* layout02 */
	.cont-layout02-fullwidth {
	}
	.cont-layout02-wrapper {
		width: 100%;
	}
	.cont-layout02-outer {
		max-width: 80rem;
		padding: 0 0 6rem;
		margin: 0 auto;
	}
	.cont-layout02-inner {
	}
	.layout02 {
		padding: 0;
	}
	.cont-layout02-inner h2 {
		font-size: 2rem;
		line-height: 1.2em;
		padding: 0 0 6rem 0;
		display: block;
		width: 100%;
	}
	
	/* footer */
	.cont-footer-fullwidth {
	}
	.cont-footer-wrapper {
	}
	.cont-footer-outer {
	}
	.cont-footer-inner {
		max-width: 80rem;
		margin: 0 auto;
	}
	.footer {
		padding: 4rem 4rem 0 4rem;
		margin: 0 auto;
	}
	
	/* teaser */
	.cont-teaser-outer {
		width: 100%;
	}
	.cont-teaser-inner {
		max-width: 80rem;
		margin: -6rem auto 0;
		padding: 0;
	}
	
	/* Boennsch */
	.cont-titlecontent-outer {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh !important;
        min-height: 45rem !important;
	}
	.cont-titlepic-outer {
		height: 100vh !important;
        min-height: 45rem !important;
	}
	.cont-titlepic-inner {
		height: 120vh !important;
        min-height: 50rem !important;
	}
	.footer-01, .footer-02, .footer-03 {
		width: 100%;
	}
	.footer-02 {
		text-align: center;
	}
	.footer-03 {
		text-align: right;
	}
    .cont-modal-outer {
        max-width: 80rem;
        padding: 6rem 0;
        margin: 0 auto;
    }
    .cont-tablecell-outer {
        width: 33.33%;
        border: 0.5rem solid #ffffff;
    }
    .cont-tablecell-inner {
        padding: 0;
    }
    .cont-modal-inner h2 {
		font-size: 2rem;
		line-height: 1.2em;
		padding: 0 0 4rem 0;
		display: block;
		width: 100%;
	}
    .social .cont-content {
        border: 0.5rem solid #ffffff;
    }
    .svg-icon {
        width: 3.6rem;
    }
    .smallwidth {
        max-width: 50rem;
    }
    .vertline.size-xl {
        height: 12rem;
    }
    .vertline.size-l {
        height: 8rem;
    }
    .vertline.up {
        margin-top: 2rem !important;
    }
    .vertline.down {
        margin-bottom: 2rem !important;
    }
    .fulltext img {
        margin: 3rem 0;
    }
    
    /* Boennsch neu */
    .cont-header-col01, .cont-header-col03 {
        width: 33.33%;
    }
    .cont-header-col02 {
        width: 4rem;
        height: 4rem;
    }
    .insert {
        height: 1.9em; /*0.175em*/
        margin: -0.25em 0 -0.6061em 0;
    }
    .legend {
        font-size: 0.6111rem;
        line-height: 1.75em;
    }
    
    .fullsize {
        width: 100%;
    }
    .halfsize {
        width: 50%;
    }
    
    .carte-line {
        margin: 2.5rem 0;
    }
    h2.carte {
        margin: 8rem 0 0 0 !important;
    }
    
	/* lightgallery */
	#animated-thumbnails {
		padding: 0.5rem;
	}
	#animated-thumbnails::after {
		content: '';
		display: block;
		height: 0;
		overflow: none;
		clear: both;
	}
	.thmb {
		display: inline-block;
		border-bottom: 0 !important;
		width: 25%;
		padding: 0.5rem;
		float: left;
	}
    
    /* heights */
    .hght-100 {
        height: 100% !important;
    }
    .hght-120 {
        height: 120% !important;
    }
    .hght-60 {
        height: 60vh;
        min-height: 30rem;
        max-height: 35rem;
    }
    .hght-70 {
        height: 70vh;
        min-height: 35rem;
        max-height: 40rem;
    }
    .hght-90 {
        height: 90vh;
        min-height: 50rem;
    }
	
    /* grid */
    .wdth-35 /*35*/ {
        width: calc(10 * (50px + 9 * ((100vw - 500px) / 710)));
        max-width: 680px;
    }
    .wdth-45 /*45*/ {
        width: calc(10 * (76px + 5 * ((100vw - 760px) / 580)));
        max-width: 860px;
    }
    .wdth-60 /*62.5*/ {
        width: calc(10 * (76px + 22 * ((100vw - 760px) / 580)));
        max-width: 1200px;
    }
    .wdth-75 /*75*/ {
        width: calc(10 * (76px + 34 * ((100vw - 760px) / 580)));
        max-width: 1440px;
    }
    .wdth-85 /*85*/ {
        width: calc(10 * (76px + 43 * ((100vw - 760px) / 580)));
        max-width: 1620px;
    }
    
    .perc-16 {
        width: 16.66%;
    }
    .perc-20 {
        width: 20%;
    }
    .perc-25 {
        width: 25%;
    }
    .perc-33 {
        width: 33.33%;
    }
    .perc-40 {
        width: 40%;
        margin: 0 auto;
    }
    .perc-50 {
        width: 50%;
    }
    .perc-60 {
        width: 60%;
    }
    .perc-66 {
        width: 66.67%;
    }
    .perc-80 {
        width: 80%;
    }
    .perc-90 {
        width: 90%;
        margin: 0 auto;
    }
    .perc-100 {
        width: 100%;
    }
	
    /* padding */
    .pad-xxs {
        padding: 0 0.625vw;
    }
    .pad-xs {
        padding: 0 1.25vw;
    }
    .pad-s {
        padding: 0 2.5vw;
    }
    .pad-m {
        padding: 0 5vw;
    }
    .pad-l {
        padding: 0 7.5vw;
    }
    
    /* justified */
    .just-right {
        margin-left: auto;
        margin-right: 0;
    }
    .just-left {
        margin-right: auto;
        margin-left: 0;
    }
    .just-center {
        margin: 0 auto;
    }
    
    /* spacer */
    .spacer-header {
        height: 6rem;
    }
    .spacer-xxxs {
        height: 1rem;
    }
    .spacer-xxs {
        height: 4vh;
        max-height: 2.4444rem;
        min-height: 1.2222rem;
    }
    .spacer-xs {
        height: 8vh;
        max-height: 4.8889rem;
        min-height: 2.4445rem;
    }
    .spacer-s {
        height: 12vh;
        max-height: 7.3333rem;
        min-height: 3.6667rem;
    }
    .spacer-m {
        height: 16vh;
        max-height: 9.7778rem;
        min-height: 4.8889rem;
    }
    .spacer-l {
        height: 20vh;
        max-height: 12.2222rem;
        min-height: 6.1111rem;
    }
    .spacer-xl {
        height: 24vh;
        max-height: 12.2222rem;
        min-height: 6.1111rem;
    }
    .spacer-xxl {
        height: 28vh;
        max-height: 12.2222rem;
        min-height: 6.1111rem;
    }
    
    h1.top {
        font-size: 5vh;
        line-height: 1.5em;
        width: 66.66%;
        margin: 0 auto;
    }
    h2.top {
        font-size: 3.5vh;
        line-height: 1.5em;
        width: 66.66%;
        margin: 0 auto;
    }
    h3.top {
        font-size: 3vh;
        line-height: 1.5em;
        width: 66.66%;
        margin: 0 auto;
    }
    .medium {
        font-family: 'bitterregular', sans-serif;
        font-size: 2.75vh !important;
        line-height: 1.75em;
    }
    .small {
        font-family: 'open_sansregular', sans-serif;
        font-size: 1.2rem !important;
        line-height: 1.75em;
    }
    
    .cont-main-column {
        width: 33.33%;
    }
    .text {
        font-size: calc(14px + (21 - 18) * ((100vw - 980px) / (1920 - 980)));
        line-height: 1.75em;
        margin: 0 2% 4%;
        padding: 10%;
        background: #ffffff;
        text-align: center;
    }
    .picture {
        margin: 0 2%;
    }
    .both .text, .both .picture {
        margin: 0 !important;
    }
    .both {
        margin: 0 2% 4%;
    }
    .subline {
        display: inline-block;
        margin-top: 6%;
        font-size: calc(10.5px + (14 - 10.5) * ((100vw - 980px) / (1920 - 980)));
        line-height: 1.75em;
    }
    
    .banner {
        width: 46%;
        margin: 0 2%;
        padding: 1rem 2rem 1rem 4rem !important;
    }
    .takeaway {
        background-image: url('../images/arrow-green.svg') !important;
        background-repeat: no-repeat !important;
        background-position: center left !important;
        background-size: 3rem 3rem !important;
    }
    .reservierung {
        background-image: url('../images/arrow-white.svg') !important;
        background-repeat: no-repeat !important;
        background-position: center left !important;
        background-size: 3rem 3rem !important;
    }
}


@media only screen and (min-height: 0) and (max-height: 720px) {
    /* styles */
    h1.top {
        font-size: 2rem !important;
        line-height: 1.2em !important;
    }
    h2.top {
        font-size: 1.4rem;
        line-height: 1.2em;
    }
    
    h3.top {
        font-size: 1.2rem;
        line-height: 1.75em;
    }
    
    .medium, .small {
        font-size: 1.2rem !important;
        line-height: 1.75em;
    }
}