.gaps-preloader {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    pointer-events: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

@keyframes gaps-slide-preloader {
    0% {
        background-position-x: -540px;
    }

    100% {
        background-position-x: 874px;
    }
}

.gaps-preloader-line-1 {
    width: 540px;
    height: 240px;
    position: absolute;
    background: radial-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 0) 61%);
    background-size: 540px 540px;
    background-position-x: -540px;
    background-position-y: center;
    background-repeat: no-repeat;
    opacity: 1;
    animation: gaps-slide-preloader 1s ease-in-out;
    animation-iteration-count: infinite;
}


.gaps-preloader-line-2 {
    width: 540px;
    height: 47px;
    position: absolute;
    background: radial-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 0) 61%);
    background-size: 540px 540px;
    background-position-x: -540px;
    background-position-y: center;
    background-repeat: no-repeat;
    opacity: 1;
    animation: gaps-slide-preloader 1s ease-in-out;
    animation-iteration-count: infinite;
}

.gaps-preloader-line-3 {
    width: 540px;
    height: 70px;
    position: absolute;
    background: radial-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 0) 61%);
    background-size: 540px 540px;
    background-position-x: -540px;
    background-position-y: center;
    background-repeat: no-repeat;
    opacity: 1;
    animation: gaps-slide-preloader 1s ease-in-out;
    animation-iteration-count: infinite;
}

.gaps-preloader-line-4 {
    width: 540px;
    height: 37px;
    position: absolute;
    background: radial-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 0) 61%);
    background-size: 540px 540px;
    background-position-x: -540px;
    background-position-y: center;
    background-repeat: no-repeat;
    opacity: 1;
    animation: gaps-slide-preloader 1s ease-in-out;
    animation-iteration-count: infinite;
}

.gaps-preloader-line-1 {
    top: 0px;
    animation-delay: 0;
}

.gaps-preloader-line-2 {
    top: 0px;
    animation-delay: 0.088s;
}

.gaps-preloader-line-3 {
    top: 0px;
    animation-delay: 0.142s;
}

.gaps-preloader-line-4 {
    top: 0px;
    animation-delay: 0.220s;
}

.loadingBlocksWrapper {
    position: absolute;
    width: 100%;
    height: 420px;
}

.loadingHeader {
    float: left;
    background-color: #f7f7f7;
    border-radius: 15px;
    width: 385px;
    height: 47px;
    margin-top: 22px;
    position: relative;
}



.ladingImg {
    float: left;
    background-color: #f7f7f7;
    border-radius: 15px;
    width: 250px;
    height: 240px;
    position: relative;
}


.loadingText {
    float: left;
    background-color: #f7f7f7;
    border-radius: 15px;
    width: 100%;
    height: 70px;
    margin-top: 10px;
    position: relative;
}


.loadingLink {
    float: left;
    background-color: #f7f7f7;
    border-radius: 15px;
    width: 250px;
    height: 37px;
    margin-top: 35px;
    position: relative;
}


.iframeStatus {
    border: 0;
    width: 100%;
    height: 500px;
}

.step3Image {
    width: 250px;
    height: auto;
}

.step3ImageSuccess {
    width: 350px;
    height: auto;
}

.header {
    font-family: 'gt';
    color: black;
    font-size: 18px;
}

.loading {
    position: relative;
    width: 24px;
    height: 24px;
    margin: 15px 10px 0 30px;
    float: left;
    display: none;
}

.btnBackTxt {
    float: left;
    width: 100%;
}

.btnBook.active .loading {
    display: block;
}

.btnBook.active .btnBackTxt {
    width: unset;
}

.loading svg {
    width: 24px;
    height: 24px;
}

.btnBook {
    float: left;
    margin-left: 20px;
}

.phoneInfo {
    color: black;
    font-size: 12px;
    line-height: 1.5;
    width: 450px;
    display: inline-block;
}



