@font-face {
    font-family: 'Ivy Mode';
    src: url('../fonts/IvyMode-Regular.eot');
    src: local('Ivy Mode Regular'), local('IvyMode-Regular'), url('../fonts/IvyMode-Regular.eot') format('embedded-opentype'), url('../fonts/IvyMode-Regular.woff2') format('woff2'), url('../fonts/IvyMode-Regular.woff') format('woff'), url('../fonts/IvyMode-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Ivy Mode';
    src: url('../fonts/IvyMode-Bold.eot');
    src: local('Ivy Mode Bold'), local('IvyMode-Bold'), url('../fonts/IvyMode-Bold.eot') format('embedded-opentype'), url('../fonts/IvyMode-Bold.woff2') format('woff2'), url('../fonts/IvyMode-Bold.woff') format('woff'), url('../fonts/IvyMode-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Ivy Mode';
    src: url('../fonts/IvyMode-SemiBold.eot');
    src: local('Ivy Mode SemiBold'), local('IvyMode-SemiBold'), url('../fonts/IvyMode-SemiBold.eot') format('embedded-opentype'), url('../fonts/IvyMode-SemiBold.woff2') format('woff2'), url('../fonts/IvyMode-SemiBold.woff') format('woff'), url('../fonts/IvyMode-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'August Script';
    src: url('../fonts/AugustScriptBoldFree.ttf');
    src: local('August Script'), local('August Script'), url('../fonts/AugustScriptBoldFree.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

* {
    font-family: 'Work Sans', sans-serif;
	font-family: 'Inconsolata', monospace;
	font-family: 'Inter', sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Ivy Mode', sans-serif;
}

.container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
    width: 100%;
}

.container.small {
    max-width: 900px;
}

.mobile {
    display: none !important;
}


/*-------------HEADER---------------*/

#reserve_time_cst .times {
    display: flex;
    flex-direction: column;
    height: 360px;
    overflow-y: scroll;
}

#reserve_time_cst .times::-webkit-scrollbar {
    width: 5px;
}

/* Track */
#reserve_time_cst .times::-webkit-scrollbar-track {
    background: white;
}

/* Handle */
#reserve_time_cst .times::-webkit-scrollbar-thumb {
    background: black;
}

.booking_count {
    margin-top: 0 !important;
}

#reserve_time_cst .times .time {
    margin: 10px;
    list-style: none;
    position: relative;
    padding: 13px 10px;
    font-weight: 400;
    vertical-align: top;
    height: 52px;
    border: 1px solid var(--primary-color-level2, rgba(0, 162, 255, 0.5)) !important;
    font-size: 16px;
    transition: all .3s ease;
    border-color: transparent !important;
    border-radius: 0;
    color: #000;
    background: rgba(0, 162, 255, 0.05);
}

#date-and-time {
    cursor: pointer;
    display: flex;
    align-items: flex-start;
}

#date-and-time #reserve_date {
    margin-right: 20px;
}

#reserve_time_cst .active {
    background: #000 !important;
    border-color: transparent !important;
    color: #fff !important;
}

.header__list {
    display: none;
}

.header {
    background: #000000;
    position: fixed;
    width: 100%;
    left: 0;
    top: 0;
    padding: 15px 0;
    z-index: 15151555555555555555555;
}

#open_calendar {
    margin-bottom: 20px;
    margin-top: 10px;
}

.active-imp {
    display: block !important;
}

.header__box {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.logo__link {
    display: block;
}

.reserve__btn {
    background: transparent;
    color: #FFFFFF;
    font-size: 16px;
    line-height: 1;
    padding: 8px 15px;
    border: 2px solid #FFFFFF;
    display: inline-block;
    position: relative;
    overflow: hidden;
    transition: all .3s ease;
}

.reserve__btn:hover {
    color: #222;
}

.reserve__btn::after {
    height: 100%;
    left: -35%;
    top: 0;
    transform: skew(50deg);
    transition-duration: 0.6s;
    transform-origin: top left;
    width: 0;
    background: #fff;
    content: '';
    position: absolute;
    z-index: -1;
}

.reserve__btn:hover:after {
    height: 100%;
    width: 135%;
}

.header__burger {
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    background: transparent;
    display: flex;
    align-items: center;
    z-index: 555555;
    margin-bottom: -5px;
}

.burger__box {
    display: block;
    width: 45px;
    height: 32px;
    position: relative;
}

.burger__box span {
    display: block;
    background: #fff;
    height: 2px;
    border-radius: 2px;
    transition: all .3s ease;
    position: absolute;
    margin-bottom: 5px;
    width: 45px;
}

.burger__box:hover span:nth-child(1) {
    width: 45px;
}

.burger__box:hover span:nth-child(2) {
    width: 35px;
}

.burger__box:hover span:nth-child(3) {
    width: 25px;
}

.burger__box.active span:nth-child(1) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 13px
}

.burger__box.active span:nth-child(2) {
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transition-duration: 50ms;
    transition-duration: 50ms
}

.burger__box.active span:nth-child(3) {
    top: 13px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.burger__box.active:hover span {
    width: 45px !important;
}

.burger__box span:nth-child(1) {
    top: 0;
    left: 0
}

.burger__box span:nth-child(2) {
    top: 13px;
    left: 0
}

.burger__box span:nth-child(3) {
    bottom: 0;
    left: 0
}

#header_menu {
    position: absolute;
    left: -200%;
    top: 0;
    width: 430px;
    background: #fff;
    height: 100vh;
    padding-top: 70px;
    transition: all .3s ease;
}

.header_menu_inner ul li {
    font-size: 28px;
    line-height: 36px;
    text-transform: uppercase;
    padding: 10px 40px;
}

.header_menu_inner ul li a {
    color: #000;
    font-weight: 600;
    transition: all .3s ease;
}

.header_nav a:hover:before {
    width: 40px;
    margin-right: 5px;
}

.header_nav a:before {
    content: "";
    width: 0;
    height: 2px;
    background: #000;
    display: inline-block;
    transition: all .3s ease;
}

.header_nav a {
    display: flex;
    align-items: center;
}

.header_menu_inner .btn {
    margin: 10px 40px 0;
}

#header_menu.active {
    left: 0;
}

.burger__box.active span {
    background: #000;
}

.header_container {
    padding: 0 40px;
}

