<style>
@font-face {
	font-family: 'Montserat FE';
	font-style: normal;
	font-weight: 200;
	font-display: auto;
	src: url('https://www.final-escape.com/wp-content/uploads/2022/10/montserrat-v25-latin-200.woff2') format('woff2'),
		url('https://www.final-escape.com/wp-content/uploads/2022/10/montserrat-v25-latin-200.woff') format('woff');
}
@font-face {
	font-family: 'Montserat FE';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://www.final-escape.com/wp-content/uploads/2022/10/montserrat-v25-latin-700.woff2') format('woff2'),
		url('https://www.final-escape.com/wp-content/uploads/2022/10/montserrat-v25-latin-700.woff') format('woff');
}
@font-face {
	font-family: 'Montserat FE';
	font-style: normal;
	font-weight: 900;
	font-display: auto;
	src: url('https://www.final-escape.com/wp-content/uploads/2022/10/montserrat-v25-latin-900.woff2') format('woff2'),
		url('https://www.final-escape.com/wp-content/uploads/2022/10/montserrat-v25-latin-900.woff') format('woff');
}

.belboBookingElement *, .belboSingleBookingElement *, .modal-container[data-v-fe02f01e] *{
    font-family: 'Montserat FE', sans-serif !important;
    /*font-size: 0.9375rem; */
}

/*Mobile*/
      
@media (max-width: 767px) {
 .fill-1-3>div[data-v-e6ad0b91]:last-child {
    flex:1;
    width: 100% !important;
  } 
  
div[data-v-e6ad0b91]:not(.overlay) {
    height: auto !important;
    min-height: 600px !important; 
    display: flex !important;
    flex-direction: column !important;
}
.closeButton {
    bottom: 36px !important;
    left: 36px !important;
}
.modal-container {
    flex: 1 !important; 
    padding: 20px !important;
    max-width: 100% !important;
    position: relative;
    }
.modal {
   padding: 1em !important; 
    }
.widget {
    padding: 24px 12px !important;
    border: none !important;
}
.day-list  {
   display: grid !important;
   grid-template-columns: repeat(7, 113px);
}


.game-grid {
grid-template-columns:repeat(auto-fill,minmax(100%,1fr)) !important;
min-height: 600px !important;
    
}
}

/*Desktop*/

.overlay {
    position:relative;
    width: 100vw !important;
    backdrop-filter: brightness(0.5) blur(4px) !important;
    -webkit-backdrop-filter: brightness(0.5) blur(4px) !important;
    transition: backdrop-filter 0.5s ease, -webkit-backdrop-filter 0.5s ease;
}
.modal-container {
    position:relative;
    max-width: 98% !important; 
    /*margin-top: 200px !important;*/
}

.modal {
    border-radius: 0px !important;
    user-select: none;
}

.modal ul {
    gap: 0.8em !important;
}

.modal ul li {
    padding: 0.6em 1em !important;
}

div[data-v-e6ad0b91]:not(.overlay) {
    height: 760px;
}

.widget {
    height: 370px !important;
    border-radius: 0px !important;
    border: 1px solid #eee;
    user-select: none;
    padding: 1em;
    transition: background-color 0.6s ease, border 0.6s ease;
    position: sticky;
    top: 200px;
    margin: 0!important;
}

.widget:hover {
    border: 1px solid #B9B9B9;
}


.widget[data-v-620b7ff3]{
    padding: 0em !important;
    border: 1px solid transparent;
}

.widget[data-v-620b7ff3]:hover {
    border: 1px solid transparent;
}

h2[data-v-620b7ff3] {
    margin: 0!important;
}

.widget-container {
    border: 1px solid #eee;
    border-radius: 0px !important;
    user-select: none;
    transition: opacity 1.2s ease, background-color 0.6s ease, border 0.6s ease;
    opacity: 1;
}

.widget-container:hover {
    border: 1px solid #B9B9B9;
}

.widget-container[data-v-1c0419b3] {
    overflow-x: auto !important;
    user-select: none;

}

.widget-header {
  position: relative;
  overflow: hidden; /* verhindert, dass der Zoom übersteht */
  height: 240px !important;
}

.widget-header::before {
  content: "" !important;
  position: absolute;
  background-image: inherit !important;
  background-size: cover !important;
  background-position: center !important;
  transition: transform 1.2s ease;
  z-index: 0 !important; 
}

