.header {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    padding-top: 42px;
    z-index: 100
}

.header:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    height: 200px;
    background: -o-linear-gradient(top, #1b1d1e 0%, rgba(27, 29, 30, 0) 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#1b1d1e), to(rgba(27, 29, 30, 0)));
    background: linear-gradient(180deg, #1b1d1e 0%, rgba(27, 29, 30, 0) 100%);
    opacity: 0.5
}

.header.no-bg:before {
    content: none
}

.header.no-bg .menu li a {
    color: #2d3741
}

.header.no-bg .menu li a:hover {
    color: #1c9673
}

.header.no-bg .header-contacts a {
    color: #2d3741
}

.header.no-bg .header-contacts .free-call {
    color: #2d3741
}

.header.no-bg .header-contacts .tel:hover {
    color: #1c9673
}

.header.no-bg.mobile-banner + .first-screen + section, .header.no-bg + section {
    padding-top: 160px
}

.header.no-bg + section.pt-0, .header.no-bg.mobile-banner + .first-screen + section.pt-0 {
    padding-top: 127px !important
}

.logo a {
    border: 0;
    display: block
}

.logo img {
    width: 100%;
    max-width: 150px
}

.menu li.active a {
    color: #1c9673
}

.menu li a {
    color: #ffffff;
    font-weight: 600;
    border-color: transparent
}

.menu li a:hover {
    color: #1c9673
}

.menu .open-menu {
    display: block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center
}

.header-contacts {
    position: relative;
    display: inline-block;
    vertical-align: top;
    text-align: center
}

.header-contacts a {
    color: #ffffff
}

.header-contacts .free-call {
    display: block;
    font-size: 10px;
    color: #fff;
}

@media screen and (max-width: 600px) {
    .header-contacts .free-call {
        display: none;
    }
}

.header-contacts .tel {
    border: 0;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.1
}

.header-contacts .tel:hover {
    color: #1c9673
}

.header-contacts .tel .icon-svg {
    display: none
}

.header-contacts .link {
    font-size: 12px
}

.header-contacts .btn-close {
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    position: absolute;
    right: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    margin-right: 55px
}

.header-contacts .btn-close:hover {
    color: #1c9673
}

.header-contacts .open-menu {
    display: none
}

.main-section {
    padding: 0
}

.main-section .scroll-down {
    margin-top: 50px
}

.first-screen-wrap {
    height: 100%;
    padding-top: 130px;
    padding-bottom: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.first-screen-wrap .letters {
    margin: auto;
    width: 100%;
    max-width: 1130px
}

.first-screen-wrap .letters + .first-screen-info {
    margin: -80px auto 60px
}

.first-screen-wrap .letters + .screen-bottom {
    margin-top: 0
}

.first-screen-wrap .screen-center {
    margin: auto 0;
    position: relative;
    z-index: 20
}

.first-screen-wrap .screen-bottom {
    position: relative;
    margin-top: auto;
    z-index: 20
}

.first-screen-wrap .screen-bottom .btn {
    font-weight: 600;
    font-size: 18px
}

.first-screen-wrap .screen-bottom .weather {
    display: inline-block;
    vertical-align: top;
    position: relative;
    text-align: right;
    padding-left: 45px;
    z-index: 10
}

.first-screen-wrap .screen-bottom .weather:before {
    content: '';
    position: absolute;
    left: 0;
    top: 7px;
    background: url(../img/icons/cloud.svg) no-repeat 50% 50%;
    background-size: contain;
    width: 31px;
    height: 28px
}

.first-screen-wrap .screen-bottom .weather .h3 {
    margin: 0
}

.first-screen-wrap .btns {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto
}

.first-screen {
    position: relative;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    height: 100vh;
    min-height: 760px;
    color: #ffffff
}

.first-screen.index-banner {
    background-image: url(../img/bg/main_banner3.jpg)
}

.first-screen.has-form-bottom {
    height: calc(100vh - 105px)
}
.first-screen.small-height {
    height: calc(80vh - 105px)
}

.first-screen:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    height: calc(100% - 200px);
    -webkit-transform: scaleY(-1);
    -ms-transform: scaleY(-1);
    transform: scaleY(-1);
    background: -o-linear-gradient(top, #1b1d1e 0%, rgba(27, 29, 30, 0) 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#1b1d1e), to(rgba(27, 29, 30, 0)));
    background: linear-gradient(180deg, #1b1d1e 0%, rgba(27, 29, 30, 0) 100%);
    opacity: 0.5
}

.full-black-bg.first-screen:before {
    opacity: 1
}

.first-screen .wrap {
    position: relative;
    height: 100%
}

.first-screen + .book-section {
    padding: 25px 0
}

.scroll-down {
    text-align: center;
    color: #ffffff
}

.scroll-down .icon-svg {
    font-size: 20px
}

.scroll-down .text {
    margin-top: 2px;
    font-size: 12px
}

.page-title {
    text-align: center;
    margin-bottom: 24px
}

.page-title h1, .page-title .h1 {
    font-size: 60px;
    margin: 0
}

.page-title .fs-70 {
    font-size: 70px
}

.page-title .text-small {
    color: #8d8e8e;
    margin-top: 12px
}

.about-img {
    position: relative;
    z-index: 10;
    height: 100%
}

.about-img img {
    width: 100%;
    border-radius: 4px
}

.about-slider {
    margin-top: 35px;
    padding-top: 25px !important
}

.about-slider.no-pt {
    padding-top: 0 !important
}

.about-slider .swiper-btn {
    margin-top: -16px
}

.about-slider .swiper-button-prev {
    left: auto;
    right: 0;
    margin-right: 14px;
    -webkit-transform: translateY(32px);
    -ms-transform: translateY(32px);
    transform: translateY(32px)
}

.about-slider .swiper-button-next {
    left: auto;
    right: 0;
    margin-right: 14px;
    -webkit-transform: translateY(-32px);
    -ms-transform: translateY(-32px);
    transform: translateY(-32px)
}

.about-slider .swiper-slide {
    padding-right: 30px
}

.about-info {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border: 1px solid #e8e8e8;
    border-radius: 4px;
    margin-top: -25px;
    margin-left: -250px;
    padding: 40px 50px 40px 280px
}

@media screen and (min-width: 901px) {
    .about-info.no-image {
        margin-left: 0;
        padding: 40px 50px 40px 50px
    }
}

.about-info .h2 {
    margin: 0 0 24px 0
}

.tags-nav {
    margin-top: 50px;
    font-size: 14px;
    margin-bottom: -5px
}

.tags-nav li {
    display: inline-block;
    vertical-align: top;
    margin-right: 22px;
    margin-bottom: 5px;
    color: #a4a5a5;
    font-weight: 600;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.tags-nav li.active {
    color: #1c9673
}

.tags-nav li:hover {
    color: #1c9673
}

.event-item {
    position: relative;
    height: 260px;
    margin-bottom: 24px;
    overflow: hidden;
    border-radius: 4px
}

.event-item.height_big {
    height: 544px
}

.event-item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border: 0;
    height: 100%;
    padding: 25px 30px;
    color: #ffffff
}

.event-item a:hover .bg {
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2)
}

.event-item a:hover .link {
    border-color: transparent
}

.event-item .bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    border-radius: 4px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.event-item .bg:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: -o-linear-gradient(top, rgba(27, 29, 30, 0) 0%, #1b1d1e 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(27, 29, 30, 0)), to(#1b1d1e));
    background: linear-gradient(180deg, rgba(27, 29, 30, 0) 0%, #1b1d1e 100%)
}

.event-item .event-text {
    position: relative;
    z-index: 10;
    margin-top: auto
}

.event-item .label {
    position: absolute;
    left: 30px;
    top: 25px;
    font-size: 12px;
    font-weight: 600;
    padding: 0 12px;
    height: 30px;
    line-height: 30px;
    border-radius: 2px;
    background: #b41937
}

.event-item .label.-blue {
    background: #1b75bc
}

.event-item .label.-red {
    background: #ff4125
}

.event-item .label.-yellow {
    background: #ffcb05
}

.event-item .label .until {
    position: absolute;
    left: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    white-space: nowrap;
    margin-left: 15px
}

.event-item .event-text {
    font-size: 14px
}

.event-item .event-text .h2 {
    margin: 0 0 12px
}

.event-item .event-text .link {
    display: inline-block;
    margin-top: 20px;
    border-bottom: 1px solid #fff;
    -webkit-transition: border 0.15s;
    -o-transition: border 0.15s;
    transition: border 0.15s
}

.perfect-section {
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    color: #ffffff
}

.perfect-section .section-title {
    margin-bottom: 30px
}

.perfect-section .btn {
    min-width: 240px;
    margin-top: 40px
}

.callback-content {
    padding-top: 25px
}

.callback-content .form {
    margin-right: -250px;
    border: 1px solid #e8e8e8;
    border-radius: 4px;
    padding: 50px 80px;
    padding-right: 250px;
    height: 100%
}

.callback-content .form form {
    max-width: 330px
}

.callback-img {
    position: relative
}

.callback-img .img {
    position: relative
}

.callback-img .img:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 150px;
    background: -o-linear-gradient(bottom, rgba(27, 29, 30, 0.5) 0%, rgba(27, 29, 30, 0) 100%);
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(27, 29, 30, 0.5)), to(rgba(27, 29, 30, 0)));
    background: linear-gradient(0deg, rgba(27, 29, 30, 0.5) 0%, rgba(27, 29, 30, 0) 100%);
    border-radius: 0 0 4px 4px
}

.callback-img .img img {
    width: 100%;
    border-radius: 4px
}

.callback-img .author {
    padding: 0 40px 25px;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    color: #ffffff;
    font-size: 12px;
    z-index: 10
}

.callback-img .author .h5 {
    margin: 0 0 8px
}

.callback-img .author .text {
    color: #d1d2d2
}

form .row {
    margin-left: -10px;
    margin-right: -10px
}

form .row > div {
    padding-left: 10px;
    padding-right: 10px
}

form .msg {
    font-size: 12px;
    margin-top: 20px;
    color: #8d8e8e
}

form .btn {
    margin-top: 10px
}

.book-section {
    background-color: #fff;
    color: #2d3741;
    padding: 40px 0;
    width: 100%;
}

.book-section .h2 {
    margin: 0
}

.book-section .h2 + .text-small {
    color: #8d8e8e;
    margin-top: 5px
}

.book-section + section {
    border-top: 1px solid #e8e8e8
}

.book-section .btn {
    margin-top: 0;
    height: 52px
}

.promo-book .h2 {
    margin: 0
}

.promo-book .h2 + .text-small {
    color: #8d8e8e;
    margin-top: 8px
}

.fullscreen .fancybox-bg {
    background: #fff
}

.fullscreen .fancybox-close-small, .fullscreen .fancybox-button--close {
    display: none !important
}

.pop_menu {
    display: none;
    width: 100%;
    height: 100%;
    background-color: #fff !important;
    color: #2d3741
}

.pop_menu .fancybox-close-small, .pop_menu .fancybox-button--close {
    display: none !important
}

.pop_menu .logo, .pop_menu .header-contacts {
    margin-bottom: 70px
}

.pop_menu .header-contacts a {
    color: #2d3741
}

.pop_menu .header-contacts .free-call {
    color: #2d3741
}

.pop_menu .footer-item .h5 a {
    color: #2d3741;
    opacity: 1
}

.pop_menu .footer-item .h6 a {
    font-weight: 600;
    color: #2d3741;
    opacity: 0.8
}

.pop_menu .footer-item a {
    color: #2d3741;
    opacity: 0.6
}

.pop_menu .wrap {
    -webkit-box-sizing: content-box !important;
    box-sizing: content-box !important
}

.pop_menu .footer-bottom a {
    color: #1c9673
}

.pop_menu .footer-bottom .social a {
    background-color: #e8e8e8;
    color: #8d8e8e
}

.pop_menu .footer-bottom .social a:hover {
    background-color: #1c9673;
    color: #ffffff
}

.tabs {
    font-size: 20px;
    text-align: center;
    margin-bottom: 40px
}

.tabs.-small {
    font-size: 16px
}

.tabs ul {
    white-space: nowrap;
    overflow: auto
}

.tabs li {
    display: inline-block;
    vertical-align: top;
    margin-right: 28px
}

.tabs li:last-child {
    margin-right: 0
}

.tabs li a.is-selected, .tabs li.active a {
    color: #1c9673
}

.tabs li a {
    font-weight: 600;
    color: #8d8e8e;
    border: 0
}

.tabs li a:hover {
    color: #1c9673
}

.contacts_block {
    margin-top: 150px;
    text-align: center
}

.contacts-item {
    margin-bottom: 50px
}

.contacts-item address a {
    font-size: 42px;
    color: #2d3741;
    font-weight: 600;
    border: 0;
    line-height: 1.2
}

.contacts-item address a:hover {
    color: #1c9673
}

.contacts-item .link {
    display: inline-block;
    vertical-align: top;
    font-weight: 600;
    margin-top: 12px
}

.social.social-big a {
    width: 42px;
    height: 42px;
    background: #f3f3f3;
    font-size: 20px;
    margin-right: 30px;
    line-height: 40px;
    vertical-align: middle
}

.social.social-big .ya-share2 ul, .social.social-big .ya-share2 li {
    padding: 0;
    line-height: none
}

.social.social-big .ya-share2 li .ya-share2__badge {
    vertical-align: middle
}

.social.social-big .ya-share2 li:before {
    display: none
}

.social.social-big .ya-share2 li + li {
    margin-left: 30px
}

.contacts-section {
    background-position: 50% 50%;
    background-size: cover;
    background-repeat: no-repeat
}

.route-section {
    min-height: 900px
}

