/* navigation style */

#header-block{
    display: block;
    width: 100%;
    height: 7.5rem;
    /* margin: 0 0 3.125rem 0; */
}

.nav-block{
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 7.5rem;
    background-color: var(--header-bg-color);
    border-bottom: var(--border) solid var(--border-color);
    /* box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow)); */
    z-index: 10;
}

nav{
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    max-width: 73.125rem;
    height: 7.5rem;
    padding: 0.625rem 0.9375rem;
    margin: 0 auto;
}

nav img{
    width: auto;
    /* max-width: 11.875rem; */
    height: auto;
    max-height: var(--logo-height);
}

.link-cont a:link, .link-cont a:visited,
.mob-link-cont a:link, .mob-link-cont a:visited{
    display: inline-block;
    font-family: 'Default-font';
    color: var(--header-font-color);
    text-decoration: none;
    padding: 0.625rem 0.9375rem 0.625rem 0;
    white-space: nowrap;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

.link-cont .mi-o, .mob-link-cont .mi-o{
    font-size: 1.5rem;
    vertical-align: top;
    margin-right: 0.313rem;
    color: var(--header-font-color);
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

.link-cont a:hover, .link-cont a:hover .mi-o,
.mob-link-cont a:hover, .mob-link-cont a:hover .mi-o{
    color: var(--link-color);
}

.checkout-countdown{
    display: inline-block;
    width: 5rem;
    margin: 0.625rem 0.9375rem 0.625rem 0;
    color: var(--error-color);
}

.checkout-countdown .mi-o{
    color: var(--error-color);
}

.lang-block, .coupon-block{
    display: none;
    position: absolute;
    top: 5.2rem;
    right: 0;
    padding: 0.9375rem 1.875rem;
    background: var(--header-bg-color);
    border-bottom-left-radius: var(--bottom-left);
    border-bottom-right-radius: var(--bottom-right);
    z-index: 3;
}

.coupon-block{
    left: 6.25rem;
    width: 18.75rem;
}

.coupon-block button, .coupon-select-block button{
    display: block !important;
    margin: 1.25rem auto !important;
}

.coupon-block .coupon-result span, .coupon-select-block .coupon-result span{
    display: block;
}

.lang-cont{
    display: inline-block;
}

.lang-block a:link, .lang-block a:visited{
    display: block;
}

.mob-link-cont{
    display: none;
}

#mob-nav-block{
    display: none;
    position: absolute;
    top: 0.9375rem;
    right: -16.563rem;
    width: 15.625rem;
    height: calc( 100vh - 1.875rem );
    background-color: var(--header-bg-color);
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
    padding: 0.9375rem 1.875rem;
    z-index: 15;
    text-align: center;
}

#mob-nav-block .title{
    display: block;
    text-align: right;
    font-size: 1.5rem;
    margin: 0 0 1rem 0;
    font-size: 1.5rem;
    color: var(--border-color);
}

#mob-nav-block a:link, #mob-nav-block a:visited{
    display: block;
    font-family: 'Default-font';
    color: var(--header-font-color);
    text-decoration: none;
    text-align: center;
    padding: 0.9375rem 0;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

#mob-nav-block .coupon-block{
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    padding: 0.9375rem 0 0 0;
}

#mob-nav-block .mi-o{
    margin-right: 0.313rem;
    color: var(--header-font-color);
}

#mob-nav-block a:hover,
#mob-nav-block a:hover .mi-o{
    color: var(--link-color);
}


/* compare */

.price-compare{
    display: block;
    position: fixed;
    top: 14.063rem;
    right: 0;
    z-index: 10;
}

.price-compare .opened{
    display: none;
    width: 20rem;
}

.price-compare .closed{
    display: block;
}

.price-compare .closed > .title, .price-compare .opened > .title{
    display: block;
    font-size: 1.25rem;
    background-color: var(--subbtn-bg-color);
    color: var(--subbtn-text-color);
    width: 2.188rem;
    min-height: 2.188rem;
    line-height: 2.188rem;
    cursor: pointer;
    text-transform: uppercase;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

.price-compare .closed > .title{
    text-align: center;
    border-radius: 50%;
}

.price-compare .closed b{
    margin: 0 0 0 -0.125rem;
}

.price-compare .opened > .title{
    display: block;
    width: 100%;
    padding: 0 1.688rem 0 0.9375rem;
    border-radius: var(--top-left) var(--top-right) 0 0;
    font-size: 0.875rem;
}

.price-compare .opened > .title::after{
    content: "\e5cd" !important;
    font-size: 1.125rem;
    font-family: 'Material Symbols Outlined';
    display: block;
    position: absolute;
    top: 0;
    right: 0.6875rem;
}

.price-compare .closed > .title:hover{
    color: var(--subbtn-bg-color);
    background-color: var(--subbtn-text-color);
}

.price-compare .opened .compare-block{
    display: block;
    background-color: var(--cart-cont-color);
    border-radius: 0 0 var(--bottom-left) var(--bottom-right);
    padding: 0.9375rem;
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
}

.price-compare .opened .compare-block .title{
    display: block;
    text-transform: uppercase;
}

.price-compare .opened .compare-block .title .cheaper-price{
    font-family: 'Default-font-bold';
}

.price-compare .opened .compare-content{
    padding: 0.9375rem;
}

.price-compare .opened .compare-footer{
    padding: 0.5rem;
    text-align: center;
    font-family: 'Default-font-bold';
    border-top: var(--border) solid var(--subbtn-bg-color);
}


/* front page */

.image-header{
    display: flex;
    align-items: flex-end;
    height: 23.75rem;
    background: var(--bg-color);
}

#search-block{
    flex: 1 0 100%;
    margin: 3.125rem auto 0 auto;
    padding: 0 0.9375rem;
    max-width: 73.125rem;
}

.image-header > #search-block{
    margin: 0 auto;
}

.salbos_arrival_departure_block{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    background-color: var(--cart-cont-color);
    padding: 0.9375rem;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
}

.image-header .salbos_arrival_departure_block{
    border-radius: var(--top-left) var(--top-right) 0 0;
    box-shadow: none;
}

.salbos_arrival_departure_block .disable-reason{
    flex: 1 0 100%;
    padding: 0.625rem 0.9375rem;
    text-align: center;
    color: var(--sublink-color);
}

.salbos_arrival_departure_block .input-block{
    flex: 1 0 25%;
    padding: 0 0.9375rem 0 0;
}

.salbos_arrival_departure_block .guest-select-block{
    width: 16.25rem;
}

