@function cart-icon($farbe) {
    @return url('data:image/svg+xml;charset=UTF-8,<svg style="width:24px;height:24px" viewBox="0 0 24 24"><path fill="'+$farbe+'" d="M17,18C15.89,18 15,18.89 15,20A2,2 0 0,0 17,22A2,2 0 0,0 19,20C19,18.89 18.1,18 17,18M1,2V4H3L6.6,11.59L5.24,14.04C5.09,14.32 5,14.65 5,15A2,2 0 0,0 7,17H19V15H7.42A0.25,0.25 0 0,1 7.17,14.75C7.17,14.7 7.18,14.66 7.2,14.63L8.1,13H15.55C16.3,13 16.96,12.58 17.3,11.97L20.88,5.5C20.95,5.34 21,5.17 21,5A1,1 0 0,0 20,4H5.21L4.27,2M7,18C5.89,18 5,18.89 5,20A2,2 0 0,0 7,22A2,2 0 0,0 9,20C9,18.89 8.1,18 7,18Z" /></svg>');
}

@font-face {
  font-family: 'Montserrat';
  src: URL('/app/fonts/Montserrat-ExtraLight.ttf') format('truetype');
}

.copyright {
    color: white;              /* Schriftfarbe weiß */
    text-decoration: none;     /* Entfernt den Unterstrich */
}

.copyright:hover {
    text-decoration: underline; /* Optional: Unterstrich beim Hover (entfernen, wenn unerwünscht) */
}
.copyright:visited {
        color: white;              /* Schriftfarbe bleibt weiß nach dem Klicken */
        text-decoration: none;     /* Entfernt den Unterstrich */
}
.goog-te-spinner-pos{
  display:none;
}

.img-responsive{
  max-width: 100%;
  height:auto;
}

.swal2-input{
  font-size: 14px !important;
}
.swal2-html-container{
  font-size: 16px !important;
}


.confirm_clubmember {
  clear:both;
  width:90%;
	max-width:400px;
	height: 17px;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 40px;
	margin-top: 10px;
	font-size: 14px;
  overflow-wrap: break-word;
}


.cc-footer__links {
    display: none;
}

html {
    width: 100%;
    height: 100%;
}

body {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    text-align: center;
    margin: 0px;
    padding: 0px;
    background-color: black;
}

@media (min-width: 768px) {
  #navigation{
    display:none;
  }
  #navigation_wide{
    display:block;
  }
}

@media (max-width: 767px) {
  #navigation_wide{
    display:none;
  }
  #navigation{
    display:block;
  }
}

#navigation_wide {
    color:white;
    position: fixed;
    top: 0px;
    height: 48px;
    width: 100%;
    z-index: 100;
}

#top_nav {
    display: table;
    clear: both;
    z-index: 120;
    padding: 12px;
    height: 48px;
    float: left;
    box-sizing: border-box;
    cursor: pointer;
    border-bottom-right-radius: 5px;
    transition-timing-function: ease-out;
    transition: all 2s;
}

.top_nav_link{
    transition: all 0.5s;
    float:left;
    margin-left:10px;
    margin-right:10px;
    font-weight:400;
    background-color: transparent;
    font-size: 16px;
    line-height: 22px;
    color: inherit; /* Erbt die Textfarbe vom übergeordneten Element */
    text-decoration: none; /* Entfernt die Unterstreichung */
}

.top_nav_link:hover{
    color:#cacaca;
}

nav a {
    display:row;
    font-family: 'Montserrat', sans-serif;
    border-radius: 5px;
    color: white;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    text-indent: 10px;
    margin-bottom: 10px;
    margin-left: 7px !important;

    box-sizing: border-box;
    font-size: 16px;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 0 3px 1px rgb(50 50 50 / 30%);
}

nav a:hover {
    filter: brightness(1.1);
    transition: all 0.2s;
    box-shadow: 0 0 10px 3px rgb(50 50 50 / 30%);
}

#card{
  display: none;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}



