
#loading-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* Ausgrauen des Hintergrunds */
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white; /* Spinner-Farbe */
    font-size: 3rem; /* Größe des Spinners */
}


.qr img {
    width: auto;
    max-width: 100%;
    display: block;
    height: auto;
    float: left;
    object-fit: scale-down;
}
.widget-sidebar {
    border-left: 1px solid #c6d0da;
}
.qr {
    margin: 15px;
}

.qr span {
    opacity: .7;
    text-align: center!important;
    width: 100%;
    float: left;
    margin-top: 10px;
}
.item-description-1.item-description p {
    white-space: break-spaces;
}
.qr {
    float: left;
}

div#qrcode {
    float: left;
}

div#qrcode canvas {
    float: left;
    width: 100%;
}

.qr {
    border: 1px solid #d2d2d2;
    margin: 10px 0px;
    padding: 15px;
}


/* CLOCK */
html,body{
    height: 100%;
    margin: 0;
    padding: 0;
    /*background-image:linear-gradient(#e7e7e7,#d7d7d7);*/
}
.clock-wrapper{
    position: absolute;
    top: 50%;
    right: 0;
    bottom: 50%;
    left: 0;
    width: 250px;
    height: 250px;
    margin: auto;
    padding: 5px;
    background-image: linear-gradient(#f7f7f7,#e0e0e0);
    border-radius: 50%;
    box-shadow: 0 10px 15px rgba(0,0,0,.15),0 2px 2px rgba(0,0,0,.2);
    transform: scale(0.7);
    box-shadow: none!Important;
    border: none!Important;
    background: white;
}
.clock-base{
    width: 250px;
    height: 250px;
    background-color: #ffffff;
    border-radius: 50%;
    /* box-shadow: 0 0 5px #fff; */
    border: 1px solid #868686;
}
.clock-dial {
    position: absolute;
    z-index: 1;
    top: 15px;
    left: 15px;
    width: 230px;
    height: 230px;
}
.clock-dial .clock-indicator {
    position: absolute;
    width: 2px;
    height: 4px;
    margin: 113px 114px;
    background-color: #ddd;
}
.clock-indicator:nth-child(1) {
    transform: rotate(30deg) translateY(-113px);
}
.clock-indicator:nth-child(2) {
    transform: rotate(60deg) translateY(-113px);
}
.clock-indicator:nth-child(3) {
    transform: rotate(90deg) translateY(-113px);
    background-color: #aaa;
}
.clock-indicator:nth-child(4) {
    transform: rotate(120deg) translateY(-113px);
}
.clock-indicator:nth-child(5) {
    transform: rotate(150deg) translateY(-113px);
}
.clock-indicator:nth-child(6) {
    transform: rotate(180deg) translateY(-113px);
    background-color: #aaa;
}
.clock-indicator:nth-child(7) {
    transform: rotate(210deg) translateY(-113px);
}
.clock-indicator:nth-child(8) {
    transform: rotate(240deg) translateY(-113px);
}
.clock-indicator:nth-child(9) {
    transform: rotate(270deg) translateY(-113px);
    background-color: #aaa;
}
.clock-indicator:nth-child(10) {
    transform: rotate(300deg) translateY(-113px);
}
.clock-indicator:nth-child(11) {
    transform: rotate(330deg) translateY(-113px);
}
.clock-indicator:nth-child(12) {
    transform: rotate(360deg) translateY(-113px);
    background-color: #c00;
}
.clock-hour{
    position: absolute;
    z-index: 2;
    top: 80px;
    left: 128px;
    width: 4px;
    height: 65px;
    background-color: #555;
    border-radius: 2px;
    box-shadow: 0 0 2px rgba(0,0,0,.2);
    transform-origin: 2px 50px;
    transition: .5s;
    -webkit-animation: rotate-hour 43200s linear infinite;
    -moz-animation: rotate-hour 43200s linear infinite;
}
.clock-minute{
    position: absolute;
    z-index: 3;
    top: 60px;
    left: 128px;
    width: 4px;
    height: 85px;
    background-color: #555;
    border-radius: 2px;
    box-shadow: 0 0 2px rgba(0,0,0,.2);
    transform-origin: 2px 70px;
    transition: .5s;
    -webkit-animation: rotate-minute 3600s linear infinite;
    -moz-animation: rotate-minute 3600s linear infinite;
}
.clock-second{
    position: absolute;
    z-index: 4;
    top: 20px;
    left: 129px;
    width: 2px;
    height: 130px;
    background-color: #a00;
    box-shadow: 0 0 2px rgba(0,0,0,.2);
    transform-origin: 1px 110px;
    transition: .5s;
    -webkit-animation: rotate-second 60s linear infinite;
    -moz-animation: rotate-second 60s linear infinite;
}
.clock-second:after{
    content: "";
    display: block;
    position: absolute;
    left: -5px;
    bottom: 14px;
    width: 8px;
    height: 8px;
    background-color: #a00;
    border: solid 2px #a00;
    border-radius: 50%;
    box-shadow: 0 0 3px rgba(0,0,0,.2);
}
.clock-center{
    position: absolute;
    z-index: 1;
    width: 150px;
    height: 150px;
    top: 55px;
    left: 55px;
    background-image: linear-gradient(#e3e3e3,#f7f7f7);
    border-radius: 50%;
    box-shadow: inset 0 -1px 0 #fafafa, inset 0 1px 0 #e3e3e3;
    background: transparent;
    box-shadow: none!Important;
}
.clock-center:after{
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    margin: 65px;
    background-color: #ddd;
    border-radius: 50%;
}
.clock-block {
    display:block;
    float:left;
    width:100%;
    min-height: 200px;
    position:relative;
}
.date-today {
    text-align: center;
    font-size: 19px;
    float: left;
    width: 100%;
    background: gainsboro;
    padding: 6px 0px;
}
.head-pic {
    display:none;
}

main.tmpl-content.container {
    background: none!Important;
}

/* GÄSTEMAPPE */
p#iv6veu {
    background: #e7e7e7;
    width: 70%;
    margin-left: 15%;
    padding: 15px;
}

div#grey-box {}

.grey-box {
    background: #e7e7e7;
    padding: 15px;
    font-size: 16px;
    text-align: center;
}

.grey-box strong {
    font-size: 20px;
}

table.table.table-striped.info-tb tr td:first-child {
    font-weight: 700;
}

table.table.table-striped.info-tb tr td {
    font-size: 17px;
}

.text>.list {
    text-transform: uppercase;
    /* font-weight: 700; */
}

li.text {}

li.text .list {
    font-size: 16px;
    font-weight: 799;
}

li.text {
    list-style: none;
}

li.text ul {
    border-bottom: 1px solid #e7e7e7;
    padding-bottom: 10px;
    padding-top: 10px;
    list-style: none;
}
li.text ul li {
    padding-bottom: 10px;
}

.list {
    padding-top: 5px;
}


/*
  You want a simple and fancy tooltip?
  Just copy all [data-tooltip] blocks:
*/
[data-tooltip] {
    position: relative;
    z-index: 10;
}

/* Positioning and visibility settings of the tooltip */
[data-tooltip]:before,
[data-tooltip]:after {
    position: absolute;
    visibility: hidden;
    opacity: 0;
    left: 50%;
    bottom: calc(100% + 5px); /* 5px is the size of the arrow */
    pointer-events: none;
    transition: 0.2s;
    will-change: transform;
    width: 100%!important;
    line-height: initial;

}

/* The actual tooltip with a dynamic width */
[data-tooltip]:before {
    content: attr(data-tooltip);
    padding: 10px 18px;
    min-width: 50px;
    max-width: 300px;
    width: max-content;
    width: -moz-max-content;
    border-radius: 6px;
    font-size: 14px;
    background-color: rgba(59, 72, 80, 0.9);
    background-image: linear-gradient(30deg,
    rgba(59, 72, 80, 0.44),
    rgba(59, 68, 75, 0.44),
    rgba(60, 82, 88, 0.44));
    box-shadow: 0px 0px 24px rgba(0, 0, 0, 0.2);
    color: #fff;
    text-align: center;
    white-space: pre-wrap;
    transform: translate(-50%, -5px) scale(0.5);
}

/* Tooltip arrow */
[data-tooltip]:after {
    content: '';
    border-style: solid;
    border-width: 5px 5px 0px 5px; /* CSS triangle */
    border-color: rgba(55, 64, 70, 0.9) transparent transparent transparent;
    transition-duration: 0s; /* If the mouse leaves the element,
                              the transition effects for the
                              tooltip arrow are "turned off" */
    transform-origin: top;   /* Orientation setting for the
                              slide-down effect */
    transform: translateX(-50%) scaleY(0);
}

/* Tooltip becomes visible at hover */
[data-tooltip]:hover:before,
[data-tooltip]:hover:after {
    visibility: visible;
    opacity: 1;
}
/* Scales from 0.5 to 1 -> grow effect */
[data-tooltip]:hover:before {
    transition-delay: 0.3s;
    transform: translate(-50%, -5px) scale(1);
}
/*
  Arrow slide down effect only on mouseenter (NOT on mouseleave)
*/
[data-tooltip]:hover:after {
    transition-delay: 0.5s; /* Starting after the grow effect */
    transition-duration: 0.2s;
    transform: translateX(-50%) scaleY(1);
}
/*
  That's it for the basic tooltip.

  If you want some adjustability
  here are some orientation settings you can use:
*/

/* LEFT */
/* Tooltip + arrow */
[data-tooltip-location="left"]:before,
[data-tooltip-location="left"]:after {
    left: auto;
    right: calc(100% + 5px);
    bottom: 50%;
}

/* Tooltip */
[data-tooltip-location="left"]:before {
    transform: translate(-5px, 50%) scale(0.5);
}
[data-tooltip-location="left"]:hover:before {
    transform: translate(-5px, 50%) scale(1);
}

/* Arrow */
[data-tooltip-location="left"]:after {
    border-width: 5px 0px 5px 5px;
    border-color: transparent transparent transparent rgba(55, 64, 70, 0.9);
    transform-origin: left;
    transform: translateY(50%) scaleX(0);
}
[data-tooltip-location="left"]:hover:after {
    transform: translateY(50%) scaleX(1);
}



/* RIGHT */
[data-tooltip-location="right"]:before,
[data-tooltip-location="right"]:after {
    left: calc(100% + 5px);
    bottom: 50%;
}

[data-tooltip-location="right"]:before {
    transform: translate(5px, 50%) scale(0.5);
}
[data-tooltip-location="right"]:hover:before {
    transform: translate(5px, 50%) scale(1);
}

[data-tooltip-location="right"]:after {
    border-width: 5px 5px 5px 0px;
    border-color: transparent rgba(55, 64, 70, 0.9) transparent transparent;
    transform-origin: right;
    transform: translateY(50%) scaleX(0);
}
[data-tooltip-location="right"]:hover:after {
    transform: translateY(50%) scaleX(1);
}



/* BOTTOM */
[data-tooltip-location="bottom"]:before,
[data-tooltip-location="bottom"]:after {
    top: calc(100% + 5px);
    bottom: auto;
}

[data-tooltip-location="bottom"]:before {
    transform: translate(-50%, 5px) scale(0.5);
}

[data-tooltip-location="bottom"]:hover:before {
    transform: translate(-50%, 5px) scale(1);
}

[data-tooltip-location="bottom"]:after {
    border-width: 0px 5px 5px 5px;
    border-color: transparent transparent rgba(55, 64, 70, 0.9) transparent;
    transform-origin: bottom;
}
#content {
    background:transparent!Important;
    width: 100%;
}
div#whited>div {
    background: white;
    float: left;
    width: 100%;
}