.salbos_arrival_departure_block .guest-select-block, .salbos_arrival_departure_block .coupon-select-block{
    display: none;
    position: absolute;
    top: 3.125rem;
    left: 0;
    right: 0;
    max-width: 23.125rem;
    background-color: var(--cont-color);
    padding: 1.25rem 0;
    text-align: center;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
    z-index: 21;
    overflow: hidden;
}

.salbos_arrival_departure_block .coupon-select-block{
    padding: 1.25rem;
}

.salbos_arrival_departure_block .guest-select-block #room-list{
    max-height: 16.563rem;
    overflow-y: auto;
    margin: 0 0 1.25rem 0;
}

.salbos_arrival_departure_block .guest-select-block .room-block:not(:first-of-type){
    margin: 1.25rem 0 0 0;
}

.salbos_arrival_departure_block .guest-select-block .title{
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: 'Default-font-bold';
    background-color: var(--bg-color);
    color: var(--link-color);
    padding: 0.625rem 1.25rem;
    text-align: left;
}

.salbos_arrival_departure_block .guest-select-block .title a{
    font-size: 1.5rem;
    color: var(--font-color);
    cursor: pointer;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

.salbos_arrival_departure_block .guest-select-block .title a:hover{
    color: var(--link-color);
}

.salbos_arrival_departure_block .guest-select-block .guest-row{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.125rem 1.25rem;
    text-align: left;
    vertical-align: middle
}

.salbos_arrival_departure_block .guest-select-block .guest-row .guest-count{
    white-space: nowrap;
}

.salbos_arrival_departure_block .guest-select-block .guest-count button, 
.modal-form .form-line .addon-count button{
   width: 1.875rem;
   color: var(--font-color) !important;
   background-color: transparent !important;
   border: 0rem !important;
   font-size: 1.5rem !important;
   padding: 0 !important;
   cursor: pointer;
}

.salbos_arrival_departure_block .guest-select-block .guest-count input, 
.modal-form .form-line .addon-count input{
    width: 1.875rem;
    padding: 0;
    text-align: center;
}

.salbos_arrival_departure_block .guest-select-block #add-room-btn{
    margin: 0 auto 1.25rem auto;
    padding: 0 2.5rem;
}

.salbos_arrival_departure_block .guest-select-block .guest-select-button-block, 
.salbos_arrival_departure_block .coupon-select-block .coupon-select-button-block{
    display: block;
    padding: 1.25rem 0 0 0;
    border-top: var(--border) solid var(--border-color);
}

.salbos_arrival_departure_block .guest-select-block .search-error{
    display: block;
    margin: 0.625rem 0 0 0;
    color: var(--error-color);
}

#room-loading{
    display: block;
    flex: 1 0 100%;
    font-family: 'Default-font-bold';
    font-size: 1.125rem;
    color: var(--link-color);
    text-align: center;
    padding: 0 0.9375rem;
    margin: 3.125rem 0;
}

.room-search-title{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 0 1.875rem 0;
    padding: 0 0.9375rem;
    line-height: 1.6em;
}

.room-search-title.block-bg{
    background-color: var(--cont-color);
    padding: 0.9375rem;
    margin: 0 0.9375rem 0.9375rem 0.9375rem;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
}

.room-search-title.hidden{
    display: none !important;
}

.room-search-title .search-dates{
    flex: 1 0 50%;
}

.room-search-title .search-result{
    flex: 1 0 50%;
    text-align: right;
}

.room-search-title span{
    font-family: 'Default-font-bold';
    color: var(--link-color);
    white-space: nowrap;
}

.room-search-title div{
    display: inline-block;
}

@-webkit-keyframes spin {
    0% { -webkit-transform: rotate(0deg); }
    100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

#room-search-block{
    flex: 1 0 100%;
}

.product-block{
    display: block;
    padding: 0.625rem 0.9375rem;
    transition-property: padding, opacity, transform !important;
}

.product-block:hover{
    padding: 0;
}

.product-content{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    background-color: var(--cont-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
    padding: 0.9375rem;
    transition: padding .7s ease;
}

.product-block:hover .product-content{
    padding: 1.563rem 1.875rem;
}

.product-content .room-image{
    flex: 1 0 50%;
    height: 16.875rem;
}

.product-content .room-image img{
    width: 100%;
    height: 16.875rem;
    max-width: none;
    object-fit: cover;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
}

.product-content .room-description{
    flex: 1 0 50%;
    padding: 0 0.9375rem;
    overflow: hidden;
}

.product-content .room-description .title{
    display: block;
    color: var(--link-color);
    text-transform: uppercase;
    margin: 0;
}

.product-content .room-description .capacity{
    margin: 0 0 0.9375rem 0;
}

.product-content .room-description .content{
    height: 10.25rem;
    cursor: pointer;
}

.product-content .room-description .content .description{
    display: -webkit-box;
    overflow: hidden;
    color: var(--subfont-color) !important;
    -webkit-box-orient: vertical;
    white-space: pre-wrap;
    padding: 0 0.9375rem 0 0;
}

.product-content .room-description .content .description::after{
    content: "\203A";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: center;
    font-size: 1.5rem;
    color: var(--subfont-color);
}

.product-content .room-description .content .comforts{
    height: 5.188rem;
    font-size: 0.875rem;
    overflow: hidden;
}

.product-content .room-description .content > ul{
    column-count: 2;
}

.product-content .price-block{
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--font-color);
    white-space: nowrap;
}

.product-content .price-block .price{
    display: inline-block;
    font-size: 1.75rem;
    color: var(--link-color);
    font-weight: normal;
    padding: 0 0.5rem;
}

.product-content .price-block button{
    display: block;
    float: right;
}

.package-block{
    display: none;
    width: 100%;
}

.room-layout-block{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    width: 100%;
}

