html, body {
    overscroll-behavior: contain;
}

div.kadence-column_a1ad26-62 {
    position: relative;
}

div.kadence-column_a1ad26-62::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        linear-gradient(45deg, transparent 40%, red 40%, red 60%, transparent 60%),
        linear-gradient(-45deg, transparent 40%, red 40%, red 60%, transparent 60%);
    pointer-events: none; /* Verhindert Interaktion mit dem Overlay */
    z-index: 10; /* Stellt sicher, dass das Kreuz über dem Inhalt liegt */
}

/* Alternative Methode mit CSS-Strichen */
div.kadence-column_a1ad26-62::after {
    content: 'Dauerhaft geschlossen';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
    color: rgb(0, 221, 255);
    font-weight: bold;
    pointer-events: none;
    z-index: 10;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

/* Wenn Sie nur eine Methode verwenden möchten, kommentieren Sie eine aus */




#payframe{
height:800px;
    width: 400px;
    left: calc(50% - 200px); /* Zentriert das Popup auch auf kleineren Bildschirmen */
}



#payPop{

    position: absolute;
    top:calc(50% - 350px);
    left:calc(50% - 200px);
    width: 400px;
    height: 800px;
    background: #fff;
    border: 2px solid #39c;
    z-index: 104001;

    zoverflow:auto;
    
  
}



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

    #payPop{
        width: 400px;
        left: calc(50% - 200px); /* Zentriert das Popup auch auf kleineren Bildschirmen */
    }
    
    
    #payframe{
        width: 400px;
        left: calc(50% - 200px); /* Zentriert das Popup auch auf kleineren Bildschirmen */
    }
    
}






.overlay {
    display: none;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0,0,0,0.5);
    z-index: 1000;
}
.popup {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    padding: 20px;
    border-radius: 5px;
    text-align: center;
}

.overbutton {
    margin-top: 10px;
    padding: 10px 20px;
    background-color: #4CAF50;
    color: white;
    border: none;
    border-radius: 3px;
    cursor: pointer;
}


#infoDiv{

    position: absolute;
    display: flex;
    width: 200px;
    height: 50px;
    right: 20px;
    top: 5px;
    /* border: 1px dotted blue; */
    background: #eee;
    justify-content: center;
    align-items: center;

}


#messageBox{

    position: absolute;
    width: 400px;
    height: 150px;
    background: white;
    border: 5px solid #067aff;
    padding: 10px;

    

    top:calc(50% - 350px);
    left:calc(50% - 200px);

    box-shadow:0 10px 16px 0 #00339999,0 6px 20px 0 #00339999;


}


#closeDiv{

    position: absolute;
    background: #383838;
    border: 1px solid grey;
    width:25px;
    height: 25px;
    right:0;
    top:0;
    /* margin: 10px; */

    zbox-shadow: #4d5280bf 2px 4px 4px;

    box-shadow: 4.0px 8.0px 8.0px hsl(0deg 0% 0% / 0.38);
    border-radius: 2px;


    /* 
    padding-left: 2px;
    margin-bottom: 5px; */
}

#closeDiv::after{

    zpadding: 5px;

    /* font-size: 12px; */
    margin: 2px;



  content:  '❌';
}






  
  @keyframes eli {
    to {

        border-radius: 0px 0px 0px 0px / 0px 0px 0px 200px;

        zborder-radius: 150px;
    }
  }





#newsDiv{


    z-index: 10;

    border-radius: 10px;

    /* box-shadow: 0 0 3px black; */




    top:100px;
    margin: 50px;
    max-height: calc(90%-300px);
    zheight: 400px;

    /* left:100px; */
    position: absolute;

    border: 1px solid #177cff;
    overflow: auto;
    transition: all 1s ease;

    /* animation: eli 1s linear infinite; */

}

#newsDiv:not(:empty){

    /* padding: 0px;
    transition-delay: 300ms;
    transition: all 1s ease; */

  }

#newsDiv:empty{

    zpadding:100px;
}

#newsDiv:hover, #newsDiv:active{

    background: #00000073;
    opacity: 1;
    transition: all 1s ease;
    border-radius: 10px;
    box-shadow:0 10px 16px 0 #00000099,0 6px 20px 0 #00000099 !important;


}

#newsDiv div{

    display: block;
    padding: 50px;
    margin: -10px 0;

    opacity: 0;
    transition: all 1s ease;


}

#newsDiv div:hover, #newsDiv div:active{

    background: #00000073;
    opacity: 1;
    transition: all 1s ease;
}

