.wine_cellar {
    --lightGreen: #EFE0E5;
    --primaryColor: #590923;
    --primaryHover: #48061B;
    --primaryPress: #48061B;
    --scrollColor: rgba(89, 9, 35, .6)
}

.restaurant {
    --lightGreen: #E9E2D6;
    --primaryColor: #27201D;
    --primaryHover: #B48C59;
    --primaryPress: #B48C59;
    --scrollColor: rgba(39, 32, 29, .6)
}

@media screen and (min-width: 1601px) {
    .touch .header .socials_list a {
        margin:-4px 11px;
        padding: 4px
    }
}

@media screen and (min-width: 1601px) {
    .header .socials_list a {
        margin:0 15px
    }

    .header .socials_list a:before {
        font-size: 4rem
    }

    .header .main_menu li:before {
        min-width: 6px;
        height: 6px;
        margin: 16px 14px
    }
}

@media screen and (min-width: 1281px) and (max-width: 1600px) {
    .header {
        padding:15px 0 14px
    }

    .header .main_logo {
        margin-right: 60px
    }

    .header .main_logo img {
        height: 71px
    }

    .header .menu_left {
        max-width: 63%
    }

    .header .main_menu {
        max-width: 55%;
        width: 55%
    }

    .header .menu_btn {
        margin-left: 30px
    }

    .header .book_btn {
        margin-left: 20px
    }

    .header .menu_inner:before {
        min-height: 120px
    }
}

@media screen and (min-width: 769px) and (max-width: 1280px) {
    .header {
        padding:21px 0 20px
    }

    .header .main_logo {
        margin-right: 60px
    }

    .header .main_logo img {
        height: 59px
    }

    .header .menu_btn,.header .book_btn {
        margin-left: 14px
    }

    .header .menu_inner:before {
        min-height: 120px
    }

    .header .menu_left {
        flex-wrap: wrap
    }

    .header .secondary_menu,.header .main_menu {
        flex: 0 0 100%;
        max-width: 100%;
        width: 100%
    }

    .header .secondary_menu li:not(:first-child),.header .main_menu li:not(:first-child) {
        margin-top: clamp(15px,4dvh,30px)
    }

    .header .secondary_menu {
        margin-top: 40px;
        padding-left: 24px
    }
}

@media screen and (min-width: 1025px) and (max-width: 1600px) {
    .header .menu_image img {
        width:60%
    }
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
    .header {
        padding:21px 0 20px
    }

    .header .main_logo {
        margin-right: 60px
    }

    .header .main_logo img {
        height: 59px
    }

    .header .menu_btn,.header .book_btn {
        margin-left: 14px
    }

    .header .menu_inner:before {
        min-height: 120px
    }
}

@media screen and (max-width: 1024px) {
    .header .menu_decor .decor_inner {
        aspect-ratio:11/15
    }
}

@media screen and (min-width: 1601px) {
    .touch .footer .socials_list a {
        margin:-4px 11px;
        padding: 4px
    }

    .footer .socials_list a {
        margin: 0 15px
    }

    .footer .socials_list a:before {
        font-size: 4rem
    }

    .footer .main_menu li:before {
        min-width: 6px;
        height: 6px;
        margin: 15px 14px
    }
}

@media screen and (min-width: 1281px) and (max-width: 1600px) {
    .footer .menu_left {
        padding:60px 0;
        padding-bottom: 0px;
    }

    .footer .menu_left:before {
        width: 187px
    }

    .footer .menu_left:after {
        height: 111px;
        right: 192px
    }

    .footer .menu_right {
        padding: 60px 0
    }

    .footer .menu_right:before {
        width: 187px
    }

    .footer .menu_right:after {
        height: 111px;
        left: 192px
    }

    .footer .logo_block {
        margin-bottom: 30px
    }

    .footer .logo_block img {
        height: 90px
    }

    .footer .booking_btn {
        margin-bottom: 30px
    }

    .footer .main_menu li:not(:first-child) {
        margin-top: 50px
    }

    .footer .main_menu li a {
        font-size: 180%
    }

    .footer .secondary_menu li:not(:first-child) {
        margin-top: 30px
    }

    .footer .secondary_menu li a {
        font-size: 140%
    }

    .footer .contact_block {
        margin-bottom: 30px
    }

    .footer .contact_title {
        margin-bottom: 14px
    }

    .footer .info_block {
        display: flex;
        flex: 1;
        flex: 0 0 100%;
        max-width: 100%;
        justify-content: space-between;
        padding-top: 40px
    }

    .footer .copyrights,.footer .developer {
        padding-right: 50px;
        font-size: 120%
    }

    .footer .socials_list {
        padding-top: 40px
    }
}