.room-layout-block .room-layout{
    width:  10.313rem;
    background-color: var(--cont-color);
    border: var(--border) solid var(--border-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
    text-align: center;
    padding: 0.9375rem;
    margin: 0.5rem 0.5rem 0 0.5rem;
    cursor: pointer;
    overflow: hidden;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

.room-layout-block .room-layout.active{
    background-color: var(--link-color) !important;
    border: var(--border) solid var(--link-color) !important;
    color: var(--bg-color) !important;
}

.room-layout-block .room-layout img{
    display: block;
    filter: drop-shadow( 0rem 62.5rem 0 var(--font-color) );
    transform: translateY( -62.5rem );
    margin: 0 auto 0.3125rem auto;
}

.room-layout-block .room-layout.active img{
    filter: drop-shadow( 0rem 62.5rem 0 var(--bg-color) ) !important;
}

.room-layout-block .room-layout:hover{
    border: var(--border) solid var(--link-color);
    color: var(--link-color);
}

.room-layout-block .room-layout:hover img{
    filter: drop-shadow( 0rem 62.5rem 0 var(--link-color) );
}

.package-row{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    padding: 0.625rem 1.25rem;
    margin: 0.5rem 0;
    border: var(--border) solid var(--border-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
}

.package-row:last-of-type{
    margin: 0.5rem 0 0 0;
}

.package-row .package-content{
    flex: 1 0 60%;
    padding: 0 0.625rem 0 0;
    line-height: 1.6em;
}

.package-row .package-content .title{
    display: inline-block;
    padding: 0.1875rem 0;
    border-bottom: var(--border) solid var(--link-color);
    cursor: pointer;
    text-transform: uppercase;
    margin: 0;
}

.package-row .package-content .price-info{
    display: block;
    margin: 0.5rem 0 0 0;
}

.package-row .package-content .open-content{
    cursor: pointer;
}

.package-row .package-price{
    flex: 1 0 25%;
    white-space: nowrap;
    text-align: right;
    color: var(--subfont-color);
}

.package-row .package-price .total-price{
    display: block;
    font-size: 0.875rem;
    color: var(--font-color);
}

.package-row .package-price .total-price span{
    text-decoration: underline;
    cursor: pointer;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

.package-row .package-price .total-price span:hover{
    color: var(--link-color);
}

.package-row .package-btn{
    flex: 1 0 15%;
    text-align: right;
}

.order-content{
    display: flex;
    flex-wrap: wrap;
}

.order-content .product-small-container{
    flex: 1 0 100%;
}

.product-small-container{
    display: flex;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
}

.product-small-block{
    flex: 1 0 25%;
    max-width: 18.313rem;
    margin: 0;
}

.product-small-content{
    display: block;
    background-color: var(--cont-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
    padding: 0.9375rem;
    margin: 0.625rem 0.9375rem;
    overflow: hidden;
    cursor: pointer;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

.product-small-block:hover > .product-small-content{
    padding: 1.563rem 1.875rem;
    margin: 0;
}

.product-small-content img{
    display: block;
    width: calc( 100% + 3.75rem );
    height: 12.5rem;
    margin: -1.875rem -1.875rem 0 -1.875rem;
    object-fit: cover;
}

.product-small-content .title{
    display: -webkit-box;
    padding: 0.9375rem 0 !important;
    height: 3.938rem;
    text-transform: uppercase;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    white-space: pre-wrap;
    overflow: hidden;
}

.product-small-content .content{
    display: block;
    height: 6.25rem;
    overflow: hidden;
    color: var(--font-color);
}

.product-small-content .price{
    display: block;
    font-family: 'Default-font-bold';
    font-size: 0.875rem;
    color: var(--link-color);
    padding: 0.625rem 0 0 0;
}

.clar-block{
    display: inline-block;
    margin: 0 1rem .3rem 0;
}

.additional-text{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 1.875rem 0;
}

.additional-text .left-block{
    flex: 1 0 50%;
    padding-right: 0.938rem;
}

.additional-text .right-block{
    flex: 1 0 50%;
    padding-left: 0.938rem;
}

.additional-text.single-column{
    justify-content: flex-start;
}

.additional-text.single-column .left-block{
    flex: 1 1 100%;
    padding-right: 0;
}

.additional-text h1, .additional-text h2, .additional-text h3, .additional-text h4{
    margin: 0;
}


/* images link style */

#img-link-cont{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    width: 100%;
    margin: 1.5rem auto 0 auto;
}

#img-link-cont .link-block{
    flex: 0 1 50%;
}

#img-link-cont .cont{
    display: block;
    background: var(--cont-color);
    text-decoration: none;
    margin: 0.938rem;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
    box-shadow: 0.188rem 0.25rem 1.375rem 0.188rem rgba(104, 104, 104, var(--box-shadow));
    overflow: hidden;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

#img-link-cont .cont:hover{
    padding: 0.938rem;
    margin: 0;
}

#img-link-cont .cont img{
    width: calc( 100% + 1.875rem );
    height: 12.5rem;
    margin: -0.938rem -0.938rem 0 -0.938rem;
    object-fit: cover;
}

#img-link-cont .cont .title{
    display: block;
    text-align: center;
    font-size: 1rem;
    text-transform: uppercase;
    color: var(--link-color);
    padding: 1.25rem 0;
}


/* Woocommerce style */

.woocommerce, .wc-empty-cart-message{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    max-width: 73.125rem;
    margin: 0 auto;
    color: var(--font-color);
}

.woocommerce-notices-wrapper{
    display: block;
    width: 100%;
    padding: 0 0.9375rem 1.25rem 0.9375rem;
}

.woocommerce-message, .woocommerce-error, .woocommerce-warning, .woocommerce-info,
.note-message, .note-error, .note-warning, .note-info{
    display: block;
    width: 100% !important;
    padding: 0.9375rem 0.9375rem 0.9375rem 3.125rem !important;
    margin: 0 0 1.25rem 0 !important;
    line-height: 2.5rem !important;
    border-top: 0rem !important;
    border: var(--border) solid var(--success-color) !important;
    color: var(--font-color) !important;
    font-family: 'Default-font-title' !important;
    background-color: var(--cont-color) !important;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
}

.note-message, .note-error, .note-warning, .note-info{
    padding: 1em 2em 1em 1.5em !important;
}

.note-info.cart-empty{
    padding: 0 !important;
}

.note-info.cart-empty > span{
    display: block;
    margin: 0.9375rem 0.9375rem 0.9375rem 3.125rem;
}

.note-error i, .woocommerce-error::before{
    color: var(--error-color) !important;
    margin: 0 0.625rem 0 0;
}

.wc-block-components-notice-banner.is-success, .wc-block-components-notice-banner.is-error, .wc-block-components-notice-banner.is-info{
    width: 100% !important;
    margin: 0 0 1.25rem 0 !important;
    color: var(--font-color) !important;
    font-family: 'Default-font-bold' !important;
    background-color: var(--cont-color) !important;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
}

.woocommerce-error, .wc-block-components-notice-banner.is-success > svg{
    background-color: var(--success-color);
}

.woocommerce-error, .wc-block-components-notice-banner.is-error, .note-error{
    border: var(--border) solid var(--error-color) !important;
}

.woocommerce-error, .wc-block-components-notice-banner.is-error > svg{
    background-color: var(--error-color);
}

#order_comments_field label[for=order_comments] .optional{
    display: none;
}


/* cart page */

.return-to-shop, button[name=update_cart]{
    display: none !important;
}

.woocommerce-cart-form{
    width: 100%;
    padding: 0 0.9375rem;
}

.before-cart-table{
    display: flex;
    justify-content: space-between;
    align-items: start;
    flex-wrap: nowrap;
}