.route-wrap .bg {
    margin-top: 50px;
    height: 400px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain
}

.route-info {
    max-width: 350px;
    margin-top: 70px
}

.route-info .acc-item.active .acc-title .icon-circle .circle-path-2 {
    -webkit-animation: dash linear 0.5s both;
    animation: dash linear 0.5s both
}

.route-info .acc-item .icon-circle {
    left: -55px
}

.route-info .acc-item .text-small {
    font-size: 12px;
    margin-bottom: 5px;
    color: #8d8e8e
}

.route-info .acc-item .acc-title .title {
    color: #1c9673
}

.route-info .acc-item .acc-title .title span {
    background: transparent
}

.route-info .acc-item .acc-title .title:after {
    content: none
}

.route-info .acc-item .hidden a {
    color: #8d8e8e;
    border-style: dashed;
    font-family: 'Montserrat Alternates', serif
}

.gallery-section {
    padding: 0;
    position: relative
}

.gallery-section .slider-standart .swiper-slide {
    height: 810px;
    max-height: 100vh
}

.gallery-section .slider-standart .swiper-slide .swiper-lazy {
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover
}

.gallery-slider {
    position: relative
}

.gallery-slider:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    height: 150px;
    background: -o-linear-gradient(bottom, #1b1d1e 0%, rgba(27, 29, 30, 0) 100%);
    background: -webkit-gradient(linear, left bottom, left top, from(#1b1d1e), to(rgba(27, 29, 30, 0)));
    background: linear-gradient(0deg, #1b1d1e 0%, rgba(27, 29, 30, 0) 100%);
    opacity: 0.5;
    z-index: 10
}

.gallery-slider .swiper-slide {
    height: 810px;
    max-height: 100vh
}

.gallery-slider .swiper-slide .swiper-lazy {
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover
}

.gallery-thumbs {
    position: absolute !important;
    left: 0;
    width: 100%;
    bottom: 24px
}

.gallery-thumbs .swiper-wrapper {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.gallery-thumbs .swiper-slide {
    height: 68px;
    width: 120px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    cursor: pointer
}

.gallery-thumbs .swiper-slide:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: -o-linear-gradient(bottom, rgba(31, 31, 31, 0.6), rgba(31, 31, 31, 0.6));
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(31, 31, 31, 0.6)), to(rgba(31, 31, 31, 0.6)));
    background: linear-gradient(0deg, rgba(31, 31, 31, 0.6), rgba(31, 31, 31, 0.6));
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.gallery-thumbs .swiper-slide.swiper-slide-thumb-active:before {
    opacity: 1;
    visibility: visible
}

.gallery-thumbs .swiper-slide.swiper-slide-thumb-active .count {
    opacity: 1;
    visibility: visible
}

.gallery-thumbs .swiper-slide:hover:before {
    opacity: 1;
    visibility: visible
}

.gallery-thumbs .swiper-slide:hover .count {
    opacity: 1;
    visibility: visible
}

.gallery-thumbs .swiper-slide .count {
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%;
    text-align: center;
    color: #bbbebf;
    font-weight: 600;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.gallery-thumbs .swiper-slide .count .current {
    font-size: 24px;
    color: #ffffff
}

.promo-content .form {
    position: relative;
    margin-top: 70px;
    margin-left: 30px;
    margin-right: -250px;
    border: 1px solid #e8e8e8;
    border-radius: 4px;
    padding: 50px 80px;
    padding-right: 80px;
    padding-right: 250px
}

.promo-content .form form {
    max-width: 330px
}

.promo-content .form .section-title {
    position: absolute;
    left: -30px;
    top: -23px
}

.link-back {
    border: 0
}

.link-back:hover .icon-svg {
    -webkit-transform: translateX(-5px) scaleX(-1);
    -ms-transform: translateX(-5px) scaleX(-1);
    transform: translateX(-5px) scaleX(-1)
}

.link-back .icon-svg {
    font-size: 8px;
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    transform: scaleX(-1);
    margin-right: 5px
}

.page-title .link-back {
    display: inline-block;
    margin-bottom: 18px
}

.promo-dates {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 20px;
    font-weight: bold
}

.promo-dates > div {
    margin-right: 24px
}

.promo-dates > div:last-child {
    margin-right: 0
}

.promo-dates .dates {
    color: #d1d2d2
}

.promo-dates .until {
    color: #ff4125
}

.promo-book {
    margin-top: 35px;
    border-bottom: 1px solid #e8e8e8;
    padding-bottom: 24px;
    margin-bottom: 30px
}

.promo-section .form-border {
    margin-top: 100px
}

.form-border {
    position: relative;
    border: 1px solid #e8e8e8;
    border-radius: 4px;
    margin-left: 30px;
    padding: 50px 80px
}

.form-border .section-title {
    position: absolute;
    left: -30px;
    top: -23px;
    background: #fff;
    padding-right: 2px
}

.form-border .tabs {
    text-align: left;
    margin-bottom: 24px
}

.first-screen-slider {
    position: absolute !important;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0
}

.first-screen-slider.init-delay {
    display: none
}

.first-screen-slider .swiper-slide:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 300px;
    background: -o-linear-gradient(top, rgba(27, 29, 30, 0) 0%, #1b1d1e 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(27, 29, 30, 0)), to(#1b1d1e));
    background: linear-gradient(180deg, rgba(27, 29, 30, 0) 0%, #1b1d1e 100%);
    opacity: 0.7;
    z-index: 10
}

.first-screen-slider .swiper-lazy {
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover
}

.first-screen-slider + .wrap {
    color: #ffffff
}

.first-screen-slider + .wrap .page-title {
    position: relative;
    z-index: 110
}

.first-screen-slider .first-screen-wrap {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    text-align: center;
    color: #ffffff
}

.first-screen-slider .swiper-pagination {
    display: none
}

.page-switcher {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    z-index: 110;
    border: 0
}

a.page-switcher:after {
    height: 100%;
    width: 450px;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background: transparent;
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    content: ''
}

.tile-slider {
    overflow: visible !important
}

.tile-slider .swiper-slide {
    width: 515px
}

.tile-slider .swiper-slide.-long {
    width: 920px
}

.tile-slider .row {
    margin-left: -6px;
    margin-right: -6px
}

.tile-slider .row > div {
    padding-left: 6px;
    padding-right: 6px
}

.tile-content .row {
    margin-left: -6px;
    margin-right: -6px
}

.tile-content .row > div {
    padding-left: 6px;
    padding-right: 6px
}

.tile-item {
    height: calc((100vh - 264px) / 2 - 6px);
    margin-bottom: 12px;
    position: relative;
    color: #ffffff;
    border-radius: 4px;
    overflow: hidden
}

.tile-item.height_big {
    height: calc(100vh - 264px)
}

.tile-item.height_small {
    height: calc((100vh - 264px) / 9);
    min-height: 78px
}

.tile-item.height_small .descr {
    padding-bottom: 23px
}

.tile-item a {
    position: relative;
    display: block;
    border: 0;
    height: 100%;
    color: inherit;
    border-radius: 4px;
    overflow: hidden
}

.tile-item a:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: -o-linear-gradient(top, rgba(31, 31, 31, 0) 59.6%, rgba(31, 31, 31, 0.6) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(59.6%, rgba(31, 31, 31, 0)), to(rgba(31, 31, 31, 0.6)));
    background: linear-gradient(180deg, rgba(31, 31, 31, 0) 59.6%, rgba(31, 31, 31, 0.6) 100%);
    z-index: 10
}

.tile-item a:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: -o-linear-gradient(bottom, rgba(31, 31, 31, 0.8), rgba(31, 31, 31, 0.8));
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(31, 31, 31, 0.8)), to(rgba(31, 31, 31, 0.8)));
    background: linear-gradient(0deg, rgba(31, 31, 31, 0.8), rgba(31, 31, 31, 0.8));
    z-index: 5;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s
}

.tile-item a:hover:after {
    opacity: 1;
    visibility: visible
}

.tile-item .bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    border-radius: 4px
}

.tile-item .descr {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 0 32px 24px;
    z-index: 10
}

.tile-item .descr .h1 {
    margin: 0 0 12px
}

.tile-item .title {
    font-size: 28px
}

.tile-item .descr .h1:last-child {
    margin-bottom: 0
}

.tile-item .descr .text + .text {
    margin-top: 10px
}

.tile-item .descr .text .icon-svg {
    margin-right: 5px
}

.tile-item .descr .realty-options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.tile-item .descr .realty-options li {
    margin-right: 24px
}

.tile-item .descr .realty-options li span {
    font-size: 24px
}

.tile-item .descr .realty-options li:last-child {
    margin-right: 0
}

.rooms-section .section-title {
    margin-bottom: 30px
}

.rooms-filters-js.active .amount-control input[type='radio'] + label:before {
    opacity: 1;
    visibility: visible
}

.rooms-filters-js .amount-control input[type='radio'] + label:before {
    opacity: 0;
    visibility: hidden
}

.rooms-filters {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative
}

.amount-control {
    position: relative;
    font-size: 20px;
    font-weight: 600;
    color: #8d8e8e;
    line-height: 1.2
}

.amount-control:last-child {
    margin-right: 0
}

.amount-control:last-child input[type='radio'] + label:before {
    content: none
}

.amount-control ~ .switcher {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    width: 42px;
    height: 20px;
    border: 1px solid #e8e8e8;
    border-radius: 30px;
    margin-left: 12px;
    margin-right: 12px;
    top: 3px
}

.amount-control:first-child input[type='radio'] + label:before {
    left: 100%;
    margin-left: 18px;
    top: 7px;
    -webkit-transform: translateX(20px);
    -ms-transform: translateX(20px);
    transform: translateX(20px)
}

.amount-control:first-child input[type='radio']:checked + label:before {
    -webkit-transform: translateX(0px);
    -ms-transform: translateX(0px);
    transform: translateX(0px)
}

.amount-control input[type='radio'] + label {
    cursor: pointer;
    line-height: 1.2;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.amount-control input[type='radio'] + label:hover {
    color: #1c9673
}

.amount-control input[type='radio'] {
    position: absolute;
    opacity: 0
}

.amount-control input[type='radio'] + label:before {
    content: '';
    position: absolute;
    top: 0px;
    left: 0px;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: #1c9673;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s
}

.amount-control input[type='radio']:checked + label {
    color: #1c9673
}

.amount-control.-white input[type='radio'] + label:before {
    background: #fff
}

.amount-control.-white input[type='radio']:checked + label {
    color: white
}

.amount-control.-white label {
    color: rgba(255, 255, 255, 0.5)
}

.amount-control.-white label:hover {
    color: #ffffff !important
}

.rooms-pagination, .nav-slider {
    margin-top: 20px
}

.rooms-pagination ul, .nav-slider ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    white-space: nowrap;
    overflow: auto
}

.rooms-pagination li, .nav-slider li {
    cursor: pointer;
    margin-right: 32px;
    font-weight: 600;
    color: #a4a5a5;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: color 0.15s;
    -o-transition: color 0.15s;
    transition: color 0.15s;
    width: auto
}

.rooms-pagination li:hover, .nav-slider li:hover {
    color: #1c9673
}

.rooms-pagination li a, .nav-slider li a {
    text-decoration: none;
    color: #a4a5a5;
    border: 0
}

.rooms-pagination li a:hover, .nav-slider li a:hover {
    color: #1c9673
}

.rooms-pagination li.active, .nav-slider li.active, .nav-slider li a.is-selected {
    color: #1c9673 !important
}

.rooms-pagination li.active a, .nav-slider li.active a {
    color: #1c9673 !important
}

.rooms-pagination li.swiper-slide-thumb-active, .nav-slider li.swiper-slide-thumb-active {
    color: #1c9673 !important
}

.rooms-pagination li.disabled, .nav-slider li.disabled {
    color: #8d8e8e !important;
    opacity: 0.4;
    cursor: text
}

.rooms-pagination li:last-child, .nav-slider li:last-child {
    margin-right: 0
}

.rooms-pagination.swiper-container-initialized ul, .nav-slider.swiper-container-initialized ul {
    overflow: visible
}

.rooms-pagination .swiper-wrapper, .nav-slider .swiper-wrapper {
    overflow: initial;
    white-space: normal
}

.rooms-pagination .swiper-wrapper .swiper-slide, .nav-slider .swiper-wrapper .swiper-slide {
    width: auto;
    margin-right: 0
}

.nav-slider {
    margin-top: 0
}

.room-type-slider {
    margin-top: 40px
}

.room-type-slider.-overflow {
    overflow: hidden !important
}

.room-type-slider .swiper-pagination-simple {
    display: none
}

.rooms-info {
    border: 1px solid #e8e8e8;
    border-radius: 4px;
    padding: 40px;
    background: #fff;
    position: relative;
    z-index: 10
}

.rooms-info .section-title {
    margin-bottom: 12px
}

.rooms-info .text-small {
    color: #8d8e8e;
    margin-bottom: 12px
}

.rooms-info .btn {
    margin-top: 30px
}

.rooms-info .btn + .btn {
    margin-top: 0
}

.rooms-info .btn-white {
    border: 0;
    -webkit-box-shadow: none !important;
    box-shadow: none !important
}

.rooms-info--content.is-hidden {
    display: none
}

.room-size span {
    font-size: 30px;
    display: inline-block;
    line-height: 1
}

.room-residents {
    font-size: 14px
}

.room-residents li {
    font-weight: 600;
    color: #a4a5a5
}

.room-residents li.active {
    color: #1c9673
}

.room-benefits {
    margin-top: 20px
}

.room-benefits ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.room-benefits li {
    position: relative;
    margin-bottom: 10px;
    color: #8d8e8e;
    margin-right: 10px
}