@media screen and (min-width: 1601px) {
    .main_screen {
        padding-top:130px
    }
}

@media screen and (min-height: 900px) and (min-width: 1281px) and (max-width: 1600px) {
    .main_section .type_block {
        font-size:240%;
        line-height: 36px
    }

    .main_section .welcome_block {
        font-size: 900%;
        margin-top: 10px
    }

    .main_section .name_block {
        font-size: 1200%
    }

    .main_section .short_info {
        position: relative;
        overflow: hidden;
        margin-top: 30px;
        font-size: 180%;
        width: 39.5%
    }
}

@media screen and (min-width: 1281px) and (max-width: 1600px) {
    .core_values li {
        margin-top:70px
    }

    .core_values .value_icon {
        width: 90px;
        outline-offset: 5px
    }

    .core_values .value_icon img {
        width: 50px;
        height: 50px
    }

    .core_values .value_name {
        margin-top: 20px
    }

    .core_values .value_description {
        margin-top: 6px
    }

    .facilities .includes_list li {
        height: 72px
    }

    .facilities .includes_list li img {
        margin-right: 6px
    }

    .facilities .section_inner {
        padding-left: 224px;
        padding-right: 224px
    }

    .facilities .images_list {
        width: 187px
    }

    .facilities .large_title {
        margin-top: -41px
    }

    .facilities .description_block {
        margin-top: 20px;
        max-width: 800px
    }

    .facilities .facility_block {
        padding-top: 60px;
        padding-right: 15px
    }

    .facilities .facility_block .facility_logo {
        padding-top: 10px
    }

    .facilities .facility_block .facility_logo img {
        height: 48px
    }

    .facilities .facility_block+.facility_block {
        padding-left: 15px
    }

    .facilities .facility_block+.facility_block .facility_logo img {
        height: 59px;
        margin-top: 0
    }

    .explore_more .name_block {
        font-size: 280%
    }

    .explore_more .name_block span {
        min-width: 150px
    }

    .feedbacks_slider .image_block {
        max-width: 450px
    }

    .feedbacks_slider:before,.feedbacks_slider:after {
        height: 240px;
        background-size: auto 166px;
        margin: 0 255px
    }

    .feedbacks_slider .feedback_text {
        margin-top: 40px;
        max-width: 860px;
        font-size: 180%
    }

    .feedbacks_slider .feedback_author {
        padding-top: 12px;
        font-size: 180%
    }

    .feedbacks_slider .nav_track {
        margin-top: 30px;
        max-width: 860px
    }

    .feedbacks_slider .swiper-prev,.feedbacks_slider .swiper-next {
        top: 240px;
        margin: 40px calc(8.33% - 54px) 0
    }

    .feedbacks_slider .swiper-prev:before,.feedbacks_slider .swiper-next:before {
        font-size: 3rem
    }

    .rooms_section .section_bg {
        bottom: clamp(-650px,-100dvh,0px);
        margin: 70px auto
    }

    .rooms_section .section_bg img {
        width: 100px;
        flex: 0 0 100px;
        margin-top: -51px
    }

    .rooms_section .section_inner {
        padding-top: 110px;
        max-height: 100%;
        height: 100% !important;
    }

    .rooms_section .search_form {
        padding-top: 20px
    }

    .rooms_type_list {
        margin-top: 36px;
        /* max-height: 375px; */
    }
}

@media screen and (min-width: 1281px) and (max-width: 1600px) and (hover: hover) {
    .rooms_type_list:has(.room_type_block:hover) .swiper-slide:not(:has(.room_type_block:hover)) {
        max-width:21.5%
    }

    .rooms_type_list:has(.room_type_block:hover) .swiper-slide:has(.room_type_block:hover) {
        max-width: 35.5%
    }
}