.woocommerce-cart-form table.shop_table{
    border: 0rem !important;
    padding: 0.9375rem;
    margin: 0 0 1.25rem 0 !important;
    background-color: var(--cart-cont-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
    color: var(--font-color);
    table-layout: initial;
}

.woocommerce-cart-form table.shop_table thead th{
    font-family: 'Default-font-title';
    padding: 0 0.125rem 0.9375rem 0.125rem !important;
    font-weight: normal !important;
    overflow: hidden;
    white-space: nowrap;
    color: var(--font-color);
    text-transform: uppercase;
    border-bottom: 0.0625rem solid var(--border-color);
}

.woocommerce-cart-form table.shop_table tr{
    display: table-row;
}

.woocommerce-cart-form table.shop_table tr td,
.woocommerce-cart-form table.shop_table tbody tr th{
    padding: 0.9375rem 0.625rem;
    vertical-align: middle;
    overflow-x: hidden;
}

.woocommerce-cart-form table.shop_table a.remove{
    font-family: 'Default-font-bold';
    font-size: 1.5rem;
    font-weight: 200 !important;
    color: var(--border-color) !important;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

.woocommerce-cart-form table.shop_table a.remove:hover{
    color: var(--cart-cont-color) !important;
    background: var(--border-color) !important;
}

.woocommerce-cart-form table.shop_table img{
    width: 5rem !important;
    height: 5rem !important;
    object-fit: cover;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
}

.woocommerce-cart-form table.shop_table .product-name a{
    display: block;
    font-family: 'Default-font-bold';
    font-weight: normal;
    color: var(--link-color);
    margin: 0 0 0.625rem 0;
}

.woocommerce .product-name dl.variation p{
    font-family: 'Default-font-bold';
    font-weight: normal;
    margin-bottom: 1em !important;
}

.woocommerce .product-name dl [class^='variation-NB']{
    color: var(--sublink-color);
    font-size: 0.75rem;
    margin-top: -0.9375rem !important;
}

/* .woocommerce td.product-name > dl :nth-child(7) {
    display: none !important;
} */

.woocommerce-cart-form table.shop_table .product-subtotal .amount{
    font-family: 'Default-font-bold';
}


.woocommerce-cart-form table.cart td.actions .cart-coupon-block{
    text-align: left;
}

.woocommerce-cart-form table.cart td.actions .cart-coupon-block input.coupon{
    display: inline-block;
    width: 100%;
    max-width: 12.5rem;
    margin: 0 1.25rem 1.25rem 0;
}

.woocommerce-cart-form table.cart td.actions .cart-coupon-block button{
    margin: 0 1.25rem 1.25rem 0;
}

.woocommerce-cart-form table.cart td.actions .cart-coupon-block .coupon-result{
    display: inline-block;
    line-height: 2.5rem;
}

.cart_totals{
    padding: 0 0.9375rem;
}

.cart_totals h2{
    display: block;
    font-size: 1.125rem;
    color: var(--link-color);
    margin: 0 0 1.25rem 0;
    text-transform: uppercase;
}

.cart_totals table.shop_table{
    border: 0rem !important;
    padding: 0.9375rem;
    background-color: var(--cart-cont-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
    color: var(--font-color);
    table-layout: initial;
}

.cart_totals table.shop_table th{
    font-family: 'Default-font-title';
    font-weight: normal !important;
    white-space: nowrap;
    color: var(--font-color);
    text-transform: uppercase;
}

.cart_totals table.shop_table a{
    font-family: 'Default-font-bold';
    color: var(--error-color);
    margin: 0 0 0.625rem 0;
}

.cart_totals .wc-proceed-to-checkout{
    text-align: right;
}


/* checout page */

.woocommerce-form-coupon-toggle, .woocommerce-checkout{
    display: block;
    width: 100%;
}

.woocommerce-form-coupon{
    display: block;
    width: 100%;
    margin: 0 0 1.25rem 0 !important;
    background-color: var(--cont-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
    border: var(--border) solid var(--info-color) !important;
}

#customer_details > div{
    padding: 0 0.9375rem;
    margin: 0 0 1.25rem 0;
}

.woocommerce-billing-fields h3, .woocommerce-additional-fields h3{
    display: block;
    color: var(--link-color);
    margin: 0 0 1.25rem 0;
    text-transform: uppercase;
}

.woocommerce-billing-fields__field-wrapper, .woocommerce-additional-fields__field-wrapper{
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
    padding: 0.9375rem;
}

.woocommerce-billing-fields .form-row.hidden, #billing_company_field{
    display: none;
}

.woocommerce-billing-fields__field-wrapper #billing_company_field abbr{
    display: inline-block !important;
}

.required, .woocommerce form .form-row.woocommerce-invalid label{
    color: var(--error-color) !important;
}

#order_review_heading{
    display: block;
    color: var(--link-color);
    margin: 0 0 1.25rem 0;
    padding: 0 0.9375rem;
    text-transform: uppercase;
}

#order_review{
    padding: 0 0.9375rem;
}

#order_review table.shop_table{
    border: 0rem !important;
    padding: 0.9375rem;
    background-color: var(--cart-cont-color);
    border-top-left-radius: var(--top-left) !important;
    border-top-right-radius: var(--top-right) !important;
    border-bottom-left-radius: var(--bottom-left) !important;
    border-bottom-right-radius: var(--bottom-right) !important;
    color: var(--font-color);
    table-layout: initial;
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
}

#order_review table.shop_table th{
    font-family: 'Default-font-bold';
    font-weight: normal !important;
    white-space: pre-line;
    color: var(--font-color);
    text-transform: uppercase;
}

#order_review table.shop_table a{
    font-family: 'Default-font-bold';
    color: var(--error-color);
    margin: 0 0 0.625rem 0;
}

#order_review table.shop_table .cart_item td{
    border-top: var(--border) solid var(--border-color);
}

.woocommerce-checkout-payment{
    padding: 0.9375rem;
    background-color: var(--cart-cont-color) !important;
    border-top-left-radius: var(--top-left) !important;
    border-top-right-radius: var(--top-right) !important;
    border-bottom-left-radius: var(--bottom-left) !important;
    border-bottom-right-radius: var(--bottom-right) !important;
    color: var(--font-color);
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
}

.woocommerce-checkout #payment div.payment_box{
    border-top-left-radius: var(--top-left) !important;
    border-top-right-radius: var(--top-right) !important;
    border-bottom-left-radius: var(--bottom-left) !important;
    border-bottom-right-radius: var(--bottom-right) !important;
}

.switch-candy{
    height: 2.5rem !important;
    border-radius: 1.25rem !important;
    text-shadow: none !important;
    box-shadow: none !important;
    font-weight: normal !important;
}