.widget-header::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0,0,0,0.3);
  transition: background-color 0.6s ease;
  z-index: 1;
  pointer-events: none; 
}


.game-grid:hover .widget-container {
  opacity: 0.5; /* alle dimmen */
}

.game-grid:hover .widget-container:hover {
  opacity: 1; /* nur das aktuell gehhoverte bleibt voll sichtbar */
}
.widget-container:hover .widget-header::before {
  transform: scale(1.06);
   background-color: rgba(0,0,0,0.4);
}

.widget-container h2[data-v-620b7ff3] {
  transition: transform 1.2s ease;
  backdrop-filter: blur(10px);
  font-size: 18px!important;
  line-height: 16px!important;
}

.widget-container:hover h2[data-v-620b7ff3] {
  transform: scale(1.05);
  transition: transform 1.2s ease;
}

.widget-header > * {
  position: relative;
  z-index: 1; /* Text und Inhalte nach vorne holen */
}

/* Badge */

/* Erstes widget-container: Badge "Klassiker"
.widget-container[data-v-b5a9d095]::after {
  content: attr(data-badge-text);
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  --f: 0.4em;
  position: absolute;
  line-height: 1.4;
  padding-inline: 1.8em;
  padding-bottom: var(--f);
  border-image: conic-gradient(#0008 0 0) 51%/var(--f);
  clip-path: polygon(
    100% calc(100% - var(--f)),100% 100%,calc(100% - var(--f)) calc(100% - var(--f)),var(--f) calc(100% - var(--f)), 0 100%,0 calc(100% - var(--f)),999px calc(100% - var(--f) - 999px),calc(100% - 999px) calc(100% - var(--f) - 999px));
  transform: translate(calc((cos(45deg) - 1)*100%), -100%) rotate(-45deg);
  transform-origin: 100% 100%;
  background-color: var(--e-global-color-secondary) !important;
  z-index: 10;
  pointer-events: none;
   width: 114px;
  text-align: center;
  white-space: nowrap;
}

/* Zweites widget-container: Badge
.widget-container[data-v-b5a9d095]:nth-of-type(2)::after {
  content: attr(data-badge-text);
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  --f: 0.4em;
  position: absolute;
  line-height: 1.4;
  padding-inline: 1.8em;
  padding-bottom: var(--f);
  border-image: conic-gradient(#0008 0 0) 51%/var(--f);
  clip-path: polygon(
    100% calc(100% - var(--f)),100% 100%,calc(100% - var(--f)) calc(100% - var(--f)),var(--f) calc(100% - var(--f)), 0 100%,0 calc(100% - var(--f)),999px calc(100% - var(--f) - 999px),calc(100% - 999px) calc(100% - var(--f) - 999px));
  transform: translate(calc((cos(45deg) - 1)*100%), -100%) rotate(-45deg);
  transform-origin: 100% 100%;
  background-color: var(--e-global-color-secondary) !important;
  z-index: 10;
  pointer-events: none;
  width: 114px;
  text-align: center;
  white-space: nowrap;
}

/*
.widget-container[data-v-b5a9d095]::after {
  // content: var(--badge-text, "");
  content: "Klassiker";
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  --f: 0.4em;
  position: absolute;
  line-height: 1.4;
  padding-inline: 1.8em;
  padding-bottom: var(--f);
  border-image: conic-gradient(#0008 0 0) 51%/var(--f);
  clip-path: polygon(
    100% calc(100% - var(--f)),100% 100%,calc(100% - var(--f)) calc(100% - var(--f)),var(--f) calc(100% - var(--f)), 0 100%,0 calc(100% - var(--f)),999px calc(100% - var(--f) - 999px),calc(100% - 999px) calc(100% - var(--f) - 999px));
  transform: translate(calc((cos(45deg) - 1)*100%), -100%) rotate(-45deg);
  transform-origin: 100% 100%;
  background-color: var( --e-global-color-secondary ) !important;
  z-index: 10;
  pointer-events: none;
}

/* Badge 2*/
/*
.widget-container::after {
  --f: .5em; 
  --r: .8em; 
  content: "Top\AGame";
  white-space: pre; 
  display: block;  
  text-align: center; 
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  position: absolute;
  margin-left: 16px;
  top: -6px;
  padding: .6em;
  background: var( --e-global-color-secondary ) !important;
  border-right: var(--f) solid #0005;
  border-bottom: var(--r) solid #0000;
  clip-path: polygon(calc(100% - var(--f)) 0,0 0,0 calc(100% - var(--r)),calc(50% - var(--f)/2) 100%,calc(100% - var(--f)) calc(100% - var(--r)),calc(100% - var(--f)) var(--f),100% var(--f));

 z-index: 10;    
}

*/