#newsDiv p{

    ztext-align: center;
    position: relative;
    zbackground: pink;
}

#newsDiv span[l], #newsDiv span[r]{
   
    position: absolute;
    top: -20px;
    zmargin-top: - 20px;
}

#newsDiv span[r], #newsDiv span[rr]{

    right:0;
    zbackground: blue;
}

#newsDiv span[m], #newsDiv span[mm], #newsDiv h3{

    position: absolute;
    ztop: -10px;
    width: 100%;

    text-align: center;
    zbackground: blue;
}

#newsDiv span[ll], #newsDiv span[rr]{
   
    position: absolute;
    bottom: -20px;
    zmargin-top: - 20px;
}



/* #newsDiv::before, #newsDiv::after{

    content:  '📌';
  } */


  /** Für alle Geräte mit Touch Screen */
  @media only screen and (pointer:coarse) {






    /* body * {

    
        color:red;


    } */

    div#mobile-drawer *{


        zbackground: transparent;
    }




    div#mobile-drawer div{

        ztop: -100%;


        zbackground: red !important;
    }

  }




/** Für alle Geräte mit Touch Screen */
@media only screen and (pointer:coarse) {

        /* body * { background:red; }  */



/*

.planlink{

top:100px;
padding-top:100px;
font-size:100px;
line-height:100px;
}

*/


    #payPop{

        top:0;
    }

    #messageBox{

        top:0;
    }

    #closeDiv{

        right: 10px;

        /* right:10px;
        top:10px; */
    }

    #newsDiv{

        ztop:0;
        left:0;
        position: absolute;
        width:100%;
        margin:0;
        zheight: 100%;

        zborder: 1px solid #177cff;


        zopacity: 0;

    }
    #newsDiv div{

        zopacity: 0;
    }



}

/** Für Smartphones */
@media only screen and (max-width: 700px) {

    #newsDiv div{

        padding: 10px;
    }


}


#payPop *{

    zpointer-events:visible;

}

#payModal, .payModal, #backi{



    /* display: none; */
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10400;
    width: 100vw;
    height: 100vh;

    background-color: #0006;
    backdrop-filter: blur(2px) grayscale(1);
    -webkit-backdrop-filter: blur(2px) grayscale(1);


    /* background-size: 4px 4px;
    background-image:
      linear-gradient(to right, grey 1px, transparent 1px),
      linear-gradient(to bottom, grey 1px, transparent 1px); */

    zfilter: blur(1px) grayscale(100%);
    pointer-events:visible;

    zbackground-size: 5px 5px;
    zbackground-image: radial-gradient(circle, #000000 1px, #fff5 1px);

    box-shadow: inset 0 0 0 1000px #00000099;
 
}





div.kt-inside-inner-col>form#forminator-module-817{



    zdisplay: none !important;
}

form#forminator-module-817 *  {

    cursor:auto !important;
    user-select: auto !important;
    -webkit-user-select: auto !important;

}

div#payPop>form#forminator-module-817{

    display: 'block' !important;
}


#forminator-field-currency-1{

    display: none !important;
}

label[for=forminator-field-currency-1]{

    display: none !important;
}

#calculation-1-field{

    color: #000;
}




#boxy{

    background: red;
    padding: 200px;
}

body * {

    cursor:default !important;
    user-select: none !important;
    -webkit-user-select: none !important;

}

#payPop * , #modId * , input, textarea {

    cursor: auto !important;
    user-select: auto !important;
    -webkit-user-select: auto !important;

}

a.modal-trigger, a.brand {

    zcursor:alias !important;

}

img {

    cursor:default !important;

}


html {
    scroll-behavior: smooth !important;

}


#outdoor, #hallen {

    zzzscroll-margin-top: 100px;



  padding-top: 80px;
  margin-top:  -80px;
  outline: 0;


}





#chefPop{

    border-top: 1px red solid;
    height: 100px;
    transition: all 1s ease;

    top:800px;

    position: absolute;

    width: calc(100% - 5px);

    z-index: 123456;
    overflow: scroll;
}

#chefPop[expand]{

    top: 80px;
    height: calc(100vh - 85px);
    background: #fafeff;
    transition: all 1s ease;
}






#blurBack{

    position: fixed;
    display: flex;


    align-items: flex-end;

    top: 80px;
    left: 0;
    z-index: 1;
    width: 100vw;
    height: 100vh;

    background-color: #0009;
    backdrop-filter: blur(1px) grayscale(0.9);
    -webkit-backdrop-filter: blur(1px) grayscale(0.9);
    pointer-events:visible;
    box-shadow: inset 0 0 0 1000px #00000099;

}


