:root {
    --main-link-color: #1BC6BB;
    --main-menu-back-color: #112237;
    --main-menu-active-back-color: #152942;
    --main-back-color: #f4f6f8;
    --content-text-color: #243341
}

/*.header-site h1{*/
/*    font-size: 32px;*/
/*}*/

.modal-header button i.icon-close {
    font-size: 14px;
}

body.blackTheme .swal2-popup.swal2-modal.swal2-show {
    background: #2b364f;
}


a:hover {
    text-decoration: none !important;
}

.table-hover tbody tr:hover th {
    background-color: transparent;
}

.color-link {
    color: var(--main-link-color) !important;
}

h1, h2, h3 {
    color: var(--content-text-color);
}

h1 {
    font-size: 32px;
}

.contextTextColor {
    color: var(--content-text-color);
}


.font-weight-mediumHard {
    font-weight: 600;
}

.justify-self-center {
    justify-self: center;
}

.justify-self-end {
    justify-self: end;
}

.justify-self-start {
    justify-self: start;
}

.greyText {
    color: #5D748A;
}

.contentText {
    color: var(--content-text-color)
}

.textPagination {
    font-size: 16px;
    font-weight: 500;
    color: var(--content-text-color);
    padding-right: 3%;
}

.col-xs-5th, .col-sm-5th, .col-md-5th, .col-lg-5th, .col-xl-5th {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}

.vertical-nav-menu.metismenu .active:after {
    content: ' \25CF';
    position: absolute;
    font-size: 12px;
    left: 205px;
    color: var(--main-link-color);
}

.doc-box {
    margin-bottom: 25px;
    margin-right: 30px;
    width: 290px;
    height: 300px;
    border-radius: 4%;
}

.doc-box:first-child {
    margin-left: 15px;
}

.download-header {
    color: #5D748A;
    font-size: 14px;
}


.doc-box .card-header-tab {
    color: var(--content-text-color);
}

.icon-doc {
    width: 82px;
    height: 110px;
    background-color: #E0E5E9;
    border-radius: 5px;
}


.icon-doc:before {
    content: "";
    height: 29px;
    width: 29px;
    background-color: #B3BFC9;
    left: 53px;
    border-bottom-left-radius: 5px;
    position: absolute;
}

.icon-doc:after {
    content: "";
    left: 53px;
    border: 15px solid white;
    border-bottom-color: transparent;
    border-left-color: transparent;
    position: absolute;
}

.doc-ext {
    position: absolute;
    width: 66px;
    height: 35px;
    border-radius: 5px;
    top: 38px;
    left: -14px;
    color: white;
    font-size: 20px;
    font-weight: bolder;
    background-color: lightslategray;
}

.pdf-color {
    background-color: #F07068;
}


.docx-color {
    background-color: var(--main-link-color);
}

.cp {
    cursor: pointer;
}

.app-container {
    background-color: var(--main-back-color);
}

.app-header__logo .logo-src, .app-sidebar.sidebar-text-light .app-header__logo .logo-src {
    width: 150px;
    background: url(/web/logo.png);
    background-size: cover;
    height: 29px;
}

.app-theme-white .app-header {
    background-color: #343a40;
}

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    background-color: #fff;
}

.search-wrapper .input-holder .search-icon span::before {
    background-color: #d5d6d7;
}

.search-wrapper .input-holder .search-icon span::after {
    border: 2px solid #d5d6d7;
}

.search-input {
    color: #fff;
}

.search-wrapper .close::before, .search-wrapper .close::after {
    background: #fff;
}

.widget-heading {
    color: #b5b8ba;
}

.widget-content .widget-content-left .widget-heading {
    opacity: 1;
}

.widget-content-left i {
    color: #b5b8ba;
}

.widget-subheading {
    color: #85888c;
}

.widget-content .widget-content-left .widget-subheading {
    opacity: 1;
}

.app-sidebar.sidebar-text-light .vertical-nav-menu li a, .app-sidebar.sidebar-text-light .vertical-nav-menu li a i {
    color: #fff;
    opacity: 1 !important;
    font-size: 1rem;
}

.app-sidebar.sidebar-text-light .vertical-nav-menu li a i {
    font-size: 1.5rem;
}

.app-sidebar.sidebar-text-light .vertical-nav-menu li a {
    font-family: "Segoe ui semibold";
}

.app-sidebar.sidebar-text-light .vertical-nav-menu li a:hover i, .app-sidebar.sidebar-text-light .vertical-nav-menu li a:hover {
    color: var(--main-link-color);
}

.app-theme-white.fixed-header .app-header__logo {
    background-color: #343a40;
}

.app-sidebar.sidebar-text-light .vertical-nav-menu li a.active {
    background-color: var(--main-menu-active-back-color);
    color: #fff;
}

.app-sidebar.sidebar-text-light .vertical-nav-menu li a:hover {
    background-color: var(--main-menu-active-back-color);
}

.app-sidebar.sidebar-text-light .vertical-nav-menu li a.active i.metismenu-icon {
    opacity: .8;
}

.app-sidebar.sidebar-text-light .vertical-nav-menu li a.active i, .app-sidebar.sidebar-text-light .vertical-nav-menu li a.active {
    color: var(--main-link-color);
}

.flightOutTable td {
    text-align: left !important;
}

.documentLink {
    color: #6c757d;
    height: 2rem;
    line-height: 2rem;
    text-decoration: none !important;
}

.documentLink:hover {
    opacity: 0.85;
    color: #6c757d;
}

.card-header-title {
    word-break: break-all;
    white-space: normal !important;
    padding-left: 10px;
    padding-right: 10px;
}

.card-header-title.smallFont {
    font-size: 11px;
    padding-top: 3px;
    padding-bottom: 3px;
}

.dashBox {

    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 30px;
}

.dashBox a {
    background-color: #fff;
    min-height: 200px;
    border-radius: 17px;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 20vw;
    font-size: 2.4rem;
    color: #495057;
    text-decoration: none !important;
}

.iconDash {
    margin: 0;
    padding: 0;
    width: 95px;
    height: 95px;
    background-color: var(--main-link-color);
}

.dashFont {
    margin-top: 14px;
    color: var(--content-text-color);
    text-align: center;
}

.chat-layout .chat-box-wrapper {
    padding: 1.5rem;
}

.chat-box-wrapper {
    display: flex;
    clear: both;
}

.avatar-icon-wrapper {
    display: inline-block;
    position: relative;
}

.avatar-icon-wrapper .badge-dot.badge-dot-lg.badge-bottom {
    top: auto;
    right: 0;
    bottom: 0;
}

.avatar-icon-wrapper .badge-dot.badge-dot-lg {
    width: 14px;
    height: 14px;
    border: #fff solid 2px;
    top: 0;
    right: 0;
}

.avatar-icon-wrapper .badge {
    position: absolute;
}

.badge-dot {
    text-indent: -999em;
    padding: 0;
    border-radius: 30px;
    min-width: 2px;
}

.avatar-icon {
    border: #fff solid 3px;
    overflow: hidden;
}

.avatar-icon {
    display: block;
    width: 44px;
    height: 44px;
    transition: all .2s;
    opacity: 1;
    border-radius: 50px;
}

.chat-wrapper {
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 20px;
    background-color: #fff;
}

.chat-box-wrapper .chat-box {
    box-shadow: 0 0 0 transparent;
    position: relative;
    opacity: 1;
    background: #e0f3ff;
    border: 0;
    padding: .75rem 1.5rem;
    border-radius: 30px;
    border-top-left-radius: .25rem;
    flex: 1;
    display: flex;
    max-width: 50%;
    min-width: 100%;
    text-align: left;
}

.chat-box-wrapper.chat-box-wrapper-right {
    text-align: right;
}

.chat-box-wrapper.chat-box-wrapper-right .chat-box {
    border-radius: 30px;
    border-top-left-radius: 30px;
    border-top-right-radius: .25rem;
    margin-left: auto;
}

.avatar-icon img {
    width: 100%;
    height: 100%;
}

.avatar-icon.rounded {
    border-radius: .39rem !important;
}

.chat-box-wrapper {
    margin-top: 10px;
}


#hotel-list {
    margin-left: 0;
    padding-left: 0;
    color: var(--content-text-color);
}


.hotel-buchung-date {
    width: 230px;
    height: 54px;
    border: 1px solid #A9BBCB;
    border-radius: 7px;
    font-size: 18px;
    color: #6C7A7D;
}

.hotel-buchung-date i {
    margin-right: 8px;
}

#hotel-list {
    padding: 0;
    margin: 0;
}

#hotel-list > li {
    padding: 0;
    list-style-type: none;

}

#hotel-list li .card {
    padding: 0;
    border-radius: 12px;
    margin-bottom: 15px;

}

