.loader-wrapper {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #ffffff;
  display:flex;
  justify-content: center;
  align-items: center;
    z-index: 1;
}
.loader {
  display: inline-block;
  width: 180px;
  height: 186px;
  position: relative;
  animation: loader 2s infinite ease;

}
.loader-inner {
  vertical-align: top;
  display: inline-block;
  width: 100%;
  animation: loader-inner 2s infinite ease-in;
}

body.index{
    height: 100%;
    margin: 0;
    background: #ffffff;
    -webkit-animation: fade-in 1s linear; /* Safari 4+ */
  -moz-animation: fade-in 1s linear; /* Fx 5+ */
  -o-animation: fade-in 1s linear; /* Opera 12+ */
  animation: fade-in 1s linear; /* IE 10+, Fx 29+ */
}
.body_hide {
	opacity: 0;
	transition: .9s opacity ease-in-out;
}
.body_visible {
	opacity: 1;
}
.logo img{
    width: 500px;
    margin-bottom:1rem;
}

.bg {
  background-image: url('.././images/bg.jpg');
  height: 100%; 
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
/* for high resolution display */

@media only screen and (min--moz-device-pixel-ratio: 2),
only screen and (-o-min-device-pixel-ratio: 2/1),
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-device-pixel-ratio: 2) {

    .bg {
      background-image: url('.././images/bg.jpg');
      height: 100%; 
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
    }
}
.container.text{
  background: rgba(0,0,0,0.7);
  border-radius: 10px;
  padding:20px;
    margin-bottom:20px;
}
.content {
  min-height: calc(100vh);
}
.container{
    padding-bottom: 20px;
}
h1{
    font-size: 2rem;
}
h2{
    font-size: 1.5rem;
}
h3{
    font-size: 1.3rem;
}
.shop.kiosk a {
    background: #DA9A3C;
}
.shop.kiosk a:hover {
    background: #ffffff;
}
.shop.cafe a {
    background: #ffffff;
}
.shop.cafe a:hover {
    background: #834533;
}
.shop a {
    display: block;
    border-radius: 10px;
    font-size: 1.3rem;
    text-transform: uppercase;
    font-weight: 700;
    color: #F5BA18;
    margin: 15px;
    -webkit-box-shadow: -2px 22px 23px -14px rgba(0,0,0,0.43);
    box-shadow: -2px 22px 23px -14px rgba(0,0,0,0.43);
    transition: ease-in;
    -webkit-transition: 0.5s ease-out;
}
.shop a:hover{
    text-decoration: none;
    color: #000000;
}
a {
    color:#DA9A3C;
}
a:hover{
    color:#E51D1D;
    text-decoration: underline;
}
.btncontainer{
  height: 100%;
  position: fixed;
  top: 0;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: space-around;
  overflow: auto;
  width: 100%;
  left: 0;
}
.icons{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-around;
    width: 100%;
}
.flex-element {
  
}
/*.flex-element:first-child {
  width: 100%;*/
}
.shop {
    
}
.shop img {
 -moz-transition: all 1s ease-out;
 -o-transition: all 1s ease-out;
 -webkit-transition: all 1s ease-out;
  padding: 1rem;
  max-height:300px;
 }
 
.shop img:hover{
 -webkit-transform: scale(1.1);
 -moz-transform: scale(1.1);
 -o-transform: scale(1.1);
 }
#imprint{
    padding:20px;
}

.logobtn{
    padding: 0px;
    max-width: 500px;
}
.btncontainer h1{
    color: #ef7f1a;
}

.footer a{
    color:#000000 !important;
    cursor: pointer;
}
.footer a:hover{
     text-decoration: underline;
    color:#DA9A3C !important;
}
.footer{
    width:100%;
    height:80px;
    padding:30px 0;
    position: absolute;
    bottom: 0;
    color:#000000 !important;
}
.modal-body {
    background: #f0f0f0;
}
.modal-dialog {
    max-width: 900px;
}
.modal-header{
    background: #ffffff;
    z-index: 1;
}
.sticky {
  position: -webkit-sticky; /* Safari */
  position: sticky;
  top: 0;
}

svg {
    max-width: 300px;
}
@media (orientation: landscape){
    .bg {
      background-image: url('.././images/bg.jpg');
    } 
    .flex-element {
        
    }
    .shop a{
        width:90%;
    }
}
@media screen and (min-width:2000px) {
    .bg {
      background-image: url('.././images/bg_ret.jpg');
    }
}
@media screen and (max-width:1100px) and (orientation: landscape){
    .shop img {
     max-height:200px;
 }
}
@media (orientation: portrait){
    .bg {
      background-image: url('.././images/bg_m.jpg');
    }
    .logo img{
       margin-bottom:2rem;
}
    .coctail{
        display: none;
    }
    .btncontainer{
        width:100%;
        left:0;
        padding:0px 20px;
    }
    .icons{
        flex-direction: column;
        width: 60%;
        height: 90%;
    }
    .shop a{
        margin:10px;
    }
    
    .footer .col-md-12{
        padding-right: 0;
        padding-left: 0;
    }
}
@media screen and (max-width:1600px) {
    .shop{
        display:block;
    }
}
@media screen and (max-height:900px) and (orientation: landscape){
    .logo img{
        max-width:400px;
    }
}
@media screen and (max-height:834px) and (orientation: landscape){
    .shop {
        display: inline-flex;
    }
    .shop a{
        font-size:1.2rem;
        padding:10px;
        margin:10px;
    }
}
@media screen and (max-height:768px) and (orientation: landscape){
    .shop {
        display: inline-flex;
    }
    .logo img{
        max-width:300px;
    }
    .shop a{
        font-size:1.2rem;
        padding:10px;
        margin:10px;
    }
    .pizza{
    width:20%;
}
    .btncontainer{
        width: 70%;
        left: 15%;
    }
}
@media screen and (max-height:600px) and (orientation: landscape){
    .shop {
        display: inline-flex;
    }
    .logo img{
        max-width:250px;
    }
    .shop a{
        font-size:1rem;
        padding:10px;
        margin:10px;
    }
}
@media screen and (max-height:414px) and (orientation: landscape){
    .shop {
        display: inline-flex;
    }
    .logo img{
        max-width:170px;
    }
    .shop a{
        font-size:1.2rem;
        padding:10px;
        margin:5px;
    }
    .btncontainer{
        width: 90%;
        left: 5%;
    }
}
@media screen and (max-height:384px) and (orientation: landscape){
    .shop {
        display: inline-flex;
    }
    .logo img{
        max-width:160px;
    }
    .shop a{
        font-size:1.2rem;
        padding:5px 7px;
        margin:10px;
    }
    .btncontainer{
        width: 90%;
        left: 5%;
    }  
}
@media screen and (max-height:320px) and (orientation: landscape){
    .shop {
        display: inline-flex;
    }
    .logo img{
        max-width:130px;
    }
    .shop a{
        font-size:1.2rem;
        padding:5px 7px;
        margin:5px;
    }
}
@media screen and (max-width:500px) and (orientation: portrait){
    .shop a{
        font-size:1.2rem;
    }
    .logo img{
    width: 250px;
}
}



