

/* Start:/local/templates/main/styles.css?17459357094573*/
/*WSTD - Route start*/
.wstd-route {
    position: fixed;
    left: 0;
    top: 100%;
    display: flex;
    flex-direction: column;
    width: auto;
    font-size: 16px;
    z-index: 33;
}
.wstd-route.isActive {
    top: unset;
    bottom: 60px;
}

.wstd-route__btn {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 50px;
    position: absolute;
    top: -50px;
    cursor: pointer;
}
.wstd-route__btn:hover .wstd-route__btn-icon path,
.wstd-route__btn:hover .wstd-route__btn-title {
    color: #ffffff;
    fill: #ffffff;
}

.wstd-route__btn-icon {
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 7.5px;
    font-size: 1.5em;
    color: #fff;
    background-color: var(--c-surface-accent);
    border-radius: 50%;
    margin: 7.5px;
}
.wstd-route__btn-icon .icon{
    width: 100%;
    height: 100%;
}
.wstd-route path,
.wstd-route rect,
.wstd-route polygon {
    transition: 0.3s;
    fill: white
}
.wstd-route.isActive .wstd-route__btn {
    top: -50px;
}

.wstd-route__btn-icon.svg-inline--fa.fa-w-12 {
    width: 1.5em;
    height: 1.5em;
}
.wstd-route__btn-title {
    color: #fff;
    padding: 7.5px;
    white-space: nowrap;
    font-family: sans-serif;
    line-height: 1.2;
    background-color: var(--c-surface-accent);
    border-radius: 5px;
    font-size: 0.8em;
    margin: 0;
    font-weight: bold;
    transition: 0.3s;
}

.wstd-route__container {
    position: relative;
    width: 100%;
    min-height: 100px;
    background-color: #fff;
    display: flex;
    align-items: center;
    border: 1px solid var(--c-surface-accent);
}

.wstd-route__container_overlay::after {
    content: "Please wait...";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #333;
    color: #fff;
    /* border: 1px solid #fff; */
}

.wstd-route__maps,
.wstd-route__routes,
.wstd-route__taxi {
    width: 100%;
    display: none;
    padding: 10px 0;
    overflow-x: auto;
    overflow-y: hidden;
}
.wstd-route__maps.isActive,
.wstd-route__routes.isActive,
.wstd-route__taxi.isActive {
    display: inline-flex;
}
.wstd-route__maps-title,
.wstd-route__routes-title,
.wstd-route__taxi-title {
    text-align: center;
    color: #333;
    font-family: sans-serif;
    font-size: 0.8em;
    line-height: 1.2;
    font-weight: bold;
}

.wstd-route__maps-icon,
.wstd-route__routes-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    padding: 5px;
    margin-bottom: 10px;
    border-radius: 50%;
    background-color: var(--c-surface-accent);
    color: #fff;
}

.wstd-route__maps-icon .icon,
.wstd-route__routes-icon .icon {
    width: 60%;
    height: 60%;
}

.wstd-route__maps-icon.svg-inline--fa,
.wstd-route__routes-icon.svg-inline--fa {
    width: 2em;
    height: 2em;
    background-color: var(--c-surface-accent);
    color: #fff;
    padding: 7px;
    border-radius: 50%;
    margin-bottom: 5px;
}

.wstd-route__routes-item {
    min-width: 100px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding: 7.5px 0;
    margin: 0 0.5%;
    text-decoration: none;
    cursor: pointer;
}

.wstd-route__back {
    position: absolute;
    right: 0;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    /* width: 20px; */
    height: 20px;
    padding: 3px 8px;
    cursor: pointer;
    background-color: var(--c-surface-accent);
    color: white;
    font-family: sans-serif;
    border-radius: 0 0 0 5px;
}
.wstd-route__scroll {
    position: absolute;
    left: 50%;
    bottom: 5%;
    color: #333;
    font-size: 0.8em;
    font-family: sans-serif;
    transform: translateX(-50%);
}

.isScroll > .wstd-route__routes-item {
    min-width: 28%;
}
/* height, width */
.isScroll::-webkit-scrollbar {
    height: 8px;
}
/* Track */
.isScroll::-webkit-scrollbar-track {
    background: #f1f1f1;
}
/* Handle */
.isScroll::-webkit-scrollbar-thumb {
    background: #555;
}
/* Handle on hover */
.isScroll::-webkit-scrollbar-thumb:hover {
    background: #333;
}

@media (max-width: 992px) {
    .wstd-route {
        width: 50%;
    }
    .wstd-route__btn {
        top: -120px;
    }
}
@media (max-width: 768px) {
    .wstd-route {
        width: 60%;
    }
}
@media (max-width: 640px) {
    .wstd-route {
        width: 100%;
    }
}

/*WSTD - Route end*/

/* End */


/* Start:/local/templates/main/template_styles.css?174593570957184*/
.pp_test.block_banner .block--content:before {
    display: none !important;

}

.pp_test.block_banner.block_banner-centered .banner {
    padding-bottom: 0;
}

.pp-scale img {
    transform: scale(1.5);
}
.block-no-margin{
    margin: 0;
}



.block_banner.block_banner-fullscreen .block--wrapper {
    max-width: 100vw;
}
.block_banner.block_banner-fullscreen .banner {
    width: 100vw;
    aspect-ratio: auto;
    height: 100vh;
    padding: calc((100vw - var(--container)) / 2);
    border-radius: 0;
}
.block_banner.block_banner-fullscreen {
    margin: 0
}


.block--control_panel{
    z-index: 100;
    background: #fff;
    padding: 12px;
    width: fit-content;
    border: 1px dashed var(--c-text-subdued);
}

.page_action_panel {
    position: fixed;
    bottom: 20px;
    right: 20px;
    display: flex;
    background: rgba(255, 255, 255, 0.6);
    padding: 8px 16px;
    box-sizing: border-box;
    box-shadow: 0 0 5px darkgrey;
}
.page_action_panel .page_action_panel--item:not(:last-of-type) {
    margin-right: 8px;
}
.page_action_panel .page_action_panel--item a {
    color: black;
    white-space: nowrap;
}
.page_action_panel .page_action_panel--item a:hover {
    opacity: 0.5;
}

.header__mobile_panel .button--booking{
    overflow: visible;
}
.header__mobile_panel .button--booking span[class^="icon-"] {
    color: #fff;
    background: var(--c-text-accent);
    border-radius: 6px;
    padding: 6px;
    font-size: 24px;
    width: 42px;
    height: 42px;
    margin-top: -12px;
}
.header__mobile_panel .button--booking {
    text-transform: uppercase;
    font-weight: 500;
}

/* Смена картинок в логотипе, если цветные */
.header__logo img {
    display: none;
}
.header__logo {
    aspect-ratio: 110 / 44;
    height: 44px;
    max-width: 40vw;
    position: relative;
}

