*{
  box-sizing: border-box;
}
.menu-btn{
  display: none;
}
body{
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  line-height: 1.5;
  
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

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

nav{
  background: #080000;
  position: sticky;
  top: 0;
  text-align: center;
  z-index:20
}

nav ul{
  margin: 0;
  padding: 0;
  list-style: none;
}

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

nav ul li a{
  display: block;
  padding: 12px 0px;
  color: #fff;
  text-decoration: none;
  border-bottom: 3px solid transparent;
}

nav ul li a:hover,
nav ul li.current-menu-item a{
  border-color: #D7C098;
  color: #D7C098;
}



.page-id-202 #reservationPath, .page-id-202 #pickupPath{
  display: none !important
}

.teaser{
  background:  rgba(5,26,7,.73);
  text-align: center;
  padding:40px 60px;
  color: #fff;
  position: relative;
  z-index:3;
  margin-top: -200px;
  margin-bottom: 50px;
}

.teaser p{
  
  font-size: 1.2rem;
}

.teaser a{
  color: #fff;
}

.teaser h1{
  margin: 0 0 50px 0;
  font-size: 50px;
}

#stage{
  position: relative;
  z-index:2;
}

#stage .teaser-image{
  opacity:0.3;
  transition: all 3s  ease-in-out;
  width: 100%;
  height: auto;
  display: block;
}

#stage .teaser-image.loaded{
   opacity:1;
 }

#brand{
  width: 180px;
  z-index: 10;
  position: absolute;
  left: 40px;

}

#brand img{
  display: block;
  width: 100%;
  height: auto;
}

.bg-brown {
  background: rgba(172, 139, 3, .59);
  color: #fff;
}
nav{
  padding-left: 250px;
}
section{
  padding: 60px 0;
}

section.odd, .odd{
  background: #D7C098;
}
section.odd{
  color: #111
}
section.dark{
  background: #050000;
  color: #fff
}

.container-three-col {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-flow: row;
  grid-template-areas:
    ". . .";
}

.container-three-col .content{
}

@media all and (-ms-high-contrast:none) {
  .container-three-col {
    display: -ms-grid;
    -ms-grid-columns: repeat(3, 1fr);
    -ms-grid-rows: 1fr;
  }
}

.form-grid{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-flow: row;
  grid-template-areas:
    ". .";
  align-items: start;
  grid-gap: 30px;
}

.input-field label{
  display: block;
  margin-bottom: 6px;
  font-weight: 700;
}

.input-field {
  margin-bottom: 20px;
}

form{
  margin-top: 40px;
}

.input-field input,
.input-field textarea{
  width: 100%;
  border: 1px solid #D7C098;
  padding: 8px 12px;

}
form input[type="submit"]:disabled{
  opacity: 0.5;
}
form input[type="submit"]{
  background: #D7C098;
  padding: 8px 12px; color: #fff;
  border: none;
}

section .wpcf7-list-item{
  margin-left: 0;
}


.container-two-col {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-flow: row;
  grid-template-areas:
    ". .";
  align-items: start;
}

@media all and (-ms-high-contrast:none) {
  .container-two-col {
    display: -ms-grid;
    -ms-grid-columns: repeat(2, 1fr);
  }
}

.image-text .button{
  text-decoration: none;
  margin-right: 12px;
}

.image-text .button-group{
  margin-top: 30px;
}

.image-text a{
  color: #111
}
.image-text.odd .button{
  background: #222;
  color: #fff;
}

.acenter{
  align-items: center;
}
.container-two-col.rewind .flex:first-of-type{
  order: 2
}
.container-two-col.rewind .flex:last-of-type{
  order: 1
}
.container-two-col.acenter .image-text{
  padding: 30px;
  
  align-items: center;
  justify-content: center;
  grid-template-areas: "a0";
   grid-auto-rows: inherit
}
.container-two-col .image-text.no-pad{
  padding: 0;
}
.image-text.no-pad{
  padding: 0;
}
.highlight{
  margin: 20px 0;
  padding: 20px;
  border: 1px solid #D7C098;
  background: rgba(255,255,255,0.7);
  color: #D7C098;
  font-weight: 700;
}

.odd .highlight{
  background: rgba(255,255,255,0.7);
  border-color: #D7C098;
  color: #222;
}

.container-two-col.has-gap,
.container-three-col.has-gap{
  padding: 0;
  grid-gap: 30px;
}

.container-two-col.has-gap .image-text{
  padding: 0;
}

.card-content{
  padding: 30px;
  background: #D7C098;
  color: #222;
  text-align: center
}

.card-content h3{
  font-size: 24px;
  font-weight: 600
}

.container-two-col.rewind .c0{
  order: 2
}

.content-text{
  max-width: 80%
}


.page-id-104 .content-text,
.page-id-202 .content-text,
.page-id-199 .content-text{
    max-width: 100%
  }
.container-five-col {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-template-rows: 1fr;
  grid-gap: 30px;
  grid-auto-flow: row;
  grid-template-areas:
    ". . . . .";
}

@media all and (-ms-high-contrast:none) {
  .container-five-col {
    display: -ms-grid;
    -ms-grid-columns: repeat(5, 1fr);
    -ms-grid-rows: 1fr;
  }
}


.container-four-col {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: 1fr;
  grid-gap: 30px;
  grid-auto-flow: row;
  grid-template-areas:
    ". . .";
}

@media all and (-ms-high-contrast:none) {
  .container-four-col {
    display: -ms-grid;
    -ms-grid-columns: repeat(4, 1fr);
    -ms-grid-rows: 1fr;
  }
}

.flex{

  display: flex; 
  height: 100%;
}

.image-text {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas:
    "a0"
    "b0";
    grid-auto-rows: max-content;
    padding: 30px
}