::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: #000000;
}

::-webkit-scrollbar {
    width: 8px;
    height: 8px;
    background-color: #000000;
}

::-webkit-scrollbar-thumb {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
    background-color: #FFFFFF;
}

* {
    -webkit-touch-callout: none;
    touch-callout: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-tap-highlight-color: transparent;
    tap-highlight-color: rgba(0, 0, 0, 0);
}

#category_items {
  margin-top:20px;
  margin-bottom:20px;

}
#footer {
  padding-top:20px;
  margin-top: auto;
}

.share_button {
    /* box-shadow: 0 0 3px 1px rgb(0 0 0 / 30%); */
    font-size: 16px;
    line-height:20px;
    padding-left:20px;
    padding-right:20px;
    padding-top:7px;
    padding-bottom:7px;
    margin:20px;
    border-radius: 6px;
    border: 2px solid;
    margin-left: auto;
    margin-right: auto;
    display: table;
    cursor: pointer;
}

.share_button:hover {
    fill: red;
    filter: brightness(0.9);
    transition: all 0.2s;
}

.footer_icons {
  padding-top: 10px;
  margin-left: auto;
  margin-right: auto;
  display: table;
}
.footer_icon {
    height:40px;
    width:48px;
    margin-left: 3px;
    margin-right: 3px;
    display: table-cell;
    float:left;
    cursor: pointer;
}
.footer_icon:hover {
    fill: red;
    filter: brightness(0.9);
    transition: all 0.2s;

}
.footer_links {
  margin-left: auto;
  margin-right: auto;
  display: table;
  font-size: 14px;
  color: #FFFFFF;
  font-family: 'Montserrat', sans-serif;
}
.footer_link {
    height:40px;
    line-height: 40px;
    text-align:center;
    vertical-align: middle;
    margin-left: 5px;
    margin-right: 5px;
    float:left;
    cursor: pointer;
    color: inherit; /* Erbt die Textfarbe vom übergeordneten Element */
    text-decoration: none; /* Entfernt die Unterstreichung */
}
.footer_link:hover {
    fill: white;
    filter: brightness(0.9);
    transition: all 0.2s;
    text-decoration: underline; /* Optional: fügt bei Hover eine Unterstreichung hinzu */
}
#footer_copyright {
    font-size: 14px;

    color: #FFFFFF;
    font-family: 'Montserrat', sans-serif;
}
  #copyright {
      height: 40px;
      clear: both;
      cursor: pointer;
      margin-left: auto;
      margin-right: auto;
  }

  #copyright img {
      height: 30px;

  }

.carousel_button_area {
    display: block;
    position: absolute;
    top: 43.2vw;
    padding-left: 5vw;
    width: 94%;
    z-index: 5;
}

.carousel_button {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    margin-right: 7px;
    padding: 5px 10px 5px 10px;
    z-index: 6;
    display: block;
    float:left;
    box-sizing: border-box;
    color: white;
    cursor: pointer;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    box-shadow: 0 0 3px 1px rgb(0 0 0 / 30%);
    border-radius: 3px;
    transition: all 0.3s;
}

.carousel_button:hover {
    filter: brightness(1.1);
    box-shadow: 0 0 10px 3px rgb(0 0 0 / 30%);
    transition: all 0.2s;
}


.carousel_div {
    box-shadow: 0 0 3px 1px rgb(0 0 0 / 50%);
    background-size: cover;
    background-position: center center;
    width: 100%;
    height: 52vw;
    margin-bottom: 5px;
    background-color: #3C464C;
    box-sizing: border-box;
    display: block;
    float: left;
    transition: all 0.2s;
    margin-top: 0px;
    margin-top: 0px;
}

#shop_logo_carousel {
    border-radius: 5px;
    display: block;
    position: absolute;
    max-height: 30vw;
    max-width: 50vw;
    z-index: 5;
    top: 11vh;
    left: 5vw;
}