.header__logo:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    /*background-image: url('/upload/logo/logo_color.svg');*/
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: opacity 0.1s linear;
    opacity: 1;
}
.header-transparent .header__logo:before {
    opacity: 0;
}
.header-transparent .header__logo:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    /*background-image: url('/upload/logo/logo_white.svg');*/
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    opacity: 1;
    transition: opacity 0.1s linear;
}
.header-transparent.scrolled .header__logo:after {
    opacity: 0;
}
.header-transparent.scrolled .header__logo:before {
    opacity: 1;
}
/* Смена картинок в логотипе, если цветные END */

.header__top
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    max-width: 100%;
    margin: 0 auto;
    padding: 0;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--g-24);
    /*background-color: rgba(58,58,58,0.8);*/
    /*backdrop-filter: blur(4px);*/
    border-bottom: 1px solid  #edeeef;
}
.header-transparent .header__top {
    background-color: rgba(58,58,58,0.8);
    backdrop-filter: blur(4px);
    border-color: transparent;
}

.header__top .header__nav{
    justify-content: center;
    max-width: 100%;
    height: 40px;
    overflow-y: hidden;
    display: flex;
}
@media (max-width: 992px) {
    .header__top .header__nav{
        display: flex;
    }
}
.header{
    transition: var(--transition)
}
.header.scrolled {
    transform: translateY(-41px);
}

@media(max-width: 768px) {
    .header__top {
        max-width: 100vw;
        height: 40px;
    }
    .header__top .header__nav{
        overflow-y: hidden;
        overflow-x: auto;
        justify-content: flex-start;
    }
}


.header__main
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    max-width: var(--container);
    margin: 0 auto;
    padding: 14px 0;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--g-24);
    position: relative;
}
@media (max-width: 992px)
{
    .header__main
    {
        max-width: 100%;
        padding: 10px 16px;

        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: start;
    }
    .header__main .header__logo
    {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
    .header__main .header__nav
    {
        display: none;
    }
    .header__main .header__actions
    {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        margin-left: auto;
    }
    .header__main .header__actions .header__button
    {
        display: none;
    }
    .header__main .header__actions .header__contacts span.icon-ic24-unfold-more
    {
        display: none;
    }
    .header__main .header__actions .header__contacts .header__contacts-list
    {
        display: none;
    }
}


/* Video widget */
.video_widget{
    position: fixed;
    bottom: var(--g-content, 40px);
    left: var(--g-content, 40px);
    justify-self: start;
    border: 3px solid #fff;
    transition:  0.18s ease-in-out;
    transform: scale(0.8);
    transform-origin: bottom left;
    max-width: 164px;
    aspect-ratio: 124 / 189;
    height: auto;
    overflow: hidden;
    cursor: pointer;
    z-index: 100;
    border-radius: 16px;
    box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.04), 0px 8px 16px 0px rgba(0,0,0,0.08);
    background: rgba(0,0,0,0.3);
}
@media(max-width: 768px) {
    .video_widget{
        bottom: 72px;
        left: 12px;
    }
}
.video_widget:not(.is_active):hover {
    border-color:  var(--c-surface-accent);
    transform: scale(1);
}
.video_widget.is_active {
    max-width: 312px;
    width: 312px;
    border-color:  var(--c-surface-accent);
    transform: scale(1);
}

.video-controls--volume,
.video_widget--close{
    border-radius: 50%;
    width: 42px;
    height: 42px;
    background-color: rgba(0,0,0,0.4);
    color: #fff;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    position: absolute;
    transform-origin: center;
    transform: scale(1);
    transition: var(--transition);
}
.video-controls--volume:hover,
.video-controls--volume:active,
.video_widget--close:active,
.video_widget--close:hover{
    transform: scale(1.1);
}
.video_widget--close{
    top: 6px;
    right: 4px;
    opacity: 0;
}
@media(max-width: 768px){
    .video_widget--close{
        opacity: 1;
    }
}
.video_widget:not(.is_active):hover .video_widget--close,
.video_widget.is_active .video_widget--close{
    opacity: 1;
}
.video-controls--volume{
    top: 52px;
    right: 4px;
    opacity: 0;
}
.video-controls--volume span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: var(--transition);
}
.video-controls--volume .icon-ic24-volume-off{
    opacity: 0;
}
.video-controls--volume.is_not_muted .icon-ic24-volume-off{
    opacity: 1;
}
.video-controls--volume.is_not_muted .icon-ic24-volume-mid{
    opacity: 0;
}
.video-controls video{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
video[poster]{ object-fit:cover; }
.video-controls {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    position: relative;
    cursor: pointer;
    width: 100%;
    height: 100%;
    pointer-events: none;
}
.video_widget.is_active .video-controls {
    pointer-events: all;
}

.video_widget.is_active .video-controls--volume,
.video_widget.is_active .video-controls--progress {
    opacity: 1;
}

.video-controls--progress {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 4px;
    --progress-bg: rgba(255,255,255,0.6);
    --progress-line: var(--c-surface-accent);
    background-color: var(--progress-bg);
    transition: 0.18s ease-in;
    opacity: 0;
}
@media(max-width: 768px){
    .video-controls--progress {
        opacity: 1;
    }
}
.video-controls--progress span {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    display: block;
    width: 0;
    background-color: var(--progress-line);
}
.video-controls--play {
    position: absolute;
    top: calc(50% - 32px);
    left: calc(50% - 32px);
    transition: var(--transition);
    border-radius: 50%;
    width: 64px;
    height: 64px;
    background-color: rgba(0,0,0,0.2);
    color: #fff;
    opacity: 0;
    transform-origin: center;
    pointer-events: none;
}
.video_widget.is_active .video-controls--play.is_paused {
    opacity: 1;
}
.video_widget.is_active .video-controls--play.is_paused.is_ended {
    opacity: 1 !important;
}
.video-controls--play .icon-ic24-play,
.video-controls--play .icon-ic24-pause{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 24px;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--transition);
}
.video-controls--play.is_playing .icon-ic24-play{
    opacity: 0;
}
.video-controls--play.is_playing .icon-ic24-pause{
    opacity: 1;
}
.video-controls--play.is_paused .icon-ic24-play{
    opacity: 1;
}
.video-controls--play.is_paused .icon-ic24-pause{
    opacity: 0;
}

@keyframes pauseVideo {
    0% {
        opacity: 0;
        scale: 1;
    }
    30% {
        opacity: 100%;
        scale: 2;
    }
    100% {
        opacity: 0;
        scale: 1;
    }
}

.video-controls--button {
    position: absolute;
    bottom: 12px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 5;
    opacity: 0;
    transition: var(--transition);
}
.video-controls--button span{
    max-width: 220px;
    text-overflow: ellipsis;
    overflow: hidden;
}
.video_widget.is_active .video-controls--button.is_shown {
    opacity: 1;
}
.video-controls--timer{
    font-size: 12px;
    color: #fff;
    width: 24px;
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.5);
    opacity: 0;
    transition: var(--transition);
}
.video_widget.is_active .video-controls--timer {
    opacity: 1;
}