.hotel-header-list {
    display: flex;
    justify-content: space-between;
    margin: 0;
    width: 100%;
    /*padding: 26px 30px 0 45px;*/
    padding-left: 45px;
    padding-bottom: 30px;
    padding-top: 26px;
}

.hotel-header-buttons {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.hotel-header-buttons div {
    min-width: 105px;
    border: 1px solid #243341;
    border-radius: 7px;
    margin-right: 15px;
    font-weight: bold;
    font-size: 14px;
    padding-top: 11px;
    padding-bottom: 13px;
    text-align: center;
    cursor: pointer;
    padding-left: 15px;
    padding-right: 15px;

}

.hotel-header-buttons div:last-child {
    margin-right: 0;
}

.hotel-header-buttons .hotel-header-button-active {
    margin-right: 0;
    color: #1BC6BB;
    border-color: #1BC6BB;;
}


.hotel-header-list h2 {
    font-weight: 600;
    font-size: 22px;
}

.hotel-header-list .hotel-header-text {
    width: 37%;
}

.hotel-header-buchung {
    margin-right: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;

}

.hotel-header-link {
    width: 27%;
    text-align: right;
    margin: auto 0;
}

.hotel-arrow-right {
    color: #A9BBCB;
    white-space: nowrap;
    letter-spacing: -3px;;
}


.hotel-arrow-down {
    color: #A9BBCB;
    writing-mode: vertical-rl;
    white-space: nowrap;
    letter-spacing: -3px;
    margin-right: 8px;
    line-height: 10px;
}

.hotel-header-list a {
    font-weight: bold;
    font-size: 14px;
    color: var(--main-link-color);
}

.hotel-description {
    display: flex;
    flex-direction: column;
    margin-right: 30px;
    /*padding: 27px 30px 43px 30px;*/
    /*width: 100%;*/
    /*margin: 0;*/
    width: 60%;
}

.hotel-col-swiper {
    width: 38%;
}


.hotel-description > .d-flex {
    padding-left: 0;
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: 1px solid #A9BBCB;
    margin-left: 45px;

}


.hotel-swiper-container {
    border-radius: 12px;
    width: 600px;
    height: 100%;
}

/* swiper responive image */
.hotel-swiper-container img {
    text-align: left;
    display: block;
    width: 100%;
    height: 100%;
}

.swiper-slide {
    /* Remove this if you want 1 slide perview - than change slidesPerView js-option to 1 -or- 2+ instead of 'auto' */
    width: 100%;
}


.hotel-swiper-container img {
    /*max-width: 100%;*/
    /*max-height: 100%;*/
}

.swiper-button-next,
.swiper-button-prev {
    background-color: rgba(0, 0, 0, 0.4);
    transform: scale(0.4);
    border-radius: 50%;

    color: white !important;
    /*fill: black !important;*/
    /*stroke: black !important;*/
}

.swiper-button-next {
    padding: 40px 35px 40px 45px;
    margin-right: -2%;
}

.swiper-button-prev {
    padding: 40px 45px 40px 35px;
    margin-left: -2%;
}


.hotel-swiper-container .swiper-slide {
    width: 100%;
}

.hotel-swiper-container .swiper-pagination-bullet {
    background: #FFFFFF;
    opacity: 0.6;
}

.hotel-swiper-container .swiper-pagination-bullet-active {
    background-color: var(--main-link-color);
    opacity: 1;
}


.hotel-col-info {
    width: 48%;
    display: grid;
    grid-template-columns: repeat(2, auto);
    gap: 15px;
    grid-auto-rows: minmax(min-content, max-content);
}

body.blackTheme #hotel-list .textDescription {
    color: white!important;
}

body.blackTheme #hotel-list .hotel-col-info > div {
    color: white;
}

.hotel-icon {
    border-radius: 50%;
    width: 50px;
    height: 50px;
    font-size: 24px;
    color: var(--content-text-color);
    margin-right: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--main-link-color);
    line-height: 0;
}

.hotel-icon > svg {
    width: 55%;
    height: 55%;
}

.hotel-icon.shop > svg {
    width: 50%;
    height: 50%;
}






.hotel-accordion .hotel-text-description {
    /*width: 82%;*/
}


#hotel-list i {
    font-size: 25px;
}

#hotel-list li {
    /*margin-bottom: 15px;*/
}

.hotel-accordion {
    margin-top: 10px;
    margin-bottom: 20px;
    color: var(--main-link-color);
    text-decoration: underline;
    cursor: pointer;
}

.hotel-description-header {
    font-weight: bold;
    font-size: 16px;
    color: #243341;
    margin-bottom: 15px;
}

.hotel-description ul:first-child {
    margin: 0;
    padding: 0 0 0 15px;
}

.hotel-description li {
    list-style-type: disc;
}



.hotel-button {
    display: flex;
    justify-content: center;
    align-items: center;
    border: solid var(--main-link-color) 1px;
    border-radius: 7px;
    width: 65px;
    height: 25px;
    cursor: pointer;
    color: var(--main-link-color);
    font-size: 14px;
}

.hotel-facilities-icons {
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    border-top: 1px solid #A9BBCB;
}

body.blackTheme .hotel-facilities-icons + div .font-weight-bold {
    color: white;
}

.hotel-facilities-icons > div {
    padding: 10px 0;
    border-bottom: 1px solid #A9BBCB;
}

.hotel-facilities-icons a {
    font-size: 14px;
    text-align: right;
    text-decoration-line: underline;
    color: var(--main-link-color);
}

.bausteinSum {
    font-size: 14px;
    text-align: right;
}


.hotel-room-facilities > div {
    font-size: 14px;
    border: #243341 1px solid;
    white-space: nowrap;
    padding: 3px 6px;
    margin-right: 5px;
    margin-bottom: 6px;
    border-radius: 7px;
}

body.blackTheme .hotel-room-facilities > div {
    border-color: white;
    color: white;
}


.hotel-service {
    display: flex;
    justify-content: flex-start;
    padding-left: 20px;
    align-items: center;
    /*width: calc(50% - 8px);*/
    background: #F4F6F8;
    border-radius: 7px;
    padding-top: 20px;
    padding-bottom: 20px;
    cursor: pointer;
    max-height: 90px;
}

.hotel-service i {
    margin-right: 15px;
    font-size: 30px !important;
    color: #243341 !important;
}


.hotel-service:hover {
    text-decoration: none;
}

.hotel-service-text {
    font-size: 14px;
    color: #5D748A;
}


.hotel-service-header {
    font-size: 20px;
    font-weight: bold;
    color: #243341;
}

.hotel-service-discount {
    display: inline-block;
    font-weight: bold;
    margin-left: 10px;
    background-color: var(--main-link-color);
    width: 45px;
    height: 20px;
    line-height: 0;
    padding-top: 10px;
    padding-bottom: 2px;
    color: white;
    background: var(--main-link-color);
    border-radius: 7px;
    text-align: center;
}

.hotel-col-info-2 .hotel-service-discount {
    height: 25px;
    padding-top: 12px;
}

.hotel-modal .modal-content {
    width: 650px !important;
}

.hotel-modal .modal-body {
    display: flex;
    flex-direction: row;
    margin: 20px;
    justify-content: space-between;
}

.hotel-modal .modal-body > div.hotel-modal-img-container-wrapper {
    width: calc(49% - 6px);
}

.hotel-modal .hotel-modal-img-container {
    cursor: pointer;

}

.hotel-modal .modal-title {
    font-weight: 600;
    font-size: 22px;
    color: var(--content-text-color);
}

.hotel-modal .modal-header {
    padding-left: 20px;
    padding-right: 20px;
}


.hotel-modal img {
    width: 100%;
    border-radius: 12px;
}


.hotel-modal button.close {
    color: black;
}

.hotel-modal .close {
    opacity: 1;
}

.hotel-modal .close:hover {
    opacity: 0.5;
}


.hotel-modal .hotel-modal-subText {
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    color: var(--content-text-color);
    margin-top: 10px;
}


.modal-body-breakfast {
    display: flex;
    flex-direction: column;
    /*width: 100%;*/
    margin: 20px;
    justify-content: space-between;
}

.modal-body-breakfast.undermenu {
    width: 150%;
}


.hotel-breakfast-type-active,
.hotel-spa-type-active {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    border-radius: 7px;
    border: 2px solid var(--main-link-color);
    padding: 16px 22px;
    margin-bottom: 8px;
    color: var(--content-text-color);
}

.hotel-breakfast-type-active div:first-child {
    font-weight: bold;
    font-size: 14px;
    color: #243341;
}

body.blackTheme .hotel-breakfast-type-active div {
    color: white;
}

.hotel-spa-type-active {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    border-radius: 7px;
    border: 2px solid var(--main-link-color);
    padding: 16px 22px;
    margin-bottom: 8px;
}