.carousel_text_area {
    font-family: 'Montserrat', sans-serif;
    display: block;
    position: absolute;
    width: 80vw;
    height: 15vw;
    color: white;
    z-index: 5;
    top: 27vw;
    left: 5vw;
    text-align: left;
    font-size: 2.2vw;
}

.carousel_text_title {

    font-family: 'Montserrat', sans-serif;
    color: #FECA4A;
    font-weight: 500;
    font-size: 3.5vw;
    font-weight: bold;
}

.carousel_text {
    padding:5px;
    position: absolute;
    bottom: 0;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.4);
}
/*
@media screen and (max-width: 500px) {
  .carousel_div {
      height: 70vw;
  }
  .carousel_text_area {
    top: 42vw;
  }
  .carousel_button_area {
    top: 60.2vw;
  }

  .carousel_text_title {
    font-size: 3.5vw;
  }
  .carousel_text_area {
    font-size: 3vw;
  }
}
*/
@media screen and (max-width: 500px) {
  .carousel_div {
      height: 100vw;
  }
  .carousel_text_area {
    top: 72vw;
  }
  .carousel_button_area {
    top: 90.2vw;
  }

  .carousel_text_title {
    font-size: 3.5vw;
  }
  .carousel_text_area {
    font-size: 3vw;
  }
}
@media screen and (min-width: 800px) {
  #shop_logo_carousel {
      max-width: 300px;
      max-height: 300px;
  }
  .order_link {
      font-size: 25px;
  }
  .reservation_link {
      font-size: 25px;
  }
  .carousel_text_title {
      font-size: 25px;
  }
  .carousel_text {
      font-size: 20px;
  }
}

.standard_header {
    width: 100%;
    height:48px;
    margin-bottom:5px;
    transition: all 0.2s;
    margin-top: 0px;
    margin-top: 0px;
    box-shadow: 0 0 3px 1px rgb(0 0 0 / 30%);
}

.top {
    width: 100%;
    height:48px;
}

.standard_header_text {
    font-weight: bold;
    padding:5px;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
}

.button_area {
    margin-left: auto;
    margin-right: auto;
    display: block;
    margin-top:10px;
    margin-bottom:10px;
    padding-left: 10px;
}

.standard_button {
  float:left;
    clear:both;
    display: inline-block;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    width: fit-content;
    font-weight:bold;
    text-align: center;
    margin-left:4%;
    margin-right:4%;
    margin-top:10px;
    margin-bottom:10px;
    padding: 10px 20px 10px 20px;
    z-index: 6;
    cursor: pointer;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    box-shadow: 0 0 3px 1px rgb(0 0 0 / 30%);
    border-radius: 3px;
    transition: all 0.3s;
}

.header_title {
    clear:both;
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    font-weight:bold;
    width:auto;
    margin-top:10px;
    margin-bottom:30px;
    padding: 5px 10px 5px 10px;
    z-index: 6;
    background-color: grey;
    cursor: pointer;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    transition: all 0.3s;
}

.card_new{
    margin-left: 4%;
    margin-right:4%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    border: none;
    -webkit-box-shadow: 0 0 35px 0 rgb(154 161 171 / 15%);
    box-shadow: 0 0 35px 0 rgb(154 161 171 / 15%);
    text-align: left;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-clip: border-box;
    border-radius: 0.25rem;
}

.card_new img{
    margin-left: auto;
    margin-right: auto;
    text-align: center;

}

hr {
    margin: 1rem 0;
    color: inherit;
    background-color: currentColor;
    border: 1;
    opacity: .25;
    height: 1px;
    box-sizing: border-box;
}

.page_title{
  font-family: 'Montserrat', sans-serif;
  text-align: left;
  margin-top:1.5rem;
  margin-bottom:1.5rem;
  margin-left: 4%;
  margin-right: 4%;
}

.page_link{
  font-family: 'Montserrat', sans-serif;
  padding-top:10px;
  text-align: left;
  margin-top: 3px;
  margin-bottom: 3px;
  font-size: 15px;
  font-weight: bold;
  cursor:pointer;
  display:inline-block;
  vertical-align: middle;
}