.room-benefits li:last-child {
    margin-right: 0
}

.room-benefits li:hover .text {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.room-benefits li .icon {
    display: block;
    margin-right: 10px;
    width: 20px;
    height: 20px;
    line-height: 20px
}

.room-benefits li .icon img {
    vertical-align: middle;
    max-height: 100%
}

.room-benefits li .text {
    position: absolute;
    left: -10px;
    bottom: 100%;
    margin-bottom: 10px;
    opacity: 0;
    visibility: hidden;
    background: #fff;
    height: 30px;
    line-height: 30px;
    padding: 0 12px;
    -webkit-box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
    color: #2d3741;
    white-space: nowrap;
    font-size: 14px;
    border-radius: 4px;
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px);
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    z-index: 100
}

.room-benefits li .text:before {
    content: '';
    border: 5px solid transparent;
    border-top: 5px solid #fff;
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    top: 100%;
    left: 15px
}

.room-price {
    margin-top: 12px
}

.room-price .text-small {
    margin-bottom: 0
}

.room-price + .room-price {
    margin-top: 15px
}

.day_price {
    color: #1c9673;
    font-weight: 600;
    line-height: 1.2
}

.day_price span {
    font-size: 28px
}

.week_price {
    font-size: 10px;
    opacity: 0.5;
    font-weight: 600
}

.week_price span {
    font-size: 14px
}

.room-slider {
    margin-left: -160px !important
}

.room-slider .swiper-slide .swiper-lazy {
    height: 670px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    border-radius: 4px
}

.room-slider .swiper-btns {
    position: absolute;
    right: 50px;
    bottom: 50px
}

.room-slider .swiper-btns .swiper-btn {
    position: relative;
    display: inline-block;
    vertical-align: top;
    left: 0;
    right: 0;
    margin: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    margin-left: 36px
}

.room-slider .swiper-btns .swiper-btn:first-child {
    margin-left: 0
}

.room-slider .swiper-btns .swiper-btn .icon-svg {
    margin-top: -2px
}

.room-type-slider {
    overflow: visible !important
}

.slider-msg {
    text-align: center;
    opacity: 0.4;
    font-size: 12px;
    margin-top: 30px
}

.slider-msg .icon-svg {
    margin-top: 0;
    margin-right: 5px;
    font-size: 16px
}

.room-type-slider .rooms-info {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s
}

.room-type-slider .swiper-slide {
    opacity: 0.2;
    -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, -webkit-transform 0.5s;
    -o-transition: opacity 0.5s, transform 0.5s;
    transition: opacity 0.5s, transform 0.5s;
    transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
    -webkit-transform: scale(0.6);
    -ms-transform: scale(0.6);
    transform: scale(0.6);
    -webkit-transform-origin: 0% 50%;
    -ms-transform-origin: 0% 50%;
    transform-origin: 0% 50%
}

.room-type-slider .room-slider {
    -webkit-transform: translateX(-18%);
    -ms-transform: translateX(-18%);
    transform: translateX(-18%);
    -webkit-transition: -webkit-transform 0.5s;
    transition: -webkit-transform 0.5s;
    -o-transition: transform 0.5s;
    transition: transform 0.5s;
    transition: transform 0.5s, -webkit-transform 0.5s
}