.hotel-modal-item {
    display: none;
}

.hotel-breakfast-type-active .hotel-modal-item {
    display: block;
}

.hotel-modal-breakfast-header {
    font-size: 16px;
    text-align: left;
    color: #243341;
    margin-bottom: 12px;
}

body.blackTheme .hotel-modal-breakfast-header {
    color: white;
}

.hotel-breakfast-type, .hotel-spa-type {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    color: var(--content-text-color);
    border-radius: 7px;
    border: none;
    padding: 16px 22px;
    margin-bottom: 8px;
    background-color: #F4F6F8;
}

.hotel-spa-type b {
    font-weight: normal;
}

body.blackTheme .hotel-spa-type b {
    color: white;
}

.hotel-modal-btn {
    background: var(--main-link-color);
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    outline: none;
    border-radius: 7px;
    width: 140px;
    height: 43px;
    font-size: 14px;
    font-style: normal;
    cursor: pointer;
    color: white;
    margin-left: 57px;
    font-weight: 600;
}

.hotel-modal-btn-delete {
    background: red;
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    outline: none;
    border-radius: 7px;
    width: 140px;
    height: 43px;
    font-size: 14px;
    font-style: normal;
    cursor: pointer;
    color: white;
    margin-left: 57px;
    font-weight: 600;
}

.hotel-btn-back {
    margin-left: 0;
    color: #5D748A;
    background: #F4F6F8;
}

.hotel-btn-buchen-active {
    font-weight: normal;
    line-height: 0;
    padding: 9px 12px 9px 13px;
    width: 80px;
    height: 24px;
    color: white;
}

.hotel-btn-buchen-active span::before {
    content: '\2713';
    margin-right: 7px;
}

.hotel-btn-buchen {
    background-color: #F4F6F8;
    font-weight: normal;
    line-height: 0;
    padding: 9px 12px 9px 13px;
    width: 80px;
    height: 24px;
    border: 1px solid var(--main-link-color);
    color: var(--main-link-color);
}


.hotel-item-minus, .hotel-item-plus {
    border: 1px solid var(--main-link-color);
    box-sizing: border-box;
    border-radius: 7px;
    background-color: white;
    color: var(--main-link-color);
    font-size: 20px;
    padding: 10px 5px 13px 5px;
    line-height: 0;
    font-weight: 300;
    cursor: pointer;
}

body.blackTheme .hotel-item-minus, body.blackTheme .hotel-item-plus {
    background-color: var(--main-link-color);
    color: white;
    font-weight: 500;
}


.hotel-item-sum {
    margin: 0 13px;
    font-size: 14px;
    color: #243341;
    font-weight: normal;
}

body.blackTheme .hotel-item-sum {
    color: white;
}

.hotel-restaurants-item {
    width: 365px;
    height: 365px;
    background: #FFFFFF;
    box-shadow: 0 3px 35px rgba(36, 51, 65, 0.03);
    border-radius: 12px;
    margin: 0;
}

body.blackTheme .hotel-restaurants-item {
    background: #112237;
}


.hotel-restaurants-list {
    display: grid;
    grid-template-columns: repeat(4, auto);
    align-content: stretch;
    gap: 30px;
    justify-content: flex-start;
}

.hotel-restaurant-img-container {
    width: 100%;
    height: 66%;
}

.hotel-restaurant-img-container img {
    width: 100%;
    border-radius: 12px;
}

.hotel-restaurants-list .hotel-restaurant-img-container + div {
    font-style: normal;
    font-weight: 600;
    font-size: 22px;
    color: var(--content-text-color);
    margin-left: 20px;
}
body.blackTheme .hotel-restaurants-list .hotel-restaurant-img-container + div {
    color: white;
}




.hotel-restaurants-item div:last-child {
    font-size: 16px;
    color: #5D748A;
    margin-left: 20px;
    width: 75%;
}

body.blackTheme .hotel-restaurants-item div:last-child {
    color: white;
}

.hotel-link-history {
    font-size: 24px;
    color: #5D748A;
    margin-bottom: 15px;
}

body.blackTheme .hotel-link-history {
    color: white;
}

.hotel-link-history a {
    color: #5D748A;
    text-decoration: underline;
}

body.blackTheme .hotel-link-history a{
    color: white;
}

.hotel-link-history span {
    color: #C9D5E1;
}

.hotel-restaurant-item-more-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.hotel-restaurant-item-more {
    width: 70%;
    background: #FFFFFF;
    box-shadow: 0 3px 35px rgba(36, 51, 65, 0.03);
    border-radius: 12px;
    padding: 30px;
}

body.blackTheme .hotel-restaurant-item-more{
    background: #112237;
}

body.blackTheme .hotel-restaurant-item-more h4{
    color: white;
}

body.blackTheme .hotel-modal .modal-content,
body.blackTheme .hotel-modal .modal-header {
    background: #112237;
}

body.blackTheme .hotel-modal .modal-header {
    border-bottom: 1px solid #243341;
}


body.blackTheme .hotel-modal .modal-header i,
body.blackTheme .hotel-modal .modal-header h4,
body.blackTheme .modal-body .hotel-modal-img-container-wrapper .hotel-modal-subText {
    color: white;
}


.hotel-restaurant-item-menu {
    width: 55%
}

body.blackTheme .hotel-restaurant-item-menu * {
    color: white;
}

.hotel-breakfast-type-active .hotel-restaurant-item-menu div:last-child {
    margin-top: 5px;
    font-weight: normal;
}

.hotel-restaurant-food {
    display: flex;
    padding-bottom: 30px;
    padding-left: 23px;
    border-bottom: 1px solid #A9BBCB;
    margin: 0 -30px 30px -30px;

}

.hotel-restaurant-food div {
    font-size: 14px;
    color: #243341;
    border: 1px solid black;
    padding: 1px 9px 2px 8px;
    border-radius: 8px;
    line-height: 30px;
    margin-left: 8px;
}


.hotel-restaurant-food div.hotel-active {
    background-color: var(--main-link-color);
    color: white;
    border: none;
}

.hotel-food-pay {
    margin-left: 80px;
    margin-right: -15px;
    font-size: 14px;
    color: #243341;
}

body.blackTheme .hotel-food-pay {
    color: white;
}

.hotel-breakfast-type-active .hotel-food-pay {
    font-weight: bold;
}

.hotel-restaurants-item-price {
    width: 28%;
    background: #FFFFFF;
    box-shadow: 0 3px 35px rgba(36, 51, 65, 0.03);
    border-radius: 12px;
    margin: 0;
    padding-bottom: 33px;
}

body.blackTheme .hotel-restaurants-item-price {
    background: #112237;
    /*-webkit-mask: radial-gradient(30px,#0000 98%,#000) 0px 0px;*/
}

.hotel-restaurants-item-price .hotel-restaurants-item-price-content {
    margin-left: 30px;
    margin-right: 30px;
}

.hotel-restaurants-item-price .hotel-restaurants-item-price-content > span {
    display: block;
    margin-top: 50px;
    margin-bottom: 25px;
    font-weight: bold;
    font-size: 16px;
    color: #243341;
}

body.blackTheme .hotel-restaurants-item-price .hotel-restaurants-item-price-content > span {
    color: white;
}

.hotel-spa-item-price {
    min-height: 830px;

}


.hotel-restaurants-item-check {
    width: 100%;
    display: flex;
    justify-content: space-between;
    border-top: solid 1px #A9BBCB;
    padding-top: 15px;
    margin-bottom: 15px;
}

.hotel-spa-item-check {
    width: 100%;
    border-top: solid 1px #A9BBCB;
    border-bottom: solid 1px #A9BBCB;
    margin-bottom: 15px;
}

body.blackTheme .hotel-spa-item-check{
    color: white;
    /*border-color: #263a53;*/
}

.basketItem {
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding-top: 15px;
    padding-bottom: 15px;
}

.hotel-restaurants-item-check div:first-child {
    width: 65%;
}
 
.hotel-restaurants-item-check div:last-child {
    width: 25%;
    display: flex;
    justify-content: space-between;
}

.hotel-restaurants-item-gesamt {
    position: relative;
    display: flex;
    justify-content: space-between;
    font-weight: 600;
    margin-top: 33px;
    padding-top: 20px;
    margin-bottom: 58px;
    border-top: 2px dashed #A9BBCB;
    font-size: 22px;
    line-height: 59px;
    color: #243341;
}

body.blackTheme .hotel-restaurants-item-gesamt div{
    color: white;
}


.hotel-restaurants-item-gesamt:before {
    content: '';
    width: 30px;
    height: 30px;
    background-color: #f1f4f6;
    position: absolute;
    border-radius: 50%;
    left: -45px;
    top: -17px;
}