.dot.active+.line {
    background: green!Important;
}

.dot.active {
    background: green!Important;
    /* content: "test"; */
    position: relative;
}

.dot.active:after {
    content: "\f058";
    font-family: 'Font Awesome 5 Free';
    color: white;
    color: #2ec42e;
    position: absolute;
    top: -3px;
    font-size: 14px;
    left: -0.5px;
}


.HP-section.contact .HP-section-title:before, .HP-section.wifi .HP-section-title:before, .HP-section.hotel .HP-section-title:before, .HP-section.location .HP-section-title:before {
    content: "\f086";
    font-family: 'Font Awesome 5 Free';
    font-size: 23px;
    margin-bottom: 0px;
    margin-right: 20px;
}

.HP-section.wifi .HP-section-title:before {
    content: "\f1eb";
    font-weight: bold;
}

.HP-section.hotel .HP-section-title:before {
    content: "\f05a";
    font-weight: bold;
}

.HP-section.location .HP-section-title:before {
    content: "\f277";
    font-weight: bold;
}

.HP-section-title:after {
   display:block;
    clear:both;
    content : "";
    position: relative;
    left    : 0;
    bottom  : 0;
    max-width:150px;
    height  : 1px;
    width   : 50%;  /* or 100px */
    border-bottom:3px solid #333;
    margin:0 auto 10px;
    padding:4px 0px;
}