#bookPop{

    position: absolute;

    width: calc(100% - 5px);
    z-index: 11;
    border-top:1px red solid;


}



#bookPop{

    transform: translateZ(0);   /* soll angeblich neuen Animations-Layer erzeugen */


    background: white;    

    height: 100px;
    top:800px;

    transition: all 1s ease;

/* 

    zbackground: #fff;
    zborder: 2px solid #39c; */
   

    /* transform: translateZ(0) */

    /* will-change: top; */
  
}


#bookPop * {


}

#bookPop[expand]{


}


#bookPop[expand]{

    top: 80px;
    /* will-change: top; */

    height: calc(100vh - 85px);
 
    /* zheight: calc(100% - 80px); */
    transition: all 1s ease;
}


/* z#bookPop div[absolute]{

    position:absolute;
    top:-20px;
    left: calc( 100% - 80px );
} */


div.bookBack{

    background: #ffffff;
    padding-top: 2%;


    /* zheight: calc(100% - 5px);
    zpadding: 20px;
    zwidth: 100vw;
    zmargin-left: -25px; */
}


div.bookWrap{

    display: flex;
    flex-direction: row;
    align-content: space-around;
    background: #ffff0025;
    box-shadow:0 10px 16px 0 #00000033,0 6px 20px 0 #00000030 !important;

    /* ELIheight: calc(100% - 20px);
    zpadding: 20px; */

    height: calc( 100vh - 150px);

    padding-right: 10px;

    border-radius: 20px;
    border: 1px dotted #39c


}



div.bookWrap * {


    cursor:default !important;
    user-select: none !important;
    -webkit-user-select: none !important;
}



div.rightDiv{

    /* zalign-self:stretch;
    zflex: 1 1 0;

    zwidth: 310px;
    zmargin:5px; */
    margin-right: 20px;

    /* zbackground: #ffa60021; */
    background: #ffffff;
    text-align:center;

    box-shadow:0 10px 16px 0 #00000033,0 6px 20px 0 #00000030 !important;

}


/*  * Einstellung für automatische Breiten-Anpassung auf restlichen Platz
div.rightDiv{
    align-self:stretch;
    flex: 1 1 0;
} */


div#calTitel{


    background: #fff;
    /* zpadding:5px; */
    text-align: center;
    color: #333;
}

div#calTitel>h4{

    margin: 5px;
    padding: 5px;
    color: #333;
    text-transform: capitalize;

}



zdiv.datePick{

    zwidth: 350px;
    box-shadow:0 10px 16px 0 #00000033,0 6px 20px 0 #00000030 !important;

}


div#bookWin{

    margin-top:20px;
    height: calc(100% - 60px);

    flex: 1 1 0;
    align-self:stretch;

    display: flex;
    /* zalign-items: stretch;
    zjustify-items: stretch; */
}

div#datumBox{

    position: absolute;
    bottom:50px;
    text-align: center;
    width: 100%;
}

div#legende{

    pointer-events: none;
    color: #666;
    font-size: 12px;
}

div#tagBox{

    display: none;
}

div.bookCol{

    flex: 1 1 0;
    align-items: center;
    min-width: 50px;
    margin: 5px;

    display: flex;
    flex-direction: column;

    position: relative;
    background: #1472ff3b;


    /* zpadding: 5px;
    zwidth: 100px;
    zalign-self:stretch;

    zorder: 5; */
}


div.butDiv:hover, div.butDiv:active{

    z-index: 1000000 !important;
}

div.butDiv{

    flex: 1;
    top: 4px;
    position: absolute;
    width: 100%;



    /* 
    
    zflex: 1 1 0;
    zalign-self:stretch;

    
    zwidth: -moz-available;          
    zwidth: -webkit-fill-available;
    zwidth: fill-available;


    zbackground: green;
    zborder: 1px solid violet; */
}






button[b]{

    line-height: 1;

    z-index: 1000 !important;
    border-radius: 10px;

    border:#00a2ff solid 1px;
    box-shadow:0 10px 16px 0 #00000044,0 6px 20px 0 #00000044 !important;


  width:100% !important;
  font-size: 14px;
  background: green;



  /* zpadding: 0 !important;
  zmargin: 0 !important;


  zpadding: 5px !important;
    zmargin: 5px !important; */


}