.header_logo {
    color: #fff;
    font-size: 30px;
    font-family: 'SACRAMENTO', sans-serif;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.header .delivery {
    background: #ebebeb;
    margin: 30px 40px;
    border-radius: 15px;
    padding: 20px;
}

.header .delivery .container.small {
    padding: 0;
}

.header .delivery__title {
    font-size: 24px;
    max-width: 160px;
}

.header .delivery__block .desc {
    line-height: 1.2;
    margin-bottom: 10px;
    font-size: 16px;
    display: none;
}

.header .delivery_arrows {
    left: 58%;
    width: 66px;
}

.header .delivery__icon {
    display: block;
    width: 70px;
    margin-right: 0;
    margin-left: auto;
}

.header .delivery__icon img {
    max-width: 70px;
}

.header .delivery_arrows .arrow {
    width: 15px;
    height: 15px;
}


/*-------------MAIN----------------*/

.intro_logo {
    width: 200px;
    height: 200px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.site_title {
    font-size: 120px;
    line-height: 160%;
    color: #FFFFFF;
    font-family: 'Sacramento', cursive;
}

.title {
    font-size: 36px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 1px;
    padding: 10px 15px;
    background: #D1DCE5;
    display: inline-block;
    color: #262626;
    margin-bottom: 30px;
}

.title span {
    font-size: 36px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.8px;
    font-family: 'Work Sans', sans-serif;
}

.subtitle {
    font-family: 'Sacramento', cursive;
    color: #262626;
    font-size: 36px;
    line-height: 1;
    letter-spacing: -0.8px;
}

.desc {
    color: #262626;
    font-size: 18px;
    line-height: 29px;
    margin: 35px 0 35px;
    max-width: 535px;
}

.btn {
    border: 1px solid #000000;
    font-size: 16px;
    font-weight: 400;
    font-family: 'Work Sans', sans-serif !important;
    line-height: 1;
    color: #030303;
    padding: 10px 30px;
    background: transparent;
    display: inline-block;
    transition: all .3s ease;
    position: relative;
    overflow: hidden;
    z-index: 1;
    text-transform: uppercase;
}

button.btn_prev.btn_nav.btn {
    visibility: hidden;
}

.btn:hover {
    color: #fff;
}

.btn:after {
    height: 120%;
    left: -35%;
    top: -9px;
    transform: skew(45deg);
    transition-duration: 0.6s;
    transform-origin: top left;
    width: 0;
    background: #000;
    content: '';
    position: absolute;
    z-index: -1;
}

.btn:hover:after {
    height: 150%;
    width: 150%;
}

.main__box {
    display: flex;
    height: 100%;
    background-color: #EEF2ED;
}

.main__section.reverse .main__box {
    flex-direction: row-reverse;
}

.main__block {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 60px;
    margin: auto;
}

.main__section {
    height: calc(100vh - 66px);
}

.img__box {
    margin: 0;
    background-size: cover;
    background-position: center;
}

.reverse__box {
    flex-direction: row-reverse;
}

.main__slider .slick-arrow {
    background: transparent;
    position: absolute;
    bottom: 0;
}

.main__slider .slick-arrow.slick-prev {
    right: 112px;
}

.main__slider .slick-arrow.slick-next {
    right: 40px;
}

.our__best {
    text-align: center;
    overflow: hidden;
    min-height: calc(100vh - 66px);
    padding: 70px 0 40px;
    background-size: cover;
    background-position: center;
}

.our__best .title {
    margin-bottom: 60px;
}

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

.best__block {
    flex: 0 0 33%;
    max-width: 33%;
    padding: 50px 40px;
    text-align: left;
}

.best__block .desc {
    margin-bottom: 0;
    margin-top: 10px;
}

.color1 {
    background: #D5DDDB;
}

.color2 {
    background: #EBE9E7;
}

.best__block .subtitle {
    text-align: left;
    padding: 20px 0;
    font-family: 'Ivy Mode', sans-serif;
    border: none;
    font-size: 38px;
    line-height: 130%;
    letter-spacing: -0.9px;
    color: #000000;
}

.border__bottom {
    border-bottom: 3px solid #000000;
}

.email__inp::placeholder {
    color: #262626;
    opacity: 1;
}

.email__inp:-ms-input-placeholder {
    color: #262626;
}

.email__inp::-ms-input-placeholder {
    color: #262626;
}

.subrscibe__form {
    display: flex;
    justify-content: space-between;
    position: relative;
    align-items: center;
    max-width: 1280px;
    padding: 65px 40px;
    margin: 0 auto;
    width: 100%;
}

.delivery__icon:hover {
    transform: scale(1.01);
    box-shadow: 0 0 11px 0 rgb(0 0 0 / 30%);
    border-radius: 22px;
}

.delivery__icon {
    transition: all .3s ease;
}

.delivery_arrows {
    position: absolute;
    top: 50%;
    right: 170px;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
}

.delivery_arrows .arrow {
    width: 20px;
    height: 20px;
    background-size: contain;
    background: url(../img/right-arrow.svg) no-repeat;
    animation: mig 2s ease infinite;
    transition: all .3s ease;
    opacity: .5
}

.delivery_arrows .arrow:nth-child(2) {
    animation-delay: .25s;
}

.delivery_arrows .arrow:nth-child(3) {
    animation-delay: .5s;
}

@keyframes mig {
    0% {
        opacity: .5
    }
    100% {
        opacity: 1;
    }
}

.form__text {
    text-align: left;
}

.form__title {
    color: #262626;
    font-size: 48px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: -0.5px;
    font-family: 'Work Sans', sans-serif;
}

.form__text .desc {
    margin: 10px 0 0;
}

.email__inp {
    display: block;
    line-height: 1;
    margin-bottom: 20px;
    font-size: 18px;
    padding: 10px;
    border-bottom: 3px solid #000000;
    color: #000;
}

.form__inp__box {
    text-align: left;
}

.logo__desc {
    color: #FFFFFF;
    font-size: 22px;
    line-height: 35px;
    margin-top: 50px;
}

.intro {
    position: relative;
    background-size: cover;
    background-position: center;
    height: calc(100vh - 66px);
    overflow: hidden;
    margin-top: 66px;
}

.intro_video {
    position: absolute;
    min-height: 100%;
    min-width: 100%;
    background-position: center;
    background-size: cover;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
}

.intro .container {
    position: relative;
    z-index: 55;
}

.logo__box {
    height: calc(100vh - 66px);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    position: relative;
}

.main__section.color_0 .main__box .title {
    background: #D5DDDB;
    text-transform: uppercase;
}

.main__section.color_1 .main__box {
    background-color: #EFF2ED;
}

.main__section.color_1 .main__box .title {
    background: #E3E0DC;
}

.main__section.color_2 .main__box {
    background-color: #EDF0F2;
}

.main__section.color_2 .main__box .title {
    background: #D1DCE5;
}

.logo__box img {
    width: 960px;
    height: 205px;
}

.intro:before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgb(0 0 0 / 60%);
    z-index: 1;
}

.form__box {
    display: flex;
    justify-content: center;
    background: #fff;
    padding-bottom: 15px;
}

.footer__title {
    color: #000000;
    font-family: 'Work Sans', sans-serif;
    font-size: 26px;
    font-weight: 600;
}

ul.footer__list.icon__list img {
    max-width: 35px;
}

.icon__list {
    display: flex;
    align-items: center;
    margin: 0 -5px;
}

.footer__list a {
    color: #262626;
    font-family: 'Work Sans', sans-serif;
    font-size: 18px;
}

.footer__box {
    position: relative;
    display: flex;
    background: #EBE9E7;
}

.left__box {
    flex: 0 0 60%;
    max-width: 1000px;
    padding: 50px 40px;
    background: #F2F5F4;
}

.footer__box .btn {
    padding: 10px 20px;
    font-size: 18px;
    margin-right: 50px;
}

.left__item {
    display: flex;
    margin: 20px 0;
    justify-content: space-between;
    align-items: center;
}

.right__title {
    color: #000000;
    font-family: Sacramento, sans-serif;
    font-size: 48px;
    margin: 20px 0;
    height: 42px;
}

.right__list a {
    color: #262626;
    font-size: 24px;
    line-height: 1;
}

.right__list li {
    margin-bottom: 30px;
}

.right__list li:last-child {
    margin-bottom: 0;
}

.footer__list {
    max-width: 280px;
    width: 100%;
    padding: 20px 0;
    font-size: 18px;
    line-height: 1;
    color: #262626;
}

.footer__list li {
    margin-bottom: 5px;
}

.icon__list li {
    padding: 0 5px;
}

.right__box {
    flex: 1 1 auto;
    padding-left: 75px;
    padding-top: 50px;
    position: relative;
    z-index: 2;
}

.right__list {
    max-width: 280px;
    padding-top: 20px;
    position: relative;
    z-index: 5555;
}

.logo__link {
    font-size: 38px;
    color: #040404;
    text-decoration: none !important;
    font-family: Sacramento, sans-serif;
}

.copy__right {
    color: #FFFFFF;
    font-size: 16px;
    line-height: 1;
    padding: 15px 0;
    text-align: center;
    background: #000;
}

.copy__right a {
    color: #EDF0F2;
    display: flex;
    justify-content: center;
    align-items: center;
}

.copy__right a img {
    margin-left: 5px;
}

.footer__img {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 30%;
    height: 70%;
    text-align: right;
    z-index: 1;
}

.index__header .logo__link {
    display: none;
}

.story__subtitle {
    margin: 70px 0;
}

.founder__desc {
    color: #262626;
    font-size: 24px;
    line-height: 31px;
    text-align: center;
    font-weight: 500;
    max-width: 1000px;
    margin: 0 auto 50px;
}

.founder__name {
    font-size: 24px;
    font-weight: 300;
    line-height: 31px;
    text-align: center;
    color: #262626;
}

.founder__box {
    background: #EFF2ED;
    padding: 60px 100px 50px;
}

.founder {
    padding: 75px 0 80px;
    background-size: cover;
    background-position: center;
}

.delivery__title {
    color: #262626;
    font-size: 48px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: -0.5px;
    font-family: 'Work Sans', sans-serif;
    text-transform: uppercase;
}

.delivery__icon img {
    max-width: 100px;
}

.delivery__block .desc {
    margin: 10px 0 0;
}

.delivery__box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}

.delivery {
    padding: 60px 0;
}


/* Our Menu  START */

.main__section.without_header {
    margin-top: 66px;
}

.menu__titles {
    color: #262626;
    font-size: 30px;
    line-height: 1;
    letter-spacing: -0.8px;
    box-sizing: border-box;
    flex: 0 0 33.33%;
    max-width: 33.33%;
    text-align: center;
    padding: 24px 0;
    cursor: pointer;
}