/* Выпадающие списки в хедере */
.is_dropdown--content span.icon-ic24-chevron-down {
    transform: rotate(-90deg);
}
.is_dropdown--content .button {
    width: 100%;
    justify-content: space-between;
    border-radius: var(--border-corner);
    max-width: fit-content;
}
.is_dropdown .is_dropdown--content .button span{

    /*text-overflow: ellipsis;*/
    /*overflow: hidden;*/
}
.header__nav--item:hover > .button.button-link,
.header__nav--item:focus > .button.button-link,
.header__nav--item:focus-within > .button.button-link,
.header__nav--item:active > .button.button-link {
    color: var(--link-c-hover);
}
.is_dropdown--content .button.button-link,
.is_dropdown--content .button.button-link,
.is_dropdown--content .button.button-link {
    color: var(--c-text-dark) !important;
}

.is_dropdown--content .button-link:focus,
.is_dropdown--content .button-link:active,
.is_dropdown--content .button-link:hover{
    background: var(--c-surface-subdued-hovered);
}
.is_dropdown--content {
    scrollbar-width: thin;
    scrollbar-color: rgba(193, 193, 193, 1) #ffffff;
}
.is_dropdown--content::-webkit-scrollbar {
    width: 4px;
    height: 4px;
}
.is_dropdown--content::-webkit-scrollbar-track {
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
}
.is_dropdown--content::-webkit-scrollbar-thumb{
    background-color: rgba(193, 193, 193, 1);
    border-radius: 4px
}
.is_dropdown--content::-webkit-scrollbar-button {
    background-color: transparent;
    height: 0;
}
.header__nav--item:hover > .is_dropdown--wrapper {
    display: flex;
    opacity: 1;
    pointer-events: all;
}
.header__nav--item .is_dropdown--wrapper {
    pointer-events: none;
    opacity: 0;
    display: none;
    padding-left: 8px;
    padding-top: 8px;
    position: absolute;
}
.is_dropdown--wrapper .header__nav--item{
    padding-left: 4px;
    padding-right: 4px;
}
.header__nav--item > .is_dropdown--wrapper {
    top: 100%;
    left: 0;
}
.header__nav--item .is_dropdown--content
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    gap: 4px;
    background-color: #fff;
    border-radius: var(--border-corner);
    border: 1px solid var(--Border-Subdued, #F5F4F4);
    box-shadow: 0px 3px 6px -3px rgba(23, 24, 24, 0.08), 0px 8px 20px -4px rgba(23, 24, 24, 0.12);
    padding-top: 4px;
    padding-bottom: 4px;
}
.scrolled .header__nav--item .is_dropdown--content {
    background-color: #fff;
}
.is_dropdown--content .button {
    min-width: 100%;
}
.header__nav--item > .is_dropdown--wrapper .is_dropdown--wrapper {
    top: 0;
    left: 100%;
    height: 100%;
}
.header__nav--item > .is_dropdown--wrapper .is_dropdown--wrapper .is_dropdown--content {
    height: fit-content;
    overflow-y: auto;
}

.header__nav > .header__nav--item {
    position: relative;
}


/* Изменения в карточках спецпредложений */
/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/
.content_offers .swiper-wrapper {
    align-items: flex-start;
}

.content_offers .card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    border-radius: var(--border-corner);
    min-height: 154px;
    width: 100%;
    height: auto;
    aspect-ratio: 684 / 340;
}
.content_offers .card__content {
    position: absolute;
    bottom: 0;
    left: 0;
    color: #fff;
    z-index: 3;
    max-width: 360px;
    padding: 20px 24px ;
}
@media(max-width: 768px) {
    .content_offers .card .card__content {
        max-width: 242px;
        padding: 12px 16px;
    }
}
.content_offers .card .card__image {
    width: 100%;
    height: auto;
    aspect-ratio: 684 / 340;
}
.content_offers .card .card__image:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -o-linear-gradient(220deg, rgba(0, 0, 0, 0) 0%,rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.7) 100%);
    background: linear-gradient(230deg, rgba(0, 0, 0, 0) 0%,rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.7) 100%);
    -webkit-transition: var(--transition);
    -o-transition: var(--transition);
    transition: var(--transition);
}
.content_offers .card .card__image:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.35);
    opacity: 0;
    -webkit-transition: var(--transition);
    -o-transition: var(--transition);
    transition: var(--transition);
}
.content_offers .card:hover .card__image:before {
    opacity: 1;
}
.content_offers .card .card__title,
.content_offers .card .card__text {
    -webkit-line-clamp: 2;
}
.content_offers .card .card__title h3{
    font-size: var(--fs-24)
}
@media (max-width: 992px) {
    .block_list.block_list-slider .block--elements {
        width: 100vw;
        margin: var(--g-content) -16px 0;
        padding: 0 16px;
    }
}
.content_offers .card .card__title {
    margin-bottom: 8px;
}
.content_offers .card .card__text {
    font-size: clamp(12px, calc(12px + (16 - 12) * ((100vw - 768px) / 1152)), 16px);
    line-height: 1.5;
}


.popup-cascade {
    overflow: hidden;
}
.popup-cascade .popup__content{
    width: 100%;
    max-height: 100%;
    overflow-y: auto;
    -webkit-transform: translate3d(0, 0, 0)
}
.popup-cascade .popup-cascade--wrapper {

}
.popup-cascade .popup--content_nav {
    position: sticky;
    top: 0;
    left: 0;
    padding: var(--g-32);
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    background-color: #fff;
    z-index: 5;
}
.popup-cascade .popup__close {
    position: static;
}
.popup-cascade .is_cascade {
    padding: 0 var(--g-32) var(--g-32);
}
.popup-cascade .is_cascade > *:first-child {
    margin-top: 0;
}
.popup-cascade .popup--title {
    font-size: clamp(18px, calc(18px + (28 - 18) * ((100vw - 768px) / (1920 - 768))), 28px);
    font-weight: 700;
}
.content_cards .card {
    max-width: 330px;
    min-height: 200px;
}

.js-input_file.hidden{
    display: initial;
    opacity: 0;
    width: 0;
    height: 0;
    position: absolute;
}



/* Search in Header with popup */

.header.header-transparent:not(.scrolled) .header--search .button
{
    --link-c-base: #fff;
    --link-c-hover: var(--c-text-disabled);
    --outlined-c-base: #fff;
    --outlined-bc-base: #fff;
}
.menu__actions [data-closepopup] {
    margin-right: auto;
}
@media(max-width: 992px) {
    .menu__actions {
        gap: 12px;
    }
}


.popup-search
{
    padding: 0;
    background-color: #fff;
    z-index: 54;
    padding-bottom: 64px;
}
.header.scrolled .popup-search {
    transform: translateY(41px);
}
.popup-search .block--wrapper
{
    max-width: 768px;
    margin: 0 auto;
    padding: 0;
}
.popup-search .popup--close {
    position: absolute;
    top: var(--g-32);
    right: var(--g-32);
}
.popup-search .popup--content
{
    width: 100%;
    height: 100%;
    padding: var(--g-content);
}
.popup-search .content_search
{
    max-width: 100%;
    margin: 0 auto;
}