.widget-content {
   background-color: var(--e-global-color-584af85);
   min-height: 130px;
}

.widget-content[data-v-620b7ff3] {
   background-color: white;
   min-height: 130px;
}

.ufo-game-overview {
    font-size: 11px !important;
    border-radius: 8px !important;
    user-select: none;
    transition: background 0.4s ease, color 0.4s ease;
    padding: 4px 8px !important;
}
.ufo-game-overview span:nth-child(1):hover > span {
    transform: rotateY(360deg);
    transition: transform 1.4s linear;
}

.ufo-game-overview span:nth-child(2):hover > span {
    transform: rotate(360deg);
    transition: transform 1.4s linear;
}

h2[data-v-620b7ff3] {
  transform-origin: left bottom; /* Fixpunkt links und unten */
}

.bookingButton { 
    background-color: var( --e-global-color-primary ) !important;
    border-radius: 0px !important;
    padding: 0.6em 1em !important;
    transition: background 0.4s ease, color 0.4s ease;
}
.disabled.bookingButton { 
    background: #A0B5B8  !important; 
    cursor: default !important; 
    pointer-events: none;
}

.disabled.bookingButton:hover { 
    background: #A0B5B8  !important; 
}

.bookingButton:hover { 
    background-color: var( --e-global-color-secondary ) !important;
    color: #fff !important;
}

.closeButton {
    position:absolute;
    bottom: 64px;
    left:64px;
    z-index: 999;
    background-color: var( --e-global-color-primary ) !important;
    transition: background 0.4s ease, color 0.4s ease;
    border-radius: 0px !important;
    padding: 0.8em 1em !important;
    line-height: 1 !important;
    
}

.closeButton:hover { 
    background-color: var( --e-global-color-secondary ) !important;
}

.closeButton .icon { 
    display: none!important;
    height: 20px !important;
    width: 20px !important;
}


div.full-flex > div > span {
    color: var(--e-global-color-text) !important;
    font-size: 18px !important;
    font-weight: 600;
    transition: color 0.4s ease;
}
div.full-flex > div > span::after {
  content: "\A inkl. MwSt."; 
  font-weight: normal;
  font-size: 14px;
  display: flex;
  justify-content: end;
  line-height: 1;
}
.month-toggle {
    padding: 1em 0 !important;   
}


table {
    table-layout: fixed;
}

td, th {
    padding: 0 !important;
    border: none !important;
    border: 4px solid white !important;
    
}

.day-header {
    font-size: 0.9375rem !important;
}

tr td:nth-last-child(1) .day.dayIsCurrentMonth:not(.currentSelection),
tr td:nth-last-child(2) .day.dayIsCurrentMonth:not(.currentSelection) {
  background-color: #E6F4F1 !important; //#F6EAF8
}

tr td:nth-last-child(1):hover .day.dayIsCurrentMonth:not(.currentSelection):not(.past),
tr td:nth-last-child(2):hover .day.dayIsCurrentMonth:not(.currentSelection):not(.past) {
  background-color: var( --e-global-color-secondary ) !important; 
}
 
.day[data-v-5c77f5c6] {
    height: 35px !important;
    pointer-events: none;
    font-size: 0.9375rem;
}

.day.dayIsCurrentMonth {
    background: var(--e-global-color-584af85) !important;
    transition: background 0.4s ease, color 0.4s ease;
    pointer-events: auto;
}

.day.dayIsCurrentMonth:hover {
    background: var( --e-global-color-secondary ) !important;
    color: #fff !important;
    border-radius: 0px !important;
    pointer-events: auto;
}
.past.day.dayIsCurrentMonth {
    opacity: 0.3 !important;
}
.past.day.dayIsCurrentMonth:hover {
    background: var(--e-global-color-584af85) !important;
    color: #17122e;
    pointer-events: none;
}

/* Auswahlfarbe */
.day.currentSelection {
    background: var( --e-global-color-primary ) !important;
    color: white !important;
    border-radius: 0px !important;
    pointer-events: none;
}
 

.day[data-v-1c0419b3] {
flex: 1 1 0;
}