.inputWrapPhone {
    background-color: #f1f1f1;
    padding: 30px 20px 20px 20px;
    border-radius: 10px;
    display: inline-block;
}

.inputWrapPhone input {
    background-color: white !important;
    width: 450px !important;
}


.step2 .btnBack {
    background-color: #9c9c9c;
    width: 140px;
    float: left;
}

.yourReservation {
    font-family: 'gt';
    color: black;
    font-size: 18px;
}

.tableWrapper {
    width: 100%;
    overflow: hidden;
    position: relative;
    height: 501px;
}

.step {
    position: absolute;
    transition: all .4s ease-in-out;
    width: 100%;
}

.step1 {
    left: -980px;
}

.step1.active {
    left: 0px;
}

.step2 {
    left: 980px;
}

.step2.active {
    left: 0px;
}

.step1.move {
    left: -980px;
}

.step2.move {
    left: -980px;
}

.step3 {
    left: 980px;
}

.step3.active {
    left: 0px;
}

.noDisplay {
    display: none;
}

.btn {
    width: 200px;
    text-align: center;
    color: white;
    background-color: black;
    line-height: 55px;
    height: 55px;
    cursor: pointer;
    border-radius: 10px;
    position: relative;
    z-index: 0;
}

.firstRow {
    float: left;
    width: 275px;
}

.secondRow {
    float: left;
    width: 275px;
    margin-left: 22px;
}

.lastRow {
    float: left;
    width: 310px;
    margin-left: 22px;
}

.dateDefault:before {
    width: 31px;
    height: 19px;
    content: '';
    background: url('../img/iconDate.png') no-repeat;
    background-size: contain;
    display: block;
    float: left;
    position: absolute;
    left: 17px;
    top: 15px;
    opacity: .6;
}

.dateDefault:after {
    content: '';
    display: inline-block;
    vertical-align: top;
    width: 9px;
    height: 6px;
    position: absolute;
    right: 20px;
    top: 51%;
    margin: -2px 0 0;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgOSA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA5IDY7IiB4bWw6c3BhY2U9InByZXNlcnZlIj48c3R5bGUgdHlwZT0idGV4dC9jc3MiPi5zdDB7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7fTwvc3R5bGU+PHRpdGxlPlBhZ2UgMTwvdGl0bGU+PGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+PGcgaWQ9ImNhcnQiPjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKC04NTguMDAwMDAwLCAtNzUyLjAwMDAwMCkiPjxnIGlkPSJjaGVja291dC1lbXB0eSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNTYyLjAwMDAwMCwgMTUzLjAwMDAwMCkiPjxnIGlkPSJwYXltZW50IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMy4wMDAwMDAsIDU1OC4wMDAwMDApIj48cG9seWdvbiBpZD0iUGFnZS0xIiBjbGFzcz0ic3QwIiBwb2ludHM9IjI3Miw0MSAyNjcuNSw0NyAyNjMsNDEgIi8+PC9nPjwvZz48L2c+PC9nPjwvc3ZnPg==);
    pointer-events: none;
    opacity: .6;
}

.datepicker-top-left,
.datepicker-top-right {
    border-top-color: black;
}

.datepicker-container {
    font-size: 13px;
}

.datepicker-top-left::before,
.datepicker-top-right::before {
    border-bottom-color: black;
}

.dateWrapper {
    position: relative;
    width: 250px;
    cursor: pointer;
}

.dateDefault {
    line-height: 47px;
    height: 47px;
    background-color: #f1f1f1;
    width: 100%;
    border-radius: 10px;
    padding-left: 55px;
    font-size: 16px;
    position: relative;
}


.personsDropdown {
    position: absolute;
    width: 275px;
    display: none;
    z-index: 1;
}

.persons:last-child {
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
}

.persons {
    line-height: 47px;
    height: 47px;
    font-size: 16px;
    padding-left: 25px;
    width: calc(100% - 25px);
    background-color: #f1f1f1;
}