.content_search .block--wrapper
{
    margin-bottom: var(--g-32);
}

.search--input
{
    margin: var(--g-24) 0;
}

.search--input fieldset{
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 4px 12px;
    margin: var(--g-32) 0 var(--g-24);
}
.search--input fieldset label {
    cursor: pointer;
}
.search--input fieldset label span {
    text-align: center;
    white-space: nowrap;
    padding: 8px 0;
    font-size: var(--fs-20);
    color: var(--c-text-subdued);
    font-weight: 500;
    opacity: 0.6;
    background-color: transparent;
    z-index: 3;
    transition: var(--transition);
}
.search--input fieldset label:hover span {
    opacity: 1;
}
.search--input fieldset input[type="radio"]:checked ~ span{
    color: var(--c-text-dark);
    opacity: 1;
}
fieldset{
    border: none;
    padding: 0;
}
.search--input input[type="radio"]{
    display: none;
}
.form--input.form--input-search
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row;

    padding: 12px 16px;

    -webkit-transition: var(--transition);
    -o-transition: var(--transition);
    transition: var(--transition);

    border: 1px solid #e8e8e8;;
    border-radius: var(--border-corner);

    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}
.form--input.form--input-search input[type=search]
{
    padding: 0;

    border: none;
    outline: none;
}
.form--input.form--input-search input[type=search]::-webkit-input-placeholder
{
    color: var(--c-text-subdued);
}
.form--input.form--input-search input[type=search]::-moz-placeholder
{
    color: var(--c-text-subdued);
}
.form--input.form--input-search input[type=search]:-ms-input-placeholder
{
    color: var(--c-text-subdued);
}
.form--input.form--input-search input[type=search]::-ms-input-placeholder
{
    color: var(--c-text-subdued);
}
.form--input.form--input-search input[type=search]:-moz-placeholder-shown
{
    color:var(--c-text-subdued);
}
.form--input.form--input-search input[type=search]:-ms-input-placeholder
{
    color: var(--c-text-subdued);
}
.form--input.form--input-search input[type=search]:placeholder-shown,
.form--input.form--input-search input[type=search]::placeholder
{
    color: var(--c-text-subdued);
}
.form--input.form--input-search:focus-within
{
    border-color: var(--c-dark);
}
.form--input.form--input-search button[type=reset]
{
    margin-left: auto;
}


.form--input-search button[type=reset]
{
    -webkit-transition: var(--transition);
    -o-transition: var(--transition);
    transition: var(--transition);

    opacity: 0;
}
.form--input-search:hover button[type=reset],
.form--input-search:focus button[type=reset],
.form--input-search:focus-within button[type=reset]
{
    opacity: 1;
}

/* clears the 'X' from Internet Explorer */
input[type=search]::-ms-clear
{
    display: none;

    width: 0;
    height: 0;
}

input[type=search]::-ms-reveal
{
    display: none;

    width: 0;
    height: 0;
}

/* clears the 'X' from Chrome */
input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration
{
    display: none;
}

span.is_highlight
{
    background-color: rgba(103,161,122, .3);
}

.search--empty
{
    display: block;

    margin: var(--g-24) 0;
    padding: var(--g-32);

    border-radius: var(--border-corner);
    background-color: var(--c-surface-primary);
}
.search--empty h3
{
    font-size: var(--fs-24);

    margin-bottom: 12px;
}
.search--empty p
{
    font-size: var(--fs-16);
}

.search--items
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;

    margin-top: 16px;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}

.search--item
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row;

    padding: var(--g-elements) 0;

    border-bottom: 1px solid var(--border-color);

    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 12px 16px;
}
.search--item:hover .search--item_title
{
    color: var(--c-text-accent);
}
.search--item_title
{
    font-size: var(--fs-20);
    font-weight: 500;

    display: -webkit-box;
    overflow: hidden;

    width: 100%;

    -webkit-transition: var(--transition);
    -o-transition: var(--transition);
    transition: var(--transition);
    text-overflow: ellipsis;

    -o-text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
.search--item_text
{
    line-height: 1.6;

    display: -webkit-box;
    overflow: hidden;

    width: calc(100% - 64px - 16px);

    text-overflow: ellipsis;

    -o-text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 calc(100% - 64px - 16px);
    flex: 1 1 calc(100% - 64px - 16px);
}
.search--item_image
{
    overflow: hidden;

    width: 64px;
    height: 64px;

    border-radius: 6px;
}
.search--wrapper {
    display: flex;
    gap: 12px
}
.search--wrapper .form--input.form--input-search{
    flex-grow: 1;
}

@media(max-width: 768px) {
    .header__actions .header--search {
        display: none;
    }
}

@media(min-width: 768px) {
    .popup--menu .menu__links, .popup--menu .menu__nav, .popup--menu .menu__actions {
        padding-left: 0;
        padding-right: 0;
        gap: 12px;
    }
    .block_banner .block--content video {
        pointer-events: none;
    }

}


/* Баннер 2 стиль */
@media(max-width: 768px) {
    .block_banner.banner-hero {
        max-height: unset;
        height: auto;
        min-height: unset;
    }
    .banner-hero .banner {
        background-color: var(--c-surface-hero_banner);
    }
    .block_banner.banner-hero .banner {
        padding: 0;
        aspect-ratio: unset;
        height: fit-content;
    }
    .banner-hero .block--content{
        position: relative;
        height: 120vw;
        flex-shrink: 0;
        flex-grow: 0;
    }
    .block_banner.banner-hero .block--head {
        padding: 24px calc((100vw - var(--container)) / 2) 0
    }
    .block_banner.banner-hero .block--actions {
        padding: 0 calc((100vw - var(--container)) / 2) 24px
    }
    .block_banner .block--content video {
        pointer-events: auto;
    }
    .block_banner.banner-hero .slider_controls {
        top: calc(120vw - 48px);
        bottom: unset;
    }
    .block_banner.banner-hero .block--content::before {
        opacity: 0;
    }
}



/* Видео-отзывы */

.content_video_review .card::before {
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    content: '';
    -webkit-transition: var(--transition);
    -o-transition: var(--transition);
    transition: var(--transition);
    opacity: 0;
    background: rgba(0, 0, 0, .35);
}
.content_video_review .card:hover:before {
    opacity: 1;
}
.content_video_review .card .card__content {
    position: relative;
    z-index: 3;
    padding: var(--g-elements);
}
.content_video_review .card {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    flex-direction: column;
    height: auto;
    width: 100%;
    border-radius: var(--border-corner);
    aspect-ratio: 1 / 1;
    max-height: 400px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    cursor: pointer;
}
.content_video_review .card .card__image::after {
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 40%;
    content: '';
    background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .35) 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, .35)));
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .35) 100%);
}
.content_video_review .card::after {
    content: "\e9b7";
    font-family: 'icomoon' !important;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 48px;
    height: 48px;
    border: 2px solid #fff;
    border-radius: 50%;
    color: #fff;
    font-size: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,0.4);
    backdrop-filter: blur(8px);
    opacity: 0.5;
    transition: var(--transition);
    z-index: 3;
}
.content_video_review .card:hover::after{
    opacity: 1;
}
.content_video_review .card .card__image {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    -o-object-position: center;
    object-position: center;
    -o-object-fit: cover;
    object-fit: cover;
}
.content_video_review .card .card__content .card__title {
    font-size: var(--fs-20);
    font-weight: 500;
    color: var(--c-text-white);
}