span[data-v-1c0419b3]::after {
  content: '.';
}
.day .day-header {
    border: none !important;
    padding-bottom: 0 !important;
}
.day .day-button {
    color: var(--e-global-color-text) !important;
    background-color: white;
    border-radius: 0px !important;
    transition: background 0.4s ease, color 0.4s ease;
    padding: 0.5em !important;
    margin: 8px 4px ;
}
.day:hover .day-button {
    color: white !important;
    background-color:var( --e-global-color-secondary ) !important;
    border-radius: 0px !important;
    margin: 8px 4px ;
}

.day-header:hover ~ .day-datelist div.available {
    color: white !important;
    background-color: var( --e-global-color-secondary ) !important;
    border-radius: 0px !important;
    border: 1px solid var( --e-global-color-secondary ) !important;
    transition: background-color 0.3s, color 0.3s;
}

.day .day-datelist div.available {
    color: var(--e-global-color-text) !important;
    background-color: var(--e-global-color-584af85) !important;
    border-radius: 0px !important; 
    border: 1px solid #f2f2f2 !important;
    margin: 8px 4px ;
    transition: background 0.4s ease, color 0.4s ease;
    
}
.day .day-datelist div.available:hover {
    color: white !important;
    background-color: var( --e-global-color-secondary ) !important;
    border-radius: 0px !important;
    border: 1px solid var( --e-global-color-secondary ) !important;
    margin: 8px 4px ;
   
}

.day-datelist div[data-v-1c0419b3]:not(.available) {
    color: var(--e-global-color-text) !important;
    text-decoration: line-through;
    user-select: none;
    pointer-events: none;
      background-color: var(--e-global-color-584af85) !important;
    border-radius: 0 !important;
    border: 1px solid #f2f2f2 !important;
    margin: 8px 4px ;
    opacity: 0.3 !important;
}
    
li.grey {
    line-height: 1.5 !important;
    border-radius: 0px !important;
    border: 1px solid #e4e4e4 !important;
    color: var(--e-global-color-text) !important;
     background-color: var(--e-global-color-584af85) !important;
    text-decoration: line-through;
    user-select: none;
    pointer-events: none;
    opacity: 0.3 !important;
    
}
ul[data-v-620b7ff3] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(76px, 1fr)) !important;
  padding: 0;
  margin: 0;
  list-style: none;
  gap: 8px; /* Optional: Abstand zwischen den Elementen */
}

ul[data-v-620b7ff3] li {
    padding: 0.6em 1em !important;
    text-align: center; 
    box-sizing: border-box;
}

ul[data-v-620b7ff3] li.available {
    background-color: var(--e-global-color-584af85) !important;
    line-height: 1.5 !important;
    color: var(--e-global-color-text) !important;
    border-radius: 0px!important;
    border: 1px solid #f2f2f2 !important;
    transition: background 0.4s ease, color 0.4s ease, border 0.4s ease;
}

ul[data-v-620b7ff3] li.available:hover {
    border: 1px solid var( --e-global-color-secondary ) !important;
    background: var( --e-global-color-secondary ) !important;
    cursor: pointer;
    color: #fff !important;

}
.widget-header h2 {
    font-size: 20px;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0em;
    text-align: center;
    color: white;
}

.modal > div > p {
    margin-bottom: 20px;
}

.modal ul > li > span {
    display: flex;
}

.modal > .full-flex {
  flex-direction: row;
  align-items: end !important;
  justify-content: end !important;
  flex-wrap: wrap;
}

.modal > .full-flex > div {
  display: none !important;
  height: 20px;
  margin: 0 20px 40px 0;
  width: 100%;
  text-align: right;
}

ul li.full-flex {
    border-radius: 0px!important;
    transition: background 0.4s ease, border 0.4s ease, color 0.4s ease;
}

ul li.full-flex:hover {
    border: 1px solid transparent !important;
    background-color: var( --e-global-color-secondary ) !important;
    color: white !important;
    transition: background 0.4s ease, border 0.4s ease, color 0.4s ease;
}
ul li.full-flex p {
    color: var(--e-global-color-text) !important;
    transition: color 0.4s ease;
    margin-block-end: 0 !important;
}
ul li.full-flex:hover p {
    color: white !important;
}

ul li.active {
    border: 1px solid transparent !important;
    background-color: var( --e-global-color-primary ) !important;
    color: white !important;
}
ul li.active p {
    color: white !important;
}

.primary-gradient {
    border-radius: 0px!important;
}

 
</style>