.menu__titles[data-category="0"],
.menu__block[data-category="0"] {
    background: #DDE4E7;
}

.menu__titles[data-category="1"],
.menu__block[data-category="1"] {
    background: #D4DDDA;
}

.menu__titles[data-category="2"],
.menu__block[data-category="2"] {
    background: #EBE9E7;
}

button.menu__btn.active {
    background: #000;
    color: #fff;
}

.menu__btn {
    color: #363636;
    font-size: 18px;
    font-weight: 600;
    line-height: 1;
    padding: 15px 20px;
    border: 1px solid #363636;
    margin-right: 20px;
    background: transparent;
}

.menu__item__title {
    color: #000000;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    font-family: 'Work Sans', sans-serif;
    margin-bottom: 15px;
}

.menu__ingredients {
    color: #000000;
    font-size: 21px;
    line-height: 1;
}

.menu__item__price {
    color: #000000;
    font-size: 25px;
    line-height: 1;
}

.menu__titles__box {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    position: relative;
    z-index: 5555555;
}

.dinner__menu {
    background: #DDE4E7;
}

.dessert__menu {
    background: #D4DDDA;
}

.drinks__menu {
    background: #EBE9E7;
}

.menu__block {
    padding: 25px 20px;
    flex-direction: column;
    display: none;
}

.menu__block.active {
    display: block;
    z-index: 55555;
    position: relative;
}

.menu__buttons__box {
    margin-bottom: 50px;
    display: flex;
}

.menu__item {
    flex: 0 0 33.33%;
    max-width: 33.33%;
    display: flex;
    margin: 15px 0;
    align-items: center;
    padding: 0 15px;
}

.menu__body {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px;
}

.menu__ingredients span {
    margin: 0 5px 5px;
    position: relative;
    border-left: 2px solid #000;
    padding-left: 5px;
    display: inline-block;
}

.menu__item__text {
    margin-right: 30px;
}

.dinner__block.active {
    background: #DDE4E7;
}

.dessert__block.active {
    background: #D4DDDA;
}

.drinks__block.active {
    background: #EBE9E7;
}


/* Our Menu  END */


/* Calendar START */


#booking_popup {
    z-index: 999999999999999999;
    position: absolute;
    right: -200%;
    top: 0;
    background: #fff;
    height: 100vh;
    transition: all .3s ease;
    min-width: 680px;
    max-width: 680px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#booking_popup::-webkit-scrollbar-thumb,
.booking_popup_inner::-webkit-scrollbar-thumb {
    display: none;
}

#booking_popup::-webkit-scrollbar,
.booking_popup_inner::-webkit-scrollbar {
    display: none;
}

#booking_popup.active {
    right: 0
}

.reserve__btn.active {
    color: #000;
    border-color: #000;
}

.booking_form_title {
    text-align: center;
    margin-bottom: 50px;
    font-size: 30px;
    font-family: 'Work Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 600;
}

.booking_steps_nav {
    display: flex;
    justify-content: center;
    position: relative;
    max-width: 200px;
    margin: 0 auto 50px;
}

.booking_steps_nav .step {
    width: 30px;
    height: 30px;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ebebeb;
    border-radius: 50%;
    margin: 0 20px;
    position: relative;
    z-index: 55;
    min-width: 30px;
}

.booking_steps_nav:before {
    content: '';
    position: absolute;
    left: 47px;
    width: calc(100% - 90px);
    height: 1px;
    top: 50%;
    background: #ebebeb;
}

.booking_steps_nav .step.current {
    background: #000;
    color: #fff;
}

.booking_count {
    background: #ebebeb;
    border-radius: 5px;
    padding: 20px;
    text-align: center;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: -20px auto 20px;
    flex-wrap: wrap;
}

.booking_count .booking_label {
    font-size: 18px;
}

.booking_count input {
    height: 30px;
    border-radius: 5px;
    padding: 0 10px;
    width: 100px;
    margin: 0 5px;
    font-size: 18px;
}

.qty_btn {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #000;
    color: #fff;
    font-size: 20px;
}

.booking_nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.booking_popup_inner {
    position: relative;
    z-index: 455555;
    width: 100%;
    height: 100%;
    padding: 70px 40px;
    overflow: auto;
}

.booking_step.active {
    display: block;
}

.booking_step[data-step="2"] {
    margin: 0 auto;
}

.booking_confirm_container {
    max-width: 350px;
    margin: 0 auto;
}

.booking_step {
    display: none;
    width: 100%;
}

#nk_message_block {
    position: fixed;
    bottom: 20px;
    right: 15px;
    max-width: 300px;
    z-index: 99999999999;
}

.nk_message {
    background: #000;
    color: #fff;
    font-weight: 600;
    padding: 10px 30px;
    line-height: 1;
    font-size: 14px;
    margin-bottom: 10px;
}

.nk_message.fail {
    background: #ff0000;
}

.nk_message.success {
    background: #68f75b;
}


textarea.booking_field {
    height: 100px;
    resize: none;
}

.booking_thank_you {
    text-align: center;
}

.booking_thank_you img {
    max-width: 150px;
    margin-bottom: 30px;
    width: 100%;
}

.booking_thank_you h2 {
    font-size: 24px;
    margin-bottom: 10px;
}

.btn_close_booking {
    position: absolute;
    top: 20px;
    left: 20px;
    width: 20px;
    height: 20px;
    background: url(../img/cancel.svg);
    opacity: .7;
    cursor: pointer;
    transition: all .3s ease;
    z-index: 99999999999999999;
}

.btn_close_booking:hover {
    opacity: 1;
}


/* Calendar END */


/* Menu Page START */