.content_video_review .card .card__content .card__text {
    color: var(--c-text-white);
    margin-top: 8px;
}

.fancybox__slide.has-html5video .fancybox__content{
    /*margin: 0 !important;*/
    max-width: 80vw !important;
    width: auto !important;
    height: 70vh !important;
    /*align-items: center;*/
    /*justify-content: center;*/
}

/* Новые отзывы */

@media(min-width: 1024px) {
    .content_reviews_ext.block_list:not(.block_list-slider) .block--elements {
        grid-template-columns: repeat(3, 1fr);
    }
}

.content_reviews_ext.block_list:not(.block_list-slider) .block--elements .block--pagination {
    grid-column:  1 / -1;
}
.content_reviews_ext-vertical .review {
    max-width: 920px;
}
.review__head {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.review__source-label {
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.06), 0px 0px 4px 0px rgba(0, 0, 0, 0.04);
    background-color: #fff;
    padding: 12px;
    display: flex;
    align-items: center;
    border-radius: var(--border-corner)
}
.review__source {
    display: flex;
    justify-content: flex-start;
}
.review__source-label img{
    height: 16px;
    object-fit: contain;
    object-position: center;
}
.content_reviews_ext:not(.content_reviews_ext-vertical).block_list .review {
    border: 1px solid rgba(245, 244, 244, 1);
    padding: 24px;
    display: flex;
    flex-direction: column;
    /*max-height: 520px;*/
}
.content_reviews_ext:not(.content_reviews_ext-vertical).block_list .review .review__content{
    /*flex-grow: 1;*/
}
.content_reviews_ext.content_reviews_ext-vertical .review,
.content_reviews_ext.block_element .review {
    padding: 0;
}

.review__content {
    margin-top: 32px;
}

.review_description--clamper {
    /*text-overflow: ellipsis;*/
    /*display: -webkit-box;*/
    /*-webkit-line-clamp: 6;*/
    /*-webkit-box-orient: vertical;*/
    overflow: hidden;
    max-height: calc(1em * 1.5 * 6)
}
.content_reviews_ext-vertical .review_description--clamper{
    /*-webkit-line-clamp: 4;*/
    max-height: calc(1em * 1.5 * 4)
}
.popup .review_description--clamper,
.content_reviews_ext .review.active .review_description--clamper,
.content_reviews_ext-vertical .review.active .review_description--clamper{
    /*-webkit-line-clamp: none;*/
    /*-webkit-line-clamp: unset;*/
    max-height: unset;
}
.review_description--wrapper {
    display: flex;
    flex-direction: column;
    gap: calc(1em * 1.5);
}
.review__author_description_text {
    display: flex;
    align-items: center;
    gap: 8px;
}
.review__stars {
    display: flex;
    align-items: center;
}
.review__content .is_cascade {
    line-height: 1.5;
    font-size: 16px;
}
.review__content .is_cascade > *:first-child {
    margin-top: 0;
}
.review__content .is_cascade > p,
.review__content .is_cascade a:not(.button),
.review__content .is_cascade > span,
.review__content.is_cascade ul li,
.review__content.is_cascade ol li
{
    font-size: 16px;
    margin-top: calc(1em * 1.5);
}
.review__content .is_cascade strong,
.review__content .is_cascade b {
    font-size: var(--fs-18);
    line-height: 1.3;
}
.review__action {
    padding-top: 24px;
    position: relative;
    display: none;
}
.review__action.is_visible {
    display: block;
}
.review__action:before {
    z-index: 1;
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 164px;
    display: block;
    background: linear-gradient(to top, rgba(255,255,255,1) 0% 60px, rgba(255,255,255,0.1) 100%);
    border-radius: 4px;
}
.review.active .review__action:before {
    opacity: 0
}

.review__action .button {
    z-index: 2;
}
.popup-review .review__action{
    display: none;
}
.review_description_title {
    line-height: 1.5;
    margin-bottom: calc(1em * 1.5);
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
}
.review__image {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 6px;
    margin-bottom: 24px;
    position: relative;
    cursor: pointer;
    max-width: 400px;
}
.review__image:before {
    content: attr(data-all);
    color: #fff;
    display: flex;
    font-weight: bold;
    font-size: 14px;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: calc((100% - 6px * 3)/4);
    position: absolute;
    right: 0;
    top: 0;
    background-color: rgba(0,0,0,0.4);
    pointer-events: none;
    border-radius: 4px;
    overflow: hidden;
    opacity: 0;
}
.review__image:has(img:nth-child(1n+5)):before {
    opacity: 1;
}

.review__image img {
    height: 72px;
    border-radius: 4px;
}
.review__image img:nth-child(1n+5) {
    display: none;
}
.popup-review .popup__content{
    max-width: 540px
}

.js-show_review.active .icon-ic24-chevron-down {
    transform: rotate(180deg);
}
.content_reviews_ext.content_reviews_ext-vertical.block_list:not(.block_list-slider) .block--elements {
    grid-template-columns: 1fr;
    gap: 56px;
}
.content_reviews_ext.content_reviews_ext-vertical.block_list:not(.block_list-slider) .block--elements .block--pagination {
    grid-column: span 1;
}
.popup__content .review__image {
    max-width: 100%;
}
#fancybox-wrap, #fancybox-wrap *{
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    -o-box-sizing: content-box;
    -ms-box-sizing: content-box;
    box-sizing: content-box;
}

/* Новые отзывы END */


/* Banner lazy loading */
.banner--play {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    overflow: hidden;
    background-color: rgba(255,255,255,0.2);
    /*display: flex;*/
    align-items: center;
    justify-content: center;
    color: #fff;
    display: none;
    pointer-events: none;
    z-index: 3;
}
.banner--play.not_playing {
    display: flex;
    pointer-events: all;
}

.not_visible {
    opacity: 0;
    transition: 0.8s ease-out;
}
.banner--video {
    position: relative;
    z-index: 1;
}
.banner--poster {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}
/* Banner lazy loading END */

@media(max-width: 680px){
    .footer__bottom-contacts .button span {
        white-space: wrap;
        text-align: left;
    }
}

/* Виджет рассчета стоимости */
.widget_button {
    position: fixed;
    bottom: 40px;
    left: 40px;
    z-index: 36;
}
@media(max-width: 768px){
    .widget_button {
        bottom: 86px;
        left: 10px;
    }
}
.widget_button.is_hidden{
    display: none;
    transition: var(--transition);
}