.switch-candy a{
    border: 0rem !important;
    box-shadow: none !important;
}

#wc-deposits-options-form input.input-radio:enabled ~ label{
    background-color: var(--text-color) !important;
    color: var(--cont-color) !important;
    line-height: 2.5rem !important;
}

.switch-candy input:checked + label{
    text-shadow: none !important;
}

#wc-deposits-options-form div a.wc-deposits-switcher{
    background: var(--sublink-color) !important;
    border-radius: 1.25rem !important;
}

.deposit-buttons .disable-reason{
    color: var(--sublink-color);
    font-weight: normal !important;
    text-align: center;
}

#payment-form, #custom_salbos_payment_inputs{
    display: block;
    background-color: #ffffff;
    border-radius: 0.625rem;
    padding: 0.625rem;
}

#payment-form #card-element, #custom_salbos_payment_inputs > div{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

#payment-form #card-element .title, #custom_salbos_payment_inputs .title{
    flex: 1 0 100%;
    font-family: 'Default-font-bold';
    padding: 0.3125rem 0 0.625rem 0;
    color: #3f3f3f;
}

#payment-form #card-element #card-number, #payment-form #card-element .name-input{
    flex: 1 0 99%;
}

#payment-form #card-element .name-input{
    padding: 0 0.3125rem;
}

#payment-form #card-element #card-expiry, #payment-form #card-element #card-cvc, #custom_salbos_payment_inputs .form-row{
    flex: 1 0 45%;
}

#custom_salbos_payment_inputs .form-row{
    margin: 0 !important;
}

#payment-form #cardholder_name, #custom_salbos_payment_inputs #giftcard_nr, #custom_salbos_payment_inputs #validate{
    background-color: #e3e3e3 !important;
    border: 0rem !important;
    border-radius: 0.625rem !important;
    font-family: "Helvetica Neue", Helvetica, sans-serif;
    font-size: 0.875rem;
    color: var(--font-color) !important;
}

#payment-form #card-errors{
    flex: 1 0 100%;
    padding: 0.9375rem 0 0 0;
    text-align: center;
    color: var(--error-color);
}

#payment-form > p{
    display: none;
}

.custom-stripe-class, input.cardholder_name, input.cardholder_name:focus, input.cardholder_mail, input.cardholder_mail:focus{
    border: 0 !important;
    background-color: #e3e3e3 !important;
    border-radius: 0.625rem;
    padding: 0.75rem 0.9375rem;
    margin: 0.3125rem;
    color: #3f3f3f !important;
    font-family: sans-serif;
}

/* checkout success page */

.woocommerce-order{
    width: 100%;
    padding: 0 0.9375rem;
}

.woocommerce-order .woocommerce-notice--success{
    display: block;
    font-family: 'Default-font-title';
    font-size: 1.5rem;
    color: var(--success-color);
    margin: 0 0 1.25rem 0;
    text-transform: uppercase;
}

.woocommerce ul.order_details{
    margin: 0 0 1.25rem 0 !important;
}

.woocommerce ul.order_details li{

    margin: 0.3125rem 0.9375rem 0.3125rem 0 !important;
    padding: 0 0.9375rem 0 0 !important;
}

.woocommerce-order-details .woocommerce-order-details__title{
    display: block;
    color: var(--link-color);
    margin: 1.25rem 0 0.625rem 0;
    text-transform: uppercase;
    font-size: 1.17rem;
}

.woocommerce-order-details table.woocommerce-table--order-details,
table.woocommerce_deposits_parent_order_summary{
    width: 100% !important;
    border: 0rem !important;
    background-color: var(--cart-cont-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
    color: var(--font-color);
    table-layout: initial;
}

.woocommerce-order-details table.woocommerce-table--order-details th,
table.woocommerce_deposits_parent_order_summary th{
    font-family: 'Default-font-bold';
    font-weight: normal !important;
    white-space: nowrap;
    color: var(--font-color);
    padding: 0.5625rem 0.75rem;
    line-height: 1.5em;
    text-align: left;
    text-transform: uppercase;
}

.woocommerce-order-details table.woocommerce-table--order-details a,
table.woocommerce_deposits_parent_order_summary a{
    font-family: 'Default-font-bold';
    color: var(--link-color);
}

.woocommerce-order-details table.woocommerce-table--order-details tfoot:first-of-type{
    display: none !important;
}

.woocommerce ul.order_details + p{
    display: none;
}

table.woocommerce_deposits_parent_order_summary .order_item td{
    border-top: 0.0625rem solid rgba(0,0,0,.1);
    padding: 0.5625rem 0.75rem;
    vertical-align: middle;
    line-height: 1.5em;
}

.woocommerce-column__title{
    color: var(--link-color);
    margin: 0 0 1.25rem 0;
    text-transform: uppercase;
    font-size: 1.17rem;
}

.woocommerce-customer-details address{
    border: 0rem !important;
    background-color: var(--cart-cont-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
    color: var(--font-color);
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
    padding: 0.9375rem !important;
}

.woocommerce-checkout-review-order .cart-subtotal{
    display: none !important;
}


/* checkin page */

#salboscheckin{
    display: block;
    width: 100%;
    padding: 0 0.9375rem;
}

#salboscheckin .error-message{
    display: block;
    width: 100%;
    font-family: 'Default-font-bold';
    background-color: var(--cont-color);
    border: var(--border) solid var(--error-color) !important;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
    padding: 0.9375rem;
    max-width: 73.125rem;
    margin: 1.25rem auto;
}

#salboscheckin .error-message i{
    color: var(--error-color);
}

#salboscheckin #booking_nr_form{
    display: block;
    width: 100%;
    max-width: 25rem;
    background-color: var(--cont-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
    padding: 1.875rem;
    margin: 0 auto;
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
    text-align: center;
}

#salboscheckin #booking_nr_form label{
    display: block;
    font-size: 1.25rem;
    color: var(--link-color);
}

#salboscheckin #booking_nr_form #bron_nr{
    margin: 1.25rem 0;
    text-align: center;
}

#salboscheckin #checkin-header .containers{
    display: flex;
    justify-content: space-between;
    align-items: start;
    flex-wrap: wrap;
    max-width: 73.125rem;
    margin: 0 auto;
}

#salboscheckin .salboscheckin-tab-container{
    max-width: 73.125rem;
    margin: 0 auto;
}

#salboscheckin .container{
    flex: 1 0 50%;
    padding: 0 0.5rem;
    margin: 0 0 1rem 0;
}