.menu_section {
    height: calc(100vh - 66px);
    background: #CAD1DA;
    margin-top: 66px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.menu_section_inner {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.menu_category {
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    cursor: pointer;
    transition: all .3s ease;
}

.menu_category.category_1 {
    width: 38vw;
    height: 38vw;
    bottom: 35px;
    left: 0;
    background-repeat: no-repeat;
}

.menu_cat_title {
    font-size: 1.4vw;
    line-height: 160%;
    width: 9.6vw;
    height: 9.6vw;
    border: 1px solid #363636;
    background: #E8E4E1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 0 5px #E8E4E1;
    position: absolute;
    transition: all .5s ease;
}

.menu_category.category_1 .menu_cat_title {
    top: -20px;
    left: 134px;
    position: absolute;
}

.menu_category.category_2 {
    top: -20px;
    width: 28vw;
    height: 28vw;
    right: 200px;
}

.menu_category.category_2 .menu_cat_title {
    top: 77px;
    left: -43px;
}

.menu_category.category_3 {
    width: 29vw;
    height: 29vw;
    bottom: -20px;
    right: 39%;
    background-position: bottom center;
}

.menu_category.category_4 {
    width: 30vw;
    height: 30vw;
    right: 0;
    bottom: -2.3vw;
}

.menu_category.category_4 .menu_cat_title {
    top: 5vw;
    left: 1.7vw;
}

.menu_category.category_3 .menu_cat_title {
    bottom: 46px;
    left: -10px;
}

.menu_asset {
    position: absolute;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    display: block;
}

.menu_asset_1.menu_asset {
    width: 29vw;
    height: 37vw;
    display: block;
    left: -2vw;
    top: -9vw;
}

.menu_asset_4.menu_asset {
    width: 7.2vw;
    height: 5.6vw;
    top: -1vw;
    left: 40%;
}

.menu_asset_3.menu_asset {
    width: 45vw;
    height: 23vw;
    top: -4vw;
    right: -11vw;
}

.menu_asset_2.menu_asset {
    width: 20vw;
    height: 21vw;
    bottom: 0;
    left: 50%;
    transform: rotate(9deg);
}

.menu_title {
    font-size: 55px;
    line-height: 130%;
    color: #262626;
    margin-top: -5vw;
}

.menu_popup {
    position: fixed;
    left: 50%;
    width: 90%;
    height: 80%;
    z-index: 99999999999999999;
    transform: translate(-50%, -50%);
    top: calc(50% + 33px);
    display: none;
}

.menu_popup_inner {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transition: all .3s ease;
}

.menu_gallery {
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
    height: 100%;
    background: #fff;
    transition: all .3s ease;
}

.menu_items {
    position: absolute;
    right: 0;
    top: 0;
    width: 50%;
    height: 100%;
    background: #fff;
    transition: all .3s ease;
    padding: 50px 30px;
}

.menu_popup.active .menu_gallery {
    left: 0;
}

.menu_popup.active .menu_items {
    right: 0;
}

.menu_close {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 25px;
    height: 25px;
    background: url(../img/cancel.svg);
    opacity: .5;
    transition: all .3s ease;
}

.menu_close:hover {
    opacity: 1;
}

.menu_subcats {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    border-bottom: 1px solid rgba(0, 0, 0, .3);
    margin: 0 -10px 20px;
    justify-content: center;
}

ul.menu_subcats li {
    margin: 10px 10px 0;
}

.menu_item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
}

.btn_subcat {
    background: transparent;
    font-size: 18px;
    transition: all .3s ease;
    border-bottom: 1px solid transparent;
    padding-bottom: 5px;
}

.menu_item_title {
    font-size: 18px;
    margin-bottom: 5px;
}

.menu_item_price {
    font-size: 20px;
}

.gallery_slide {
    height: 80vh;
    background-size: cover;
    background-position: center;
}

.btn_subcat:hover,
.btn_subcat.active {
    color: red;
}

.btn_subcat.active {
    border-color: red;
}

.menu_category:hover {
    transform: scale(1.03);
}

.subcat_desc {
    text-align: center;
    font-size: 14px;
    font-style: italic;
    margin-bottom: 20px;
}

.menu_item_option {
    font-size: 13px;
    font-style: italic;
    flex: 0 0 40%;
    margin: 0 10px;
    text-align: right;
}

.subcat_title {
    font-size: 25px;
    margin-bottom: 10px;
    font-weight: 600;
}

.menu_items_inner {
    height: 80%;
    overflow: auto;
    padding-right: 20px;
}

.menu_items_inner::-webkit-scrollbar-thumb {
    width: 2px;
    background: #000;
    border-radius: 2px;
}

.menu_items_inner::-webkit-scrollbar {
    width: 2px;
    background: transparent;
}

.menu_item_left {
    flex: 0 0 40%;
}

.price_labels {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 10px;
}

.price_labels span {
    flex: 0 0 15%;
    text-align: right;
    max-width: 15%;
}

.menu_item.wine .menu_item_left {
    flex: 0 0 70%;
    max-width: 70%;
}

.menu_item.wine .menu_item_option {
    display: none;
}

.menu_item.wine .menu_item_right {
    flex: 0 0 15%;
    text-align: right;
}


/* Menu Page END */


/* Contact PAGE START */

.contact_item {
    display: flex;
    color: #000;
    font-size: 24px;
    line-height: 1.2;
    align-items: center;
    margin-bottom: 15px;
    transition: all .3s ease;
}

.contact_item:hover {
    opacity: .8;
}

.contact_items {
    display: flex;
    flex-direction: column;
    margin-bottom: 50px;
}

.icon_phone {
    width: 30px;
    height: 30px;
    background-size: contain;
    background: url(../img/icons/phone.svg) no-repeat center;
    margin-right: 50px;
}

.icon_mail {
    width: 30px;
    height: 30px;
    background-size: contain;
    background: url(../img/icons/mail.svg) no-repeat center;
    margin-right: 50px;
}

#map {
    flex: 0 0 50%;
    max-width: 50%;
}

.title_accent {
    font-size: 36px;
    line-height: 130%;
    margin-bottom: 80px;
}

.icon_placeholder {
    width: 38px;
    height: 52px;
    display: block;
    margin-right: 30px;
    background-size: contain;
    background: url(../img/icons/placeholder.svg) no-repeat center;
}

.main__box.color_light_brown {
    background: #F2EDED;
}

.main__box.color_light_brown .contact_item {
    max-width: 400px;
}

.main__box.color_light_brown .contact_items {
    margin: 0;
}

.menu_category:hover .menu_cat_title {
    transform: translateY(-1.5vw);
}

.main__section.color_0 .main__box {
    background: #E9E9E9;
}


/*EVENTS*/

.events__img {
    position: absolute;
    right: 0;
    top: 0;
    max-width: 50%;
    height: 100%;
    width: 100%;
}

.events__form {
    max-width: 435px;
    margin-left: 60px;
}

.events__title {
    font-size: 50px;
    line-height: 1;
    letter-spacing: -0.8px;
    color: #262626;
    margin-bottom: 50px;
}

.events__inp {
    font-size: 15px;
    font-weight: 300;
    line-height: 19px;
    letter-spacing: -0.8px;
    color: #000;
    border: 2px solid #000000;
    display: block;
    width: 100%;
    padding: 15px 12px;
    margin: 5px 0;
    background: rgba(196, 196, 196, 0.2);
    resize: none;
}

.events__inp::placeholder {
    color: #9B9B9B;
    opacity: 1;
}

.events__inp:-ms-input-placeholder {
    color: #9B9B9B;
}

.events__inp::-ms-input-placeholder {
    color: #9B9B9B;
}

.events__form__box {
    max-width: 50%;
    text-align: left;
}

.inp__box {
    display: flex;
    margin: -5px -4px;
}

.inp__box .events__inp {
    margin: 5px 4px;
}

.events__main {
    background: #F1E9E5;
}

.events {
    min-height: calc(100vh - 66px);
    display: flex;
    align-items: center;
    margin-top: 0 !important;
    position: relative;
    margin-bottom: 100px;
    background: #fff;
}

.events__select {
    color: #9B9B9B;
    font-size: 15px;
    font-weight: 300;
    line-height: 19px;
    letter-spacing: -0.8px;
    text-align: left;
    padding: 8px 25px 8px 12px;
    appearance: none;
    -webkit-appearance: none;
    background: none;
}

.events__area {
    padding: 25px 12px 15px;
}

.events__btn {
    color: #040404;
    font-size: 15px;
    font-weight: 600;
    line-height: 19px;
    letter-spacing: -0.8px;
    padding: 10px 50px;
    background: #D9C8B8;
    border: 1px solid #000000;
    margin-top: 20px;
    transition: all .3s ease;
}

.select__box {
    background: rgba(196, 196, 196, 0.2);
    position: relative;
}

.select__box:before {
    width: 7px;
    content: '';
    background-image: url(../img/Vector.svg);
    background-size: 7px 10px;
    background-position: center right;
    background-repeat: no-repeat;
    height: 10px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}

.events__img img {
    height: 100%;
    max-width: 100%;
    width: 100%;
}

.events__btn:hover {
    background: #c5af99;
}

.tablet {
    display: none !important;
}

.main__item .title {
    text-transform: uppercase;
}


/* Contact PAGE END */


/* Event-2 */