@media screen and (min-width: 1281px) and (max-width: 1600px) {
    .room_type_block .name_block {
        font-size:240%;
        padding: 20px 30px
    }

    .room_type_block .name_block:before {
        font-size: 3rem
    }

    .images_section .images_list .list_inner:before,.images_section .images_list .list_inner:after {
        min-width: calc((100vw - 1200px)/2)
    }

    .images_section .image_block {
        padding: 15px
    }

    .images_section .image_block .image_inner {
        width: 190px
    }

    .images_section .image_block .image_title {
        min-height: 60px;
        padding-top: 14px
    }

    .images_section .image_block:nth-child(5n+1) {
        margin-top: 0
    }

    .images_section .image_block:nth-child(5n+2) {
        margin-bottom: 26px;
        margin-left: 40px
    }

    .images_section .image_block:nth-child(5n+3) {
        margin-top: -115px;
        margin-left: 15px
    }

    .images_section .image_block:nth-child(5n+4) {
        margin-left: 20px
    }

    .images_section .image_block:nth-child(5n) {
        margin-top: -140px;
        margin-left: -20px
    }

    .images_section .image_block:nth-child(5n+6) {
        margin-left: -40px
    }

    .images_section .info_block {
        margin-top: 20px
    }

    .images_section .info_inner {
        max-width: 840px
    }
}

@media screen and (min-width: 1281px) and (min-height: 641px) and (max-height: 899px) {
    .main_section .type_block {
        font-size:240%;
        line-height: 36px
    }

    .main_section .welcome_block {
        font-size: 900%;
        margin-top: 10px
    }

    .main_section .name_block {
        font-size: 900%;
    }

    .main_section .short_info {
        position: relative;
        overflow: hidden;
        margin-top: 30px;
        font-size: 180%;
        width: 80%;
    }
}

@media screen and (min-width: 1281px) and (min-height: 576px) and (max-height: 640px) {
    .main_section .type_block {
        font-size:180%;
        line-height: 27px
    }

    .main_section .welcome_block {
        font-size: 500%;
        margin-top: 10px
    }

    .main_section .name_block {
        font-size: 900%
    }

    .main_section .short_info {
        position: relative;
        overflow: hidden;
        margin-top: 10px;
        font-size: 140%;
        width: 345px
    }

    .main_section .scroll_btn {
        bottom: 40px
    }
}

@media screen and (min-width: 769px) and (max-width: 1280px) {
    .facilities .includes_list li {
        height:56px
    }

    .facilities .includes_list li img {
        margin-right: 4px
    }

    .facilities .section_inner {
        padding-left: 154px;
        padding-right: 154px;
        padding-bottom: 22px
    }

    .facilities .images_list {
        width: 130px;
        margin: -12px 0
    }

    .facilities .images_list li {
        padding: 12px 0
    }

    .facilities .large_title {
        margin-top: -33px
    }

    .facilities .description_block {
        margin-top: 10px;
        max-width: 720px
    }

    .facilities .facility_block {
        padding-top: 40px;
        padding-right: 12px
    }

    .facilities .facility_block .facility_logo {
        padding-top: 10px
    }

    .facilities .facility_block .facility_logo img {
        height: 43px
    }

    .facilities .facility_block+.facility_block {
        padding-left: 12px
    }

    .facilities .facility_block+.facility_block .facility_logo img {
        height: 49px
    }

    .explore_more .name_block {
        font-size: 240%
    }

    .explore_more .name_block span {
        min-width: 120px
    }

    .feedbacks_slider .image_block {
        max-width: 324px
    }

    .feedbacks_slider:before,.feedbacks_slider:after {
        height: 173px;
        background-size: auto 137px;
        margin: 0 182px
    }

    .feedbacks_slider .feedback_text {
        margin-top: 30px;
        max-width: 620px;
        font-size: 160%;
        min-height: 135px
    }

    .feedbacks_slider .feedback_author {
        padding-top: 12px;
        font-size: 160%
    }

    .feedbacks_slider .nav_track {
        margin-top: 20px;
        max-width: 620px
    }

    .feedbacks_slider .swiper-prev,.feedbacks_slider .swiper-next {
        top: 173px;
        margin: 18px calc(8.33% - 36px) 0;
        padding: 12px
    }

    .feedbacks_slider .swiper-prev:before,.feedbacks_slider .swiper-next:before {
        font-size: 2.4rem
    }

    .rooms_section .section_bg {
        bottom: clamp(-520px,-100dvh,0px);
        margin: 90px auto
    }

    .rooms_section .section_bg img {
        width: 100px;
        flex: 0 0 100px;
        margin-top: -51px
    }

    .rooms_section .section_inner {
        padding-top: 110px;
        /* max-height: 520px; */
    }

    .rooms_section .search_form {
        padding-top: 14px
    }

    .rooms_type_list {
        margin-top: 20px;
        /* max-height: 264px; */
    }
}