.hotel-restaurants-item-gesamt:after {
    content: '';
    width: 30px;
    height: 30px;
    background-color: #f1f4f6;
    position: absolute;
    border-radius: 50%;
    right: -45px;
    top: -17px;
}

body.blackTheme .hotel-restaurants-item-gesamt:before,
body.blackTheme .hotel-restaurants-item-gesamt:after {
    display: none;
}


.hotel-restaurants-btn-reserve {
    background: var(--main-link-color);
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    outline: none;
    border-radius: 7px;
    width: 100%;
    height: 43px;
    font-size: 14px;
    font-style: normal;
    cursor: pointer;
    color: white;
    font-weight: 600;
    padding: 0 30px;
    margin: 0 auto;
}

#hotel-restaurants-reserve label {
    font-size: 16px;
    margin-bottom: 25px;
    color: #243341;
}

body.blackTheme #hotel-restaurants-reserve #modalBody {
    color: white;
}

body.blackTheme #hotel-restaurants-reserve label {
    color: white;
}

body.blackTheme .modal-content button.close svg path {
    stroke: white;
}

#hotel-restaurants-reserve select {
    background: url('/web/images/selectButons/1.png') no-repeat right center;
    appearance: none;
    outline: 0;
    background-size: 8px 8px;
    background-position-x: calc(100% - 18px);
}


#hotel-restaurants-reserve select,
#hotel-restaurants-reserve input,
#hotel-restaurants-reserve textarea {
    margin-top: 17px;
}

body.blackTheme #hotel-restaurants-reserve .modal-header.bg-white {
    background-color: #112237!important;
}

#hotel-restaurants-reserve textarea {
    height: 132px;
}

body.blackTheme #hotel-restaurants-reserve textarea {
    background: #2b364f;
    color: white;
    border: transparent;
}

#hotel-restaurants-reserve .modal-header {
    padding-left: 34px;
    padding-right: 34px;
}


.hotel-spa-list {
    display: grid;
    grid-template-columns: repeat(4, auto);
    align-content: stretch;
    gap: 26px;
    justify-content: space-between;
}

.hotel-spa-item {
    /*height: 352px;*/
    background: #FFFFFF;
    box-shadow: 0 3px 35px rgba(36, 51, 65, 0.03);
    border-radius: 12px;
    margin: 0;
}

.hotel-spa-img-container {
    width: 100%;
    height: 100%;
    position: relative;
}

.hotel-spa-img-container img {
    width: 100%;
    border-radius: 12px;
    position: relative;
}

.hotel-spa-img-container:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 12px;
    background: linear-gradient(180deg, rgba(8, 24, 38, 0) 30.33%, #0B1C30 98.72%);
    opacity: 0.8;
    z-index: 5;
}

.hotel-spa-big-item {
    grid-column: 1;
    grid-row: 1 / span 2;;
}

.hotel-spa-img-container div {
    font-weight: 600;
    font-size: 22px;
    line-height: 59px;
    text-align: center;
    color: #FFFFFF;
    z-index: 10;
    position: absolute;
    bottom: 20px;
    left: 0;
    width: 100%;
}

.hotel-spa-text {
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 30px;
    text-align: justify;
    font-size: 16px;
    line-height: 22px;
    border-bottom: 1px solid #A9BBCB;
    margin-bottom: 30px;
    margin-left: -30px;
    margin-right: -30px;

}

.hotel-spa-item-menu {
    width: 55%
}

body.blackTheme .hotel-spa-item-menu * {
    color: white;
}


.hotel-spa-item-info {
    margin: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 45%;
}

.hotel-spa-item-info div:first-child {
    width: 100%;
    margin: 0;
}

.hotel-spa-item-info .hotel-modal-btn {
    margin-left: 39px;
    /*margin-left: 10px;*/

}


.hotel-spa-item-info .hotel-modal-btn {
    margin-left: 39px;
}

.hotel-spa-item-info .hotel-btn-buchen {
    padding-left: 19px;
    padding-right: 19px;
}

body.blackTheme .hotel-spa-item-info .hotel-btn-buchen{
    background: #2b364f;
}

.hotel-img-container-price {
    width: 100%;
    height: 250px;
}

.hotel-img-container-price img {
    width: 100%;
    height: 100%;
    border-radius: 12px;
    object-fit: cover;
}

.hotel-spa-item-more-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.hotel-spa-item-more {
    width: 70%;
    background: #FFFFFF;
    box-shadow: 0 3px 35px rgba(36, 51, 65, 0.03);
    border-radius: 12px;
    padding: 30px;

}

/*.hotel-activities-item-more-container {*/
/*    display: flex;*/
/*    justify-content: space-between;*/
/*    align-items: flex-start;*/
/*}*/

.hotel-activities-container {
    width: 100%;
    background: #FFFFFF;
    box-shadow: 0 3px 35px rgba(36, 51, 65, 0.03);
    border-radius: 12px;
    padding: 30px;
}

body.blackTheme .hotel-activities-container {
    background: #112237;
}


.hotel-activities-days {
    margin: 0;
    padding: 0;
    display: flex;
}

.hotel-activities-days li {
    list-style-type: none;
    margin-right: 30px;
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    color: #5D748A;
    position: relative;
    cursor: pointer;
}

.hotel-activities-days-active {
    color: var(--content-text-color) !important;
}

body.blackTheme .hotel-activities-days-active{
    color: white !important;
}

li.hotel-activities-days-active:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 3px;
    background: var(--main-link-color);
    border-radius: 5px;
    left: 0;
    bottom: -32px;

}

.hotel-activities-active .hotel-spa-img-container:before {
    background: #1BC6BB;
    opacity: 0.8;
    box-shadow: 0 3px 35px rgba(36, 51, 65, 0.03);
}


.hotel-activities-active .hotel-activities-active-info {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
    z-index: 10;
    position: absolute;
    top: 0;
}

.hotel-activities-active {
    position: relative;
}


.hotel-activities-active-info > div {
    display: flex;
    justify-content: space-between;
    font-weight: bold;
    font-size: 16px;
    color: #FFFFFF;
    padding-top: 10px;
    padding-bottom: 10px;
    border-top: rgba(255, 255, 255, .2) solid 1px;
}

.hotel-activities-active-info > div:nth-last-child(2) {
    border-bottom: rgba(255, 255, 255, .2) solid 1px;

}

.hotel-activities-name {
    align-self: center;
    font-size: 22px !important;
    font-weight: 600 !important;
    margin-top: 20px;
    margin-bottom: 39px;
    border: none !important;
}

.hotel-active-list .hotel-spa-img-container div {
    bottom: 35px;
}


.support-chat {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    padding: 60px 0;
}

.support-chat-right, .support-chat-left {
    display: flex !important;
    flex-direction: column !important;
    justify-content: start !important;
    align-self: stretch !important;
    margin-bottom: 95px;
}

.support-chat-message {
    margin: 0 0 5px 0;
    padding: 0;
    display: flex;
    list-style-type: none;
}

.support-chat-left .support-chat-message {
    justify-content: flex-start !important;
}

.support-chat-right .support-chat-message {
    justify-content: flex-end !important;
}


.support-chat-left .support-chat-text {
    border-radius: 7px;
    padding: 17px 8px 17px 35px;
    background-color: #DEF7F5;
    font-weight: normal;
    font-size: 14px;
    color: #243341;
}

.support-chat-right .support-chat-text {
    border-radius: 7px;
    padding: 17px 35px 17px 13px;
    background-color: #F4F6F8;
    font-weight: normal;
    font-size: 14px;
    color: #243341;
}

.support-chat-userName {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    font-weight: bold;
    font-size: 15px;
    color: white;
    background-color: #B3BFC9;
    border: 6px solid #FFFFFF;
    position: relative;
    bottom: 25px;

}

.support-chat-left .support-chat-userName {
    left: 20px;
}

.support-chat-right .support-chat-userName {
    right: 20px;
    order: 1;
}


.support-chat-user-online {
    color: var(--main-link-color);
    font-size: 36px;
    position: absolute;
    top: 0;
}

.support-chat-left .support-chat-user-online {
    right: 25px;
}

.support-chat-right .support-chat-user-online {
    left: 25px;
}

.support-chat-date {
    display: flex;
    font-size: 12px;
    color: #5D748A;
    padding: 0 50px;
    margin-top: 9px;
}

.support-chat-left .support-chat-date {
    justify-content: flex-start !important;
}

.support-chat-right .support-chat-date {
    justify-content: flex-end !important;
}

.support-btn-send {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: var(--main-link-color);
    box-shadow: 0 18px 35px rgba(27, 198, 187, 0.26);
    margin-right: 15px;
}


#flight .card {
    border-radius: 12px;
}

#flight h4 {
    color: var(--content-text-color)
}

#flight-seat h4 {
    font-weight: 600;
    font-size: 22px;
    color: #000000;
    text-transform: none;
    margin-top: 10px;
    margin-left: -10px;
}