.persons:hover {
    background-color: black;
    color: white;
}

.personDefault {
    line-height: 47px;
    height: 47px;
    background-color: #f1f1f1;
    width: 100%;
    border-radius: 10px;
    padding-left: 55px;
    font-size: 16px;
    position: relative;
}

.personWrapper.active .personDefault {
    border-radius: 0px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.personWrapper.active .personsDropdown {
    display: block;
}


.personWrapper {
    position: relative;
    width: 220px;
    cursor: pointer;
}

.personDefault:after {
    content: '';
    display: inline-block;
    vertical-align: top;
    width: 9px;
    height: 6px;
    position: absolute;
    right: 20px;
    top: 51%;
    margin: -2px 0 0;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgOSA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA5IDY7IiB4bWw6c3BhY2U9InByZXNlcnZlIj48c3R5bGUgdHlwZT0idGV4dC9jc3MiPi5zdDB7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7fTwvc3R5bGU+PHRpdGxlPlBhZ2UgMTwvdGl0bGU+PGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+PGcgaWQ9ImNhcnQiPjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKC04NTguMDAwMDAwLCAtNzUyLjAwMDAwMCkiPjxnIGlkPSJjaGVja291dC1lbXB0eSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNTYyLjAwMDAwMCwgMTUzLjAwMDAwMCkiPjxnIGlkPSJwYXltZW50IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMy4wMDAwMDAsIDU1OC4wMDAwMDApIj48cG9seWdvbiBpZD0iUGFnZS0xIiBjbGFzcz0ic3QwIiBwb2ludHM9IjI3Miw0MSAyNjcuNSw0NyAyNjMsNDEgIi8+PC9nPjwvZz48L2c+PC9nPjwvc3ZnPg==);
    pointer-events: none;
    opacity: .6;
}

.personDefault:before {
    width: 25px;
    height: 15px;
    content: '';
    background: url('../img/iconPersons.png') no-repeat;
    background-size: contain;
    display: block;
    float: left;
    position: absolute;
    left: 17px;
    top: 17px;
    opacity: .6;
}








.zoneDropdown {
    position: absolute;
    width: 275px;
    display: none;
    z-index: 1;
}

.zone:last-child {
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
}

.zone {
    line-height: 47px;
    height: 47px;
    font-size: 16px;
    padding-left: 25px;
    width: calc(100% - 25px);
    background-color: #f1f1f1;
}

.zone:hover {
    background-color: black;
    color: white;
}

.zoneDefault {
    line-height: 47px;
    height: 47px;
    background-color: #f1f1f1;
    width: 100%;
    border-radius: 10px;
    padding-left: 55px;
    font-size: 16px;
    position: relative;
}

.zoneWrapper.active .zoneDefault {
    border-radius: 0px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.zoneWrapper.active .zoneDropdown {
    display: block;
}


.zoneWrapper {
    position: relative;
    width: 220px;
    cursor: pointer;
}

.zoneDefault:after {
    content: '';
    display: inline-block;
    vertical-align: top;
    width: 9px;
    height: 6px;
    position: absolute;
    right: 20px;
    top: 51%;
    margin: -2px 0 0;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgOSA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA5IDY7IiB4bWw6c3BhY2U9InByZXNlcnZlIj48c3R5bGUgdHlwZT0idGV4dC9jc3MiPi5zdDB7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7fTwvc3R5bGU+PHRpdGxlPlBhZ2UgMTwvdGl0bGU+PGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+PGcgaWQ9ImNhcnQiPjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKC04NTguMDAwMDAwLCAtNzUyLjAwMDAwMCkiPjxnIGlkPSJjaGVja291dC1lbXB0eSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNTYyLjAwMDAwMCwgMTUzLjAwMDAwMCkiPjxnIGlkPSJwYXltZW50IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMy4wMDAwMDAsIDU1OC4wMDAwMDApIj48cG9seWdvbiBpZD0iUGFnZS0xIiBjbGFzcz0ic3QwIiBwb2ludHM9IjI3Miw0MSAyNjcuNSw0NyAyNjMsNDEgIi8+PC9nPjwvZz48L2c+PC9nPjwvc3ZnPg==);
    pointer-events: none;
    opacity: .6;
}