@media screen and (min-width: 769px) and (max-width: 1280px) and (hover: hover) {
    .rooms_type_list:has(.room_type_block:hover) .swiper-slide:not(:has(.room_type_block:hover)) {
        max-width:21.5%
    }

    .rooms_type_list:has(.room_type_block:hover) .swiper-slide:has(.room_type_block:hover) {
        max-width: 35.5%
    }
}

@media screen and (min-width: 769px) and (max-width: 1280px) {
    .room_type_block .name_block {
        font-size:180%;
        padding: 10px 14px;
        height: 74px
    }

    .room_type_block .name_block:before {
        font-size: 2.4rem
    }

    .images_section .images_list .list_inner:before,.images_section .images_list .list_inner:after {
        min-width: calc((100vw - 864px)/2)
    }

    .images_section .image_block {
        padding: 12px
    }

    .images_section .image_block .image_inner {
        width: 146px
    }

    .images_section .image_block .image_title {
        min-height: 48px;
        padding-top: 10px
    }

    .images_section .image_block:nth-child(5n+1) {
        margin-top: 0
    }

    .images_section .image_block:nth-child(5n+2) {
        margin-bottom: 0;
        margin-left: 20px
    }

    .images_section .image_block:nth-child(5n+3) {
        margin-top: -95px;
        margin-left: 5px
    }

    .images_section .image_block:nth-child(5n+4) {
        margin-left: 0
    }

    .images_section .image_block:nth-child(5n) {
        margin-top: -125px;
        margin-left: -20px
    }

    .images_section .image_block:nth-child(5n+6) {
        margin-left: -40px
    }

    .images_section .info_block {
        margin-top: 14px
    }

    .images_section .info_inner {
        max-width: 620px
    }
}

@media screen and (min-width: 769px) and (hover: hover) {
    .explore_more ul:has(a:hover) a:not(:hover) .image_block {
        opacity:0
    }

    .explore_more ul a:hover .name_block:before {
        transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -webkit-transform: scale(1);
        -o-transform: scale(1);
        -o-transition-delay: .1s;
        -ms-transition-delay: .1s;
        -moz-transition-delay: .1s;
        -webkit-transition-delay: .1s;
        transition-delay: .1s
    }

    .explore_more ul a:hover .image_block {
        width: 300%;
        z-index: 10;
        opacity: 1;
        -o-transition: all 1s .1s,z-index 0s 0s;
        -ms-transition: all 1s .1s,z-index 0s 0s;
        -moz-transition: all 1s .1s,z-index 0s 0s;
        -webkit-transition: all 1s .1s,z-index 0s 0s;
        transition: all 1s .1s,z-index 0s 0s
    }

    .explore_more ul li:nth-child(2) a:hover .image_block {
        margin-left: -100%
    }

    .explore_more ul li:nth-child(3) a:hover .image_block {
        margin-left: -200%
    }
}

@media screen and (min-width: 769px) {
    .explore_more ul.active .image_block {
        width:300%;
        -o-transition: opacity 1s;
        -ms-transition: opacity 1s;
        -moz-transition: opacity 1s;
        -webkit-transition: opacity 1s;
        transition: opacity 1s;
        z-index: 1
    }

    .explore_more ul.active a:not(.active) .name_block:before {
        -o-transition: transform 1s .1s,opacity 0s 1.1s;
        -ms-transition: transform 1s .1s,opacity 0s 1.1s;
        -moz-transition: transform 1s .1s,opacity 0s 1.1s;
        -webkit-transition: transform 1s .1s,opacity 0s 1.1s;
        transition: transform 1s .1s,opacity 0s 1.1s;
        transform: scale(0);
        -moz-transform: scale(0);
        -ms-transform: scale(0);
        -webkit-transform: scale(0);
        -o-transform: scale(0)
    }
}

@media screen and (min-width: 769px) and (hover: hover) {
    .explore_more ul.active a:hover .name_block:before {
        transform:scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -webkit-transform: scale(1);
        -o-transform: scale(1);
        -o-transition: transform 1s .1s,opacity 0s .1s;
        -ms-transition: transform 1s .1s,opacity 0s .1s;
        -moz-transition: transform 1s .1s,opacity 0s .1s;
        -webkit-transition: transform 1s .1s,opacity 0s .1s;
        transition: transform 1s .1s,opacity 0s .1s
    }
}