.flight-class {
    margin: 0;
    padding: 0;
    display: flex;
    /*margin-bottom: 60px;*/
}

.flight-class li {
    list-style-type: none;
    margin-right: 30px;
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    color: #5D748A;
    position: relative;
    cursor: pointer;
}

.flight-class-active {
    color: var(--content-text-color) !important;
}

li.flight-class-active:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 3px;
    background: var(--main-link-color);
    border-radius: 5px;
    left: 0;
    bottom: -16px;
}

.flight-table-seats-container {
    display: flex;
    justify-content: left;
    align-items: center;
    margin-left: 200px;
    padding: 25px;
    border-top: 2px solid #F4F6F8;
    border-bottom: 2px solid #F4F6F8;
}

.flight-table-seats-text {
    writing-mode: vertical-rl;
    font-size: 14px;
    color: #243341;
    margin: 0 60px;
}


.flight-table-seats {

    color: #243341;
}

.flight-table-seats table {
    border-collapse: separate;
    border-spacing: 7px;
    margin-bottom: 40px;
}

.flight-table-seats table th {
    font-weight: normal;
    font-size: 14px;
    text-align: center;
    color: #243341;
}

.flight-alert {
    margin-left: 20px;
    text-align: left;
    color: red;
    font-weight: 700;
    font-size: 23px;
}

.flight-alert-off {
    display: none;
}


/*.flight-table-seats tr:not(.flight-table-seats-number-col) {*/
/*    color: red;*/
/*}*/

.flight-table-seats td {
    padding: 0;
    margin: 0;
    width: 38px;
    height: 38px;
    background: #F4F6F8;
    border: 1px solid #A9BBCB;
    border-radius: 7px;
    position: relative;
    cursor: pointer;
}

.flight-table-seats svg {
    padding: 0;
    display: none;
}

.flight-table-seats .flight-table-seats-check svg {
    display: inline;
}


.flight-table-seats .flight-table-seats-check,
.flight-table-seats .flight-table-seats-active,
.flight-table-seats .flight-table-seats-active div,
.flight-table-seats .flight-table-seats-check div {
    border-color: var(--main-link-color);
}

.flight-table-seats .flight-table-seats-check div {
    display: flex;
    align-items: center;
    justify-content: center;
}

/*.flight-table-seats .flight-table-seats-check div:after{*/
/*    content: 'g';*/
/*    background: red;*/
/*    position: absolute;*/
/*    top:50%;*/
/*    left:50%;*/
/*}*/


.flight-table-seats td div {
    width: 31px;
    height: 26px;
    position: absolute;
    background: #FFFFFF;
    border: 1px solid #A9BBCB;
    border-radius: 7px;
    text-align: left;
    left: -1px;
    top: 5px;
}

.flight-table-seats-letter-row {
    color: #243341;
    padding-right: 15px;
}


.flight-table-seats-top .flight-table-seats-number-col:last-child,
.flight-table-seats-middle .flight-table-seats-number-col,
.flight-table-seats-bottom .flight-table-seats-number-col:first-child {
    display: none;
}


/*.flight-table-seats-middle .flight-table-seats-number-col{*/
/*    display: none;*/
/*}*/


/*.flight-table-seats-bottom .flight-table-seats-number-col:first-child{*/
/*    display: none;*/
/*}*/


.usersBar {
    color: var(--content-text-color)
}

#flight .card-header {
    height: 107px;
    border-radius: 12px 12px 0 0;
}


.flight-user-icon {
    width: 50px;
    height: 50px;
    font-size: 24px;
    background-color: var(--main-back-color);
    color: var(--content-text-color);
}


.flight-company-icon {
    width: 37px;
    height: 37px;
    background: #FFFFFF;
    color: var(--content-text-color);
    margin-left: 3px;
}

.flight-company-icon img {
    max-width: 100%;
}


.users-flight-name {
    margin-left: 5px;
    font-weight: 600;

}

.users-flight-name :first-child {
    text-transform: none;
    font-size: 16px;
}

.users-flight-name :last-child {
    margin-top: -3px;
    text-transform: none;
    font-size: 14px;
    font-weight: 500;
}


.flight-user-active .flight-user-icon {
    background-color: var(--main-link-color);
    color: white;
}


.flight-user-active {
    border-bottom: var(--main-link-color) solid 3px;

}


.select-user {
    padding: 27px 0;
    cursor: pointer;
    margin-right: 32px;
}

.usersBar {
    margin: 0;
    padding: 0;
}

.usersBar li {
    list-style-type: none;
}

.flightDetails-item {
    margin-top: 11px;
}


.flightDetail-part1 {

    min-width: 650px;
    width: 40%;
    height: 124px;
    background: #F4F6F8;
    border-radius: 7px;
}


.flightDetail-part1 > div {
    padding: 20px;
}

.planeDetail {
    height: 100%;
    padding-right: 20px;
    border-right: 1px solid #A9BBCB;
}

.planeDetail div:not(:last-child) {
    margin-bottom: 6px;
}

.planeDetail div:last-child {
    font-style: normal;
    font-weight: normal;
    font-size: 10px;
    line-height: 14px;
    text-align: center;
    color: #5D748A;
}

.planeDetail div + div {
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 19px;
    text-align: center;
    color: #243341;
}

.timeDest {
    font-size: 14px;
    line-height: 20px;
    color: #243341;
    margin-left: -20px;
}

.timeDest .gridPicFlight {
    margin-top: 12px;
}


.timeDest .gridPicFlight .justify-self-start {
    font-weight: 600;
    font-size: 22px;
    color: #243341;
}

.timeDest .gridPicFlight .justify-self-end {
    font-weight: 600;
    font-size: 22px;
    color: #243341;
}

.container-planeDetail {
    width: 200px;
}

.timeDest .mb-0 {
    font-size: 14px;
    color: #5D748A;
}


.gridPicFlight {
    display: grid;
    grid-template-columns: 50px 30% auto 30% 50px;
    grid-gap: 0;
}

.gridPicFlight .gridPicFlightText {
    width: 100%;
    font-size: 10px;
    padding: 1px 3px 4px 1px;
    background-color: #FFFFFF;
    text-align: center;
    border-radius: 7px;
    vertical-align: center;
    border: 1px solid #A9BBCB;
    box-sizing: border-box;
}

.gridPicFlight .FlightLine1, .gridPicFlight .FlightLine2 {
    width: 100%;
    height: 1px;
    background-color: #A9BBCB;
    top: 50%;
    position: relative;
}

.gridPicFlight .FlightLine1:before {
    content: '\2B24';
    position: relative;
    font-size: 7px;
    top: -13px;
    left: -0.3%;
    bottom: 0;
    color: #A9BBCB;
}

.gridPicFlight .FlightLine2:after {
    content: '\2B24';
    position: relative;
    font-size: 7px;
    top: -13px;
    left: 100%;
    bottom: 0;
    color: #A9BBCB;
}


.gridPicFlight div {
    /*border: black 1px solid;*/
}

.flightDetail-part2 {
    display: grid;
    width: 60%;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 0;
    height: 124px;
    background: #F4F6F8;
    border-radius: 7px;
}

.flightDetail-part2 .contentText {
    font-size: 14px;
}

.flightDetail-part2 .d-flex .d-flex button {
    margin-top: 20px;
}

.flightDetail-part2 > div {
    padding: 20px 20px 20px 0;
}


.flightDetail-part2 .semi-dashed:after {
    content: '';
    height: 116px;
    position: relative;
    width: 0;
    border-left: 2px dashed #A9BBCB;
    top: -50%;
    right: 1px;
}


.flightDetail-part2 > div > div {
    padding: 0 20px 28px 20px;
    border-left: 1px solid #A9BBCB;
}

.flightDetail-part2 > div > .mr-0 {
    padding-bottom: 8px;
}

.flightDetail-part2 .semi-dashed > div {
    border-left: none;
}


.btn-plus {
    background: none;
    border: 1px solid var(--main-link-color);
    box-sizing: border-box;
    border-radius: 7px;
    color: var(--main-link-color);
    font-size: 24px;
    font-weight: 300;
    line-height: 0;
    padding: 11px 5px 15px 5px;
    cursor: pointer;
}


.flight-block {
    width: 32%;
    min-width: 500px;
    background: #F4F6F8;
    border-radius: 7px;
    padding: 30px;
    margin-bottom: 15px;
    /*border: 1px solid black;*/
}

.flight-block h4 {
    font-weight: 600;
    font-size: 22px;
    color: #243341;
}


.flight-block > div {
    padding: 10px 0;
}

.flight-block > div:not(:first-child) {
    border-top: #A9BBCB 1px solid;
}

.flight-block.ml-0 {
    margin-bottom: 8px;
}


