@charset 'utf-8';
body {font-size: 16px; margin-left: auto; margin-right: auto; position: relative; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; min-height: 100vh;}
.wrap {max-width: 1920px;}
.all-wrap {-webkit-flex-grow: 1;flex-grow: 1;display: -webkit-flex;display: flex;-webkit-flex-direction: column;flex-direction: column;}
.thanks {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-grow: 1;
    flex-grow: 1;
}
header {padding: 20px 0;    position: fixed;
    left: 0;
    right: 0;
    z-index: 12;
    top: 0;
}
header .wrap, .header-left, .header-right {display: -webkit-flex;display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; color: #fff;}
header.fixed {
    padding: 10px 0;
    background-color: #fff;
    box-shadow: 0 0 20px 0 rgba(0,0,0,0.15);
}

header.fixed .btn-menu-inner, header.fixed  .btn-menu-inner::before, header.fixed  .btn-menu-inner::after {background-color: #000;}

header.fixed .wrap, header.fixed .header-left, header.fixed .header-right, header.fixed .top-menu-link {
    color: #000;
}
header.fixed .address::before {background-image: url('images/location.svg');}

.logo {width: 180px; margin-right: 60px;}
.logo-black {display: none;}
header.fixed .logo-white {display: none;}
header.fixed .logo-black {display: inline-block;}
.grid.intro {max-width: 100%;}
.intro-outer {display: -webkit-flex;display: flex;-webkit-flex-direction: column;flex-direction: column; position: relative; z-index: 10;}
.intro-outer::after {content: ''; position: absolute; left: 0; right: 0; top: 0; bottom: 0; z-index: -1;
    background: -moz-linear-gradient(top,  rgba(0,0,0,0.7) 0%, rgba(0,0,0,0) 100%);
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0.7) 0%,rgba(0,0,0,0) 100%);
    background: linear-gradient(to right,  rgba(0,0,0,0.7) 0%,rgba(0,0,0,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 );
}
.intro-outer > .wrap {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    display: -webkit-flex;
    display: flex;
    padding-top: 50px;
    padding-bottom: 50px;
}
.scroll-down {display: block; border: 0; width: 48px; height: 48px; background: url('images/arrow-down.svg') no-repeat center center / contain transparent; position: absolute; bottom: 50px; left: 50%; margin-left: -24px; -webkit-animation: move 1s infinite  alternate;
    animation: move 1s infinite  alternate; z-index: 11;}
    @-webkit-keyframes move {
        0% { -webkit-transform: translateY(0); transform: translateY(0); }
        100% { -webkit-transform: translateY(-10px); transform: translateY(-10px); }
    }
    @keyframes move {
        0% { -webkit-transform: translateY(0); transform: translateY(0); }
        100% { -webkit-transform: translateY(-10px); transform: translateY(-10px); }
    }
    .top-menu {display: -webkit-flex;display: flex;}
    .top-menu-item:not(:last-child) {margin-right: 30px;}
    .top-menu-link {color: #fff;}
    .header-phone {font-size: 26px; margin-right: 44px;}
    header .address {font-size: 16px; padding-left: 35px;  max-width: 250px; margin-right: 44px; position: relative;}
    header .address::before {
        content: '';
        position: absolute;
        width: 30px;
        height: 30px;
        left: 0;
        top: 50%;
        margin-top: -15px;
        background: url('images/location-w.svg') no-repeat left center / contain;
    }
    header .btn {
        padding: 10px 18px;
    }

    .e-icon-call-w::before {background-image: url('images/call-w.svg');}
    .e-icon-calendar::before {background-image: url('images/calendar.svg');}
    .e-icon-play-w::before {background-image: url('images/play-w.svg'); width: 24px; height: 24px;}

    .intro {color: #fff; padding: 100px 0; position: relative; z-index: 11;}
    .intro h1 {font-weight: 400;}
    .intro h1, .intro-right h3 {line-height: 1;}
    .intro-left-inner {max-width: 800px;}
    .intro-right {font-size: 22px;}
    .intro-right h3 {font-weight: 400; font-size: 68px; line-height: 1; margin-bottom: 0;}
    .intro-right h3 + h3 {margin-top: 20px;}
    .intro-right h3 span {font-size: 0.6em;}
    .intro-text {margin: 40px 0;}

    #features {text-align: center;}
    #features table {max-width: 1340px; margin: 60px auto; width: 100%; table-layout: fixed;}
    #features img {height: 150px; margin: 0 auto 30px}
    #features h4 + p {max-width: 320px; margin: auto;}
    #features table tr {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
    #features table tr + tr {margin-top: 30px;}
    section {padding: 70px 0;}
    .light-bg {background-color: #F1F1F1;}

    [data-swiper-gallery] .swiper-slide {text-align: center;}
    .swiper-slide img {display: block;}
    .gallery-video-item {position: relative; padding-bottom: 66.66666667%; background-repeat: no-repeat; background-position: center center; background-size: cover;}
    .gallery-video-item .btn {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}


    .format-item img {margin-bottom: 17px;}
    .icon-item {margin-bottom: 40px; line-height: 1.4;}
    .icon-item img {height: 74px; margin-bottom: 20px;}

    #gallery, #offers {background-color: #f1f1f1; text-align: center;}
    h2 + .swiper-outer {margin-top: 40px;}
    .swiper-outer.swiper-navigation-offset {padding-left: 60px; padding-right: 60px;}
    .swiper-pagination {
        position: static;
        margin: 20px auto;
    }
    .swiper-button-next, .swiper-button-prev {
        background-image: url('images/arrow-right.svg');
        width: 60px;
        height: 60px;
        background-size: contain;
        z-index: 9;
    }
    .swiper-button-prev {-webkit-transform: rotate(180deg);transform: rotate(180deg)}
    .swiper-button-disabled {display: none;}
    /* .swiper-button-next {-webkit-transform: translateX(140px);transform: translateX(140px)} */
    /* .swiper-button-next, .swiper-button-prev {margin-top: -50px;} */

    .plan-item {background-color: #fff; padding: 20px; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; height: 100%; -webkit-align-items: flex-start; align-items: flex-start;}
    .plan-item .title {font-size: 37px;}
    .plan-item .title span {color: #C9460C;}
    .plan-item-type {text-transform: uppercase; display: inline-block; padding: 5px 12px; color: #fff; background-color: #249BA4; font-weight: 900; margin-left: -30px; margin-bottom: 20px;}
    .plan-item-bottom, .plan-item .btn {width: 100%;}
    .plan-item-bottom {
        margin-top: auto;
    }
    .plan-item .btn {margin-top: 25px;}
    .plan-item-price {font-weight: 900; font-size: 30px;}
    .plan-desc {min-height: 120px;}

    .grid-special {background-color: #373331; color: #fff;}
    .special-left {width: -webkit-calc(100% - 800px);width: calc(100% - 800px);}
    .special-right {width: 800px; padding: 90px; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; -webkit-align-items: flex-start; align-items: flex-start;}
    .special-label {text-transform: uppercase; font-weight: 900; color: #fff; background-color: #C9460C; display: inline-block; padding: 5px 12px; font-size: 30px; margin-bottom: 25px;}
    .special-desc {font-size: 25px; margin-bottom: 40px;}

    .contacts {font-size: 24px;}
    .contact-item {padding-left: 55px; background: no-repeat left center / 40px auto; margin-bottom: 20px; min-height: 40px; line-height: 40px;}
    .contacts .address {background-image: url('images/location.svg'); line-height: 1.3;}
    .contacts .phone {background-image: url('images/call.svg');}
    .contacts .email {background-image: url('images/mail.svg'); display: inline-block;}
    .map {min-height: 300px; height: 100%; max-width: 100%;}
    .map > ymaps {max-width: 100% !important;}

    footer {background-color: #373331; padding: 35px 0; font-size: 15px;  color: #f2f2f2;}
    .innerpage footer {margin-top: 30px;}
    footer .link {color: #f2f2f2; border-bottom-color: rgba(242, 242, 242, .53);}
    /*     footer .wrap {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    } */
    /* .oferta {display: flex;flex-wrap: wrap;} */
    .oferta p {margin-bottom: 12px; margin-right: 30px; font-size: 20px;}
    .footer-copy {
        opacity: .7;
        padding-right: 70px;
        margin-top: 20px;
    }
    @media screen and (min-width: 600px) {
        .footer-copy {padding-right: 340px;}
    }
    .accept-cookies{position:fixed;bottom:0;padding:15px;background-color:#373331;color:#fff;-webkit-transform:translateY(50px);transform:translateY(50px);font-size:0;z-index:9;left:0;right:0;box-shadow:0 0 15px 5px rgba(70, 74, 79, 0.18);opacity:0; -webkit-transition: .2s all ease-in-out; transition: .2s all ease-in-out; }
    .accept-cookies.visible{-webkit-transform:translateY(0);transform:translateY(0);opacity:1;}
    .btn-accept-cookies{font-size:14px;color:#fff;border-radius:2px;padding:10px 15px;background-color:#C9460C;border:0;}
    .cookies-text{font-size:11px;margin-bottom:10px;}
    @media screen and (min-width:768px){.cookies-text, .btn-accept-cookies{display:inline-block;vertical-align:top;}
    .btn-accept-cookies{width:130px;margin-left:20px;}
    .cookies-text{width:-webkit-calc(100% - 150px);width:calc(100% - 150px);margin-bottom:0;font-size:14px;}
}

.svg-plan {position: relative;}
/* .svg-plan [data-active] circle {transform: scale(1.2); transform-origin: 0 0;} */
.svg-plan .occupied circle {fill: #22abeb}
.svg-plan .booked circle {fill: #C9460C}
.place-card {
    width: 280px;
    position: absolute;
    right: 0;
    top: 0;
    background-color: #fff;
    border-radius: 6px;
    box-shadow: 0 0 20px 0 rgba(0,0,0,0.15);
}
.place-image {display: block; border-radius: 6px 6px 0 0;}
.place-bottom {padding: 15px;}
.place-bottom .btn {width: 100%;}
.place-title, .place-price {font-weight: 900; font-size: 20px; margin-bottom: 10px;}
.place-price {margin: 10px 0;}
.place-desc {color: #444; font-size: 15px;}
.svg-plan {padding: 50px 0;}
svg#plan {
    max-width: 100%;
}
[data-place-point] {cursor: pointer;}

.close-place-item {
    position: absolute;
    border: 0;
    background: url('images/btn-close-w.svg') no-repeat center center / 12px auto;
    background-color: rgba(0,0,0,.5);
    width: 30px;
    height: 30px;
    border-radius: 100px;
    right: 10px;
    top: 10px;
}

.zoom-control {position: absolute; left: 0; top: 50%; }
.btn-zoom-control {display: block; width: 50px; height: 50px; background-color: #000; color: #fff; font-size: 30px;-webkit-transition: .2s all ease-in-out;transition: .2s all ease-in-out; }
.btn-zoom-control + .btn-zoom-control { border-top: 1px solid rgba(255,255,255,.6); }
.btn-zoom-control:hover {opacity: 0.7;}

.counter {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
}

.textbox [data-input-counter] {
    width: 70px;
    text-align: center;
}

.counter p {
    margin: 10px 20px 10px 0;
}

.counter-block {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
}

.btn-count {
    border: 0;
    font-size: 31px;
    display: inline-block;
    padding: 5px 10px;
    line-height: 1;
}

.btn-small, [data-pricetable] a {
    padding: 8px 10px;
}
[data-pricetable] {max-width: 900px; margin: auto; color: #555;}
[data-pricetable] td {padding: 15px 10px; border-bottom: 1px solid #e0e0e0;}
[data-pricetable] tr {border-radius: 4px;}
[data-pricetable] tr:first-child td {text-transform: uppercase; font-size: 0.8em; color: #000;}
[data-pricetable] tr:not(:first-child):hover {box-shadow: 0 0 20px 6px rgba(0,0,0,0.1);}
[data-pricetable] tr:not(:first-child):hover td {background-color: #fff;}
[data-pricetable] td:last-child {text-align: right; border-radius: 0 4px 4px 0; padding-right: 15px;}
[data-pricetable] td:first-child {border-radius: 4px 0 0 4px; padding-left: 15px;}

.planstable td {min-height: 50px; text-align: center;}
.planstable tr:first-child td {font-size: 1.3em !important; color: #C9460C;}
.planstable tr:nth-child(n+3) td {border-top: 1px solid #f1f1f1; background-color: #f1f1f1; text-align: left;}
.planstable tr:nth-child(n+3):nth-child(even) td {background-color: #e0e0e0;}
.planstable tr:nth-child(n+3):hover {box-shadow: 0 0 20px 6px rgba(0,0,0,0.1);}
.planstable tr:nth-child(n+3) td:nth-child(n+2):not(:empty){font-size: 0; background-image: url('images/check.svg'); background-repeat: no-repeat; background-position:  center center; background-size: 26px;}
.planstable tr:nth-child(n+3):hover td {background-color: #fff !important;}
.planstable table {max-width: 100% !important;}

.legend-item {display: inline-block; margin: 5px 0 5px 20px;}
.legend-item::before {content: ''; width: .7em; height: .7em; border-radius: 50%; display: inline-block; margin-right: 5px; vertical-align: baseline; background-color: #00af5b;}
.legend-item.occupied::before {background-color: #C9460C;}
.legend-item.booked::before {background-color: #22abeb;}

.legend-group {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items:center;
    align-items:center;
}

.legend {display: -webkit-flex;display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: center; align-items: center; margin-top: 15px;}

.legend-price-item {
    border: 2px solid;
    margin: 0 0 5px 10px;
    padding: 5px 10px;
}

.legend-price-item.red {
    border-color: #ff7878;
    background-color: #ffe2e2;
}

.legend-price-item.blue {
    border-color: #5bb1e2;
    background-color: #daf2ff;
}

.legend-price-item.yellow {
    border-color: #fbf57d;
    background-color: #fffddb;
}

.legend-price-item.green {
    border-color: #9bdaa9;
    background-color: #eaffee;
}
.legend-notice {color: #444; margin: 15px 0; flex-grow: 1; font-size: 16px; padding-left: 25px; background: url('images/information.svg') no-repeat left center / 20px auto; text-align: left;}

.contacts .socials li {display: inline-block; margin-bottom: 15px;}
.contacts .socials li:not(:last-child) {margin-right: 20px;}
.social-icon {position: relative;padding-left: 40px; display: inline-block; line-height: 30px; min-height: 30px; }
.social-icon::before {content:''; position: absolute; left: 0; background-repeat: no-repeat; background-position: center center; background-size: contain; width: 30px; height: 100%;}
.social-icon.instagram::before {background-image: url('images/instagram.svg');}
.social-icon.zen::before {background-image: url('images/zen.svg');}
.social-icon.facebook::before {background-image: url('images/facebook.svg');}

.innerpage h1 {font-size: 50px;}
.category-desc {margin-bottom: 30px;}
.event-item {display: flex; flex-direction: column; position: relative; margin-bottom: 15px;}
.event-item .event-tag { background-color: #fff; font-size: 15px; border-radius: 4px; padding: 8px 10px; }
.event-item .event-tag {position: absolute;  top: 10px; left: 10px;}
.event-item-title {margin-top: 10px; font-size: 20px;}
.event-item-text {font-size: 16px; color: #444; margin-top: 10px;}
.event-info {display: flex; margin-top: 10px; align-items: center; font-size: 18px; color: #000;}
[class^="event-status"] {margin-left: 20px; padding: 5px 10px; background-color: #f2f2f2; border-radius: 4px;}
[class^="event-status"]::before {content: ''; display: inline-block; vertical-align: middle; width: 6px; height: 6px; margin-right: 3px; background-color: #C9460C; border-radius: 50%;}
.event-status-offline {color: #C9460C;}
.event-status-online {color: #0ca55e;}
.event-status-online::before {background-color: #0ca55e;}
.swiper-outer {position: relative;}
.swiper-events {padding-left: 60px; padding-right:60px;}

.swiper-button-prev.swiper-button-offset {left: -10px;}
.swiper-button-next.swiper-button-offset {right: -10px;}
.swiper-button-next.swiper-button-red, .swiper-button-prev.swiper-button-red {background-image: url('images/arrow-right-primary.svg');}

.video-block .grid-gap {align-items: center;}
@media all and (min-width: 1024px) {
    .video-block .text-block {padding-left: 30px;}
}
@media all and (max-width: 1023px) {
    .video-block .grid-gap {flex-direction: column-reverse;}
}
.video-block .text-block * {line-height: 1.4; margin: 0;}
.video-block .text-block h3 {line-height: 1.2;}
.video-block .text-block * + * {margin-top: 10px;}


.promoblock {
    position: relative;
    box-shadow: 10px 10px 51px 3px rgba(102, 108, 123, .18);
    margin: 40px 0;
    display: flex;
    align-items: stretch;
}
.promoblock-image {
    background-repeat: no-repeat;
    background-position: center bottom;
    min-height: 250px;
    background-size: auto 100%;
}
.promoblock-desc {position: relative;padding: 30px 30px 30px 80px;z-index: 1;}
.promoblock .btn {padding-top: 12px; padding-bottom: 12px; margin-top: 15px;}
.promoblock .ipg-logo {width: 120px; display: block; margin-bottom: 15px;}

@media screen and (max-width: 1279px){
    .promoblock-desc {padding-left: 30px;}
}

.price-meetingroom .grid-gap {align-items: center;}

.client-item{position:relative;display:block;overflow:hidden;-moz-box-sizing:border-box;box-sizing:border-box;cursor:default;background-color: #fff;background-repeat:no-repeat;background-position:center center;background-size:70% auto;}
.client-item-logo{background-repeat:no-repeat;background-position:center center;background-size:70% auto;position:absolute;top:0;left:0;width:100%;height:100%;}
.client-item::before{display:block;padding-top:100%;content:'';}
.client-desc{position:absolute;top:0;left:-100%;-moz-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;padding:15px;text-align:left;opacity:.97;color:#fff;background-color:#C9460C;}
.client-name{font-size:18px;font-weight:600;margin-bottom:5px;}
.client-desc-text{font-size:14px;}
.client-item:hover .client-desc{left:0;}
.client-item:hover .btn{color:#fff;border-color:#fff;}
.section-desc {margin: 10px 0 40px;}
.oneitem-gallery {overflow:hidden; max-height:440px; position: relative;}
.btn-franch {background:#5d7e27; color:#fff; margin-left: auto;min-height: 44px;min-width: 222px;}
.f-wrap {flex-wrap:wrap}
.fixed .btn-franch  {min-width:0}
.fixed .btn-franch span {display:none;}
.fixed .btn-callback span span {display:none}
#offers {margin-bottom:100px}
.is-flex {display:flex}
.j-c-sb {justify-content:space-between}
.a-i-c {align-items:center}
.a-i-bl {align-items:baseline}
.a-i-s {align-items:start}
.a-i-e {align-items:end}
.gap10 {gap:10px}
.gap20 {gap:20px}
.gap30 {gap:30px}
.gap40 {gap:40px}
.resident-offers {flex-wrap:wrap}
.resident-offer-item {width:calc(33.33% - 20px); padding:25px; background:#fff; display: flex;  flex-direction: column; gap: 60px; text-align:left; justify-content: space-between;}
.resident-offer-item img {max-height:55px; max-width:135px}
.resident-offer-item .offer-value {font-size: 32px; font-weight: 600; line-height:1em}
.resident-offer-item .offer-desc {font-size:16px; color:#000000a8; text-align:right; max-width:150px}
.resident-offer-item .offer-title p {font-size:16px; color:#000000a8;}
.resident-offer-item .offer-title p + p {font-size:24px; color:#000000; text-transform:uppercase; margin-top:5px; font-weight: 600;}