@media screen and (min-width: 769px) {
    .explore_more ul.active li:nth-child(2) .image_block {
        margin-left:-100%
    }

    .explore_more ul.active li:nth-child(3) .image_block {
        margin-left: -200%
    }

    .explore_more ul:has(a.active):not(:has(a:hover)) a:not(.active) .image_block {
        -o-transition: opacity 1s .1s;
        -ms-transition: opacity 1s .1s;
        -moz-transition: opacity 1s .1s;
        -webkit-transition: opacity 1s .1s;
        transition: opacity 1s .1s
    }

    .rooms_type_list:not(.swiper-initialized) .swiper-slide {
        flex: 1;
        max-width: 33%;
        -o-transition: all .75s;
        -ms-transition: all .75s;
        -moz-transition: all .75s;
        -webkit-transition: all .75s;
        transition: all .75s
    }
}

@media screen and (min-width: 769px) and (hover: hover) {
    .rooms_type_list:not(.swiper-initialized):has(.room_type_block:hover) .swiper-slide:not(:has(.room_type_block:hover)) {
        max-width: 30%;
    }

    .rooms_type_list:not(.swiper-initialized):has(.room_type_block:hover) .swiper-slide:has(.room_type_block:hover) {
        max-width: 40%;
    }
}

@media screen and (min-width: 769px) {
    .rooms_type_list .slider_dots {
        display:none
    }
}

@media screen and (min-width: 769px) and (min-height: 641px) and (max-height: 899px) {
    .images_section {
        padding-bottom:5dvh
    }

    .images_section .images_list .list_inner {
        padding-top: 70px
    }

    .images_section .image_block {
        padding: 15px
    }

    .images_section .image_block .image_inner {
        width: 190px
    }

    .images_section .image_block .image_title {
        min-height: 60px;
        padding-top: 14px
    }

    .images_section .image_block:nth-child(5n+1) {
        margin-top: 0
    }

    .images_section .image_block:nth-child(5n+2) {
        margin-bottom: 26px;
        margin-left: 40px
    }

    .images_section .image_block:nth-child(5n+3) {
        margin-top: -115px;
        margin-left: 15px
    }

    .images_section .image_block:nth-child(5n+4) {
        margin-left: 20px
    }

    .images_section .image_block:nth-child(5n) {
        margin-top: -140px;
        margin-left: -20px
    }

    .images_section .image_block:nth-child(5n+6) {
        margin-left: -40px
    }

    .images_section .info_block {
        margin-top: 20px
    }
}

@media screen and (min-width: 769px) and (min-height: 576px) and (max-height: 640px) {
    .images_section {
        padding-bottom:15px
    }

    .images_section .image_block {
        padding: 12px
    }

    .images_section .image_block .image_inner {
        width: 146px
    }

    .images_section .image_block .image_title {
        min-height: 48px;
        padding-top: 10px
    }

    .images_section .image_block:nth-child(5n+1) {
        margin-top: 0
    }

    .images_section .image_block:nth-child(5n+2) {
        margin-bottom: 0;
        margin-left: 20px
    }

    .images_section .image_block:nth-child(5n+3) {
        margin-top: -95px;
        margin-left: 5px
    }

    .images_section .image_block:nth-child(5n+4) {
        margin-left: 0
    }

    .images_section .image_block:nth-child(5n) {
        margin-top: -125px;
        margin-left: -20px
    }

    .images_section .image_block:nth-child(5n+6) {
        margin-left: -40px
    }

    .images_section .info_block {
        margin-top: 14px
    }
}

@media screen and (min-width: 769px) and (max-height: 575px) {
    .images_section {
        padding-bottom:10px
    }

    .images_section .images_list .list-inner {
        padding-top: 50px
    }

    .images_section .image_block {
        padding: 6px
    }

    .images_section .image_block .image_inner {
        width: 80px
    }

    .images_section .image_block .image_title {
        display: none
    }

    .images_section .image_block:nth-child(5n+1) {
        margin-top: 0
    }

    .images_section .image_block:nth-child(5n+2) {
        margin-bottom: 0;
        margin-left: 20px
    }

    .images_section .image_block:nth-child(5n+3) {
        margin-top: -95px;
        margin-left: 5px
    }

    .images_section .image_block:nth-child(5n+4) {
        margin-left: 0
    }

    .images_section .image_block:nth-child(5n) {
        margin-top: -125px;
        margin-left: -20px
    }

    .images_section .image_block:nth-child(5n+6) {
        margin-left: -40px
    }

    .images_section .info_block {
        margin-top: 6px
    }

    .images_section .info_inner:before {
        margin-bottom: 10px
    }
}