.page_link i{
  margin-right:5px;
  width: 20px;
}
.page_link:hover{
  color:black;
}

.standard_button:hover {
    filter: brightness(1.1);
    box-shadow: 0 0 -10px 3px rgb(0 0 0 / 30%);
    transition: all 0.2s;
}

#shop_logo {
  border-radius: 5px;
  margin-bottom: 5px;
  margin-top: 20px;
  max-width: 79vw;
  max-height: 30vh;
}
@media screen and (min-width: 800px) {
  #shop_logo {
      max-height: 300px;
  }
}

h1 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 20px;
    font-weight: bold;
    margin-top: 40px;
    margin-bottom: 20px;
}

h2 {
    margin-top:7px;
    margin-bottom: 7px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    font-size: 16px;
    font-weight: bold;
    text-shadow: 0px 0px 1px rgba(0, 0, 0, 0.50);
}

.contact_pic {
    box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.5);
    box-sizing: border-box;
    display: block;
    transition: all 0.2s;
    border-radius: 8px;
}

#waiting_for_paypal_confirmation {
    width: 100%;
    height: 100%;
    position: fixed;
    background-color: #1f2227;
    background-size: 600px;
    z-index: 10000000;
    top: 0px;
    left: 0px;
    display: none;
    color: white;
}

#waiting_for_paypal_confirmation img {
    margin-top: 100px;
    max-width: 200px;
}

#waiting_for_paypal_confirmation svg {
    filter: invert(1);
}

#transition {
    width: 100%;
    height: 100%;
    position: fixed;
    background-color: #1F2227;
    z-index: 10000000;
    top: 0px;
    left: 0px;
    display: none;
}

#waiting_for_confirmation {
    font-size: 14px;
    width: 100%;
    height: 100%;
    position: fixed;
    overflow: auto;
    background-size: 600px;
    color: white;
    box-sizing: border-box;
    z-index: 1000;
    top: 0px;
    left: 0px;
    display: none;
}

#waiting_for_confirmation svg {
    filter: invert(1);
}

#waiting_for_confirmation a {
    color: white;
}

.back_to_main_btn {
    float: right;
    padding-top: 0px;
    padding-bottom: 0px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border-style: hidden;
}

.category_head {
    margin-left: auto;
    margin-right: auto;
    padding-top: 0px;
    padding-bottom: 0px;
    border-style: hidden;
    cursor: default;
    pointer-events: none;
}
/*
.start {
    background-attachment: fixed;
    background-size: 600px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
*/
.kategorie {
    position: relative;
    background-size: cover;
    background-position: center center;
    width: 44%;
    height: 20vh;
    margin-left: 4%;
    margin-bottom: 20px;
    background-color: #3C464C;
    box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.5);
    box-sizing: border-box;
    display: block;
    float: left;
    transition: all 0.3s;
    cursor: pointer;
    border-radius: 6px;
}

.kategorie:hover {
    filter: brightness(1.3);
}

@media screen and (min-width: 1200px) {
    .kategorie {
        width: 28%;
        margin-left: 4%;
        height: 30vh;
    }
    #waiting_for_confirmation img {
        margin-top: 36px;
        border-radius: 6px;
    }
}

@media screen and (min-width: 1201px) {
  .speise {
      width:29%;
      margin-left: 2%;
      margin-right: 2%;
  }
}

@media screen and (max-width: 1200px) and (min-width: 801px) {
  .speise {
      width:44%;
      margin-left: 3%;
      margin-right: 3%;
  }
}

@media screen and (max-width: 800px) {
  .speise {
      width:90%;
      margin-left: 4%;
      margin-right: 4%;
  }
}

.speise {
    float:left;
    margin-bottom: 20px;
    border-radius: 5px;
    padding: 5px;
    display: block;
    cursor: pointer;
    text-align: right;
}
.desc_list u{
  margin-top:20px;
  font-weight: bold;
  font-size: 16px;
  text-decoration: none;
}