.flight-block-button {
    background: none;
    display: flex;
    justify-content: center;
    align-items: center;
    border: solid var(--main-link-color) 1px;
    outline: none;
    border-radius: 7px;
    width: 120px;
    height: 43px;
    font-size: 14px;
    font-style: normal;
    cursor: pointer;
    color: var(--main-link-color);
    font-weight: 600;
}

.flight-block-text {
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 20px;

    color: #243341;
}

.flight-icon-rounded {
    width: 54px;
    height: 54px;
    background: #FFFFFF;
    color: var(--content-text-color);
    margin-left: 3px;
}

.flight-icon-rounded img {
    max-width: 100%;
}


.flight-icon {
    height: 40px;
    font-size: 24px;
    background-color: var(--main-back-color);
    color: var(--content-text-color);
}

.flight-icon span {
    position: relative;
    font-size: 16px;
    color: #243341;
    margin-left: 10px;
    bottom: 5px;
}

.flight-block-transportCompany {
    width: 35%;
    min-width: 175px;
    margin-right: 30px;
}

.flight-block-price {
    position: relative;
    font-style: normal;
    font-weight: 600;
    font-size: 22px;
    text-align: right;
    color: #243341;
    bottom: 9px;
}

.flight-block-gray-text {
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    color: #5D748A;

}

.flight-block-button-width {
    background: none;
    display: flex;
    justify-content: center;
    align-items: center;
    border: solid var(--main-link-color) 1px;
    outline: none;
    border-radius: 7px;
    width: 100%;
    height: 42px;

    font-size: 14px;
    font-style: normal;
    cursor: pointer;
    color: var(--main-link-color);
    font-weight: 600;
}

.flight-block:last-child .align-self-stretch {
    min-width: 220px;
    width: 45%;
}

.flight-block:last-child .align-self-stretch .mt-3 div {
    margin-top: 14px;
}

.flight-block:last-child .align-self-stretch .mt-3 div:last-child {
    margin-top: 23px;
}

#flight-seat h4 {
    font-weight: 600;
    font-size: 22px;
    color: #000000;
    text-transform: none;
    margin-top: 10px;
    margin-left: -10px;
}


#registration .card {
    border-radius: 12px;
}

#registration label span {
    font-size: 16px;
    color: var(--content-text-color);
}

.registration-full-name input,
.registration-b-day input,
.registration-b-day select {
    margin-top: 17px;
    margin-bottom: 25px;
}


.registration-full-name {
    display: flex;
    justify-content: space-between;
}


#registration input {
    height: 50px;
    border: 1px solid #A9BBCB;
    border-radius: 8px;
}

#registration input::placeholder {
    padding-left: 17px;
    font-size: 14px;
    color: #6C7A7D;
}

.registration-b-day label span:last-child {
    display: flex;
    justify-content: space-between;
}

.registration-b-day {
    width: 100%;

}

.registration-b-day span {
    font-size: 16px;
    color: var(--content-text-color);
}

.registration-b-day input {
    width: 32%;
}

.registration-gender div:first-child {
    font-size: 16px;
    color: var(--content-text-color);
}


.registration-gender div:last-child {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0;

}


#registration select:not(.flags) {
    height: 50px;
    border: 1px solid #A9BBCB;
    border-radius: 7px;
    color: #6C7A7D;
    width: 32%;
    padding-left: 17px;
    padding-right: 24px;
    font-size: 14px;
    background: url('/web/images/selectButons/arrowDown.png') no-repeat right center;
    appearance: none;
    outline: 0;
    background-size: 8px 8px;
    background-position-x: calc(100% - 13px);
}


#registration h4 {
    color: var(--content-text-color)
}

.registration-user-active .registration-user-icon {
    background-color: var(--main-link-color);
    color: white;
}

.registration-user-active {
    border-bottom: var(--main-link-color) solid 3px;
}

.registration-person {
    padding-top: 49px;
    padding-bottom: 51px;
    margin-left: -15px;
    margin-right: -15px;
    padding-left: 25px;
}

.registration-container {
    background: #FFFFFF;
    /* box shadow */
    box-shadow: 0 2px 18px rgba(36, 51, 65, 0.03);
    border-radius: 12px;
}

.registration-container .card-header-tab {
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
}

.registration-form-1, .registration-form-2 {
    width: 29%;
}

.registration-form-3 {
    width: 38%;
}


.registration-full-name label, .registration-full-name label input {
    display: inline-block;
    width: 48%;
}

.registration-full-name label input {
    width: 100%;
}


.users-registration-name {
    margin-left: 17px;
    font-weight: 600;
    text-align: center;
    padding: 0;
}

.registration-radio-btn {
    display: inline-block;
    margin-right: 10px;
}

.registration-radio-btn input[type=radio] {
    display: none;
}

.registration-radio-btn label {
    display: inline-block;
    cursor: pointer;
    width: 192px;
    height: 50px;
    font-weight: bold;
    font-size: 14px;
    line-height: 40px;
    text-align: center;
    color: #6C7A7D;
    border: 3px solid #A9BBCB;
    box-sizing: border-box;
    border-radius: 8px;
}

/* Checked */
.registration-radio-btn input[type=radio]:checked + label {
    border-color: var(--main-link-color);
    color: #243341;
}

/* Hover */
.registration-radio-btn label:hover {
    color: #666;
}

.registration-card-container {
    margin-top: 40px;
    position: relative;
    padding-bottom: 450px;
}

.registration-card {
    background: #F4F6F8;
    z-index: 100;
    position: absolute;
    padding: 30px;
}

.icon-flag {
    background: url('../images/icon-ok.png') no-repeat;
    background-size: 20px;
    padding-left: 20px;
    background-position: 0 1px;
}


.registration-card, .registration-card-back {
    width: 475px;
    height: 320px;
    box-shadow: -11px 2px 42px rgba(93, 116, 138, 0.22), inset -1px -1px 1px rgba(93, 116, 138, 0.21), inset 1px 1px 1px #FFFFFF;
    border-radius: 28px;
    margin-left: 20px;
}


.registration-card-type {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 28px;
}


.registration-card-back {
    background: #E1E4E8;
    position: absolute;
    left: 144px;
    top: 18px;
    z-index: 10;
    display: flex;
    align-items: flex-end;
    flex-direction: column;
}

.registration-card-back label input {
    margin-top: 10px;
    width: 64px;

}

.registration-card-back label {
    margin-right: 45px;
}


.registration-magnetic-stripe {
    width: 100%;
    height: 46px;
    background: #AFBDCB;
    margin-top: 37px;
    margin-bottom: 5px;
}


.registration-radio-btn.registration-visa-logo {
    width: 53px;
    height: 35px;
    background-image: url("/web/images/paySystem/Visa-Logo.png");
    background-size: 74%;
    Background-repeat: no-repeat;
    background-position: center;
}

.registration-radio-btn.registration-masterCard-logo {
    width: 53px;
    height: 35px;
    background-image: url("/web/images/paySystem/Mastercard.png");
    background-size: 87%;
    Background-repeat: no-repeat;
    background-position: center;
}


.registration-radio-btn.registration-visa-logo input[type=radio]:not(:checked ) + label,
.registration-radio-btn.registration-masterCard-logo input[type=radio]:not(:checked ) + label {
    backdrop-filter: grayscale(100%);
}

.registration-radio-btn.registration-visa-logo label,
.registration-radio-btn.registration-masterCard-logo label {
    width: 53px;
    height: 35px;
}


.users-registration-name {
    text-transform: none;
    font-size: 16px;
}

.registration-kartennummer {
    width: 228px;
}

.registration-ablaufdatum {
    width: 76px;
}


.registration-user-icon {
    width: 50px;
    height: 50px;
    font-size: 24px;
    background-color: var(--main-back-color);
    color: var(--content-text-color);
}

.registration-card label span {
    font-size: 16px;
    color: #243341;
}

.registration-card label input {
    margin-top: 10px;
}


.registration-form-2 select, .registration-form-2 input {
    margin-top: 15px;

}

.registration-b-day label {
    display: inline-block;
    width: 100%;
}

.registration-tel {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 28px;
}


.registration-form-2 .flags {
    /*margin-top:10px;*/
}

.registration-form-2 div:first-child {
    font-size: 16px;
    line-height: 40px;
    color: #243341;
    margin-top: -8px;
    margin-bottom: -7px;


}


.registration-tel input {
    width: 75%;
    margin-bottom: 8px;
}

.registration-document {
    display: flex;
    justify-content: space-between;

}

.registration-document label {
    display: inline-block;
    width: 48%;
}


.registration-document label select, .registration-document label input,
.registration-national label select {
    width: 100% !important;
}

.registration-national label {
    margin-top: 30px;
    width: 100%;
}