.zoneDefault:before {
    width: 25px;
    height: 15px;
    content: '';
    background: url('../img/iconZone.png') no-repeat;
    background-size: contain;
    display: block;
    float: left;
    position: absolute;
    left: 17px;
    top: 17px;
    opacity: .6;
}






.datepicker {
    position: absolute;
    opacity: 0;
    margin-top: 25px;
}

h1 {
    color: black;
    letter-spacing: 1px;
    font-size: 30px;
    font-family: 'anglecia';
    line-height: 45px;
    margin-bottom: 20px;
}

.time {
    padding: 8px 0;
    text-align: center;
    width: 90px;
    background-color: #f1f1f1;
    display: inline-block;
    text-decoration: none;
    margin: 0 6px 13px 0;
    font-family: 'lato';
    border-radius: 6px;
    cursor: pointer;
}

.time.active {
    background-color: black;
    color: white;
}

.inputWrap input {
    width: 400px;
    border-radius: 10px;
    line-height: 47px;
    height: 47px;
    border: 0px;
    background-color: #f1f1f1;
    font-size: 16px;
    padding-left: 20px;
    font-family: 'lato';
}

.inputWrap input::placeholder {
    color: #5d696c;
}

input {
    outline: none;
}

.formLabel {
    font-size: 13px;
    width: 100%;
    display: block;
}

.content {
    width: 980px;
    padding-left: 35px;
}

.logo {
    display: block;
    width: 225px;
}

.logo img {
    width: 100%;
    height: auto;
}

@font-face {
    font-family: 'lato';
    src: url('../fnt/lato.ttf');
}

@font-face {
    font-family: 'anglecia';
    src: url('../fnt/anglecia.otf');
}

@font-face {
    font-family: 'gt';
    src: url('../fnt/gt.otf');
}


a {
    color: #5d696c;
}

body {
    font-family: 'lato';
    letter-spacing: 1px;
    line-height: 1.8em;
    color: #5d696c;
    font-size: 15px;
    width: 100%;
    position: relative;
    z-index: 0;
    margin: 0px;
    padding: 0px;


}

.bg {
    margin-top: 50px;
    background-size: 51px auto;
    position: relative;
    float: left;
    width: 100%;
    min-height: calc(100vh - 50px);
}


.clear {
    clear: both;
    height: 0px;
}

.clear-10 {
    clear: both;
    height: 10px;
}

.clear-15 {
    clear: both;
    height: 15px;
}

.clear-20 {
    clear: both;
    height: 20px;
}

.clear-25 {
    clear: both;
    height: 25px;
}

.clear-30 {
    clear: both;
    height: 30px;
}

.clear-40 {
    clear: both;
    height: 40px;
}

.clear-50 {
    clear: both;
    height: 50px;
}

.clear-60 {
    clear: both;
    height: 60px;
}

.clear-70 {
    clear: both;
    height: 70px;
}

.clear-80 {
    clear: both;
    height: 80px;
}

.clear-90 {
    clear: both;
    height: 90px;
}

.clear-100 {
    clear: both;
    height: 100px;
}

.clear-110 {
    clear: both;
    height: 110px;
}

.clear-120 {
    clear: both;
    height: 120px;
}

.clear-130 {
    clear: both;
    height: 130px;
}

.clear-140 {
    clear: both;
    height: 140px;
}

.clear-150 {
    clear: both;
    height: 150px;
}

.clear-160 {
    clear: both;
    height: 160px;
}


.clear-170 {
    clear: both;
    height: 170px;
}


.clear-180 {
    clear: both;
    height: 180px;
}


.clear-190 {
    clear: both;
    height: 190px;
}