.cat_name_div{
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  font-weight: bold;
  z-index:500;
  color: white;
  padding-top: 5px;
  padding-bottom: 5px;
  z-index: 0;
  width:100%;
  border-bottom-right-radius: 6px;
  border-bottom-left-radius: 6px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.beschreibung span {
    display: block;
    color: #8CB03B;
}

.signin {
    background-image: url(../img/bg3.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.speiseinnen {
    padding: 5px;
    font-size: 14px;
}

.card {
    background-color: #1f2227;
    background-attachment: fixed;
    background-size: 600px;

}

.plu {
    float: left;
    padding-top: 1px;
    padding-right: 5px;
    padding-bottom: 0px;
    padding-left: 5px;
    margin: 3px;
    color: white;
    background-color: rgba(140, 176, 59, 0.5);
    border-radius: 5px;
}

.preis {
    text-align: right;
    height: 50px;
    float: right;
    font-weight: bold;
    color: #8CB03B;
    font-size: 15px;
    padding: 5px;
}

.allergene {
    padding: 3px;
    font-size: 10px;
    background-color: #ededed;
    color: #777777;
}

.legenden {

    max-width: 30px;
    max-height: 25px;
    padding: 2px;
}

.hot_new {
    float: right;
    height: 25px;
    padding: 2px;
}

#start_logo_account {
    margin-top: 30px;
}

#logo img {
    width: 60%;
    max-width: 300px;
}

#navigation {
    color:white;
    position: fixed;
    top: 0px;
    height: 48px;
    width: 100%;
    z-index: 100;
}

#sidenav {
    background-color: rgb(0 0 0 / 40%);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}

#navigation_menu_btn {
    z-index: 120;
    padding: 12px;
    width: 48px;
    height: 48px;
    float: left;
    box-sizing: border-box;
    cursor: pointer;
    border-bottom-right-radius: 5px;
    transition-timing-function: ease-out;
    transition: all 2s;
}

#navigation_menu_btn_close {
    padding: 12px;
    width: 48px;
    height: 48px;
    float: left;
    box-sizing: border-box;
    border-bottom-right-radius: 5px;
    transition-timing-function: ease-out;
    transition: all 2s;
    cursor: pointer;
}

#page_title_header {
    z-index: -10;
    visibility: hidden;
    padding-left: 55px;
    width:100%;
    text-align: left;
    line-height: 48px;
    top:0px;
    height:48px;
    position:absolute;
    font-size: 16px;
    font-weight: bold;
    color: #FFFFFF;
    font-family: 'Montserrat', sans-serif;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    box-shadow: 0 0 3px 1px rgb(0 0 0 / 25%);
}

#page img {
    max-width:100%;
    height:auto;
}

#language_dropdown_btn {
    z-index: 120;
    position: fixed;
    top:0;
    right:0;
    display: flex;
    padding: 5px;
    height: 48px;
    box-sizing: border-box;
    cursor: pointer;
    justify-content: center;
    align-items: center;
    border-bottom-left-radius: 5px 5px;
    transition: all 2s;
}

#language_dropdown_btn #current_language {
    margin-left: 6px;
    color: white;
    font-size: 12px;
    text-align: center;
}

#language_select_menu {
    position: fixed;
    top: 24;
    right: 24;
    z-index: 1000;
    border-radius: 8px;
    box-shadow: 0 0 3px 1px rgb(0 0 0 / 30%);
    display: none;
}

#language_select_menu div {
    color:#ececec;
    width: 160px;
    font-weight: 400;
    font-size: 14px;
    line-height: 250%;
    text-align: center;
    cursor: pointer;
    transition: all 0.5s;
}

#language_select_menu div:hover {
    color:white;
}

#language_select_menu div:not(:last-child) {
    border-bottom: solid 1px rgba(128, 128, 128, 0.7);
}