#salboscheckin .container .title, #salboscheckin .room-block .title, .salboscheckin-title{
    display: block;
    font-family: 'Default-font-bold';
    color: var(--link-color);
    margin: 0 0 0.9375rem 0;
    text-transform: uppercase;
}

#salboscheckin .container > div{
    display: flex;
    justify-content: space-between;
    align-items: start;
    flex-wrap: wrap;
    min-height: 11.063rem;
    background-color: var(--cont-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
    padding: 0.9375rem;
    margin: 0 auto;
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
}

#salboscheckin .container .row{
    flex: 1 0 50%;
    line-height: 1.6em;
    padding: 0.6875rem 0;
}

#salboscheckin .container .row .value{
    display: block;
    padding: 0 0 0 1.125rem;
    font-family: 'Default-font-bold';
    color: var(--link-color);
}

#salboscheckin .container .inputrow{
    flex: 1 0 100%;
    line-height: 1.6em;
    padding: 0.25rem 0;
}

#salboscheckin .room-list > div > *{
    flex: 1 0 50%;
}

#salboscheckin .room-block{
    padding: 0 0 0.9375rem 0;
}

#salboscheckin .room-container{
    display: flex;
    justify-content: left;
    align-items: stretch;
    flex-wrap: wrap;
    background-color: var(--cont-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
    margin: 0 auto;
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
}

#salboscheckin .room-container .client{
    flex: 0 1 50%;
    padding: 0.9375rem;
}

#salboscheckin .room-container .client-data{
    display: flex;
    justify-content: start;
    align-items: stretch;
    flex-wrap: wrap;
    padding: 0.9375rem;
    border: var(--border) solid var(--border-color) !important;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
}

#salboscheckin .room-container .client-data .row:first-of-type{
    flex: 1 0 100%;
    font-size: 1.25rem;
    color: var(--link-color);
}

#salboscheckin .room-container .client-data .row.tbl_text{
    flex: 1 0 100%;
    margin: 0 0 0.6875rem 0;
}

#salboscheckin .room-container .client-data .row, #salboscheckin .room-container .client-data .inputrow{
    flex: 0 1 50%;
    line-height: 1.6em;
    padding: 0.25rem 0;
}

#salboscheckin .room-container .client-data .inputrow{
    padding: 0.25rem 0.3125rem;
}

#salboscheckin .room-container .client-data .inputrow.req label::after,
#salboscheckin .container table th.req::after{
    content: "*";
    display: inline-block;
    margin: 0 0 0 0.1875rem;
    color: var(--error-color);
}

#salboscheckin .room-container .client-data .inputrow input[type='checkbox']{
    margin: 0.9375rem 0.625rem;
    vertical-align: middle;
}

#salboscheckin .room-container .client-data .row:nth-child(n+3) .value, #salboscheckin .room-container .client-data .inputrow .value{
    display: block;
    min-height: 1.625rem;
    padding: 0 0 0 1.125rem;
    font-family: 'Default-font-bold';
}

#salboscheckin .room-container .client-data button{
    float: right
}

#salboscheckin .note{
    visibility: hidden;
    display: inline-block;
    font-family: 'Default-font-bold';
    background-color: var(--cont-color);
    border: var(--border) solid var(--border-color);
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
    padding: 0.375rem 0.9375rem;
}

#salboscheckin .full-note{
    display: block;
    width: 100%;
    padding: 0.9375rem;
}

#salboscheckin .note.error{
    border: var(--border) solid var(--error-color) !important;
}

#salboscheckin .note.success{
    border: var(--border) solid var(--success-color) !important;
}

#salboscheckin .container table{
    border-collapse: collapse;
    width: 100%;
    table-layout: fixed; 
}

#salboscheckin .container table td, #salboscheckin .container table th{
    display: table-cell !important;
    border: var(--border) solid var(--border-color);
    text-align: left;
    padding: 0.1rem;
}

#salboscheckin .container table th{
    font-weight: normal;
    font-family: 'Default-font-bold';
    padding: 0.5rem 0.25rem;
    white-space: nowrap;
    overflow-x: hidden;
    text-overflow: ellipsis;
    display: inline-block;
}

#salboscheckin .container table input, #salboscheckin .container table select{
    height: 1.5rem !important;
    line-height: 1.5rem !important;
}


#salboscheckin .container table .button{
    height: 1.5rem !important;
    line-height: 1.5rem !important;
    max-width: 58px;
}

.montonio-payments-country-dropdown, select[name="everypay_bank[preferred_country]"]{
	width: 100% !important;
	max-width: 12.5rem;
	background-color: var(--cont-color) !important;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
}

#everypay_bank-form, #everypay_card-form{
    border-radius: 0.625rem;
}


/* button style */

.button-block{
    display: block;
    padding: 1.25rem 0.9375rem 0 0.9375rem;
    text-align: right;
}

.btn, .sub-btn, #place_order{
    display: inline-block !important;
    height: 2.5rem !important;
    line-height: 2.5rem !important;
    padding: 0rem 1.25rem !important;
    color: var(--btn-text-color) !important;
    text-align: center !important;
    background-color: var(--btn-bg-color) !important;
    border: var(--border) solid var(--btn-bg-color) !important;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right) !important;
    box-shadow: none !important;
    font-family: 'Default-font-title' !important;
    font-size: 1rem !important;
    font-weight: normal !important;
    text-decoration: none !important;
    cursor: pointer !important;
    overflow: hidden !important;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

.sub-btn{
    background-color: var(--subbtn-bg-color) !important;
    border: var(--border) solid var(--subbtn-bg-color) !important;
    color: var(--subbtn-text-color) !important;
}

.btn:hover, .blank-btn, #place_order:hover{
    background-color: var(--btn-hover-bg-color) !important;
    border: var(--border) solid var(--btn-hover-text-color) !important;
    color: var(--btn-hover-text-color) !important;
}

.sub-btn:hover{
    background-color: var(--subbtn-hover-bg-color) !important;
    border: var(--border) solid var(--subbtn-hover-text-color) !important;
    color: var(--subbtn-hover-text-color) !important;
}

.btn-error{
    background-color: var(--error-color) !important;
    border: var(--border) solid var(--error-color) !important;
}

.btn-error:hover{
    background-color: var(--cont-color) !important;
    border: var(--border) solid var(--error-color) !important;
    color: var(--error-color) !important;
}

.btn-success{
    background-color: var(--success-color) !important;
    border: var(--border) solid var(--success-color) !important;
}

.btn-success:hover{
    background-color: var(--cont-color) !important;
    color: var(--success-color) !important;
}

.btn:disabled, .btn-error:disabled{
    background-color: var(--cont-color) !important;
    border: var(--border) solid var(--subfont-color) !important;
    color: var(--subfont-color) !important;
    cursor: not-allowed !important;
}