.event__intro__box {
    height: calc(100vh - 66px);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.event_2_main {
    padding-top: 66px;
    background: rgba(223, 216, 209, 0.7);
}

.event__intro__block {
    font-size: 36px;
    line-height: 39px;
    letter-spacing: -0.8px;
    color: #000;
    font-weight: 500;
    padding: 10px;
    background: #E2DCCD;
    margin-left: -10px;
}

.event__intro__block_2 {
    font-size: 24px;
    line-height: 31px;
    letter-spacing: -0.8px;
    text-align: left;
    margin-top: 30px;
    color: #000;
    filter: blur(1px);
}

.event__intro {
    background-size: cover;
    background-position: center;
    position: relative;
    display: flex;
    align-items: center;
}

.event__type__title a {
    font-family: 'Sacramento', cursive;
    font-size: 36px;
    line-height: 1.2;
    letter-spacing: -0.8px;
    color: #000;
}

.event__type__block {
    flex: 0 0 33.33%;
    max-width: 33.33%;
    padding: 10px 55px;
    text-align: center;
}

.event__type__box {
    margin: 0 -55px;
    display: flex;
    flex-wrap: wrap;
}

.event__type__item {
    border: 2px solid #3F3C3F;
    box-shadow: inset 0 4px 4px rgba(0, 0, 0, 0.25);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 40px 0 20px;
}

.event__type__img {
    margin-bottom: 35px;
    min-height: 213px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
}

.event__type {
    padding: 100px 0 0;
    overflow: hidden;
}

.event__type__img:before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 265px;
    height: 265px;
    background: radial-gradient(50% 50% at 50% 50%, #EDF0F2 0%, rgba(237, 240, 242, 0.729167) 83.85%, rgba(237, 240, 242, 0) 100%);
    border-radius: 50%;
    z-index: -1;
}

.event__type__desc {
    font-size: 25px;
    line-height: 32px;
    letter-spacing: -0.8px;
    text-align: center;
}

.menus__item {
    font-size: 25px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -0.8px;
    color: #000;
    display: block;
    text-align: center;
    padding: 15px 0;
    box-shadow: 0 4px 4px #3E3B3E;
}

.event__menus__box,
.bar__menus__box {
    display: flex;
}

.event__menus__title {
    font-size: 30px;
    line-height: 39px;
    letter-spacing: -0.8px;
    text-align: center;
    margin: 0 0 45px;
}

.menus__block {
    padding: 0 40px;
    flex: 0 0 33.33%;
    max-width: 33.33%;
}

.event__menus__box {
    margin-bottom: 45px;
}

.event__menus {
    padding: 0 0 100px;
}

.event__menus__box .menus__item {
    background: #D9C8B8;
}

.bar__menus__box .menus__item {
    background: #E2DCCD;
}

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

.event__silder__img {
    flex: 0 0 68%;
    max-width: 68%;
    min-height: 595px;
    background-size: cover;
    background-position: center;
}

.event__silder__title {
    font-size: 25px;
    font-weight: 600;
    line-height: 32px;
    letter-spacing: -0.8px;
    margin-bottom: 30px;
}

.event__silder__info {
    text-align: right;
}

.event__silder__guests {
    font-size: 25px;
    line-height: 1.2;
    letter-spacing: -0.8px;
    margin: 10px 0;
}

.event__silder__guests img {
    margin-right: 20px;
    display: unset;
}

.slide__next {
    background: transparent;
    margin-top: 100px;
}

.event__silder {
    padding: 0 0 100px;
}

.event__video__box {
    max-width: 275px;
    position: relative;
}

.video__text {
    position: absolute;
    bottom: 18px;
    font-family: 'Sacramento', cursive;
    font-size: 27px;
    left: 0;
    width: 100%;
    text-align: center;
}

#video__event {
    max-width: 100%;
    max-height: 100%;
    width: 260px;
    height: 474px;
    margin: auto 50px;
}

.event__intro__desc {
    color: #000;
    margin-top: 20px;
    line-height: 1.2;
    font-size: 18px;

    /* or 23px */
    text-align: center;
    letter-spacing: -0.9px;
}

.event__intro__image img {
    border: 10px solid #EFEFE5;
    border-bottom-style: none;
    display: block;
}

.event__intro__image {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 131px;
    margin-bottom: 10px;
    box-shadow: 0 8px 8px 0 #00000091;
}

.event__intro__image span {
    font-family: 'Sacramento', cursive;
    line-height: 1;
    text-align: center;
    display: block;
    width: 100%;
    background: #EFEFE5;
    padding: 10px 0;
}

.event__intro__item {
    display: flex;
    align-items: center;
}

.event__intro__item_1 {
    margin-right: 30px;
}

.event__intro__item_2 {
    margin-left: 30px;
}

.event__intro__image:last-child {
    margin: 0;
}

.balls img {
    width: 232px;
}

.baby__intro__img .event__intro__image {
    max-width: 160px;
}

.baby__intro__img {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-right: 100px;
}

.baby__shower .event__intro__desc {
    max-width: 730px;
}