#shoppingcartlist {
    margin: 10px;
    color: white;
}

#shoppingcart {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.warenkorbprodukt .warenkorbname,
.warenkorbprodukt .warenkorbanzahl,
.warenkorbprodukt .warenkorbpreis {
    display: block;
    float: left;
    padding-top: 7px;
    padding-bottom: 7px;
    margin-bottom: 2px;
    font-size: 15px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cart_overview {
    display: block;
    float: left;
    padding-top: 7px;
    padding-bottom: 7px;
    margin-bottom: 2px;
    font-size: 15px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.warenkorbname {
    width: 60%;
    text-align: left;
    text-indent: 5px;
}

.warenkorbanzahl {
    width: 10%;
    display: block;
    float: left;
}

.warenkorbpreis {
    width: 20%;
    display: block;
    float: left;
}

.productlist .productname,
.productlist .productquantity,
.productlist .productprice {
    /*background-color: rgba(255, 255, 255, 0.20);*/
    display: block;
    float: left;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 0px;
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.productname {
    width: 60%;
    text-align: left;
    text-indent: 5px;
}

.productquantity {
    width: 10%;
    display: block;
    float: left;
}

.productprice {
    width: 25%;
    display: block;
    float: left;
    text-align: right;
}

.warenkorbtonne {
    width: 10%;
    display: block;
    float: left;
    padding-top: 3px;
    padding-bottom: 0px;
    margin-bottom: 2px;
    filter: invert(1);
}

nav {
    padding-top: 58px;
    position: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    width: 80%;
    max-width: 300px;
    height: 100%;
    left: 0px;
    top: 0px;
    margin-left: -300px;
    transition: all 0.5s;
    z-index: 99;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

#navoverlay {
    position: fixed;
    height: 100%;
    width: 100%;
    left: 0px;
    top: 0px;
    z-index: 98;
    display: none;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

#signin {
    display: none;
}



.addcart_inner{
  height: calc(100% + 1px);
}

.items_head_button{
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 15px;
    margin-bottom: 0px;
    box-sizing: border-box;
    max-width: 200px;
    color: white;
    font-size: 14px;
    cursor: pointer;
    background: linear-gradient(rgba(255, 255, 255, 0.23), rgba(255, 255, 255, 0));
    background-position: center -100px;
    background-repeat: no-repeat;
    transition: all 0.1s;
}

.payment_button{
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 15px;
    margin-bottom: 0px;
    box-sizing: border-box;
    width: 100%;
    max-width: 200px;
    background-color: rgba(0, 0, 0, 0.2);
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 0px;
    padding-right: 0px;
    color: white;
    border: solid 1px white;
    border-radius: 6px;
    font-size: 14px;
    cursor: pointer;
    background-position: center -100px;
    background-repeat: no-repeat;
    transition: all 0.1s;
}

.payment_button:hover{
  background-color: rgba(255, 255, 255, 0.2);
}

.reservation_button {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0px;
    margin-bottom: 20px;
    box-sizing: border-box;
    color: white;
    max-width: 200px;
    font-size: 16px;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 0px;
    padding-right: 0px;
    color: white;
    border: solid 0px white;
    font-family: 'Montserrat', sans-serif;
    border-radius: 6px;
    cursor: pointer;
    box-shadow: 0 0 3px 1px rgb(0 0 0 / 50%);
    background: linear-gradient(rgba(255, 255, 255, 0.23), rgba(255, 255, 255, 0));
    background-position: center -100px;
    background-repeat: no-repeat;
    transition: all 0.1s;
    cursor: pointer;
}

.reservation_button:hover {
    filter: brightness(1.1);
    transition: all 0.2s
}

#plusminus {
    margin-top: 20px;
    text-align: center;
}

#plusminuscount {
    width: 60px;
    height: 35px;
    background-color: white;
    line-height: 35px;
    color: black;
    border-radius: 8px;
    text-align: center;
    display: block;
    margin-left: auto;
    margin-right: auto;
    -webkit-user-select: none;
    user-select: none;
}



#speisenname_addcart {
    background-color: white;
    white-space: nowrap;
    overflow: auto;
    line-height: 35px;
    color: black;
    border-radius: 8px;
    text-align: center;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-left: 20px;
    margin-right: 20px;
    padding-left: 4px;
    padding-right: 4px;
    margin-top: 50px;
}