/* Footer bottom fix */
.developer {
    white-space: nowrap;
}
.footer__bottom .copyright {
    white-space: nowrap;
    flex-wrap: wrap;
}
/* Форма в футере */
.footer__contacts .form fieldset {
    gap: 8px
}
.footer__contacts .form .form__input,
.footer__contacts .form fieldset input {
    flex-shrink: 1;
    flex-grow: 1;
    width: 100%;
}
@media (min-width: 992px) {
    .footer__contacts {
        width: 100%;
    }
}
/* Background pattern */
.-custom-background {
    background-image: url('/upload/image_text/background-pattern.png');
    background-color: var(--c-surface-accent);
    background-repeat: no-repeat;
    background-size: cover;
    padding: var(--g-section) 0;
}
.-custom-background .block--wrapper {
    background-color: #fff;
    border-radius: var(--border-corner);
}
.-custom-background .block--image {
    padding: 8px;
}
.-custom-background .block--image img {
    height: 100%;
    position: static;
}
@media(max-width: 992px){
    .-custom-background .block--image{
        margin-bottom: var(--g-24);
    }
    .-custom-background .block--image ~ .block--head,
    .-custom-background .block--image ~ .block--content,
    .-custom-background .block--image ~ .block--actions {
        padding: 0 16px;
    }
}
.block_image_text-wrapper_bg.-custom-background-wrapper .block--wrapper{
    background-image: url('/upload/image_text/pattern_tropical_3.webp');
    background-repeat: no-repeat;
    background-size: cover;
}

@media (max-width: 768px) {
    .block_banner .banner {
        background-image: url('/upload/image_text/background-pattern.png');
        background-size: 140%;
        background-repeat: repeat-y;
        background-position: bottom;
    }
}

/* Background pattern END */


.prices--list_item_price > span{
    text-decoration: line-through;
    opacity: 0.6;
    position: relative;
    margin-left: 8px;
}
.prices--list_item_price > span:before {
    content: " /";
    position: absolute;
    left: 0;
    transform: translateX(-6px);
}

/* Slider for reviews with autoheight */
.content_reviews_ext:not(.content_reviews_ext-vertical).block_list .review {
    height: auto;
    align-self: flex-start;
}
.block_list.block_list-slider.content_reviews_ext  .slider_controls {
    position: static;
    justify-content: flex-start;
    order: 4;
    margin-bottom: 24px
}
.block_list.block_list-slider.content_reviews_ext .swiper-button-prev,
.block_list.block_list-slider.content_reviews_ext .swiper-button-next {
    transform: none;
}
.block_list.block_list-slider.content_reviews_ext .block--wrapper{
    display: flex;
    flex-direction: column;
}
.block_list.block_list-slider.content_reviews_ext .block--elements{
    width: 100%;
    order: 5;
}
.block_list.block_list-slider.content_reviews_ext .block--head {
    order: 1;
}
.block_list.block_list-slider.content_reviews_ext .block--actions {
    order: 2;
}
.block_list.block_list-slider.content_reviews_ext .block--sections {
    order: 3;
}
@media (max-width: 1023px) {
    .block_list-slider .slider_controls {
        display: none;
    }
}
/* Slider for reviews with autoheight end */

/* высота для баннера */
@media (min-width: 1025px) {
    .block_banner.banner-hero.-ac-height-50 {
        height: 60vh;
    }
    .block_banner.banner-hero.-ac-height-50 .banner {
        padding: calc(var(--g-content) * 2 + var(--headerHeight, 88px)) calc((100% - var(--container)) / 2) var(--g-content);
    }
    .banner-hero.-ac-height-50 + .booking {
        top: calc(60vh - var(--g-content));
    }

}
/* высота для баннера END*/


/* Букинг c эфектом стекла */
.booking-glassmorph .booking__button .icon-ic24-search {
    line-height: 1.1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 1.1em;
    height: 1.1em;
    -webkit-transition: var(--transition);
    -o-transition: var(--transition);
    transition: var(--transition);
    color: inherit;
    aspect-ratio: 1 / 1;
}
.booking-glassmorph .booking__button {
    cursor: pointer;
}
.booking-glassmorph .booking__button--button  {
    height: 100%;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    padding: 12px 10px 0 16px;
    gap: 12px;
}
@media (min-width: 1025px) {
    .banner-hero + .booking.booking-glassmorph  {
        border: solid 1px rgba(255, 255, 255, .15);
        background-color: rgba(255, 255, 255, .25);
        -webkit-backdrop-filter: blur(12px);
        backdrop-filter: blur(12px);
        --c-surface-subdued: transparent;
        --c-text-subdued: #fff;
        top: 100vh;
        width: 600px;
    }
    .banner-hero.-ac-height-50  + .booking.booking-glassmorph {
        top: 60vh;
    }
    .booking-glassmorph .booking__calendar-item {
        --c-text-dark: #fff;
        text-align: center;
    }
    .booking-glassmorph .booking__guests-input,
    .booking-glassmorph .booking__calendar--item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .booking-glassmorph .booking__calendar-item {
        min-height: auto;
        padding: 12px 2px;
    }
    .booking-glassmorph .booking--caption{
        font-size: 14px;
        text-align: center;
        color: #fff;
    }
    main > .booking-glassmorph #booking__guests_input {
        height: 44px;
        padding: 12px 16px;
        text-align: center;
    }
    .booking-glassmorph .booking__guests-input {
        padding: 0;
    }
    .booking-glassmorph .booking__calendar--item:nth-child(2),
    .booking-glassmorph .booking__guests,
    .booking-glassmorph .booking__button {
        border-left: 1px solid rgba(255, 255, 255, .15);
    }
    .booking-glassmorph .booking__calendar {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 36%;
        flex: 1 1 36%;
    }
}
@media(max-width: 1024px){
    .booking__button--button {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 12px;
        text-align: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        background-color: var(--c-surface-accent);
        color: var(--c-text-white);
        gap: 8px;
        border-radius: var(--border-corner);
    }
    .booking-glassmorph .booking__guests-input {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column ;
        flex-direction: column ;
        text-align: center;
        gap: 8px;
        color: currentColor;
    }
    .booking-glassmorph .booking__calendar--item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        text-align: center;
        gap: 8px;
        border-radius: var(--border-corner);
        background-color: var(--c-surface-subdued);
        padding-bottom: 12px;
    }
    .booking-glassmorph .booking__calendar-item {
        min-height: auto;
        text-align: center;
        padding-bottom: 0;
    }
}

@media (max-width: 992px) {
    .booking.booking-glassmorph{
        flex-direction: column;
        max-width: 100%;
        -webkit-box-shadow: none;
        box-shadow: none;
        padding: var(--g-content) 16px;
        margin: 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    }
    .booking-glassmorph .booking__calendar {
        -ms-grid-column-span: 2;
        grid-column: span 2;
    }
    .booking-glassmorph .booking__button--button {
        padding-bottom: 12px;
        gap: 8px;
    }
}