.room-type-slider .swiper-slide-active {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.room-type-slider .swiper-slide-active .rooms-info {
    opacity: 1;
    visibility: visible
}

.room-type-slider .swiper-slide-active .room-slider {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

.room-type-slider .menu-slider .swiper-slide {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.room-type-slider .menu-slider .swiper-slide .rooms-info {
    opacity: 1;
    visibility: visible
}

.room-type-slider .rooms-current-count {
    display: none
}

.room-type-slider.-design2 .rooms-info {
    padding: 60px 0 60px 90px
}

.room-type-slider.-design2 .rooms-info .h1 {
    font-size: 42px
}

.room-type-slider.-design2 .rooms-info .inner {
    max-width: 280px;
    min-height: 530px
}

.room-type-slider.-design2 .rooms-info .btn + .text-small {
    font-size: 12px;
    margin-bottom: 0
}

.room-type-slider.-design2 .swiper-container {
    position: absolute;
    right: 0;
    top: 60px;
    height: calc(100% - 120px);
    width: calc(100% - 440px);
    z-index: 100
}

.room-type-slider.-design2 .swiper-container .swiper-slide .swiper-lazy {
    height: 100%
}

.acc-item {
    position: relative;
    margin-bottom: 24px
}

.acc-item:last-child {
    margin-bottom: 0
}

.acc-item.active .acc-title {
    color: #1c9673
}

.acc-item.active .acc-title .icon-circle .circle-dot {
    fill: #1c9673
}

.acc-item.active .acc-title .icon-circle .circle-path-1 {
    stroke-opacity: 1
}

.acc-item.active .acc-title .icon-circle .circle-path-2 {
    -webkit-animation: dash linear 5.6s both;
    animation: dash linear 5.6s both
}

.acc-item.active .acc-title .title:after {
    visibility: visible;
    width: 100%
}

.acc-item .acc-title {
    position: relative;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: rgba(0, 0, 0, 0.3);
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.acc-item .acc-title:hover {
    opacity: 1;
    color: #1c9673
}

.acc-item .acc-title:hover .icon-circle .circle-dot {
    fill: #1c9673
}

.acc-item .acc-title .title {
    position: relative;
    overflow: hidden
}

.acc-item .acc-title .title span {
    background: #fff;
    z-index: 10;
    padding-right: 24px
}

.acc-item .acc-title .title:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 10px;
    height: 1px;
    width: 0%;
    background: -o-linear-gradient(315deg, #1c9673 0%, rgba(28, 150, 115, 0) 100%);
    background: linear-gradient(135deg, #1c9673 0%, rgba(28, 150, 115, 0) 100%);
    z-index: -1;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    visibility: hidden;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.acc-item .hidden {
    font-size: 14px;
    padding-top: 20px;
    display: none
}

.icon-circle {
    width: 30px;
    height: 30px;
    background: #fff;
    border-radius: 50%;
    position: absolute;
    left: -96px;
    top: -3px;
    z-index: 10
}

.icon-circle:before {
    content: '';
    height: 6px;
    width: 10px;
    position: absolute;
    bottom: 100%;
    left: 50%;
    margin-bottom: 1px;
    margin-left: -5px;
    background: #fff
}

.icon-circle:after {
    content: '';
    height: 6px;
    width: 10px;
    position: absolute;
    top: 100%;
    left: 50%;
    margin-top: 1px;
    margin-left: -5px;
    background: #fff
}

.icon-circle svg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

.icon-circle .circle-dot {
    fill: #e8e8e8;
    -webkit-transition: fill 0.15s;
    -o-transition: fill 0.15s;
    transition: fill 0.15s
}

.icon-circle .circle-path-1 {
    stroke-opacity: 0;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.icon-circle .circle-path-2 {
    stroke-dasharray: 100;
    stroke-dashoffset: -100
}

.ben-slider {
    -webkit-box-shadow: 0px 4px 32px rgba(31, 31, 31, 0.15);
    box-shadow: 0px 4px 32px rgba(31, 31, 31, 0.15);
    border-radius: 4px
}

.ben-slider .swiper-slide .swiper-lazy {
    height: 610px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    border-radius: 4px
}

.benefits-content .form-border {
    border-right: 0;
    border-radius: 4px 0 0 4px
}

@-webkit-keyframes dash {
    to {
        stroke-dashoffset: -200
    }
}

@keyframes dash {
    to {
        stroke-dashoffset: -200
    }
}

.section-404 {
    background: url(../img/bg/404.jpg) no-repeat 50% 100%/cover
}

.section-404 .first-screen-wrap {
    padding-bottom: 70px
}

.section-404 .screen-bottom {
    width: 100%;
    max-width: 320px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    color: #ffffff;
    font-size: 18px;
    font-weight: 600
}

.section-404 .screen-bottom .text {
    line-height: 1.2;
    margin-bottom: 12px
}

.section-404 .screen-bottom .btn {
    margin-top: 8px
}

.features-section {
    padding-bottom: 0
}

.finish-main-text {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    text-align: center
}

.feat-content > .row {
    margin-left: -26px;
    margin-right: -26px
}

.feat-content > .row > div {
    padding-left: 26px;
    padding-right: 26px
}

.feat-content:not(.no-nth) > .row > div:nth-of-type(2n+2) .feat-item {
    margin-top: 40px
}

.feat-item {
    font-size: 12px;
    margin-bottom: 40px
}

.feat-item .img img {
    width: 100%;
    border-radius: 4px
}

.feat-item .h4 {
    color: #1c9673;
    margin: 24px 0 12px
}

.offer-carousel, .nav-bottom {
    overflow: hidden
}

.offer-carousel .swiper-btns, .nav-bottom .swiper-btns {
    display: inline-block;
    vertical-align: top;
    position: relative;
    margin-top: 70px;
    margin-bottom: 30px
}

.offer-carousel .swiper-btns:before, .nav-bottom .swiper-btns:before {
    content: '';
    width: 1500px;
    height: 1px;
    background: #e8e8e8;
    position: absolute;
    left: 100%;
    top: 50%;
    margin-left: 40px
}

.offer-carousel .swiper-btns .swiper-btn, .nav-bottom .swiper-btns .swiper-btn {
    display: inline-block;
    vertical-align: top;
    position: relative;
    left: 0;
    top: 0;
    right: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    margin: 0 20px
}

.offer-carousel .swiper-pagination, .nav-bottom .swiper-pagination {
    display: none
}

.realty-item a {
    display: block;
    border: 0;
    color: #2d3741
}

.realty-item a:hover .h3 {
    color: #1c9673
}

.realty-item .img {
    margin-bottom: 50px
}

.realty-item .img img {
    width: 100%
}

.realty-item .h3 {
    margin: 0 0 12px;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.realty-item .realty-options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 12px;
    margin-bottom: 12px
}

.realty-item .realty-options li {
    margin-right: 30px
}

.realty-item .realty-options li:last-child {
    margin-right: 0
}

.realty-item .realty-options li span {
    font-size: 16px
}

.realty-item .full_price {
    color: #1c9673;
    font-size: 12px;
    font-weight: 600
}

.realty-item .full_price span {
    font-size: 18px
}

.realty-item .part_price {
    opacity: 0.5;
    font-size: 10px;
    font-weight: 600
}

.realty-item .part_price span {
    font-size: 14px
}

.event-filters .tabs {
    text-align: left
}

.event-filters .rooms-filters {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex
}

.event-article-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-bottom: 1px solid #e8e8e8;
    padding: 24px 0;
    margin-top: 30px;
    margin-bottom: 30px
}

.event-article-info .btn {
    width: 280px;
    margin-left: 40px
}

.event-options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.event-options li {
    margin-right: 40px
}

.event-options li:last-child {
    margin-right: 0
}

.event-options li .h4 {
    margin: 0 0 3px
}

.event-options li .text-small {
    font-size: 12px;
    color: #8d8e8e
}

.event-options + .event-info-right {
    margin-left: 50px
}

.event-info-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.event-info-right li {
    margin-left: 20px
}

.event-info-right li:first-child {
    margin-left: 0
}

.event-info-right li a {
    font-size: 20px;
    border: 0;
    color: #8d8e8e
}

.event-info-right li a:hover {
    color: #1c9673
}

.event-likes {
    border: 0;
    white-space: nowrap
}

.event-likes:hover .icon-svg {
    stroke: #ff4125
}

.event-likes.active .icon-svg {
    color: #ff4125;
    stroke: #ff4125;
    -webkit-animation: like 0.3s;
    animation: like 0.3s
}

.event-likes .count {
    font-size: 18px;
    color: #2d3741
}

.event-likes[data-like='0'] .count {
    display: none
}

.event-likes .icon-svg {
    stroke: #8d8e8e;
    stroke-width: 1px;
    color: #fff;
    margin-top: -4px;
    font-size: 22px;
    margin-right: 5px
}

@-webkit-keyframes like {
    50% {
        -webkit-transform: scale(1.6);
        transform: scale(1.6)
    }
}

@keyframes like {
    50% {
        -webkit-transform: scale(1.6);
        transform: scale(1.6)
    }
}

.plan-section .section-title {
    position: relative;
    z-index: 10
}

.plan-content {
    position: relative
}

.plan-item {
    position: relative;
    overflow: hidden
}

.plan-item:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    height: 80px;
    background: -o-linear-gradient(top, #fff 0%, #fff 10%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(10%, #fff), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(to bottom, #fff 0%, #fff 10%, rgba(255, 255, 255, 0) 100%);
    z-index: 10
}

.plan-item:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    height: 80px;
    background: -o-linear-gradient(bottom, #fff 0%, #fff 10%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-gradient(linear, left bottom, left top, from(#fff), color-stop(10%, #fff), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(to top, #fff 0%, #fff 10%, rgba(255, 255, 255, 0) 100%);
    z-index: 10
}

.plan-interact {
    display: inline-block;
    position: relative
}

.plan-item img {
    height: 700px;
    max-width: none
}

.plan-pins {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

.plan-pins-item {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50% 50%;
    z-index: 10;
    cursor: pointer
}

.plan-pins-item:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    border-radius: 50%;
    z-index: 5;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.plan-pins-item:after {
    content: '';
    position: absolute;
    right: 50%;
    top: 50%;
    width: 0;
    height: 2px;
    background-color: #fff;
    -webkit-transform-origin: 100% 100%;
    -ms-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -webkit-transform: rotate(8deg);
    -ms-transform: rotate(8deg);
    transform: rotate(8deg);
    -webkit-transform: rotate(calc(4deg + (4deg * var(--zoom))));
    -ms-transform: rotate(calc(4deg + (4deg * var(--zoom))));
    transform: rotate(calc(4deg + (4deg * var(--zoom))));
    margin-top: -1px;
    visibility: hidden;
    -webkit-transition: 0.3s 0s;
    -o-transition: 0.3s 0s;
    transition: 0.3s 0s;
    z-index: 10
}

.plan-pins-item.-right:after {
    right: auto;
    left: 50%;
    -webkit-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: rotate(-8deg);
    -ms-transform: rotate(-8deg);
    transform: rotate(-8deg);
    -webkit-transform: rotate(calc(-4deg - (4deg * var(--zoom))));
    -ms-transform: rotate(calc(-4deg - (4deg * var(--zoom))));
    transform: rotate(calc(-4deg - (4deg * var(--zoom))))
}

.plan-pins-item.is-active {
    z-index: 50
}

.plan-pins-item.is-active:before {
    -webkit-transform: scale(0.25);
    -ms-transform: scale(0.25);
    transform: scale(0.25);
    opacity: 1;
    visibility: visible
}

.plan-pins-item.is-active:after {
    width: 95px;
    visibility: visible;
    -webkit-transition-delay: 0.1s;
    -o-transition-delay: 0.1s;
    transition-delay: 0.1s
}

.plan-pins-item.-apartment {
    background-image: url(../img/icons/pins/apartment.svg)
}

.plan-pins-item.-bicycle {
    background-image: url(../img/icons/pins/bicycle.svg)
}

.plan-pins-item.-bus-station {
    background-image: url(../img/icons/pins/bus-station.svg)
}

.plan-pins-item.-kindergarten {
    background-image: url(../img/icons/pins/kindergarten.svg)
}

.plan-pins-item.-office {
    background-image: url(../img/icons/pins/office.svg)
}

.plan-pins-item.-park-family {
    background-image: url(../img/icons/pins/park-family.svg)
}

.plan-pins-item.-park-hotel {
    background-image: url(../img/icons/pins/park-hotel.svg)
}

.plan-pins-item.-playground {
    background-image: url(../img/icons/pins/playground.svg)
}

.plan-pins-item.-rent {
    background-image: url(../img/icons/pins/rent.svg)
}

.plan-pins-item.-restaurant {
    background-image: url(../img/icons/pins/restaurant.svg)
}

.plan-pins-item.-rope-park {
    background-image: url(../img/icons/pins/rope-park.svg)
}

.plan-pins-item.-school {
    background-image: url(../img/icons/pins/school.svg)
}

.plan-pins-item.-skate-park {
    background-image: url(../img/icons/pins/skate-park.svg)
}

.plan-pins-item.-ski {
    background-image: url(../img/icons/pins/ski.svg)
}

.plan-pins-item.-summer-theatre {
    background-image: url(../img/icons/pins/summer-theatre.svg)
}

.plan-pins-item.-townhouse {
    background-image: url(../img/icons/pins/townhouse.svg)
}

.plan-pins-msg {
    width: 100%;
    max-width: 480px;
    top: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    padding: 30px 40px;
    background-color: #fff;
    -webkit-box-shadow: 0px 4px 32px rgba(31, 31, 31, 0.15);
    box-shadow: 0px 4px 32px rgba(31, 31, 31, 0.15);
    border-radius: 4px;
    -webkit-transform: translate(-100%, -100%);
    -ms-transform: translate(-100%, -100%);
    transform: translate(-100%, -100%);
    margin-left: -80px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    z-index: 100
}

.plan-pins-msg.-right {
    margin-left: 100px;
    margin-left: calc(80px + 20px * var(--zoom));
    -webkit-transform: translate(0%, -100%);
    -ms-transform: translate(0%, -100%);
    transform: translate(0%, -100%)
}

.plan-pins-msg.is-visible {
    opacity: 1;
    visibility: visible
}

.plan-pins-msg .h2 {
    margin: 0 0 20px;
    text-align: center
}

[data-interact] {
    -ms-touch-action: none;
    touch-action: none
}

[data-interact].is-animate {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.interact-btns {
    width: 40px;
    position: absolute;
    right: 40px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 100
}

.btn-interact {
    position: relative;
    width: 100%;
    height: 40px;
    border-radius: 50%;
    -webkit-box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.25);
    box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.25);
    border: 0;
    margin: 8px 0;
    background: #fff
}

.btn-interact .icon-plus {
    width: 10px;
    height: 10px;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.btn-interact .icon-plus:before {
    content: '';
    width: 2px;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    background: #2d3741;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: background 0.15s;
    -o-transition: background 0.15s;
    transition: background 0.15s
}

.btn-interact .icon-plus:after {
    content: '';
    width: 100%;
    height: 2px;
    position: absolute;
    left: 50%;
    top: 50%;
    background: #2d3741;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: background 0.15s;
    -o-transition: background 0.15s;
    transition: background 0.15s
}

.btn-interact .icon-minus {
    width: 10px;
    height: 10px;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.btn-interact .icon-minus:after {
    content: '';
    width: 100%;
    height: 2px;
    position: absolute;
    left: 50%;
    top: 50%;
    background: #2d3741;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: background 0.15s;
    -o-transition: background 0.15s;
    transition: background 0.15s
}

.plan-tabs {
    min-height: 40px
}

.plan-tabs ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.plan-tabs li {
    margin-right: 50px
}

.plan-tabs li:last-child {
    margin-right: 0
}

.plan-tabs a {
    display: block;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.2;
    border-style: dashed
}

.plan-tabs a.active {
    font-size: 32px;
    border-color: transparent;
    color: #2d3741
}

.plan-tabs-content > div {
    display: none
}

.plan-tabs-content > div:first-child {
    display: block
}

.procedure-item.active .top {
    opacity: 1;
    visibility: visible
}

.procedure-item.active .top .link {
    color: #1c9673
}

.procedure-item.active .top .link .icon-svg {
    color: #1c9673
}

.procedure-item > a, .procedure-item .store-item {
    position: relative;
    display: block;
    border: 0;
    color: #2d3741;
    padding: 65px 20px 30px
}

.procedure-item .store-item {
    padding-top: 20px
}

.procedure-item .store-item:hover .hidden, .procedure-item a:hover .hidden {
    opacity: 1;
    visibility: visible
}

.procedure-item .store-item:hover .top, .procedure-item a:hover .top {
    opacity: 1;
    visibility: visible
}

.procedure-item .img {
    margin-bottom: 16px
}

.procedure-item .img img {
    width: 100%;
    border-radius: 6px
}

.procedure-item .h3 {
    margin: 0 0 12px
}

.procedure-item .hidden {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    left: 0;
    width: 100%;
    top: 0%;
    min-height: 100%;
    background: #fff;
    padding: 65px 20px 30px;
    border-radius: 6px;
    border-color: #e8e8e8;
    -webkit-box-shadow: 0px 4px 32px rgba(31, 31, 31, 0.08), inset 0 0 0 1px #e8e8e8;
    box-shadow: 0px 4px 32px rgba(31, 31, 31, 0.08), inset 0 0 0 1px #e8e8e8;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    z-index: 10
}

.procedure-item .store-item .hidden {
    padding-top: 30px
}

.procedure-item .hidden .text-small {
    color: #8d8e8e
}

.procedure-item .hidden .text-small + .price_block {
    padding-top: 20px
}

.procedure-item .price_block {
    padding-top: 5px
}

.procedure-item .price {
    font-size: 12px;
    color: #1c9673;
    line-height: normal;
    font-weight: 600
}

.procedure-item .price strong {
    font-size: 18px;
    font-weight: 600
}

.procedure-item .time {
    font-size: 10px;
    opacity: 0.5;
    font-weight: 600
}

.procedure-item .time strong {
    font-size: 14px;
    font-weight: 600
}

.procedure-item .top {
    position: absolute;
    top: 30px;
    left: 0;
    width: 100%;
    text-align: center;
    font-size: 14px;
    z-index: 20;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s
}

.procedure-item .top .link {
    color: #8d8e8e
}

.procedure-item .top .link .icon-svg {
    margin-right: 3px;
    -webkit-transition: 0s;
    -o-transition: 0s;
    transition: 0s
}

.store-item--quantity {
    margin: 20px 0 0
}

.store-item--quantity input {
    margin: 0 5px;
    padding: 0
}

.btn-count {
    margin: 0 !important;
    -webkit-box-shadow: 0px 3px 24px rgba(182, 182, 182, 0.35);
    box-shadow: 0px 3px 24px rgba(182, 182, 182, 0.35);
    color: #288854;
    font-size: 24px;
    height: 52px;
    width: 52px;
    font-style: normal;
    cursor: pointer
}

.btn-count:hover {
    color: #fff;
    background: #288854
}

.store-item--quantity + .btn {
    margin-top: 10px
}

.digits-carousel {
    position: relative
}

.digits-carousel .swiper-slide {
    width: auto
}

.digits-carousel:after {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 132px;
    background: -o-linear-gradient(right, #fff 0%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-gradient(linear, right top, left top, from(#fff), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(270deg, #fff 0%, rgba(255, 255, 255, 0) 100%);
    z-index: 10;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.digits-carousel:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 132px;
    background: -o-linear-gradient(left, #fff 0%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-gradient(linear, left top, right top, from(#fff), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0) 100%);
    z-index: 10;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.digits-carousel.reach-beginning:before {
    opacity: 0;
    visibility: hidden
}

.digits-carousel.reach-end:after {
    opacity: 0;
    visibility: hidden
}

.digit-item {
    position: relative;
    padding-right: 75px
}

.digit-item .count {
    font-size: 36px;
    color: #1c9673;
    font-weight: 600;
    line-height: 1
}

.digit-item .count span {
    font-size: 244px;
    vertical-align: middle
}

.digit-item .descr {
    position: absolute;
    right: 0;
    bottom: 0;
    max-width: 400px;
    background: #fff;
    padding: 12px 16px 0;
    z-index: 10
}

.faq-items > .row {
    margin-left: -4px;
    margin-right: -4px
}

.faq-items > .row > div {
    padding-left: 4px;
    padding-right: 4px
}

.faq-item {
    position: relative;
    border: 1px solid #e8e8e8;
    border-radius: 4px;
    padding: 25px 0 25px 25px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin-bottom: 8px
}

.faq-item:hover .btn-interact {
    background-color: #146b52
}

.faq-item.active .btn-interact {
    background-color: #fff;
    border-color: #1c9673
}

.faq-item.active .btn-interact .icon-plus:before {
    height: 0
}

.faq-item.active .btn-interact .icon-plus:after {
    background-color: #1c9673
}

.faq-item .visible {
    position: relative;
    padding-right: 60px
}

.faq-item .visible .h4 {
    margin: 0
}

.faq-item .btn-interact {
    position: absolute;
    right: 24px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    margin: 0;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s;
    background-color: #1c9673;
    border: 1px solid transparent;
    -webkit-box-shadow: 0px 4px 16px rgba(45, 135, 95, 0.45);
    box-shadow: 0px 4px 16px rgba(45, 135, 95, 0.45);
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.faq-item .btn-interact .icon-plus:before, .faq-item .btn-interact .icon-plus:after {
    background-color: #fff;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.faq-item .hidden {
    display: none;
    padding-top: 25px
}

.first-screen-info {
    position: relative;
    z-index: 20;
    text-align: center;
    font-weight: 600;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto
}

.first-screen-info .h2 {
    margin: 0 0 10px
}

.first-screen-info .price {
    font-size: 14px;
    opacity: 0.6
}

.first-screen-info .price span {
    font-size: 20px
}

.first-screen-info .text_block {
    margin-top: 20px
}

.first-screen-options {
    margin-top: 40px
}

.first-screen-options ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.first-screen-options li {
    position: relative;
    padding: 0 50px
}

.first-screen-options li:hover .text-small {
    color: #ffffff
}

.first-screen-options li:first-child {
    padding-left: 0
}

.first-screen-options li:last-child {
    padding-right: 0
}

.first-screen-options li:last-child:after {
    content: none
}

.first-screen-options li.active:before {
    opacity: 1;
    visibility: visible
}

.first-screen-options li.active .text-small {
    color: #ffffff
}

.first-screen-options li:after {
    content: '';
    position: absolute;
    width: 1px;
    height: 100%;
    background: #fff;
    right: 0;
    top: 0;
    border-radius: 0;
    left: auto
}

.first-screen-options li .text-small {
    color: #8d8e8e;
    white-space: nowrap;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.first-screen-options li .h4 {
    margin: 4px 0 0;
    white-space: nowrap
}

.client-logo {
    width: 100%;
    height: 80px;
    line-height: 80px
}

.client-logo img {
    max-height: 100%;
    vertical-align: middle
}

.clients-carousel {
    overflow: visible !important
}

.clients-carousel .swiper-slide {
    width: 200px
}

.filters-standart {
    margin-bottom: 30px
}

.filters-standart ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: auto;
    white-space: nowrap
}

.filters-standart li {
    margin-right: 30px;
    margin-bottom: 5px
}

.filters-standart li:last-child {
    margin-right: 0
}

.filters-standart li.active a {
    color: #1c9673
}

.filters-standart li a {
    font-weight: 600;
    border: 0;
    color: #8d8e8e
}

.filters-standart li a:hover {
    color: #1c9673
}

.job-header {
    font-size: 12px;
    color: #8d8e8e;
    margin-bottom: 15px;
    padding: 0 40px
}

.job-item {
    padding: 30px 40px
}

.job-item .h2 {
    margin: 0
}

.job-item .btn-interact {
    right: 0px
}

.job-item .visible {
    padding-right: 0
}

.job-descr {
    padding-top: 20px
}

.job-descr > .row {
    margin-left: -40px;
    margin-right: -40px
}

.job-descr > .row > div {
    padding-left: 40px;
    padding-right: 40px
}

.job-descr .h4 {
    margin: 0 0 25px
}

.job-descr ul li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 5px
}

.job-descr ul li:before {
    content: '';
    width: 12px;
    height: 2px;
    background: #1c9673;
    position: absolute;
    left: 0;
    top: 0.8em;
    border-radius: 0
}

.job-descr .link {
    border-color: transparent
}

.job-descr .link:hover {
    border-color: currentColor
}

.job-descr-item {
    margin-bottom: 40px
}

.admin-items > .row > div {
    margin-bottom: 24px
}

.admin-item {
    position: relative
}

.admin-item:hover .img:before {
    opacity: 0;
    visibility: hidden
}

.admin-item:hover .img:after {
    opacity: 1;
    visibility: visible
}

.admin-item .img {
    position: relative;
    border-radius: 4px;
    overflow: hidden
}

.admin-item .img:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 150px;
    background: -o-linear-gradient(bottom, rgba(27, 29, 30, 0.5) 0%, rgba(27, 29, 30, 0) 100%);
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(27, 29, 30, 0.5)), to(rgba(27, 29, 30, 0)));
    background: linear-gradient(0deg, rgba(27, 29, 30, 0.5) 0%, rgba(27, 29, 30, 0) 100%);
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.admin-item .img:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 150px;
    background: -o-linear-gradient(bottom, rgba(42, 136, 89, 0.5) 0%, rgba(42, 136, 89, 0) 100%);
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(42, 136, 89, 0.5)), to(rgba(42, 136, 89, 0)));
    background: linear-gradient(0deg, rgba(42, 136, 89, 0.5) 0%, rgba(42, 136, 89, 0) 100%);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.admin-item .img img {
    width: 100%
}

.admin-item .descr {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 10;
    padding: 0 40px 25px;
    color: #ffffff
}

.admin-item .descr .h5 {
    margin: 0 0 5px
}

.admin-item .descr .text-small {
    font-size: 12px;
    color: #d1d2d2
}

.footer-top {
    padding-top: 42px
}

.footer {
    background: #1b1d1e;
    color: #ffffff
}

.footer .logo, .footer .header-contacts {
    margin-bottom: 70px;
    padding-right: 0
}

.footer .btn {
    min-width: 220px;
    border-color: #3d3f40;
    border-width: 1px
}

.footer-item {
    margin-bottom: 60px
}

.footer-item a {
    border: 0
}

.footer-item a:hover {
    color: #1c9673 !important
}

.footer-item .h5 {
    margin: 0 0 25px
}

.footer-item .h5 a {
    font-weight: 600;
    color: #ffffff
}

.footer-item .h6 {
    margin: 0 0 5px
}

.footer-item .h6 + .h6 {
    margin-top: 20px
}

.footer-item .h6 a {
    color: #d1d2d2
}

.footer-item li a {
    font-size: 12px;
    color: #a4a5a5
}

.footer-item ul + .h6 {
    margin-top: 20px
}
.footer-item .h5 + ul {
    margin-top: -20px;
}

.footer-bottom {
    border-top: 1px solid #3d3f40;
    margin-top: 50px;
    padding-top: 50px;
    padding-bottom: 55px;
    font-size: 12px
}

.footer-bottom .copyright {
    color: #a4a5a5
}

.footer-bottom a {
    color: #ffffff
}

.footer-bottom-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.footer-bottom-wrap > * {
    margin-right: 60px
}

.footer-bottom-wrap > *:last-child {
    margin-right: 0
}

.social a {
    display: inline-block;
    vertical-align: top;
    border: 0;
    width: 24px;
    height: 24px;
    line-height: 24px;
    text-align: center;
    border-radius: 50%;
    background: rgba(61, 63, 64, 0.5);
    margin-right: 20px;
    font-size: 10px;
    color: #a4a5a5;
    -webkit-transition: background 0.15s;
    -o-transition: background 0.15s;
    transition: background 0.15s
}

.social a:hover {
    background: #1c9673;
    color: #ffffff
}

.social a:last-child {
    margin-right: 0
}

.created {
    color: #a4a5a5
}

.created .logo-daproject {
    margin-left: 10px
}

.logo-daproject {
    display: inline-block;
    vertical-align: middle;
    border: 0;
    background: url(../img/logo-daproject.svg) no-repeat 50% 50%/contain;
    width: 64px;
    height: 19px
}

.mobile-cart-btn {
    position: -webkit-sticky;
    position: sticky;
    top: -50px;
    z-index: 14
}

.btn-cart.btn-green svg {
    font-size: 20px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.btn-cart.btn-green span {
    text-align: left;
    line-height: 1
}

.btn-cart.btn-green div {
    font-size: 16px;
    line-height: 1
}

.btn-cart.btn-green small {
    font-size: 12px
}

.form-booking {
    margin-top: 30px
}

.form-title {
    margin-bottom: 30px
}

.form-title * {
    margin: 0
}

.form-row {
    margin-bottom: 40px
}

.form-row:last-child {
    margin-bottom: 0
}

.form-row .input-fields {
    margin-bottom: -30px
}

.form-book-item {
    position: relative;
    padding: 20px 110px 20px 20px;
    border-radius: 6px;
    border: 1px solid transparent;
    -webkit-transition: border 0.15s, opacity 0.3s;
    -o-transition: border 0.15s, opacity 0.3s;
    transition: border 0.15s, opacity 0.3s;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.form-book-item:last-child {
    margin-bottom: 0
}

.form-book-item:hover {
    border-color: #e8e8e8
}

.form-book-item:hover .link-remove {
    opacity: 1;
    visibility: visible
}

.form-book-item .visible {
    position: relative
}

.form-book-item .hidden {
    display: none;
    margin-top: 20px;
    padding-top: 10px
}

.form-book-item.active {
    border-color: #e8e8e8
}

.form-book-item.active .arrow .icon-svg {
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg)
}

.form-book-item.active .link-remove {
    opacity: 1;
    visibility: visible
}

.form-book-item.removing {
    opacity: 0.5
}

.form-book-item .form-book-descr {
    position: relative;
    min-height: 77px;
    line-height: 77px
}

.form-book-item .form-book-descr .img {
    position: absolute;
    left: 0;
    top: 0;
    width: 82px;
    height: 77px;
    border-radius: 6px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover
}

.form-book-item .form-book-descr .img + .descr {
    padding-left: 106px
}

.form-book-item .form-book-descr .descr {
    display: inline-block;
    line-height: normal;
    vertical-align: middle
}

.form-book-item .form-book-descr .descr .h5 {
    margin: 0
}

.form-book-item .form-book-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.form-book-item .form-book-info .h5 {
    margin: 0;
    margin-right: 30px
}

.form-book-item .form-book-info .h5:last-child {
    margin-right: 0
}

.form-book-item .form-book-info .-gray {
    color: #a4a5a5
}

.form-book-item .form-book-info .-green {
    color: #1c9673
}

.form-book-item .link-remove {
    font-size: 14px;
    color: #b41937;
    border: 0;
    opacity: 0;
    visibility: hidden
}

.form-book-item .link-remove .text {
    border-bottom: 1px solid transparent;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.form-book-item .link-remove:hover .text {
    border-color: #b41937
}

.form-book-item .arrow {
    position: absolute;
    left: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100px;
    text-align: center;
    color: #1c9673;
    font-size: 14px
}

.form-book-item .arrow .icon-svg {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.icon-btn-close {
    display: inline-block;
    vertical-align: middle;
    margin-right: 8px;
    width: 24px;
    height: 24px;
    line-height: 24px;
    border-radius: 50%;
    background: -o-linear-gradient(3.02deg, #b41937 1.44%, #d9193e 98.44%);
    background: linear-gradient(86.98deg, #b41937 1.44%, #d9193e 98.44%);
    color: #ffffff;
    text-align: center;
    font-size: 8px;
    -webkit-box-shadow: 0px 4px 16px rgba(181, 25, 56, 0.25);
    box-shadow: 0px 4px 16px rgba(181, 25, 56, 0.25)
}

.book-date-field {
    position: relative;
    border: 1px solid #e8e8e8;
    height: 52px;
    border-radius: 2px
}

.book-date-field .label {
    position: absolute;
    font-size: 12px;
    color: #8d8e8e;
    padding: 0 8px;
    background-color: #fff;
    z-index: 10;
    top: -10px;
    left: 12px
}

.book-date-field .book-date-input {
    position: absolute;
    right: 0;
    top: 0;
    width: 260px;
    height: 100%
}

.book-date-field .book-date-input .form-control {
    border: 0;
    padding-left: 30px;
    background-color: transparent
}

.book-date-field .custom-date-fields {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
    padding-right: 260px
}

.book-date-field .custom-date-fields .custom-date {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.book-date-field .custom-date-fields .custom-date:before {
    content: '';
    color: #000;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -10px;
    height: 20px;
    width: 1px;
    background-color: #e8e8e8
}

.custom-date {
    position: relative;
    height: 100%
}

.custom-date input {
    position: absolute;
    opacity: 0
}

.custom-date input:checked + label {
    color: #1c9673
}

.custom-date label {
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s;
    cursor: pointer;
    height: 100%;
    line-height: 50px;
    padding: 0 15px;
    text-align: center;
    display: block
}

.custom-date label:hover {
    color: #1c9673
}

.form-book-total {
    border-top: 1px solid #e8e8e8;
    padding-top: 20px;
    margin-top: 40px
}

.form-book-total .total-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.form-book-total .total-wrap .total {
    margin-right: 30px
}

.form-book-total .total-wrap .total .h3 {
    margin: 0 0 5px
}

.form-book-total .total-wrap .total .text-small {
    color: #8d8e8e
}

.form-book-total .total-wrap .price {
    margin: 0;
    color: #1c9673
}

.fancybox-datepicker {
    z-index: 99994 !important
}

.form-book-carousel .swiper-wrapper {
    display: block
}

.form-book-carousel .swiper-slide {
    margin-bottom: 10px
}

.slider-letters {
    position: absolute !important;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0
}

.slider-letters .swiper-lazy {
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover
}

.slider-letters + .wrap .page-title {
    position: relative;
    z-index: 10
}

.letters-screen {
    background-color: #1b1d1e;
    padding-top: 160px
}

.letters-screen .first-screen-wrap {
    padding-top: 0
}

.letters-clip-bg {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0
}

.letters-clip-bg .bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    -webkit-transition: 0.8s;
    -o-transition: 0.8s;
    transition: 0.8s;
    opacity: 0;
    visibility: hidden
}

.letters-clip-bg .bg.active {
    opacity: 1;
    visibility: visible
}

.letters-clip {
    position: relative;
    font-size: 244px;
    font-weight: 800;
    line-height: 1;
    z-index: 100;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.letters-clip .letter {
    position: relative;
    cursor: pointer;
    padding: 0 35px;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #fff;
    line-height: 1;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    opacity: 0.8
}

.letters-clip .letter:hover {
    color: #ffffff;
    opacity: 1;
    z-index: 10
}

.letters-clip .letter:hover .hidden .letters {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

.letters-clip .letter:hover .hidden .text {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    -webkit-transition-delay: 0.2s;
    -o-transition-delay: 0.2s;
    transition-delay: 0.2s
}

.letters-clip .letter.blend-letter {
    opacity: 0.3
}

.letters-clip .letter .hidden {
    position: absolute;
    left: 100%;
    top: 10px;
    margin-left: -40px;
    color: #ffffff;
    -webkit-text-stroke-width: 0px;
    white-space: nowrap;
    visibility: hidden
}

.letters-clip .letter .hidden .letters {
    font-size: 92px;
    font-weight: bold;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateX(30px);
    -ms-transform: translateX(30px);
    transform: translateX(30px);
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s
}

.letters-clip .letter .hidden .text {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
    padding-left: 30px;
    margin-top: 20px;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateX(30px);
    -ms-transform: translateX(30px);
    transform: translateX(30px);
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .letters-clip .letter {
        background: none !important;
        color: #ffffff
    }
}

.job-features-content {
    position: relative;
    height: 500px
}

.job-feat-item-wrap:nth-of-type(1) {
    left: calc(50 / 1200 * 100%);
    top: 250px
}

.job-feat-item-wrap:nth-of-type(2) {
    right: 0;
    top: 150px
}

.job-feat-item-wrap:nth-of-type(3) {
    right: calc(200 / 1200 * 100%);
    top: 0
}

.job-feat-item-wrap:nth-of-type(4) {
    right: calc(200 / 1200 * 100%);
    top: 300px
}

.job-feat-item-wrap:nth-of-type(5) {
    left: calc(300 / 1200 * 100%);
    top: 300px
}

.job-feat-item-wrap:nth-of-type(6) {
    left: calc(550 / 1200 * 100%);
    top: 100px
}

.job-feat-item-wrap:nth-of-type(7) {
    left: calc(270 / 1200 * 100%);
    top: 70px
}

.job-feat-item-wrap:nth-of-type(8) {
    left: 0
}

.job-feat-item {
    position: relative;
    width: 100px;
    height: 100px;
    border-radius: 50%
}

.job-feat-item .link {
    width: 100%;
    height: 100%;
    border: 0;
    border-radius: 50%;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 1000
}

.job-feat-item:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #fff;
    border: 1px solid #e8e8e8;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.job-feat-item:hover {
    z-index: 60
}

.job-feat-item:hover .link {
    width: 270px;
    height: 270px
}

.job-feat-item:hover:before {
    -webkit-transform: scale(calc(270 / 100));
    -ms-transform: scale(calc(270 / 100));
    transform: scale(calc(270 / 100));
    z-index: 50
}

.job-feat-item:hover .visible {
    -webkit-transform: scale(0.5);
    -ms-transform: scale(0.5);
    transform: scale(0.5);
    visibility: hidden;
    opacity: 0;
    z-index: 50
}

.job-feat-item:hover .hidden {
    visibility: visible;
    z-index: 1001
}

.job-feat-item:hover .hidden .h2 {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateX(0) !important;
    -ms-transform: translateX(0) !important;
    transform: translateX(0) !important;
    -webkit-transition-delay: 0.2s;
    -o-transition-delay: 0.2s;
    transition-delay: 0.2s;
    background-color: #fff
}

.job-feat-item:hover .hidden .text-small {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateX(0) !important;
    -ms-transform: translateX(0) !important;
    transform: translateX(0) !important;
    -webkit-transition-delay: 0.3s;
    -o-transition-delay: 0.3s;
    transition-delay: 0.3s;
    background-color: #fff
}

.job-feat-item:hover .hidden .btn {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateX(0) !important;
    -ms-transform: translateX(0) !important;
    transform: translateX(0) !important;
    -webkit-transition-delay: 0.4s;
    -o-transition-delay: 0.4s;
    transition-delay: 0.4s
}

.job-feat-item .visible {
    position: relative;
    width: 100%;
    height: 100%;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.job-feat-item .visible .icon {
    height: 100%;
    text-align: center
}

.job-feat-item .visible .icon img {
    max-height: 100%;
    padding: 25%
}

.job-feat-item .visible .text {
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    font-size: 14px;
    color: #1c9673;
    text-align: center;
    background-color: #fff;
    z-index: 60;
    font-weight: 600;
    line-height: 1.4;
    margin-top: -10px;
    padding: 0 8px;
    min-width: 135px
}

.job-feat-item .hidden {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 50;
    visibility: hidden;
    width: 450px;
    padding: 20px 0;
    background: #fff
}

.job-feat-item .hidden .h2 {
    margin: 0 0 15px;
    color: #1c9673;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateX(30px);
    -ms-transform: translateX(30px);
    transform: translateX(30px);
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s
}

.job-feat-item .hidden .text-small {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateX(30px);
    -ms-transform: translateX(30px);
    transform: translateX(30px);
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
    margin-bottom: 15px
}

.job-feat-item .hidden .btn {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateX(30px);
    -ms-transform: translateX(30px);
    transform: translateX(30px);
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s
}

.job-feat-item.-size-1 {
    width: 123px;
    height: 123px
}

.job-feat-item.-size-1:hover:before {
    -webkit-transform: scale(calc(270 / 123));
    -ms-transform: scale(calc(270 / 123));
    transform: scale(calc(270 / 123))
}

.job-feat-item.-size-2 {
    width: 144px;
    height: 144px
}

.job-feat-item.-size-2:hover:before {
    -webkit-transform: scale(calc(270 / 144));
    -ms-transform: scale(calc(270 / 144));
    transform: scale(calc(270 / 144))
}

.job-feat-item.-size-3 {
    width: 169px;
    height: 169px
}

.job-feat-item.-size-3:hover:before {
    -webkit-transform: scale(calc(270 / 169));
    -ms-transform: scale(calc(270 / 169));
    transform: scale(calc(270 / 169))
}

.job-feat-item.-size-4 {
    width: 186px;
    height: 186px
}

.job-feat-item.-size-4:hover:before {
    -webkit-transform: scale(calc(270 / 186));
    -ms-transform: scale(calc(270 / 186));
    transform: scale(calc(270 / 186))
}

.job-feat-item.-size-5 {
    width: 231px;
    height: 231px
}

.job-feat-item.-size-5:hover:before {
    -webkit-transform: scale(calc(270 / 231));
    -ms-transform: scale(calc(270 / 231));
    transform: scale(calc(270 / 231))
}

.job-feat-item.-back-text .hidden {
    left: auto;
    right: 50%;
    text-align: right
}

.job-feat-item.-back-text .hidden .h2 {
    -webkit-transform: translateX(-30px);
    -ms-transform: translateX(-30px);
    transform: translateX(-30px)
}

.job-feat-item.-back-text .hidden .text-small {
    -webkit-transform: translateX(-30px);
    -ms-transform: translateX(-30px);
    transform: translateX(-30px)
}

.first-screen-small {
    height: 450px;
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: cover;
    color: #ffffff;
    padding: 0 !important
}

.first-screen-small.no-fixed-height {
    height: auto
}

.first-screen-small .wrap {
    height: 100%
}

.first-screen-small h1 {
    font-size: 52px;
    text-align: center;
    margin: 0;
    padding-top: 30px;
    position: relative;
    z-index: 110
}

.first-screen-small .page-title {
    position: relative;
    z-index: 110
}

.first-screen-small .page-title h1 {
    padding-top: 0
}

.first-screen-small .page-title a {
    color: #ffffff
}

.first-screen-small .page-title .text_block {
    max-width: 820px;
    margin: 40px auto 0;
    text-align: left
}

.first-screen-small .first-screen-wrap {
    position: relative
}

.first-screen-small .icon-percent {
    background: url(../img/icons/percent-0.svg) no-repeat 50% 100%/contain;
    width: 412px;
    height: 305px;
    position: absolute;
    right: 0;
    bottom: -50px;
    opacity: 0.1
}

.estate-menu a {
    border: 0;
    opacity: 0.5;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.estate-menu a:hover, .estate-menu a.is-selected {
    opacity: 1
}

.main-section + .filter-section {
    margin-top: -130px;
    padding: 0
}

.filter-realty-top {
    height: 130px;
    background-color: #fff;
    border-radius: 8px 8px 0 0;
    padding: 30px 40px 0
}

.filter-realty-top > .row {
    margin-left: -30px;
    margin-right: -30px
}

.filter-realty-top > .row > div {
    padding-left: 30px;
    padding-right: 30px
}

.filter-realty-middle {
    background-color: #fff;
    height: 88px;
    border: 1px solid #e8e8e8;
    border-radius: 0 0 8px 8px;
    padding: 0 40px
}

.filter-realty-middle > .row {
    height: 100%;
    margin-left: -30px;
    margin-right: -30px
}

.filter-realty-middle > .row > div {
    padding-left: 30px;
    padding-right: 30px
}

.filter-realty-middle .link {
    font-size: 13px;
    border: 0;
    color: #8d8e8e
}

.filter-realty-middle .link .icon-svg {
    margin-right: 3px;
    font-size: 15px
}

.filter-realty-middle .link:hover {
    color: #1c9673
}

.filter-realty-middle .btn {
    margin-top: 0
}

.filter-slider-wrap > .text-small {
    margin-bottom: 3px;
    font-size: 12px
}

.filter-slider-wrap + .filter-slider-wrap {
    margin-top: 24px
}

.filter-slider-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 5px
}

.filter-slider-info .text-small {
    font-size: 8px;
    text-transform: uppercase
}

.filter-slider-amount {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    color: #1c9673;
    font-weight: 800;
    font-size: 14px;
    margin-bottom: 5px
}

.noUi-target.filter-slider-item {
    border: 0;
    border-radius: 0;
    height: 2px;
    background-color: #e8e8e8;
    -webkit-box-shadow: none;
    box-shadow: none
}

.noUi-target.filter-slider-item .noUi-handle {
    cursor: pointer;
    width: 10px;
    height: 10px;
    right: -5px;
    top: -4px;
    border-radius: 50%;
    border: 2px solid #1c9673;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transition: background-color 0.1s, -webkit-transform 0.1s;
    transition: background-color 0.1s, -webkit-transform 0.1s;
    -o-transition: transform 0.1s, background-color 0.1s;
    transition: transform 0.1s, background-color 0.1s;
    transition: transform 0.1s, background-color 0.1s, -webkit-transform 0.1s
}

.noUi-target.filter-slider-item .noUi-handle:focus {
    outline: none
}

.noUi-target.filter-slider-item .noUi-handle:before, .noUi-target.filter-slider-item .noUi-handle:after {
    content: none
}

.noUi-target.filter-slider-item .noUi-handle.noUi-active {
    -webkit-transform: scale(1.3);
    -ms-transform: scale(1.3);
    transform: scale(1.3)
}

.noUi-target.filter-slider-item .noUi-handle .noUi-touch-area {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 20px;
    height: 20px
}

.noUi-target .noUi-connect {
    background-color: #1c9673
}

.filter-realty-bottom {
    color: #8d8e8e;
    padding: 0 40px;
    height: 80px
}

.filter-realty-bottom > .row {
    height: 100%
}

.filter-realty-bottom .text-small {
    font-size: 13px
}

.filter-realty-bottom .amount-control {
    font-size: 13px;
    font-weight: 500
}

.filter-realty-bottom .filter-sort {
    margin-left: 50px
}

.filter-sort {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 13px
}

.filter-sort li {
    margin-right: 30px
}

.filter-sort li.active a {
    color: #2d3741 !important;
    font-weight: bold
}

.filter-sort li.active .icon-arrow {
    display: block
}

.filter-sort li.active.-asc .icon-arrow {
    -webkit-transform: scaleY(-1) translateY(4px);
    -ms-transform: scaleY(-1) translateY(4px);
    transform: scaleY(-1) translateY(4px)
}

.filter-sort li:last-child {
    margin-right: 0
}

.filter-sort li a {
    position: relative;
    color: #8d8e8e;
    border: 0
}

.filter-sort li a:hover {
    color: #1c9673
}

.filter-sort .icon-arrow {
    display: none;
    position: absolute;
    left: 100%;
    top: 50%;
    border: 5px solid transparent;
    border-top: 8px solid #b41937;
    width: 0;
    height: 0;
    margin-top: -3px;
    margin-left: 4px
}

.realty-item .img {
    position: relative
}

.realty-item a {
    padding: 60px 24px 30px;
    border-radius: 6px;
    border: 1px solid transparent
}

.realty-item a.townhouse {
    padding-top: 0
}

.realty-item.without-favorite a {
    padding-top: 30px
}

.realty-item a:hover {
    -webkit-box-shadow: 0px 4px 32px rgba(31, 31, 31, 0.08);
    box-shadow: 0px 4px 32px rgba(31, 31, 31, 0.08);
    border-color: #e8e8e8
}

.realty-item a:hover .top {
    opacity: 1;
    visibility: visible
}

.realty-item a:hover .realty-img-list {
    opacity: 1;
    visibility: visible
}

.realty-item a .img {
    height: 230px;
    line-height: 230px;
    text-align: center
}

.realty-item a.townhouse .img {
    margin: 0 -24px 50px;
    height: 251px;
    line-height: 251px
}

.realty-item a.townhouse .img img {
    border-radius: 6px 6px 0 0;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: auto;
    top: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

.realty-item a.townhouse .img img + img {
    height: 100%;
    width: auto
}

.realty-item a .img img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) translateZ(0);
    transform: translate(-50%, -50%) translateZ(0);
    vertical-align: middle;
    width: auto;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    opacity: 0;
    visibility: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.realty-item a .img img.visible {
    opacity: 1;
    visibility: visible
}

.realty-item.fav-active .top {
    opacity: 1;
    visibility: visible
}

.realty-item.fav-active .top .link {
    color: #1c9673
}

.realty-item.fav-active .top .link .icon-svg {
    color: #1c9673;
    stroke: #1c9673;
    -webkit-animation: favorites 0.3s;
    animation: favorites 0.3s
}

.realty-item .top {
    position: absolute;
    top: 30px;
    left: 0;
    width: 100%;
    text-align: center;
    font-size: 14px;
    z-index: 20;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s
}

.realty-item .top .link {
    color: #8d8e8e;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.realty-item .top .link:hover {
    color: #1c9673
}

.realty-item .top .link:hover .icon-svg {
    stroke: #1c9673
}

.realty-item .top .link .icon-svg {
    margin-right: 3px;
    stroke: #8d8e8e;
    stroke-width: 1.5px;
    color: #ffffff;
    font-size: 16px
}

@-webkit-keyframes favorites {
    50% {
        -webkit-transform: scale(1.6);
        transform: scale(1.6)
    }
}

@keyframes favorites {
    50% {
        -webkit-transform: scale(1.6);
        transform: scale(1.6)
    }
}

.realty-img-list {
    position: absolute;
    top: 100%;
    margin-top: 8px;
    left: 0;
    width: 100%;
    font-size: 12px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #8d8e8e;
    line-height: 1.4;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    opacity: 0;
    visibility: hidden
}

.realty-img-list li {
    margin-right: 8px;
    font-weight: 600;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.realty-img-list li.active {
    color: #1c9673
}

.realty-img-list li:last-child {
    margin-right: 0
}

.realty-item-big {
    border: 1px solid #1c9673;
    border-radius: 6px
}

.realty-item-big > a {
    padding: 50px 90px;
    border: 0;
    display: block;
    color: #2d3741
}

.realty-item-big .row {
    margin-left: -25px;
    margin-right: -25px
}

.realty-item-big .row > div {
    padding-left: 25px;
    padding-right: 25px
}

.realty-item-big .descr {
    position: relative
}

.realty-item-big .descr .h1 {
    margin: 0;
    font-size: 38px;
}

.realty-item-big .descr .realty-options {
    margin-top: 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.realty-item-big .descr .realty-options li {
    margin-right: 45px
}

.realty-item-big .descr .realty-options li:last-child {
    margin-right: 0
}

.realty-item-big .descr .realty-options li span {
    font-size: 28px;
    font-weight: 500
}

.realty-item-big .descr .text_block {
    margin-top: 22px
}

.realty-item-big .descr .full_price {
    color: #1c9673;
    margin-top: 48px;
    line-height: 1
}

.realty-item-big .descr .full_price span {
    font-size: 28px;
    font-weight: 600
}

.realty-item-big .descr .part_price {
    color: #8d8e8e;
    font-size: 12px;
    margin-top: 5px
}

.realty-item-big .descr .part_price span {
    font-size: 14px;
    font-weight: 600
}

.realty-item-big .img {
    height: 408px;
    position: relative
}

.realty-item-big .img img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) translateZ(0);
    transform: translate(-50%, -50%) translateZ(0);
    vertical-align: middle;
    width: auto;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    opacity: 0;
    visibility: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.realty-item-big .img img.visible {
    opacity: 1;
    visibility: visible
}

.realty-item-big .img .realty-img-list {
    opacity: 1;
    visibility: visible;
    -webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;
    height: 100%;
    width: auto;
    left: auto;
    right: calc(100% + 8px);
    top: 0;
    margin-top: 0;
    -webkit-transform: scaleY(-1) scaleX(-1);
    -ms-transform: scaleY(-1) scaleX(-1);
    transform: scaleY(-1) scaleX(-1)
}

.realty-item-big .img .realty-img-list li {
    margin-bottom: 20px;
    margin-right: 0
}

.realty-item-big .img .realty-img-list li:last-child {
    margin-bottom: 0
}

.realty-item-big.fav-active .link {
    color: #1c9673
}

.realty-item-big.fav-active .link .icon-svg {
    color: #1c9673;
    stroke: #1c9673;
    -webkit-animation: favorites 0.3s;
    animation: favorites 0.3s
}

.realty-item-big .link {
    position: absolute;
    right: 0;
    bottom: 0;
    color: #8d8e8e;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s;
    font-size: 14px
}

.realty-item-big .link:hover {
    color: #1c9673
}

.realty-item-big .link:hover .icon-svg {
    stroke: #1c9673
}

.realty-item-big .link .icon-svg {
    margin-right: 3px;
    stroke: #8d8e8e;
    stroke-width: 1.5px;
    color: #ffffff;
    font-size: 16px
}

.realty-content-items + .form-border {
    margin-top: 40px
}

.scroll-more-wrap {
    text-align: center;
    margin-top: 30px;
    font-size: 14px;
    color: #1c9673
}

.scroll-more-wrap .icon-plus {
    position: relative;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    margin: 0 auto 12px;
    background: -o-linear-gradient(3.02deg, #2d875f 1.44%, #1e8a3c 98.44%);
    background: linear-gradient(86.98deg, #2d875f 1.44%, #1e8a3c 98.44%)
}

.scroll-more-wrap .icon-plus:before {
    content: '';
    width: 2px;
    height: 12px;
    background: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.scroll-more-wrap .icon-plus:after {
    content: '';
    width: 12px;
    height: 2px;
    background: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.filter-realty-wrap form {
    position: relative
}

.fancybox-realty {
    color: #ffffff
}

.fancybox-realty .fancybox-bg {
    background-color: #1b1d1e
}

.fancybox-realty.fancybox-is-open .fancybox-bg {
    opacity: 1
}

.fancybox-realty .fancybox-slide {
    padding: 0 !important
}

.fancybox-realty .fancybox-content {
    vertical-align: top
}

.fancybox-realty .h1 {
    margin: 0 0 30px
}

.fancybox-realty .filter-realty-top {
    background-color: transparent;
    padding: 50px 0 0
}

.fancybox-realty .filter-realty-middle {
    background: transparent;
    border: 0;
    padding: 0;
    text-align: center
}

.fancybox-realty .filter-realty-middle .btn {
    height: 52px
}

.fancybox-realty .filter-realty-wrap {
    width: 100% !important;
    padding: 60px 30px 30px !important
}

.fancybox-realty .filter-slider-amount {
    color: #ffffff
}

.fancybox-realty .filter-sort li.active a {
    color: #ffffff !important
}

.fancybox-realty .filter-sort li a {
    color: #ffffff
}

.price-new-wrap .price {
    font-weight: 600;
    color: #1c9673;
    font-size: 18px;
    line-height: 1.2
}

.price-new-wrap .price span {
    font-size: 36px
}

.price-new-wrap .text-small {
    font-size: 12px;
    color: #8d8e8e
}

.form-border .price-new-wrap {
    margin-top: 5px;
    margin-bottom: 20px
}

.form-border .filter-slider-wrap {
    margin-bottom: 24px
}

.installment-items > .row {
    margin-left: -4px;
    margin-right: -4px
}

.installment-items > .row > div {
    padding-left: 4px;
    padding-right: 4px;
    margin-bottom: 8px
}

.installment-item {
    border: 1px solid rgba(27, 29, 30, 0.1);
    border-radius: 4px;
    height: 100%
}

.installment-item .top {
    padding: 24px 32px
}

.installment-item .bottom {
    padding: 24px 32px;
    border-top: 1px solid rgba(27, 29, 30, 0.1)
}

.installment-item .bottom .text-small {
    color: #8d8e8e;
    font-size: 12px
}

.installment-item .price-new-wrap {
    margin-bottom: 20px
}

.installment-price-wrap {
    margin-bottom: 20px
}

.installment-price-wrap:last-child {
    margin-bottom: 0
}

.installment-price-wrap .price {
    line-height: 1.2
}

.installment-price-wrap .price span {
    font-size: 24px;
    font-weight: 600
}

.installment-price-wrap .text-small {
    font-size: 12px;
    color: #8d8e8e
}

.installment-section {
    padding-top: 60px
}

.installment-section .form-border {
    margin-left: 0;
    margin-top: 31px
}

.realty-room-item {
    border: 1px solid #e8e8e8;
    border-radius: 4px;
    padding: 60px 90px;
    margin-top: 40px;
    position: relative
}

.realty-room-item .img {
    height: 520px;
    position: relative
}

.realty-room-item .img img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) translateZ(0);
    transform: translate(-50%, -50%) translateZ(0);
    vertical-align: middle;
    width: auto;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    opacity: 0;
    visibility: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.realty-room-item .img img.visible {
    opacity: 1;
    visibility: visible
}

.realty-room-item .img .realty-img-list {
    opacity: 1;
    visibility: visible;
    width: 100%;
    left: 0;
    top: 0;
    margin-top: 0
}

.realty-room-item .img .realty-img-list li {
    margin-right: 24px;
    cursor: pointer
}

.realty-room-item .img .realty-img-list li:last-child {
    margin-right: 0
}

.realty-room-item.fav-active .share-links .link-share {
    color: #1c9673
}

.realty-room-item.fav-active .share-links .link-share .icon-svg {
    color: #1c9673;
    stroke: #1c9673;
    fill: #1c9673;
    -webkit-animation: favorites 0.3s;
    animation: favorites 0.3s
}

.realty-room-item .share-links {
    position: absolute;
    bottom: -10px;
    left: 70px;
    padding: 0 20px
}

.realty-room-descr {
    max-width: 360px
}

.realty-room-descr.full-width {
    max-width: 100%
}

.realty-room-descr .realty-options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    margin-bottom: -30px
}

.realty-room-descr .realty-options li {
    margin-right: 30px;
    margin-bottom: 30px
}

.realty-room-descr .realty-options li:last-child {
    margin-right: 0
}

.realty-room-descr .realty-options li .text-small {
    font-size: 12px;
    color: #8d8e8e;
    margin-top: 3px
}

.realty-room-descr .realty-options .option-title {
    line-height: 1.2;
    font-weight: 500;
    position: relative
}

.realty-room-descr .realty-options .option-title.-square {
    font-size: 32px
}

.realty-room-descr .realty-options .option-title.-square span {
    font-size: 18px
}

.realty-room-descr .realty-options .option-title p {
    position: absolute;
    top: 3px;
    left: -22px;
    margin: 0
}

.realty-room-descr .realty-options .option-title.-type {
    font-size: 24px
}

.realty-room-descr .realty-options .option-title.-address {
    font-size: 22px
}

.realty-room-descr .price-new-wrap {
    margin-top: 40px
}

.realty-room-descr .btn {
    margin-top: 35px
}

.decorate-wrap {
    margin-top: 40px
}

.decorate-wrap .title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    margin-bottom: 20px
}

.decorate-wrap .title .link {
    font-size: 12px
}

.decorate-wrap .h2 {
    font-family: 'Montserrat', sans-serif;
    margin: 0;
    font-weight: 500
}

.decorate-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.decorate-control {
    position: relative;
    margin-bottom: 12px;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 120px;
    flex: 1 1 120px;
    margin: 0 6px
}

.decorate-control:first-child {
    margin-left: 0
}

.decorate-control:last-child {
    margin-right: 0
}

.decorate-control input[type='radio'] {
    position: absolute;
    opacity: 0
}

.decorate-control input[type='radio'] + label {
    position: relative;
    width: 100%;
    cursor: pointer;
    line-height: 1.2;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 62px;
    font-weight: 600;
    border: 1px solid #e8e8e8;
    border-radius: 4px;
    overflow: hidden;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s;
    padding: 0 10px
}

.decorate-control input[type='radio'] + label:hover {
    color: #ffffff
}

.decorate-control input[type='radio'] + label:hover .img {
    opacity: 1;
    visibility: visible
}

.decorate-control input[type='radio']:checked + label {
    color: #ffffff
}

.decorate-control input[type='radio']:checked + label .img {
    opacity: 1;
    visibility: visible
}

.decorate-control .img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s;
    z-index: -1
}

.installment-types {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 25px
}

.installment-types .imgs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: 15px
}

.installment-types .imgs span {
    width: 50px;
    height: 50px;
    margin-right: -30px
}

.installment-types .imgs span:last-child {
    margin-right: 0
}

.installment-types .imgs span img {
    width: 100%;
    height: 100%
}

.installment-types .descr {
    line-height: 1.4
}

.installment-types .descr .link {
    font-size: 14px
}

.share-links {
    background: #fff;
    font-size: 14px;
    z-index: 100
}

.share-links ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.share-links li {
    margin-right: 15px
}

.share-links li:last-child {
    margin-right: 0
}

.share-links li a {
    border: 0;
    color: #a4a5a5
}

.share-links li a:hover {
    color: #1c9673
}

.share-links li .icon-svg {
    margin-right: 5px;
    font-size: 16px
}

.share-links li .link-share .icon-svg {
    stroke-width: 1.75px;
    fill: #fff
}

.bank-item {
    height: 92px;
    margin-bottom: 8px;
    border-radius: 4px;
    display: none
}

.bank-item.thead {
    height: auto;
    margin-bottom: 15px;
    color: #8d8e8e;
    border: 0;
    padding: 0 40px;
    display: block
}

.bank-item.thead .text-small {
    font-size: 10px;
    display: block
}

.bank-item a {
    display: block;
    cursor: pointer;
    height: 100%;
    color: #2d3741;
    padding: 0 40px;
    border-radius: 4px;
    border: 1px solid #e8e8e8
}

.bank-item a:hover {
    background-color: #1a9f29;
    border-color: #1a9f29;
    color: #ffffff
}

.bank-item.is-selected a {
    background: #e8e8e8;
    color: #2d3741
}

.bank-item .row {
    height: 100%
}

.bank-item .text {
    font-size: 16px;
    line-height: normal
}

.bank-item .text span {
    font-size: 12px
}

.bank-item .logo {
    height: 60px;
    line-height: 60px
}

.bank-item .logo img {
    width: auto;
    max-width: 150px;
    height: auto;
    max-height: 100%;
    vertical-align: middle
}

.bank-item:not(.is-selected):hover .logo .preview-picture {
    display: none
}

.bank-item:not(.is-selected):hover .logo .detail-picture {
    display: block
}

.bank-item .logo .detail-picture {
    display: none
}

.bank-item .text-small {
    display: none
}

.scroll-more-wrap a {
    display: block;
    border: 0
}

.bank-items .scroll-more-wrap a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.bank-items .scroll-more-wrap .icon-plus {
    margin: 0 12px 0 0
}

.radio-item {
    position: relative
}

.radio-item + .radio-item {
    margin-top: 5px
}

.radio-item label {
    font-size: 16px;
    font-weight: 600;
    color: #a4a5a5;
    cursor: pointer;
    position: relativee;
    padding-left: 20px
}

.radio-item label:before {
    height: 20px;
    width: 20px;
    border: 1px solid #e8e8e8;
    border-radius: 50%;
    display: block;
    position: absolute;
    top: 2px;
    left: 0;
    content: ''
}

.radio-item label:after {
    height: 10px;
    width: 10px;
    display: block;
    border-radius: 50%;
    background: #1c9673;
    position: absolute;
    top: 7px;
    left: 5px;
    content: '';
    opacity: 0;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.radio-item input {
    opacity: 0;
    visibility: hidden
}

.radio-item input:checked + label {
    color: #1c9673
}

.radio-item input:checked + label:after {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.page-title + .rooms-filters {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.room-control-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 9px
}

.room-control {
    position: relative;
    margin: 4px 8px 4px 0
}

.room-control:last-child {
    margin-right: 0
}

.room-control input[type='radio'] + label, .room-control input[type='checkbox'] + label {
    cursor: pointer;
    font-size: 13px;
    font-weight: 800;
    width: 36px;
    height: 36px;
    border: 1px solid #e8e8e8;
    display: block;
    border-radius: 50%;
    text-align: center;
    line-height: 34px;
    color: #1c9673;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.room-control input[type='radio'] + label:hover, .room-control input[type='checkbox'] + label:hover {
    border-color: #1c9673
}

.room-control input[type='radio'], .room-control input[type='checkbox'] {
    position: absolute;
    opacity: 0
}

.room-control input[type='radio']:checked + label, .room-control input[type='checkbox']:checked + label {
    background-color: #1c9673;
    color: #ffffff;
    border-color: #1c9673
}

.is-hidden {
    display: none
}

.slider-description .h2 {
    margin-top: 0
}

.spa-list.pop.-big {
    overflow: visible
}

.banner-small-section {
    padding: 60px 0;
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: cover;
    color: #ffffff
}

[data-role='tab-container'] {
    position: relative;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s
}

[data-role='tab-content'] {
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}

[data-role='tab-content'].is-visible {
    position: relative;
    opacity: 1;
    visibility: visible;
    z-index: 2;
    -webkit-transition: 0.8s;
    -o-transition: 0.8s;
    transition: 0.8s
}

.pdf-link {
    position: relative;
    padding-left: 25px;
    text-decoration: none;
    border: 0
}

.pdf-link:before {
    width: 20px;
    padding-top: 20px;
    background: url(../img/icons/pdf.png) no-repeat center/contain;
    display: block;
    position: absolute;
    left: 0;
    top: -2px;
    content: ''
}

@media print {
    .wrap {
        max-width: 100%
    }

    .realty-item .top .link, .footer .logo, .header-contacts .link, .footer-top > .row > .col-12, .footer-top > .row > .col-4, .footer-top > .row > .col-5, .footer-bottom, .book-section, jdiv, .installment-section, .header.no-bg .header-contacts > a, .realty-room-item .img .realty-img-list, .realty-room-descr .btn, .realty-room-item .share-links, .page-title .link-back, .menu {
        display: none !important
    }

    .realty-room-item .img {
        height: auto
    }

    .realty-room-item .img img {
        position: relative;
        display: block;
        opacity: 1;
        visibility: visible;
        left: 0;
        top: 0;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        width: 100%;
        height: auto
    }

    .realty-room-item .img img + img {
        margin-top: 20px
    }

    .realty-room-item {
        padding: 20px 30px
    }

    .header .row > .col-8 {
        display: none
    }

    .realty-content-items > .row > .col-3, .header .row > .col-2, .header .row > .col-2 {
        width: 50% !important;
        webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        -webkit-box-flex: 0;
        flex: 0 0 50%;
        max-width: 50%
    }

    .price-new-wrap .price span {
        font-size: 30px
    }
}

.townhouse {
    display: block;
    position: relative
}

.townhouse-type {
    position: absolute;
    left: 0;
    top: 165px;
    width: 100%;
    z-index: 103
}

.townhouse-type a {
    height: 38px;
    line-height: 35px;
    font-size: 18px;
    color: #fff;
    text-decoration: none;
    border: 2px solid #fff;
    border-radius: 4px;
    padding: 0 25px;
    display: inline-block;
    font-weight: bold;
    margin: 0 -4.5px;
    position: relative;
    z-index: 1
}

.townhouse-type a.is-selected {
    background: #1e8a3c;
    border-color: #1e8a3c;
    z-index: 2
}

.townhouse-types > div {
    display: none
}

.townhouse-types > div.is-visible {
    display: block
}

.townhouse .btns {
    position: absolute;
    bottom: 80px;
    left: 0;
    width: 100%;
    z-index: 3
}

.townhouse-container svg {
    display: block
}

.townhouse-container .th path, .townhouse-container .th polygon {
    fill: rgba(255, 255, 255, 0);
    stroke: none;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    stroke-width: 2;
    cursor: pointer
}

.townhouse-container .th.is-sold path, .townhouse-container .th.is-sold polygon {
    fill: rgba(0, 0, 0, 0.5) !important;
    stroke-width: 0;
    cursor: default
}

.townhouse-container .th.is-sold text {
    display: none
}

.townhouse-container .th:hover path, .townhouse-container .th:hover polygon {
    fill: rgba(255, 255, 255, 0.5);
    stroke: #fff
}

.townhouse-container .th text {
    font-weight: bold;
    text-transform: lowercase;
    font-size: 25px;
    cursor: pointer;
    opacity: 0;
    -webkit-transform: translateY(15px);
    -ms-transform: translateY(15px);
    transform: translateY(15px);
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.townhouse-container .th:hover text {
    opacity: 1;
    -webkit-transform: translate(0);
    -ms-transform: translate(0);
    transform: translate(0)
}

.townhouse-about, .description-line {
    opacity: 0;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.townhouse-about.is-visible, .description-line.is-visible {
    opacity: 1
}

.description-line circle {
    fill: #fff
}

.description-line path {
    fill: none;
    stroke: #fff;
    stroke-width: 2
}

.townhouse-about {
    background: #fff;
    position: absolute;
    opacity: 0;
    overflow: hidden;
    border-radius: 4px;
    width: 200px;
    padding: 15px 15px 15px 20px
}

.townhouse-about .area, .townhouse-about .price {
    font-size: 24px;
    color: #000;
    font-weight: 600
}

.townhouse-about .area span, .townhouse-about .price span {
    display: block;
    margin-bottom: 3px;
    color: #a4a5a5;
    font-size: 14px;
    font-weight: 500
}

.plan-benefits {
    position: absolute;
    bottom: 30px;
    left: 0;
    z-index: 3;
    width: 100%
}

.plan-benefits--item {
    position: relative
}

.plan-benefits--item > span {
    width: 100px;
    height: 100px;
    border: 1px solid #2a8859;
    border-radius: 100%;
    position: relative;
    display: block;
    background: #fff;
    z-index: 4;
    opacity: 0.85;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.plan-benefits--item span {
    display: block
}

.plan-benefits--item.red-border > span {
    border-color: #e7442f
}

.plan-benefits--item:hover span {
    opacity: 1
}

.plan-benefits--item > span img {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    color: #f3f3f3;
    max-height: 50px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.plan-benefits--item .icon-text {
    position: absolute;
    opacity: 0;
    visibility: hidden;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    padding: 10px 20px 10px 30px;
    left: 80px;
    font-size: 14px;
    line-height: 1.2;
    top: 50%;
    z-index: 3;
    -webkit-transform: translateX(-20px) translateY(-50%);
    -ms-transform: translateX(-20px) translateY(-50%);
    transform: translateX(-20px) translateY(-50%);
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    border-radius: 8px
}

.plan-benefits--item:hover .icon-text {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateX(0) translateY(-50%);
    -ms-transform: translateX(0) translateY(-50%);
    transform: translateX(0) translateY(-50%)
}

.plan-benefits--item:hover {
    z-index: 5
}

@media (max-width: 900px) {
    .townhouse-type a {
        background: rgba(30, 138, 60, 0.4);
        color: #1e8a3c;
        border-color: #1e8a3c
    }

    .townhouse-type a.is-selected {
        color: #fff
    }
}

iframe[src*='caltat.com'] {
    display: none
}

.video-link {
    position: relative;
    display: inline-block;
    border: 0
}

.video-link:before {
    background: rgba(0, 0, 0, 0.4);
    height: 100% !important;
    width: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2 !important;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    content: ''
}

.video-link i {
    height: 100px;
    width: 100px;
    display: block;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 3
}

.video-link i:before {
    content: '';
    border: 20px solid transparent;
    border-left: 30px solid #272a2e;
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -10px;
    margin-top: -19px;
    -webkit-transition: border 0.15s;
    -o-transition: border 0.15s;
    transition: border 0.15s
}

.bordered-image {
    border-radius: 4px;
    overflow: hidden
}

.zoom-hover-image {
    overflow: hidden
}

.zoom-hover-image img {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s
}

.zoom-hover-image:hover img {
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2)
}

.zoom-hover-image.video-link:hover:before {
    opacity: 0.5
}

.buy-state {
    font-size: 14px;
    margin-bottom: 30px
}

.buy-state div {
    margin-bottom: 15px
}

.buy-state div i {
    height: 40px;
    width: 40px;
    border-radius: 50%;
    font-size: 20px;
    text-align: center;
    line-height: 40px;
    color: #fff;
    font-weight: bold;
    background: #e7442f;
    display: block;
    font-style: normal;
    margin-top: 10px
}

.contact-heading {
    font-size: 42px;
    color: #2d3741;
    font-weight: 600;
    border: 0;
    line-height: 1.2
}

.cookie {
    position: fixed;
    bottom: 0;
    width: 100%;
    padding: 25px 0;
    z-index: 100000;
    background: #1b1d1e
}

.cookie-text {
    font-weight: 300;
    line-height: 1.7;
    color: #fff
}

.cookie .btn:before {
    z-index: -1
}

.pop.flats {
    max-width: 1180px !important;
    border: 10px solid #fff;
    padding: 64px 15px !important;
    width: 100%;
    background: url(../img/flats/popup-bg.jpg) !important;
    color: #fff;
    background-size: cover !important
}

.pop.flats [data-fancybox-close] {
    display: none
}

.pop.flats .btn:before {
    z-index: -1
}

.flats-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%
}

.flats-block {
    text-align: center
}

.flats-title {
    font-size: 36px;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 28px;
    text-align: center
}

@media screen and (max-width: 600px) {
    .flats-title {
        font-size: 24px;
        margin-bottom: 22px
    }
}

.flats-block-title {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 28px
}

@media screen and (max-width: 600px) {
    .flats-block-title {
        font-size: 20px;
        margin-bottom: 16px
    }
}

.flats-divide {
    margin: 114px 0 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 25px
}

@media screen and (max-width: 900px) {
    .flats-divide {
        margin: 26px 0 20px
    }
}

.flats-divider:not(.or) {
    height: 1px;
    background: rgba(255, 255, 255, 0.25);
    -webkit-box-flex: 2;
    -ms-flex-positive: 2;
    flex-grow: 2
}

.flats-divider.or {
    font-size: 14px;
    line-height: 1;
    padding: 0 24px
}

::-moz-selection {
    background: #1c9673;
    color: #fff
}

::selection {
    background: #1c9673;
    color: #fff
}

body > iframe[src*='getflat'] {
    display: block
}

.career__item {
    border: 1px solid #1c9673;
    padding: 20px;
    border-radius: 4px;
    margin-bottom: 20px
}

.career__item:last-child {
    margin-bottom: 0
}

.career__title {
    margin-bottom: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.career__title .h2 {
    margin: 0
}

.career__title .h2 a {
    color: #2d3741;
    border: 0;
    font-weight: 600
}

.career__title .h2 a:hover {
    color: #1c9673
}

.career__salary {
    color: #1c9673;
    font-size: 20px;
    line-height: normal;
    margin-left: 30px;
    white-space: nowrap
}

.career__item .text_block {
    font-size: 14px
}

.career__city {
    font-size: 12px;
    margin-bottom: 10px;
    color: #8d8e8e
}

.career__btns {
    margin-top: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.career__btns .btn {
    margin-right: 10px
}

.career__btns .btn:last-child {
    margin-right: 0
}

.career-detail__back-link {
    border: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.career-detail__back-link span {
    border-bottom: 1px solid transparent;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s
}

.career-detail__back-link:hover span {
    border-color: currentColor
}

.career-detail__back-link .icon-svg {
    font-size: 10px;
    min-width: 10px;
    margin-right: 8px;
    margin-top: 0;
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    transform: scaleX(-1)
}

.career-detail__city {
    color: #8D8E8E
}

.career-detail__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 16px
}

.career-detail__share-link {
    font-size: 20px;
    border: 0;
    color: #8d8e8e
}

.career-detail__share-link:hover {
    color: #1c9673
}

.pagination {
    margin-top: 50px
}

.pagination .no-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: -10px
}

.pagination li {
    width: 50px;
    height: 50px;
    margin-right: 10px;
    margin-bottom: 10px
}

.pagination li:last-child {
    margin-right: 0
}

.pagination li.active a, .pagination li.active span, .pagination a:hover {
    background-color: #1c9673;
    color: #ffffff
}

.pagination a, .pagination span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    border: 1px solid #1c9673;
    border-radius: 4px
}

.pagination-prev .icon-svg {
    font-size: 12px;
    -webkit-transition: 0s;
    -o-transition: 0s;
    transition: 0s;
    margin-top: 0;
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    transform: scaleX(-1)
}

.pagination-next .icon-svg {
    font-size: 12px;
    -webkit-transition: 0s;
    -o-transition: 0s;
    transition: 0s;
    margin-top: 0
}

.page-sub-title {
    font-size: 40px;
    font-weight: bold;
    font-family: 'Montserrat Alternates', serif;
    line-height: 1.3;
}

@media screen and (max-width: 900px) {
    .page-sub-title {
        font-size: 24px;
        margin-top: 18px;
    }
}

@media screen and (max-width: 600px) {
    .page-sub-title {
        font-size: 16px;
        margin-top: 6px;
    }
}

.df-no-scroll {
    overflow:hidden
}
img:not([src]):not([srcset]) {
    visibility: hidden;
}
.banner-section {
    position: relative;
    border-radius: 4px;
    display: inline-block;
    overflow: hidden;
}
.banner-section .h1 {
    position: absolute;
    bottom: 24px;
    left: 32px;
    z-index: 12;
}
.banner-section:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: -o-linear-gradient(top, rgba(31, 31, 31, 0) 59.6%, rgba(31, 31, 31, 0.6) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(59.6%, rgba(31, 31, 31, 0)), to(rgba(31, 31, 31, 0.6)));
    background: linear-gradient(
        180deg
        , rgba(31, 31, 31, 0) 59.6%, rgba(31, 31, 31, 0.6) 100%);
    z-index: 10;
}
.banner-section:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: -o-linear-gradient(bottom, rgba(31, 31, 31, 0.8), rgba(31, 31, 31, 0.8));
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(31, 31, 31, 0.8)), to(rgba(31, 31, 31, 0.8)));
    background: linear-gradient(
        0deg
        , rgba(31, 31, 31, 0.8), rgba(31, 31, 31, 0.8));
    z-index: 5;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
}
.banner-section:hover:after {
    opacity: 1;
    visibility: visible;
}