/* input style */

input, select, textarea{
    display: inline-block;
    width: 100%;
    height: 2.5rem;
    line-height: 2.5rem;
    background-color: transparent !important;
    padding: 0 0.9375rem;
    font-family: 'Default-font-title', FontAwesome;
    font-size: 1rem;
    color: var(--font-color);
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

select{
    background-color: var(--cont-color);
}

input:not([type='checkbox'], [type=radio], .cardholder_name, .cardholder_mail), select{
    border: 0 !important;
    border-radius:  0 !important;
    border-bottom: var(--border) solid var(--border-color) !important;
}


textarea{
    border: var(--border) solid var(--border-color) !important;
    height: 9.375rem !important;
    padding: 0.625rem;
    resize: none;
    border-radius: 0.625rem !important;
}

input:focus{
    border-bottom: var(--border) solid var(--link-color) !important;
    color: var(--link-color);
}

input:disabled{
    --form-control-color: var(--subfont-color);
    color: var(--subfont-color);
    border-bottom: var(--border) solid var(--subfont-color);
    cursor: default;
}

textarea:focus{
    border: 0.0625rem solid var(--link-color) !important;
    color: var(--link-color);
}

/* select option {
    background-color: var(--cart-cont-color);
    color: var(--font-color);
} */

input.error, select.error, .woocommerce form .form-row.woocommerce-invalid .select2-container{
    border-bottom: var(--border) solid var(--error-color) !important;
}

.select2-selection, .select2-selection__rendered{
    height: 2.5rem !important;
    line-height: 2.5rem !important;
    background-color: transparent !important;
    color: var(--font-color) !important;
}

.select2-container--default .select2-selection--single{
    border: 0 !important;
    background-color: transparent !important;
    border-bottom: var(--border) solid var(--border-color) !important;
    border-radius: 0rem !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow{
    top: 0.625rem !important;
}

.select2-dropdown{
    top: 0.25rem;
    border: var(--border) solid var(--boder-color) !important;
    background-color: var(--cart-cont-color) !important;
    z-index: 4 !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field{
    border: var(--border) solid var(--font-color) !important;
}

.select2-container--default .select2-results__option--highlighted{
    background-color: var(--link-color) !important;
    color: var(--cont-color) !important;
}

input[type=checkbox], input[type=radio]{
    display: inline-grid !important;
    -webkit-appearance: none;
    appearance: none;
    background-color: var(--cont-color);
    padding: 0;
    margin: 0 auto;
    font: inherit;
    color: var(--font-color);
    width: 1rem;
    height: 1rem;
    border: 0.0625rem solid var(--font-color);
    border-radius: 0.1875rem;
    place-content: center;
    cursor: pointer;
}

input[type=radio]{
    border-radius: 50%;
}

input[type=checkbox]::before, input[type=radio]::before{
    content: "";
    width: 0.875rem;
    height: 0.9375rem;
    clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
    transform: scale(0);
    transform-origin: bottom left;
    transition: 120ms transform ease;
    box-shadow: inset 0.625rem 0.625rem var(--link-color);
}

input[type=radio]::before{
    width: 0.625rem;
    height: 0.625rem;
}

input[type=radio]::before{
    clip-path: circle(50%);
    transform-origin: center;
}

input[type=checkbox]:checked::before, input[type=radio]:checked::before{
    transform: scale(1);
}

input[type=checkbox]:focus, input[type=radio]:focus{
    border: 0.0625rem solid var(--link-color);
}

input[type=checkbox]:disabled, input[type=radio]:disabled{
    --form-control-color: var(--subfont-color);
    color: var(--subfont-color);
    border: 0.0625rem solid var(--subfont-color);
    cursor: default;
}


/* footer style */

footer{
    display: block;
    padding: 0 0 3.125rem 0;
}

.footer-content{
    display: flex;
    justify-content: left;
    align-items: stretch;
    flex-wrap: wrap;
    width: 100%;
    max-width: 73.125rem;
    color: var(--footer-font-color);
    padding: 3.125rem 0 0 0;
    margin: 0 auto;
}

.footer-content.row{
    flex-direction: row;
}

.footer-content.row-reverse{
    flex-direction: row-reverse;
}

.footer-content.column{
    flex-direction: column;
}

.footer-content.column-reverse{
    flex-direction: column-reverse;
}

.footer-content.row .footer-block, .footer-content.row-reverse .footer-block{
    flex: 1 0 25%;
    padding: 0 0.9375rem 1.875rem 0.9375rem;
    font-family: 'Default-font-title';
    font-size: var(--footer-font-size);
    line-height: var(--footer-line-height-size);
}

.footer-content.column .footer-block, .footer-content.column-reverse .footer-block{
    flex: 1 0 100%;
    padding: 0.9375rem 0.9375rem;
    text-align: center;
}

.footer-block .title{
    display: block;
    color: var(--footer-link-color);
    margin: 0 0 1.25rem 0;
    font-size: 1rem;
    text-transform: uppercase;
}

.footer-block .nav-content a:link, .footer-block .nav-content a:visited{
    color: var(--footer-font-color);
    text-decoration: none;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

.footer-block .nav-content a:hover{
    color: var(--footer-link-color);
}

.footer-content.row .footer-block .contact-content span, .footer-content.row-reverse .footer-block .contact-content span,
.footer-content.row .footer-block .nav-content a, .footer-content.row-reverse .footer-block .nav-content a{
    display: block;
}

.footer-content.column .footer-block .contact-content span, .footer-content.column-reverse .footer-block .contact-content span,
.footer-content.column .footer-block .nav-content a, .footer-content.column-reverse .footer-block .nav-content a{
    display: inline-block;
    padding: 0.3125rem;
}

.footer-block .contact-content a:link, .footer-block .contact-content a:visited, .footer-block .contact-content .mi-o{
    color: var(--footer-link-color);
    text-decoration: none;
}

.footer-block .social-content a:link, .footer-block .social-content a:visited{
    color: var(--footer-font-color);
    text-decoration: none;
    font-size: 1.5rem;
    margin: 0 0.9375rem 0 0;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -ms-transition: all .4s ease;
    transition: all .4s ease;
}

.footer-block .social-content a:hover{
    color: var(--footer-link-color);
}

.footer-block .additional-content a:hover{
    color: var(--footer-link-color) !important;
}

.footer-block .additional-content *{
    color: var(--footer-font-color);
    margin: 0;
    text-decoration: none;
}

.footer-block img{
    height: auto;
    max-width: none;
}

.footer-block .alignright{
    float: right;
}

.footer-block .alignleft{
    float: left;
}

.footer-block .aligncenter{
    display: block;
    margin: 0 auto !important;
    text-align: center;
}

.footer-author{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    max-width: 73.125rem;
    padding: 0.9375rem;
}

.footer-author a:link, .footer-author a:visited{
    color: var(--footer-font-color);
    text-decoration: none;
}

.footer-author a:hover{
    color: var(--footer-link-color);
}


/* cookie style */

#cookie-block{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    position: fixed;
    left: 0.9375rem;
    right: 0.9375rem;
    bottom: 0.9375rem;
    margin-left: auto;
    margin-right: auto;
    padding: 0 0.9375rem;
    background-color: var(--cont-color);
    box-shadow: 0.1875rem 0.25rem 1.375rem 0.1875rem rgba(104, 104, 104, var(--box-shadow));
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
}

#cookie-block i{
    width: 2.5rem;
    height: 2.5rem;
    line-height: 2.5rem;
    font-size: 2.5rem;
    color: var(--link-color);
    vertical-align: middle;
    margin: 0.3125rem auto;
    text-align: center;
}

#cookie-block span{
    flex: 1 0 60%;
    margin: 0.3125rem 1.875rem;
}

#cookie-block span .title{
    display: block;
    font-family: 'Default-font-bold';
    color: var(--link-color);
}