.accommodation_description--aside .booking-glassmorph .booking__button--button {
    padding-bottom: 12px;
    gap: 8px;
}
.accommodation_description--aside .booking-glassmorph .booking__calendar {
    -ms-grid-column-span: 2;
    grid-column: span 2;
}
.accommodation_description--aside .booking.booking-glassmorph{
    flex-direction: column;
    max-width: 100%;
    -webkit-box-shadow: none;
    box-shadow: none;
    padding: 0;
    margin: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
}

.accommodation_description--aside .booking__button--button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 12px;
    text-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: var(--c-surface-accent);
    color: var(--c-text-white);
    gap: 8px;
    border-radius: var(--border-corner);
}
.accommodation_description--aside .booking-glassmorph .booking__guests-input {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column ;
    flex-direction: column ;
    text-align: center;
    gap: 8px;
    color: currentColor;
    padding: 12px 0;
}
.accommodation_description--aside .booking-glassmorph .booking__calendar--item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    gap: 8px;
    border-radius: var(--border-corner);
    background-color: var(--c-surface-subdued);
    padding-bottom: 12px;
    width: 100%;
}
.accommodation_description--aside .booking-glassmorph .booking__calendar-item {
    min-height: auto;
    text-align: center;
    padding-bottom: 0;
}
@media (min-width: 1025px) {
    .accommodation_description--aside .booking--caption {
        font-size: 14px;
        text-align: center;
        color: var(--c-text-subdued);
    }
}
@media (min-width: 1025px) {
    .accommodation_description--aside .booking-glassmorph .booking__calendar-item {
        --c-text-dark: var(--c-text-subdued);
    }
    .accommodation_description--aside .booking__button .booking--caption {
        color: #fff;
    }
}
/* Букинг c эфектом END */

@media(max-width: 668px) {
    .litepicker .container__footer {
        box-shadow: none;
        background-color: #fff;
        border-bottom-left-radius: var(--border-corner);
        border-bottom-right-radius: var(--border-corner);
        border-top: 1px solid var(--c-surfice-accent-opacity);
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
    }

    .litepicker .container__months {
        box-shadow: none;
        -webkit-box-shadow: none;
        border-radius: 0;
        border-top-left-radius: var(--border-corner);
        border-top-right-radius: var(--border-corner);
        padding-top: 42px;
    }
    .litepicker .container__footer .button-cancel,
    .litepicker .container__footer .button-apply {
        padding: 6px 10px;
        margin: 0;
    }
    .litepicker .container__footer .button-cancel {
        margin-left: auto;
        position: absolute;
        top: 8px;
        right: 5px;
        width: 36px;
        height: 36px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .litepicker .container__footer .button-apply {
        flex-grow: 1;
    }

    .litepicker .container__footer .preview-date-range {
        width: 100%;
        padding: 10px;
        text-align: center;
    }
}
p.accordion__item-button-text{
    margin-top:0;
}

.prices--list_category_name {

    padding: var(--g-32) 0;
    margin: 0;
}

/*new block*/

.content_threatment .block--wrapper
{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
@media (max-width: 992px)
{
    .content_threatment .block--wrapper
    {
        grid-template-columns: 1fr;
    }
}
.content_threatment--item
{
    overflow: hidden;
    padding: clamp(16px, 16px + 24 * (100vw - 768px) / 1152, 40px);
    border-radius: var(--border-corner);
    background-color: #CADCC1;
    width: 100%;
}
.content_threatment--item_content
{
    height: 100%;
    padding: 24px;
    border-radius: var(--border-corner);
    background-color: #fff;
    -webkit-box-shadow: 0 193px 54px 0 rgba(0, 0, 0, 0), 0 123px 49px 0 rgba(0, 0, 0, .01), 0 69px 42px 0 rgba(0, 0, 0, .03), 0 31px 31px 0 rgba(0, 0, 0, .05), 0 8px 17px 0 rgba(0, 0, 0, .06);
    box-shadow: 0 193px 54px 0 rgba(0, 0, 0, 0), 0 123px 49px 0 rgba(0, 0, 0, .01), 0 69px 42px 0 rgba(0, 0, 0, .03), 0 31px 31px 0 rgba(0, 0, 0, .05), 0 8px 17px 0 rgba(0, 0, 0, .06);
}
@media (min-width: 992px)
{
    .content_threatment--item_content
    {
        padding: var(--g-32);
    }
}
.content_threatment--item_content h4
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.content_threatment--item_content h4 svg
{
    margin-right: 16px;
}

.block_list.content_galleries .block--elements
{
    grid-template-columns: repeat(4, 1fr);
    gap: 24px 16px;
}
.block_list.content_galleries .block--elements .block--pagination
{
    grid-column: span 4;
}
@media (max-width: 1024px)
{
    .block_list.content_galleries .block--elements
    {
        grid-template-columns: repeat(3, 1fr);
        gap: 12px 8px;
    }
    .block_list.content_galleries .block--elements .block--pagination
    {
        grid-column: span 3;
    }
}
@media (max-width: 640px)
{
    .block_list.content_galleries .block--elements
    {
        grid-template-columns: repeat(1, 1fr);
        gap: 12px 8px;
    }
    .block_list.content_galleries .block--elements .block--pagination
    {
        grid-column: span 1;
    }
}
.popup-cascade .accordion .is_cascade{
    padding: 0;
}
.logo_in_cascade{
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: var(--g-24);
}


/* search */
#search-container {
    position: fixed;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 49;
    background-color: white;
    padding: 6px;
    box-shadow: 0 3px 6px -3px rgba(23, 24, 24, 0.08), 0 8px 20px -4px rgba(23, 24, 24, 0.12);
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid var(--c-surface-subdued-hovered);
    border-radius: var(--border-corner);
}

.highlighted_search {
    background-color: #53A600;
    color: #fff;
}

.active_search {
    background-color: rgba(83,166,0, 0.3);
}

/* Прокручиваемый контент */
#content {
    margin-top: 80px; /* Чтобы кнопки не закрывали контент */
}

.navigation-btn {
    cursor: pointer;
    font-size: 18px;
    padding: 5px;
    background-color: transparent;
    border: none;
    outline: none;
    color: #333;
}
#search-input {
    border: transparent;
    border-radius: var(--border-corner);
    outline: none;
}
#search-container .button-search{
    line-height: 1;
}
#match-count {
    margin: 0 16px;
}
#search-container .form--input.form--input-search {
    overflow: hidden;
}
@media(max-width: 768px){
    #search-container {
        display: grid;
        grid-template-columns: 1fr 2fr 1fr;
        width: 96vw;
        bottom: 84px;
    }
    #search-container .button-search{
        grid-column: 3
    }
    #search-container .form--input.form--input-search {
        grid-column: 1 / span 2;
        padding: 8px 12px;
    }
    #match-count {
        grid-row: 2;
        grid-column: 2;
        text-align: center;
    }
    .search_nav_prev{
        grid-row: 2;
        grid-column: 1;
    }
    .search_nav_next {
        grid-row: 2;
        grid-column: 3;
    }
}
.hotel_selector {
    position: fixed;
    bottom: 50%;
    right: 0;
    background-color: var(--c-surface-accent);
    color: var(--c-text-white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient:
            vertical;
    -webkit-box-direction:
            normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack:
            center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align:
            center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 40;
    -webkit-box-shadow:
            0 0 2px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.08);
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.08);
    padding:
            8px 16px;
    cursor: pointer;
    -webkit-transform:
            rotate(270deg) translateY(105%);
    -ms-transform: rotate(270deg) translateY(105%);
    transform: rotate(270deg) translateY(105%);
    -webkit-transform-origin:
            top;
    -ms-transform-origin: top;
    transform-origin: top;
}