zbutton[b][avail='3']{ background:#a8ff07; color: 333; }
button[b][avail='2']{ background:#ffee00;  color: #333; }
button[b][avail='1']{ background:#ff9900;color: #333; }

button[b][avail='2']:hover, button[b][avail='2']:active{ background:#fff570;  color: #333; }
button[b][avail='1']:hover, button[b][avail='1']:active{ background:#ffc74d;color: #333; }

button[b]:hover, button[b]:active {

    z-index: 1000000 !important;
    background: #04a304;

    zborder: solid red 10px;
}

button[b]:focus:hover {

    color: #FFC800;


    z-index: 1000000 !important;
    background: #2b6cb0 !important;

    zborder: solid red 10px;
}

button[b]:focus {

    color: #ccc;
    box-shadow:0 10px 16px 0 #00339999,0 6px 20px 0 #00339999 !important;
    background: #0463a3 !important;
}


button[b]>span{

    font-size: 12px;
    color: #333;
    font-weight: 100;
    font-family: 'Times New Roman', Times, serif;
    border: 1px dotted #00a2ff;
    background: #eeeeee33;
    padding: 3px 5px;


    position: absolute;
    bottom:5%;
    right:5%;
    border-radius: 20px;
}

div.regal{

    flex: 1;

    width: 100%;
    zwidth:105px;
    zheight:60px;
    background: #fcfce7;
    border: 1px solid #134aaf0e;
    zpadding: 10px;
    zmargin: 5px;
}

div.regal[last] {

    height: 0 !important;
    background: red;
    flex: 0;

}

div.regal>div{

    margin-top: -20px;
    font-size: 12px;
    color: #999;
}



div[skala]{

    zmargin-left: -20px;
}


/* body:not([noScroll])::-webkit-scrollbar, div:not([noScroll])::-webkit-scrollbar {


    width: 16px;
    height: 16px
} */





body::-webkit-scrollbar, div::-webkit-scrollbar {

    display:unset;
    width: 16px;
    height: 16px
}

body::-webkit-scrollbar-thumb, div::-webkit-scrollbar-thumb {
    background: #1c73e6d0;
    border-radius: 16px;
    box-shadow: inset 2px 2px 2px hsla(0,0%,100%,.25),inset -2px -2px 2px rgba(0,0,0,.25)
}


body::-webkit-scrollbar-track, div::-webkit-scrollbar-track {
    background: linear-gradient(90deg,#434343,#434343 1px,#111 0,#111)
}




body[noScroll]::-webkit-scrollbar-track, body[noScroll]::-webkit-scrollbar-thumb, body[noScroll]::-webkit-scrollbar{

    display: none;

   /* display: none; */
    /* width: 10px; */
    /* height: 10px; */


}



/* body:not([noScroll])::-webkit-scrollbar-track, div:not([noScroll])::-webkit-scrollbar-track {
    background: linear-gradient(90deg,#434343,#434343 1px,#111 0,#111)
} */


/* Smartphones ----------- */
@media only screen and (max-width: 760px) {

}

@media all and (min-width:960px) and (max-width: 1200px)  and (pointer:coarse) {

    #bookPop[expand]{   /* Tablet Querformat */

        top: 80px;
        height: calc(100vh - 100px);
        background: white;
        transition: all 1s ease;
    }
    /* put your css styles in here */
  }

@media only screen and (max-width: 960px) {
    /* For mobile phones: */

    body {

        overflow-y:auto !important;
    }

    /* body, body * {

        overflow-x:hidden !important;

    } */

    #payPop{

        /* top:0; */
    }



    #blurBack{

        position: fixed;
        display: flex;

        top:0;
        margin-top:0;
        background: #ffffff;
    
        left: 0;
        z-index: 1;
        width: 100vw;
        height: 100vh;

    }



    #bookPop{

        zwidth:auto;
        width:100%;
        zwidth: calc(100% - 30px );
        background: #00a2ff00;
        top:0 ;
        margin-top: 0;
        margin-left: 0;
        padding-left: 0;
        zleft:-24px;
    }

    div#bookWin {

        background: #fff;
        width: auto;
        zwidth: calc(100% - 50px);
        margin-top:50px;
        zheight: 766px;
    }

    div#datumBox{

        position: absolute;
        top:380px;

        width: 300px;
        height:80px;
        zbackground: #e4e4e42d;
        zpadding:20px;


        display: flex;
        flex-direction: row;
        justify-content: center;
        zalign-items: flex-start;

        zwidth:fit-content;
        zheight:fit-content;

    }

    div#legende{


        position:unset;
        padding:10px;
        zmargin-left:50px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;

        width:fit-content;
        height:fit-content;


    }

    div#tagBox{

        display: block;
        padding:10px 20px;
        color: #666;
        border: 1px silver solid;
        border-radius: 10px;

    }
    

    div.bookWrap{


        background: #ffffff;

        width:100vw;
        height:100%;

        flex-direction: column;
        zwidth: 300px;

        align-items: center;

    }

    button[b] {

        padding: 0px;
        font-size: 12px;
    }

    div.bookCol{

        margin: 1px;
        zheight: 766px;

    }


    div.rightDiv{

        zflex: 1 1 0;
        zwidth:100vw;
        zwidth: calc(100% - 50px );
        zmargin-right: 0px;

        width:fit-content;
        height:450px;
        padding: auto;
        margin:auto;

        border-radius: 10px;

    }


    div.bookBack{


        z-index: 100000;
        position: absolute;
        top:0;
        margin-top:0;
        background: #00000000;
        zwidth: 100vw;
        zheight: 200vh;


        top: 0;
        zpadding: 2px;
    }

    div.regal{

        zheight:160px !important;
    }


  }