#close_addcart {
    z-index: 120;
    position: absolute;
    right: 5px;
    padding: 5px;
}

.noblur {
    transition: all 1s;
}



input {
    padding-left: 1%;
    padding-right: 1%;
    border: none;
    width: 100%;
}

#checkout {
    display: none;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
}

#preorder_time select {
    margin-top: 5px;
    margin-bottom: 5px;
}

#vatnote {
    padding-top: 10px;
    padding-bottom: 5px;
    clear: both;
    font-size: 10px;
    font-weight: bold;
}

#lieferzeithinweis {
    font-size: 10px;
    font-weight: bold;
}

#terms {
    font-size: 10px;
    font-weight: bold;
    background-color: rgba(255, 255, 255, 0.3);
    padding: 6px;
    text-align: left;
    clear: both;
}

#lieferzeithinweis {
    clear: both;
    padding: 10px;
    margin-bottom: 5px;
    color: white;
}

#terms {
    clear: both;
    padding: 10px;
    color: white;
}

#liefernoderabholen {
    clear: both;
    padding: 10px;
    margin-bottom: 5px;
    font-size: 14px;
    color: white;
}

#order_from_table {
    color: #1A1819;
    font-weight: bold;
    margin-bottom: 25px;
}

::-webkit-input-placeholder {
    color: white;
}

:-moz-placeholder {
    color: white;
}

::-moz-placeholder {
    color: white;
}

:-ms-input-placeholder {
    color: white;
}

:focus {
    outline: none;
}

#kontaktimpressum {
    font-size: 14px;
}

#kontaktimpressum img {
    border-radius: 6px;
}

#kontaktimpressum a {
    color: white;
    text-decoration: underline;
}

#gutschein_info {
    display: block;
    font-size: 14px;
    padding-top: 20px;
}

.long_text {
    box-sizing: border-box;
    padding: 30px;
    font-size: 80%;

}

.long_text u {
    text-decoration: none;
    font-weight: bold;
}

.long_text a {
    color: #FBCA4A;
    text-decoration: underline;
}

.long_text ul {
    text-align: left;
}

.optionen_beschreibung {
    text-align: center;
    margin-top: 30px;
    margin-bottom: 10px;
    font-weight: bold;
    color: white;
    font-size: 18px;
}

#basisoptionen {
    font-size: 18px;
    background-color: white;
    padding: 8px;
    box-sizing: border-box;
    color: black;
    border-radius: 8px;
    text-align: center;
    display: inline-block;
}

#basisoptionen2 {
    font-size: 18px;
    background-color: white;
    padding: 8px;
    box-sizing: border-box;
    color: black;
    border-radius: 8px;
    text-align: center;
    display: inline-block;
}

#preorder_close_btn {
    display: block;
    width: 48px;
    height: 48px;
    background-image: url(../img/close-circle.svg);
    background-repeat: no-repeat;
    background-position: center center;
    filter: invert(1);
}

.colored-toast.swal2-icon-success {
    background-color: #a5dc86 !important;
}

.colored-toast.swal2-icon-error {
    background-color: #f27474 !important;
}

.colored-toast.swal2-icon-warning {
    background-color: #f8bb86 !important;
}

.colored-toast.swal2-icon-info {
    background-color: #3fc3ee !important;
}

.colored-toast.swal2-icon-question {
    background-color: #87adbd !important;
}

.colored-toast .swal2-title {
    color: white;
}

.colored-toast .swal2-close {
    color: white;
}

.colored-toast .swal2-html-container {
    color: white;
}