/* выбор отеля */
.popup.popup-hotels {
    padding: 0
}
.popup-hotels .popup__content{
    max-width: 100vw;
    width: 100%;
    height: 100%;
    padding-top: var(--headerHeight, 100px);
}
/* End */

.popup--cookie {
    place-items: end start;
    pointer-events: none;
    background: transparent;
    padding: 12px;
}
.popup.active.popup--cookie {
    pointer-events: none;
}
.popup--cookie .popup__content {
    padding: 16px;
    border: 1px solid #edeeef;
    box-shadow: 0 3px 6px -3px rgba(23, 24, 24, .08), 0 8px 20px -4px rgba(23, 24, 24, .12);
    max-width: 480px
}
.popup.active.popup--cookie .popup__content{
    pointer-events: auto;
}
.popup--cookie .popup__content-text{
    margin: 8px 0 12px;
    font-size: 14px;
}
.popup--cookie .button {
    font-size: 12px;
    padding: 8px 12px
}
.popup--cookie .popup__content-text a {
    color: var(--c-text-accent);
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-skip-ink: none;
}
@media(max-width: 768px) {
    .popup--cookie {
        padding: 8px 8px 76px;
    }
    .popup--cookie .popup__content-text {
        font-size: 12px
    }
}
/*scheme start*/
.content_scheme
{
    overflow: hidden;
    position: relative;
    margin: 5rem 0 !important;
}
.content_scheme .scheme
{
    aspect-ratio: 1600/700;
    max-width: inherit;
}
.content_scheme svg image
{
    width: 100%;
    height: 100%;
}
@media (max-width: 1472px)
{
    .content_scheme .scheme_svg
    {
        overflow-x: auto;
        overflow-y: clip;
    }
}
@media (max-width: 768px)
{
    .content_scheme .scheme_svg
    {
        position: relative;

        width: auto;
        height: 130vh;
        max-height: 130vh;
    }
    .content_scheme .scheme_svg svg
    {
        height: 100%;
    }
}

.content_scheme .scheme--tooltip
{
    position: fixed;
    z-index: 6;

    max-width: 240px;
    padding: 12px 18px;

    -webkit-transition: opacity .18s;
    -o-transition: opacity .18s;
    transition: opacity .18s;
    pointer-events: none;

    opacity: 0;
    border-radius: 8px;
    background-color: #fff;
}
.content_scheme .scheme--tooltip p
{
    font-size: var(--fs-16);

    display: -webkit-box;
    overflow: hidden;

    color: #2a2827;

    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
.content_scheme .scheme--tooltip.is_active
{
    opacity: 1;
}
.content_scheme .placemark{
    cursor: pointer;
}
.placemark_title
{
    font-size: 14px;
    font-weight: 700;

    fill: #1d6f9d;
}
/*clouds start*/

.content_scheme .clouds
{
    position: absolute;
    z-index: 4;
    top: 0;
    left: 0;

    overflow: hidden;

    width: 100%;
    height: 100%;

    pointer-events: none;
}
.content_scheme .clouds:after,
.content_scheme .clouds:before
{
    position: absolute;
    left: 50%;

    width: 200%;

    content: '';
    pointer-events: none;

    background-size: cover;

    inset: 0;
}

@-webkit-keyframes clouds-top
{
    0%
    {
        translate: 0 0;
    }
    50%
    {
        translate: -20% 0;
    }
    100%
    {
        translate: 0 0;
    }
}

@keyframes clouds-top
{
    0%
    {
        translate: 0 0;
    }
    50%
    {
        translate: -20% 0;
    }
    100%
    {
        translate: 0 0;
    }
}

@-webkit-keyframes clouds-bottom
{
    0%
    {
        translate: 0 0;
    }
    50%
    {
        translate: -20% 0;
    }
    100%
    {
        translate: 0 0;
    }
}

@keyframes clouds-bottom
{
    0%
    {
        translate: 0 0;
    }
    50%
    {
        translate: -20% 0;
    }
    100%
    {
        translate: 0 0;
    }
}
.content_scheme .clouds:after
{
    -webkit-animation: clouds-top 35s linear infinite;
    animation: clouds-top 35s linear infinite;

    background-image: url('/upload/scheme/top.png');
    background-repeat: no-repeat;
    background-position: top;
    background-size: contain;
}
.content_scheme .clouds:before
{
    -webkit-animation: clouds-bottom 30s linear infinite;
    animation: clouds-bottom 30s linear infinite;

    background-image: url('/upload/scheme/bottom.png');
    background-repeat: no-repeat;
    background-position: bottom;
    background-size: contain;
}
/*clouds end*/
.popup-scheme .is_hidden{
    display: none;
}
.popup-scheme  .popup__content
{
    width: 100%;
    max-width: 512px;
    padding: 54px 16px 16px;
    background-color: var(--c-surface-default);
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.popup-scheme  .popup__close{
    top: 0;
    right: 0;
}
.popup-scheme  .popup__content_title
{
    font-size: var(--fs-28);
    font-weight: 700;
}
@media (max-width: 768px) {
    .popup-scheme{
        padding: 8px;
        place-items: center;
    }
}
.popup-scheme  .popup__content_image{
    display: flex;
    border-radius: var(--border-corner);
    overflow: hidden;
    height: auto;

}
.popup-scheme  .popup__content_image img{
    aspect-ratio: 3 / 2;
}
.popup-scheme  .popup__content_description{
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.content_contacts__description{
	width: 100%;
}
/*scheme end*/
@media(max-width: 1024px){
    .swiper-button-next, .swiper-button-prev {
        width: 36px;
        height: 36px
    }
    .swiper-pagination-fraction {
        font-size: 14px
    }
    .swiper-button-next::after, .swiper-button-prev::after {
        font-size: 18px
    }
    .gallery .slider_controls {
        right: 16px;
        bottom: 16px
    }
}

[data-popup="popup_for_cookie"] .popup__content{
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 6px 8px;
}
@media(max-width: 1024px){
[data-popup="popup_for_cookie"] .popup__content-title {
    font-size: 14px
}
.page{
    max-width: 100vw;
    overflow-x: hidden;
}
}
.accordion {
    overflow: hidden;
}
/* End */
/* /local/templates/main/styles.css?17459357094573 */
/* /local/templates/main/template_styles.css?174593570957184 */