.registration-form-3 select, .registration-form-3 input {
    margin-top: 15px;

}


.registration-address label, .registration-address label input {
    width: 100%;
}


.registration-address {
    margin-bottom: 28px;
}

.registration-city {
    display: flex;
    justify-content: space-between;

}

.registration-city label:first-child {
    display: inline-block;
    width: 66%;
}

.registration-city label:last-child {
    display: inline-block;
    width: 29%;
}

.registration-city label select, .registration-city label input,
.registration-city label select {
    width: 100% !important;
}

.registration-next {
    position: absolute;
    cursor: pointer;
    width: 208px;
    height: 53px;
    right: 30px;
    bottom: 30px;
    background: #1BC6BB;
    border-radius: 8px;
    outline: none;
    color: white;
    font-weight: 600;
    font-size: 19px;
    border: none;
}


.photo-gallery .intro {
    font-size: 16px;
    max-width: 500px;
    margin: 0 auto 40px;
}

.photo-gallery .intro p {
    margin-bottom: 0;
}

.photo-gallery .photos {
    padding-bottom: 20px;
}

.photo-gallery .item {
    padding-bottom: 30px;
}

.payments-box {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
}


.payments-receipt {
    display: flex;
    flex-direction: column;
    border-radius: 12px;
    align-items: center;
    justify-content: space-between !important;
    padding: 35px 27px 45px 27px;
    width: 30%;
    box-shadow: 0 3px 35px rgba(36, 51, 65, 0.03);
    position: relative;
}

.payments-receipt .payments-deposit {
    position: relative;
}

.payments-receipt .payments-deposit {
    position: relative;
}

.payments-receipt .payments-deposit:before {
    content: '';
    position: absolute;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    left: -40px;
    bottom: -15px;;
    background: #f1f4f6;
}

.payments-receipt .payments-deposit:after {
    content: '';
    position: absolute;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #f1f4f6;
    right: -40px;
    bottom: -15px;
}

body.blackTheme .payments-deposit:before,
body.blackTheme .payments-deposit:after {
    display: none;
}

.payments-total {
    border-bottom: 1px solid #A9BBCB;
    padding: 0 45px 37px 45px;
}

.payments-total div:first-child {
    font-size: 40px;
    color: #243341;
    text-align: center;
}

.payments-deposit {
    margin-top: 25px;
    padding-bottom: 43px;
    width: 100%;
    border-bottom: 2px dashed #A9BBCB;
}


.payments-deposit div:first-child {
    font-size: 40px;
    color: var(--main-link-color);
    text-align: center;
}

body.blackTheme .payments-deposit div:last-child {
    color: white;
}


.payments-remain {
    margin-top: 25px;
    /*padding-bottom: 43px;*/
    /*border-bottom: 1px solid grey;*/
}

.payments-remain div:first-child {
     font-weight: 600;
     font-size: 22px;
     color: #243341;
     text-align: center;
 }

body.blackTheme .payments-remain div:last-child {
    color: white;
}



.payments-total div:last-child, .payments-deposit div:last-child, .payments-remain div:last-child {
    font-size: 14px;
    text-align: center;
    color: #5D748A;
}

.payments-receipt button {
    margin-top: 20px;
}

.payments-receipt-button {
    background: var(--main-link-color);
    display: flex;
    justify-content: center;
    align-items: center;
    border: solid var(--main-link-color) 1px;
    outline: none;
    border-radius: 7px;
    width: 100%;
    height: 43px;
    font-size: 14px;
    font-style: normal;
    cursor: pointer;
    color: white;
    font-weight: 600;
}

.payments-types {
    align-self: stretch;
    width: 68%;
    padding: 35px 30px 43px 30px;
    border-radius: 12px;
}

body.blackTheme .payments-types {
    color: white;
}

.payments-types h2 {
    margin-bottom: 36px;
    font-weight: 600;
    font-size: 22px;
    color: var(--content-text-color);
}

.payments-method {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--main-back-color);
    border-radius: 15px;
    height: 105px;
    padding-left: 25px;
    padding-right: 30px;
    margin-bottom: 10px;
}

body.blackTheme .payments-method {
    background: #2b364f;
}

body.blackTheme .payments-method .payments-method-name > div {
    color: white;
}

.payments-method div:last-child {
    font-weight: 600;
    font-size: 22px;
    color: var(--main-link-color);
}


.payment-method-img {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    background-color: white;
    padding: 0;
    border-radius: 50%;
    margin-right: 20px;
}

.payment-method-img img {
    width: 100%;
}

.payments-method-name div:first-child {
    font-weight: 600;
    font-size: 18px;
    color: #243341;
}

.payments-method-name div:last-child {
    font-size: 14px;
    font-weight: 400;
    color: #5D748A;
}


.hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner::before, .hamburger.is-active .hamburger-inner::after {
    background-color: #fff !important;
}

.metismenu .badge {
    position: absolute;
    left: 20px;
}

table .filter-control {
    padding: 10px;
}

.card-header-title p {
    font-weight: normal !important;
    margin-bottom: 0 !important;
    padding-left: 5px;
}

.app-sidebar.sidebar-text-light .vertical-nav-menu li a.text-white {
    opacity: 1 !important;
}

.app-sidebar.sidebar-text-light .vertical-nav-menu li a.text-white:hover i {
    color: #fff !important;
}

.app-sidebar {
    background-color: var(--main-menu-back-color);
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
}

.loginMenuButton a, .loginMenuButton i {
    background-color: var(--main-link-color) !important;
    color: #fff !important;
}

.loginMenuButton a:hover {
    opacity: 0.9;
}

.app-sidebar.sidebar-text-light .vertical-nav-menu li {
    height: 3rem;
}

.app-sidebar.sidebar-text-light .vertical-nav-menu li a.active::after, .app-sidebar.sidebar-text-light .vertical-nav-menu li:hover a::after {

}

.registration-files-wrapper {
    margin-top: 1rem;
}

.registration-files {
    display: flex;
    justify-content: space-between;
}

.registration-files .dropdoc {
    border-radius: 7px;
    border: 2px dashed #A9BBCB;
    height: 80px;
    min-height: 80px;
    margin-bottom: 0px;
    padding-top: 10px;
    padding-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.registration-files {
    width: 33%;
}

.hotel-modal-btn:hover {
    background-color: var(--main-link-color);
    color: #F4F6F8;
}

.hotel-spa-type:hover b {
    font-weight: bold;
}

.hotel-spa-type {
    border: 2px solid #F4F6F8;
}

body.blackTheme .hotel-spa-type {
    background: #2b364f;
    border-color: #263a53;
    color: white;
}



.hotel-spa-type:hover, body.blackTheme .hotel-spa-type:hover {
    border-color: #1BC6BB;
}


i.fa.fa-times {
    cursor: pointer;
}

.flashes {
    position: absolute;
    top: 20px;
    width: calc(100% - 60px);
    right: 30px;
    padding-top: 10px;
    font-size: 18px;
}
.swal2-confirm.swal2-styled {
    background-color: var(--main-link-color) !important;
}

@media (min-width: 576px) {
    .col-sm-5th {
        -webkit-box-flex: 0;
        flex: 0 0 20%;
        max-width: 20%;
    }
}

@media (min-width: 768px) {
    .col-md-5th {
        -webkit-box-flex: 0;
        flex: 0 0 20%;
        max-width: 20%;
    }
}


@media (max-width: 768px) {
    .modalHotelGallery h2 {
        margin-bottom: 25px;
        padding-top: 25px;
        font-size: 24px;
    }

    .registration-files {
        width: 100%;
    }
}


@media (min-width: 992px) {
    .col-lg-5th {
        -webkit-box-flex: 0;
        flex: 0 0 20%;
        max-width: 20%;
    }

    .wrapperGrid {
        grid-template-columns: repeat(3, 1fr);
        gap: 10px;
    }
}

@media (min-width: 1200px) {
    .col-xl-5th {
        -webkit-box-flex: 0;
        flex: 0 0 20%;
        max-width: 20%;
    }

    .wrapperGrid {
        grid-template-columns: repeat(3, 1fr);
        gap: 15px;
    }


}


@media (min-width: 1600px) {
    .hotelPhotos .col-xxl-5th {
        -webkit-box-flex: 0;
        flex: 0 0 20%;
        max-width: 20%;
    }

    .wrapperGrid {
        grid-template-columns: repeat(4, 1fr);
        gap: 15px;
    }
}

@media (min-width: 1850px) {
    .col-xxl-5th {
        -webkit-box-flex: 0;
        flex: 0 0 20%;
        max-width: 20%;
    }

    .wrapperGrid {
        grid-template-columns: repeat(5, 1fr);
        gap: 15px;
    }
}


/*.modal-dialog {*/
/*    margin: 2px auto;*/
/*    z-index: 1100 !important;*/
/*}*/

/*Black Theme*/
body.blackTheme {

}



body.blackTheme #flight .card-header-tab.justify-content-between {
    background: #112237;
}

