@charset "UTF-8";



* {
    box-sizing: border-box;
    font-family: Montserrat;
    outline: none;
    -ms-overflow-style: none;
    scrollbar-width: thin
}

.btn {
    border: none;
    border-radius: 150px;
    cursor: pointer;
    font-family: Montserrat, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    outline: none;
    padding: 15px 50px;
    transition: all .3s ease
}

.btn-primary {
    background-color: var(--color-main, #8c9e69);
    color: var(--color-white)
}

.btn-primary-green {
    background-color: var(--color-green);
    color: var(--color-white)
}

.btn-primary-booking {
    align-items: center;
    background: var(--color-main, #8c9e69);
    border-radius: 200px;
    box-shadow: inset .63px 1.25px 1.88px #00000040;
    color: #fff;
    display: flex;
    font-size: 12.54px;
    font-weight: 500;
    height: 35px;
    justify-content: center;
    letter-spacing: 0;
    line-height: 15px;
    text-align: center;
    width: 105px
}

.btn-primary-booking:hover,
.btn-primary-green:hover,
.btn-primary:hover {
    background-color: var(--color-dark-main, #525f45)
}

.btn-secondary {
    background-color: transparent;
    border: 1px solid var(--color-dark-main, #525f45);
    color: var(--color-dark-main, #525f45)
}

.btn-secondary:hover {
    background-color: var(--color-gray);
    border-color: var(--color-gray);
    color: var(--color-white)
}

@media screen and (max-width:1279px) {
    .btn-primary-booking {
        font-size: 14px;
        padding: 10px
    }
}

@media screen and (max-width:767px) {
    .btn-primary-green {
        background-color: var(--color-muted-green)
    }

    .btn {
        font-size: 14px;
        font-style: Medium;
        font-weight: 500;
        text-align: center
    }
}

.fs-menu  {
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    background: #0000004d;
    bottom: 0;
    flex-direction: column;
    font-family: Montserrat, sans-serif;
    font-style: normal;
    height: 100vh;
    left: 0;
    line-height: normal;
    position: fixed;
    right: 0;
    top: 0;
    width: 100vw;
    z-index: 20
}

.fs-menu,
.fs-menu__header,
.fs-menu__subheader  {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.fs-menu__header,
.fs-menu__subheader  {
    padding: 40px 50px;
    width: 100%
}

.fs-menu__subheader  {
    padding: 56px 50px 10px
}

.fs-menu__logo-link  {
    align-items: center;
    display: flex
}

.fs-menu__logo  {
    height: 40px;
    width: auto
}

.fs-menu__back-icon,
.fs-menu__close-icon  {
    cursor: pointer;
    height: 20px;
    transition: all .3s ease;
    width: 20px
}

.fs-menu__back-icon :hover,
.fs-menu__close-icon :hover {
    opacity: .8;
    transform: scale(1.1)
}

.fs-menu__divider  {
    background-color: #ccc;
    height: 1px;
    margin-bottom: 30px;
    width: 100%
}

.fs-menu__list-container  {
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: space-between;
    overflow-y: auto;
    padding: 0 50px 40px;
    text-align: left;
    width: 100%
}

.fs-menu__child-list,
.fs-menu__list  {
    list-style: none;
    margin: 0;
    padding: 0
}

.fs-menu__item-wrapper  {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding: 10px 0
}

.fs-menu__link  {
    color: var(--color-white);
    font-size: 18px;
    font-weight: 500;
    text-decoration: none;
    text-transform: uppercase;
    transition: color .3s ease
}

.fs-menu__child-link  {
    font-weight: 500
}

.fs-menu__child-link,
.fs-menu__child-list .fs-menu__child-link  {
    color: var(--color-white);
    font-size: 14px;
    text-decoration: none;
    text-transform: none;
    transition: color .3s ease
}

.fs-menu__child-list .fs-menu__child-link  {
    font-weight: 300
}

.fs-menu__child-link :hover,
.fs-menu__link :hover {
    color: var(--color-white)
}

.fs-menu__child-link :after,
.fs-menu__link :after {
    background: var(--color-white, #8c9e69);
    bottom: 0;
    color: var(--color-white);
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    right: 0;
    text-decoration: none;
    transform: scaleX(0);
    transition: transform .3s ease
}

.fs-menu__child-link :hover:after,
.fs-menu__link :hover:after {
    transform: scaleX(1)
}

.fs-menu__footer  {
    align-items: center;
    flex-direction: column;
    height: 132px;
    margin-bottom: 43px
}

.fs-menu__button-container,
.fs-menu__footer  {
    display: flex;
    justify-content: center;
    width: 100%
}

.fs-menu__button,
.fs-menu__button-container  {
    text-decoration: none
}

.fs-menu__button  {
    background-color: transparent;
    border: 1px solid var(--color-white);
    height: 50px;
    margin-bottom: 30px;
    padding: 15px 25px;
    width: -moz-fit-content;
    width: fit-content
}

.menu-slide-enter-active,
.menu-slide-leave-active  {
    overflow: hidden;
    transition: max-height .7s ease-in-out
}

.menu-slide-enter-from,
.menu-slide-leave-to  {
    max-height: 0
}

.menu-slide-enter-to,
.menu-slide-leave-from  {
    max-height: 500px
}

.arrow-right-menu  {
    width: 22px
}

.fs-menu__subheader-title  {
    color: var(--color-white);
    font-size: 18px;
    font-weight: 500;
    text-decoration: none;
    text-transform: uppercase
}

.fs-menu__arrow  {
    cursor: pointer;
    transition: transform .3s ease
}

.fs-menu__arrow_flipped  {
    transform: rotate(180deg)
}

.hamburger-icon {
    cursor: pointer;
    display: flex;
    flex-direction: column;
    height: 25px;
    justify-content: space-around;
    width: 25px
}

.hamburger-icon__line {
    background-color: #fff;
    height: 2px;
    width: 100%
}

svg {
    height: 22px;
    width: 21px
}

.header {
    background: var(--3c24f0eb);
    color: var(--color-white);
    font-family: Montserrat,sans-serif;
    font-style: normal;
    left: 0;
    line-height: normal;
    padding: 15px 0;
    position: fixed;
    top: 0;
    transition: background .3s ease;
    width: 100%;
    z-index: 9
}

.header:before {
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    content: "";
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: var(--6583a0de);
    opacity: 0;
    position: absolute;
    transition: opacity .3s ease;
    width: 100%;
    z-index: -1
}

.header.scrolled,.header:hover {
    background: #0000004d
}

.header.scrolled:before,.header:hover:before {
    opacity: 1
}

.header.force-scrolled {
    background: #0000004d
}

.header__space {
    height: 90px
}

.header__container {
    box-sizing: border-box;
    height: 60px;
    margin: 0 auto;
    max-width: 3840px;
    padding: 0 7.5% 0 5.5%;
    width: 100%
}

.header__container,.header__wrapper {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.header__wrapper {
    flex: 1;
    gap: 40px
}

.header__logo-container {
    flex-grow: 0;
    flex-shrink: 1;
    max-height: 60px;
    max-width: 200px
}

.header__logo {
    display: block;
    max-height: 60px;
    max-width: 200px;
    -o-object-fit: contain;
    object-fit: contain
}

.header__logo-link {
    display: block;
    max-height: 100%;
    max-width: 100%
}

.header__info-container {
    align-self: center;
    display: flex;
    flex-direction: column;
    gap: 5px
}

.header__address-link,.header__info-link,.header__phone-link {
    color: var(--color-white);
    cursor: pointer;
    display: flex;
    gap: 14px;
    text-decoration: none
}

.header__phone-link {
    white-space: nowrap
}

.header__info-address,.header__info-contacts {
    font-size: 12px;
    font-weight: 400;
    margin: 0
}

.header__info-contacts {
    display: flex;
    font-size: 14px;
    font-weight: 700;
    gap: 14px
}

.header__button-container {
    height: 52px;
    width: 184px
}

.header__button-link {
    border: 1px solid var(--color-white);
    height: 100%;
    margin-left: 20px;
    padding: 15px;
    width: 100%
}

.header__logo-address-container {
    align-items: flex-start;
    display: flex;
    gap: 20px
}

.header__address-link {
    align-items: center;
    color: var(--color-white);
    cursor: pointer;
    display: flex;
    text-decoration: none
}

.header__info-address {
    font-size: 14px;
    font-weight: 400;
    margin: 0
}

.header__phone-social-container {
    align-items: center;
    display: flex;
    gap: 10px
}

.header__info-phone {
    font-size: 14px;
    font-weight: 700
}

.header__phone-link {
    color: var(--color-white);
    text-decoration: none
}

.header__social-icons {
    display: flex;
    gap: 10px
}

.header__social-link {
    text-decoration: none
}

.header__social-image {
    display: block;
    height: 21px;
    -o-object-fit: contain;
    object-fit: contain
}

@media (max-width: 1280px) {
    .header__phone-social-container {
        display:none
    }
}

.header-404 {
    background: #0000004d
}

.main-menu {
    height: 60px
}

.main-menu--no-booking-button {
    flex-basis: 60%
}

.main-menu__list {
    gap: 31px;
    list-style-type: none;
    margin: 0;
    padding: 0
}

.main-menu__item,.main-menu__list {
    align-items: center;
    display: flex;
    height: 100%
}

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

.main-menu__item,.main-menu__item_has-submenu {
    position: relative
}

.main-menu__item_has-submenu:after {
    content: "";
    height: 30px;
    left: 0;
    position: absolute;
    right: 0;
    top: 100%;
    z-index: 10
}

.main-menu__link {
    align-items: center;
    color: var(--color-white);
    cursor: pointer;
    display: flex;
    font-size: 14px;
    font-weight: 500;
    justify-content: center;
    padding: 10px 0;
    position: relative;
    text-decoration: none
}

.main-menu__title {
    flex-shrink: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.main-menu__icon {
    flex-shrink: 0;
    height: 4px;
    margin-left: 5px;
    transition: transform .3s ease;
    width: 8px
}

.main-menu__link:hover {
    color: var(--color-white,#8c9e69)
}

.main-menu__link:hover>svg {
    transform: rotate(180deg)
}

.main-menu__link:after {
    background: var(--color-white,#8c9e69);
    bottom: 5px;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    right: 0;
    transform: scaleX(0);
    transition: transform .3s ease
}

.main-menu__link:hover:after {
    transform: scaleX(1)
}

.submenu {
    align-items: flex-start;
    border-radius: var(--f70945ae);
    display: flex;
    flex-direction: column;
    gap: 20px;
    height: var(--525286b2);
    left: 0;
    list-style-type: none;
    margin: 0;
    min-width: 212px;
    padding: 5px 20px 30px;
    position: absolute;
    top: calc(100% + 15px);
    z-index: 20
}

.submenu:before {
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    background: #0000004d;
    border-radius: inherit;
    bottom: 0;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1
}

.submenu .submenu {
    border-radius: var(--82253c9c);
    height: var(--39a0e5fb)
}

.submenu .submenu:before {
    border-radius: inherit
}

.submenu .submenu {
    border-left: 1px solid hsla(0,0%,100%,.3);
    left: calc(100% - 1px);
    top: 0
}

.submenu__link__wrap {
    width: 200px
}

.submenu__link,.submenu__link__wrap {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.submenu__link {
    color: var(--color-white);
    font-size: 14px;
    padding-right: 5px;
    position: relative;
    text-decoration: none;
    transition: color .3s ease;
    white-space: nowrap;
    width: 100%
}

.grandchild-link {
    font-size: 14px;
    font-weight: 300;
    line-height: 17.07px
}

.submenu__icon {
    margin-left: auto;
    transform: rotate(270deg)
}

.submenu__link:hover .submenu__icon {
    transform: translate(5px)
}

.submenu__link:hover:after {
    background: var(--color-white,#8c9e69);
    bottom: -4px;
    transform: scaleX(1)
}

.submenu__link:after,.submenu__link:hover:after {
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    right: 0;
    transition: transform .3s ease
}

.submenu__link:after {
    background: transparent;
    bottom: 5px;
    transform: scaleX(0)
}

.submenu__link:active {
    color: var(--color-white,#8c9e69)
}

.main-menu__link>svg>path {
    stroke: #fff
}

.main-menu__link:hover>svg>path {
    stroke: var(--color-white,#8c9e69)
}

.main-menu__item_has-submenu .main-menu__link:hover {
    color: var(--color-white,#8c9e69)
}

.submenu-fade-enter-active,.submenu-fade-leave-active {
    transition: none
}

.submenu-fade-enter-from,.submenu-fade-enter-to,.submenu-fade-leave-from,.submenu-fade-leave-to {
    opacity: 1
}

.header__cart-button {
    background: none;
    border: 0;
    cursor: pointer;
    position: relative
}

.header__cart-button__icon {
    height: 27px;
    width: 26px;
    fill: var(--color-white)
}

.header__cart-button__count {
    align-items: center;
    background-color: var(--color-error);
    border-radius: 50%;
    bottom: 7px;
    color: var(--color-white);
    display: flex;
    font-size: 7px;
    font-weight: 500;
    height: 13px;
    justify-content: center;
    min-width: 13px;
    position: absolute;
    right: 0;
    width: 13px
}

@media (max-width: 1280px) {
    .main-menu__list {
        display:none
    }

    .header {
        padding: 20px 0
    }

    .header__logo {
        max-width: 135px
    }

    .header__button-container,.header__button-link {
        display: none
    }

    .header__space {
        height: 85px
    }

    .header__container {
        height: 45px
    }

    .header__cart-button {
        display: none
    }
}

@media (max-width: 699px) {
    .header {
        padding:15px 0
    }

    .header__space {
        height: 70px
    }

    .header__container {
        height: 40px
    }

    .header__logo,.header__logo-container {
        max-height: 40px
    }

    .header__info-contacts {
        display: none
    }

    .header__info-address {
        font-size: 9px;
        width: 110px
    }

    .header__wrapper {
        gap: 20px
    }
}

.header__nav {
    align-items: center;
    display: flex;
    gap: 30px
}

@media (max-width: 600px) {
    .header__nav {
        display:none
    }
}

.header__nav .header__link {
    color: #fff;
    font-family: Montserrat;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 22px;
    text-align: left;
    text-decoration: none
}

.header__nav .nav__dropdown {
    cursor: pointer;
    display: flex;
    flex-direction: column;
    position: relative
}

.header__nav .nav__dropdown .dropdown__header {
    align-items: center;
    display: flex;
    gap: 10px
}

.header__nav .nav__dropdown .dropdown__list {
    background: #fff;
    border: 1px solid rgba(0,0,0,.3);
    border-radius: 5px;
    display: flex;
    flex-direction: column;
    list-style-type: none;
    margin: 0;
    min-height: 100px;
    min-width: 200px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    top: 42px;
    z-index: 999
}

.header__nav .nav__dropdown .dropdown__list li a {
    align-items: center;
    color: #000;
    cursor: pointer;
    display: flex;
    height: 30px;
    padding: 5px 10px
}

@media (hover: hover) {
    .header__nav .nav__dropdown .dropdown__list li a:hover {
        background:#0000001a;
        transition: .3s
    }
}

.header__booking-btn {
    align-items: center;
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    background: var(--color-main,#8c9e69);
    border: none;
    border-radius: 200px;
    color: #fff;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    font-size: 14px;
    font-weight: 400;
    height: 42px;
    justify-content: center;
    letter-spacing: 0;
    line-height: 22px;
    margin-left: 20px;
    padding: 12.5px 19px;
    text-align: center;
    text-decoration: none;
    width: 152px
}

@media (max-width: 1280px) {
    .header__booking-btn {
        display:none
    }
}

.header__booking-btn--hidden {
    opacity: 0;
    pointer-events: none;
    visibility: hidden
}

.header__booking-btn:hover {
    background-color: var(--color-dark-main,#525f45)
}

.header__booking-btn-placeholder {
    height: 42px;
    margin-left: 20px;
    pointer-events: none;
    visibility: hidden;
    width: 152px
}

@media (max-width: 1280px) {
    .header__booking-btn-placeholder {
        display:none
    }
}

.header__booking-btn-placeholder--hidden {
    opacity: 0;
    pointer-events: none;
    visibility: hidden
}

.bottom-space {
    background-color: #2e2e2e;
    display: none
}

@media screen and (max-width: 767px) {
    .bottom-space {
        display:block;
        height: 61px
    }
}





 


















.footer {
    background-color: #2e2e2e;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding: 0;
    position: relative
}

.footer__container {
    gap: 10px;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 100%;
    padding: 40px;
    width: 100%
}

.footer__container,
.footer__left {
    align-items: flex-start;
    display: flex
}

.footer__left {
    flex: 0 0 auto;
    flex-direction: column;
    min-width: 200px
}

.footer__logo {
    display: block;
    margin-bottom: 20px;
    margin-top: 5px;
    max-height: 60px;
    max-width: 200px;
    -o-object-fit: contain;
    object-fit: contain
}

.footer__logo-link {
    display: flex;
    justify-content: flex-start
}

.footer__social {
    align-items: center;
    display: flex;
    gap: 20px;
    justify-content: center;
    width: 100%
}

.footer__social-link {
    display: block
}

.footer__social-image {
    display: block;
    filter: invert(27%) sepia(49%) saturate(225%) hue-rotate(166deg) brightness(130%) contrast(23%);
    height: 23.88px;
    -o-object-fit: contain;
    object-fit: contain
}

.footer__menu {
    display: flex;
    flex: 1 1 auto;
    justify-content: center;
    margin: 0 0 0 20px;
    max-width: 1100px;
    min-width: 0
}

.footer__menu-column {
    border-right: 1px solid #8b8b8b;
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 15px;
    list-style-type: none;
    margin: 0;
    min-width: 0;
    padding: 0 15px
}

.footer__menu-link {
    color: #fff;
    display: block;
    text-decoration: none;
    transition: color .3s ease;
    width: 100%
}

.footer__menu-title {
    font-weight: 600
}

.footer__menu-link .footer__menu-text,
.footer__menu-title {
    display: block;
    font-size: 14px;
    margin: 0;
    max-width: 80%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.footer__menu-link .footer__menu-text {
    font-weight: 300
}

.footer__menu-link:hover {
    color: #8b8b8b
}

.footer__contact-info {
    flex: 0 1 auto;
    min-width: 0
}

.footer__contact-item {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: end;
    padding-bottom: 15px
}

.footer__contact-icon {
    height: 20px;
    width: 20px
}

.footer__email,
.footer__phone {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none
}

.footer__address {
    color: #fff;
    display: flex;
    font-size: 16px;
    font-weight: 300;
    margin-top: 15px;
    text-align: right
}

.footer__how-to-find-us-link {
    align-items: center;
    border: 1px solid #fff;
    border-radius: 200px;
    color: #fff;
    display: flex;
    font-weight: 600;
    gap: 10px;
    height: 42px;
    justify-content: center;
    padding: 12px 19px;
    text-decoration: none;
    transition: all .3s ease-in-out;
    width: 230px
}

.footer__how-to-find-us-link:hover {
    background-color: var(--color-main, #8c9e69);
    border-color: var(--color-main, #8c9e69)
}

.footer__how-to-find-us-span {
    font-size: 11px;
    font-weight: 300;
    letter-spacing: 0;
    line-height: 100%;
    text-align: center
}

.footer__arrow-icon {
    height: 20px;
    width: 20px
}

.footer__copyright-container {
    display: flex;
    gap: 30px;
    justify-content: center;
    padding: 0 50px;
    width: 100%
}

.footer__copyright {
    color: #8b8b8b;
    font-size: 16px;
    font-weight: 300;
    line-height: 140%;
    margin: 0 0 0 10px;
    padding: 0 0 37px;
    text-align: center
}

.footer__menu-column:not(:first-child) li:first-child .footer__menu-link,
.footer__menu-column:not(:first-child) li:first-child .footer__menu-link .footer__menu-text {
    font-weight: 600 !important;
    text-transform: uppercase
}

.footer__menu-column:first-child .footer__menu-link,
.footer__menu-column:first-child .footer__menu-link .footer__menu-text,
.footer__menu-column:first-child .footer__menu-link strong {
    font-weight: 600 !important;
    letter-spacing: .5px;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    text-transform: uppercase !important;
    white-space: nowrap !important
}

.tablet {
    align-items: flex-end;
    display: flex;
    flex-direction: column;
    justify-content: end;
    margin-left: 30px
}

@media screen and (max-width:1530px) {
    .footer__container {
        flex-direction: column;
        padding: 30px 20px
    }

    .footer__menu {
        display: flex;
        flex: 1 1 auto;
        gap: 30px;
        justify-content: center;
        margin: 0 auto
    }

    .footer__menu-column li {
        max-width: 95%
    }

    .footer__left {
        align-items: center;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        margin-bottom: 15px;
        order: 1;
        padding-bottom: 25px;
        width: 100%
    }

    .footer__logo {
        margin-bottom: 0;
        margin-left: 4px
    }

    .footer__contact-info {
        display: flex;
        justify-content: space-between;
        order: 2;
        width: 100%
    }

    .footer__contact-items {
        display: flex;
        flex-direction: column;
        margin-bottom: 20px;
        margin-left: 10px
    }

    .footer__contact-item {
        width: 100%
    }

    .footer__email,
    .footer__phone {
        font-size: 14px
    }

    .footer__address {
        font-size: 14px;
        font-weight: 400;
        margin: 10px 0
    }

    .footer__how-to-find-us-link {
        margin-bottom: 50px
    }

    .footer__social-image {
        height: 23.88px;
        justify-content: space-around;
        width: 120px
    }

    .footer__address_text {
        display: -webkit-box;
        font-size: 14px;
        font-weight: 300;
        line-height: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        word-wrap: break-word;
        -webkit-hyphens: auto;
        hyphens: auto
    }

    .footer__menu {
        max-width: 100%;
        order: 3
    }

    .tablet {
        display: flex;
        flex-direction: column
    }

    .footer__copyright {
        order: 4;
        padding: 20px 0 0;
        width: 100%
    }

    .footer__social {
        width: auto
    }

    .footer__social-image {
        height: 30.88px;
        max-width: 33px
    }

    .footer__how-to-find-us-link_wrap {
        display: flex;
        flex-direction: column;
        gap: 10px;
        margin-left: 64px
    }

    .tablet-item {
        justify-content: start
    }

    .footer__menu-link .footer__menu-text {
        max-width: 100%
    }

    .footer__how-to-find-us-link {
        margin-top: 9px
    }

    .footer__copyright-container {
        flex-direction: column;
        gap: 0;
        padding-bottom: 0
    }

    .footer__copyright {
        font-size: 14px;
        padding: 20px 15px 0;
        text-align: center
    }

    .footer__copyright:last-child {
        padding-bottom: 20px
    }
}

@media screen and (max-width:1024px) {
    .footer__menu {
        flex-wrap: wrap
    }
}

@media screen and (max-width:758px) {
    .footer__menu-column:nth-child(2n):before {
        background-color: #8b8b8b;
        content: "";
        height: 100%;
        left: 100%;
        position: absolute;
        top: 0;
        width: 1px
    }

    .footer__left {
        align-items: center;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        margin-bottom: 15px;
        order: 1;
        padding-bottom: 10px;
        width: 100%
    }

    .footer__left .footer__social_desktop {
        display: flex !important;
        gap: 15px;
        justify-content: end;
        width: 120px
    }

    .footer__copyright-container {
        padding: 0 20px
    }

    .footer__social-image {
        height: 23.83px
    }

    .footer__contact-info {
        align-items: flex-start;
        display: flex;
        flex-direction: column;
        gap: 12px;
        order: 2;
        width: 100%
    }

    .footer__contact-info .footer__contact-items {
        align-items: flex-start;
        display: flex;
        flex-direction: column;
        margin-bottom: 20px
    }

    .footer__contact-info .footer__contact-item {
        width: 100%
    }

    .footer__contact-info .footer__email,
    .footer__contact-info .footer__phone {
        font-size: 14px
    }

    .footer__contact-info .footer__address {
        font-size: 14px;
        font-weight: 400;
        margin: 10px 0
    }

    .footer__contact-info .footer__how-to-find-us-link {
        margin-bottom: 30px
    }

    .footer__contact-info .footer__social-image {
        height: 23.88px;
        justify-content: space-around;
        width: 120px
    }

    .footer__contact-info .footer__address_text {
        font-size: 14px;
        font-weight: 300;
        line-height: 100%
    }

    .footer__menu {
        display: flex;
        flex-wrap: wrap;
        gap: 0;
        justify-content: space-between;
        margin: 5px 0;
        order: 3
    }

    .footer__menu-column {
        border-right: none;
        flex: 0 0 calc(50% - 10px);
        margin-bottom: 20px;
        min-width: calc(50% - 10px);
        padding: 0 10px;
        position: relative
    }

    .footer__menu-column:nth-child(odd):after {
        background-color: #8b8b8b;
        content: "";
        height: 100%;
        position: absolute;
        right: 0;
        top: 0;
        width: 1px
    }

    .footer__menu-column:nth-child(2n):after {
        display: none
    }

    .footer__menu-column li:first-child {
        font-weight: 600 !important;
        margin-bottom: 10px
    }

    .footer__menu-link .footer__menu-text {
        display: block;
        font-size: 14px;
        font-weight: 300;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }

    .footer__menu-column:not(:first-child) li:first-child .footer__menu-link .footer__menu-text {
        font-weight: 600 !important;
        max-width: 125px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }

    .footer__contact-item {
        justify-content: start
    }

    .footer__left .footer__social_desktop {
        gap: 16px;
        width: 151px
    }

    .footer__menu-column:not(:first-child) li:first-child .footer__menu-link {
        margin-bottom: 8px
    }

    .footer__how-to-find-us-span {
        font-weight: 500
    }

    .footer__copyright {
        font-size: 14px;
        order: 4;
        padding: 20px 0 0;
        text-align: center;
        width: 100%
    }
}

@media screen and (max-width:599px) {
    .footer {
        font-size: 14px
    }

    .footer__menu-column {
        gap: 5px
    }

    .footer__menu-link .footer__menu-text {
        max-width: 95%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }

    .footer__email,
    .footer__phone {
        margin-top: 6px
    }

    .footer__contact-icon {
        height: 12px;
        margin-right: 10px;
        width: 12px
    }

    .footer__address,
    .footer__email,
    .footer__phone {
        font-size: 14px;
        font-weight: 500;
        letter-spacing: 0;
        line-height: 100%
    }

    .footer__how-to-find-us-link {
        height: 34px;
        padding: 8px 12px;
        width: 185px
    }

    .footer__copyright {
        font-size: 11px;
        line-height: 1.4;
        padding: 20px 15px;
        text-align: start
    }

    .footer__copyright:last-child {
        margin-top: 0;
        padding-top: 0
    }

    .footer__phone {
        padding-bottom: 0
    }

    .footer__contact-icon {
        height: 16px;
        margin-top: 9px;
        width: 16px
    }

    .footer__contact-item {
        gap: 0
    }
}

@media screen and (max-width:336px) {
    .footer__menu-column {
        min-width: 100%
    }

    .footer__menu-link .footer__menu-text {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }
}

svg {
    height: 24px;
    width: 22px
}

@media screen and (max-width:767px) {
    svg {
        height: 17px;
        width: 16px
    }
}

svg {
    height: 20px;
    width: 22px
}

svg {
    height: 22px;
    width: 22px
}

svg {
    height: 22px;
    width: 22px
}

.popup-overlay {
    align-items: center;
    background-color: #00000080;
    display: flex;
    height: 100%;
    justify-content: center;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9
}

.popup {
    background-color: var(--color-white);
    border-radius: var(--a4744b1e);
    max-height: var(--desktop-height);
    max-width: var(--desktop-width);
    overflow: auto;
    overflow-y: hidden;
    position: relative;
    width: auto;
    z-index: 10
}

.popup::-webkit-scrollbar {
    background: transparent;
    display: none;
    height: 0
}

.popup {
    scrollbar-width: none !important;
    -ms-overflow-style: none !important
}

.popup::-webkit-scrollbar {
    background-color: var(--scrollbar-background);
    width: 0
}

.popup::-webkit-scrollbar-thumb {
    border-radius: 0
}

.popup::-webkit-scrollbar-thumb,
.popup::-webkit-scrollbar-thumb:hover {
    background-color: var(--scrollbar-thumb)
}

.popup__content {
    padding: var(--desktop-padding)
}

.popup__close-button {
    background: none;
    border: none;
    color: var(--color-btn);
    cursor: pointer;
    padding: 0;
    position: absolute;
    right: 20px;
    top: 20px;
    transition: opacity .3s ease-in-out
}

.popup__close-button:hover {
    opacity: .8
}

.popup__close-img {
    height: var(--desktop-btn-height);
    width: var(--desktop-btn-width)
}

.fade-enter-active,
.fade-leave-active {
    transition: opacity .3s ease-in-out
}

.fade-enter-from,
.fade-leave-to {
    opacity: 0
}

@media screen and (max-width:1280px) {
    .popup {
        height: var(--tablet-height);
        max-height: var(--tablet-maxheight);
        overflow: auto;
        width: var(--tablet-width)
    }

    .popup__content {
        padding: var(--tablet-padding);
        position: relative
    }
}

@media screen and (max-width:767px) {
    .popup {
        height: var(--mobile-height);
        max-height: var(--mobile-maxheight);
        overflow: auto;
        overflow-y: scroll;
        width: var(--mobile-width)
    }

    .popup__close-button {
        display: var(--mobile-btn-display);
        position: var(--mobile-position);
        right: var(--mobile-btn-right);
        top: var(--mobile-btn-top);
        z-index: 3
    }

    .popup__close-img {
        height: var(--mobile-btn-height);
        width: var(--mobile-btn-width)
    }
}

@media (max-width:500px) {
    .detail-wrapper {
        bottom: 0;
        max-height: 560px;
        position: relative;
        width: 100% !important;
        z-index: 999;
        --desktop-width: 100%
    }
}

@media screen and (max-width:767px) {
    .popup {
        border-radius: 19px
    }
}

.overlay {
    bottom: 0;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 100
}

.overlay--active {
    background-color: #00000080
}

.bottom-popup {
    background-color: var(--color-extra-gray);
    bottom: 0;
    left: 50%;
    max-width: 820px;
    right: 0;
    z-index: 101
}

.bottom-popup,
.bottom-popup__grab {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    position: fixed;
    top: 0;
    width: 100%
}

.bottom-popup__grab {
    align-items: center;
    background-color: var(--color-white);
    display: flex;
    height: 56px;
    justify-content: center;
    z-index: 102
}

.bottom-popup__dots {
    height: 5px;
    width: 21px;
    fill: var(--color-count-gray);
    cursor: pointer
}

.bottom-popup__close {
    height: 40px;
    width: 40px;
    stroke: var(--color-count-gray);
    cursor: pointer;
    position: absolute;
    right: 10px
}

.bottom-popup__wrapper {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    height: 100%;
    overflow-y: auto
}

.bottom-popup__content {
    height: 100%
}

@media (max-width:767.98px) {
    .bottom-popup__close {
        height: 30px;
        width: 30px
    }

    .bottom-popup__grab {
        height: 40px
    }
}

.cart-checkbox {
    align-items: center;
    background-color: transparent;
    border: 1px solid var(--color-light-check-gray);
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    height: 30px;
    justify-content: center;
    min-width: 30px;
    width: 30px
}

.cart-checkbox--active {
    background-color: var(--color-main, #8c9e69);
    border-color: var(--color-main, #8c9e69)
}

.cart-checkbox--error {
    border-color: var(--color-error)
}

.cart-checkbox svg {
    height: 10px;
    min-width: 15px;
    width: 15px;
    fill: var(--color-white);
    opacity: 0
}

.cart-checkbox--active svg {
    opacity: 1
}

@media (max-width:767.98px) {
    .cart-checkbox {
        border-radius: 4px;
        height: 18px;
        min-width: 18px;
        width: 18px
    }

    .cart-checkbox svg {
        height: 6px;
        min-width: 9px;
        width: 9px
    }
}

.product-counter {
    display: flex;
    gap: 6px;
    justify-content: center
}

.product-counter__value {
    background-color: var(--color-white);
    border: 1.5px solid var(--color-count-gray);
    color: var(--color-count-gray);
    font-size: 18px;
    font-weight: 500
}

.product-counter__count-button,
.product-counter__value {
    align-items: center;
    border-radius: 50%;
    display: flex;
    height: 40px;
    justify-content: center;
    width: 40px
}

.product-counter__count-button {
    background-color: var(--color-count-gray);
    border: 0;
    cursor: pointer;
    min-width: 40px
}

.product-counter__icon {
    height: 20px;
    width: 20px;
    stroke: var(--color-white);
    min-width: 20px
}

@media (max-width:575.98px) {
    .product-counter__count-button {
        height: 30px;
        min-width: 30px;
        width: 30px
    }

    .product-counter__icon {
        height: 14px;
        min-width: 14px;
        width: 14px
    }

    .product-counter__value {
        font-size: 14px;
        height: 30px;
        min-width: 30px;
        width: 30px
    }
}

.cart-item-card {
    background-color: var(--color-white);
    border-radius: 16px;
    box-shadow: 0 6px 8.02px #5f5f5f1a;
    padding: 15px 20px 15px 10px;
    position: relative;
    width: calc(100% - 5px)
}

.cart-item-card__wrapper {
    display: flex
}

.cart-item-card__content {
    flex: 1;
    margin-left: 20px
}

.cart-item-card__title {
    font-size: 14px
}

.cart-item-card__price,
.cart-item-card__title {
    color: var(--color-showcase-gray);
    font-weight: 700;
    line-height: 120%
}

.cart-item-card__price {
    font-size: 12px;
    margin-top: 2px
}

.cart-item-card__delete-button {
    align-items: center;
    background-color: var(--color-count-gray);
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    height: 40px;
    justify-content: center;
    position: absolute;
    right: -15px;
    top: 50%;
    transform: translateY(-50%);
    width: 40px
}

.cart-item-card__icon {
    height: 20px;
    width: 20px;
    stroke: var(--color-white);
    transform: rotate(45deg)
}

.cart-item-card__bottom {
    align-items: flex-end;
    display: flex;
    justify-content: space-between;
    margin-top: 15px
}

.cart-item-card__summary {
    color: var(--color-gray);
    font-size: 14px;
    font-weight: 700
}

@media (max-width:575.98px) {
    .cart-item-card__content {
        margin-left: 8px
    }

    .cart-item-card__title {
        font-size: 11px
    }

    .cart-item-card__price,
    .cart-item-card__summary {
        font-size: 9px
    }

    .cart-item-card__icon {
        height: 14px;
        width: 14px
    }

    .cart-item-card__delete-button {
        height: 30px;
        width: 30px
    }
}

.overlay {
    bottom: 0;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 110
}

.overlay--active {
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    background-color: #0000004d
}

.confirm-popup {
    background-color: var(--color-extra-gray);
    border-radius: 20px;
    left: 50%;
    max-width: 365px;
    position: fixed;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 111
}

.confirm-popup__wrapper {
    padding: 20px
}

.confirm-popup__title {
    color: var(--color-main, #8c9e69);
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 10px
}

.confirm-popup__text {
    font-size: 16px;
    font-weight: 400;
    line-height: 120%
}

.confirm-popup__buttons {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    margin-top: 20px
}

.confirm-popup__button {
    align-items: center;
    background-color: var(--color-count-gray);
    border: 0;
    border-radius: 10px;
    box-shadow: 0 2.5px 6.6px #5b5b5b1a;
    color: var(--color-white);
    cursor: pointer;
    display: flex;
    font-size: 11px;
    font-weight: 600;
    height: 40px;
    justify-content: center;
    letter-spacing: 1px;
    line-height: 100%;
    text-align: center;
    text-transform: uppercase;
    transition: .3s;
    width: 100%
}

.confirm-popup__button:hover {
    background-color: var(--color-main, #8c9e69)
}

@media (max-width:575.98px) {
    .confirm-popup {
        max-width: 260px
    }

    .confirm-popup__title {
        font-size: 16px
    }

    .confirm-popup__text {
        font-size: 14px
    }

    .confirm-popup__button {
        font-size: 9px;
        height: 30px
    }
}

.cart-popup {
    padding-top: 56px
}

.cart-popup__wrapper {
    padding: 20px 15px 80px
}

.cart-popup__title {
    align-items: center;
    color: var(--color-showcase-gray);
    display: flex;
    font-size: 20px;
    font-weight: 600;
    gap: 20px
}

.cart-popup__icon {
    height: 20px;
    min-width: 20px;
    width: 20px
}

.cart-popup__icon--cart {
    stroke: var(--color-showcase-gray)
}

.cart-popup__icon--trash {
    stroke: var(--color-main, #8c9e69)
}

.cart-popup__cart {
    margin-top: 30px
}

.cart-popup__checklist-buttons {
    display: flex;
    justify-content: space-between
}

.cart-popup__checklist-button {
    color: var(--color-showcase-gray);
    gap: 10px;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.cart-popup__checklist-button,
.cart-popup__delete-button {
    align-items: center;
    cursor: pointer;
    display: flex;
    font-size: 16px;
    font-weight: 600
}

.cart-popup__delete-button {
    background-color: transparent;
    border: 0;
    color: var(--color-main, #8c9e69);
    gap: 5px;
    padding: 0 5px 0 0
}

.cart-popup__list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 20px
}

.empty-cart {
    height: 100%
}

.empty-cart,
.empty-cart__wrapper {
    align-items: center;
    display: flex;
    justify-content: center
}

.empty-cart__wrapper {
    flex-direction: column;
    padding: 0 15px
}

.empty-cart__icon {
    height: 128px;
    width: 100px
}

.empty-cart__text {
    color: var(--color-count-gray);
    font-size: 12px;
    font-weight: 600;
    line-height: 120%;
    margin-top: 30px;
    text-align: center;
    text-transform: uppercase
}

.cart-popup__summary {
    align-items: center;
    color: var(--color-showcase-gray);
    display: flex;
    font-size: 20px;
    font-weight: 600;
    gap: 20px;
    margin-top: 30px
}

.cart-popup__summary-icon {
    height: 30px;
    min-width: 30px;
    width: 30px;
    stroke: var(--color-showcase-gray)
}

.cart-popup__payment {
    margin-top: 10px;
    position: relative
}

.cart-popup__payment-select {
    align-items: center;
    border: 1px solid var(--color-count-gray);
    border-radius: 10px;
    color: var(--color-showcase-gray);
    cursor: pointer;
    display: flex;
    font-size: 12px;
    font-weight: 500;
    justify-content: space-between;
    padding: 12px 20px;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.cart-popup__payment-icon {
    height: 16px;
    min-width: 16px;
    width: 16px;
    stroke: var(--color-showcase-gray)
}

.cart-popup__payment-list {
    background-color: var(--color-white);
    border-radius: 10px;
    box-shadow: 10px 10px 20.4px #0000001a;
    display: none;
    flex-direction: column;
    gap: 5px;
    margin-top: 5px;
    padding: 10px 0;
    position: absolute;
    width: 100%
}

.cart-popup__payment-list--show {
    display: flex
}

.cart-popup__payment-item {
    color: var(--color-showcase-gray);
    cursor: pointer;
    font-size: 12px;
    font-weight: 500;
    padding: 7px 16px
}

.cart-popup__payment-item:hover {
    background-color: var(--color-extra-gray)
}

.cart-popup__form {
    background-color: var(--color-white);
    border-radius: 30px;
    box-shadow: 0 11px 13px #5f5f5f1a;
    margin: 30px -15px 0;
    padding: 30px 15px
}

.cart-popup__form-icon {
    height: 30px;
    min-width: 30px;
    width: 30px
}

.cart-popup__form-icon--star,
.cart-popup__form-icon--user {
    stroke: var(--color-showcase-gray)
}

.cart-popup__inputs {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 30px
}

.cart-popup__input {
    border: 1px solid var(--color-gray);
    border-radius: 10px;
    color: var(--color-showcase-gray);
    font-size: 16px;
    font-weight: 600;
    padding: 12px 15px;
    scroll-margin-top: 76px;
    width: 100%
}

.cart-popup__error {
    color: var(--color-error);
    display: block;
    font-size: 10px;
    font-weight: 500;
    margin-left: 15px;
    margin-top: 4px
}

.cart-popup__input--error {
    border-color: var(--color-error)
}

.cart-popup__input::-moz-placeholder {
    color: var(--color-gray);
    font-weight: 600
}

.cart-popup__input::placeholder {
    color: var(--color-gray);
    font-weight: 600
}

.cart-popup__divider {
    border-bottom: 1px solid var(--color-extra-middle-gray);
    margin: 0 -15px;
    padding: 20px 0
}

.cart-popup__form-opts {
    margin-top: 30px
}

.cart-popup__information {
    align-items: center;
    border: 1px solid var(--color-main, #8c9e69);
    border-radius: 10px;
    color: var(--color-showcase-gray);
    display: flex;
    font-size: 16px;
    font-weight: 600;
    gap: 10px;
    line-height: 120%;
    margin-top: 20px;
    padding: 12px 10px
}

.cart-popup__information--order-error {
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    background-color: var(--color-bg-error);
    border-color: var(--color-red);
    left: 50%;
    margin-top: 0;
    max-width: calc(100% - 30px);
    position: fixed;
    top: 70px;
    transform: translate(-50%);
    width: 100%
}

.cart-popup__information-icon {
    height: 40px;
    min-width: 40px;
    width: 40px;
    stroke: var(--color-main, #8c9e69)
}

.cart-popup__information-icon--error {
    stroke: var(--color-red)
}

.cart-popup__comment {
    display: flex;
    flex-direction: column;
    margin-top: 20px
}

.cart-popup__comment label {
    color: var(--color-showcase-gray);
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px
}

.cart-popup__comment textarea {
    border: 1px solid var(--color-count-gray);
    border-radius: 10px;
    color: var(--color-showcase-gray);
    font-weight: 500;
    padding: 20px;
    resize: none;
    width: 100%
}

.cart-popup__comment textarea::-moz-placeholder {
    color: var(--color-count-gray)
}

.cart-popup__comment textarea::placeholder {
    color: var(--color-count-gray)
}

.cart-popup__checks p {
    color: var(--color-count-gray);
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 20px
}

.cart-popup__checks-list {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.cart-popup__checks-item {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: 10px;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.cart-popup__footer {
    background-color: var(--color-white);
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    bottom: 0;
    box-shadow: 0 -5.01px 6.52px #5f5f5f33;
    padding: 15px 20px;
    position: sticky;
    width: 100%
}

.cart-popup__footer-icon {
    height: 18px;
    width: 18px;
    fill: var(--color-white)
}

.cart-popup__order-button {
    align-items: center;
    background-color: var(--color-main, #8c9e69);
    border: 0;
    border-radius: 10px;
    box-shadow: 0 2.5px 6.5px #4d4d4d40;
    color: var(--color-white);
    cursor: pointer;
    display: flex;
    font-size: 11px;
    font-weight: 600;
    gap: 10px;
    height: 40px;
    justify-content: space-between;
    letter-spacing: 1px;
    line-height: 100%;
    padding: 0 15px;
    text-align: center;
    text-transform: uppercase;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 100%
}

.cart-popup__order-button:disabled {
    background-color: var(--color-middle-gray);
    opacity: .4
}

.cart-popup__order-button--loading {
    cursor: no-drop;
    justify-content: center
}

.cart-popup__cart-count {
    position: relative
}

.cart-popup__cart-count-value {
    align-items: center;
    background-color: var(--color-error);
    border-radius: 50%;
    color: var(--color-white);
    display: flex;
    font-size: 7px;
    font-weight: 700;
    height: 12px;
    justify-content: center;
    position: absolute;
    right: -5px;
    top: 7px;
    width: 12px
}

@media (max-width:767.98px) {
    .cart-popup {
        padding-top: 40px
    }

    .cart-popup__wrapper {
        padding: 10px 15px 35px
    }

    .cart-popup__title {
        font-size: 14px;
        gap: 12px
    }

    .cart-popup__checklist-button,
    .cart-popup__delete-button {
        font-size: 12px
    }

    .cart-popup__icon {
        height: 18px;
        min-width: 18px;
        width: 18px
    }

    .cart-popup__summary {
        font-size: 14px
    }

    .cart-popup__summary-icon {
        height: 20px;
        min-width: 20px;
        width: 20px
    }

    .cart-popup__payment-select {
        font-size: 10px;
        padding: 8px
    }

    .cart-popup__form-icon {
        height: 20px;
        min-width: 20px;
        width: 20px
    }

    .cart-popup__information {
        font-size: 12px
    }

    .cart-popup__information-icon {
        height: 30px;
        min-width: 30px;
        width: 30px
    }

    .cart-popup__comment label {
        font-size: 10px;
        margin-bottom: 6px
    }

    .cart-popup__comment textarea {
        font-size: 10px;
        padding: 8px
    }

    .cart-popup__checks p {
        font-size: 10px
    }

    .cart-popup__checks-item {
        font-size: 9px
    }

    .cart-popup__order-button {
        font-size: 10px;
        height: 30px
    }

    .cart-popup__input {
        font-size: 12px;
        padding: 10px;
        scroll-margin-top: 60px
    }

    .cart-popup__inputs {
        gap: 4px
    }

    .cart-popup__error {
        margin-left: 10px
    }

    .cart-popup__information--order-error {
        top: 50px
    }
}

.product-card-popup {
    padding-top: 56px
}

.product-card-popup__wrapper {
    padding: 45px 30px
}

.product-card-popup__image {
    background-color: var(--color-muted-gray);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 100px;
    border-radius: 10px;
    box-shadow: inset 0 0 0 1000px #ffffff80;
    display: block;
    flex: 1;
    height: 400px;
    margin-bottom: 40px;
    width: 100%
}

.product-card-popup__image img {
    border-radius: 20px;
    box-shadow: 0 9px 16.4px #00000040;
    display: flex;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    width: 100%
}

.product-card-popup__top {
    display: flex;
    gap: 40px;
    justify-content: space-between
}

.product-card-popup__title {
    color: var(--color-showcase-gray);
    font-size: 16px;
    font-weight: 700;
    line-height: 120%
}

.product-card-popup__description {
    color: var(--color-text-gray);
    font-size: 14px;
    font-weight: 400;
    line-height: 120%;
    margin-top: 10px
}

.product-card-popup__props {
    align-items: flex-end;
    display: flex;
    gap: 10px;
    white-space: nowrap
}

.product-card-popup__weight {
    color: var(--color-gray);
    font-size: 14px;
    font-weight: 500
}

.product-card-popup__price {
    color: var(--color-gray);
    font-size: 14px;
    font-weight: 700
}

.product-card-popup__bottom {
    margin-top: 20px
}

.product-card-popup__add-button {
    align-items: center;
    background-color: var(--color-main, #8c9e69);
    border: 0;
    border-radius: 10px;
    box-shadow: 0 2.5px 6.5px #4d4d4d40;
    color: var(--color-white);
    cursor: pointer;
    display: flex;
    font-size: 11px;
    font-weight: 600;
    height: 40px;
    justify-content: center;
    letter-spacing: 1px;
    line-height: 100%;
    text-align: center;
    text-transform: uppercase;
    width: 100%
}

@media (max-width:767.98px) {
    .product-card-popup__image {
        height: 300px;
        margin-bottom: 20px
    }

    .product-card-popup__wrapper {
        padding: 30px 15px
    }

    .product-card-popup__top {
        flex-direction: column;
        gap: 20px
    }

    .product-card-popup__props {
        justify-content: space-between
    }
}

@media (max-width:575.98px) {
    .product-card-popup {
        padding-top: 40px
    }

    .product-card-popup__title {
        font-size: 14px
    }

    .product-card-popup__description {
        font-size: 12px
    }

    .product-card-popup__image {
        height: 200px
    }

    .product-card-popup__price,
    .product-card-popup__weight {
        font-size: 12px
    }

    .product-card-popup__add-button {
        font-size: 9px;
        height: 30px
    }
}

svg {
    fill: var(--color-main, #8c9e69);
    height: 40px;
    min-width: 40px;
    width: 40px
}

.overlay {
    bottom: 0;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 130
}

.overlay--active {
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    background-color: #0000004d
}

.loading-popup {
    background-color: var(--color-extra-gray);
    border-radius: 20px;
    left: 50%;
    max-width: 365px;
    position: fixed;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 131
}

.loading-popup__wrapper {
    padding: 20px;
    text-align: center
}

.loading-popup__title {
    color: var(--color-main, #8c9e69);
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 20px
}

.loading-popup__button {
    align-items: center;
    background-color: var(--color-main, #8c9e69);
    border: 0;
    border-radius: 10px;
    box-shadow: 0 2.5px 6.5px #4d4d4d40;
    color: var(--color-white);
    cursor: pointer;
    display: flex;
    font-size: 11px;
    font-weight: 600;
    height: 40px;
    justify-content: center;
    letter-spacing: 1px;
    line-height: 100%;
    margin-top: 20px;
    text-align: center;
    text-transform: uppercase;
    width: 100%
}

@media (max-width:575.98px) {
    .loading-popup {
        max-width: 260px
    }

    .loading-popup__title {
        font-size: 14px
    }

    .loading-popup__button {
        height: 30px
    }
}

.order-list-card {
    background-color: var(--color-white);
    border-radius: 16px;
    box-shadow: 0 22px 26px #5f5f5f1a;
    cursor: pointer;
    padding: 12px 20px;
    position: relative;
    width: 100%
}

.order-list-card__wrapper {
    align-items: flex-end;
    display: flex;
    gap: 20px;
    justify-content: space-between
}

.order-list-card__order {
    align-items: center;
    color: var(--color-showcase-gray);
    display: flex;
    font-size: 14px;
    font-weight: 600;
    gap: 5px
}

.order-list-card__order span {
    background-color: var(--color-main, #8c9e69);
    border-radius: 6px;
    color: var(--color-white);
    display: block;
    font-size: 10px;
    padding: 2px 4px
}

.order-list-card__date {
    color: var(--color-showcase-gray);
    font-size: 12px;
    font-weight: 500;
    margin-top: 6px
}

.order-list-card__summary {
    color: var(--color-gray);
    font-size: 14px;
    font-weight: 600;
    margin-top: 3px
}

@media (max-width:767.98px) {
    .order-list-card {
        padding: 12px 10px
    }

    .order-list-card__order {
        font-size: 11px
    }

    .order-list-card__order span {
        font-size: 8px
    }

    .order-list-card__date {
        font-size: 10px
    }

    .order-list-card__summary {
        font-size: 12px
    }
}

.order-card {
    background-color: var(--color-white);
    border-radius: 16px;
    box-shadow: 0 22px 26px #5f5f5f1a;
    padding: 12px 20px;
    position: relative;
    width: 100%
}

.order-card__wrapper {
    align-items: flex-end;
    display: flex;
    gap: 20px;
    justify-content: space-between
}

.order-card__title {
    color: var(--color-showcase-gray);
    font-size: 14px;
    font-weight: 700
}

.order-card__price {
    color: var(--color-showcase-gray);
    font-size: 12px;
    font-weight: 500;
    margin-top: 3px
}

.order-card__summary {
    color: var(--color-gray);
    font-size: 14px;
    font-weight: 700;
    line-height: 100%
}

@media (max-width:767.98px) {
    .order-card__title {
        font-size: 11px
    }

    .order-card__price,
    .order-card__summary {
        font-size: 9px
    }
}

.pagination {
    padding: 16px 0
}

.pagination__block {
    align-items: center;
    display: flex;
    gap: 20px;
    justify-content: space-between
}

.pagination__link {
    align-items: center;
    background-color: transparent;
    border: 0;
    color: var(--color-showcase-gray);
    cursor: pointer;
    display: inline-flex;
    font-size: 14px;
    font-weight: 500;
    gap: 4px;
    padding: 4px 8px;
    transition: .3s
}

.pagination__link--active {
    color: var(--color-main, #8c9e69);
    font-weight: 600;
    pointer-events: none
}

.pagination__link.prev {
    padding-left: 0
}

.pagination__link.next,
.pagination__link.prev {
    color: var(--color-main, #8c9e69);
    cursor: pointer
}

.pagination__link.next {
    padding-right: 0
}

.pagination__link:hover {
    color: var(--color-dark-main)
}

.pagination__link:disabled {
    color: var(--color-gray);
    cursor: not-allowed
}

.pagination__link:disabled .pagination__icon {
    stroke: var(--color-gray)
}

.pagination__icon {
    height: 16px;
    min-width: 16px;
    width: 16px;
    stroke: var(--color-main, #8c9e69)
}

.pagination__next {
    transform: rotate(180deg)
}

.status-order-popup {
    padding-top: 56px
}

.status-order-popup__wrapper {
    padding: 45px 15px
}

.status-order-popup__title {
    align-items: center;
    color: var(--color-showcase-gray);
    display: flex;
    font-size: 20px;
    font-weight: 600;
    gap: 20px
}

.status-order-popup__icon {
    height: 20px;
    width: 20px
}

.status-order-popup__icon--thumb-up {
    stroke: var(--color-text-gray)
}

.status-order-popup__icon--arrow-left {
    stroke: var(--color-main, #8c9e69)
}

.status-order-popup__information {
    align-items: center;
    border: 1px solid var(--color-main, #8c9e69);
    border-radius: 10px;
    color: var(--color-showcase-gray);
    display: flex;
    font-size: 16px;
    font-weight: 600;
    gap: 10px;
    line-height: 120%;
    margin-top: 30px;
    padding: 12px 10px
}

.status-order-popup__information--error {
    border-color: var(--color-red);
    margin-top: 0
}

.status-order-popup__information--empty {
    border-color: var(--color-main, #8c9e69);
    margin-top: 0
}

.status-order-popup__information-icon {
    height: 40px;
    min-width: 40px;
    width: 40px;
    stroke: var(--color-main, #8c9e69)
}

.status-order-popup__information-icon--error {
    stroke: var(--color-red)
}

.status-order-popup__information-icon--empty {
    stroke: var(--color-main, #8c9e69)
}

.status-order-popup__order-date {
    color: var(--color-showcase-gray);
    font-size: 16px;
    font-weight: 600;
    margin-top: 30px
}

.status-order-popup__order,
.status-order-popup__orders {
    margin: 20px 0
}

.status-order-popup__order-list,
.status-order-popup__orders-list {
    display: flex;
    flex-direction: column;
    gap: 5px
}

.status-order-popup__back-button,
.status-order-popup__summary {
    color: var(--color-main, #8c9e69);
    font-size: 16px;
    font-weight: 600
}

.status-order-popup__back-button {
    align-items: center;
    background-color: transparent;
    border: 0;
    cursor: pointer;
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
    padding: 0
}

.status-order-popup__show-count {
    color: var(--color-showcase-gray);
    display: flex;
    font-size: 14px;
    font-weight: 500;
    gap: 10px
}

.status-order-popup__show-count-list {
    align-items: center;
    display: flex;
    gap: 10px
}

.status-order-popup__show-button {
    background-color: transparent;
    border: 0;
    color: var(--color-showcase-gray);
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    padding: 0
}

.status-order-popup__show-button--active {
    color: var(--color-main, #8c9e69);
    font-weight: 600
}

.loader {
    height: 100%;
    padding-top: 56px
}

.loader__wrapper {
    align-items: center;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    padding: 20px
}

.loader__title {
    color: var(--color-main, #8c9e69);
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 20px;
    text-align: center
}

@media (max-width:767.98px) {
    .status-order-popup {
        padding-top: 40px
    }

    .status-order-popup__title {
        font-size: 16px
    }

    .status-order-popup__information {
        font-size: 12px
    }

    .status-order-popup__information-icon {
        height: 30px;
        min-width: 30px;
        width: 30px
    }

    .status-order-popup__order-date,
    .status-order-popup__summary {
        font-size: 12px
    }

    .loader {
        padding-top: 40px
    }

    .loader__title {
        font-size: 14px
    }
}

.bottom-menu,
.bottom-menu__popup-list {
    display: none !important
}

@media screen and (max-width:1280px) {
    .cart-popup__footer {
        background-color: var(--color-white);
        border-top-left-radius: 20px;
        border-top-right-radius: 20px;
        box-shadow: 0 -5.01px 6.52px #5f5f5f33;
        padding: 15px 20px;
        width: 100%
    }

    .cart-popup__footer-icon {
        height: 18px;
        width: 18px;
        fill: var(--color-white)
    }

    .cart-popup__order-button {
        align-items: center;
        background-color: var(--color-main, #8c9e69);
        border: 0;
        border-radius: 10px;
        box-shadow: 0 2.5px 6.5px #4d4d4d40;
        color: var(--color-white);
        cursor: pointer;
        display: flex;
        font-size: 11px;
        font-weight: 600;
        gap: 10px;
        height: 40px;
        justify-content: space-between;
        letter-spacing: 1px;
        line-height: 100%;
        padding: 0 15px;
        text-align: center;
        text-transform: uppercase;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none;
        width: 100%
    }

    .cart-popup__cart-count {
        position: relative
    }

    .cart-popup__cart-count-value {
        align-items: center;
        background-color: var(--color-error);
        border-radius: 50%;
        color: var(--color-white);
        display: flex;
        font-size: 7px;
        font-weight: 700;
        height: 12px;
        justify-content: center;
        position: absolute;
        right: -5px;
        top: 7px;
        width: 12px
    }

    .bottom-menu,
    .bottom-menu__popup-list {
        display: flex !important
    }

    .bottom-menu {
        -webkit-backdrop-filter: blur(7.5px);
        backdrop-filter: blur(7.5px);
        background: #00000080;
        bottom: 0;
        box-sizing: border-box;
        display: flex;
        left: 50%;
        max-width: 820px;
        padding: 10px 22px 15px;
        position: fixed;
        transform: translate(-50%);
        width: 100%;
        z-index: 8
    }

    .bottom-menu--inCart {
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
        background: none;
        padding: 0
    }

    .bottom-menu__list {
        align-items: center;
        display: flex;
        gap: calc(33.33333% - 77.33333px);
        margin: 0;
        padding: 0;
        width: 100%
    }

    .bottom-menu__list_evenly-spaced {
        gap: calc(33.33333% - 77.33333px);
        justify-content: space-between
    }

    .bottom-menu__item {
        list-style: none
    }

    .bottom-menu__item,
    .bottom-menu__link {
        align-items: center;
        display: flex;
        flex-direction: column;
        gap: 5px;
        width: 58px
    }

    .bottom-menu__link {
        text-decoration: none
    }

    .bottom-menu__icon {
        color: var(--color-white)
    }

    .bottom-menu__icon_type_calendar {
        height: 20px;
        width: 20px
    }

    .bottom-menu__icon_type_message,
    .bottom-menu__icon_type_star,
    .bottom-menu__icon_type_сall {
        height: 20px;
        width: 22px
    }

    .bottom-menu__icon_type_cart {
        height: 20px;
        width: 21px;
        fill: var(--color-white)
    }

    .bottom-menu__title {
        color: #fff;
        font-family: Inter, sans-serif;
        font-size: 9px;
        font-weight: 400;
        line-height: normal;
        margin: 0;
        text-align: center
    }

    .bottom-menu__popup-list {
        align-items: center;
        bottom: -75px;
        display: flex;
        flex-direction: column;
        gap: 18px;
        left: calc(-12px + 33.33333%);
        margin: 0;
        padding: 0;
        position: fixed;
        width: 58px
    }

    .bottom-menu__popup-list_type_contacts {
        left: unset;
        right: 22px
    }

    .opened .bottom-menu__popup-list {
        animation: slideUp-e1ffc8d9 .5s ease-out forwards;
        animation-delay: .1s;
        bottom: -100%
    }

    .closed .bottom-menu__popup-list {
        animation: slideDown-e1ffc8d9 .5s ease-in forwards;
        bottom: -100%
    }

    @keyframes slideUp-e1ffc8d9 {
        0% {
            bottom: -100%
        }

        to {
            bottom: 75px
        }
    }

    @keyframes slideDown-e1ffc8d9 {
        0% {
            bottom: 75px
        }

        to {
            bottom: -100%
        }
    }

    .bottom-menu__popup-item {
        list-style: none
    }

    .bottom-menu__hotel-link {
        align-items: center;
        background-color: transparent;
        border: none;
        cursor: pointer;
        display: flex;
        flex-direction: column;
        gap: 8px;
        padding: 0;
        text-decoration: none
    }

    .bottom-menu__hotel-name {
        color: var(--color-white);
        font-family: Inter, sans-serif;
        font-size: 10px;
        font-weight: 700;
        line-height: normal;
        margin: 0;
        text-align: center;
        width: 120%
    }

    .bottom-menu__hotel-img {
        height: 50px;
        -o-object-fit: cover;
        object-fit: cover;
        width: 50px
    }

    .bottom-menu__contact-link {
        color: unset;
        display: flex;
        text-decoration: none
    }

    .bottom-menu__contact-img {
        height: 47px;
        -o-object-fit: cover;
        object-fit: cover;
        width: 47px
    }
}

@media (max-width:575.98px) {
    .cart-popup__order-button {
        font-size: 10px;
        height: 30px
    }
}

.bottom-space {
    background-color: #2e2e2e;
    display: none
}

@media screen and (max-width:767px) {
    .bottom-space {
        display: block;
        height: 61px
    }
}

.circled-svg {
    -webkit-backdrop-filter: blur(26px);
    backdrop-filter: blur(26px);
    border-radius: 50%;
    cursor: pointer;
    transition: .3s ease
}

.circled-svg:hover {
    background: #0006
}

.circled-svg.disabled {
    cursor: default;
    opacity: .5
}

.circled-svg.disabled:hover {
    background: transparent
}

.circled-svg {
    -webkit-backdrop-filter: blur(26px);
    backdrop-filter: blur(26px);
    border-radius: 50%;
    cursor: pointer;
    transition: .3s ease
}

.circled-svg:hover {
    background: #0006
}

.circled-svg.disabled {
    cursor: default;
    opacity: .5
}

.circled-svg.disabled:hover {
    background: transparent
}

.breadcrumbs {
    align-items: center;
    color: var(--color-white);
    display: flex;
    font-family: Montserrat, sans-serif;
    font-style: normal;
    line-height: normal;
    margin-left: -14px
}

.breadcrumbs__item {
    align-items: center;
    border-right: 1px solid var(--color-white);
    display: flex;
    justify-content: center
}

.breadcrumbs__item:last-child {
    border-right: none
}

.breadcrumbs__link {
    color: var(--color-white);
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .42px;
    padding: 0 14px;
    text-decoration: none;
    text-transform: uppercase
}

@media screen and (max-width:699px) {
    .breadcrumbs {
        margin-left: -10px
    }

    .breadcrumbs__item {
        max-height: 10px
    }

    .breadcrumbs__link {
        font-size: 8px;
        letter-spacing: .24px;
        padding: 0 10px
    }
}

/* .main-slider {
    height: 100vh;
    min-height: 768px;
    position: relative;
    width: 100%
}

.main-slider__slider-container {
    display: flex
}

.main-slider__slide {
    flex: 0 0 100%;
    height: 100%;
    width: 100%
}

.main-slider__slide:after {
    background: #17171780;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1
}

.main-slider__image {
    display: block;
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1
}

.main-slider__foreground-wrapper {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 17vh;
    justify-content: flex-start;
    margin: 15vh auto auto 19.5%;
    max-width: 70%
}

.main-slider__foreground {
    display: flex;
    flex-direction: column;
    height: 50vh;
    justify-content: space-between;
    max-width: 770px
}

.main-slider__info {
    color: var(--color-white);
    font-family: Montserrat, sans-serif;
    font-style: normal;
    line-height: normal;
    z-index: 5
}

.main-slider__booking {
    display: flex;
    line-height: normal;
    width: 100%
}

.main-slider__title {
    font-size: 40px;
    font-weight: 700;
    margin: 0
}

.main-slider__subtitle {
    font-size: 18px;
    font-weight: 400;
    margin-bottom: 18px;
    margin-top: 7px;
    text-transform: uppercase
}

.main-slider__text {
    display: -webkit-box;
    font-size: 16px;
    font-weight: 300;
    margin: 20px 0 25px;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.main-slider__text * {
    display: inline
}

.main-slider__link {
    align-items: center;
    color: var(--color-white);
    cursor: pointer;
    display: inline-flex;
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    font-weight: 300;
    gap: 10px;
    margin-bottom: 30px;
    text-decoration: none;
    transition: color .3s ease;
    z-index: 20
}

.main-slider__link:hover {
    color: var(--color-main, #8c9e69)
}

.main-slider__arrow {
    background-color: currentColor;
    display: block;
    height: 1px;
    position: relative;
    transition: width .5s ease-in-out;
    width: 18px
}

.main-slider__link .main-slider__arrow:after {
    border: solid;
    border-width: 0 1px 1px 0;
    content: "";
    padding: 3px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg)
}

.main-slider__link:hover .main-slider__arrow {
    width: 25px
}

.main-slider__buttons {
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    padding: 0 95px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    z-index: 3
}

.main-slider__navigation {
    align-items: center;
    bottom: 7vh;
    color: var(--color-white);
    display: flex;
    font-style: normal;
    gap: 30px;
    height: 16px;
    line-height: normal;
    position: absolute;
    right: 122px;
    width: auto
}

.main-slider__index,
.main-slider__total {
    display: block
}

.main-slider__index {
    color: var(--color-white);
    font-family: Montserrat, sans-serif;
    font-size: 35px;
    font-weight: 600;
    width: 45px
}

.main-slider__index_laptop {
    display: none
}

.main-slider__total {
    font-family: Geometria, sans-serif;
    font-size: 12px;
    font-weight: 400;
    margin-right: 30px;
    text-align: right;
    width: 40px
}

.main-slider__slides {
    color: var(--color-gray)
}

.main-slider__dots {
    align-items: center;
    display: flex;
    gap: 20px;
    height: 100%;
    justify-content: center
}

.main-slider__dot {
    background-color: var(--color-gray);
    border-radius: 50%;
    cursor: pointer;
    height: 10px;
    margin: 0 5px;
    opacity: .4;
    width: 10px
}

.main-slider__dot_active {
    background-color: var(--color-active-light-gray);
    opacity: 1
}

.booking-btn {
    background-color: var(--color-main, #8c9e69);
    border: none;
    color: var(--color-white);
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
    height: 70px;
    padding: 0 50px 0 0;
    position: relative;
    text-transform: uppercase;
    transition: all .2s linear;
    width: 287px
}

.booking-btn:hover {
    background-color: var(--color-dark-main, #525f45)
}

.booking-btn:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 27 29'%3E%3Cpath stroke='%23B1B1B1' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2' d='M8.25 1v4.05M19.05 1v4.05M2.175 10.571h22.95M25.8 9.775V21.25c0 4.05-2.025 6.75-6.75 6.75H8.25c-4.725 0-6.75-2.7-6.75-6.75V9.775c0-4.05 2.025-6.75 6.75-6.75h10.8c4.725 0 6.75 2.7 6.75 6.75'/%3E%3Cpath stroke='%23B1B1B1' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M18.637 16.795h.013M18.637 20.845h.013M13.643 16.795h.013M13.643 20.845h.013M8.646 16.795h.014M8.646 20.845h.014'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    filter: brightness(0) invert(1);
    height: 25px;
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px
}

@media screen and (max-width:1279px) {
    .main-slider__slider-container {
        border-radius: 0 0 20px 20px
    }

    .main-slider__buttons {
        bottom: 80px;
        gap: 10px;
        height: -moz-fit-content;
        height: fit-content;
        left: 50%;
        top: auto;
        transform: translate(-50%);
        width: -moz-fit-content;
        width: fit-content
    }

    .main-slider__button svg {
        height: 30px;
        width: 30px
    }

    .main-slider__navigation {
        align-items: flex-end;
        bottom: 80px;
        gap: 50px;
        left: 18px;
        right: auto;
        top: auto;
        transform: rotate(-90deg) translateY(-50%);
        transform-origin: top left;
        z-index: 5
    }

    .main-slider__dot {
        height: 7px;
        width: 7px
    }

    .main-slider__dots {
        flex-direction: row-reverse;
        gap: 15px
    }

    .main-slider__index_desktop {
        display: none
    }

    .main-slider__index_laptop {
        bottom: 66px;
        display: block;
        font-size: 23px;
        position: absolute;
        right: 36px;
        width: -moz-fit-content;
        width: fit-content;
        z-index: 5
    }

    .main-slider__foreground-wrapper {
        margin: 14vh auto auto 6.5%
    }

    .main-slider__foreground {
        height: 50vh
    }

    .main-slider__info {
        max-width: 345px
    }

    .main-slider__title {
        font-family: Geomeria, sans-serif;
        font-size: 25px;
        text-transform: uppercase
    }

    .main-slider__subtitle {
        font-family: Geomeria, sans-serif;
        font-size: 18px;
        margin-bottom: 20px
    }

    .main-slider__text {
        display: -webkit-box;
        font-family: HelveticaNeueCyr, sans-serif;
        font-size: 18px;
        font-weight: 300;
        margin: 10px 0 25px;
        -webkit-line-clamp: 6;
        -webkit-box-orient: vertical;
        overflow: hidden
    }
}

@media screen and (max-width:767px) {
    .main-slider__foreground-wrapper {
        margin: 12vh auto auto;
        max-width: calc(100vw - 13%)
    }

    .main-slider__foreground {
        height: 50vh;
        width: 100%
    }

    .main-slider__navigation {
        top: 55%
    }

    .main-slider__buttons,
    .main-slider__total {
        display: none
    }

    .main-slider__booking {
        justify-content: center
    }
}

@media screen and (max-width:699px) {
    .main-slider {
        min-height: auto
    }

    .main-slider__foreground-wrapper {
        gap: 12vh;
        margin: 12vh auto auto;
        max-width: calc(100vw - 40px)
    }

    .main-slider__foreground {
        height: 50vh
    }

    .main-slider__navigation {
        align-items: flex-end;
        bottom: auto;
        gap: 50px;
        left: auto;
        right: 15px;
        top: 90px;
        transform: rotate(-1turn);
        z-index: 5
    }

    .main-slider__dots {
        flex-direction: row;
        gap: 5px
    }

    .main-slider__info {
        max-width: 325px
    }

    .main-slider__title {
        font-family: Montserrat, sans-serif;
        font-size: 20px;
        text-transform: none
    }

    .main-slider__subtitle {
        font-family: Montserrat, sans-serif;
        font-size: 12px;
        font-weight: 300;
        margin-top: 5px
    }

    .main-slider__text {
        display: -webkit-box;
        font-family: Montserrat, sans-serif;
        font-size: 14px;
        margin: 20px 0 25px;
        -webkit-line-clamp: 6;
        -webkit-box-orient: vertical;
        overflow: hidden
    }

    .main-slider__booking {
        justify-content: center
    }

    .main-slider__index_laptop {
        display: none
    }

    .booking-btn {
        font-size: 13.26px;
        height: 60px
    }

    .booking-btn:after {
        height: 20px;
        width: 19px
    }
} */






.main-slider {
    height: 100vh;
    min-height: 768px;
    position: relative;
    width: 100%;
    overflow: hidden;
}

.main-slider__slider-container {
    display: flex;
    height: 100%;
}

.main-slider__slide {
    flex: 0 0 100%;
    height: 100%;
    width: 100%;
    position: relative;
}

.main-slider__slide:after {
    background: rgba(23, 23, 23, 0.5);
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
}

.main-slider__image {
    display: block;
    height: 100%;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0;
    transition: transform 8s ease-out;
}

.swiper-slide-active .main-slider__image {
    transform: scale(1.05);
}

.main-slider__foreground-wrapper {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 17vh;
    justify-content: flex-start;
    margin: 15vh auto auto 19.5%;
    max-width: 70%;
    position: relative;
    z-index: 2;
}

.main-slider__foreground {
    display: flex;
    flex-direction: column;
    height: 50vh;
    justify-content: space-between;
    max-width: 770px;
}

.main-slider__info {
    color: var(--color-white);
    font-family: Montserrat, sans-serif;
    font-style: normal;
    line-height: normal;
    z-index: 5;
}

.main-slider__booking {
    display: flex;
    line-height: normal;
    width: 100%;

    display: none;
}

.main-slider__title {
    font-size: 40px;
    font-weight: 700;
    margin: 0;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.5);
}

.main-slider__subtitle {
    font-size: 18px;
    font-weight: 400;
    margin-bottom: 18px;
    margin-top: 7px;
    text-transform: uppercase;
    color: var(--color-main);
}

.main-slider__text {
    display: -webkit-box;
    font-size: 16px;
    font-weight: 300;
    margin: 20px 0 25px;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.6;
    max-width: 600px;
}

.main-slider__text * {
    display: inline;
}

.main-slider__link {
    align-items: center;
    color: var(--color-white);
    cursor: pointer;
    display: inline-flex;
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    font-weight: 300;
    gap: 10px;
    margin-bottom: 30px;
    text-decoration: none;
    transition: color .3s ease;
    z-index: 20;

    display: none;
}

.main-slider__link:hover {
    color: var(--color-main);
}

.main-slider__arrow {
    background-color: currentColor;
    display: block;
    height: 1px;
    position: relative;
    transition: width .5s ease-in-out;
    width: 18px;
}

.main-slider__link .main-slider__arrow:after {
    border: solid;
    border-width: 0 1px 1px 0;
    content: "";
    padding: 3px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
}

.main-slider__link:hover .main-slider__arrow {
    width: 25px;
}

/* Кнопки навигации Swiper в стиле оригинала */
.main-slider__buttons {
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    padding: 0 95px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    z-index: 3;
}

.swiper-button-next,
.swiper-button-prev {
    background: rgba(188, 142, 50, 0.9);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    color: white;
    transition: all 0.3s ease;
    backdrop-filter: blur(5px);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-size: 22px;
    font-weight: bold;
}

.swiper-button-next:hover,
.swiper-button-prev:hover {
    background: rgba(188, 142, 50, 1);
    transform: translateY(-50%) scale(1.1);
}

.swiper-button-prev {
    left: 30px;
}

.swiper-button-next {
    right: 30px;
}

/* Пагинация и счетчик */
.main-slider__navigation {
    align-items: center;
    bottom: 7vh;
    color: var(--color-white);
    display: flex;
    font-style: normal;
    gap: 30px;
    height: 16px;
    line-height: normal;
    position: absolute;
    right: 122px;
    width: auto;
    z-index: 5;
}

.main-slider__index,
.main-slider__total {
    display: block;
}

.main-slider__index {
    color: var(--color-white);
    font-family: Montserrat, sans-serif;
    font-size: 35px;
    font-weight: 600;
    width: 45px;
    order: 3;
}

.main-slider__index_laptop {
    display: none;
}

.main-slider__total {
    font-family: Montserrat, sans-serif;
    font-size: 16px;
    font-weight: 400;
    margin-right: 10px;
    text-align: right;
    width: 60px;
    order: 1;
}

.main-slider__dots {
    align-items: center;
    display: flex;
    gap: 20px;
    height: 100%;
    justify-content: center;
    order: 2;
}

.main-slider__dots .swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.main-slider__dots .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    transform: none;
}

.swiper-pagination {
    position: relative;
    bottom: auto !important;
    left: auto !important;
    width: auto !important;
}

.swiper-pagination-bullet {
    background-color: var(--color-gray);
    border-radius: 50%;
    cursor: pointer;
    height: 10px;
    margin: 0 5px !important;
    opacity: .4;
    width: 10px;
    transition: all 0.3s ease;
}

.swiper-pagination-bullet-active {
    background-color: var(--color-active-light-gray);
    opacity: 1;
    /* width: 32px; */
    /* border-radius: 10px; */
}

/* Кнопка бронирования */
.booking-btn {
    background-color: var(--color-main);
    border: none;
    color: var(--color-white);
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
    height: 70px;
    padding: 0 50px 0 30px;
    position: relative;
    text-transform: uppercase;
    transition: all .2s linear;
    width: 287px;
    border-radius: 35px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.booking-btn:hover {
    background-color: var(--color-dark-main);
    transform: translateY(-2px);
}

.booking-btn:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 27 29'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2' d='M8.25 1v4.05M19.05 1v4.05M2.175 10.571h22.95M25.8 9.775V21.25c0 4.05-2.025 6.75-6.75 6.75H8.25c-4.725 0-6.75-2.7-6.75-6.75V9.775c0-4.05 2.025-6.75 6.75-6.75h10.8c4.725 0 6.75 2.7 6.75 6.75'/%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M18.637 16.795h.013M18.637 20.845h.013M13.643 16.795h.013M13.643 20.845h.013M8.646 16.795h.014M8.646 20.845h.014'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    height: 25px;
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
}

/* Адаптивность */
@media screen and (max-width: 1279px) {
    .main-slider__slider-container {
        border-radius: 0 0 20px 20px;
    }

    .main-slider__buttons {
        bottom: 80px;
        gap: 10px;
        height: fit-content;
        left: 50%;
        top: auto;
        transform: translate(-50%);
        width: fit-content;
        padding: 0;
    }

    .swiper-button-next,
    .swiper-button-prev {
        position: relative;
        top: auto;
        transform: none;
        left: auto;
        right: auto;
        margin: 0 10px;
    }

    .main-slider__navigation {
        align-items: flex-end;
        bottom: 80px;
        gap: 50px;
        left: 18px;
        right: auto;
        top: auto;
        transform: rotate(-90deg) translateY(-50%);
        transform-origin: top left;
        z-index: 5;
    }

    .swiper-pagination-bullet {
        height: 7px;
        width: 7px;
    }

    .main-slider__dots {
        flex-direction: row-reverse;
        gap: 15px;
    }

    .main-slider__index {
        display: none;
    }

    .main-slider__index_laptop {
        bottom: 66px;
        display: block;
        font-size: 23px;
        position: absolute;
        right: 36px;
        width: fit-content;
        z-index: 5;
    }

    .main-slider__foreground-wrapper {
        margin: 14vh auto auto 6.5%;
    }

    .main-slider__foreground {
        height: 50vh;
    }

    .main-slider__info {
        max-width: 345px;
    }

    .main-slider__title {
        font-size: 25px;
        text-transform: uppercase;
    }

    .main-slider__subtitle {
        font-size: 18px;
        margin-bottom: 20px;
    }

    .main-slider__text {
        font-size: 18px;
        margin: 10px 0 25px;
        -webkit-line-clamp: 6;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
}

@media screen and (max-width: 767px) {
    .main-slider__foreground-wrapper {
        margin: 12vh auto auto;
        max-width: calc(100vw - 13%);
    }

    .main-slider__foreground {
        height: 50vh;
        width: 100%;
    }

    .main-slider__navigation {
        top: 55%;
    }

    .main-slider__buttons,
    .main-slider__total {
        display: none;
    }

    .main-slider__booking {
        justify-content: center;
    }

    .swiper-button-next,
    .swiper-button-prev {
        display: none;
    }
}

@media screen and (max-width: 699px) {
    .main-slider {
        min-height: auto;
        height: 70vh;
    }

    .main-slider__foreground-wrapper {
        gap: 12vh;
        margin: 12vh auto auto;
        max-width: calc(100vw - 40px);
    }

    .main-slider__foreground {
        height: 40vh;
    }

    .main-slider__navigation {
        align-items: flex-end;
        bottom: auto;
        gap: 50px;
        left: auto;
        right: 15px;
        top: 90px;
        transform: rotate(-1turn);
        z-index: 5;
    }

    .main-slider__dots {
        flex-direction: row;
        gap: 5px;
    }

    .main-slider__info {
        max-width: 325px;
    }

    .main-slider__title {
        font-size: 20px;
        text-transform: none;
    }

    .main-slider__subtitle {
        font-size: 12px;
        font-weight: 300;
        margin-top: 5px;
    }

    .main-slider__text {
        font-size: 14px;
        margin: 20px 0 25px;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .main-slider__booking {
        justify-content: center;
    }

    .main-slider__index_laptop {
        display: none;
    }

    .booking-btn {
        font-size: 13.26px;
        height: 60px;
        width: 250px;
        padding: 0 40px 0 20px;
    }

    .booking-btn:after {
        height: 20px;
        width: 19px;
        right: 20px;
    }
}

@media screen and (max-width: 480px) {
    .main-slider {
        height: 60vh;
        min-height: 400px;
    }

    .main-slider__foreground-wrapper {
        gap: 8vh;
        margin: 8vh auto auto;
        max-width: calc(100vw - 20px);
    }

    .main-slider__foreground {
        height: 35vh;
    }

    .main-slider__text {
        display: none;
    }

    .main-slider__link {
        font-size: 14px;
    }

    .booking-btn {
        width: 220px;
        height: 50px;
        font-size: 12px;
    }
}








.additional-text {
    background-color: var(--color-white);
    display: flex;
    font-family: Montserrat, sans-serif;
    font-style: normal;
    justify-content: center;
    line-height: normal;
    padding: 60px 0 110px;
    text-align: center
}

.additional-text_gray {
    background-color: var(--color-light-gray)
}

.additional-text__container {
    max-width: 1180px
}

.additional-text__subtitle {
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: .75px;
    line-height: 30px;
    margin: 0;
    padding: 0;
    text-align: center;
    text-transform: capitalize
}

.additional-text__title {
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 50px;
    margin: 10px 0 0;
    padding: 0;
    text-align: center
}

.additional-text__text {
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 24px;
    margin: 10px auto 30px
}

 .additional-text__text p {
    margin: 0;
    padding: 0
}

 .additional-text__text a {
    color: var(--color-main, #8c9e69)
}

.additional-text__button {
    background-color: transparent;
    border: 1px solid var(--color-dark-main, #525f45);
    color: var(--color-dark-main, #525f45);
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    font-weight: 400;
    padding: 20px 65px
}

.additional-text__button:hover {
    background-color: var(--color-main, #8c9e69);
    border-color: var(--color-main, #8c9e69);
    color: var(--color-white)
}

@media screen and (max-width:1279px) {
    .additional-text {
        font-family: Montserrat, sans-serif;
        padding: 40px 0 45px
    }

    .additional-text__container {
        max-width: 530px
    }

    .additional-text__subtitle {
        font-size: 15px;
        letter-spacing: .45px;
        line-height: 18px;
        text-transform: uppercase
    }

    .additional-text__title {
        font-size: 18px;
        font-weight: 550;
        letter-spacing: 1.44px;
        line-height: 22px;
        margin-top: 7px;
        text-transform: uppercase
    }

    .additional-text__text {
        font-size: 14px;
        line-height: 18px;
        margin: 8px auto 20px
    }

    .additional-text__button {
        font-size: 15px;
        padding: 14px 50px
    }
}

@media screen and (max-width:767px) {
    .additional-text {
        font-family: Montserrat, sans-serif;
        padding: 40px 0 35px
    }

    .additional-text__container {
        max-width: 100%;
        width: calc(100% - 40px)
    }

    .additional-text__subtitle {
        font-size: 14px;
        font-weight: 300;
        letter-spacing: normal;
        line-height: 15px
    }

    .additional-text__title {
        font-weight: 600;
        letter-spacing: normal;
        line-height: 18px;
        margin-top: 7px
    }

    .additional-text__text {
        font-size: 13px;
        font-weight: 400;
        line-height: 17px;
        margin: 7px auto 30px;
        max-width: 450px;
        text-align: center
    }

    .additional-text__button {
        padding: 14px 35px
    }
}

@media screen and (max-width:500px) {
    .additional-text__container {
        max-width: calc(100vw - 30px)
    }

    .additional-text {
        font-family: Montserrat, sans-serif;
        padding: 35px 0
    }

    .additional-text__text {
        margin: 20px auto
    }

    .additional-text__subtitle {
        font-size: 14px;
        line-height: 30px;
        margin-top: 20px;
        text-transform: capitalize
    }

    .additional-text__title {
        font-size: 26px;
        line-height: 32px;
        margin-top: 10px;
        text-transform: capitalize
    }

    .additional-text__button {
        background-color: var(--color-main, #8c9e69);
        border: 1px solid var(--color-main, #8c9e69);
        color: var(--color-white);
        font-size: 18px;
        padding: 15px 50px
    }
}

.image-slider {
    height: var(--desktop-height);
    overflow: hidden;
    position: relative;
    width: var(--desktop-width)
}

@media (max-width:767px) {
    .image-slider {
        border-radius: 10px
    }
}

.image-slider__slider {
    display: flex;
    height: 100%;
    transition: transform .3s ease;
    width: 100%
}

@media (max-width:767px) {
    .image-slider__slider {
        border-radius: 10px;
        margin: 10px 0
    }
}

.image-slider__slide {
    flex-shrink: 0;
    min-height: 100%;
    text-align: center;
    width: 100%
}

@media (max-width:767px) {
    .image-slider__slide {
        border-radius: 10px;
        overflow: hidden
    }
}

.image-slider__dots {
    bottom: var(--desktop-dots-bottom);
    display: flex;
    gap: var(--desktop-dots-gap);
    left: 50%;
    position: absolute;
    transform: translate(-50%);
    z-index: 2
}

.image-slider__dots_position_right {
    left: 60%
}

.image-slider__dot {
    background-color: var(--color-muted-gray);
    border-radius: 50%;
    cursor: pointer;
    height: var(--desktop-dot-height);
    width: var(--desktop-dot-width)
}

.image-slider__dot_active {
    background-color: var(--color-active-gray)
}

.image-slider__image {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.image-slider__magnifier {
    background-color: transparent;
    border: none;
    bottom: 10px;
    cursor: pointer;
    left: 12px;
    padding: 0;
    position: absolute;
    z-index: 2
}

@media screen and (max-width:767px) {
    .image-slider {
        height: var(--mobile-height);
        width: var(--mobile-width)
    }

    .image-slider__dots {
        bottom: var(--mobile-dots-bottom);
        gap: var(--mobile-dots-gap)
    }

    .image-slider__dots_position_right {
        left: 50%
    }

    .image-slider__dot {
        height: var(--mobile-dot-height);
        width: var(--mobile-dot-width)
    }

    .image-slider__magnifier {
        display: none
    }
}

.star-rating {
    display: flex;
    gap: 8px
}

@media screen and (max-width:767px) {
    .star-rating {
        gap: 0
    }
}

.photo-slider-popup-overlay {
    align-items: center;
    background-color: #000000e6;
    display: flex;
    height: 100%;
    justify-content: center;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9
}

.photo-slider-popup {
    background: none;
    height: auto;
    max-height: calc(100vh - 40px);
    position: relative;
    width: 67vw
}

.photo-slider-popup__container {
    height: 100%
}

.photo-slider-popup__wrapper {
    height: auto;
    max-height: 70vh;
    position: relative;
    transition: all .5s ease-in-out
}

.photo-slider-popup__image {
    display: block;
    height: 100%;
    max-height: 70vh;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.photo-slider-popup__line {
    display: flex;
    flex-direction: row;
    gap: 10px;
    height: 100%;
    margin-top: 30px;
    max-height: 20vh;
    transition: transform .5s ease-in-out
}

.photo-slider-popup__thumbnail {
    cursor: pointer;
    flex: 0 0 calc(16.75% - 10px);
    height: auto;
    overflow: hidden;
    transition: all .5s ease
}

.photo-slider-popup__thumbnail_selected {
    transform: translateY(-10px)
}

.photo-slider-popup__thumbnail-image {
    display: block;
    min-height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.photo-slider-popup__button {
    background: none;
    border: none;
    cursor: pointer;
    display: block;
    position: absolute;
    top: 42%
}

.photo-slider-popup__button_left {
    left: -100px
}

.photo-slider-popup__button_right {
    right: -100px
}

.photo-fade-enter-active,
.photo-fade-leave-active {
    transition: opacity .5s ease-in-out
}

.photo-fade-enter,
.photo-fade-leave-to {
    opacity: 0
}

.photo-slider-popup__close-button,
.photo-slider-popup__dots-navigation {
    display: none
}

@media (max-width:1000px) {
    .photo-slider-popup {
        width: 95%
    }

    .photo-slider-popup__button,
    .photo-slider-popup__line {
        display: none
    }

    .photo-slider-popup__dots-navigation {
        align-items: center;
        display: flex;
        justify-content: center;
        padding: 30px 0 10px
    }

    .photo-slider-popup__dot {
        background-color: var(--color-muted-gray);
        border-radius: 50%;
        cursor: pointer;
        display: inline-block;
        height: 7px;
        margin: 0 5px;
        width: 8px
    }

    .photo-slider-popup__dot_active {
        background-color: var(--color-active-gray)
    }
}

@media screen and (max-width:767px) {
    .photo-slider-popup {
        height: auto
    }

    .photo-slider-popup__close-button {
        color: var(--color-white);
        cursor: pointer;
        display: block;
        height: 25px;
        position: absolute;
        right: 0;
        top: -35px;
        width: 25px;
        z-index: 1
    }

    .photo-slider-popup__container,
    .photo-slider-popup__image,
    .photo-slider-popup__wrapper {
        height: 100%;
        -o-object-fit: contain;
        object-fit: contain
    }
}

.close__popup-btn {
    cursor: pointer;
    height: 46px;
    position: fixed;
    right: 50px;
    width: 46px;
    z-index: 999
}

@media (max-width:1000px) {
    .close__popup-btn {
        position: absolute;
        right: 0;
        top: -60px
    }
}

@media (max-width:767px) {
    .close__popup-btn {
        display: none
    }
}

.logo-popup-overlay {
    align-items: center;
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    background-color: #00000080;
    display: flex;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    justify-content: center;
    position: fixed;
    z-index: 9
}

.logo-popup {
    background-color: var(--color-white);
    border-radius: 30px;
    display: flex;
    gap: 50px;
    height: calc(100% - 100px);
    max-height: 700px;
    max-width: 1164px;
    position: relative;
    width: calc(100% - 140px);
    z-index: 1
}

.logo-popup__image-container,
.logo-popup__info-container {
    flex-grow: 0;
    flex-shrink: 1
}

.logo-popup__image-container {
    border-bottom-left-radius: 30px;
    border-top-left-radius: 30px;
    overflow: hidden;
    width: 54.3%
}

.logo-popup__info-container {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    font-family: Montserrat, sans-serif;
    font-style: normal;
    padding: 60px 50px 0 0;
    width: 45.7%
}

.logo-popup__close-button {
    background: none;
    border: none;
    cursor: pointer;
    position: absolute;
    right: -50px;
    top: -45px;
    z-index: 9
}

.logo-popup__info-location,
.logo-popup__info-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 30px;
    margin: 0
}

.logo-popup__info-location {
    margin-top: 5px
}

.logo-popup__info-stars {
    margin: 15px 0
}

.logo-popup__info-text {
    display: -webkit-box;
    font-size: 20px;
    font-weight: 300;
    line-height: 24px;
    margin: 0;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 10;
    overflow: hidden
}

.logo-popup__info-button-container {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-top: 70px
}

.logo-popup__info-button {
    width: 100%
}

.logo-popup__info-link {
    display: block;
    max-width: 260px;
    width: 100%
}

@media screen and (max-width:767px) {
    .logo-popup {
        flex-direction: column;
        gap: 30px;
        height: auto;
        justify-content: space-between;
        max-height: calc(100vh - 200px);
        max-height: none;
        width: calc(100vw - 40px)
    }

    .logo-popup__image-container {
        border: none;
        border-bottom-right-radius: 30px;
        border-top-left-radius: 0;
        max-height: 230px;
        width: 100%
    }

    .logo-popup__info-container {
        box-sizing: border-box;
        flex-direction: row;
        flex-wrap: wrap;
        order: -1;
        padding: 25px 20px 0;
        width: 100%
    }

    .logo-popup__info-text {
        font-size: 12px;
        font-weight: 300;
        line-height: 120%;
        margin-top: 25px
    }

    .logo-popup__info-container>.logo-popup__info-header {
        flex: 0 0 40%;
        padding-bottom: 10px;
        padding-right: 10px
    }

    .logo-popup__info-container>.logo-popup__info-stars {
        flex: 0 1 fit-content;
        padding-right: 15px
    }

    .logo-popup__info-container>.logo-popup__info-button-container,
    .logo-popup__info-container>.logo-popup__info-text {
        flex-basis: 100%
    }

    .logo-popup__info-button-container {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
        margin-top: 15px;
        order: 2
    }

    .logo-popup__info-link {
        width: auto
    }

    .logo-popup__info-location,
    .logo-popup__info-title {
        color: var(--color-room-grey);
        font-size: 14px;
        line-height: normal
    }

    .logo-popup__info-button {
        font-size: 14px;
        font-style: normal;
        font-weight: 700;
        line-height: normal;
        padding: 9px 15px;
        width: auto
    }

    .logo-popup__info-text {
        order: 3
    }

    .logo-popup__close-button {
        right: 11px;
        top: 13px;
        z-index: 10
    }

    .logo-popup__close-button svg {
        height: 32px;
        width: 32px
    }

    .logo-popup__close-button svg path:first-child {
        stroke: #464646
    }

    .logo-popup__close-button svg path:not(:first-child) {
        stroke: #464646;
        stroke-width: 3
    }

    .logo-popup__info-stars {
        margin: 0
    }
}

.logo-slider {
    background-color: var(--color-light-gray);
    font-family: Montserrat, sans-serif;
    font-style: normal;
    padding: 70px 0 150px;
    text-align: center
}

.logo-slider__subtitle {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: .75px;
    line-height: 30px;
    margin: 0 0 10px;
    text-transform: uppercase
}

.logo-slider__title {
    font-size: 40px;
    font-weight: 700;
    line-height: 48px;
    margin: 0 0 90px
}

.logo-slider__content {
    margin: 0 auto;
    max-width: 1390px;
    position: relative
}

.logo-slider__button {
    background: none;
    border: none;
    cursor: pointer;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2
}

.logo-slider__button_left {
    left: -20px
}

.logo-slider__button_right {
    right: -20px
}

.logo-slider__window {
    box-sizing: border-box;
    margin: 0 auto;
    overflow: hidden;
    width: 1170px
}

.logo-slider__track {
    align-items: center;
    display: flex;
    transition: transform .3s ease-in-out
}

.logo-slider__logo {
    box-sizing: border-box;
    cursor: pointer;
    display: flex;
    flex: 0 0 25%;
    justify-content: center;
    margin: 0;
    padding: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.logo-slider__logo-image {
    display: block;
    -o-object-fit: contain;
    object-fit: contain
}

@media screen and (max-width:1499px) {
    .logo-slider__button_right {
        right: 20px
    }

    .logo-slider__button_left {
        left: 20px
    }
}

@media screen and (max-width:1279px) {
    .logo-slider__subtitle {
        font-size: 15px;
        letter-spacing: .45px;
        line-height: 18px;
        margin-bottom: 6px
    }

    .logo-slider__title {
        font-size: 18px;
        letter-spacing: 1.44px;
        line-height: 22px;
        margin-bottom: 60px;
        text-transform: uppercase
    }

    .logo-slider__content {
        width: 750px
    }

    .logo-slider__window {
        width: 680px
    }

    .logo-slider__button svg {
        height: 18px;
        width: 18px
    }

    .logo-slider__logo-image {
        max-height: 65px
    }

    .logo-slider__button_left {
        left: -20px
    }

    .logo-slider__button_right {
        right: -20px
    }
}

@media screen and (max-width:799px) {
    .logo-slider {
        padding-bottom: 65px
    }

    .logo-slider__title {
        font-size: 30px;
        line-height: 36px;
        text-transform: none
    }

    .logo-slider__subtitle {
        font-size: 25px;
        line-height: 30px;
        text-transform: none
    }

    .logo-slider__window {
        margin: 0 auto;
        width: calc(100% - 40px)
    }

    .logo-slider__content {
        margin: 0;
        width: 100%
    }

    .logo-slider__button {
        display: none
    }

    .logo-slider__logo {
        flex: 0 0 50%
    }

    .logo-slider__dots {
        padding: 30px 0 0;
        text-align: center
    }

    .logo-slider__dot {
        background-color: var(--color-muted-gray);
        border-radius: 50%;
        cursor: pointer;
        display: inline-block;
        height: 7px;
        margin: 0 5px;
        transition: background-color .6s ease;
        width: 7px
    }

    .logo-slider__dot.active {
        background-color: var(--color-active-gray)
    }
}

.block-header {
    align-items: center;
    color: var(--color-black);
    display: flex;
    flex-direction: column;
    font-family: Montserrat, sans-serif;
    font-style: normal;
    gap: 10px;
    margin: 0 auto
}

.block-header_white {
    color: var(--color-white)
}

.block-header__subtitle {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: .75px;
    line-height: 30px;
    text-align: center;
    text-transform: uppercase
}

.block-header__title {
    font-size: 40px;
    font-weight: 700;
    line-height: 48px;
    text-align: center
}

.block-header_left-align {
    align-items: flex-start
}

.block-header_left-align .block-header__subtitle,
.block-header_left-align .block-header__title {
    text-align: left
}

@media (max-width:767px) {
    .block-header__subtitle {
        font-family: Montserrat;
        font-size: 14px;
        font-weight: 300;
        margin-top: 20px;
        text-align: center;
        text-transform: uppercase
    }

    .block-header__title {
        font-size: 26px;
        font-weight: 600;
        letter-spacing: normal;
        line-height: 24px;
        margin-bottom: 30px
    }
}

.photo-gallery {
    padding: 60px 20px 70px
}

.photo-gallery__container {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(3, 1fr) 1.6fr repeat(2, 1fr);
    grid-template-rows: repeat(3, 213px);
    margin: 70px auto 0;
    max-width: 1440px
}

.photo-gallery__item {
    grid-column: span 1;
    grid-row: span 1;
    position: relative
}

.photo-gallery__item_4,
.photo-gallery__item_6 {
    grid-column: span 2;
    grid-row: span 2
}

.photo-gallery__image {
    cursor: pointer;
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.photo-gallery__zoom-button {
    cursor: pointer;
    height: 50px;
    left: 50%;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: opacity .3s ease;
    width: 50px;
    z-index: 2
}

.photo-gallery__item:hover .photo-gallery__zoom-button {
    opacity: 1
}

.fade-enter-active,
.fade-leave-active {
    transition: opacity .5s ease-in-out
}

.fade-enter,
.fade-leave-to {
    opacity: 0
}

@media (max-width:1280px) {
    .photo-gallery {
        padding-bottom: 20px
    }

    .photo-gallery__slider {
        display: flex;
        flex-direction: column;
        gap: 20px;
        margin: 0 auto;
        max-width: 800px
    }

    .photo-gallery__slides-container {
        display: flex;
        margin: 0 auto;
        overflow: hidden
    }

    .photo-gallery__slide {
        display: flex;
        flex: 0 0 auto;
        transition: transform .5s ease-in-out;
        width: 100%
    }

    .photo-gallery__container {
        grid-template-columns: repeat(4, 1fr);
        grid-template-rows: repeat(3, 162px);
        margin-top: 30px;
        width: 100%
    }

    .photo-gallery__item_4,
    .photo-gallery__item_6 {
        grid-column: span 1;
        grid-row: span 1
    }

    .photo-gallery__item_2,
    .photo-gallery__item_3,
    .photo-gallery__item_8 {
        grid-column: span 2
    }

    .photo-gallery__dots {
        bottom: 75px;
        display: flex;
        gap: 15px;
        justify-content: center;
        left: 0
    }

    .photo-gallery__dot {
        background-color: var(--color-muted-gray);
        border-radius: 50%;
        cursor: pointer;
        height: 9px;
        width: 9px
    }

    .photo-gallery__dot_active {
        background-color: var(--color-active-gray)
    }
}

@media (max-width:1023px) {
    .photo-gallery {
        padding-bottom: 100px
    }

    .photo-gallery__slides-container {
        max-width: calc(100vw - 60px)
    }
}

@media (max-width:699px) {
    .photo-gallery__container {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(3, 162px);
        margin-top: 0;
        width: 100%
    }

    .photo-gallery__slides-container {
        max-width: calc(100vw - 40px)
    }

    .photo-gallery__item_2 {
        grid-column: span 2
    }

    .photo-gallery__item_3,
    .photo-gallery__item_4 {
        grid-column: span 1;
        grid-row: span 1
    }
}

.yandex-container {
    height: 100%
}

.map-component {
    background-color: var(--color-white);
    color: var(--color-black);
    display: flex;
    flex-direction: row;
    font-family: Montserrat, sans-serif;
    overflow: hidden
}

.map-component__text-container {
    width: 55%
}

.map-component__text-container_right {
    order: 2
}

.map-component__header {
    background-color: var(--color-light-gray);
    padding: 100px 100px 25px 36%;
    text-align: left
}

.map-component__text-container_right .map-component__header {
    padding: 100px 36% 25px 100px
}

.map-component__text-container_right .map-component__description {
    padding-left: 100px;
    padding-right: 36%
}

.map-component__address,
.map-component__coordinates,
.map-component__description,
.map-component__subtitle,
.map-component__title {
    font-size: 22px;
    font-weight: 400;
    line-height: 24px;
    margin: 0
}

.map-component__subtitle {
    font-size: 25px;
    font-weight: 100;
    letter-spacing: .75px;
    text-transform: uppercase
}

.map-component__title {
    font-size: 40px;
    font-weight: 700;
    line-height: 50px;
    margin-top: 16px
}

.map-component__address,
.map-component__coordinates {
    font-weight: 700
}

.map-component__coordinates {
    margin-top: 40px
}

.map-component__address {
    margin-top: 16px;
    max-width: 400px
}

.map-component__description {
    margin: 20px 0 0;
    padding-left: 36%;
    padding-right: 100px
}

.map-component__map {
    background-color: var(--color-light-gray);
    min-height: 750px;
    width: 45%
}

.map-component__description a {
    color: var(--color-main, #8c9e69)
}

::v-deep(.map-component__description a) {
    color: var(--color-main, #8c9e69)
}

@media screen and (max-width:1280px) {
    .map-component {
        padding-bottom: 45px
    }

    .map-component__text-container {
        width: 45%
    }

    .map-component__map {
        min-height: 550px;
        width: 55%
    }

    .map-component__address,
    .map-component__coordinates,
    .map-component__description {
        font-size: 12px;
        line-height: 14px
    }

    .map-component__subtitle {
        font-size: 14px;
        letter-spacing: .443px;
        line-height: 18px
    }

    .map-component__title {
        font-size: 24px;
        letter-spacing: 1.888px;
        line-height: 28px;
        text-transform: uppercase
    }

    .map-component__description,
    .map-component__header,
    .map-component__text-container_right .map-component__description,
    .map-component__text-container_right .map-component__header {
        padding-left: 12%;
        padding-right: 12%
    }
}

@media screen and (max-width:767px) {
    .map-component {
        flex-direction: column;
        margin-bottom: 10px
    }

    .map-component__map,
    .map-component__text-container {
        width: 100%
    }

    .map-component__text-container_right {
        order: -1
    }

    .map-component__header,
    .map-component__text-container_right .map-component__header {
        background-color: var(--color-white);
        padding: 50px 20px 0
    }

    .map-component__address,
    .map-component__coordinates,
    .map-component__description,
    .map-component__subtitle,
    .map-component__title {
        text-align: center
    }

    .map-component__address,
    .map-component__title {
        margin-top: 10px
    }

    .map-component__coordinates,
    .map-component__description,
    .map-component__text-container_right .map-component__description {
        margin-top: 35px
    }

    .map-component__description,
    .map-component__text-container_right .map-component__description {
        font-size: 16px;
        line-height: 20px;
        margin-bottom: 20px
    }

    .map-component__address,
    .map-component__coordinates {
        font-size: 16px;
        line-height: 24px
    }

    .map-component__address {
        max-width: 100%
    }

    .map-component__map {
        height: 290px;
        min-height: auto
    }

    .map-component__title {
        font-size: 30px;
        letter-spacing: normal;
        line-height: 36px;
        text-transform: none
    }

    .map-component__subtitle {
        font-size: 25px;
        line-height: 30px;
        text-transform: none
    }
}

.magnifier-icon {
    height: 62px;
    width: 62px
}

@media screen and (max-width:1500px) {
    .magnifier-icon {
        height: 40px;
        width: 40px
    }
}

.so-slider {
    overflow: hidden;
    position: relative;
    width: 100%
}

.so-slider-wrapper {
    display: flex;
    flex-wrap: nowrap;
    height: 770px;
    transition: transform .3s ease-in-out
}

.so-slide {
    background-color: var(--color-white);
    box-sizing: border-box;
    flex: 0 0 25%;
    overflow: hidden;
    padding: 0 1px;
    position: relative;
    transition: transform .3s ease-in-out, flex-basis .3s ease
}

.so-slider__magnifier-icon-container {
    opacity: 0;
    position: absolute;
    right: 16px;
    top: 28px;
    transition: all .3s ease;
    visibility: hidden
}

.is-expanded .so-slider__magnifier-icon-container,
.so-slide:hover .so-slider__magnifier-icon-container {
    opacity: 1;
    visibility: visible;
    z-index: 30
}

.so-slider__image {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: all 1s ease;
    width: 100%
}

.is-expanded .so-slider__image,
.so-slide:hover .so-slider__image {
    filter: blur(10px) brightness(50%);
    transform: scale(1.1)
}

.so-slide-content {
    background: #0006;
    color: #fff;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    position: absolute;
    text-align: left;
    z-index: 20
}

.so-slide__info {
    color: var(--color-white);
    display: flex;
    flex-direction: column;
    font-family: Montserrat, sans-serif;
    font-style: normal;
    gap: 10px;
    line-height: normal;
    margin: 90px auto 0;
    max-width: 80%
}

.so-slide__subtitle {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: .6px;
    text-transform: uppercase
}

.so-slide__title {
    font-size: 40px;
    font-weight: 700;
    margin-bottom: 15px;
    text-transform: capitalize
}

.so-slide__additional {
    opacity: 0;
    transition: opacity .3s ease, visibility .3s;
    visibility: hidden;
    display: none;
}

.is-expanded .so-slide__additional,
.so-slide:hover .so-slide__additional {
    opacity: 1;
    visibility: visible
}

.so-slide__text {
    font-size: 16px;
    max-width: 350px
}

.so-slide__full-text,
.so-slide__text {
    font-weight: 400;
    letter-spacing: .6px;
    margin: 20px 0 40px
}

.so-slide__full-text {
    font-size: 20px
}

.so-slide__more-link {
    align-items: center;
    color: var(--color-white);
    display: flex;
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    font-weight: 300;
    margin: 30px 0;
    text-decoration: none
}

.so-slide__more-button {
    background: transparent;
    border: 1px solid #fff;
    border-radius: 100px;
    font-family: Montserrat, sans-serif;
    font-size: 20px;
    font-weight: 400;
    padding: 15px 35px
}

.so-slide__icons-container {
    margin-bottom: 30px
}

.so-slide__more-button_close {
    margin-top: 80px
}

.so-slider__arrow {
    background-color: currentColor;
    display: inline-block;
    height: 1px;
    margin: 0 0 0 10px;
    position: relative;
    transition: width .5s ease-in-out;
    width: 18px
}

.so-slide__more-link .so-slider__arrow:after {
    border: solid;
    border-width: 0 1px 1px 0;
    content: "";
    padding: 3px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg)
}

.so-slide__more-link:hover .so-slider__arrow {
    width: 25px
}

.so-slider__navigation {
    margin: 45px 0 35px
}

.so-slider__dots,
.so-slider__navigation {
    display: flex;
    gap: 30px;
    justify-content: center
}

.so-slider__dots {
    align-items: center
}

.so-slider__dot {
    background-color: var(--color-gray);
    border-radius: 50%;
    cursor: pointer;
    height: 10px;
    margin: 0 5px;
    width: 10px
}

.so-slider__dot_active {
    background-color: var(--color-main, #8c9e69)
}

.so-slide:hover .slide-content {
    opacity: 1
}

.slider-expanded .so-slide:not(.is-expanded) {
    flex: 0 0 16.67%
}

.slider-expanded .so-slide.is-expanded {
    flex: 0 0 50%
}

.so-slider__button {
    align-items: center;
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    justify-content: center
}

.so-slide__icons {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-bottom: 5px
}

.so-slide__icons_after {
    margin-bottom: 30px
}

.so-slide__icon {
    align-items: center;
    display: flex;
    gap: 15px
}

.so-slide__icon-image {
    height: 25px;
    width: auto
}

.so-slide__icon-description {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: .6px;
    margin: 0
}

 .so-slide__icon-description p {
    font-family: Montserrat, sans-serif;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: .6px;
    margin: 0;
    padding: 0
}

 .so-slide__full-text p {
    font-family: Montserrat, sans-serif;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: .6px;
    margin: 0;
    padding: 0
}

@media screen and (max-width:1280px) {
    .so-slider-wrapper {
        height: 455px
    }

    .so-slide__info {
        margin-top: 55px;
        max-width: 85%
    }

    .so-slide__subtitle {
        font-size: 14px;
        font-weight: 300
    }

    .so-slide__title {
        font-size: 26px;
        font-weight: 600;
        margin-bottom: 0
    }

    .so-slide__text {
        margin: 0
    }

    .so-slide__full-text,
    .so-slide__text {
        font-size: 13px;
        font-weight: 400
    }

     .so-slide__icon-description p,
     .so-slide__full-text p {
        font-size: 13px
    }

    .so-slide__icon-image {
        height: 15px
    }

    .so-slide__full-text {
        margin: 10px 0 20px
    }

    .so-slide__icons-container {
        margin-bottom: 15px
    }

    .so-slide__more-button {
        bottom: 40px;
        left: 30px;
        position: absolute
    }
}

@media screen and (max-width:1024px) {
    .so-slide {
        flex: 0 0 40%
    }

    .so-slider-wrapper {
        height: 550px
    }

    .so-slider__navigation {
        display: none
    }

    .so-slide__additional {
        opacity: 1;
        visibility: visible
    }

    .so-slider__image {
        filter: brightness(50%)
    }

    .slider-expanded .so-slide:not(.is-expanded) {
        flex: 0 0 20%
    }

    .slider-expanded .so-slide.is-expanded {
        flex: 0 0 60%
    }

    .slider-expanded .so-slide:not(.is-expanded) .so-slide__text {
        display: -webkit-box;
        -webkit-line-clamp: 10;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis
    }
}

@media screen and (max-width:699px) {
    .so-slide {
        flex: 0 0 70%
    }

    .slider-expanded .so-slide:not(.is-expanded) {
        flex: 0 0 30%
    }

    .slider-expanded .so-slide.is-expanded {
        flex: 0 0 100%
    }
}





.so-slider .swiper {
  overflow: hidden;
}

.so-slider .swiper-wrapper {
  display: flex;
  height: 770px;
  transition: transform .3s ease-in-out;
}

.so-slider .swiper-slide {
  flex: 0 0 25%;
  padding: 0 1px;
  box-sizing: border-box;
}

/* Пагинация — используем ваши стили точек */
.so-slider .swiper-pagination {
  position: static;
  display: flex;
  gap: 30px;
  justify-content: center;
  align-items: center;
}

.so-slider .swiper-pagination-bullet {
  background-color: var(--color-gray);
  width: 10px;
  height: 10px;
  margin: 0 5px;
  opacity: 1;
  cursor: pointer;
}

.so-slider .swiper-pagination-bullet-active {
  background-color: var(--color-main, #8c9e69);
}

/* Стрелки */
.so-slider .swiper-button-prev,
.so-slider .swiper-button-next {
  position: static;
  margin: 0;
  width: auto;
  height: auto;
  background: none;
  top: auto;
  transform: none;
}

/* Адаптивность через Swiper breakpoints */
@media screen and (max-width: 1280px) {
  .so-slider .swiper-wrapper {
    height: 455px;
  }
}

@media screen and (max-width: 1024px) {
  .so-slider .swiper-slide {
    flex: 0 0 40%;
  }
  .so-slider .swiper-wrapper {
    height: 550px;
  }
  .so-slider__navigation {
    display: none; /* как у вас */
  }
  .so-slide__additional {
    opacity: 1 !important;
    visibility: visible !important;
  }
  .so-slider__image {
    filter: brightness(50%);
  }
}

@media screen and (max-width: 699px) {
  .so-slider .swiper-slide {
    flex: 0 0 70%;
  }
}





.what-todo {
    background-color: var(--color-light-gray);
    font-family: Montserrat, sans-serif;
    font-style: normal;
    line-height: normal;
    overflow: hidden;
    padding: 55px 0 200px;
    position: relative;
    text-align: center
}

.what-todo__title {
    font-size: 40px;
    font-weight: 600;
    line-height: 48px;
    margin: 0 0 70px
}

.what-todo__subtitle {
    font-size: 25px;
    font-weight: 100;
    letter-spacing: .75px;
    line-height: 30px;
    margin: 0 0 10px;
    text-transform: uppercase
}

.what-todo__slider {
    margin-left: -2%;
    margin-right: -2%;
    position: relative
}

.what-todo__slider-wrapper {
    display: flex;
    transition: transform .3s ease-in-out
}

.what-todo__slide {
    box-sizing: border-box;
    flex: 0 0 20%;
    padding-left: 15px;
    padding-right: 15px;
    transition: transform .3s ease-in-out
}

.what-todo__slide-image {
    border-radius: 15px;
    display: block;
    filter: brightness(70%);
    height: 100%;
    margin: 0 auto;
    -o-object-fit: cover;
    object-fit: cover;
    position: relative;
    width: 100%
}

.what-todo__slide-image-container {
    border-radius: 15px;
    height: 480px;
    overflow: hidden;
    position: relative;
    width: 100%
}

.what-todo__slide-text {
    bottom: 5px;
    font-style: normal;
    left: 50%;
    line-height: normal;
    transform: translate(-50%)
}

.what-todo__slide-text,
.what-todo__slide-title {
    color: var(--color-white);
    font-family: Montserrat, sans-serif;
    font-size: 20px;
    font-weight: 550;
    max-width: 285px;
    position: absolute;
    text-align: left;
    width: 90%
}

.what-todo__slide-title {
    left: 40px;
    letter-spacing: .6px;
    text-transform: uppercase;
    top: 50px
}

.what-todo__button_container {
    bottom: 85px;
    display: flex;
    gap: 30px;
    height: 65px;
    left: 50%;
    position: absolute;
    transform: translate(-50%)
}

.what-todo__button {
    background: none;
    border: none;
    cursor: pointer;
    display: block;
    margin: 0;
    padding: 0;
    transition: opacity .3s ease
}

.what-todo__button_disabled {
    cursor: default;
    opacity: .5
}

@media (max-width:1399px) {
    .what-todo__slide {
        flex: 0 0 33.33%
    }
}

@media (max-width:900px) {
    .what-todo {
        padding: 50px 0 45px
    }

    .what-todo__subtitle {
        text-transform: capitalize
    }

    .what-todo__title {
        font-size: 30px;
        line-height: 36px;
        margin-bottom: 30px
    }

    .what-todo__slide {
        flex: 0 0 75%
    }

    .what-todo__slider {
        margin-left: 15px
    }

    .what-todo__button_container {
        display: none
    }

    .what-todo__slide-image-container {
        border-radius: 15px;
        height: 480px;
        overflow: hidden;
        position: relative;
        width: 100%
    }

    .what-todo__slide-image {
        width: calc(100% - 15px)
    }

    .what-todo__slide-text,
    .what-todo__slide-title {
        font-family: Montserrat, sans-serif;
        font-size: 16px;
        max-width: 215px
    }

    .what-todo__dots {
        display: flex;
        gap: 10px;
        justify-content: center;
        margin-top: 25px
    }

    .what-todo__dot {
        background-color: var(--color-muted-gray);
        border-radius: 50%;
        height: 7px;
        width: 7px
    }

    .what-todo__dot_active {
        background-color: var(--color-active-gray)
    }
}

@media (max-width:499px) {
    .what-todo__slide-image-container {
        height: 385px
    }
}

.leave-feedback {
    background-color: var(--color-light-gray);
    font-family: Montserrat, sans-serif;
    font-style: normal;
    margin: 0 auto;
    max-width: 3840px;
    padding: 92px 0 0
}

.leave-feedback__container {
    display: flex;
    gap: 100px;
    width: 100%
}

.leave-feedback__image__container {
    flex-shrink: 1;
    height: 940px;
    width: 74%
}

.leave-feedback__text__container {
    max-width: 300px
}

.leave-feedback__image,
.leave-feedback__logo,
.leave-feedback__map-image {
    display: block;
    -o-object-fit: cover;
    object-fit: cover
}

.leave-feedback__image {
    height: 100%;
    max-width: 776px;
    width: 100%
}

.leave-feedback__logo-container {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 32px;
    max-width: 171px
}

.leave-feedback__logo {
    height: 70px;
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    width: auto
}

.leave-feedback__title {
    font-size: 40px;
    font-weight: 700;
    line-height: 48px;
    margin: 0 0 50px
}

.leave-feedback__form-container {
    max-width: 270px;
    padding-right: 40px
}

.leave-feedback__additional-text {
    font-size: 20px;
    font-weight: 300;
    line-height: 24px;
    margin: 0 0 50px
}

.leave-feedback__form-title {
    font-size: 25px;
    font-weight: 600;
    line-height: 30px
}

.leave-feedback__main__container {
    display: flex;
    flex-direction: column;
    gap: 55px;
    justify-content: space-between;
    width: 100%
}

.leave-feedback__main__container_left {
    order: -1
}

.leave-feedback__info__container {
    display: flex;
    gap: 105px;
    min-width: -moz-fit-content;
    min-width: fit-content
}

.leave-feedback__main__container_left .leave-feedback__info__container {
    justify-content: flex-end
}

.leave-feedback__main__container_left .leave-feedback__text__container {
    margin-left: 40px
}

.leave-feedback__main__container_left .leave-feedback__form__container {
    padding-right: 0
}

.leave-feedback__map-container {
    overflow: hidden;
    width: 100%
}

.leave-feedback__map-image {
    height: 260px;
    width: 100%
}

.leave-feedback__form-container {
    display: flex;
    flex-direction: column
}

.leave-feedback__form {
    flex-grow: 1
}

.leave-feedback__additional-text_mobile {
    display: none
}

@media screen and (max-width:767px) {
    .leave-feedback {
        padding-top: 30px
    }

    .leave-feedback__container {
        flex-direction: column;
        gap: 0
    }

    .leave-feedback__image__container {
        height: 290px;
        order: 2;
        width: 100%
    }

    .leave-feedback__map-container {
        display: none
    }

    .leave-feedback__logo-container {
        align-items: center;
        margin: 0 auto
    }

    .leave-feedback__info__container {
        align-items: center;
        gap: 50px;
        padding-bottom: 50px;
        text-align: left;
        width: calc(100vw - 40px)
    }

    .leave-feedback__form-container,
    .leave-feedback__text__container {
        max-width: 340px
    }

    .leave-feedback__main__container {
        gap: 30px
    }

    .leave-feedback__info__container,
    .leave-feedback__main__container {
        flex-direction: column;
        margin: 0 auto
    }

    .leave-feedback__additional-text {
        margin-top: 75px
    }

    .leave-feedback__title {
        font-size: 30px;
        line-height: 36px;
        margin-bottom: 20px;
        text-align: center
    }

    .leave-feedback__form-container {
        align-items: flex-start;
        justify-content: flex-start
    }

    .leave-feedback__additional-text_mobile {
        display: block;
        font-size: 20px;
        font-weight: 300;
        line-height: 120%;
        margin-bottom: 30px;
        text-align: center
    }

    .leave-feedback__additional-text {
        display: none
    }
}




/* 
.expanding-list {
    background-color: var(--color-light-gray);
    font-family: Montserrat, sans-serif;
    font-style: normal;
    padding: 90px 0 0;
    text-align: center
}

.expanding-list__main-container {
    display: flex;
    flex-direction: row;
    gap: 30px;
    justify-content: flex-end;
    margin: 0 auto;
    max-width: 3840px
}

.expanding-list__list-container {
    width: 770px
}

.expanding-list__main-container_right {
    margin-right: 20px
}

.expanding-list__subtitle {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: .75px;
    line-height: 30px;
    margin: 0 auto 10px;
    max-width: 970px
}

.expanding-list__title {
    font-size: 40px;
    font-weight: 700;
    line-height: 48px;
    margin: 0 auto 15px;
    max-width: 970px
}

.expanding-list__description {
    font-size: 16px;
    font-weight: 300;
    line-height: 24px;
    margin: 0 auto 115px;
    max-width: 1160px
}

.expanding-list__image-container {
    flex-shrink: 0
}

.expanding-list__main-container_right .expanding-list__image-container {
    order: -1
}

.expanding-list__main-container_right {
    justify-content: flex-start
}

.expanding-list__image {
    aspect-ratio: 1/1;
    display: block;
    margin-top: auto;
    max-height: 710px;
    max-width: 720px;
    -o-object-fit: cover;
    object-fit: cover
}

.expanding-list__line {
    border-bottom: 1px solid var(--color-black)
}

.expanding-list__list-item {
    margin-bottom: 40px;
    position: relative;
    text-align: left
}

.expanding-list__list-item-title {
    cursor: pointer;
    font-family: Montserrat, sans-serif;
    font-size: 25px;
    font-weight: 550;
    line-height: normal;
    margin-bottom: 55px;
    padding-right: 25px
}

.expanding-list__list-item-content {
    font-family: Montserrat, sans-serif;
    font-size: 20px;
    font-weight: 300;
    line-height: normal
}

.expanding-list__list-item-button {
    cursor: pointer;
    position: absolute;
    right: 0;
    top: 25px;
    transition: transform .5s ease
}

.expanding-list__list-item-button_is-flipped {
    transform: rotate(-180deg)
}

.fade-in {
    animation: fadeIn .5s ease-out forwards;
    opacity: 0
}

@keyframes fadeIn {
    to {
        opacity: 1
    }
}

@media (max-width:767px) {
    .expanding-list__subtitle {
        font-size: 14px;
        font-weight: 300;
        text-align: center;
        text-transform: uppercase
    }

    .expanding-list__title {
        font-size: 26px;
        font-weight: 600;
        text-align: center
    }
}

@media screen and (max-width:1600px) {
    .expanding-list__main-container {
        margin-left: 20px
    }

    .expanding-list__main-container_right {
        margin-left: 0
    }
}

@media screen and (max-width:1279px) {
    .expanding-list__container {
        margin: 0 auto;
        width: calc(100vw - 120px)
    }

    .expanding-list__main-container {
        align-items: center;
        flex-direction: column;
        margin: 0 auto
    }

    .expanding-list__image-container {
        display: none
    }

    .expanding-list__list-container {
        width: 100%
    }
}

@media screen and (max-width:600px) {
    .expanding-list {
        margin: 0 auto;
        padding: 25px 0 0
    }

    .expanding-list__list-container {
        width: 90%
    }

    .expanding-list__container {
        width: calc(100vw - 40px)
    }

    .expanding-list__description {
        margin-bottom: 30px
    }

    .expanding-list__title {
        font-size: 30px;
        line-height: 36px;
        margin-bottom: 30px
    }

    .expanding-list__list-item {
        margin-bottom: 20px
    }

    .expanding-list__list-item-title {
        font-family: Montserrat, sans-serif;
        font-size: 18px;
        margin-bottom: 20px
    }

    .expanding-list__list-item-content {
        font-family: Montserrat, sans-serif;
        font-size: 16px;
        font-weight: 600
    }

    .expanding-list__list-item-button {
        top: 10px
    }
} */






        .expanding-list {
            background-color: var(--color-light-gray);
            font-family: Montserrat, sans-serif;
            font-style: normal;
            padding: 90px 0 0;
            text-align: center
        }

        .expanding-list__container {
            margin: 0 auto;
            /* max-width: 1920px; */
        }

        .expanding-list__main-container {
            display: flex;
            flex-direction: row;
            gap: 30px;
            justify-content: flex-end;
            margin: 0 auto;
            max-width: 3840px
        }

        .expanding-list__list-container {
            width: 770px
        }

        .expanding-list__main-container_right {
            margin-right: 20px
        }

        .expanding-list__subtitle {
            font-size: 18px;
            font-weight: 400;
            letter-spacing: .75px;
            line-height: 30px;
            margin: 0 auto 10px;
            max-width: 970px
        }

        .expanding-list__title {
            font-size: 40px;
            font-weight: 700;
            line-height: 48px;
            margin: 0 auto 15px;
            max-width: 970px
        }

        .expanding-list__description {
            font-size: 16px;
            font-weight: 300;
            line-height: 24px;
            margin: 0 auto 115px;
            max-width: 1160px
        }

        .expanding-list__description p {
            margin: 0;
        }

        .expanding-list__image-container {
            flex-shrink: 0
        }

        .expanding-list__main-container_right .expanding-list__image-container {
            order: -1
        }

        .expanding-list__main-container_right {
            justify-content: flex-start
        }

        .expanding-list__image {
            aspect-ratio: 1/1;
            display: block;
            margin-top: auto;
            max-height: 710px;
            max-width: 720px;
            -o-object-fit: cover;
            object-fit: cover
        }

        .expanding-list__line {
            border-bottom: 1px solid var(--color-black);
            margin: 0;
            border: none;
            height: 1px;
            background-color: var(--color-black);
        }

        .expanding-list__list-item {
            margin-bottom: 40px;
            position: relative;
            text-align: left
        }

        .expanding-list__list-item-title {
            cursor: pointer;
            font-family: Montserrat, sans-serif;
            font-size: 25px;
            font-weight: 550;
            line-height: normal;
            margin-bottom: 55px;
            padding-right: 25px
        }

        .expanding-list__list-item-content {
            font-family: Montserrat, sans-serif;
            font-size: 20px;
            font-weight: 300;
            line-height: normal;
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.5s ease-out;
        }

        .expanding-list__list-item-content_active {
            max-height: 500px;
            margin-bottom: 30px;
        }

        .expanding-list__list-item-button {
            cursor: pointer;
            position: absolute;
            right: 0;
            top: 25px;
            transition: transform .5s ease;
        }

        .expanding-list__list-item-button_is-flipped {
            transform: rotate(-180deg)
        }

        .fade-in {
            animation: fadeIn .5s ease-out forwards;
            opacity: 0
        }

        @keyframes fadeIn {
            to {
                opacity: 1
            }
        }

        @media (max-width:767px) {
            .expanding-list__subtitle {
                font-size: 14px;
                font-weight: 300;
                text-align: center;
                text-transform: uppercase
            }

            .expanding-list__title {
                font-size: 26px;
                font-weight: 600;
                text-align: center
            }
        }

        @media screen and (max-width:1600px) {
            .expanding-list__main-container {
                margin-left: 20px
            }

            .expanding-list__main-container_right {
                margin-left: 0
            }
        }

        @media screen and (max-width:1279px) {
            .expanding-list__container {
                margin: 0 auto;
                width: calc(100vw - 120px)
            }

            .expanding-list__main-container {
                align-items: center;
                flex-direction: column;
                margin: 0 auto
            }

            .expanding-list__image-container {
                display: none
            }

            .expanding-list__list-container {
                width: 100%
            }
        }

        @media screen and (max-width:600px) {
            .expanding-list {
                margin: 0 auto;
                padding: 25px 0 0
            }

            .expanding-list__list-container {
                width: 90%
            }

            .expanding-list__container {
                width: calc(100vw - 40px)
            }

            .expanding-list__description {
                margin-bottom: 30px
            }

            .expanding-list__title {
                font-size: 30px;
                line-height: 36px;
                margin-bottom: 30px
            }

            .expanding-list__list-item {
                margin-bottom: 20px
            }

            .expanding-list__list-item-title {
                font-family: Montserrat, sans-serif;
                font-size: 18px;
                margin-bottom: 20px
            }

            .expanding-list__list-item-content {
                font-family: Montserrat, sans-serif;
                font-size: 16px;
                font-weight: 600
            }

            .expanding-list__list-item-button {
                top: 10px
            }
        }






.contacts {
    background-color: var(--color-light-gray);
    font-family: Montserrat, sans-serif;
    font-style: normal;
    margin: 0 auto;
    max-width: 3840px;
    padding: 120px 0 0
}

.contacts__container {
    display: flex;
    gap: 100px;
    justify-content: space-between;
    width: 100%
}

.contacts__image__container {
    width: 75%
}

.contacts__text__container {
    margin-bottom: 58px;
    max-width: 300px
}

.contacts__image {
    display: block;
    height: 100%;
    max-height: 996px;
    max-width: 776px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.contacts__title {
    font-size: 40px;
    font-weight: 600;
    line-height: 48px;
    margin: 0 0 100px
}

 .contacts__title p,
 .contacts__additional-text p,
 .contacts__subtitle p,
 .contacts__text p {
    margin: 0;
    padding: 0
}

.contacts__text a,
 .contacts__text a {
    color: var(--color-main, #8c9e69)
}

.contacts__subtitle {
    font-size: 18px;
    font-weight: 600;
    line-height: 30px;
    margin: 0;
    padding: 0
}

.contacts__booking,
.contacts__reception {
    margin-top: 45px
}

.contacts__additional-text,
.contacts__form,
.contacts__form-title {
    max-width: 270px
}

.contacts__additional-text {
    font-size: 20px;
    font-weight: 300px;
    line-height: 24px;
    margin: 0 0 50px
}

.contacts__form-title {
    font-size: 25px;
    font-weight: 600;
    line-height: 30px
}

.contacts__text {
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 25px;
    margin: 15px 0 0
}

.contacts__text__container_left {
    margin-left: 20px
}

.contacts__main__container {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%
}

.contacts__main__container_left {
    order: -1
}

.contacts__info__container {
    display: flex;
    gap: 100px
}

.contacts__info__container_left {
    justify-content: flex-end
}

.contacts__map-container {
    overflow: hidden;
    width: 100%
}

.contacts__map-image {
    display: block;
    height: 320px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.contacts__form-container {
    display: flex;
    flex-direction: column;
    margin-right: 20px
}

.contacts__form {
    flex-grow: 1
}

.contacts__additional-text_mobile {
    display: none
}

@media screen and (max-width:999px) {
    .contacts {
        padding-top: 30px
    }

    .contacts__image__container {
        display: none
    }

    .contacts__info__container {
        align-items: center;
        gap: 50px;
        text-align: left;
        width: calc(100vw - 40px)
    }

    .contacts__additional-text,
    .contacts__form,
    .contacts__form-title,
    .contacts__text__container {
        max-width: 340px
    }

    .contacts__text__container {
        margin-bottom: 0
    }

    .contacts__additional-text {
        display: none
    }

    .contacts__text__container_left {
        margin-left: 0
    }

    .contacts__main__container {
        gap: 30px
    }

    .contacts__info__container,
    .contacts__main__container {
        flex-direction: column;
        margin: 0 auto
    }

    .contacts__booking,
    .contacts__reception {
        margin-top: 30px
    }

    .contacts__additional-text {
        margin-top: 75px
    }

    .contacts__title {
        font-size: 40px;
        line-height: 36px;
        margin-bottom: 40px
    }

    .contacts__text {
        font-size: 20px;
        line-height: 24px
    }

    .subtitle {
        font-size: 18px;
        line-height: 30px
    }

    .contacts__additional-text_mobile {
        display: block;
        font-size: 20px;
        margin: 40px 0 32px
    }
}

 * {
    font-family: Montserrat, sans-serif
}

 p {
    font-size: 18px
}

 p:first-child {
    margin-top: 0
}

 ul {
    padding-inline-start: 20px
}

 ul li {
    font-size: 18px;
    line-height: 22px;
    margin-bottom: 14px
}

 a {
    color: var(--color-main, #8c9e69);
    font-weight: 550;
    transition: all .5s ease
}

 a:hover {
    color: var(--color-dark-main, #525f45)
}

.promo,
.promo__popup {
    font-family: Montserrat, sans-serif
}

.scrollable {
    height: calc(85dvh - 170px);
    overflow-y: scroll;
    padding: 0 30px;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.scrollable::-webkit-scrollbar {
    display: none
}

.scrollable_two-buttons {
    height: calc(85dvh - 240px)
}

.promo {
    background-color: var(--color-light-gray);
    font-style: normal;
    padding: 90px 0 70px
}

.promo__container {
    margin: 0 auto;
    max-width: 1160px;
    text-align: center;
    width: calc(100% - 80px)
}

.promo__subtitle {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: .75px;
    line-height: 30px;
    margin: 0 0 10px;
    text-transform: uppercase
}

.promo__title,
.promo__title_popup {
    font-size: 40px;
    font-weight: 700;
    line-height: 36px;
    margin: 0
}

@media (max-width:767px) {

    .promo__title,
    .promo__title_popup {
        font-size: 26px;
        font-weight: 600;
        letter-spacing: normal;
        line-height: 24px;
        margin: 0
    }

    .promo__subtitle {
        font-size: 14px;
        font-weight: 300;
        text-align: center;
        text-transform: uppercase
    }
}

.promo__title_popup {
    margin: 0 auto 35px;
    text-align: center
}

.promo__button-container,
.promo__description {
    display: none
}

.promo__info {
    display: flex;
    gap: 14%;
    margin-top: 55px
}

.promo__left,
.promo__right {
    flex: 1;
    text-align: left
}

.promo__button-popup-container {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 30px auto;
    text-align: center
}

.promo__link {
    display: block;
    margin-top: 40px
}

.space {
    display: block;
    height: 30px
}

@media screen and (max-width:767px) {
    .promo {
        padding: 55px 0 35px
    }

    .promo__container {
        width: calc(100vw - 40px)
    }

    .promo__left {
        display: block;
        font-size: 16px;
        font-weight: 300;
        line-height: 20px;
        margin: 30px 0
    }

    .promo__info {
        display: none
    }

    .promo__subtitle {
        text-transform: capitalize
    }

    .promo__description {
        display: block;
        margin-top: 35px
    }

    .promo__title_popup {
        font-size: 22px;
        margin: 50px auto 35px;
        max-width: calc(100% - 40px);
        text-align: center
    }

    .promo__button {
        font-size: 18px;
        font-weight: 600;
        width: 250px
    }

    .promo__button-container {
        align-items: center;
        display: flex;
        flex-direction: column;
        gap: 20px;
        margin-top: 45px
    }

    .promo__link {
        margin-top: 0
    }
}

.promo,
.promo__popup {
    font-family: Montserrat, sans-serif
}

.scrollable {
    height: calc(85dvh - 170px);
    overflow-y: scroll;
    padding: 0 30px;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.scrollable::-webkit-scrollbar {
    display: none
}

.scrollable_two-buttons {
    height: calc(85dvh - 240px)
}

.promo {
    background-color: var(--color-light-gray);
    font-style: normal;
    padding: 90px 0 70px
}

.promo__container {
    margin: 0 auto;
    max-width: 1160px;
    text-align: center;
    width: calc(100% - 80px)
}

.promo__subtitle {
    font-size: 25px;
    font-weight: 100;
    letter-spacing: .75px;
    line-height: 30px;
    margin: 0 0 10px;
    text-transform: uppercase
}

.promo__title,
.promo__title_popup {
    font-size: 30px;
    font-weight: 600;
    line-height: 36px;
    margin: 0
}

.promo__title_popup {
    margin: 0 auto 35px;
    text-align: center
}

.promo__button-container,
.promo__description {
    display: none
}

.promo__info {
    display: flex;
    gap: 14%;
    margin-top: 55px
}

.promo__left,
.promo__right {
    flex: 1;
    text-align: left
}

.promo__button-popup-container {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 30px auto;
    text-align: center
}

.promo__link {
    display: block;
    margin-top: 40px
}

.space {
    display: block;
    height: 30px
}

@media screen and (max-width:767px) {
    .promo {
        padding: 55px 0 35px
    }

    .promo__container {
        width: calc(100vw - 40px)
    }

    .promo__left {
        display: block;
        font-size: 16px;
        font-weight: 300;
        line-height: 20px;
        margin: 30px 0
    }

    .promo__info {
        display: none
    }

    .promo__subtitle {
        text-transform: capitalize
    }

    .promo__description {
        display: block;
        margin-top: 35px
    }

    .promo__title_popup {
        font-size: 22px;
        margin: 50px auto 35px;
        max-width: calc(100% - 40px);
        text-align: center
    }

    .promo__button {
        font-size: 18px;
        font-weight: 600;
        width: 250px
    }

    .promo__button-container {
        align-items: center;
        display: flex;
        flex-direction: column;
        gap: 20px;
        margin-top: 45px
    }

    .promo__link {
        margin-top: 0
    }
}

.room-equipment__header {
    align-items: center;
    color: var(--color-white);
    display: flex;
    flex-direction: column;
    font-family: Montserrat, sans-serif;
    font-style: normal;
    gap: 10px;
    margin: 0 auto
}

.room-equipment__subtitle {
    font-size: 25px;
    font-weight: 100;
    letter-spacing: .75px;
    line-height: 30px;
    text-align: center;
    text-transform: uppercase
}

.room-equipment__title {
    font-size: 40px;
    font-weight: 600;
    line-height: 48px;
    text-align: center
}

.room-equipment__image-container {
    height: 650px;
    position: relative;
    width: 100%
}

.room-equipment__image {
    display: block;
    filter: brightness(50%);
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.room-equipment__info {
    left: 50%;
    padding-top: 85px;
    position: absolute;
    top: 0;
    transform: translate(-50%);
    width: 65.5%
}

.room-equipment__slider {
    margin-top: 80px;
    overflow: hidden;
    position: relative
}

.room-equipment__slider-wrapper {
    display: flex;
    transition: transform .3s ease-in-out
}

.room-equipment__slide {
    flex: 0 0 25%;
    transition: transform .3s ease-in-out
}

.room-equipment__slide-image {
    display: block;
    filter: brightness(70%);
    height: 80px;
    margin: 0 auto;
    -o-object-fit: cover;
    object-fit: cover;
    position: relative;
    width: auto
}

.room-equipment__slide-image-container {
    margin: 0 auto;
    max-height: -moz-fit-content;
    max-height: fit-content;
    max-width: 220px;
    overflow: hidden;
    position: relative;
    width: 100%
}

.room-equipment__slide-info {
    color: var(--color-white);
    display: flex;
    flex-direction: column;
    font-family: Montserrat, sans-serif;
    font-style: normal;
    line-height: 24px;
    margin-top: 25px;
    width: 100%
}

.room-equipment__slide-title {
    font-size: 20px;
    font-weight: 700;
    margin: 0;
    text-align: center
}

.room-equipment__slide-text {
    font-size: 17px;
    font-weight: 300;
    margin: 0;
    text-align: center
}

.room-equipment__button_container {
    display: flex;
    gap: 30px;
    height: 65px;
    justify-content: center;
    margin: 50px auto 0;
    position: relative;
    z-index: 200
}

.room-equipment__button {
    background: none;
    border: none;
    cursor: pointer;
    display: block;
    margin: 0;
    padding: 0;
    position: relative;
    transition: opacity .7s ease
}

.room-equipment__dot-navigation,
.room-equipment__header_mobile {
    display: none
}

.room-equipment__button_disabled {
    cursor: default;
    opacity: .5;
    pointer-events: none
}

 .room-equipment__slide-text p {
    margin: 0;
    padding: 0
}

 .room-equipment__slide-text strong {
    font-weight: 600
}

@media screen and (max-width:1100px) {
    .room-equipment__header {
        padding: 20px 20px 0
    }

    .room-equipment__title {
        font-size: 30px
    }

    .room-equipment__subtitle {
        text-transform: capitalize
    }

    .room-equipment__image-container {
        height: auto
    }

    .room-equipment__slide-text {
        font-size: 13px;
        line-height: 15px;
        margin: 0 auto;
        max-width: 90%
    }

    .room-equipment__slide-image {
        height: 50px
    }

    .room-equipment__slide {
        flex: 0 0 50%
    }

    .room-equipment__header_mobile {
        color: var(--color-black);
        display: block;
        margin: 20px auto 30px
    }

    .room-equipment__button_container,
    .room-equipment__header_desktop {
        display: none
    }

    .room-equipment__dot-navigation {
        display: flex;
        gap: 10px;
        justify-content: center;
        margin: 22px auto 35px
    }

    .room-equipment__dot {
        background-color: var(--color-muted-gray);
        border-radius: 50%;
        cursor: pointer;
        height: 7px;
        width: 7px
    }

    .room-equipment__dot.active {
        background-color: var(--color-active-gray)
    }

    .room-equipment__slide-image {
        filter: grayscale(100%) brightness(0)
    }

    .room-equipment__info {
        padding-top: 0;
        position: relative;
        width: 90%
    }

    .room-equipment__slider {
        margin-top: 0
    }

    .room-equipment__slide-info {
        color: var(--color-black)
    }

    .room-equipment__image {
        height: 285px
    }
}

.room-photos {
    background-color: var(--color-light-gray);
    overflow: hidden;
    padding: 110px 0 200px;
    position: relative;
    text-align: center
}

.room-photos,
.room-photos__header {
    font-family: Montserrat, sans-serif;
    font-style: normal
}

.room-photos__header {
    align-items: center;
    color: var(--color-black);
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 0 auto
}

.room-photos__subtitle {
    font-size: 18px;
    font-weight: 100;
    letter-spacing: .75px;
    line-height: 30px;
    text-align: center;
    text-transform: uppercase
}

.room-photos__title {
    font-size: 40px;
    font-weight: 700;
    line-height: 48px;
    text-align: center
}

.room-photos__slider {
    margin-left: -30px;
    margin-right: -30px;
    margin-top: 70px;
    position: relative
}

.room-photos__slider-wrapper {
    display: flex;
    transition: transform .3s ease-in-out
}

.room-photos__slide {
    box-sizing: border-box;
    flex: 0 0 25%;
    padding: 0 14px;
    transition: transform .3s ease-in-out
}

.room-photos__slide-image {
    display: block;
    height: 100%;
    margin: 0 auto;
    -o-object-fit: cover;
    object-fit: cover;
    position: relative;
    width: 100%
}

.room-photos__slide-image-container {
    cursor: pointer;
    height: 400px;
    overflow: hidden;
    position: relative;
    width: 100%
}

.room-photos__zoom-button {
    height: 50px;
    left: 50%;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: opacity .3s ease;
    width: 50px;
    z-index: 20
}

.room-photos__slide-image-container:hover .room-photos__zoom-button {
    opacity: 1
}

.room-photos__slide-text {
    bottom: 50px;
    color: var(--color-white);
    font-family: Montserrat, sans-serif;
    font-size: 20px;
    font-style: normal;
    font-weight: 550;
    left: 50%;
    line-height: normal;
    max-width: 285px;
    position: absolute;
    text-align: left;
    transform: translate(-50%);
    width: 90%
}

.room-photos__button_container {
    bottom: 70px;
    display: flex;
    gap: 30px;
    height: 65px;
    left: 50%;
    position: absolute;
    transform: translate(-50%)
}

.room-photos__button {
    background: none;
    border: none;
    cursor: pointer;
    display: block;
    margin: 0;
    padding: 0;
    transition: opacity .5s ease
}

.room-photos__button_disabled {
    cursor: default;
    opacity: .5
}

.fade-enter-active,
.fade-leave-active {
    transition: opacity .5s ease-in-out
}

.fade-enter-from,
.fade-leave-to {
    opacity: 0
}

@media (max-width:1023px) {
    .room-photos {
        padding: 50px 0 35px
    }

    .room-photos__subtitle {
        font-size: 25px;
        line-height: 30px
    }

    .room-photos__title {
        font-size: 30px;
        line-height: 36px;
        margin-bottom: 30px
    }

    .room-photos__slider {
        margin: 0
    }

    .room-photos__slide {
        flex: 0 0 100%;
        padding: 0 15px
    }

    .room-photos__button_container {
        display: none
    }

    .room-photos__slide-image-container {
        height: 80vw;
        max-height: 400px;
        overflow: hidden;
        position: relative;
        width: 100%
    }

    .room-photos__slide-text {
        font-family: Montserrat, sans-serif;
        font-size: 16px;
        max-width: 215px
    }

    .room-photos__navigation {
        display: flex;
        justify-content: center;
        margin-top: 20px;
        padding-top: 25px;
        z-index: 2
    }

    .room-photos__dot {
        background-color: var(--color-muted-gray);
        border-radius: 50%;
        cursor: pointer;
        display: inline-block;
        height: 7px;
        margin: 0 5px;
        transition: background-color .6s ease;
        width: 7px
    }

    .room-photos__dot_active {
        background-color: var(--color-active-gray)
    }
}

.text-slider-popup-overlay {
    background-color: #000000e6;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9
}

.text-slider-popup,
.text-slider-popup-overlay {
    align-items: center;
    display: flex;
    justify-content: center
}

.text-slider-popup {
    background: none;
    height: 900px;
    max-height: 80vh;
    position: relative;
    width: 90vw
}

.text-slider-popup__container {
    color: var(--color-white);
    position: relative;
    width: 100%
}

.text-slider-popup__image {
    display: block;
    height: 700px;
    max-height: 80vh;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.text-slider-popup__dots {
    align-items: center;
    bottom: -30px;
    display: flex;
    flex-direction: row;
    gap: 10px;
    left: 50%;
    position: absolute;
    transform: translate(-50%)
}

.text-slider-popup__dot {
    background-color: var(--color-muted-gray);
    border-radius: 50%;
    cursor: pointer;
    height: 7px;
    width: 7px
}

.text-slider-popup__dot_active {
    background-color: var(--color-active-gray)
}

.text-slider-popup__close-button {
    cursor: pointer;
    height: 32px;
    position: absolute;
    right: 15px;
    top: 20px;
    width: 32px;
    z-index: 1
}

.fade-enter-active,
.fade-leave-active {
    transition: opacity .5s ease-in-out
}

.fade-enter-from,
.fade-leave-to {
    opacity: 0
}

.fade-slide-enter-active,
.fade-slide-leave-active {
    transition: opacity .3s ease
}

.fade-slide-enter,
.fade-slide-leave-to {
    opacity: 0
}

@media (max-width:797px) {
    .text-slider-popup__image {
        height: 100%;
        -o-object-fit: contain;
        object-fit: contain
    }

    .text-slider-popup__close-button {
        right: 0;
        top: -40px
    }
}

/* .text-slider {
    background-color: var(--color-light-gray);
    display: flex;
    font-family: Montserrat, sans-serif;
    font-style: normal;
    margin: 0 auto
}

.text-slider__header {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.text-slider__subtitle {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: .75px;
    line-height: 30px;
    text-align: left;
    text-transform: uppercase
}

.text-slider__title {
    font-size: 40px;
    font-weight: 700;
    line-height: 48px;
    text-align: left
}

.text-slider__left-column {
    display: flex;
    flex: 1 1 50%;
    justify-content: flex-end
}

.text-slider__left-column_to-right {
    flex-basis: 50%;
    justify-content: flex-start;
    order: 2
}

.text-slider__left-column_to-right .text-slider__info {
    margin-left: 88px;
    margin-right: 20px
}

.text-slider__right-column_to-left .text-slider__slider-container {
    padding-left: 0
}

.text-slider__right-column_to-left .text-slider__navigation {
    left: auto;
    right: -50px
}

.text-slider__info {
    margin: 145px 0 0 20px;
    max-width: 625px;
    padding-right: 88px
}

.text-slider__info-text {
    font-size: 16px;
    font-weight: 300;
    line-height: 24px;
    margin: 20px 0 35px
}

.text-slider__right-column {
    flex: 1 1 50%
}

.text-slider__slider-container {
    box-sizing: border-box;
    height: 100%;
    position: relative;
    width: 100%
}

.text-slider__slider {
    cursor: pointer;
    height: 100%;
    width: 100%
}

.text-slider__slide {
    display: block;
    height: 100%;
    min-height: 710px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.text-slider__navigation {
    align-items: center;
    bottom: 75px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    left: -50px;
    position: absolute
}

.text-slider__nav-dot {
    background-color: var(--color-muted-gray);
    border-radius: 50%;
    cursor: pointer;
    height: 9px;
    width: 9px
}

.text-slider__nav-dot_active {
    background-color: var(--color-active-gray)
}

.text-slider__link {
    display: block;
    margin-bottom: 20px
}

.text-slider__info-text a,
 .text-slider__info-text a {
    color: var(--color-main, #8c9e69)
}

.fade-enter-active,
.fade-leave-active {
    transition: opacity .5s ease-in-out
}

.fade-enter-from,
.fade-leave-to {
    opacity: 0
}

@media (max-width:1000px) {
    .text-slider {
        flex-direction: column;
        padding-top: 30px
    }

    .text-slider__title {
        font-family: Montserrat;
        font-size: 26px;
        font-weight: 600;
        line-height: 100%;
        text-align: center
    }

    .text-slider__subtitle {
        font-family: Montserrat;
        font-size: 14px;
        font-weight: 300;
        text-align: center;
        text-transform: capitalize;
        text-transform: uppercase
    }

    .text-slider__info,
    .text-slider__left-column_to-right .text-slider__info {
        margin: 0 auto;
        width: calc(100vw - 40px)
    }

    .text-slider__info-text {
        font-size: 13px;
        font-weight: 400;
        text-align: center
    }

    .text-slider__slider-container {
        padding: 0
    }

    .text-slider__slider {
        height: 290px
    }

    .text-slider__slide {
        height: 100%;
        min-height: auto
    }

    .text-slider__link {
        text-align: center
    }

    .text-slider__navigation {
        flex-direction: row
    }

    .text-slider__navigation,
    .text-slider__right-column_to-left .text-slider__navigation {
        bottom: 30px;
        left: 50%;
        right: auto;
        top: auto;
        transform: translate(-50%)
    }

    .text-slider__nav-dot {
        height: 7px;
        width: 7px
    }

    .text-slider__right-column_to-left {
        order: 3
    }

    .text-slider__info {
        padding-right: 0
    }
} */




    .text-slider {
        background-color: var(--color-light-gray);
        display: flex;
        font-family: Montserrat, sans-serif;
        font-style: normal;
        margin: 0 auto;
        max-width: 100%; /* Ограничиваем общую ширину */
        padding: 80px 0;
    }

    .text-slider__header {
        display: flex;
        flex-direction: column;
        gap: 10px
    }

    .text-slider__subtitle {
        font-size: 18px;
        font-weight: 400;
        letter-spacing: .75px;
        line-height: 30px;
        text-align: left;
        text-transform: uppercase
    }

    .text-slider__title {
        font-size: 40px;
        font-weight: 700;
        line-height: 48px;
        text-align: left
    }

    .text-slider__left-column {
        display: flex;
        flex: 0 0 50%;
        max-width: 50%;
        justify-content: flex-end;
        box-sizing: border-box;
    }

    .text-slider__left-column_to-right {
        flex-basis: 50%;
        justify-content: flex-start;
        order: 2;
        /* padding-right: 40px; */
    }

    .text-slider__left-column_to-right .text-slider__info {
        margin-left: 88px;
        margin-right: 20px
    }

    .text-slider__right-column_to-left .text-slider__slider-container {
        padding-left: 0
    }

    .text-slider__right-column_to-left .text-slider__navigation {
        left: auto;
        right: -50px
    }

    .text-slider__info {
        margin: 145px 0 0 20px;
        max-width: 625px;
        padding-right: 88px;
        box-sizing: border-box;
    }

    .text-slider__info-text {
        font-size: 16px;
        font-weight: 300;
        line-height: 24px;
        margin: 20px 0 35px
    }

    .text-slider__right-column {
        flex: 0 0 50%;
        max-width: 50%;
        box-sizing: border-box;
        /* padding-left: 40px; */
    }

    /* КОНТЕЙНЕР СЛАЙДЕРА - КЛЮЧЕВЫЕ ИСПРАВЛЕНИЯ */
    .text-slider__slider-container {
        box-sizing: border-box;
        height: 100%;
        max-height: 720px; /* Фиксированная высота */
        position: relative;
        width: 100%;
        /* max-width: 700px; Ограничиваем ширину */
        margin: 0 auto;
    }

    .text-slider__slider {
        cursor: pointer;
        height: 100%;
        width: 100%;
        overflow: hidden;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); /* Добавляем тень */
    }

    .text-slider__slide {
        display: block;
        height: 100%;
        width: 100%;
        object-fit: cover; /* Картинка покрывает всю область */
    }

    /* Стили для встроенной пагинации Swiper */
    .text-slider__slider-container .swiper-pagination {
        position: absolute;
        right: -50px;
        top: 50%;
        transform: translateY(-50%);
        width: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 20px;
        z-index: 10;
    }

    .text-slider__slider-container .swiper-pagination-bullet {
        background-color: var(--color-muted-gray);
        border-radius: 50%;
        cursor: pointer;
        height: 9px;
        width: 9px;
        opacity: 1;
        margin: 0 !important;
        transition: all 0.3s ease;
    }

    .text-slider__slider-container .swiper-pagination-bullet-active {
        background-color: var(--color-active-gray);
        transform: scale(1.3);
    }

    .text-slider__link {
        display: block;
        margin-bottom: 20px
    }

    .text-slider__info-text a {
        color: var(--color-main, #8c9e69)
    }

    /* Адаптивность */
    @media (max-width: 1200px) {
        .text-slider {
            max-width: 1200px;
            padding: 60px 20px;
        }
        
        .text-slider__slider-container {
            /* height: 450px; */
            max-width: 600px;
        }
    }

    @media (max-width:1000px) {
        .text-slider {
            flex-direction: column;
            padding: 30px 0 0;
        }

        .text-slider__title {
            font-family: Montserrat;
            font-size: 26px;
            font-weight: 600;
            line-height: 100%;
            text-align: center
        }

        .text-slider__subtitle {
            font-family: Montserrat;
            font-size: 14px;
            font-weight: 300;
            text-align: center;
            text-transform: uppercase
        }

        .text-slider__info,
        .text-slider__left-column_to-right .text-slider__info {
            margin: 0 auto 40px;
            width: calc(100vw - 40px);
            padding: 0 20px;
        }

        .text-slider__info-text {
            font-size: 13px;
            font-weight: 400;
            text-align: center
        }

        .text-slider__slider-container {
            padding: 0;
            height: 400px;
            max-width: 100%;
        }

        .text-slider__slider {
            height: 100%;
        }

        .text-slider__slide {
            height: 100%;
        }

        .text-slider__link {
            text-align: center
        }

        /* Адаптация пагинации для мобильных */
        .text-slider__slider-container .swiper-pagination {
            position: relative;
            flex-direction: row;
            justify-content: center;
            right: auto;
            top: auto;
            transform: none;
            margin-top: -30px;
        }

        .text-slider__slider-container .swiper-pagination-bullet {
            margin: 0 8px !important;
        }

        .text-slider__right-column_to-left {
            order: 3;
            padding-left: 0;
            flex: 0 0 100%;
            max-width: 100%;
        }
        
        .text-slider__left-column_to-right {
            padding-right: 0;
            flex: 0 0 100%;
            max-width: 100%;
        }

        .text-slider__info {
            padding-right: 0;
            margin-top: 0;
        }
    }
    
    @media (max-width: 600px) {
        .text-slider__slider-container {
            height: 300px;
        }
    }




.header__space  {
    height: 90px
}

@media screen and (max-width:1280px) {
    .header__space  {
        height: 85px
    }
}

@media screen and (max-width:699px) {
    .header__space  {
        height: 70px
    }
}

.close-svg {
    height: 50px;
    width: 50px
}

@media screen and (max-width:899px) {
    .close-svg {
        height: 30px;
        width: 30px
    }
}

.image-popup-overlay {
    align-items: center;
    background-color: #00000080;
    display: flex;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    justify-content: center;
    position: fixed;
    z-index: 9
}

.image-popup__content {
    height: 100%
}

.image-popup {
    background-color: var(--color-white);
    border-radius: 30px;
    height: calc(100vh - 120px);
    max-height: 700px;
    max-width: 1164px;
    position: relative;
    width: calc(100vw - 160px);
    z-index: 10
}

.image-popup__close-button {
    background: none;
    border: none;
    cursor: pointer;
    position: absolute;
    right: -50px;
    top: -45px;
    transition: opacity .3s ease;
    z-index: 2000
}

.image-popup__close-button:hover {
    opacity: .8
}

.image-popup__container {
    display: flex;
    gap: 50px;
    height: 100%
}

.image-popup__info-container {
    box-sizing: border-box;
    font-family: Montserrat, sans-serif;
    font-style: normal;
    padding: 60px 50px 0 0;
    width: 48%
}

.image-popup__info-title {
    font-size: 25px;
    font-weight: 600;
    line-height: 30px;
    margin: 0
}

.image-popup__info-text {
    font-size: 20px;
    font-weight: 300;
    line-height: 24px;
    margin: 15px 0 0
}

.image-popup__icons-container {
    display: flex;
    gap: 40px;
    margin-top: 50px
}

.image-popup__icon {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 20px;
    max-width: 120px
}

.image-popup__icon-image {
    display: block;
    height: 55px;
    -o-object-fit: contain;
    object-fit: contain;
    width: auto
}

.image-popup__icon-description {
    font-size: 13px;
    font-weight: 600;
    line-height: 16px;
    text-align: center
}

.image-popup__image-container {
    border-bottom-left-radius: 30px;
    border-top-left-radius: 30px;
    box-sizing: border-box;
    height: 100%;
    max-width: 605px;
    overflow: hidden;
    width: 52%
}

.image-popup__image {
    display: block;
    height: 100%;
    max-height: 700px;
    max-width: 600px;
    -o-object-fit: cover;
    object-fit: cover
}

.image-popup__info-title_mobile {
    display: none
}

.close-svg {
    color: var(--color-white)
}

@media screen and (max-width:1279px) {
    .image-popup {
        margin: 0 100px
    }
}

@media screen and (max-width:899px) {
    .image-popup {
        border-radius: 15px;
        height: -moz-fit-content;
        height: fit-content;
        max-height: none;
        width: calc(100% - 40px)
    }

    .image-popup__container {
        flex-direction: column;
        gap: 0
    }

    .image-popup__image-container {
        border-radius: 0;
        max-height: 200px;
        max-width: none;
        width: 100%
    }

    .image-popup__image {
        height: 100%;
        max-width: none;
        -o-object-fit: contain;
        object-fit: contain;
        -o-object-fit: cover;
        object-fit: cover;
        width: 100%
    }

    .image-popup__info-container {
        max-width: none;
        padding: 10px 30px 40px;
        width: 100%
    }

    .image-popup__icons-container {
        gap: 25px;
        justify-content: center;
        margin-top: 25px
    }

    .image-popup__icon {
        gap: 13px
    }

    .image-popup__icon-image {
        height: 35px;
        width: auto
    }

    .image-popup__info-text {
        font-size: 15px;
        font-weight: 400;
        line-height: 22px;
        text-align: center
    }

    .image-popup__info-title {
        display: none
    }

    .image-popup__info-title_mobile {
        display: block;
        font-size: 22px;
        font-weight: 700;
        margin: 25px auto 10px;
        max-width: 180px;
        min-height: 50px;
        text-align: center
    }

    .image-popup__close-button {
        right: 25px;
        top: 25px;
        transition: opacity .3s ease
    }

    .close-svg {
        color: var(--color-room-grey)
    }
}

.view-360-icon {
    align-items: center;
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    background: #ffffff24;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    height: 95px;
    justify-content: center;
    transition: background .3s ease;
    width: 95px
}

.view-360-icon:hover {
    background: #fff3
}

.view-360-icon__image {
    display: block;
    height: 50px;
    width: 50px
}

@media screen and (max-width:1500px) {
    .view-360-icon {
        height: 55px;
        width: 55px
    }

    .view-360-icon__image {
        display: block;
        height: 30px;
        width: 30px
    }
}

@media screen and (max-width:500px) {
    .view-360-icon {
        height: 50px;
        width: 50px
    }

    .view-360-icon__image {
        display: block;
        height: 25px;
        width: 25px
    }
}

.sis__dots {
    display: none;
    padding: 10px;
    text-align: center
}

.sis__dot {
    background-color: var(--color-muted-gray);
    border-radius: 50%;
    cursor: pointer;
    display: inline-block;
    height: 7px;
    margin: 0 5px;
    width: 7px
}

.sis__dot_active {
    background-color: var(--color-active-gray)
}

.sis__header {
    display: none
}

.sis {
    background-color: var(--color-light-gray);
    font-family: Montserrat, sans-serif;
    font-style: normal;
    height: 1080px;
    line-height: normal;
    margin: 0 auto;
    max-width: 3840px;
    width: 100%
}

.sis__wrapper {
    display: flex;
    height: 100%;
    position: relative
}

.sis__image-container {
    position: relative;
    width: 38%
}

.sis__view-360 {
    position: absolute;
    right: 50px;
    top: 50px;
    z-index: 2
}

.sis__image-info {
    color: var(--color-white);
    left: 15.5%;
    max-width: 60%;
    position: absolute;
    top: 13%;
    z-index: 2
}

.sis__image-title {
    font-size: 40px;
    font-weight: 700
}

.sis__image-subtitle {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 1.25px;
    text-transform: uppercase
}

.sis__image-container:before {
    background: #17171799;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    position: absolute;
    z-index: 1
}

.sis__image,
.sis__image-wrapper {
    height: 100%;
    width: 100%
}

.sis__image {
    display: block;
    -o-object-fit: cover;
    object-fit: cover
}

.sis__info-container {
    background-color: var(--color-white);
    width: 62%
}

.sis__info {
    margin: 50px auto 0 12%;
    max-width: 700px
}

.sis__info_left {
    margin-left: auto;
    margin-right: 12%
}

.sis__info-title {
    font-size: 40px;
    font-weight: 700;
    letter-spacing: 1.2px;
    line-height: 48px;
    margin: 0;
    text-transform: uppercase
}

.sis__info-subtitle {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 2px;
    line-height: 30px;
    margin: 8px 0 0;
    text-transform: uppercase
}

.sis__info-text {
    display: -webkit-box;
    font-size: 16px;
    font-weight: 300;
    line-height: 24px;
    margin: 20px 0 0;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal
}

.sis__info-container_left {
    order: -1;
    width: 62%
}

.sis__slider-container {
    background-color: transparent;
    height: 56%;
    max-height: 600px;
    position: absolute;
    right: 0;
    top: 34%;
    width: 70%;
    z-index: 2
}

.sis__slider-buttons {
    display: flex;
    flex-direction: column;
    gap: 14px;
    left: -135px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2
}

.sis__slider-container_left .sis__slider-buttons {
    left: auto;
    right: -135px
}

.sis__slides {
    display: flex;
    height: 100%;
    overflow: hidden;
    width: 100%
}

.sis__slider-container_left .sis__slides {
    flex-direction: row-reverse
}

.sis__slide {
    box-sizing: border-box;
    flex: 0 0 28.57143%;
    height: 100%;
    padding-right: 20px;
    transition: transform .5s ease-in-out
}

.sis__slide-image-wrapper {
    border-radius: 30px;
    height: 100%;
    overflow: hidden;
    position: relative;
    width: 100%
}

.sis__slide-image-wrapper:before {
    background: #1717174d;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    position: absolute;
    z-index: 1
}

.sis__slide-image {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: all 1.5s ease;
    width: 100%
}

.sis__slide-info-container {
    box-sizing: border-box;
    color: var(--color-white);
    display: flex;
    flex-direction: column;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    justify-content: space-between;
    padding: 50px 50px 60px;
    position: absolute;
    width: 100%;
    z-index: 2
}

.sis__slide-header {
    font-style: normal;
    line-height: normal
}

.sis__slide-title {
    font-size: 24px;
    font-weight: 700;
    margin: 0
}

.sis__slide-subtitle,
.sis__slide-title {
    display: -webkit-box;
    font-family: Montserrat, sans-serif;
    letter-spacing: .6px;
    max-width: 80%;
    text-transform: uppercase;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis
}

.sis__slide-subtitle {
    font-size: 18px;
    font-weight: 400;
    margin: 0 0 10px
}

.sis__slide-footer {
    font-family: Montserrat, sans-serif;
    font-size: 17px;
    font-weight: 500;
    letter-spacing: .5px;
    opacity: 1;
    transition: opacity .3s ease, visibility .3s;
    visibility: visible
}

.sis__slide-image-wrapper:hover .sis__slide-footer {
    opacity: 0;
    visibility: hidden
}

.sis__slider-container_left {
    left: 0
}

.sis__slide-full-button {
    background: transparent;
    border: 1px solid var(--color-white);
    margin: 0 auto;
    transition: opacity .3s ease;
    width: -moz-fit-content;
    width: fit-content
}

.sis__slide-full-link {
    text-decoration: none
}

.sis__slide-full-button:hover {
    background: transparent;
    opacity: .7
}

.sis__slider-magnifier-icon-container {
    cursor: pointer;
    opacity: 0;
    position: absolute;
    right: 25px;
    top: 30px;
    transition: all .3s ease;
    visibility: hidden;
    z-index: 3
}

.sis__slide-image-wrapper:hover .sis__slide-full-container,
.sis__slide-image-wrapper:hover .sis__slider-magnifier-icon-container {
    opacity: 1;
    visibility: visible
}

.sis__slide:hover .sis__slide-image {
    filter: blur(2px) brightness(65%);
    transform: scale(1.5)
}

.sis__slide-full-container {
    color: var(--color-white);
    display: flex;
    flex-direction: column;
    font-family: Montserrat, sans-serif;
    font-size: 16px;
    font-weight: 400;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    justify-content: space-between;
    letter-spacing: .48px;
    opacity: 0;
    padding: 50px 50px 70px;
    position: absolute;
    text-align: center;
    transition: all .3s ease;
    visibility: hidden;
    z-index: 2
}

.sis__slide-full-info {
    text-align: left
}

.sis__slide-full-transparent {
    opacity: 0
}

.sis__slide-full {
    display: -webkit-box;
    margin-top: 48px;
    -webkit-line-clamp: 12;
    -webkit-box-orient: vertical;
    max-height: 270px;
    overflow: hidden;
    text-align: left;
    text-overflow: ellipsis
}

.sis__buttons-wrapper {
    display: flex;
    gap: 20px;
    height: 45px;
    justify-content: center;
    margin-top: 40px
}

.sis__button {
    background-color: transparent;
    border: 1px solid transparent;
    border-radius: 50px;
    color: var(--color-black);
    cursor: pointer;
    font-size: 19px;
    font-weight: 400;
    padding: 10px;
    text-transform: uppercase;
    transition: border .5s ease
}

.sis__button_active {
    border: 1px solid var(--color-main, #8c9e69);
    color: var(--color-main, #8c9e69)
}

.sis__slide-full-button_mobile {
    display: none
}

.sis__slide-icon-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
    list-style: none;
    margin: 0;
    padding: 0
}

.sis__slide-icon-item {
    align-items: center;
    display: flex;
    gap: 8px
}

.sis__slide-icon {
    display: block;
    height: 21px;
    -o-object-fit: contain;
    object-fit: contain;
    width: 21px
}

.sis__image-more {
    align-items: center;
    color: var(--color-white);
    cursor: pointer;
    display: inline-flex;
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    font-weight: 300;
    gap: 10px;
    margin-top: 20px;
    text-decoration: none;
    transition: color .3s ease;
    z-index: 20
}

.sis__image-more:hover {
    color: var(--color-main, #8c9e69)
}

.sis__image-more-arrow {
    background-color: currentColor;
    display: block;
    height: 1px;
    position: relative;
    transition: width .5s ease-in-out;
    width: 18px
}

.sis__image-more .sis__image-more-arrow:after {
    border: solid;
    border-width: 0 1px 1px 0;
    content: "";
    padding: 3px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg)
}

.sis__slide-short-text {
    font-family: Montserrat, sans-serif;
    font-size: 15px;
    line-height: 18px
}

.sis__image-more:hover .sis__image-more-arrow {
    width: 25px
}

 .sis__slide-full a {
    color: var(--color-white)
}

.fade-enter-active,
.fade-leave-active {
    transition: opacity .3s ease-in-out
}

.fade-enter-from,
.fade-leave-to {
    opacity: 0
}

@media screen and (max-width:1749px) {
    .sis {
        height: 640px
    }

    .sis__buttons-wrapper {
        height: 26px;
        margin-top: 15px
    }

    .sis__button {
        font-size: 11px;
        line-height: normal;
        padding: 0 8px
    }

    .sis__slide {
        flex: 0 0 26.31579%
    }

    .sis__info {
        margin-left: 60px;
        margin-top: 35px;
        max-width: 440px
    }

    .sis__info_left {
        margin-left: auto;
        margin-right: 60px
    }

    .sis__info-title {
        font-size: 23.593px;
        font-weight: 100;
        letter-spacing: .71px;
        line-height: 28px
    }

    .sis__info-subtitle {
        font-size: 15px;
        font-weight: 600;
        letter-spacing: 1.18px;
        line-height: 18px;
        margin-top: 5px
    }

    .sis__info-text {
        font-size: 11.796px;
        font-weight: 300;
        line-height: 14px;
        margin-top: 11px
    }

    .sis__image-subtitle {
        font-size: 15px;
        font-weight: 100;
        letter-spacing: .737px;
        text-transform: uppercase
    }

    .sis__image-title {
        font-size: 30px
    }

    .sis__slider-buttons {
        bottom: -20px;
        flex-direction: row;
        gap: 10px;
        height: -moz-fit-content;
        height: fit-content;
        left: -100px;
        top: auto;
        transform: none
    }

    .sis__slide {
        padding-right: 12px
    }

    .sis__slide-info-container {
        padding: 30px 25px 40px
    }

    .sis__slide-title {
        font-size: 11.796px;
        font-weight: 600;
        letter-spacing: .354px
    }

    .sis__slide-subtitle {
        font-size: 12px;
        letter-spacing: .354px;
        margin-bottom: 5px
    }

    .sis__slide-footer {
        font-size: 10px;
        letter-spacing: .298px
    }

    .sis__slide-full-container {
        padding: 30px 25px 40px
    }

    .sis__slide-full {
        font-size: 10px
    }

    .sis__slide-short-text {
        font-size: 10px;
        line-height: normal
    }

    .sis__slider-magnifier-icon-container {
        right: 12px;
        top: 12px
    }

    .sis__slide-full-button {
        font-size: 11px;
        line-height: normal;
        padding: 6px 8px
    }

    .sis__view-360 {
        right: 20px;
        top: 20px
    }
}

@media screen and (max-width:1100px) {
    .sis {
        padding-bottom: 110px
    }

    .sis__slide {
        flex: 0 0 43.47826%
    }

    .sis__slider-container {
        bottom: -15px;
        top: auto;
        width: 92%
    }

    .sis__slider-buttons {
        display: none
    }

    .sis__buttons-wrapper {
        gap: 50px;
        height: auto;
        justify-content: center;
        margin: 25px 30px 0
    }

    .sis__button {
        border: none;
        border-bottom: 2px solid transparent;
        border-radius: 0;
        box-sizing: border-box;
        font-family: Geometria, sans-serif;
        font-size: 15px;
        font-weight: 400;
        padding-bottom: 15px;
        padding-left: 0;
        padding-right: 0
    }

    .sis__button_active {
        border-bottom: 2px solid var(--color-main, #8c9e69);
        color: var(--color-black)
    }

    .sis__info-container {
        width: 53%
    }

    .sis__image-container {
        width: 47%
    }

    .sis__slider-magnifier-icon-container {
        opacity: 1;
        visibility: visible
    }

    .sis__slide .sis__slide-full-container {
        display: none
    }

    .sis__slide-image-wrapper:hover .sis__slide-footer {
        opacity: 1;
        visibility: visible
    }

    .sis__slide:hover .sis__slide-image {
        filter: none;
        transform: none
    }

    .sis__slide-footer {
        text-align: center
    }

    .sis__slide-full-button_mobile {
        background: transparent;
        border: 1px solid var(--color-white);
        display: block;
        font-family: Montserrat, sans-serif;
        margin: 15px auto 0;
        padding: 15px 25px
    }

    .sis__slide-icon-list {
        display: none
    }

    .sis__info {
        margin: 60px auto 60px 30px;
        padding-right: 20px
    }

    .sis__info_left {
        margin: 60px 30px 60px auto;
        padding-left: 20px;
        padding-right: 0
    }

    .sis__info-title {
        font-size: 25px;
        letter-spacing: .75px;
        line-height: 30px
    }

    .sis__info-subtitle {
        font-size: 13px;
        font-weight: 550;
        letter-spacing: 1.04px;
        line-height: 15px;
        margin-top: 12px
    }

    .sis__info-text {
        font-family: Montserrat, sans-serif;
        font-size: 12px;
        font-weight: 300;
        line-height: 14px
    }

    .sis__view-360 {
        position: absolute;
        right: 25px;
        top: 25px;
        z-index: 2
    }

    .sis__image-info {
        left: 10%;
        top: 10%
    }

    .sis__image-subtitle {
        font-family: Montserrat, sans-serif;
        font-size: 20.083px;
        letter-spacing: 1px
    }

    .sis__image-title {
        font-size: 25px
    }

    .sis__slide {
        padding-right: 10px
    }

    .sis__slide-subtitle,
    .sis__slide-title {
        font-family: Montserrat, sans-serif;
        font-size: 16px;
        letter-spacing: .485px
    }

    .sis__slider-container_left .sis__slides {
        flex-direction: row
    }

    .sis__slider-container_left {
        left: auto;
        right: 0
    }
}

@media screen and (max-width:767px) {
    .sis {
        height: 100%;
        max-height: 1000px;
        padding-bottom: 580px;
        padding-top: 60px
    }

    .sis__wrapper {
        height: 475px;
        margin-top: 30px
    }

    .sis__slide {
        flex: 0 0 66.66667%
    }

    .sis__slider-container {
        bottom: -270px;
        height: 80%;
        top: auto;
        width: 90%
    }

    .sis__slider-buttons {
        display: none
    }

    .sis__image-container {
        width: 100%
    }

    .sis__info-container {
        background-color: transparent;
        color: #fff;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
        width: 100%;
        z-index: 2
    }

    .sis__buttons-wrapper,
    .sis__image-info {
        display: none
    }

    .sis__buttons-wrapper_mobile {
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        height: auto;
        justify-content: center;
        margin-top: 30px
    }

    .sis__button {
        border: 1px solid transparent;
        border-radius: 50px;
        font-size: 16px;
        padding: 12px 6px
    }

    .sis__button_active {
        border: 1px solid var(--color-main, #8c9e69);
        color: var(--color-main, #8c9e69)
    }

    .sis__dots {
        display: block;
        margin-top: 290px
    }

    .sis__header {
        align-items: center;
        display: flex;
        flex-direction: column
    }

    .sis__subtitle {
        font-size: 14px;
        font-weight: 300;
        text-align: center;
        text-transform: uppercase
    }

    .sis__title {
        font-size: 26px;
        font-weight: 600;
        margin: 0;
        text-align: center
    }

    .sis__view-360 {
        position: absolute;
        right: 25px;
        top: 20px;
        z-index: 2
    }

    .sis__info {
        margin: 95px auto 0;
        padding: 0 20px;
        text-align: center
    }

    .sis__info-title {
        font-size: 26px;
        font-weight: 600;
        letter-spacing: normal;
        line-height: 24px
    }

    .sis__info-subtitle {
        font-size: 14px;
        font-weight: 300;
        margin-top: 20px;
        text-transform: uppercase
    }

    .sis__info-subtitle,
    .sis__info-text {
        font-family: Montserrat;
        text-align: center
    }

    .sis__info-text {
        font-size: 13px;
        font-weight: 400;
        line-height: 17px
    }

    .sis__view-360 {
        z-index: 4
    }

    .sis__slide-info-container {
        padding: 40px 18px 20px
    }

    .sis__slide-subtitle {
        font-size: 16px;
        letter-spacing: .48px
    }

    .sis__slide-title {
        font-size: 18px;
        letter-spacing: .54px
    }

    .sis__slide-icon-list {
        display: flex
    }

    .sis__slide-icon {
        height: 15px;
        width: 15px
    }

    .sis__slide-icon-text {
        font-size: 12px;
        letter-spacing: .36px
    }
}

.calendar {
    background-color: var(--color-light-gray);
    font-family: Montserrat, sans-serif;
    font-style: normal;
    line-height: normal;
    margin: 0 auto;
    max-width: 3840px;
    padding: 0 0 55px;
    width: 100%
}

.calendar__container {
    margin: 0 auto;
    max-width: 1150px;
    padding: 0 20px
}

.calendar__header {
    padding: 90px 0 65px;
    text-align: center
}

.calendar__subtitle {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: .75px;
    line-height: 30px;
    margin: 0;
    text-transform: uppercase
}

.calendar__title {
    font-size: 40px;
    font-weight: 700;
    line-height: 48px;
    margin: 10px 0 0
}

.calendar__description {
    font-size: 16px;
    font-weight: 300;
    line-height: 24px;
    margin: 20px auto 0;
    max-width: 1025px
}

.calendar__description p,
.calendar__subtitle p,
.calendar__title p {
    margin: 0;
    padding: 0
}

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

.calendar__left-column {
    flex-basis: 295px
}

.calendar__right-column {
    flex-basis: 770px;
    padding-left: 20px
}

.select-wrapper {
    margin-bottom: 60px;
    position: relative;
    width: -moz-fit-content;
    width: fit-content
}

.select-wrapper:after {
    content: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="8" fill="none" viewBox="0 0 12 8"><path stroke="%23fff" stroke-linecap="round" stroke-width="1.5" d="m6 6.5-5-5M6 6.5l5-5"/></svg>');
    height: 5px;
    pointer-events: none;
    position: absolute;
    right: 20px;
    top: 30%;
    transform: translateY(-50%);
    width: 10px
}

.month-select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background: var(--color-main, #8c9e69);
    border: none;
    border-radius: 50px;
    color: var(--color-white);
    cursor: pointer;
    font-size: 20px;
    font-weight: 400;
    outline: none;
    padding: 10px 20px;
    text-transform: capitalize;
    width: 150px
}

.calendar__selected,
.month-select {
    box-shadow: inset 0 3px 3px #00000040;
    font-family: Gilroy, sans-serif
}

.calendar__selected {
    align-items: center;
    background: var(--color-calendar-gray);
    border-radius: 12px;
    color: var(--color-black);
    display: flex;
    gap: 25px;
    justify-content: center;
    margin-bottom: 15px;
    padding: 15px 0;
    width: 90%
}

.selected__day {
    font-size: 60px;
    font-weight: 400
}

.selected__month {
    font-size: 30px;
    font-weight: 400
}

.calendar__widget {
    display: grid;
    gap: 8px 6px;
    grid-template-columns: repeat(7, 1fr)
}

.calendar__widget-item_active {
    background: var(--color-main, #8c9e69)
}

.calendar__widget-item_empty {
    background: #fff;
    color: #000
}

.calendar__widget-item {
    align-items: center;
    background: var(--color-white);
    border-radius: 10px;
    box-shadow: 0 3px 3px #00000040;
    box-sizing: border-box;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    font-size: 20px;
    font-weight: 400;
    height: 44px;
    justify-content: center;
    padding: 5px;
    width: 44px
}

.calendar__widget-item_other-month {
    color: var(--color-gray)
}

.calendar__widget-item_active {
    background: var(--color-main);
    color: var(--color-white)
}

.calendar__widget-item_empty {
    background: transparent;
    cursor: default
}

.calendar__container {
    display: flex;
    flex-direction: column
}

.calendar__event__row {
    border-bottom: 1px solid var(--color-active-light-gray);
    display: flex;
    gap: 20px
}

.calendar__table-container {
    font-family: Gilroy, sans-serif
}

.calendar__table-header {
    color: var(--color-main, #8c9e69);
    display: flex;
    font-size: 20px;
    font-weight: 700;
    gap: 20px;
    padding-bottom: 17px;
    text-align: left
}

.calendar__event-time,
.calendar__header-time {
    flex: 0 1 125px;
    padding: 5px 0
}

.calendar__event-time {
    font-size: 19px;
    font-weight: 500
}

.calendar__event-title {
    font-size: 20px;
    font-weight: 300
}

.calendar__event-title,
.calendar__header-title {
    flex: 2.6;
    padding: 5px 0
}

.calendar__no-events {
    align-items: center;
    display: flex;
    font-family: Gilroy, sans-serif;
    font-size: 20px;
    font-weight: 300;
    height: 50%;
    justify-content: center
}

.calendar__filter-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-bottom: 65px
}

.calendar__filter-button {
    background: #fff;
    border: none;
    border-radius: 50px;
    box-shadow: 0 3px 3px #00000040;
    color: var(--color-black);
    cursor: pointer;
    font-size: 20px;
    font-weight: 400;
    padding: 10px 20px
}

.calendar__filter-button_active {
    background: var(--color-main, #8c9e69);
    box-shadow: inset 0 3px 3px #00000040;
    color: var(--color-white)
}

@media screen and (max-width:767px) {
    .calendar {
        background-color: var(--color-white);
        padding-bottom: 25px
    }

    .calendar__header {
        padding: 40px 0 20px
    }

    .calendar__description {
        margin-top: 35px
    }

    .calendar__main {
        align-items: center;
        display: flex;
        flex-direction: column;
        gap: 60px
    }

    .calendar__left-column,
    .calendar__right-column {
        flex-basis: auto;
        padding: 0
    }

    .calendar__right-column {
        max-width: 339px;
        width: 100%
    }

    .calendar__widget {
        gap: 15px;
        grid-template-columns: repeat(auto-fit, minmax(44px, 1fr));
        width: 339px
    }

    .select-wrapper {
        margin-bottom: 20px
    }

    .calendar__no-events {
        padding: 20px 0
    }

    .calendar__event-time,
    .calendar__event-title,
    .calendar__header-time,
    .calendar__header-title {
        font-size: 13.5px
    }

    .calendar__event-time,
    .calendar__header-time {
        flex-basis: 90px
    }

    .calendar__selected {
        width: 100%
    }

    .calendar__event-time,
    .calendar__header-time {
        padding-left: 0;
        padding-right: 0
    }

    .calendar__event__row,
    .calendar__table-header {
        gap: 10px
    }

    .calendar__filter-buttons {
        flex-wrap: nowrap;
        margin-bottom: 25px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        -ms-overflow-style: none;
        padding-bottom: 4px
    }

    .calendar__filter-button {
        white-space: nowrap
    }
}

.price__table {
    border-collapse: collapse;
    margin-top: 20px;
    width: 100%
}

.price__table td,
.price__table th {
    border: none;
    padding: 8px;
    text-align: left
}

.price__titles {
    background-color: #b1b1b1;
    color: #fff
}

.price__table td:first-child,
.price__table th:first-child {
    font-weight: 600;
    position: relative;
    white-space: normal;
    word-break: break-word
}

ice__table th {
    background-color: #b1b1b1;
    border-bottom: none;
    color: var(--color-white)
}

.price__table tbody tr:nth-child(2n) td {
    background-color: var(--color-light-gray)
}

.price__procedure,
.price__table tbody tr:nth-child(odd) td {
    background-color: var(--color-white)
}

.price__table td:first-child[data-tooltip=""]:after,
.price__table th:first-child[data-tooltip=""]:after {
    display: none
}

@media screen and (max-width:767px) {
    .price__table {
        display: block
    }

    .price__procedure {
        background-color: var(--color-light-gray);
        display: block;
        font-size: 12px;
        padding: 10px;
        width: 88vw
    }

    .price__titles {
        display: none
    }

    .price__procedure_name {
        background-color: var(--color-light-gray);
        display: block;
        width: 100%
    }

    .price__procedure_code,
    .price__procedure_price,
    .price__procedure_type {
        background-color: var(--color-white);
        display: inline-block;
        margin-top: 10px;
        text-align: center;
        vertical-align: top
    }

    .price__table td:first-child,
    .price__table th:first-child {
        max-width: 100%;
        padding-top: 11px
    }

    .price__table th {
        padding: 0 8px
    }

    .price__table tbody tr:nth-child(2n) td,
    .price__table tbody tr:nth-child(odd) td {
        background-color: var(--color-light-gray)
    }

    .price__procedure_code,
    .price__procedure_price,
    .price__procedure_type {
        width: 33%
    }

    .price__table td:nth-child(4) {
        text-align: center
    }
}

.price {
    background-color: var(--color-light-gray);
    font-family: Montserrat, sans-serif;
    font-style: normal;
    padding: 90px 0 70px
}

.price__container {
    margin: 0 auto;
    max-width: 1160px;
    text-align: center;
    width: calc(100% - 80px)
}

.price__subtitle {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: .75px;
    line-height: 30px;
    margin: 0 0 10px;
    text-align: center;
    text-transform: uppercase
}

.price__title {
    font-size: 40px;
    font-weight: 700;
    line-height: 48px;
    margin: 0;
    padding-bottom: 30px
}

.price__category_wrap {
    cursor: pointer;
    text-align: left
}

.price__category_name {
    align-items: center;
    background-color: var(--color-main, #8c9e69);
    border-radius: 30px;
    color: var(--color-white);
    display: flex;
    font-size: 18px;
    font-weight: 500;
    justify-content: space-between;
    padding: 12px 30px
}

.price__category_text {
    flex: 1;
    padding-right: 10px;
    word-wrap: break-word;
    overflow-wrap: break-word
}

.price__icon {
    height: 20px;
    margin-left: 10px;
    width: 20px
}

.price__category_name--closed {
    background-color: var(--color-light-gray);
    border: 1px solid var(--color-main, #8c9e69);
    color: var(--color-main, #8c9e69)
}

.price__icon--open {
    transform: rotate(180deg)
}

.price__icon--closed {
    transform: rotate(0)
}

.price__category_subtitle,
.price__subcategory_name {
    color: var(--color-main, #8c9e69);
    font-size: 16px;
    font-weight: 600;
    padding-left: 30px;
    text-align: left
}

.price__category_table,
.price__subcategory_table {
    padding-bottom: 18px
}

.price__procedure_name,
.price__procedure_price {
    color: #161616;
    font-size: 14px;
    font-weight: 600
}

.price__procedure_code,
.price__procedure_type {
    color: #161616;
    font-size: 14px;
    font-weight: 300
}

.fade-enter-active,
.fade-leave-active {
    transition: opacity .5s
}

.fade-enter,
.fade-leave-to {
    opacity: 0
}

h4.price__category_name {
    margin: 0 0 10px
}

@media screen and (max-width:767px) {
    .price {
        background-color: var(--color-white);
        padding: 55px 0 35px
    }

    .price__container {
        width: calc(100vw - 40px)
    }

    .price__left {
        display: block;
        font-size: 16px;
        font-weight: 300;
        line-height: 20px;
        margin: 30px 0
    }

    .price__info {
        display: none
    }

    .price__subtitle {
        text-transform: capitalize
    }

    .price__table td,
    .price__table th {
        font-size: 12px
    }

    .price__title {
        font-size: 30px;
        line-height: 36px
    }

    .price__category_name {
        font-size: 16px
    }

    h4.price__category_name {
        margin: 0 auto 3px
    }

    .price__category_name--closed {
        background-color: var(--color-white)
    }
}

.sliderEvents {
    background-color: var(--color-light-gray);
    font-family: Montserrat, sans-serif;
    padding: 52px 0
}

.sliderEvents__container {
    margin: 0 auto;
    max-width: 1480px;
    overflow: hidden;
    text-align: center;
    width: calc(100% - 80px)
}

.sliderEvents__subtitle {
    font-size: 25px;
    font-weight: 100;
    letter-spacing: .75px;
    line-height: 30px;
    margin: 0 0 10px;
    text-transform: uppercase
}

.sliderEvents__title {
    font-size: 40px;
    font-weight: 600;
    line-height: 48px;
    margin: 0;
    padding-bottom: 30px
}

.sliderEvents__button_container {
    align-items: center;
    display: flex;
    position: relative
}

.sliderEvents__slider {
    overflow: hidden;
    width: 100%
}

.sliderEvents__slider-wrapper {
    display: flex;
    transition: transform .3s ease-in-out
}

.sliderEvents__slide {
    box-sizing: border-box;
    flex: 0 0 auto;
    margin: 0 10px;
    overflow: hidden;
    padding: 10px;
    width: calc(20% - 20px)
}

.sliderEvents__slide-image {
    border-radius: 50%;
    display: block;
    height: 92px;
    margin-left: 4.5px;
    margin-top: 5px;
    width: 92px
}

.sliderEvents__slide-image-container {
    border: 1px solid var(--color-main, #8c9e69);
    border-radius: 50%;
    height: 103px;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    width: 103px
}

.sliderEvents__slide-titles {
    margin-top: 10px;
    text-align: center;
    word-break: break-word
}

.sliderEvents__title--no-margin {
    margin-top: 0
}

.sliderEvents__slide-title {
    color: #000;
    display: block;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    margin: 0 auto
}

.sliderEvents__slide-subtitle {
    color: #000;
    display: block;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.4;
    margin: 0 auto
}

.sliderEvents__button {
    background: none;
    border: none;
    cursor: pointer;
    margin: 0;
    padding: 0;
    transition: opacity .3s ease;
    z-index: 1
}

.sliderEvents__button:disabled {
    cursor: not-allowed;
    opacity: .5
}

.sliderEvents__dots {
    display: flex;
    gap: 10px;
    justify-content: center;
    margin-top: 25px
}

.sliderEvents__dot {
    background-color: var(--color-muted-gray);
    border-radius: 50%;
    height: 7px;
    width: 7px
}

.sliderEvents__link {
    color: inherit;
    cursor: pointer;
    text-decoration: none
}

.sliderEvents__dot_active {
    background-color: var(--color-active-gray)
}

.sliderEvents__subtitle--no-margin {
    margin: 0
}

.sliderEvents__title--no-padding {
    padding-bottom: 0
}

@media (max-width:1399px) {
    .sliderEvents__slide {
        flex: 0 0 33.33%
    }
}

@media (max-width:900px) {
    .sliderEvents__container {
        margin: 0 auto;
        max-width: 1200px;
        overflow: hidden;
        text-align: center;
        width: calc(100% - 20px)
    }

    .sliderEvents {
        padding: 55px 0 35px
    }

    .sliderEvents__slide {
        flex: 0 0 50%;
        margin: 0;
        padding: 15px
    }

    .sliderEvents__button {
        display: none
    }

    .sliderEvents__slide-image-container {
        height: 100px;
        width: 100px
    }

    .sliderEvents__slide-image {
        height: 92px;
        margin-left: 3px;
        margin-top: 3px;
        width: 92px
    }

    .sliderEvents__slide-title {
        font-size: 14px
    }

    .sliderEvents__slide-subtitle {
        font-size: 12px
    }
}

.showcase-card {
    background-color: var(--color-white);
    border-radius: 20px;
    box-shadow: 0 22px 26px #5f5f5f1a;
    cursor: pointer;
    display: flex;
    gap: 25px;
    height: 262px;
    padding: 15px 25px 15px 15px
}

.showcase-card__no-image {
    border-radius: 16px;
    gap: 0;
    height: auto;
    padding: 12px
}

.showcase-card__no-image .showcase-card__info {
    align-items: center;
    flex-direction: row;
    gap: 60px;
    justify-content: space-between
}

.showcase-card__no-image .showcase-card__title {
    font-size: 14px
}

.showcase-card__no-image .showcase-card__props {
    gap: 20px;
    justify-content: flex-start;
    margin-top: 6px
}

.showcase-card__no-image .showcase-card__bottom {
    margin-top: 0
}

.showcase-card__no-image .showcase-card__add-button {
    width: 132px
}

.showcase-card__image {
    background-color: var(--color-muted-gray);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 100px;
    border-radius: 10px;
    box-shadow: inset 0 0 0 1000px #ffffff80;
    display: block;
    flex: 1
}

.showcase-card__image img {
    border-radius: 10px;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    width: 100%
}

.showcase-card__info {
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: center
}

.showcase-card__title {
    font-size: 16px;
    font-weight: 700
}

.showcase-card__description,
.showcase-card__title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    color: var(--color-showcase-gray);
    line-height: 120%;
    overflow: hidden;
    text-overflow: ellipsis
}

.showcase-card__description {
    font-size: 14px;
    font-weight: 300;
    margin-top: 5px
}

.showcase-card__props {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-top: 15px
}

.showcase-card__weight {
    color: var(--color-showcase-gray);
    font-size: 14px;
    font-weight: 500
}

.showcase-card__price {
    color: var(--color-gray);
    font-size: 14px;
    font-weight: 700
}

.showcase-card__bottom {
    margin-top: 25px
}

.showcase-card__add-button {
    align-items: center;
    background-color: var(--color-main, #8c9e69);
    border: 0;
    border-radius: 10px;
    box-shadow: 0 2.5px 6.5px #4d4d4d40;
    color: var(--color-white);
    cursor: pointer;
    display: flex;
    font-size: 11px;
    font-weight: 600;
    height: 40px;
    justify-content: center;
    letter-spacing: 1px;
    line-height: 100%;
    text-align: center;
    text-transform: uppercase;
    width: 100%
}

.showcase-card__grid {
    flex-direction: column;
    gap: 20px;
    height: auto;
    padding: 15px
}

.showcase-card__grid .showcase-card__description {
    display: none
}

.showcase-card__grid .showcase-card__image {
    flex: 0 0 0;
    height: 180px;
    min-height: 180px
}

.showcase-card__grid .showcase-card__info {
    flex: 1 0 0
}

@media (max-width:575.98px) {
    .showcase-card {
        gap: 10px;
        height: 128px;
        padding: 10px
    }

    .showcase-card__title {
        font-size: 10px;
        -webkit-line-clamp: 3
    }

    .showcase-card__description {
        display: none
    }

    .showcase-card__info {
        justify-content: space-between
    }

    .showcase-card__props {
        margin-top: 5px
    }

    .showcase-card__price,
    .showcase-card__weight {
        font-size: 9px
    }

    .showcase-card__bottom {
        margin-top: 0
    }

    .showcase-card__add-button {
        font-size: 9px;
        height: 30px
    }

    .showcase-card__grid {
        height: auto
    }

    .showcase-card__grid .showcase-card__image {
        height: 90px;
        min-height: 90px
    }

    .showcase-card__grid .showcase-card__bottom {
        margin-top: 20px
    }

    .showcase-card__grid .showcase-card__title {
        -webkit-line-clamp: 2
    }

    .showcase-card__no-image {
        height: auto
    }

    .showcase-card__no-image .showcase-card__info {
        flex-direction: row;
        gap: 30px;
        justify-content: space-between
    }

    .showcase-card__no-image .showcase-card__title {
        font-size: 10px;
        -webkit-line-clamp: 2
    }

    .showcase-card__no-image .showcase-card__props {
        gap: 10px;
        justify-content: flex-start;
        margin-top: 3px
    }

    .showcase-card__no-image .showcase-card__bottom {
        margin-top: 0
    }

    .showcase-card__no-image .showcase-card__add-button {
        width: 102px
    }
}

.showcase {
    background-color: var(--color-extra-gray);
    height: 800px;
    width: 100%
}

.showcase__wrapper {
    height: 100%;
    margin: 0 auto;
    max-width: 1200px;
    overflow-y: auto;
    width: 100%
}

.showcase__categories {
    background-color: var(--color-white);
    position: sticky;
    top: 0
}

.showcase__categories-list {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    scrollbar-width: none
}

.showcase__categories-item {
    color: var(--color-showcase-gray);
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    padding: 16px;
    transition: color .3s;
    white-space: nowrap
}

.showcase__info {
    padding: 0 15px
}

.showcase__title {
    color: var(--color-main, #8c9e69);
    font-size: 20px;
    font-weight: 700;
    line-height: 120%;
    margin-top: 21px;
    text-transform: uppercase
}

.showcase__description {
    color: var(--color-text-gray);
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
    margin-top: 10px
}

.showcase__details {
    border: 1px solid var(--color-count-gray);
    border-radius: 8px;
    display: inline-flex;
    gap: 14px;
    margin-top: 10px;
    padding: 8px 12px;
    width: auto
}

.showcase__details-item {
    align-items: center;
    color: var(--color-showcase-gray);
    display: flex;
    font-size: 14px;
    font-weight: 600;
    gap: 8px;
    line-height: 120%;
    text-decoration: none
}

.showcase__details-icon {
    height: 20px;
    min-width: 20px;
    width: 20px;
    stroke: var(--color-main, #8c9e69)
}

.showcase__categories-item:hover {
    color: var(--color-gray)
}

.showcase__categories-item--active {
    border-bottom: 2px solid var(--color-main, #8c9e69);
    color: var(--color-main, #8c9e69)
}

.showcase__categories-item--active:hover {
    color: var(--color-main, #8c9e69)
}

.showcase__cards {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 30px 15px
}

.showcase__cards--grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr)
}

@media (max-width:1200px) {
    .showcase {
        padding: 0
    }
}

@media (max-width:767.98px) {
    .showcase {
        height: 550px
    }

    .showcase__cards--grid {
        grid-template-columns: repeat(2, 1fr)
    }

    .showcase__cards {
        padding: 30px 15px
    }
}

@media (max-width:575.98px) {

    .showcase__categories-item,
    .showcase__description,
    .showcase__details-item,
    .showcase__title {
        font-size: 12px
    }
}

@media (max-width:320px) {
    .showcase__cards--grid {
        grid-template-columns: 1fr
    }
}

.services {
    margin: 50px auto;
    max-width: 1200px;
    padding: 0 20px;
    width: 100%
}

.services__wrapper {
    background-color: var(--color-white);
    border-radius: 18px;
    box-shadow: 0 6px 10px #5f5f5f1a;
    padding: 30px 20px 40px
}

.services__title {
    color: var(--color-main, #8c9e69);
    font-weight: 700
}

.services__description,
.services__title {
    font-size: 20px;
    line-height: 120%;
    text-transform: uppercase
}

.services__description {
    color: var(--color-showcase-gray);
    font-weight: 400;
    margin-top: 6px
}

.services__list {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    justify-content: space-between;
    margin-top: 30px
}

.services__item {
    align-items: center;
    display: flex;
    flex-direction: column;
    text-decoration: none
}

.services__item--one {
    flex: 1;
    max-width: 100%
}

.services__item--two {
    flex: 1 0 calc(50% - 20px);
    max-width: calc(50% - 20px)
}

.services__item--three {
    flex: 1 0 calc(33.33333% - 26.66667px);
    max-width: calc(33.33333% - 26.66667px)
}

.services__item span {
    color: var(--color-count-gray);
    font-size: 11px;
    font-weight: 600;
    line-height: 120%;
    text-align: center
}

.services__image {
    align-items: center;
    border: 1px solid var(--color-count-gray);
    border-radius: 50%;
    display: flex;
    height: 54px;
    justify-content: center;
    margin-bottom: 8px;
    min-width: 54px;
    width: 54px
}

.services__image img {
    height: 27px;
    min-width: 27px;
    width: 27px
}

@media (max-width:575.98px) {
    .services {
        margin: 30px auto;
        padding: 0 15px
    }

    .services__wrapper {
        padding: 18px 12px 30px
    }

    .services__description,
    .services__title {
        font-size: 12px
    }

    .services__list {
        gap: 20px;
        justify-content: space-between;
        margin-top: 24px
    }

    .services__image {
        height: 48px;
        min-width: 48px;
        width: 48px
    }

    .services__image img {
        height: 24px;
        min-width: 24px;
        width: 24px
    }
}

.virtual-helper {
    margin: 50px auto;
    max-width: 1200px;
    padding: 0 20px;
    width: 100%
}

.virtual-helper__title {
    color: var(--color-main, #8c9e69);
    font-weight: 700
}

.virtual-helper__description,
.virtual-helper__title {
    font-size: 20px;
    line-height: 120%;
    text-transform: uppercase
}

.virtual-helper__description {
    color: var(--color-showcase-gray);
    font-weight: 400;
    margin-top: 6px
}

.virtual-helper__list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
    margin-top: 20px
}

.virtual-helper__item {
    background-color: var(--color-main, #8c9e69);
    border-radius: 21px;
    box-shadow: 0 6.74px 11.24px #4d4d4d1a;
    display: flex;
    flex-direction: column;
    min-height: 130px;
    padding: 13px 14px;
    text-decoration: none
}

.virtual-helper__item--one {
    flex: 1;
    max-width: 100%
}

.virtual-helper__item--two {
    flex: 1 0 calc(50% - 5px);
    max-width: calc(50% - 5px)
}

.virtual-helper__item--three {
    flex: 1 0 calc(33.33333% - 6.66667px);
    max-width: calc(33.33333% - 6.66667px)
}

.virtual-helper__item span {
    color: var(--color-white);
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
    text-transform: uppercase
}

.virtual-helper__image {
    height: 44px;
    margin-bottom: 14px;
    min-width: 44px;
    width: 44px
}

@media (max-width:575.98px) {
    .virtual-helper {
        margin: 30px auto;
        padding: 0 15px
    }

    .virtual-helper__description,
    .virtual-helper__title {
        font-size: 12px
    }

    .virtual-helper__item {
        min-height: 109px;
        padding: 12px 13px
    }

    .virtual-helper__image {
        height: 40px;
        min-width: 40px;
        width: 40px
    }

    .virtual-helper__item span {
        font-size: 10px
    }
}

.virtualSlider {
    background-color: var(--color-light-gray);
    font-family: Montserrat, sans-serif;
    padding: 40px 0
}

.virtualSlider__container {
    margin: 0 auto;
    max-width: 1480px;
    text-align: center;
    width: calc(100% - 80px)
}

.virtualSlider__subtitle {
    font-size: 25px;
    font-weight: 100;
    letter-spacing: .75px;
    line-height: 30px;
    margin: 0 0 10px;
    text-transform: uppercase
}

.virtualSlider__title {
    font-size: 40px;
    font-weight: 600;
    line-height: 48px;
    margin: 0;
    padding-bottom: 50px
}

.virtualSlider__slider-wrapper {
    margin: 0 auto;
    max-width: 1200px;
    position: relative
}

.virtualSlider__slider {
    border-radius: 12px;
    box-shadow: 0 8px 32px #0000001a;
    cursor: grab;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    width: 100%
}

.virtualSlider__slider:active {
    cursor: grabbing
}

.virtualSlider__slide-track {
    display: flex;
    width: 100%
}

.virtualSlider__slide {
    flex: 0 0 100%;
    min-width: 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.virtualSlider__slide-image-container {
    aspect-ratio: 16/9;
    overflow: hidden;
    position: relative;
    width: 100%
}

.virtualSlider__slide-image {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform .3s ease;
    width: 100%
}

.virtualSlider__slide-content {
    align-items: center;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    background-color: #fffffff2;
    bottom: 0;
    display: flex;
    height: 80px;
    justify-content: space-between;
    left: 0;
    padding: 0 30px;
    position: absolute;
    width: 100%
}

.virtualSlider__text-container {
    display: flex;
    flex-direction: column;
    gap: 6px;
    justify-content: center
}

.virtualSlider__slide-subtitle {
    font-size: 14px;
    font-weight: 700;
    line-height: 100%;
    text-transform: capitalize
}

.virtualSlider__slide-subtitle,
.virtualSlider__slide-title {
    color: #000;
    font-family: Montserrat;
    letter-spacing: 0;
    text-align: start
}

.virtualSlider__slide-title {
    font-size: 16px;
    font-weight: 400;
    line-height: 120%;
    text-transform: uppercase
}

.virtualSlider__icon-link {
    align-items: center;
    display: flex;
    justify-content: center;
    text-decoration: none
}

.virtualSlider__icon-container {
    align-items: center;
    background: #0000001a;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    height: 50px;
    justify-content: center;
    transition: all .3s ease;
    width: 50px
}

.virtualSlider__icon-link:hover .virtualSlider__icon-container {
    background: #0003;
    transform: scale(1.1)
}

.virtualSlider__nav-button {
    align-items: center;
    background: #fff;
    border: none;
    border-radius: 50%;
    box-shadow: 0 4px 16px #00000026;
    color: #333;
    cursor: pointer;
    display: flex;
    height: 60px;
    justify-content: center;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: all .3s ease;
    width: 60px;
    z-index: 10
}

.virtualSlider__nav-button:hover:not(:disabled) {
    background: #f8f8f8;
    box-shadow: 0 6px 20px #0003;
    transform: translateY(-50%) scale(1.05)
}

.virtualSlider__nav-button:disabled {
    cursor: not-allowed;
    opacity: .4;
    transform: translateY(-50%) scale(1)
}

.virtualSlider__nav-button--prev {
    left: -30px
}

.virtualSlider__nav-button--next {
    right: -30px
}

.virtualSlider__desktop-indicators {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: center;
    margin-top: 40px
}

.virtualSlider__desktop-indicator {
    background: #0000001a;
    border: none;
    border-radius: 2px;
    cursor: pointer;
    height: 4px;
    overflow: hidden;
    padding: 0;
    position: relative;
    transition: all .3s ease;
    width: 80px
}

.virtualSlider__desktop-indicator:hover {
    background: #0003
}

.virtualSlider__desktop-indicator--active {
    background: #0000004d
}

.virtualSlider__indicator-progress {
    background: #333;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transition: width .3s ease;
    width: 0
}

.virtualSlider__desktop-indicator--active .virtualSlider__indicator-progress {
    width: 100%
}

.virtualSlider__dots {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: center;
    margin-top: 24px;
    padding: 0 20px
}

.virtualSlider__dot {
    background-color: #0003;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    height: 10px;
    padding: 0;
    transition: all .3s ease;
    width: 10px
}

.virtualSlider__dot:hover {
    background-color: #0006;
    transform: scale(1.1)
}

.virtualSlider__dot--active {
    background-color: #b9b6b6;
    transform: scale(1.2)
}

@media (max-width:1024px) {
    .virtualSlider__nav-button {
        height: 50px;
        width: 50px
    }

    .virtualSlider__nav-button--prev {
        left: -20px
    }

    .virtualSlider__nav-button--next {
        right: -20px
    }

    .virtualSlider__slider-wrapper {
        max-width: 90%
    }
}

@media (max-width:900px) {
    .virtualSlider__container {
        width: calc(100% - 40px)
    }

    .virtualSlider {
        padding: 30px 0
    }

    .virtualSlider__slide-content {
        height: 70px;
        padding: 0 20px
    }

    .virtualSlider__slide-subtitle {
        font-size: 13px
    }

    .virtualSlider__slide-title {
        font-size: 14px
    }

    .virtualSlider__subtitle {
        font-size: 20px;
        line-height: 24px
    }

    .virtualSlider__title {
        font-size: 32px;
        line-height: 38px;
        padding-bottom: 30px
    }

    .virtualSlider__desktop-indicators {
        gap: 12px;
        margin-top: 30px
    }

    .virtualSlider__desktop-indicator {
        width: 60px
    }

    .virtualSlider__dots {
        gap: 10px;
        margin-top: 20px
    }

    .virtualSlider__dot {
        height: 8px;
        width: 8px
    }

    .virtualSlider__icon-container {
        height: 45px;
        width: 45px
    }
}

@media (max-width:768px) {

    .virtualSlider__desktop-indicators,
    .virtualSlider__nav-button {
        display: none
    }

    .virtualSlider__dots {
        display: flex
    }

    .virtualSlider__slider {
        max-width: 95%
    }
}

@media (max-width:600px) {
    .virtualSlider__container {
        width: 100%
    }

    .virtualSlider__subtitle {
        font-size: 18px;
        line-height: 22px;
        margin-bottom: 8px
    }

    .virtualSlider__title {
        font-size: 24px;
        line-height: 28px;
        padding-bottom: 20px
    }

    .virtualSlider__slider {
        border-radius: 8px;
        max-width: 100%
    }

    .virtualSlider__slide-content {
        height: 60px;
        padding: 0 16px
    }

    .virtualSlider__slide-subtitle {
        font-size: 12px
    }

    .virtualSlider__slide-title {
        font-size: 13px
    }

    .virtualSlider__dots {
        gap: 8px;
        margin-top: 20px
    }

    .virtualSlider__dot {
        height: 6px;
        width: 6px
    }

    .virtualSlider__icon-container {
        height: 40px;
        width: 40px
    }

    .virtualSlider__icon-container img {
        height: 20px;
        width: 20px
    }
}

@media (max-width:375px) {
    .virtualSlider__subtitle {
        font-size: 16px;
        line-height: 20px
    }

    .virtualSlider__title {
        font-size: 20px;
        line-height: 24px
    }

    .virtualSlider__slide-content {
        height: 55px;
        padding: 0 12px
    }

    .virtualSlider__slide-subtitle,
    .virtualSlider__slide-title {
        font-size: 11px
    }

    .virtualSlider__icon-container {
        height: 35px;
        width: 35px
    }

    .virtualSlider__icon-container img {
        height: 18px;
        width: 18px
    }
}

@media (min-width:769px) {
    .virtualSlider__dots {
        display: none
    }
}

.page {
    display: flex;
    flex-direction: column;
    min-height: 100vh
}

.slot-wrapper {
    display: flex;
    flex: 1;
    flex-direction: column
}








.fs-menu  {
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    background: #0000004d;
    bottom: 0;
    flex-direction: column;
    font-family: Montserrat,sans-serif;
    font-style: normal;
    height: 100vh;
    left: 0;
    line-height: normal;
    position: fixed;
    right: 0;
    top: 0;
    width: 100vw;
    z-index: 20
}

.fs-menu,.fs-menu__header,.fs-menu__subheader  {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.fs-menu__header,.fs-menu__subheader  {
    padding: 40px 50px;
    width: 100%
}

.fs-menu__subheader  {
    padding: 56px 50px 10px
}

.fs-menu__logo-link  {
    align-items: center;
    display: flex
}

.fs-menu__logo  {
    height: 40px;
    width: auto
}

.fs-menu__back-icon,.fs-menu__close-icon  {
    cursor: pointer;
    height: 20px;
    transition: all .3s ease;
    width: 20px
}

.fs-menu__back-icon :hover,.fs-menu__close-icon :hover {
    opacity: .8;
    transform: scale(1.1)
}

.fs-menu__divider  {
    background-color: #ccc;
    height: 1px;
    margin-bottom: 30px;
    width: 100%
}

.fs-menu__list-container  {
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: space-between;
    overflow-y: auto;
    padding: 0 50px 40px;
    text-align: left;
    width: 100%
}

.fs-menu__child-list,.fs-menu__list  {
    list-style: none;
    margin: 0;
    padding: 0
}

.fs-menu__item-wrapper  {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding: 10px 0
}

.fs-menu__link  {
    color: var(--color-white);
    font-size: 18px;
    font-weight: 500;
    text-decoration: none;
    text-transform: uppercase;
    transition: color .3s ease
}

.fs-menu__child-link  {
    font-weight: 500
}

.fs-menu__child-link,.fs-menu__child-list .fs-menu__child-link  {
    color: var(--color-white);
    font-size: 14px;
    text-decoration: none;
    text-transform: none;
    transition: color .3s ease
}

.fs-menu__child-list .fs-menu__child-link  {
    font-weight: 300
}

.fs-menu__child-link :hover,.fs-menu__link :hover {
    color: var(--color-white)
}

.fs-menu__child-link :after,.fs-menu__link :after {
    background: var(--color-white,#8c9e69);
    bottom: 0;
    color: var(--color-white);
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    right: 0;
    text-decoration: none;
    transform: scaleX(0);
    transition: transform .3s ease
}

.fs-menu__child-link :hover:after,.fs-menu__link :hover:after {
    transform: scaleX(1)
}

.fs-menu__footer  {
    align-items: center;
    flex-direction: column;
    height: 132px;
    margin-bottom: 43px
}

.fs-menu__button-container,.fs-menu__footer  {
    display: flex;
    justify-content: center;
    width: 100%
}

.fs-menu__button,.fs-menu__button-container  {
    text-decoration: none
}

.fs-menu__button  {
    background-color: transparent;
    border: 1px solid var(--color-white);
    height: 50px;
    margin-bottom: 30px;
    padding: 15px 25px;
    width: -moz-fit-content;
    width: fit-content
}

.menu-slide-enter-active,.menu-slide-leave-active  {
    overflow: hidden;
    transition: max-height .7s ease-in-out
}

.menu-slide-enter-from,.menu-slide-leave-to  {
    max-height: 0
}

.menu-slide-enter-to,.menu-slide-leave-from  {
    max-height: 500px
}

.arrow-right-menu  {
    width: 22px
}

.fs-menu__subheader-title  {
    color: var(--color-white);
    font-size: 18px;
    font-weight: 500;
    text-decoration: none;
    text-transform: uppercase
}

.fs-menu__arrow  {
    cursor: pointer;
    transition: transform .3s ease
}

.fs-menu__arrow_flipped  {
    transform: rotate(180deg)
}

.hamburger-icon {
    cursor: pointer;
    display: flex;
    flex-direction: column;
    height: 25px;
    justify-content: space-around;
    width: 25px
}

.hamburger-icon__line {
    background-color: #fff;
    height: 2px;
    width: 100%
}

svg {
    height: 22px;
    width: 21px
}

.header {
    background: var(--3c24f0eb);
    color: var(--color-white);
    font-family: Montserrat,sans-serif;
    font-style: normal;
    left: 0;
    line-height: normal;
    padding: 15px 0;
    position: fixed;
    top: 0;
    transition: background .3s ease;
    width: 100%;
    z-index: 9
}

.header:before {
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    content: "";
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: var(--6583a0de);
    opacity: 0;
    position: absolute;
    transition: opacity .3s ease;
    width: 100%;
    z-index: -1
}

.header.scrolled,.header:hover {
    background: #0000004d
}

.header.scrolled:before,.header:hover:before {
    opacity: 1
}

.header.force-scrolled {
    background: #0000004d
}

.header__space {
    height: 90px
}

.header__container {
    box-sizing: border-box;
    height: 60px;
    margin: 0 auto;
    max-width: 3840px;
    padding: 0 7.5% 0 5.5%;
    width: 100%
}

.header__container,.header__wrapper {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.header__wrapper {
    flex: 1;
    gap: 40px
}

.header__logo-container {
    flex-grow: 0;
    flex-shrink: 1;
    max-height: 60px;
    max-width: 200px
}

.header__logo {
    display: block;
    max-height: 60px;
    max-width: 200px;
    -o-object-fit: contain;
    object-fit: contain
}

.header__logo-link {
    display: block;
    max-height: 100%;
    max-width: 100%
}

.header__info-container {
    align-self: center;
    display: flex;
    flex-direction: column;
    gap: 5px
}

.header__address-link,.header__info-link,.header__phone-link {
    color: var(--color-white);
    cursor: pointer;
    display: flex;
    gap: 14px;
    text-decoration: none
}

.header__phone-link {
    white-space: nowrap
}

.header__info-address,.header__info-contacts {
    font-size: 12px;
    font-weight: 400;
    margin: 0
}

.header__info-contacts {
    display: flex;
    font-size: 14px;
    font-weight: 700;
    gap: 14px
}

.header__button-container {
    height: 52px;
    width: 184px
}

.header__button-link {
    border: 1px solid var(--color-white);
    height: 100%;
    margin-left: 20px;
    padding: 15px;
    width: 100%
}

.header__logo-address-container {
    align-items: flex-start;
    display: flex;
    gap: 20px
}

.header__address-link {
    align-items: center;
    color: var(--color-white);
    cursor: pointer;
    display: flex;
    text-decoration: none
}

.header__info-address {
    font-size: 14px;
    font-weight: 400;
    margin: 0
}

.header__phone-social-container {
    align-items: center;
    display: flex;
    gap: 10px
}

.header__info-phone {
    font-size: 14px;
    font-weight: 700
}

.header__phone-link {
    color: var(--color-white);
    text-decoration: none
}

.header__social-icons {
    display: flex;
    gap: 10px
}

.header__social-link {
    text-decoration: none
}

.header__social-image {
    display: block;
    height: 21px;
    -o-object-fit: contain;
    object-fit: contain
}

@media (max-width: 1280px) {
    .header__phone-social-container {
        display:none
    }
}

.header-404 {
    background: #0000004d
}

.main-menu {
    height: 60px
}

.main-menu a:hover, .main-menu a:focus, .main-menu a:active {
    text-decoration: none;
    outline: none;
}

.main-menu--no-booking-button {
    flex-basis: 60%
}

.main-menu__list {
    gap: 31px;
    list-style-type: none;
    margin: 0;
    padding: 0
}

.main-menu__item,.main-menu__list {
    align-items: center;
    display: flex;
    height: 100%
}

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

.main-menu__item,.main-menu__item_has-submenu {
    position: relative
}

.main-menu__item_has-submenu:after {
    content: "";
    height: 30px;
    left: 0;
    position: absolute;
    right: 0;
    top: 100%;
    z-index: 10
}

.main-menu__link {
    align-items: center;
    color: var(--color-white);
    cursor: pointer;
    display: flex;
    font-size: 14px;
    font-weight: 500;
    justify-content: center;
    padding: 10px 0;
    position: relative;
    text-decoration: none
}

.main-menu__title {
    flex-shrink: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.main-menu__icon {
    flex-shrink: 0;
    height: 4px;
    margin-left: 5px;
    transition: transform .3s ease;
    width: 8px
}

.main-menu__link:hover {
    color: var(--color-white,#8c9e69)
}

.main-menu__link:hover>svg {
    transform: rotate(180deg)
}

.main-menu__link:after {
    background: var(--color-white,#8c9e69);
    bottom: 5px;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    right: 0;
    transform: scaleX(0);
    transition: transform .3s ease
}

.main-menu__link:hover:after {
    transform: scaleX(1)
}

.submenu {
    align-items: flex-start;
    border-radius: var(--f70945ae);
    display: flex;
    flex-direction: column;
    gap: 20px;
    height: var(--525286b2);
    left: 0;
    list-style-type: none;
    margin: 0;
    min-width: 212px;
    padding: 5px 20px 30px;
    position: absolute;
    top: calc(100% + 15px);
    z-index: 20
}

.submenu:before {
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    background: #0000004d;
    border-radius: inherit;
    bottom: 0;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1
}

.submenu .submenu {
    border-radius: var(--82253c9c);
    height: var(--39a0e5fb)
}

.submenu .submenu:before {
    border-radius: inherit
}

.submenu .submenu {
    border-left: 1px solid hsla(0,0%,100%,.3);
    left: calc(100% - 1px);
    top: 0
}

.submenu__link__wrap {
    width: 200px
}

.submenu__link,.submenu__link__wrap {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.submenu__link {
    color: var(--color-white);
    font-size: 14px;
    padding-right: 5px;
    position: relative;
    text-decoration: none;
    transition: color .3s ease;
    white-space: nowrap;
    width: 100%
}

.grandchild-link {
    font-size: 14px;
    font-weight: 300;
    line-height: 17.07px
}

.submenu__icon {
    margin-left: auto;
    transform: rotate(270deg)
}

.submenu__link:hover .submenu__icon {
    transform: translate(5px)
}

.submenu__link:hover:after {
    background: var(--color-white,#8c9e69);
    bottom: -4px;
    transform: scaleX(1)
}

.submenu__link:after,.submenu__link:hover:after {
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    right: 0;
    transition: transform .3s ease
}

.submenu__link:after {
    background: transparent;
    bottom: 5px;
    transform: scaleX(0)
}

.submenu__link:active {
    color: var(--color-white,#8c9e69)
}

.main-menu__link>svg>path {
    stroke: #fff
}

.main-menu__link:hover>svg>path {
    stroke: var(--color-white,#8c9e69)
}

.main-menu__item_has-submenu .main-menu__link:hover {
    color: var(--color-white,#8c9e69)
}

.submenu-fade-enter-active,.submenu-fade-leave-active {
    transition: none
}

.submenu-fade-enter-from,.submenu-fade-enter-to,.submenu-fade-leave-from,.submenu-fade-leave-to {
    opacity: 1
}

.header__cart-button {
    background: none;
    border: 0;
    cursor: pointer;
    position: relative
}

.header__cart-button__icon {
    height: 27px;
    width: 26px;
    fill: var(--color-white)
}

.header__cart-button__count {
    align-items: center;
    background-color: var(--color-error);
    border-radius: 50%;
    bottom: 7px;
    color: var(--color-white);
    display: flex;
    font-size: 7px;
    font-weight: 500;
    height: 13px;
    justify-content: center;
    min-width: 13px;
    position: absolute;
    right: 0;
    width: 13px
}

@media (max-width: 1280px) {
    .main-menu__list {
        display:none
    }

    .header {
        padding: 20px 0
    }

    .header__logo {
        max-width: 135px
    }

    .header__button-container,.header__button-link {
        display: none
    }

    .header__space {
        height: 85px
    }

    .header__container {
        height: 45px
    }

    .header__cart-button {
        display: none
    }
}

@media (max-width: 699px) {
    .header {
        padding:15px 0
    }

    .header__space {
        height: 70px
    }

    .header__container {
        height: 40px
    }

    .header__logo,.header__logo-container {
        max-height: 40px
    }

    .header__info-contacts {
        display: none
    }

    .header__info-address {
        font-size: 9px;
        width: 110px
    }

    .header__wrapper {
        gap: 20px
    }
}

.header__nav {
    align-items: center;
    display: flex;
    gap: 30px
}

@media (max-width: 600px) {
    .header__nav {
        display:none
    }
}

.header__nav .header__link {
    color: #fff;
    font-family: Montserrat;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 22px;
    text-align: left;
    text-decoration: none
}

.header__nav .nav__dropdown {
    cursor: pointer;
    display: flex;
    flex-direction: column;
    position: relative
}

.header__nav .nav__dropdown .dropdown__header {
    align-items: center;
    display: flex;
    gap: 10px
}

.header__nav .nav__dropdown .dropdown__list {
    background: #fff;
    border: 1px solid rgba(0,0,0,.3);
    border-radius: 5px;
    display: flex;
    flex-direction: column;
    list-style-type: none;
    margin: 0;
    min-height: 100px;
    min-width: 200px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    top: 42px;
    z-index: 999
}

.header__nav .nav__dropdown .dropdown__list li a {
    align-items: center;
    color: #000;
    cursor: pointer;
    display: flex;
    height: 30px;
    padding: 5px 10px
}

@media (hover: hover) {
    .header__nav .nav__dropdown .dropdown__list li a:hover {
        background:#0000001a;
        transition: .3s
    }
}

.header__booking-btn {
    align-items: center;
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    background: var(--color-main,#8c9e69);
    border: none;
    border-radius: 200px;
    color: #fff;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    font-size: 14px;
    font-weight: 400;
    height: 42px;
    justify-content: center;
    letter-spacing: 0;
    line-height: 22px;
    margin-left: 20px;
    padding: 12.5px 19px;
    text-align: center;
    text-decoration: none;
    width: 152px
}

@media (max-width: 1280px) {
    .header__booking-btn {
        display:none
    }
}

.header__booking-btn--hidden {
    opacity: 0;
    pointer-events: none;
    visibility: hidden
}

.header__booking-btn:hover {
    background-color: var(--color-dark-main,#525f45)
}

.header__booking-btn-placeholder {
    height: 42px;
    margin-left: 20px;
    pointer-events: none;
    visibility: hidden;
    width: 152px
}

@media (max-width: 1280px) {
    .header__booking-btn-placeholder {
        display:none
    }
}

.header__booking-btn-placeholder--hidden {
    opacity: 0;
    pointer-events: none;
    visibility: hidden
}

.bottom-space {
    background-color: #2e2e2e;
    display: none
}

@media screen and (max-width: 767px) {
    .bottom-space {
        display:block;
        height: 61px
    }
}