.book {
    font-size: 25px;
    line-height: 1;
    letter-spacing: -0.8px;
    text-align: center;
    color: #000;
    background: linear-gradient(180deg, rgba(196, 195, 234, 0.3) 0%, rgba(222, 238, 247, 0.3) 23.44%, rgba(223, 218, 245, 0.282) 48.96%, rgba(85, 203, 233, 0.282) 75%, rgba(242, 242, 230, 0.6) 99.99%, rgba(196, 196, 196, 0.318) 100%);
    border-radius: 10px;
    padding: 15px 24px;
    display: inline-block;
    margin-top: 40px;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

.event__menu__box .event__menus__box,
.event__menu__box .bar__menus__box {
    display: block;
}

.event__menu__box .menus__block {
    padding: 10px 0;
    flex: 0 0 100%;
    max-width: 100%;
}

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

.event__menu__box {
    max-width: 350px;
    width: 100%;
}

.event__menu__box .menus__item {
    background: #F5E1F8;
}

.checklist__title {
    font-size: 30px;
    line-height: 1;
    letter-spacing: -0.8px;
    padding: 10px 15px;
    background: #E3E1F8;
    display: inline-block;
    margin-bottom: 40px;
}

.checklist__title span {
    font-family: 'Sacramento', cursive;
    font-size: 48px;
    line-height: 1;
}

.checklist__list label.check > span {
    min-width: 285px;
    margin-right: 10px;
    display: flex;
    align-items: center;
}

.checklist__list label.check > span > span {
    font-size: 20px !important;
    font-weight: 500 !important;
    line-height: 26px;
    letter-spacing: -0.8px;
    margin: 0;
}

.checklist__list input[type="text"] {
    padding: 10px 15px;
    background: #D1E9F4;
    border: 1px solid #3E3B3E;
    max-width: 132px;
}

.checklist__list input,
.checklist__list label span {
    font-size: 15px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.8px;
    min-width: unset;
    margin-left: 5px;
}

.checklist__list label {
    display: inline-flex;
    align-items: center;
}

.checklist__list li {
    margin-bottom: 40px;
    display: flex;
    align-items: center;
}

.checklist__list li:last-child {
    margin: 0;
}

.checklist {
    padding: 100px 0;
}

.checklist__list li .check > span:before {
    content: '';
    width: 24px;
    height: 24px;
    display: inline-block;
    border: 2px solid #3E3B3E;
    margin-right: 25px;
}

.checklist__list li img {
    margin-left: 5px;
}

.baby__shower {
    background: linear-gradient(180deg, rgba(209, 221, 223, 0.7) 0%, rgba(239, 225, 230, 0.7) 47.4%, rgba(245, 225, 248, 0.7) 100%);
}

.games__slide__title {
    font-size: 25px;
    line-height: 32px;
    letter-spacing: -0.8px;
    margin-bottom: 35px;
}

.games__slide__desc {
    font-size: 20px;
    font-weight: 500;
    line-height: 26px;
    letter-spacing: -0.8px;
}

.games__slide__desc p {
    margin-bottom: 20px;
}

.games__slide__desc p:last-child {
    margin: 0;
}

.event__games__desc {
    font-size: 20px;
    font-weight: 500;
    line-height: 26px;
    letter-spacing: -0.8px;
}

.event__games__slide .slick-arrow {
    position: absolute;
    right: 0;
    bottom: 100%;
    display: flex;
    align-items: center;
    font-size: 20px;
    font-weight: 500;
    line-height: 26px;
    letter-spacing: -0.8px;
    margin-bottom: 25px;
}

.event__games__slide .slick-prev {
    display: none;
}

.event__games__slide .slick-arrow span {
    margin-right: 10px;
}

.event__games__slide__item {
    padding: 35px 25px 50px;
    background: #DFECF2;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

.event__games__slide {
    margin-top: 105px;
}

.event__games {
    padding-bottom: 60px;
}

.booking {
    display: flex;
    align-items: center;
    margin-top: 60px;
}

.booking .book {
    margin: 0 0 0 35px;
}

.booking__title {
    font-family: 'Sacramento', cursive;
    font-size: 48px;
    line-height: 1;
}

.partners__list li:before {
    content: '';
    background-image: url(../img/VectorS.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 25px;
    height: 25px;
    display: inline-block;
    margin-right: 10px;
}

.portfolio__box {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.portfolio__block {
    min-height: 450px;
    flex: 0 0 65%;
    position: relative;
}

.portfolio {
    padding: 100px 0;
}

.portfolio__menu {
    flex: 0 0 25%;
    background: #ffb8b8;
    height: 100%;
}

.portfolio__list li {
    padding: 25px 15px;
    text-transform: uppercase;
    background: #DDE4E4;
    transition: all 1s ease;
    position: relative;
    z-index: 1;
    font-size: 25px;
    line-height: 1;
    letter-spacing: -0.8px;
}

.portfolio__list {
    height: 100%;
}

.portfolio__list li.active {
    border-right: none;
    border-left: none;
}

.portfolio__item.active {
    opacity: 1;
    pointer-events: unset;
    z-index: 3;
}

.portfolio__item {
    width: 100%;
    height: 100%;
    transition: opacity 1.5s ease;
    overflow: hidden;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    background: #EFF1F1;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
    padding: 30px 55px;
    pointer-events: none;
}

.next__item {
    padding: 15px 30px;
    font-size: 20px;
}

.img__box {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
}

.item__info__list {
    padding: 15px 20px;
    background: #150C0D;
    box-shadow: 0 4px 4px rgb(0 0 0 / 25%);
    display: none;
    opacity: 0;
    transition: all .3s ease;
    height: 122px;
    overflow: hidden;
}

.info__text {
    color: #fff;
    display: block;
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 900;
    line-height: 1.2;
}

.info__text:last-child {
    margin: 0;
}

.portfolio__item.active .item__info__list {
    display: block;
    opacity: 1;
}

.portfolio__list li a {
    color: #150C0D;
    font-family: 'Ivy Mode', sans-serif;
}

.portfolio__list li:before {
    content: '';
    left: 0;
    top: 0;
    position: absolute;
    width: 0;
    height: 100%;
    background: #BFDBE5;
    z-index: -1;
    transition: all .6s ease;
}

.portfolio__list li.active:before {
    width: 100%;
}

.partners__list li {
    display: flex;
    align-items: center;
    margin: 10px 0;
}

.partners {
    padding: 0 0 50px;
}

.partners__title {
    font-size: 30px;
    line-height: 39px;
    letter-spacing: -0.8px;
    display: inline-block;
    background: linear-gradient(180deg, rgba(209, 221, 223, 0.7) 0%, rgba(239, 225, 230, 0.7) 47.4%, rgba(245, 225, 248, 0.7) 100%);
    padding: 13px;
}

.partners__desc {
    font-size: 20px;
    font-weight: 500;
    line-height: 26px;
    letter-spacing: -0.8px;
    margin: 40px 0 50px;
}

.checklist__list li .check span:after {
    content: '';
    width: 14px;
    height: 14px;
    background: #3e3b3e;
    position: absolute;
    left: 10px;
    top: 6px;
    display: none;
}

label.check {
    position: relative;
}

.ckeckbox__inp {
    display: none;
}

.ckeckbox__inp:checked + span:after {
    display: block !important;
}

.overflow-hidden {
    overflow: hidden !important;
}

.xdsoft_datetimepicker {
    z-index: 99999999999999999;
    padding: 20px;
}


.controller_field {
    margin-bottom: 20px;
    font: 100%/1.414 "Open Sans", "Roboto", arial, sans-serif;
    position: relative;
}

.controller_field label {
    font-size: 18px;
    text-transform: uppercase;
    cursor: pointer;
    color: #55595c;
}

.booking_field {
    width: 100%;
    padding: 12px 10px;
    font-size: 18px;
    line-height: 1;
    color: #55595c;
    background-image: none;
    background-color: transparent;
    border: 0 solid #ccc;
    border-bottom-width: 0.0625rem;
    border-radius: 0;
}

.booking_field::placeholder {
    color: #ccc;
}

.booking_field:focus {
    border-color: #111;
}

[type=text] {
    color: #111;
}

[type=password] {
    color: #111;
}


.controller_field.icon_date:before {
    content: '\f073';
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    position: absolute;
    right: 5px;
    bottom: 12px;
    font-size: 20px;
    z-index: 1;
}


.controller_field.icon_time:before {
    content: '\f017';
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    position: absolute;
    right: 5px;
    bottom: 12px;
    font-size: 20px;
    background: #fff;
}


.phone_field {
    position: relative;
}

.iti.iti--allow-dropdown {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    z-index: 55;
}

input#book_phone_2 {
    padding-left: 50px;
}

.iti-mobile .iti--container {
    z-index: 888888888;
}

#reserve_date_val,
#reserve_time_val {
    cursor: pointer;
    appearance: none;
}


.booking_confirm_subtitle {
    font-size: 24px;
    margin-bottom: 30px;
    font-family: 'Work Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 500;
    text-align: center;
}

.confirm_data_label {
    display: block;
    text-transform: uppercase;
    font-size: 18px;
    margin-bottom: 7px;
}

.confirm_data_cont {
    margin-bottom: 15px;
}

.confirm_data_value {
    font-weight: 500;
    font-size: 18px;
}

button.btn_prev.btn_nav.btn.active {
    visibility: visible;
}


.form_loader {
    position: absolute;
    top: 50%;
    left: 50%;
    height: 100%;
    width: 100%;
    transform: translateX(-50%) translateY(-50%);
    z-index: 9999;
    background: rgba(255, 255, 255, .6);
    align-items: center;
    justify-content: center;
    display: none;
}

.form_loader_inner {
    position: absolute;
    top: 50%;
    left: 50%;
    height: 2rem;
    width: 2rem;
    transform: translate(-50%, -50%);
}

.form_loader_inner > .item {
    position: absolute;
    height: 2rem;
    width: 2rem;
    background: #000;
    -webkit-animation: move 2s linear infinite;
    animation: move 2s linear infinite;
}

.form_loader_inner > .item:nth-of-type(1) {
    top: -2rem;
    left: -2rem;
    -webkit-animation-delay: -1.75s;
    animation-delay: -1.75s;
}

.form_loader_inner > .item:nth-of-type(2) {
    top: -2rem;
    left: 0;
    -webkit-animation-delay: -1.5s;
    animation-delay: -1.5s;
}

.confirm_data_cont.confirm_icon .confirm_data_label {
    display: block;
    width: 70px;
    height: 100%;
    background: #000000 no-repeat center;
    margin: 0;
    background-size: 30%;
    border-radius: 8px 0 0 8px;
    border: 1px solid #000000;
    border-right: 0;
}


.confirm_data_cont.confirm_icon .confirm_data_value {
    flex: 1 1 auto;
}

.reserv_details_header {
    margin: 0 auto;
}

span.confirm_data_label.reserv_icon_date.reserv_icon {
    background-image: url(../img/icons/icon-date.svg);

}

span.confirm_data_label.reserv_icon_time.reserv_icon {
    background-image: url(../img/icons/icon-time.svg);
}

span.confirm_data_label.reserv_icon_guests.reserv_icon {
    background-image: url(../img/icons/icon-guests.svg);
}

.booking_confirm_body {
    background: #F2F2F2;
    border: 1px solid #000000;
    box-sizing: border-box;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
    border-radius: 8px;
    padding: 24px;
    margin-bottom: 50px;
}


.form_loader_inner > .item:nth-of-type(3) {
    top: -2rem;
    left: 2rem;
    -webkit-animation-delay: -1.25s;
    animation-delay: -1.25s;
}

.form_loader_inner > .item:nth-of-type(4) {
    top: 0;
    left: 2rem;
    -webkit-animation-delay: -1s;
    animation-delay: -1s;
}

.form_loader_inner > .item:nth-of-type(5) {
    top: 2rem;
    left: 2rem;
    -webkit-animation-delay: -0.75s;
    animation-delay: -0.75s;
}

.form_loader_inner > .item:nth-of-type(6) {
    top: 2rem;
    left: 0;
    -webkit-animation-delay: -0.5s;
    animation-delay: -0.5s;
}

.form_loader_inner > .item:nth-of-type(7) {
    top: 2rem;
    left: -2rem;
    -webkit-animation-delay: -0.25s;
    animation-delay: -0.25s;
}

.form_loader_inner > .item:nth-of-type(8) {
    top: 0;
    left: -2rem;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
}

@-webkit-keyframes move {
    0% {
        transform: rotate(0) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    10% {
        transform: rotate(90deg) scale(0);
    }
    50% {
        transform: rotate(90deg) scale(0);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    60% {
        transform: rotate(180deg) scale(1);
    }
    100% {
        transform: rotate(180deg) scale(1);
    }
}

@keyframes move {
    0% {
        transform: rotate(0) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    10% {
        transform: rotate(90deg) scale(0);
    }
    50% {
        transform: rotate(90deg) scale(0);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    60% {
        transform: rotate(180deg) scale(1);
    }
    100% {
        transform: rotate(180deg) scale(1);
    }
}

form#booking_form {
    position: relative;
}

form#booking_form.loading .form_loader {
    display: flex;
}

.confirm_data_cont.confirm_icon {
    display: flex;
    justify-content: center;
    width: 100%;
    border-radius: 8px;
    height: 50px;
    border-left: 0;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
}


.confirm_data_cont.confirm_icon .confirm_data_value {
    font-size: 18px;
    line-height: 1.5;
    /* or 187% */
    color: #191919;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #000000;
    border-radius: 0 8px 8px 0;
    font-weight: 500;
}

@media (max-width: 767px) {
    .booking_confirm_body {
        display: block;
        margin: 20px 0 30px !important;
        padding: 24px 20px;
    }

    .booking_step[data-step="2"],
    .booking_confirm_container {
        max-width: unset;
        width: 100%;
    }

    .confirm_data_cont.confirm_icon {
        justify-content: unset;
        height: 40px;
    }

    .confirm_data_value {
        font-size: 18px;
    }

    .confirm_data_cont.confirm_icon .confirm_data_label {
        width: 60px;
        min-width: 60px;
        height: 40px;
        font-size: 20px;
    }

    .desktop {
        display: none !important;
    }

    .confirm_data_cont.confirm_icon .confirm_data_value {
        font-size: 18px;
        white-space: nowrap;
    }

    .confirm_data_cont.confirm_icon .confirm_data_value.mobile {
        display: flex !important;
    }
}


input#reserve_date_val::placeholder {
    color: #55595c;
}

.booking_confirm_body .reserv_detail:last-child .confirm_data_cont {
    margin: 0;
}

label#booking_date_label {
    width: 100%;
    padding: 14px 10px;
    font-size: 18px;
    line-height: 1;
    color: #111;
    background-image: none;
    background-color: #fff;
    border: 0 solid #ccc;
    border-bottom-width: 0.0625rem;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: absolute;
    left: 0;
    bottom: 0;
    text-transform: unset;
}


.btn_next.btn_nav {
    background: #8DAA83;
}

.btn_cancel.btn_nav.btn {
    background: #d55026;
}

.event__games__slide .slick-track {
    display: flex;
}

.event__games__slide .slick-track .slick-slide {
    display: flex;
    height: auto;
}

/* News style */
.news__slide__title a,
.news__slide__title {
    display: block;
    font-size: 20px;
    line-height: 26px;
    letter-spacing: -0.8px;
    color: #fff;
    margin-bottom: 55px;
}

.news__slide__desc {
    font-size: 18px;
    font-weight: 500;
    line-height: 23px;
    letter-spacing: -0.8px;
    color: #fff;
    max-width: 450px;
}

.news__main {
    background: #5E5E5E;
    padding-top: 150px;
    padding-bottom: 50px;
}

.news__slide {
    border: 1px solid #FFFFFF;
    box-shadow: -7px 7px 7px #494949;
    padding: 55px 20px 30px;
    min-height: 400px;
    margin: 0 10px;
}

.container {
    max-width: 1280px;
    padding: 0 40px;
    margin: 0 auto;
    width: 100%;
}

.news__slider .slick-arrow {
    position: absolute;
    bottom: calc(100% + 15px);
    background: transparent;
}

.news__slider .slick-prev {
    right: 50px;
}

.news__slider .slick-next {
    right: 0;
}

.news__slider__box {
    margin: 0 -10px;
}

.news__slide__image__box {
    text-align: center;
    width: 100%;
    margin-top: 30px;
}

.news__slider_1 {
    margin-bottom: 130px;
}

.news__slide__image__box img {
    max-height: 300px;
    width: 100%;
}

.page_reservation #booking_popup {
    position: static;
    z-index: 2;
    margin: 0 auto;
    height: unset;
}

.page_reservation {
    padding: 120px 0 50px;
    background: #212121;
}

.page_reservation .btn_close_booking {
    display: none;
}

.thank_you_page {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 60px;
}

/*blog start*/
.long_block {
    display: flex;
    margin: 0 -10px;
    background: #FFFFFF;
    border: 1px solid #F5F5F5;
    border-radius: 5px;
    padding: 10px;
}

.long_img_box {
    flex: 0 0 40%;
    max-width: 40%;
    padding: 0 10px;
}

.long_item {
    flex: 0 0 60%;
    max-width: 60%;
    padding: 0 10px;
    display: flex;
    flex-direction: column;
}

.long_img {
    display: block;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    min-height: 280px;
}

.long_data {
    font-size: 12px;
    line-height: 18px;
    margin-left: 70px;
}

.post_title a {
    font-weight: 500;
    font-size: 18px;
    line-height: 130%;
    text-align: right;
    letter-spacing: -0.9px;
    color: inherit;
}

.post_desc {
    letter-spacing: -0.9px;
    color: #7E7B79;
    font-size: 15px;
    line-height: 130%;
}

.post_info span {
    font-size: 12px;
    line-height: 18px;
}

.read_more_post {
    color: #1473E6;
    font-size: 12px;
    line-height: 18px;
    display: flex;
    align-items: center;
}

.read_more_post img {
    margin-left: 5px;
}

.post_info {
    display: flex;
    justify-content: space-between;
    margin-top: auto;
}

.post_title {
    margin: 40px 0;
}

.blog_main .slick-arrow {
    border: 1px solid #8A8380;
    border-radius: 50%;
}

.blog_main .slick-prev {
    right: 80px;
}

.blog_main .slick-next {
    background: #FFFFFF;
}

.blog_main .slick-arrow {
    bottom: unset;
    top: calc(100% + 20px);
}

.slider_long {
    padding-bottom: 140px;
}

.short_block .post_title {
    margin: 10px 0 5px;
}

.short_img_box {
    padding: 5px 15px;
}

.short_block {
    background: #FFFFFF;
    border-radius: 5px;
}

.short_item {
    background: #ECDACD;
    padding: 15px 10px;
    min-height: 240px;
    display: flex;
    flex-direction: column;
}

.short_item .post_info {
    background: #fff;
    margin: auto -10px 0;
    padding: 0 10px;
}

.short_box .slick-slide {
    margin: 0 30px;
}

.slider_short {
    padding-bottom: 140px;
}

.short_box .slick-list {
    margin: 0 -30px;
}

.post_block {
    display: flex;
    margin: 0 -30px 130px;
}

.post_img_box {
    flex: 0 0 45%;
    max-width: 45%;
    padding: 0 30px;
}

.post_img {
    height: 100%;
    background-size: cover;
    background-position: center;
}

.post_content {
    font-weight: 400;
    font-size: 20px;
    line-height: 23px;
    text-align: justify;
    color: #000000;
    padding: 60px 0;
}

.single_post_title {
    font-weight: 500;
    font-size: 40px;
    line-height: 1.2;
    letter-spacing: -0.9px;
    color: #FFFFFF;
    max-width: 80%;
    margin-bottom: 25px;
}

.single_post_desc {
    font-size: 18px;
    line-height: 130%;
    text-align: justify;
    letter-spacing: -0.9px;
    color: #FFFFFF;
}

.post_block:last-child {
    margin: 0 -30px 45px;
}

.post_gallery {
    display: flex;
    margin: 0 -10px;
    padding-bottom: 40px;
    flex-wrap: wrap;
}

.post_gallery_block {
    flex: 0 0 33.33%;
    max-width: 33.33%;
    padding: 0 10px;
}

.post_gallery_img {
    min-height: 235px;
    background-size: cover;
    background-position: center;
}

.post {
    padding-top: 60px;
}


/*new blog start*/
.home_intro_box {
    min-height: 310px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.home_title {
    font-weight: 500;
    font-size: 150px;
    line-height: 1.2;
    color: #FDFFFE;
}

.home_second_desc {
    font-size: 20px;
    line-height: 23px;
    color: #000;
    max-width: 810px;
    margin: 35px auto;
}

.home_categories {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -7px;
}

.home_categories li {
    flex: 0 0 25%;
    max-width: 25%;
    padding: 0 7px;
    margin: 10px 0;
}

.home_categories a {
    width: 100%;
}

.home_categories span {
    width: 100%;
    transition: all .3s ease;
}

.home_categories a:hover span {
    transform: scale(1.01);
    box-shadow: 0 5px 20px 0 rgb(0 0 0 / 30%);
}

.home_categories a.active span {
    box-shadow: 0 5px 20px 0 rgb(0 0 0 / 30%);
}

.home_second {
    padding-bottom: 60px;
}

.home_intro {
    padding: 60px 0 0;
}

.font_august {
    font-family: "August Script", system-ui;
}

.home_post_block {
    background: #f5f5f5;
    color: #000;
    padding: 20px 10px;
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
    min-height: 130px;
    display: flex;
    align-items: center;
}

.home_post_img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: center;
}

.home_post_img {
    display: block;
    min-height: 310px;
    background-size: cover;
    background-position: center;
}

.home_post_date {
    font-size: 18px;
    text-transform: uppercase;
}

.home_post_title {
    font-weight: 500;
    font-size: 23px;
    text-transform: uppercase;
    line-height: 1.3;
    font-family: system-ui;
}

.home_post_desc {
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
}

.main_post_box {
    display: flex;
    margin: -10px;
}

.home_post {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 10px;
    margin-bottom: 14px;
}

.main_post_block {
    flex: 0 0 40%;
    max-width: 40%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.main_post_title {
    font-weight: 500;
    font-size: 66px;
    color: #50615A;
    display: flex;
    flex-direction: column;
}

.main_post_title span {
    transform: translate(35px, -35px);
}

.home_posts_box {
    display: flex;
    flex-wrap: wrap;
    margin: -10px -10px 50px;
}

.home_post_box {
    box-shadow: 0 4px 4px rgb(0 0 0 / 25%);
}

.main_post {
    padding-bottom: 20px;
}

.home_post_title a {
    color: inherit;
}

.home_posts {
    padding-bottom: 70px;
}

.single_intro_block {
    color: #000;
    padding: 40px 0 60px;
    background: rgba(233, 229, 229, 0.72);
    width: 100%;
}

.single_intro_date {
    font-size: 18px;
}

.single_intro_title {
    font-weight: 500;
    font-size: 70px;
    color: #000000;
    font-family: system-ui;
    margin-top: 30px;
    line-height: 1.2;
    text-align: left;
    padding: 0 30px;
}

.single_intro_box {
    background-size: cover;
    background-position: center;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.post_content p {
    margin-bottom: 20px;
    font-family: system-ui;
    font-weight: 400;
    line-height: 1.5;
}

.post_content .container {
    max-width: 1100px !important;
}

.basket_link {
    position: relative;
    display: inline-block;
    margin-top: -5px;
}

.cart_items_count {
    width: 17px;
    height: 17px;
    border-radius: 50%;
    background: #fff;
    min-width: 17px;
    display: flex;
    position: absolute;
    top: 70%;
    left: 50%;
    transform: translate(-50%, -50%);
    justify-content: center;
    align-items: center;
    font-size: 12px;
    color: #222;
}

.woo_order_tip {
    padding: 10px 15px;
    font-size: 16px;
}

#wooot_order_tip_form button {
    padding: 10px 15px;
    font-size: 16px;
}

#wooot_order_tip_form {
    margin-bottom: 20px;
    text-align: center !important;
}

.contact_us_form {
    margin-bottom: 20px;
    max-width: 60%;
}

.contact_us_form .form_control_box {
    padding: 0;
    margin: 0 0 30px;
}

.wpcf7-form-control-wrap {
    width: 100%;
    display: block;
}

.contact_us_form .form_control_box .input_accent {
    text-align: left;
    width: 100%;
    border-radius: 0;
    margin: 0;
    font-weight: 500;
    font-size: 16px;
    line-height: 20px;
    background-color: #F8F7F9;
    border: 1px solid #B1AEAD;
    min-height: 30px;
}

.contact_us_form .form_control_box input.input_accent, .contact_us_form .form_control_box textarea.input_accent {
    background: #F8F7F9;
}

.contact_us_form .form_control_box .input_accent::placeholder {
    color: rgba(138, 131, 128, 0.5);
}

.contact_btn {
    padding: 15px 60px;
    font-weight: 400;
    font-size: 17px;
    line-height: 1;
    color: #000;
    border: 1px solid #000000;
    border-radius: 34px;
    text-transform: uppercase;
    background: transparent;
    transition: all .3s ease;
}

.contact_btn:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .3);
}