body.blackTheme #flight .card-header-tab.justify-content-between .card-header-title h4 {
    color: white !important;
}


body.blackTheme #flight .flightDetail-part1, body.blackTheme #flight .flightDetail-part2 {
    background: #0b1624;
}

body.blackTheme #flight .flightDetail-part1 .container-planeDetail div {
    color: #6C7A7D !important;
}

body.blackTheme #flight .flightDetail-part1 .container-planeDetail .flight-company-icon {
    background: #1BC6BB;
}

body.blackTheme #flight .flightDetail-part1 .timeDest .contentText{
    color: white!important;
}
body.blackTheme #flight .flightDetail-part1 .timeDest .gridPicFlight .justify-self-start,
body.blackTheme #flight .flightDetail-part1 .timeDest .gridPicFlight .justify-self-end{
    color: white!important;
}
body.blackTheme #flight .flightDetail-part2 .contentText{
    color: white!important;

}
body.blackTheme #flight .container-fluid .flight-block{
    background:  #0b1624;
}
body.blackTheme #flight .container-fluid .flight-block h4{
    color: white;
}
body.blackTheme #flight .container-fluid .flight-block .flight-icon{
    background:  #0b1624;
    color: white;
}
body.blackTheme #flight .container-fluid .flight-block .flight-icon span{
    color: white;
}
body.blackTheme #flight .container-fluid .flight-block .flight-block-transportCompany{
    color: white;
}

body.blackTheme #flight .container-fluid .flight-block .d-flex.flex-column.justify-content-between.align-self-stretch .mt-3{
    color: white;
}
body.blackTheme #flight .container-fluid .flight-block .d-flex.flex-column.justify-content-between.align-self-stretch .mt-3 .flight-block-gray-text{
    color: lightgrey;
}

body.blackTheme #flight  .flight-icon-rounded {

    background: #112237;
    color: var(--content-text-color);
}



body.blackTheme .chat-wrapper.d-flex.flex-column.align-items-stretch{
    background: #112237
}

body.blackTheme .chat-wrapper.d-flex.flex-column.align-items-stretch .support-chat-userName{
    border-color: #112237;
}

body.blackTheme .chat-wrapper.d-flex.flex-column.align-items-stretch .app-inner-layout__bottom-pane.d-block.text-center{
    background: #112237
}







.blackTheme .app-header-right .dropdown-menu.dropdown-menu-right.show {
    background: #112237 !important;
}

.blackTheme .app-header-right .btn-group {
    color: white;
}

.blackTheme .app-header-right .dropdown-menu.dropdown-menu-right button {
    color: white;
}

.blackTheme .app-header-right .dropdown-menu.dropdown-menu-right button:hover {
    background-color: #2a3451 !important;
}

.blackTheme .app-header-right .lang-widget label.dropdown-item {
    color: white;
}

.blackTheme .app-header-right .lang-widget label.dropdown-item:hover {
    background-color: #2a3451 !important;
}

/*index.php*/

body.blackTheme .fixed-sidebar {
    background-image: url("/web/images/technology-network-background_1_1.jpg");
    background-repeat: no-repeat;
    background-size: cover;
}

body.blackTheme .dashBox a {
    background: #112237;
    opacity: 0.8;
    text-decoration: none !important;
}

body.blackTheme .iconDash {
    background-color: rgba(0, 0, 0, 0);
}

body.blackTheme .dashFont {
    color: white !important;
}

body.blackTheme .app-container.fixed-sidebar {
    background-size: cover !important;
}

/*cabinet/bookings.php*/
body.blackTheme .form-control:focus {
    background: #243A55 !important;
    color: white;
}

body.blackTheme .card-header-title {
    color: #FFFFFF;
}

body.blackTheme .card-table {
    background: #112237;
}

body.blackTheme #addBook {
    color: #FFFFFF;
}

body.blackTheme .dropdown-menu.show {
    background: #243A55 !important;
}

body.blackTheme .dropdown-menu.show a {
    background: slategrey !important;
}

body.blackTheme .card {
    background: #112237;
}

body.blackTheme .table-hover tbody tr:hover {
    background-color: #2a3451 !important;
}

body.blackTheme tr td {
    color: white;
}

body.blackTheme #bookingButton {
    border-color: transparent;
}

body.blackTheme #bookingButton:hover {
    background-color: #1BC6BB !important;
    filter: brightness(1.1);
}

body.blackTheme .form-group input {
    background: #112237;
    border-color: #243A55;
}

body.blackTheme select {
    color: #fff;
    background: #112237;
    border-color: #243A55;
}

body.blackTheme .page-item a {
    color: #fff !important;
    background: #112237 !important;
}

body.blackTheme .page-item.active a {
    border-color: #1BC6BB !important;
    background: #1BC6BB !important;
}

body.blackTheme .pagination-info, body.blackTheme .page-list, body.blackTheme .page-title-heading, body.blackTheme header h1, body.blackTheme h2, body.blackTheme .greyText, body.blackTheme .hotel-facilities-icons, body.blackTheme .users-flight-name, body.blackTheme header h3, body.blackTheme .download-header *, body.blackTheme h5, body.blackTheme .page-title-heading * {
    color: #fff !important;
}

body.blackTheme .hotel-header-buttons div {
    border-color: #fff !important;
    color: #fff !important;
}

body.blackTheme .hotel-service {
    background: #1BC6BB !important;
    color: #fff !important;
}

body.blackTheme .hotel-service i, body.blackTheme .hotel-service-header {
    color: #fff !important;
}

body.blackTheme .card-header-tab, body.blackTheme .payments-total *, body.blackTheme .payments-total div:first-child, body.blackTheme .payments-remain div:first-child, body.blackTheme .processing-payments {
    color: #fff !important;
}


@media screen
and (min-width: 960px)
and (max-width: 1600px)
{

    .app-header__content .search-wrapper{
        position: fixed!important;
    }

    body .dashFont {
        font-size: 30px!important;
    }

    #hotel-list .card > .d-flex.justify-content-between {
        flex-direction: column;
        width: 100%;
        align-items: center;
        justify-content: center;
    }
    #hotel-list .card > .d-flex.justify-content-between  .hotel-col-swiper {
        width: 100%;
        height: 400px;
        display: flex;
        justify-content: center;
    }

    #hotel-list .hotel-service-header {
        font-size: 14px;
    }

    #hotel-list .card > .d-flex.justify-content-between  .hotel-description{
        width: 100%;
        margin-top: 20px;
    }

    #hotel-list .hotel-col-info .purchaseBlock i.metismenu-icon {
        font-size: 20px!important;
    }

    #hotel-list .hotel-col-info  .maxw70p{
        width: 65%!important;
    }

    #hotel-list .hotel-col-info .hotel-service {
        padding: 20px 13px;
        height: 70px;
        /*justify-content: space-between;*/
    }

    #hotel-list .hotel-col-info .hotel-service > div {
        margin: 0!important;
        line-height: 0;
    }

    #hotel-list .hotel-col-info .hotel-service .hotel-service-header {
        margin-left: 16px!important;
        text-align: center;
    }

     .hotel-col-info .hotel-service i.metismenu-icon {
        font-size: 23px!important;
        margin: 0!important;
        line-height: 0;
    }

    .hotel-spa-list {
        grid-template-columns: repeat(3, auto);
    }

    body .app-main header .col-lg-3 .users-flight-name {
         display: none!important;
    }

    body.blackTheme h4.mt-2 {
        color: white;
    }

    .hotel-restaurants-list {
        grid-template-columns: repeat(3, 33%);
    }

    .hotel-restaurants-list a {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: start;
    }
    .hotel-restaurants-list a .hotel-restaurant-img-container {
        height: auto!important;
        margin-bottom: 20px;

    }

}

@media screen
and (min-width: 990px)
and (max-width: 1050px) {
    #hotel-list .hotel-col-info .hotel-service .hotel-service-header {
        margin-left: 8px!important;
    }
    #hotel-list .hotel-col-info .hotel-service {
        padding: 20px 10px;
    }
}



@media screen
and (min-width: 1600px)
and (max-width: 1850px) {
    body .dashFont {
        font-size: 30px!important;
    }

    #hotel-list .card > .d-flex.justify-content-between {
        flex-direction: column;
        width: 100%;
        align-items: center;
        justify-content: center;
    }

    #hotel-list .card > .d-flex.justify-content-between  .hotel-col-swiper {
        width: 100%;
        height: 400px;
        display: flex;
        justify-content: center;

    }
    #hotel-list .card > .d-flex.justify-content-between  .hotel-description{
        width: 100%;
        margin-top: 20px;
    }

}