.product_info_swal2 {
    width: 300px !important;
}

.bottom {
    margin: 5px;
    width: 100%;
}

.hot_new {
    float: left;
}

.infos {
    text-align: left;
    float: left;
}

.product_info {
    text-align: left;

    float: right;
}

.price {
    width: auto;
    float: right;
    text-align: right;
    padding-top: 10px;
    padding-right: 10px;
    bottom: 0;
    font-weight: bold;
    font-size: 15px;
}

.product_name {
    text-align: left;
    line-height: 22px;
    font-weight: bold;
    padding: 5px;
    padding-left: 10px;
    margin-left: 0px;
    margin-top: 0px;
    font-weight: 400;
    font-size: 16px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

.product_desc {
    text-align: left;
    padding-left: 5px;
    padding-left: 10px;
    padding-right: 5px;
    font-size: 14px;

    max-height: 34px;
    min-height: 34px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.cat_desc {
    margin-top:3px;
    margin-left: 4%;
    margin-right: 4%;
    text-align: center;
    font-weight:bold;
    font-size: 14px;
}

.infos {
    float: left;
    padding-left: 5px;
}

.right_table {
    height: 110px;
    width: 100%;
}

.main {
    height: 110px;
    width: 100%;
    border-radius: 10px;
    padding: 0px;
    margin-left: 0px;
    display: grid;
    grid-template-columns: auto auto;
    grid-template-rows: auto auto;
    gap: 0px 0px;
    grid-template-areas:
        "left right";
}

.left {
    height: 110px;
}

.right {
    height: 110px;
    width: 100%;
}

.category_pic {
    background-size: cover;
    background-position: center center;
    width: 135px;
    height: 100px;
    margin-left: 0px;
    margin-bottom: 0px;
    background-color: #3C464C;
    box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.5);
    box-sizing: border-box;
    display: block;
    float: left;
    transition: all 0.2s;
    cursor: pointer;
    border-radius: 8px;
}

.allergene div {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    font-size: 12px;
    line-height: 22px;
    color: white;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url('data:image/png;base64,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');
    float: right;
    text-align: center;
    width: auto;
    text-transform: uppercase;
    margin-left: 3px;
    margin-top: 2px;
}

.allergene {
    background-color: transparent;
}

.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1000; /* Sit on top */
  padding-top: 100px; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

.modal-content {
  box-sizing: border-box;
  color:black;
  font-weight: bold;
  margin: auto;
  padding: 10px;
  max-width: 90%;
  border-radius: 6px;
  width: fit-content;
  overflow: auto;
}

/* The Close Button */
.modal-close {
  position: fixed;
  margin: 0px 5px 5px 5px;
  top:0;
  right:0;
  height:40px;
  width:40px;
  font-size: 40px;
  font-weight: bold;
}

.modal-close:hover,
.modal-close:focus {
  color: #aaaaaa;
  text-decoration: none;
  cursor: pointer;
}

/* COLLAPSE */

.collapsing {
position: relative;
height: 0;
overflow: hidden;
-webkit-transition-timing-function: ease;
   -o-transition-timing-function: ease;
      transition-timing-function: ease;
-webkit-transition-duration: .35s;
   -o-transition-duration: .35s;
      transition-duration: .35s;
-webkit-transition-property: height, visibility;
   -o-transition-property: height, visibility;
      transition-property: height, visibility;
}
.collapse {
display: none;
}
.collapse.in {
display: block;
}
tr.collapse.in {
display: table-row;
}
tbody.collapse.in {
display: table-row-group;
}
.card_top::after {
font-family: 'Glyphicons Halflings';
content: "\e114";
float: right;
position: absolute;
transition: all 0.2s;
top:0px;
right:7px;
color:white;
}
.card_top{
position: relative;

font-size: 16px;
border-radius:2px;
}

.card_top[aria-expanded="true"]::after {
-webkit-transform: rotate(180deg);
-moz-transform: rotate(180deg);
transform: rotate(180deg);
}