.post_content h3 {
    font-size: 30px;
}

.post_content h2 {
    font-size: 35px;
}

.post_content h4 {
    font-size: 25px;
}

.post_content h5,
.post_content h6 {
    font-size: 20px;
}

.post_content h1,
.post_content h2,
.post_content h3,
.post_content h4,
.post_content h5,
.post_content h6 {
    font-weight: 600;
    font-family: system-ui;
    line-height: 1.5;
    margin-bottom: 20px;
}

.post_content h3, .post_content h2 {
    margin-bottom: 30px;
}

.single_main * {
    font-family: system-ui;
}

/*Blog end*/


/*hero start*/
.hero_img {
    position: absolute;
    bottom: 20%;
    pointer-events: none;
}

.hero_img_1 {
    left: -108px;
    transform: translateY(50%);
    bottom: 75%;
}

.hero_img_1 img {
    width: 30vw;
}

.hero_box {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 50px 0;
    background-size: cover;
    background-position: center center;
    margin-bottom: 20px;
    margin-top: 65px;
}

.hero {
    position: relative;
    overflow: hidden;
    padding-bottom: 100px;
    margin-bottom: -100px;
}

.hero_img_2 {
    right: 0;
    transform: translateY(40px);
}

.hero_title {
    font-weight: 500;
    color: #fff;
    font-size: 50px;
    line-height: 48px;
    text-align: center;
    padding: 10px 20px;
    display: inline-block;
    background: rgba(0, 0, 0, 0.62);
    margin: 0 auto;
}