.odd .image-text{
  padding: 0;
}

.image-text img, .c0 img{
  display: block;
  width: 100%;
  height: auto;
}

.image-text h2{
  margin: 0 0 20px 0;
}

.image-text p:first-of-type{
  margin-top: 0;
}

h2{
  font-size: 2rem;
}

.image-text .a0 { grid-area: a0; margin-bottom: 30px; }

.image-text .b0 { grid-area: b0; }


.image-text.rewind .a0{grid-area: b0;}
.image-text.rewind .b0{grid-area: a0; min-height: 250px;}

@media all and (-ms-high-contrast:none) {
  .image-text {
    display: -ms-grid;
    -ms-grid-columns: 1fr;
    -ms-grid-rows: repeat(2, 1fr);
  }

  .image-text .a0 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }

  .image-text .b0 {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }

  .image-text.odd .a0{
    -ms-grid-row: 2;}
  .image-text.odd .b0{
    -ms-grid-row: 1;}
}
.gallery{
  grid-gap: 30px;
}
.gallery img{
  display: block;
  width: 100%;
  height: auto;;
}

.headline{
  margin-bottom: 50px;
}

.text-center{
  text-align: center
}

.headline.text-center h2{
  color: #D7C098;
  font-size: 30px;
}
footer{
  background: #080000;
  color: #fff;
  padding: 60px 0;
  font-size: 14px;
}

footer .footer-headline{
  font-size: 16px;
  margin-bottom: 30px;
  padding-bottom: 10px;
  border-bottom: 1px solid #efefef;
}

.button{

  background: #D7C098;
  color: #222;
  padding: 8px 18px;
  display: inline-block;
  text-decoration: none;
}
.mt{
  margin-top: 20px;
}

footer a{
  color: #fff;
  display: block;
  text-decoration: none;
  padding: 2px 0;
}
  
.clearfix::before,
.clearfix::after {
  content: " ";
  display: table;
} 

.clearfix::after {
  clear: both;
}

.clearfix {
  *zoom: 1; /* Für den IE6 und IE7 */
}
@media(max-width: 1000px){
  
  nav .menu-core-container{
    display: none;
  }
  
  nav{
    height: 90px;
  }
  #brand {
    width: 100px;
    position: absolute;
    left: 50%;
    top: 10px;
    margin-left: -50px;
  }
  
  
  
  
  
  /* NAV */
  
  .menu-core-container{
    box-shadow: 1px 1px 4px 0 rgba(0,0,0,.1);
    position: fixed;
    top: 0px;
    left: 0;
    padding-top: 90px;
    width: 100%;
    z-index: 3;
    height: 100%;
    background-color: #111;
  }
  
  nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
    overflow: hidden;
    
   
  }
  
  nav ul li{
    display: block
  }
  nav li a {
    display: block;
    padding: 20px 20px;
    text-decoration: none;
  }
  
  nav li a:hover,
  .menu-btn:hover {
    background-color: #f4f4f4;
  }
  

  /* menu */
  
  .menu-core-container {
    clear: both;
    max-height: 0;
    transition: max-height .2s ease-out;
  }
  
  /* menu icon */
  
  .menu-icon {
    cursor: pointer;
    display: inline-block;
    position: fixed;
    right: 0px;
    top: 20px;
    padding: 28px 20px;
    user-select: none;
    z-index: 20;
  }
  
  .menu-icon .navicon {
    background: #fff;
    display: block;
    height: 2px;
    position: relative;
    transition: background .2s ease-out;
    width: 22px;
  }
  
  .menu-icon .navicon:before,
  .menu-icon .navicon:after {
    background: #fff;
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    transition: all .2s ease-out;
    width: 100%;
  }
  
  .menu-icon .navicon:before {
    top: 5px;
  }
  
  .menu-icon .navicon:after {
    top: -5px;
  }
  
  /* menu btn */
  
  .menu-btn {
    display: none;
  }
  
  .menu-btn:checked ~ .menu-core-container {
    max-height: 100%;
    display: block;
  }
  
  .menu-btn:checked ~ .menu-icon .navicon {
    background: transparent;
  }
  
  .menu-btn:checked ~ .menu-icon .navicon:before {
    transform: rotate(-45deg);
  }
  
  .menu-btn:checked ~ .menu-icon .navicon:after {
    transform: rotate(45deg);
  }
  
  .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before,
  .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {
    top: 0;
  }
  nav ul li#nav-abholen,
  nav ul li#nav-events{
    margin: 0 20px;
  }
}

@media(max-width: 760px){
  .wireframe{
    width: 90%
  }
  
  .container-two-col, 
  .container-three-col{
    display: block
  }
  .container-four-col{
    grid-template-columns: repeat(2, 1fr);
    
 
    grid-template-areas: ". .";
  }
  
  .teaser {
    background: rgba(5,26,7,.73);
    text-align: center;
    padding: 40px 30px;
    color: #fff;
    position: relative;
    z-index: 3;
    margin-top: 0;
    margin-bottom: 0px;
    width: 100%
}


.gallery{
  grid-gap: 20px;
}

.container-five-col{
  
  grid-template-columns: repeat(3, 1fr);
  grid-template-areas: ". . .";
}
.teaser h1 {
  font-size: 30px;
}
}


@media(max-width: 460px){
  .teaser h1 {
    font-size: 30px;
}
.image-text .button{
  text-decoration: none;
  margin-right: 12px;
  margin-bottom: 12px;
}
  .container-four-col{
    grid-template-columns: 1fr;
    
 
    grid-template-areas: ".";
  }
  .container-five-col{
    
    grid-template-columns: repeat(2, 1fr);
    grid-template-areas: ". .";
  }
}