/* Liste Hotel-Infos A-Z */
.swo-faq-element {clear: both;}
.swo-faq-element:not(:first-child) { border-top: 1px solid #ccc; padding-top: 20px;;}
.swo-faq-header {font-size: 32px; font-weight: bold; width: 15%; float: left; text-align: right; color: #666;}
.swo-faq dl {width: calc(85% - 40px); float: left; padding-left: 40px; padding-top: 5px;}
.swo-faq dd {margin-bottom: 15px !important;}

/* Alternative BG-Section-Farbe */
.HP-section.bg-color-2 {
    width: 100%;
    position: relative;
    padding: 40px 0 40px 0;
    margin: 40px 0 40px 0;
}

.HP-section:last-child.bg-color-2 {
    margin: 40px 0 0 0;
}

.HP-section.bg-color-2:before {
    content: "";
    width: 300vw;
    height: 100%;
    position: absolute;
    top: 0px;
    left: -100%;
    z-index: -1
}

.HP-section.bg-color-2, .HP-section.bg-color-2:before {
    background: #333; /* Farbe der Section */
}

/* Farben bei dunkler BG-Section-Farbe */
.HP-section.bg-color-2.bg-color-2-dark { color: #fafafa;}
.HP-section.bg-color-2.bg-color-2-dark .HP-section-title:after { border-bottom:3px solid #fafafa;}
.HP-section.bg-color-2.bg-color-2-dark .swo-faq-header {color: #ccc;}

/* Enfernung Abstand unter letzter Section */
main.tmpl-content.container {padding-bottom: 0 !important;}
.tmpl-content {margin-bottom: 0px !important;}

/* Ende Alternative BG-Section-Farbe */

.wg {
    position: fixed;
    right: 0px;
    top: 0px;
    width: 16%;
    background: white;
    padding: 25px;
}

.radio-payment i.far.fa-check-circle {left: -1px!important;top: 0px!important;}

div#whited.topfix {
    margin: unset!important;
}

div#whited.topfix>.CMS_workflow {
    padding: 10px;
}

.dashboard.HP_owncontent.topfix {
    margin: unset!important;
}

.badge-danger { background-color: #b94a48 !important; }

.hidden-md.hidden-lg.toggle-sidebar {
    background: grey;
    padding: 9px 9px 9px 0px;
    text-align: center;
    border-radius: 100%;
    position: absolute;
    top: 50%;
    color: white;
    left: -25px;
    font-size: 17px;
    width: 40px;
    height: 40px;
    box-shadow: 0px 0px 3px 1px #00000070;
}


.os-checkout .well .radio {width: 100% !important; float: unset;}
.os-checkout .well .radio input {width: 20px !important; top: 17px;}
.os-checkout .well .radio label span {position: relative; border: 0px solid #eaeaea; background: transparent;}

@media screen and (max-width:991px){

    .wg {left:100%;}
    .wg.opened {
        left: unset;
        width: 90%;
        right: 0px;
        box-shadow: 0px 0px 12px 1px #0000008c;
        z-index: 99999999;
        top: 0px!Important;
        margin-top: 0px;
    }

    .wg.opened .toggle-sidebar {transform: rotate(180deg);}

    .toggle-sidebar {
        transition: all 0.3s ease;
    }

    .wg {
        transition: all 0.3s ease;
    }

    .wg {
        width: 100%;
    }
}