.hero_title span {
    display: block;
}

.hero_title span.font_august {
    text-align: right;
    transform: translateY(-40px);
}

.hero_desc {
    font-weight: 400;
    font-size: 20px;
    line-height: 1.3;
    text-align: center;
    color: #3D3A3A;
    margin: 20px 0 40px;
    max-width: 800px;
}


.home_categories {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -7px;
}

.home_categories li {
    flex: 0 0 25%;
    max-width: 25%;
    padding: 0 7px;
    margin: 10px 0;
}

.home_categories a {
    width: 100%;
}

.home_categories span {
    width: 100%;
    transition: all .3s ease;
}

.home_categories a:hover span {
    transform: scale(1.01);
    box-shadow: 0 5px 20px 0 rgb(0 0 0 / 30%);
}

.home_categories a.active span {
    box-shadow: 0 5px 20px 0 rgb(0 0 0 / 30%);
}

.home_second {
    padding-bottom: 60px;
}

.home_intro {
    padding: 60px 0 0;
}

.new_btn {
    text-align: center;
    color: #000;
    display: inline-block;
    position: relative;
    z-index: 1;
    font-weight: 400;
    font-size: 20px;
    line-height: 23px;
    background: #BDD8E4;
    border-radius: 40px;
    transition: all .3s ease;
}

.new_btn:hover {
    background: #99CEE5;
}

.btn_icon {
    position: absolute;
    right: 10px;
    bottom: -20px;
    padding: 0 !important;
}

.new_btn:before {
    content: '';
    position: absolute;
    left: -3px;
    top: -2px;
    width: calc(100% + 6px);
    height: calc(100% + 4px);
    border-radius: 40px;
    z-index: -1;
}

.new_btn span {
    display: inline-block;
    padding: 15px 40px;
    border: 1px solid #000000;
    border-radius: 40px;
}

/*hero end*/

/*new events start*/
.event_title {
    font-size: 30px;
    line-height: 1.2;
    letter-spacing: -0.9px;
    color: #B3BD52;
    margin: auto 0;
}

.event_item {
    background: rgba(211, 227, 102, 0.8);
    padding: 15px 55px;
}

.event_desc {
    font-weight: 400;
    font-size: 24px;
    line-height: 1.3;
    text-align: center;
    letter-spacing: -0.9px;
    color: rgba(0, 0, 0, 0.8);
    width: 100%;
    margin-top: 15px;
    font-family: 'Ivy Mode', sans-serif;
}

.event_intro_box {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: calc(100vh - 66px);
    padding: 25px 0;
}

.events_list_title {
    font-size: 30px;
    letter-spacing: -0.9px;
    background: #D9D9D9;
    padding: 5px;
}

.events_list_desc {
    font-size: 18px;
    line-height: 1.3;
    text-align: justify;
    letter-spacing: -0.9px;
    color: #000000;
    margin: 30px 0;
}

.events_list {
    display: flex;
    align-items: flex-start;
}

.events_item:last-child .events_list_desc {
    margin-bottom: 0;
}

.events_section {
    padding: 50px 0;
}

.events_block:last-child .events_list_title {
    text-align: right;
}


.reservation_form_desc {
    margin-bottom: 30px;
    margin-top: -30px;
    font-size: 14.5px;
    background: #f35858;
    text-align: left;
    color: #f2f2f2;
    padding: 10px;
    line-height: 1.3;
}

.reservation_form_desc a {
    color: #fff;
    font-weight: 600;
}

.reservation_payment_hint {
    flex: 1 1100%;
    font-style: italic;
    font-size: 15px;
    margin-top: 20px;
}

/*new events end*/