.clear-200 {
    clear: both;
    height: 200px;
}

.clear-210 {
    clear: both;
    height: 210px;
}

.clear-220 {
    clear: both;
    height: 220px;
}

.clear-230 {
    clear: both;
    height: 230px;
}

.clear-240 {
    clear: both;
    height: 240px;
}

.clear-250 {
    clear: both;
    height: 250px;
}


.mobile-only {
    display: none;
}

.desktop-only {
    display: block;
}

input {
    -webkit-appearance: none;
}

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

    .step3ImageSuccess {
        width: 100%;
    }

    .loadingLink {
        width: 100%;
        margin-top: 15px;
    }

    .loadingHeader {
        width: 100%;
    }

    .ladingImg {
        height: 200px;
        width: 100%;
    }
}


.timeWrapper {
    width: 720px;
}


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

    .timeWrapper {
        width: 100%;
    }

    .phoneInfo {
        width: 100%;
    }

    .inputWrapPhone input {
        width: calc(100% - 20px) !important;
    }


    .info br {
        display: none;
    }

    .step3Image {
        width: 250px;
    }



    .loadingBlocksWrapper {
        height: unset;
    }

    .btnBook {
        width: 55% !important;
        margin-left: 0px;
        float: right;
    }

    .step2 .btnBack {
        width: 40%;
    }

    .inputWrap input {
        width: calc(100% - 20px);
    }


    .inputWrapPhone {
        width: calc(100% - 40px);
        padding: 25px 20px;
    }

    .btn {
        width: 150px;
        height: 50px;
        line-height: 50px;
    }


    .time {
        width: 68px;
        font-size: 13px;
        margin: 0 6px 8px 0;
    }

    body {
        font-size: 14px;
    }



    .zoneDefault:before {
        width: 23px;
        height: 13px;
    }

    .zoneDefault {
        font-size: 14px;
        padding-left: 50px;
    }

    .zone {
        font-size: 15px;
    }

    .zoneWrapper {
        width: calc(100% - 50px);
    }

    .zoneDropdown {
        width: calc(100% + 50px);
    }



    .dateDefault:before {
        width: 29px;
        height: 17px;
        left: 15px;
    }

    .personDefault:before {
        width: 23px;
        height: 13px;
    }

    .personDefault,
    .dateDefault {
        font-size: 14px;
        padding-left: 50px;
    }

    .persons {
        font-size: 15px;
    }

    .personWrapper {
        width: calc(100% - 50px);
    }

    .personsDropdown {
        width: calc(100% + 50px);
    }

    .dateWrapper {
        width: calc(100% - 50px);
    }

    .secondRow {
        width: 100%;
        margin-left: 0px;
        margin-top: 10px;
    }


    .lastRow {
        width: 100%;
        margin-left: 0px;
        margin-top: 10px;
    }

    .logo {
        width: 200px;
        margin: 0 auto;
    }

    .firstRow {
        float: left;
        width: 100%;
    }

    .content {
        width: 90%;
        padding-left: 0px;
        margin: 0 auto;
    }


    .mobile-only {
        display: block;
    }

    .desktop-only {
        display: none;
    }
}

@media screen and (max-width: 920px) {
    .tableWrapper {
        height: 600px;
    }

    .iframeStatus {
        height: 520px;
    }
}

@media screen and (max-width: 610px) {
    .tableWrapper {
        height: 620px;
    }
}

@media screen and (max-width: 608px) {
    .tableWrapper {
        height: 650px;
    }
}


@media screen and (max-width: 520px) {
    .tableWrapper {
        height: 700px;
    }

    .iframeStatus {
        height: 620px;
    }
}



@media screen and (max-width: 435px) {
    .tableWrapper {
        height: 800px;
    }

}

@media screen and (max-width: 345px) {
    .tableWrapper {
        height: 900px;
    }

    .iframeStatus {
        height: 720px;
    }
}