#cookie-block .cookie-btn{
    margin: 0.3125rem auto;
}

/* 404 page */

.error-404{
    display: block;
    width: 100%;
    padding: 0 0.9375rem;
    margin: 6.25rem auto 3.125rem auto;
    text-align: center;
}

.error-404 h1{
    display: block;
    font-size: 1.5rem;
    color: var(--font-color);
}

.error-404 h2{
    display: block;
    font-size: 10vw;
    margin: 1.875rem 0;
    color: var(--link-color);
}


/* notification style */

.notice-block{
    display: block;
    position: fixed;
    top: 5.938rem;
    right: 0;
    width: 100%;
    max-width: 18.75rem;
    max-height: calc(100% - 1.875rem);
    padding: 0 0.9375rem;
    overflow: hidden;
    z-index: 40;
}

.notice{
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #ffffff;
    width: 100%;
    margin: 0 0 0.9375rem 0;
    padding: 0.9375rem;
    border-radius: var(--top-left) var(--top-right) var(--bottom-left) var(--bottom-right);
    cursor: pointer;
}

.notice .icon{
    flex: 1 0 13%;
    font-size: 1.125rem;
}

.notice span{
    flex: 1 0 87%;
}

.success-notice{
    background-color: var(--success-color);
}

.warning-notice{
    background-color: var(--warning-color);
}

.error-notice{
    background-color: var(--error-color);
}


/* laptop screen < 1200px */
@media only screen and (max-width: 1200px){

    #salboscheckin .container table thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }

    #salboscheckin .container table tr {
        border-bottom: 3px solid var(--border-color);
        display: block;
        margin-bottom: .625em;
    }

    #salboscheckin .container table td {
        border-bottom: 1px solid var(--border-color);
        display: block !important;
        text-align: center;
        text-transform: uppercase;
    }

    #salboscheckin .container table td::before{
        content: attr(data-label);
        display: block;
        float: left;
        font-family: 'Default-font-bold';
        font-size: .8em;
        text-transform: none;
    }

    #salboscheckin .container table td.req::before{
        content: attr(data-label) " *";
        display: block;
        float: left;
        font-family: 'Default-font-bold';
        font-size: .8em;
        text-transform: none;
    }


    #salboscheckin .container table td .b-td {
        padding: 1.625rem 0 0 0;
    }

    #salboscheckin .container  table td:last-child {
        border-bottom: 0;
    }

    #salboscheckin .container table .button{
        height: 2.5rem !important;
        line-height: 2.5rem !important;
        max-width: none;
    }
}


/* tablet screen < 768px */

@media only screen and (max-width: 768px){

    .link-cont, a.woocommerce-LoopProduct-link > div{
        display: none;
    }

    .mob-link-cont, #mob-nav-block, .product-content .price-block .price{
        display: block;
    }
    
    .footer-content.row .footer-block, .footer-content.row-reverse .footer-block{
        flex: 1 0 50%;
    }

    .footer-block, .product-small-block{
        max-width: 100%;
        flex: 1 0 50%;
    }

    .salbos_arrival_departure_block .input-block{
        flex: 1 0 50%;
        margin: 1.25rem 0 0 0;
    }

    .search-dates, .search-result, #cookie-block span, #salboscheckin .room-container .client, 
    .additional-text .left-block, .additional-text .right-block, #img-link-cont .link-block{
        flex: 1 0 100% !important;
    }

    .product-content .room-image, .package-row .package-content{
        flex: 1 0 100%;
        margin: 0 0 1.25rem 0;
    }


    .product-content .room-description{
        flex: 1 0 70%;
        padding: 0 0.9375rem 0 0;
    }

    .product-content .room-description .content > ul{
        column-count: 1;
    }
    
    .product-content .price-block{
        flex: 1 0 30%;
    }

    .error-404 h2{
        font-size: 11.063rem;
    }

    .package-row .package-price{
        flex: 1 0 70% !important;
        text-align: left;
    }

    .package-row .package-btn{
        flex: 1 0 30% !important;
    }

    #salboscheckin #checkin-header .container{
        flex: 1 0 100% !important;
        padding: 0 !important;
    }

    #salboscheckin .container table{
        border: 0;
    }

}

/* tablet screen < 576px */

@media only screen and (max-width: 576px){

    .footer-block, .product-content .room-description, .product-content .price-block, .product-small-block, .footer-content.row .footer-block, .footer-content.row-reverse .footer-block, #salboscheckin .container .row, #salboscheckin .room-container .client-data .row:nth-child(n+3), #salboscheckin .room-container .client-data .inputrow{
        flex: 1 0 100%;
    }

    .salbos_arrival_departure_block .input-block{
        flex: 1 0 100% !important;
        margin: 1.25rem 0 0 0;
    }

    .footer-content.row .footer-block .contact-content span, .footer-content.row-reverse .footer-block .contact-content span,
    .footer-content.row .footer-block .nav-content a, .footer-content.row-reverse .footer-block .nav-content a{
        padding: 0.3125rem 0;
    }

    #salboscheckin .note{
        width: 100%;
        margin: 0 0 0.9375rem 0;
    }


    #payment-form #card-element #card-number, #payment-form #card-element .name-input, #payment-form #card-element #card-expiry, #payment-form #card-element #card-cvc, #salboscheckin .room-list > div > *{
        flex: 1 0 100%;
    }

    .product-content .room-image, .product-content .room-image img, .product-small-content img{
        height: 10rem;
    }

}