/* div {
    animation: rotate 60s linear infinite;
  }
  
  @keyframes rotate {
    to {
      transform: rotate(3deg);
      ztransform: skewY(360deg);
      ztransform: scaleX(0.01);
    }
  } */



  #modId{

    display: none;

    position:absolute;
    z-index: 10;

    top:100px;
    right: 100px;

  }



#kt-modal_126a28-91 .kt-modal-container, #kt-target-modal_126a28-91 .kt-modal-container, .kb-modal-content_126a28-91 .kt-modal-container {
    background: var(--global-palette5);
    border-color: var(--global-palette1);
    border-width: 1px 1px 1px 1px;
    border-radius: 14px;

}

#kt-modal_126a28-91 .kt-modal-container, #kt-target-modal_126a28-91 .kt-modal-container, .kb-modal-content_126a28-91 .kt-modal-container {
    max-width: 300px;
}

.kt-m-animate-in-fade[aria-hidden=false] .kt-modal-container {
    -webkit-animation: kbmfadeIn .3s cubic-bezier(0, 0, 0.2, 1);
    animation: kbmfadeIn .3s cubic-bezier(0, 0, 0.2, 1);
}

.kadence-block-pro-modal .kt-modal-container, .kadence-block-pro-modal .kt-modal-overlay {
    will-change: transform;
}

.kt-modal-container {
    background-color: #fff;
    padding: 30px;
    max-width: 600px;
    width: 100%;
    display: flex;
    margin: 20px;
    justify-content: flex-start;
    align-items: flex-start;
    max-height: 100vh;
    border-radius: 0;
    overflow-y: auto;
    position: relative;
    box-sizing: border-box;
    text-align: left;
    border: 0 solid transparent;
    

}

#forminator-module-354.forminator-design--material .forminator-input, #forminator-module-354.forminator-design--material .forminator-input:hover, #forminator-module-354.forminator-design--material .forminator-input:focus, #forminator-module-354.forminator-design--material .forminator-input:active {
    border-color: #777771;
    color: #e09500;
}

.forminator-ui#forminator-module-354.forminator-design--material .forminator-input, .forminator-ui#forminator-module-354.forminator-design--material .forminator-input input {
    font-size: 16px;
    font-family: inherit;
    font-weight: 400;
    }
    #payPop *, #modId *, input, textarea {
    cursor: auto !important;
    user-select: auto !important;
    -webkit-user-select: auto !important;
}

.et-db #et-boc .et_pb_module .forminator-ui.forminator-custom-form[data-design=material] .forminator-input, .forminator-ui.forminator-custom-form[data-design=material] .forminator-input {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    min-width: unset;
    max-width: unset;
    height: auto;
    min-height: unset;
    max-height: unset;
    display: block;
    margin: 0;
    padding: 10px 0 9px;
    border-width: 0;
    border-bottom-width: 1px;
    border-style: solid;
    border-radius: 0;
    background-color: transparent!important;
    background-image: unset;
    line-height: 1.3em;
    -webkit-transition: .2s ease;
    transition: .2s ease;
}

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea {
    -webkit-appearance: none;
    color: var(--global-palette5);
    border: 1px solid var(--global-gray-400);
    border-radius: 3px;
    padding: 0.4em 0.5em;
    max-width: 100%;
    background: var(--global-palette9);
    box-shadow: 0px 0px 0px -7px rgba(0,0,0,0);
}

.forminator-ui#forminator-module-354.forminator-design--material .forminator-error-message {
    font-size: 12px;
    font-family: inherit;
    font-weight: 500;
    }
    #forminator-module-354.forminator-design--material .forminator-error-message {
    color: #E04562;
}
 