 /* BASIC STYLES */
/* ------------ */

*{
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

::-moz-selection {
    background: #3E5363;
    color: #fff;
}
::selection {
    background: #3E5363;
    color: #fff;
}

html{
    font-size: 6.944444444444444vw;
    opacity: 1;
}

html,
body{
    width: 100%;
    max-width: 100vw;
    background-color: #f1f1f1;
}

body{
    font-family: 'Proxima Nova';
    font-weight: normal;
    font-size: .20rem;
    line-height: .40rem;
    font-weight: normal;
    font-style: normal;
    color: #3E5363;
}

a,
a:hover,
a:focus,
a:active,
a:visited{
    text-decoration: none;
    outline: none;
    color: #3E5363;
}

ul,
ol{
    margin: 0;
    padding: 0;
    list-style: none;
}

input,
textarea,
select{
    border: none;
    border-radius: 0;
    outline: none;
    padding: 0;
    margin: 0;
    display: block;
    width: 100%;
    background-color: rgba(255,255,255,0);
}

textarea{
    resize: none;
}

button{
    background: transparent;
    border-radius: 0;
    border: none;
    outline: none;
    padding: 0;
}
.grecaptcha-badge {
    opacity: 0;
}
.clearfix::before,
.clearfix::after {
  content: "";
  display: table;
}
 
.clearfix::after {
  clear: both;
}

.overflow-hidden{
    overflow: hidden;
}

.text-center {
    text-align: center;
}

.page-wrapper {
    position: relative;
    min-height: 100vh;
}

.page-wrapper.page-wrapper-contacts {
    min-height: 100%;
}


.pulse {
    border-radius: 50%;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    animation: pulsate 2s ease-out;
    animation-iteration-count: infinite;
    opacity: 0.0;
    box-shadow: 0 0 .01rem .02rem #fff;
    animation-delay: 2s;
}

@keyframes pulsate {
  0% {
    transform: scale(0.9, 0.9);
    opacity: 0.0;
  }
  50% {
    opacity: 1.0;
  }
  100% {
    transform: scale(1.3, 1.3);
    opacity: 0;
  }
}
/* HEADER */

.site-made-by {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    position: absolute;
    bottom: .45rem;
    left: 1.76rem;
}

.site-made-by span {
    display: block;
    font-size: .14rem;
    line-height: .28rem;
    text-align: right;
    letter-spacing: 0.02em;
    color: #FFFFFF;
    margin-right: .1rem;
}

.site-made-by img {
    display: block;
    width: 0.6rem;
}

.header-sidebar {
    width: 1.2rem;
    max-width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    pointer-events: none;
}

.header-sidebar-top {
    width: 100%;
    height: 1.6rem;
    background-color: #fff;
    position: relative;
    box-shadow: 0 0.05rem 0.2rem 0 rgba(62, 83, 99, .07);
    pointer-events: auto;
}

.header-sidebar-top a.logo {
    display: block;
    height: .4rem;
    position: absolute;
    top: .4rem;
    right: .41rem;
}

.header-sidebar-top a.logo > img {
    display: block;
    height: 100%;
    width: auto;
}

.menu-button {
    height: .7rem;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: .1rem 0 0 0;
    cursor: pointer;
}

.menu-button .burger {
    width: .4rem;
    height: .13rem;
    margin: 0 auto;
    position: relative;
    transition: width 1s ease, height 1s ease;
}

.menu-button .burger::before {
    content: '';
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: .02rem;
    background-color: #3E5363;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-transform-origin: 0 50%;
            transform-origin: 0 50%;
    transition: width .6s ease, left .6s ease, background-color .6s ease, -webkit-transform 1s ease;
    transition: transform 1s ease, width .6s ease, left .6s ease, background-color .6s ease;
    transition: transform 1s ease, width .6s ease, left .6s ease, background-color .6s ease, -webkit-transform 1s ease;
}

.menu-button .burger::after {
    content: '';
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: .02rem;
    background-color: #3E5363;
    position: absolute;
    left: 0;
    bottom: 0;
    -webkit-transform-origin: 0 50%;
            transform-origin: 0 50%;
    transition: width .6s ease, left .6s ease, background-color .6s ease, -webkit-transform 1s ease;
    transition: transform 1s ease, width .6s ease, left .6s ease, background-color .6s ease;
    transition: transform 1s ease, width .6s ease, left .6s ease, background-color .6s ease, -webkit-transform 1s ease;
}

.menu-button:not(.active):hover .burger::before {
    width: 80%;
    left: 10%;
}

.menu-button:not(.active):hover .burger::after {
    width: 60%;
    left: 20%;
}

.menu-button.active .burger {
    width: .23rem;
    height: .23rem;
}

.menu-button.active .burger::before {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    width: 130%;
    background-color: #CAD5DD;
}

.menu-button.active .burger::after {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    width: 130%;
    background-color: #CAD5DD;
}

.menu-button.active:hover .burger::before {
    background-color: #3E5363;
}

.menu-button.active:hover .burger::after {
    background-color: #3E5363;
}

.header-sidebar-socials-list {
    margin: .2rem 0 0 0;
    pointer-events: auto;
}

.header-sidebar-socials-list > li {
    margin: 0 0 .2rem 0;
}

.header-sidebar-socials-list > li > a {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    background-color: #fff;
    text-align: center;
    font-size: .16rem;
    line-height: .16rem;
    box-shadow: 0 0.05rem 0.2rem 0 rgba(62, 83, 99, .07);
    transition: box-shadow .5s ease, -webkit-transform .5s ease;
    transition: transform .5s ease, box-shadow .5s ease;
    transition: transform .5s ease, box-shadow .5s ease, -webkit-transform .5s ease;
}

.header-sidebar-socials-list > li > a:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
    box-shadow: 0 0.1rem 0.4rem 0 rgba(62, 83, 99, .14);
}

.header-sidebar-lang-list {
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .1rem;
    line-height: .4rem;
    text-align: center;
    position: absolute;
    bottom: .4rem;
    left: calc(50% - .2rem);
    width: .4rem;
    height: .4rem;
    pointer-events: auto;
}

.header-sidebar-lang-list > li {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    pointer-events: none;
    -webkit-transform: translateY(.1rem);
            transform: translateY(.1rem);
    padding: 0 0 .1rem 0;
    transition: opacity .6s ease, -webkit-transform .6s ease;
    transition: opacity .6s ease, transform .6s ease;
    transition: opacity .6s ease, transform .6s ease, -webkit-transform .6s ease;
}

.header-sidebar-lang-list:hover > li {
    opacity: 1;
    pointer-events: auto;
    -webkit-transform: translateY(0);
            transform: translateY(0);
}

.header-sidebar-lang-list > li.active {
    opacity: 1;
    pointer-events: auto;
    -webkit-transform: translateY(0);
            transform: translateY(0);
}

.header-sidebar-lang-list > li:first-of-type {
    position: absolute;
    top: -1rem;
    transition-delay: .1s;
}

.header-sidebar-lang-list > li:nth-of-type(2) {
    position: absolute;
    top: -.5rem;
}

.header-sidebar-lang-list > li > a {
    display: block;
    width: .4rem;
    height: .4rem;
    background-color: #fff;
    border-radius: 50%;
    background-color: #fff;
    box-shadow: 0 0.05rem 0.2rem 0 rgba(62, 83, 99, .07);
    transition: color .3s ease, box-shadow .5s ease;
}

.header-sidebar-lang-list > li:not(.active) > a:hover {
    color: #3c6847;
    box-shadow: 0 0.1rem 0.4rem 0 rgba(62, 83, 99, .14);
}

.header-btns {
    width: .8rem;
    height: .8rem;
    position: fixed;
    top: .4rem;
    right: .4rem;
    z-index: 1000;
}

.cta-callback-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    width: .8rem;
    height: .8rem;
    background-color: #fff;
    border-radius: 50%;
    box-shadow: 0 0.05rem 0.2rem 0 rgba(62, 83, 99, .07);
    transition: box-shadow .5s ease, -webkit-transform .5s ease;
    transition: transform .5s ease, box-shadow .5s ease;
    transition: transform .5s ease, box-shadow .5s ease, -webkit-transform .5s ease;
}

.cta-callback-btn:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
    box-shadow: 0 0.1rem 0.4rem 0 rgba(62, 83, 99, .14);
}

.cta-callback-btn > img {
    display: block;
    width: .224rem;
    height: auto;
}

.camera-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: .4rem;
    height: .4rem;
    background-color: #fff;
    border-radius: 50%;
    box-shadow: 0 0.05rem 0.2rem 0 rgba(62, 83, 99, .07);
    transition: box-shadow .5s ease, -webkit-transform .5s ease;
    transition: transform .5s ease, box-shadow .5s ease;
    transition: transform .5s ease, box-shadow .5s ease, -webkit-transform .5s ease;
    cursor: pointer;
    position: absolute;
    top: 1rem;
    left: calc(50% - .2rem);
}
.camera-btn > span {
    position: absolute;
    display: block;
    width: 100%;
    text-align: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity .5s;
}
#cctv-btn2 {
    display: none;
    top: 1.6rem;
}

.wecams-controls {
    position: absolute;
    z-index: 10;
    top: .2rem;
    left: .2rem;
}

.wecams-controls li {
    margin-bottom: .15rem;
}

.wecams-controls li > span {
    padding: .2rem .4rem;
    min-width: auto;
}

.wecams-controls li.active .button.button-outline > span {
    color: #fff;
}
.wecams-controls li.active > span {
    background-color: transparent !important;
}

.wecams-controls li.active > span::after {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
}

.camera-btn:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
    box-shadow: 0 0.1rem 0.4rem 0 rgba(62, 83, 99, .14);
}

.camera-btn > img {
    display: block;
    width: .2rem;
    height: auto;
    transition: transform .5s;
}






.header-menu-container {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: -100%;
    z-index: 999;
    
    background-color: #f1f1f1;
    transition: -webkit-transform 1.5s ease;
    transition: transform 1.5s ease;
    transition: transform 1.5s ease, -webkit-transform 1.5s ease;
    overflow: hidden;
}

.header-menu-container.active {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
}

.header-menu-container::before {
    content: '';
    display: block;
    box-sizing: border-box;
    width: 50%;
    height: 100%;
    background-color: #3c6847;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.header-menu-container.active::before {
    -webkit-transform: none;
            transform: none;
}

.menu-bg-logo {
    width: auto;
    height: 4.5rem;
    position: absolute;
    top: calc(50% - 2.25rem);
    left: calc(50% - 3.87rem);
}

a.menu-cta-choose {
    height: .8rem;
    padding: 0 .5rem;
    background-color: #3c6847;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    text-transform: uppercase;
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    position: absolute;
    bottom: 0;
    right: 0;
    cursor: pointer;
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    opacity: 0;
    transition-delay: 0;
    transition: opacity .1s ease, -webkit-transform 1s ease;
    transition: transform 1s ease, opacity .1s ease;
    transition: transform 1s ease, opacity .1s ease, -webkit-transform 1s ease;
}

.header-menu-container.active a.menu-cta-choose{
    -webkit-transform: none;
            transform: none;
    opacity: 1;
    transition: opacity 1s ease, -webkit-transform 1s ease;
    transition: transform 1s ease, opacity 1s ease;
    transition: transform 1s ease, opacity 1s ease, -webkit-transform 1s ease;
    transition-delay: 1.5s;
}

a.menu-cta-choose span {
    display: block;
    letter-spacing: .01rem;
}

a.menu-cta-choose img {
    display: block;
    width: .3rem;
    height: auto;
    margin: 0 0 0 .74rem;
    transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease;
}

a.menu-cta-choose:hover {
    color: #fff;
}

a.menu-cta-choose:hover img {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
}

.menu-cta-call-message {
    position: absolute;
    top: .6rem;
    right: 1.4rem;
    opacity: 0;
    -webkit-transform: translateX(-.5rem);
            transform: translateX(-.5rem);
    transition: opacity .3s ease, -webkit-transform 1.5s ease;
    transition: transform 1.5s ease, opacity .3s ease;
    transition: transform 1.5s ease, opacity .3s ease, -webkit-transform 1.5s ease;
    transition-delay: 0;
}

.header-menu-container.active .menu-cta-call-message{
    opacity: 1;
    -webkit-transform: none;
            transform: none;
    transition: opacity 1.5s ease, -webkit-transform 1.5s ease;
    transition: transform 1.5s ease, opacity 1.5s ease;
    transition: transform 1.5s ease, opacity 1.5s ease, -webkit-transform 1.5s ease;
    transition-delay: 1s;
}

.menu-cta-call-message a {
    display: block;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    margin: 0 0 .01rem 0;
}

.menu-cta-call-message span {
    display: block;
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    text-align: right;
    color: #3c6847;
    cursor: pointer;
    transition: color .6s ease;
}

.menu-cta-call-message span:hover {
    color: #54983B;
}

.header-menu-content {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    overflow: auto;
}

.header-menu-content-meta {
    padding: .6rem 0 0 1.8rem;
}

.header-menu-content-meta-address span,
.header-menu-content-meta-address a {
    display: block;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    letter-spacing: .004rem;
    color: #fff;
    margin: 0 0 .01rem 0;
}

.header-menu-content-meta-address a {
    display: inline-block;
    vertical-align: top;
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    color: #FFF;
    transition: color .3s ease;
}

.header-menu-content-meta-address a:hover {
    color: #f5f5f5;
}

.header-menu-content-columns-container {
    display: flex;
    padding: .7rem 0 .3rem 0;
}

.header-menu-content-column {
    width: 50%;
    padding: 0 .4rem 0 1.8rem;
}

.header-menu-content-column ul {
    font-weight: 600;
    font-size: .25rem;
    line-height: .3rem;
    letter-spacing: .0087rem;
    text-transform: uppercase;
}

.header-menu-content-column ul li {
    -webkit-transform: translateX(-1rem);
            transform: translateX(-1rem);
    opacity: 0;
    transition: opacity 2s ease, -webkit-transform 2s ease;
    transition: transform 2s ease, opacity 2s ease;
    transition: transform 2s ease, opacity 2s ease, -webkit-transform 2s ease;
}

.header-menu-content-column ul li:nth-of-type(2) {
    transition-delay: .2s;
}

.header-menu-content-column ul li:nth-of-type(3) {
    transition-delay: .4s;
}

.header-menu-content-column ul li:nth-of-type(4) {
    transition-delay: .6s;
}

.header-menu-content-column ul li:nth-of-type(5) {
    transition-delay: .8s;
}

.header-menu-content-column ul li:nth-of-type(6) {
    transition-delay: 1s;
}

.header-menu-container.active .header-menu-content-column ul li {
    -webkit-transform: none;
            transform: none;
    opacity: 1;
}

.header-menu-content-column ul > li:not(:last-of-type) {
    margin: 0 0 .4rem 0;
}

.header-menu-content-column ul > li > a {
    display: inline-block;
    vertical-align: text-top;
    position: relative;
}

.header-menu-content-column ul > li > a::after {
    content: '';
    display: block;
    width: 0;
    box-sizing: border-box;
    width: 0;
    height: .03rem;
    background-color: #3E5363;
    position: absolute;
    bottom: -.08rem;
    left: 0;
    transition: width .6s ease;
}

.header-menu-content-column:first-of-type ul > li > a::after {
    background-color: #fff;
}

.header-menu-content-column ul > li > a:hover::after {
    width: .4rem;
}

.header-menu-content-column:first-of-type ul > li > a {
    color: #fff;
}









/* MODAL - CCTV */

.cctv-modal {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    right: -100%;
    z-index: 2000;
    background-color: #f1f1f1;
    transition: -webkit-transform 1.5s ease;
    transition: transform 1.5s ease;
    transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}

.wecams-list,
.wecams-list > li {
    width: 100%;
    height: 100%;
}

.wecams-list > li {
    position: absolute;
    top: 0;
    left: 0;
    display: none;
    flex-direction: column;
    justify-content: center;
}
.wecams-list > li.active {
    display: flex;
}
.cctv-modal .close-modal-btn {
    z-index: 10;
}

.cctv-modal.active {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
}

.close-modal-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: .8rem;
    height: .8rem;
    border-radius: 50%;
    background-color: #fff;
    box-shadow: 0 0.05rem 0.2rem 0 rgba(62, 83, 99, .07);
    transition: box-shadow .6s ease, -webkit-transform .6s ease;
    transition: transform .6s ease, box-shadow .6s ease;
    transition: transform .6s ease, box-shadow .6s ease, -webkit-transform .6s ease;
    position: absolute;
    top: .4rem;
    right: .4rem;
    cursor: pointer;
}

.close-modal-btn:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
    box-shadow: 0 0.1rem 0.4rem 0 rgba(62, 83, 99, .14);
}

.close-modal-btn > img {
    display: block;
    width: .2rem;
    height: auto;
    transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease;

}

.close-modal-btn:hover > img {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
}


/* MODAL - MAP */

.map-modal {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    right: -100%;
    z-index: 2000;
    background-color: #f1f1f1;
    transition: -webkit-transform 1.5s ease;
    transition: transform 1.5s ease;
    transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}

.map-modal.active {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
}

.map-modal-content {
    width: 100%;
    height: 100%;
    position: relative;
}








/* COMMON */

.decorate-leaf {
    display: inline-block;
    vertical-align: top;
    position: relative;
}

.decorate-leaf::after {
    content: '';
    display: block;
    box-sizing: border-box;
    width: .12rem;
    height: .12rem;
    background-image: url('../static/img/ui/one_leaf_right.svg');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right: -.08rem;
    top: .17rem;
}

.decorate-leaf-left {
    display: inline-block;
    vertical-align: top;
    position: relative;
}

.decorate-leaf-left::after {
    content: '';
    display: block;
    box-sizing: border-box;
    width: .12rem;
    height: .12rem;
    background-image: url('../static/img/ui/one_leaf_left.svg');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    left: -.09rem;
    top: .12rem;
}

.decorate-img {
    display: block;
    width: 2.22rem;
    height: 3rem;
    border: .1rem solid #f1f1f1;
}

.decorate-img > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* Button */

a.button,
.button {
    display: block;
    padding: .3rem .37rem;
    background-color: #3c6847;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
    transition: color .6s ease, -webkit-transform .6s ease;
    transition: transform .6s ease, color .6s ease;
    transition: transform .6s ease, color .6s ease, -webkit-transform .6s ease;
    position: relative;
    overflow: hidden;
    min-width: 2.5rem;
    cursor: pointer;
}

.button:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
}

.button.button-outline {
    background-color: transparent;
}

.button.button-outline::before {
    content: '';
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    border: .02rem solid #3c6847;
    position: absolute;
    top: 0;
    left: 0;
}

.button.button-outline::after {
    content: '';
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    background-color: #3c6847;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: all .6s;
}

.button.button-outline > span {
    color: #3c6847;
    transition: color .6s ease;
}

.button.button-outline:hover > span {
    color: #fff;
}

.button.button-outline:hover::after {
    opacity: 1;
}

.button > span {
    display: block;
    position: relative;
    z-index: 1;
}

/* Section - Info */

.section-info {
    width: 100%;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.section-info.section-info-to-left {
    justify-content: flex-start;
}

.section-info-content {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    z-index: 1;
}

.section-info-to-left .section-info-content {
    flex-direction: row-reverse;
}

.section-info-left {
    width: 5.4rem;
    max-width: 100%;
    padding: .8rem .2rem 0 0;
    position: relative;
    z-index: 1;
}

.section-info-to-left .section-info-left {
    padding: .8rem 0 0 .8rem;
}

.section-info-left-heading {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    margin: 0 0 .7rem 0;
}

.section-info-left-content {
    width: 5rem;
    min-height: 4rem;
    padding: .55rem .6rem 1.05rem .6rem;
    right: -.8rem;
    background-color: #fff;
    position: relative;
}

.section-info-to-left .section-info-left-content {
    right: inherit;
    left: -1.8rem;
}

.section-info-meta-container {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transition: height 1s ease;
    background-color: #fff;
}

.section-info-meta-list {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.section-info-meta-list > li {
    padding: .55rem .6rem 1.05rem .6rem;
    position: absolute;
    top: 0;
    left: 0;
    min-height: 4rem;
    opacity: 0;
    transition: opacity 1s ease;
    pointer-events: none;
}

.section-info-meta-list > li.active {
    opacity: 1;
    pointer-events: auto;
}

.section-info-left-content p,
.section-info-meta-list p {
    font-size: .2rem;
    line-height: .4rem;
    margin: 0;
}

.section-info-left-content-btn,
a.section-info-left-content-btn {
    display: block;
    padding: .3rem .62rem;
    background-color: #3c6847;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    color: #fff;
    transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease;
    position: absolute;
    left: .6rem;
    bottom: -.4rem;
}

.section-info-left-content-btn:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
}

.section-info-right {
    width: 6.2rem;
    max-width: 100%;
}

.section-info-right-img {
    height: 5.4rem;
    position: relative;
}

.section-info-slider-imgs-container {
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.section-info-slider-imgs-list {
    width: 1000%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.section-info-slider-imgs-list > li {
    width: 8rem;
    height: 100%;
    overflow: hidden;
}

.section-info-slider-imgs-list > li > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.section-info-slider-imgs-list > li.active > img {
    -webkit-transform: none;
            transform: none;
}

.section-info-right-img > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

.section-info-right-bottom-mssg {
    margin: .6rem 0 0 0;
    padding: 0 0 0 1.5rem;
}

.section-info-right-bottom-mssg > p {
    font-weight: 600;
    font-size: .2rem;
    line-height: .3rem;
    letter-spacing: .0167rem;
    text-transform: uppercase;
    position: relative;
    margin: 0;
}

.section-info-headings-list {
    width: 100%;
    position: relative;
}

.section-info-headings-list > li {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    pointer-events: none;
    transition: opacity 1s ease;
}

.section-info-headings-list > li.active {
    opacity: 1;
}

.section-info-headings-list > li > p {
    font-weight: 600;
    font-size: .2rem;
    line-height: .3rem;
    letter-spacing: .0167rem;
    text-transform: uppercase;
    position: relative;
    margin: 0;
}

.section-info-headings-list:before,
.section-info-right-bottom-mssg > p::before {
    content: '';
    display: block;
    box-sizing: border-box;
    width: .22rem;
    height: .12rem;
    background-image: url('../static/img/ui/green_leaves.svg');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -.02rem;
    left: -.3rem
}

.section-info-slider-controls {
    display: flex;
    flex-wrap: wrap;
    position: absolute;
    bottom: .3rem;
    right: .3rem;
    z-index: 2;
}

.section-info-slider-control {
    display: flex;
    justify-content: center;
    align-items: center;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    border: .01rem solid rgba(105,191,74,.4);
    margin: 0 .1rem 0 0;
    cursor: pointer;
    transition: border-color .6s ease, -webkit-transform .6s ease;
    transition: transform .6s ease, border-color .6s ease;
    transition: transform .6s ease, border-color .6s ease, -webkit-transform .6s ease;
}

.section-info-slider-control:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
    border-color: #3c6847;
}

.section-info-slider-control:last-of-type {
    margin: 0;
}

.section-info-slider-control > img {
    display: block;
    width: .2rem;
    height: auto;
}

/* Section - Intro */

.section-intro {
    width: 100%;
    height: 100vh;
    position: relative;
    overflow: hidden;
}

.section-intro::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    background-color: rgba(0,0,0,.5);
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
}

.section-intro > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-animation: introImgReveal 2s ease forwards;
            animation: introImgReveal 2s ease forwards;
}

@-webkit-keyframes introImgReveal {
    0% {
        -webkit-transform: scale(1.4);
                transform: scale(1.4);
    }
    100% {
        -webkit-transform: none;
                transform: none;
    }
}

@keyframes introImgReveal {
    0% {
        -webkit-transform: scale(1.4);
                transform: scale(1.4);
    }
    100% {
        -webkit-transform: none;
                transform: none;
    }
}

.section-intro-content-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    padding: 0 0 0 3rem;
    z-index: 2;
}

.intro-item-content {
    width: 7.1rem;
    max-width: 100%;
    padding: .8rem 0 0 0;
}

@-webkit-keyframes revealIntroContent {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2rem);
                transform: translateX(2rem);
    }
    100% {
        opacity: 1;
        -webkit-transform: none;
                transform: none;
    }
}

@keyframes revealIntroContent {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2rem);
                transform: translateX(2rem);
    }
    100% {
        opacity: 1;
        -webkit-transform: none;
                transform: none;
    }
}

.intro-header-logo {
    display: block;
    height: .6rem;
    width: auto;
    margin: 0 0 .3rem 0;
    opacity: 0;
    -webkit-transform: translateX(2rem);
            transform: translateX(2rem);
    transition: opacity 2.5s ease, -webkit-transform 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease, -webkit-transform 2.5s ease;
    -webkit-animation: revealIntroContent 2s ease forwards;
            animation: revealIntroContent 2s ease forwards;
}

.intro-item-content h2 {
    font-weight: 600;
    font-size: .6rem;
    line-height: .6rem;
    letter-spacing: .02rem;
    margin: 0 0 .3rem 0;
    color: #fff;
    opacity: 0;
    -webkit-transform: translateX(2rem);
            transform: translateX(2rem);
    transition: opacity 2.5s ease, -webkit-transform 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease, -webkit-transform 2.5s ease;
    -webkit-animation: revealIntroContent 2s ease forwards;
            animation: revealIntroContent 2s ease forwards;
}

.intro-item-content > p {
    font-weight: 600;
    font-size: .2rem;
    line-height: .3rem;
    letter-spacing: .0167rem;
    text-transform: uppercase;
    color: #fff;
    margin: 0;
    opacity: 0;
    -webkit-transform: translateX(2rem);
            transform: translateX(2rem);
    transition: opacity 2.5s ease, -webkit-transform 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease, -webkit-transform 2.5s ease;
    -webkit-animation: revealIntroContent 2s ease forwards;
            animation: revealIntroContent 2s ease forwards;
    -webkit-animation-delay: .2s;
            animation-delay: .2s;
}

.intro-item-footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin: .6rem 0 0 0;
    opacity: 0;
    -webkit-transform: translateX(2rem);
            transform: translateX(2rem);
    transition: opacity 2.5s ease, -webkit-transform 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease, -webkit-transform 2.5s ease;
    -webkit-animation: revealIntroContent 2s ease forwards;
            animation: revealIntroContent 2s ease forwards;
    -webkit-animation-delay: .4s;
            animation-delay: .4s;
}

.intro-item-btn,
a.intro-item-btn {
    display: block;
    padding: .25rem .32rem;
    position: relative;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    color: #FFF;
    overflow: hidden;
    transition: color .6s ease;
}

.intro-item-btn::before {
    content: '';
    box-sizing: border-box;
    border: .02rem solid #FFF;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.intro-item-btn::after {
    content: '';
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    background-color: #3c6847;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: all .6s ease;
}

.intro-item-btn span {
    position: relative;
    z-index: 1;
}

.intro-item-btn:hover,
a.intro-item-btn:hover {
    color: #fff;
}

.intro-item-btn:hover::after {
    opacity: 1;
}







/* PAGE - HOME */

/* Section - Intro with slider */

.section-intro-with-slider {
    width: 100%;
    height: 100vh;
    position: relative;
    overflow: hidden;
}

.intro-slider-container {
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.intro-slider-container-inner {
    width: 100%;
    height: 100%;
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.intro-slider-list {
    width: 1000%;
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.intro-slider-list__img-cont {
    position: relative;
    height: 100%;
}

.intro-slider-list__img-cont::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    background-color: rgba(0,0,0,.4);
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
}

.intro-slider-list > li {
    height: 100%;
    width: 100vw;
    position: relative;
    overflow: hidden;
}

.intro-slider-list > li::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0,0,0,.5);
    z-index: 1;
}

.main-page .intro-slider-list > li::before {
    display: none;
}

.intro-slider-list__img-cont img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.intro-slider-list > li.active .intro-slider-list__img-cont img {
    -webkit-transform: none;
            transform: none;
}

.intro-slider-list > li > video {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}

.intro-slider-item-content-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    padding: 0 0 0 3rem;
    z-index: 2;
}

.intro-slider-item-content {
    width: 7.1rem;
    max-width: 100%;
    padding: .2rem 0 0 0;
}

.intro-slider-header-logo {
    display: block;
    height: .6rem;
    width: auto;
    margin: 0 0 .3rem 0;
    opacity: 0;
    -webkit-transform: translateX(2rem);
            transform: translateX(2rem);
    transition: opacity 2.5s ease, -webkit-transform 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease, -webkit-transform 2.5s ease;
}

.intro-slider-list > li.active .intro-slider-header-logo,
.intro-slider-list > li.active .intro-slider-item-content h2,
.intro-slider-list > li.active .intro-slider-item-content p,
.intro-slider-list > li.active .intro-slider-item-footer {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
}

.intro-slider-item-content h2 {
    font-weight: 600;
    font-size: .6rem;
    line-height: .6rem;
    letter-spacing: .02rem;
    margin: 0 0 .3rem 0;
    color: #fff;
    opacity: 0;
    -webkit-transform: translateX(2rem);
            transform: translateX(2rem);
    transition: opacity 2.5s ease, -webkit-transform 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease, -webkit-transform 2.5s ease;
}

.intro-slider-item-content > p {
    font-weight: 600;
    font-size: .2rem;
    line-height: .3rem;
    letter-spacing: .0167rem;
    text-transform: uppercase;
    color: #fff;
    margin: 0;
    opacity: 0;
    -webkit-transform: translateX(2rem);
            transform: translateX(2rem);
    transition: opacity 2.5s ease, -webkit-transform 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease, -webkit-transform 2.5s ease;
    transition-delay: .2s;
}

.intro-slider-item-footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin: .6rem 0 0 0;
    opacity: 0;
    -webkit-transform: translateX(2rem);
            transform: translateX(2rem);
    transition: opacity 2.5s ease, -webkit-transform 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease;
    transition: transform 2.5s ease, opacity 2.5s ease, -webkit-transform 2.5s ease;
    transition-delay: .4s;
}

.intro-slider-item-btn,
a.intro-slider-item-btn {
    display: block;
    padding: .25rem .32rem;
    position: relative;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    color: #FFF;
    overflow: hidden;
    transition: color .6s ease;
}

.intro-slider-item-btn::before {
    content: '';
    box-sizing: border-box;
    border: .02rem solid #FFF;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.intro-slider-item-btn::after {
    content: '';
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    background-color: #3c6847;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    /* transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease; */
    transition: all .6s;
    z-index: -1;
}

.intro-slider-item-btn span {
    position: relative;
    z-index: 1;
}

@media only screen and (min-width: 767px) {
    .intro-slider-item-btn:hover,
    a.intro-slider-item-btn:hover {
        color: #fff;
    }

    .intro-slider-item-btn:hover::after {
        /* -webkit-transform: translateY(-100%);
                transform: translateY(-100%); */
                opacity: 1;
    }
}

@-webkit-keyframes revealOpacity {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes revealOpacity {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

.intro-slider-controls-container {
    padding: .1rem 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: absolute;
    bottom: 2.6rem;
    right: 4.3rem;
    height: .7rem;
    z-index: 3;
    opacity: 0;
    -webkit-animation: revealOpacity 1.5s ease forwards;
            animation: revealOpacity 1.5s ease forwards;
    -webkit-animation-delay: 3.4s;
            animation-delay: 3.4s;
    transition: top 1.5s ease;
}

.intro-slider-controls {
    display: flex;
}

.intro-slider-control {
    display: flex;
    justify-content: center;
    align-items: center;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    background-color: #fff;
    box-shadow: 0 0.05rem 0.2rem 0 rgba(62, 83, 99, .07);
    transition: box-shadow .5s ease, -webkit-transform .5s ease;
    transition: transform .5s ease, box-shadow .5s ease;
    transition: transform .5s ease, box-shadow .5s ease, -webkit-transform .5s ease;
    margin: 0 0 0 .1rem;
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
}

.intro-slider-control > img {
    display: block;
    width: .2rem;
    height: auto;
}

.intro-slider-control:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
    box-shadow: 0 0.1rem 0.4rem 0 rgba(62, 83, 99, .14);
}

.intro-slider-counter-container {
    margin: 0 .4rem 0 0;
    padding: .08rem 0 0 0;
    color: #fff;
}

.intro-slider-current-count {
    font-weight: 600;
    font-size: .4rem;
    line-height: .5rem;
    letter-spacing: -.01rem;
    margin: 0 .13rem 0 0;
}

.intro-slider-total-count {
    font-weight: 600;
    font-size: .2rem;
    line-height: .2rem;
    letter-spacing: -.005rem;
}





.intro-section-bottom-overlay {
    display: flex;
    align-items: center;
    position: absolute;
    bottom: 0;
    right: 0;
    height: .8rem;
}

a.intro-section-bottom-overlay-cta-btn {
    height: .8rem;
    padding: 0 .5rem;
    background-color: #3c6847;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    text-transform: uppercase;
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    opacity: 0;
    -webkit-animation: revealIntroOverlays 1.5s ease forwards;
            animation: revealIntroOverlays 1.5s ease forwards;
    -webkit-animation-delay: 1.4s;
            animation-delay: 1.4s;
}

a.intro-section-bottom-overlay-cta-btn span {
    display: block;
    letter-spacing: .01rem;
}

a.intro-section-bottom-overlay-cta-btn img {
    display: block;
    width: .3rem;
    height: auto;
    margin: 0 0 0 .74rem;
    transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease;
}

a.intro-section-bottom-overlay-cta-btn:hover {
    color: #fff;
}

a.intro-section-bottom-overlay-cta-btn:hover img {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
}

.intro-section-bottom-logo-1 {
    display: block;
    width: 1.2rem;
    margin: 0 .5rem 0 0;
    opacity: 0;
    -webkit-animation: revealIntroOverlays 1.5s ease forwards;
            animation: revealIntroOverlays 1.5s ease forwards;
    -webkit-animation-delay: 1s;
            animation-delay: 1s;
}

.intro-section-bottom-logo-1 img {
    display: block;
    width: 100%;
    height: auto;
}

.intro-section-bottom-logo-2 {
    display: block;
    width: .5rem;
    height: .5rem;
    border: .02rem solid #fff;
    margin: 0 .78rem 0 0;
    opacity: 0;
    -webkit-animation: revealIntroOverlays 1.5s ease forwards;
            animation: revealIntroOverlays 1.5s ease forwards;
    -webkit-animation-delay: 1.2s;
            animation-delay: 1.2s;
}

.intro-section-bottom-logo-2 > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
}

@-webkit-keyframes revealIntroOverlays {
    0% {
        opacity: 0;
        -webkit-transform: translateX(1rem);
                transform: translateX(1rem);
    }
    100% {
        opacity: 1;
        -webkit-transform: none;
                transform: none;
    }
}

@keyframes revealIntroOverlays {
    0% {
        opacity: 0;
        -webkit-transform: translateX(1rem);
                transform: translateX(1rem);
    }
    100% {
        opacity: 1;
        -webkit-transform: none;
                transform: none;
    }
}

@-webkit-keyframes revealIntroOverlaysToRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-1rem);
                transform: translateX(-1rem);
    }
    100% {
        opacity: 1;
        -webkit-transform: none;
                transform: none;
    }
}

@keyframes revealIntroOverlaysToRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-1rem);
                transform: translateX(-1rem);
    }
    100% {
        opacity: 1;
        -webkit-transform: none;
                transform: none;
    }
}

.intro-section-promo-overlay {
    display: block;
    width: 3rem;
    height: 2rem;
    position: absolute;
    top: calc(50% - 1rem);
    right: 0;
    overflow: hidden;
    opacity: 0;
    -webkit-animation: revealIntroOverlays 1.8s ease forwards;
            animation: revealIntroOverlays 1.8s ease forwards;
    -webkit-animation-delay: 2s;
            animation-delay: 2s;
}

.intro-section-promo-overlay:hover > img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
}

.intro-section-promo-overlay > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    transition: -webkit-transform 1s ease;
    transition: transform 1s ease;
    transition: transform 1s ease, -webkit-transform 1s ease;
}

.intro-section-promo-overlay-meta {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: .2rem;
    z-index: 1;
}

.intro-section-promo-line-1 {
    display: block;
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    margin: 0 0 .07rem 0;
    transition: 1s -webkit-transform ease;
    transition: 1s transform ease;
    transition: 1s transform ease, 1s -webkit-transform ease;
}

.intro-section-promo-overlay:hover .intro-section-promo-line-1 {
    -webkit-transform: translateX(.1rem);
            transform: translateX(.1rem);
}

.intro-section-promo-line-2 {
    display: block;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .2rem;
    line-height: .2rem;
    letter-spacing: .0143rem;
    color: #3c6847;
    transition: 1s -webkit-transform ease;
    transition: 1s transform ease;
    transition: 1s transform ease, 1s -webkit-transform ease;
    transition-delay: .2s;
}

.intro-section-promo-overlay:hover .intro-section-promo-line-2 {
    -webkit-transform: translateX(.1rem);
            transform: translateX(.1rem);
}

.intro-cta-call-message {
    position: absolute;
    top: .6rem;
    right: 1.4rem;
    opacity: 0;
    -webkit-animation: revealIntroOverlaysToRight 2s ease forwards;
            animation: revealIntroOverlaysToRight 2s ease forwards;
    -webkit-animation-delay: .8s;
            animation-delay: .8s;
    z-index: 2;
}

.intro-cta-call-message a {
    display: block;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    color: #fff;
    margin: 0 0 .01rem 0;
}

.intro-cta-call-message span {
    display: block;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    text-align: right;
    color: #3c6847;
    cursor: pointer;
    transition: color .6s ease;
}

.intro-cta-call-message span:hover {
    color: #f5f5f5;
}

.intro-meta-address {
    padding: .6rem 0 0 1.8rem;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-animation: revealIntroOverlays 2s ease forwards;
            animation: revealIntroOverlays 2s ease forwards;
    -webkit-animation-delay: .6s;
            animation-delay: .6s;
    z-index: 2;
}

.intro-address-text.intro-address-text {
    display: block;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    letter-spacing: .004rem;
    color: #fff;
    margin: 0 0 .01rem 0;
}

.intro-address-text:hover {
    color: #FFF;
}

.intro-address-btn {
    display: inline-block;
    vertical-align: top;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    color: #3c6847;
    transition: color .3s ease;
}

.intro-address-btn:hover {
    color: #f5f5f5;
}


/* Section - Info - Ecosphere */

.section-info-ecosphere {
    padding: 1.1rem .8rem 1.1rem 0;
}

.ecosphere-tree-bg {
    width: 4.6rem;
    position: absolute;
    top: .87rem;
    left: calc(50% - 2.3rem);
}

.section-info-ecosphere .decorate-img {
    position: absolute;
    top: 1.3rem;
    right: -.92rem;
}




/* Section - Appartmnets stats */

.section-appartments-stats {
    padding: 0 0 1.1rem 0;
}

.section-appartments-stats-content {
    display: flex;
    flex-wrap: wrap;
}

.section-appartments-stats-content-column-left {
    width: 8rem;
    max-width: 100%;
}

.section-appartments-stats-content-column-left-stats {
    padding: 1.8rem .5rem 1.3rem 1.8rem;
    position: relative;
}

.section-appartments-stats-content-column-left-stats > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}

.appartments-stats-list {
    display: grid;
    grid-template-columns: 1.8rem 1.8rem;
    gap: 0.2rem;
    position: relative;
    z-index: 1;
}

.appartments-stats-list > li {
    max-width: 100%;
}

.appartments-stats-list > li:nth-of-type(odd):last-of-type {
    width: 100%;
    grid-column: span 2;
}

.appartments-stats-list > li > span:first-of-type {
    display: block;
    font-weight: 600;
    font-size: .5rem;
    line-height: .8rem;
    letter-spacing: -.02rem;
    color: #e4d9c2;
    margin: 0 0 .1rem 0;
}

.appartments-stats-list > li > span:last-of-type {
    display: block;
    font-weight: 600;
    font-size: .15rem;
    line-height: .2rem;
    letter-spacing: .0125rem;
    text-transform: uppercase;
    color: #fff;
}

.section-appartments-stats-content-column-left-cta {
    display: flex;
    padding: .5rem 0 0 1.8rem;
}

.section-appartments-stats-content-column-right {
    width: 7.8rem;
    max-width: 100%;
    padding: 1.9rem 0 0 0;
    margin: 0 0 0 -2.2rem;
    position: relative;
    z-index: 1;
}

.section-appartments-stats-content-column-right-content {
    width: 100%;
    padding: 1rem .5rem 1.2rem 1rem;
    background-color: #fff;
    overflow: hidden;
    position: relative;
}

.section-appartments-stats-content-column-right-content-heading {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    margin: 0 0 .3rem 0;
    position: relative;
    z-index: 1;
}

.section-appartments-stats-content-column-right-content > p {
    font-size: .2rem;
    line-height: .3rem;
    width: 4.6rem;
    max-width: 100%;
    margin: 0;
    position: relative;
    z-index: 1;
}

.appartments-rooms-list {
    width: 2.2rem;
    max-width: 100%;
    margin: .38rem 0 0 0;
    position: relative;
    z-index: 1;
}

.appartments-rooms-list > li:not(:last-of-type) {
    margin: 0 0 .18rem 0;
}

.appartments-rooms-list > li > a {
    display: block;
    padding: .12rem 0;
    position: relative;
    font-weight: 600;
    font-size: .15rem;
    line-height: .2rem;
    letter-spacing: .0125rem;
    text-transform: uppercase;
    color: #3c6847;
    transition: color .6s ease;
}

.appartments-rooms-list > li > a::after {
    content: '';
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: .02rem;
    background-color: #F2F2F2;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: width .6s ease, background-color .6s ease;
}

.appartments-rooms-list > li > a > span {
    display: block;
    transition: color .6s ease, -webkit-transform .7s ease;
    transition: transform .7s ease, color .6s ease;
    transition: transform .7s ease, color .6s ease, -webkit-transform .7s ease;
}
@media only screen and (min-width: 767px) {
    .appartments-rooms-list > li > a:hover::after {
        width: 2.9rem;
        background-color: #3c6847;
    }

    .appartments-rooms-list > li > a:hover > span {
        -webkit-transform: translateX(.2rem);
                transform: translateX(.2rem);
        color: #3E5363;
    }
}

.appartments-floors-list-item-img {
    width: 2.6rem;
    height: 1.6rem;
    position: absolute;
    right: -3.2rem;
    top: calc(-50% - .22rem);
    -webkit-transform: translateX(.5rem);
            transform: translateX(.5rem);
    opacity: 0;
    pointer-events: none;
    transition: opacity .6s ease, -webkit-transform .7s ease;
    transition: transform .7s ease, opacity .6s ease;
    transition: transform .7s ease, opacity .6s ease, -webkit-transform .7s ease;
}

.appartments-rooms-list > li > a:hover .appartments-floors-list-item-img {
    -webkit-transform: none;
            transform: none;
    opacity: 1;
}

.appartments-floors-list-item-img > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

.appartments-rooms-bg {
    width: 3.85rem;
    height: auto;
    position: absolute;
    bottom: 0;
    right: .16rem;
}

a.button.appartments-rooms-cta-btn {
    position: absolute;
    left: 1rem;
    bottom: -.4rem;
}
a.button.appartments-rooms-cta-btn.genplan-btn {
    left: auto;
    right: 1rem;
}


/* Section - Good Location */

.section-good-location {
    padding: 1rem 0 1rem 1.8rem;
    background-color: #fff;
    overflow: hidden;
}

.section-good-location-slider-container {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.section-good-location-slider-container-column-left {
    width: 4.8rem;
    max-width: 100%;
}

.section-good-location-slider-container-column-left h2.animation-element-default.in-view {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    margin: 0 0 .25rem -2rem;
    padding-left: 0.8rem;
    position: relative;
    display: inline-block;
    opacity: 0;
    text-transform: uppercase;
}

 .section-good-location-slider-container-column-left li.active h2.animation-element-default.in-view {
     opacity: 1;
 }

/* .section-good-location-slider-container-column-left li.active h2:after {
    content: '';
    display: block;
    box-sizing: border-box;
    width: .12rem;
    height: .12rem;
    background-image: url(../static/img/ui/one_leaf_right.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    left: .7rem;
    top: .17rem;
} */

.good-location-slider-left-content-list {
    width: 1000%;
    display: flex;
    flex-wrap: wrap;
    transition: -webkit-transform 1s ease;
    transition: transform 1s ease;
    transition: transform 1s ease, -webkit-transform 1s ease;
}

.good-location-slider-left-content-list > li {
    width: 3.6rem;
    max-width: 100%;
    font-size: .2rem;
    line-height: .3rem;
    pointer-events: none;
    padding: 0 0 0 1.2rem;
}

.good-location-slider-left-content-list > li.active {
    pointer-events: auto;
}

.good-location-slider-left-content-list > li > p {
    margin: 0 0 .3rem 0;
    -webkit-transform: translateX(1rem);
            transform: translateX(1rem);
    opacity: 0;
    transition: opacity 2s ease, -webkit-transform 2s ease;
    transition: transform 2s ease, opacity 2s ease;
    transition: transform 2s ease, opacity 2s ease, -webkit-transform 2s ease;
}

a.good-location-slider-left-content-link {
    display: inline-block;
    vertical-align: top;
    position: relative;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    color: #3c6847;
    white-space: pre-wrap;
    -webkit-transform: translateX(1rem);
            transform: translateX(1rem);
    opacity: 0;
    transition: opacity 2s ease, -webkit-transform 2s ease;
    transition: transform 2s ease, opacity 2s ease;
    transition: transform 2s ease, opacity 2s ease, -webkit-transform 2s ease;
    transition-delay: .2s;
}

.good-location-slider-left-content-list > li.active > p,
.good-location-slider-left-content-list > li.active a.good-location-slider-left-content-link {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
}

a.good-location-slider-left-content-link::after {
    content: '';
    display: block;
    box-sizing: border-box;
    width: 0;
    height: .02rem;
    background-color: #3c6847;
    position: absolute;
    bottom: -.08rem;
    left: .2rem;
    transition: width .6s ease;
}

a.good-location-slider-left-content-link:hover::after {
    width: .4rem;
}

.section-good-location-slider-container-column-right {
    width: 3.6rem;
    max-width: 100%;
    margin: 0 0 0 2.15rem;
    position: relative;
    z-index: 1;
}

.good-location-slider-right-content-list {
    width: 1000%;
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 .88rem 0;
    transition: -webkit-transform 1s ease;
    transition: transform 1s ease;
    transition: transform 1s ease, -webkit-transform 1s ease;
}

.good-location-slider-right-content-list > li {
    width: 3.6rem;
    height: 3.6rem;
    opacity: 0;
    pointer-events: none;
    transition: opacity .6s ease;
    border-top-left-radius: 2.8rem;
    border-bottom-right-radius: 2.8rem;
    overflow: hidden;
}

.good-location-slider-right-content-list > li.active {
    opacity: 1;
    pointer-events: auto;
}

.good-location-slider-right-content-list > li > img {
    display: block;
    height: 100%;
    width: 100%;
    margin: 0 auto;
    -webkit-transform: scale(.4);
            transform: scale(.4);
    transition: -webkit-transform 1s ease;
    transition: transform 1s ease;
    transition: transform 1s ease, -webkit-transform 1s ease;
    object-fit: cover;
}

.good-location-slider-right-content-list > li.active > img {
    -webkit-transform: none;
            transform: none;
}

.good-location-slider-controls-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
}

.good-location-slider-counters {
    position: relative;
    margin: 0 .17rem 0 0;
}

.good-location-slider-counter-current {
    display: block;
    font-weight: 600;
    font-size: .6rem;
    line-height: .8rem;
    color: #3c6847;
    letter-spacing: -.02rem;
}

.good-location-slider-counter-total {
    width: .3rem;
    display: block;
    font-weight: bold;
    font-size: .2rem;
    line-height: .3rem;
    text-align: right;
    position: absolute;
    top: .05rem;
    right: -.42rem;
}

.good-location-slider-controls-separator {
    width: 1.2rem;
    height: .02rem;
    background-color: #3E5363;
    max-width: 100%;
    margin: 0 .2rem 0 0;
}

.good-location-slider-controls {
    display: flex;
    flex-wrap: wrap;
}

.good-location-slider-control {
    display: flex;
    justify-content: center;
    align-items: center;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    border: .01rem solid rgba(105,191,74,.4);
    margin: 0 .1rem 0 0;
    cursor: pointer;
    transition: border-color .6s ease, -webkit-transform .6s ease;
    transition: transform .6s ease, border-color .6s ease;
    transition: transform .6s ease, border-color .6s ease, -webkit-transform .6s ease;
}

.good-location-slider-control:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
    border-color: #3c6847;
}

.good-location-slider-control:last-of-type {
    margin: 0;
}

.good-location-slider-control > img {
    display: block;
    width: .2rem;
    height: auto;
}




/* Section - Infrastructure */

.section-info-infostructure {
    padding: 1rem 0 .95rem 0;
}

.infostructure-tree-bg {
    width: 4.76rem;
    position: absolute;
    top: 1.33rem;
    left: calc(50% - 2.38rem);
}

.section-info-infostructure .decorate-img {
    width: 2.8rem;
    height: 3.6rem;
    position: absolute;
    top: -1.8rem;
    left: .6rem;
    right: inherit;
}

.section-info-infostructure .section-info-right {
    width: 8rem;
    max-width: 100%;
}

.section-info-infostructure .section-info-left {
    padding: 0 0 0 .8rem;
}

.section-info-infostructure .section-info-left-heading {
    margin: 0 0 .8rem 0;
}

.section-info-infostructure .section-info-right-bottom-mssg {
    padding: 0 0 0 2.1rem;
}



/* Section - Comfort */

.section-info-comfort {
    padding: .95rem 0 1rem 0;
}

.section-info-comfort .section-info-right {
    width: 6.82rem;
}



/* Section - Progress */

.section-progress {
    padding: 1rem 0;
    overflow: hidden;
}

.section-progress-slider-container {
    position: relative;
}

.progress-slider-images-container {
    width: 10rem;
    max-width: 100%;
    height: 7rem;
    overflow: hidden;
}

.progress-slider-images-list {
    display: flex;
    flex-wrap: wrap;
    width: 1000%;
    height: 100%;
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.progress-slider-images-list > li {
    width: 10rem;
    height: 100%;
    overflow: hidden;
}

.progress-slider-images-list > li > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transform: scale(1.4);
            transform: scale(1.4);
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.progress-slider-images-list > li.active > img {
    -webkit-transform: none;
            transform: none;
}

.progress-slider-info-container {
    width: 7rem;
    max-width: 100%;
    background-color: #fff;
    padding: 0 0 1rem 0;
    position: absolute;
    top: 3.2rem;
    left: 6.6rem;
}

.progress-slider-info-container .button {
    position: absolute;
    left: 1rem;
    bottom: -.4rem;
}

.progress-slider-info-inner {
    overflow: hidden;
}

.progress-slider-info-list {
    display: flex;
    flex-wrap: wrap;
    width: 1000%;
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.progress-slider-info-list > li {
    width: 7rem;
    padding: .5rem .83rem 0 .7rem;
}

.progress-slider-info-list > li > span {
    display: block;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .15rem 0;
    -webkit-transform: translateX(1rem);
            transform: translateX(1rem);
    opacity: 0;
    transition: opacity 2s ease, -webkit-transform 2s ease;
    transition: transform 2s ease, opacity 2s ease;
    transition: transform 2s ease, opacity 2s ease, -webkit-transform 2s ease;
}

.progress-slider-info-list > li > h2 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .3rem 0;
    -webkit-transform: translateX(1rem);
            transform: translateX(1rem);
    opacity: 0;
    transition: opacity 2s ease, -webkit-transform 2s ease;
    transition: transform 2s ease, opacity 2s ease;
    transition: transform 2s ease, opacity 2s ease, -webkit-transform 2s ease;
    transition-delay: .2s;
}

.progress-slider-info-list > li > p {
    font-size: .2rem;
    line-height: .3rem;
    margin: 0;
    -webkit-transform: translateX(1rem);
            transform: translateX(1rem);
    opacity: 0;
    transition: opacity 2s ease, -webkit-transform 2s ease;
    transition: transform 2s ease, opacity 2s ease;
    transition: transform 2s ease, opacity 2s ease, -webkit-transform 2s ease;
    transition-delay: .4s;
}

.progress-slider-info-list > li.active > span,
.progress-slider-info-list > li.active > h2,
.progress-slider-info-list > li.active > p {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
}

.progress-slider-info-list > li > p a {
    display: block;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    color: #3c6847;
    margin: .2rem 0 0 .05rem;
    transition: color .6s ease;
}

.progress-slider-info-list > li > p a:hover {
    color: #54983B;
}

.progress-slider-controls {
    display: flex;
    flex-wrap: wrap;
    padding: 0 1rem;
}

.progress-slider-control {
    display: flex;
    justify-content: center;
    align-items: center;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    border: .01rem solid rgba(105,191,74,.4);
    margin: 0 .1rem 0 0;
    cursor: pointer;
    transition: border-color .6s ease, -webkit-transform .6s ease;
    transition: transform .6s ease, border-color .6s ease;
    transition: transform .6s ease, border-color .6s ease, -webkit-transform .6s ease;
}

.progress-slider-control > img {
    display: block;
    width: .2rem;
    height: auto;
}

.progress-slider-control:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
    border-color: #3c6847;
}

.dot-controls-container {
    display: none;
    width: 6.6rem;
    max-width: 100%;
    padding: .7rem .9rem .7rem .7rem;
    overflow: hidden;
}

.dot-controls-list {
    display: flex;
    flex-wrap: wrap;
    width: 1000%;
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.dot-controls-list > li {
    width: 2.5rem;
    height: .01rem;
    position: relative;
}

.dot-controls-list > li:not(:last-of-type)::after {
    content: '';
    display: block;
    width: calc(100% - .4rem);
    height: .01rem;
    background-color: #D8D8D8;
    position: absolute;
    top: 0;
    left: .2rem;
}

.dot-controls-list > li .dot-control {
    width: .2rem;
    height: .2rem;
    border-radius: 50%;
    border: .01rem solid #3c6847;
    position: absolute;
    top: -.1rem;
    left: -.1rem;
    cursor: pointer;
    transition: border-width .6s ease;
}

.dot-controls-list > li.active .dot-control {
    border-width: .06rem;
}

.dot-controls-list > li > span {
    display: block;
    width: .7rem;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .01rem;
    text-align: center;
    color: rgba(62,83,99,.4);
    position: absolute;
    top: .2rem;
    left: -.35rem;
    transition: color .6s ease;
}

.dot-controls-list > li.active > span {
    color: #3c6847;
}





/* Section - DIM */

.section-dim {
    padding: 1.4rem 1.8rem 1.6rem 1.8rem;
    background-color: #fff;
    position: relative;
    overflow: hidden;
}

#block7 .decorate-leaf-left:after {
    display: none;
}

.section-dim-bg {
    display: block;
    width: 4.59rem;
    height: auto;
    position: absolute;
    bottom: -.2rem;
    left: calc(50% - 2.295rem);
}

.section-dim-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.section-dim-content-left {
    width: 5.6rem;
    max-width: 100%;
}

.section-dim-content-left > h2 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .45rem 0;
}

.section-dim-content-left > p {
    font-size: .2rem;
    line-height: .3rem;
    margin: 0 0 .3rem 0;
}

a.section-dim-content-link {
    display: inline-block;
    vertical-align: top;
    position: relative;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    color: #3c6847;
    white-space: pre-wrap;
}

a.section-dim-content-link::after {
    content: '';
    display: block;
    box-sizing: border-box;
    width: 0;
    height: .02rem;
    background-color: #3c6847;
    position: absolute;
    bottom: -.08rem;
    left: .2rem;
    transition: width .6s ease;
}

a.section-dim-content-link:hover::after {
    width: .4rem;
}

.section-dim-content-right {
    height: 1.28rem;
}

.section-dim-content-right > img {
    display: block;
    height: 100%;
    width: auto;
}





/* Section - News */

.section-news {
    padding: 1rem 0 0 0;
    overflow: hidden;
}

.section-news-content {
    padding: 0 1.8rem;
}

.news-section__item-img img {
    width: 100%;
    -o-object-fit: cover;
    font-family: "object-fit:cover";
    object-fit: cover;
}

.section-news-content > h2 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .45rem 0;
}

.news-slider-list {
    width: 1000%;
    display: flex;
    flex-wrap: wrap;
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.news-slider-list > li {
    width: 5rem;
    max-width: 100%;
    padding: 0 .4rem 0 0;
    opacity: 0;
    transition: opacity 2s ease;
}

.news-slider-list > li.active,
.news-slider-list > li.active + li,
.news-slider-list > li.active + li + li {
    opacity: 1;
}

.news-slider-list > li > a {
    display: block;
}

.news-slider-list > li > a > span {
    display: block;
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    opacity: .3;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    margin: 0 0 .1rem 0;
    transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease;
}

.news-slider-list > li > a > h3 {
    font-weight: 600;
    font-size: .25rem;
    line-height: .3rem;
    letter-spacing: .0083rem;
    text-transform: uppercase;
    color: #3c6847;
    margin: 0 0 .1rem 0;
    transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease;
    transition-delay: .1s;
}

.news-slider-list > li > a > p {
    font-size: .2rem;
    line-height: .3rem;
    margin: 0;
    transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease;
    transition-delay: .2s;
}

.news-slider-list > li > a:hover > span,
.news-slider-list > li > a:hover > h3,
.news-slider-list > li > a:hover > p {
    -webkit-transform: translateX(.1rem);
            transform: translateX(.1rem);
}

.news-slider-container-footer {
    margin: .1rem 0 0 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.news-slider-controls {
    display: flex;
    flex-wrap: wrap;
    margin: 0 .5rem 0 0;
}

.news-slider-control {
    display: flex;
    justify-content: center;
    align-items: center;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    border: .01rem solid rgba(105,191,74,.4);
    margin: 0 .1rem 0 0;
    cursor: pointer;
    transition: border-color .6s ease, -webkit-transform .6s ease;
    transition: transform .6s ease, border-color .6s ease;
    transition: transform .6s ease, border-color .6s ease, -webkit-transform .6s ease;
}

.news-slider-control > img {
    display: block;
    width: .2rem;
    height: auto;
}

.news-slider-control:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
    border-color: #3c6847;
}

a.news-slider-container-footer-link {
    display: block;
    vertical-align: top;
    position: relative;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    color: #3c6847;
    white-space: pre-wrap;
}

a.news-slider-container-footer-link::after {
    content: '';
    display: block;
    box-sizing: border-box;
    width: 0;
    height: .02rem;
    background-color: #3c6847;
    position: absolute;
    bottom: -.08rem;
    left: .2rem;
    transition: width .6s ease;
}

a.news-slider-container-footer-link:hover::after {
    width: .4rem;
}


/* FOOTER */

.main-footer {
    padding: .9rem 0 0 0;
    margin: 0 0 -4rem 0;
}

.main-footer-contacts-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    position: relative;
    z-index: 2;
    padding: 0 .8rem 0 0;
    pointer-events: none;
}

.main-footer-contacts {
    width: 7rem;
    max-width: 100%;
    background-color: #fff;
    padding: .7rem .77rem 1.2rem .7rem;
    position: relative;
    pointer-events: auto;
}

.main-footer-contacts > h6 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .45rem 0;
}

.footer-contacts-list > li:not(:last-of-type) {
    margin: 0 0 .4rem 0;
}

.footer-contacts-list > li > span {
    display: block;
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    opacity: .3;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    margin: 0 0 .1rem 0;
}

.footer-contacts-list > li > ul {
    font-weight: 600;
    font-size: .25rem;
    line-height: .3rem;
    letter-spacing: .0083rem;
    text-transform: uppercase;
}

.footer-emails-list a {
    display: inline-block;
    vertical-align: top;
    position: relative;
    text-transform: lowercase;
    color: #3c6847;
}

.footer-emails-list a::after {
    content: '';
    display: block;
    width: 0;
    height: .02rem;
    background-color: #3c6847;
    position: absolute;
    bottom: -.08rem;
    left: 0;
    transition: width .6s ease;
}

.footer-emails-list a:hover::after {
    width: .4rem;
}

.footer-phones-list a {
    display: inline-block;
    vertical-align: top;
    position: relative;
    text-transform: lowercase;
    transition: color .6s ease;
}

.footer-phones-list a:hover {
    color: #3c6847;
}

.footer-phones-list a::after {
    content: '';
    display: block;
    width: 0;
    height: .02rem;
    background-color: #3c6847;
    position: absolute;
    bottom: -.08rem;
    left: 0;
    transition: width .6s ease;
}

.footer-phones-list a:hover::after {
    width: .4rem;
}

.main-footer-contacts-cta-btn {
    position: absolute;
    bottom: -.4rem;
    left: 1rem;
    cursor: pointer;
}

.footer-map-root {
    width: 100%;
    height: 5.6rem;
    margin: -4rem 0 0 0;
}
.footer-map-root img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

.leaflet-popup {
    margin-bottom: 0;
}

#map, #map-infra {
    width: 100%;
    height: 100%;
    z-index: 1;
}

.leaflet-pane.leaflet-marker-pane img:first-child {
    width: 70px;
    height: 80px;
}

.leaflet-pane.leaflet-marker-pane img:not(:first-child) {
    width: .33rem;
    height: .39rem;
}

/*.main-footer .leaflet-pane.leaflet-marker-pane img:not(:first-child) {*/
/*    display: none;*/
/*}*/

.leaflet-pane .leaflet-marker-pane img{
    width: 100%;
}

/* PAGE - ABOUT COMPLEX */

/* Section - about complex */

.section-info-about-complex {
    padding: 2.2rem .8rem 0 0;
}

.section-info-about-complex .decorate-img {
    position: absolute;
    top: 1.3rem;
    right: -.92rem;
}

.section-info-about-complex .section-info-left {
    padding: 1rem .2rem 0 0;
    width: 5.6rem;
}

.section-info-about-complex .section-info-left-heading {
    margin: 0 0 .55rem 0;
}

.section-info-about-complex .section-info-left-content {
    padding: 0;
    background-color: transparent;
    width: 3.8rem;
    max-width: 100%;
    right: 0;
    margin: 0 0 0 .7rem;
}



/* Section - infrastructure map */

.section-infrastructure-map {
    padding: .15rem 0 0 0;
}

.infrastructure-map-pane {
    width: 6rem;
    max-width: 100%;
    background-color: #fff;
    padding: .6rem .7rem .8rem .7rem;
    margin: 0 0 0 1.8rem;
    position: relative;
    z-index: 2;
}

.infrastructure-map-pane > h2 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .3rem 0;
}

.infrastructure-map-pane > p {
    font-size: .2rem;
    line-height: .4rem;
    max-width: 3.71rem;
    margin: 0;
}

.infrastructure-list {
    width: 2.2rem;
    margin: .39rem 0 0 0;
}

.infrastructure-list > li {
    padding: .21rem 0 .21rem .35rem;
    position: relative;
    cursor: pointer;
}

.infrastructure-list > li:last-of-type {
    margin: 0;
}

.infrastructure-list > li::after {
    content: '';
    display: block;
    width: 100%;
    height: .02rem;
    background-color: #F2F2F2;
    transition: background-color .6s ease, width .6s ease;
    position: absolute;
    bottom: .09rem;
    left: 0;
}

.infrastructure-list > li > span {
    display: block;
    font-weight: 600;
    font-size: .15rem;
    line-height: .2rem;
    letter-spacing: .0125rem;
    text-transform: uppercase;
    color: #3c6847;
    transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease;
}

.infrastructure-list > li > svg {
    display: block;
    width: .25rem;
    height: .25rem;
    position: absolute;
    top: calc(50% - .125rem);
    left: 0;
    transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease;
}

.infrastructure-list > li:hover::after {
    width: 2.9rem;
    background-color: #3c6847;
}

.infrastructure-list > li:hover > span,
.infrastructure-list > li:hover > svg {
    -webkit-transform: translateX(.2rem);
            transform: translateX(.2rem);
}

.infrastructure-list > li > svg .st0 {
    transition: fill .6s ease;
}

.infrastructure-list > li:hover > svg .st0 {
    fill: #3c6847;
}

.infrastructure-map-root {
    width: 100%;
    height: 6.1rem;
    position: relative;
    margin: -5.4rem 0 0 0;
}




.marker_jk{
    position: absolute;
    z-index: 11;
    width: .94rem;
    height: 1rem;
    -webkit-transform: translate(-38px, -100%);
            transform: translate(-38px, -100%);
    background: url(../static/img/ui/green_pin_big.svg.) no-repeat;
}
.map-marker{
    z-index: -1;
    position: absolute;
    width: 1px;
    height: 1px;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -100%);
            transform: translate(-50%, -100%);
    cursor: pointer;
    opacity: 0;
    -webkit-transform: translateY(-.3rem);
            transform: translateY(-.3rem);
    transition: opacity 0.9s cubic-bezier(.19,1,.22,1), -webkit-transform 0.9s cubic-bezier(.19,1,.22,1);
    transition: opacity 0.9s cubic-bezier(.19,1,.22,1), transform 0.9s cubic-bezier(.19,1,.22,1);
    transition: opacity 0.9s cubic-bezier(.19,1,.22,1), transform 0.9s cubic-bezier(.19,1,.22,1), -webkit-transform 0.9s cubic-bezier(.19,1,.22,1);
}
.map-marker:hover{
    z-index: 12;

}
.show_marker{
    opacity: 1;
    z-index: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    /*transition: all 0.9s cubic-bezier(.19,1,.22,1);*/
}
.map_marker {
    width: .56rem;
    height: .54rem;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translate(-38%, -100%);
            transform: translate(-38%, -100%);
    background-size: cover;
}
.map-marker:hover .map_marker{
    overflow: visible;
}
.marker_text_wrap{
    position: absolute;
    background: white;
    -webkit-transform: translate(.5rem, -100%);
            transform: translate(.5rem, -100%);
    white-space: nowrap;    
    opacity: 0;
    color:#4d5b6a;
    transition: all 0.9s cubic-bezier(.19,1,.22,1);
}
.marker_text_wr{
    padding: .1rem .2rem;
}
.map_marker:hover .marker_text_wrap{
    opacity: 1;
    -webkit-transform: translate(.17rem,  -100%);
            transform: translate(.17rem,  -100%); 
}

.marker_tittle{
    font-weight: bold;
    font-size: .16rem;
    line-height: .2rem;
    margin-bottom: .2rem;
}
.marker_tittle_2{
    font-weight: 500;
    font-size: .14rem;
    line-height: .2rem;
}
.marker_tittle_text{
    font-size: .12rem;
    line-height: .2rem;
}

.map-dir-link {
    font-family: 'Proxima Nova';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    color: #3c6847;
    transition: color .6s ease;
}

.map-dir-link:hover {
    color: #54983B;
}


/* Section - tech stats */

.section-tech-stats {
    padding: 1.9rem .8rem 0 0;
    display: flex;
    justify-content: flex-end;
}

.section-tech-stats-content {
    display: flex;
    flex-wrap: wrap;
}

.section-tech-stats-content-left {
    width: 5.2rem;
    max-width: 100%;
    padding: .8rem .5rem 0 0;
}

.section-tech-stats-content-left > h2 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .35rem 0;
}

.section-tech-stats-content-left > p {
    width: 3.8rem;
    max-width: 100%;
    margin: 0 0 0 .7rem;
    font-size: .2rem;
    line-height: .4rem;
}

.tech-stats-pane {
    width: 6.6rem;
    max-width: 100%;
    position: relative;
    background-color: #fff;
    padding: 1.1rem .5rem .3rem 1.1rem;
}

.tech-stats-list {
    display: flex;
    flex-wrap: wrap;
}

.tech-stats-list > li {
    width: 2.72rem;
    max-width: 100%;
    margin: 0 0 .7rem 0;
}

.tech-stats-list > li:nth-of-type(even) {
    width: calc(100% - 2.72rem);
}

.tech-stats-list > li > span:first-of-type {
    display: block;
    font-weight: 600;
    font-size: .8rem;
    line-height: .8rem;
    letter-spacing: -.02rem;
    color: #3c6847;
    margin: 0 0 .1rem 0;
}

.tech-stats-list > li > span:last-of-type {
    display: block;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    letter-spacing: .004rem;
}

.tech-stats-pane .button {
    position: absolute;
    bottom: -.4rem;
    left: 1.1rem;
}





/* Section - docs slider */

.section-docs-slider {
    padding: .25rem 0 0 1.8rem;
    overflow: hidden;
}

.section-docs-slider > h3 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .45rem 0;
}

.docs-slider-list {
    display: flex;
    flex-wrap: wrap;
    width: 1000%;
    transition: -webkit-transform 1s ease;
    transition: transform 1s ease;
    transition: transform 1s ease, -webkit-transform 1s ease;
}

.docs-slider-list > li {
    width: 3.3rem;
    height: auto;
    max-width: 100%;
    padding: 0 .3rem 0 0;
}

.docs-slider-list > li > a {
    display: block;
    height: 100%;
    min-height: 4.2rem;
    padding: .8rem .4rem;
    background-color: #fff;
}

.docs-slider-list-item-img {
    height: 2rem;
}

.docs-slider-list-item-img > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
}

.docs-slider-list > li > a > h4 {
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    text-align: center;
    color: #3c6847;
    margin: .2rem 0 0 0;
}

.docs-slider-controls {
    display: flex;
    flex-wrap: wrap;
    margin: .6rem 0 0 0;
}

.docs-slider-control {
    display: flex;
    justify-content: center;
    align-items: center;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    border: .01rem solid rgba(105,191,74,.4);
    margin: 0 .1rem 0 0;
    cursor: pointer;
    transition: border-color .6s ease, -webkit-transform .6s ease;
    transition: transform .6s ease, border-color .6s ease;
    transition: transform .6s ease, border-color .6s ease, -webkit-transform .6s ease;
}

.docs-slider-control:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
    border-color: #3c6847;
}

.docs-slider-control:last-of-type {
    margin: 0;
}

.docs-slider-control > img {
    display: block;
    width: .2rem;
    height: auto;
}





/* PAGE - ABOUT DEVELOPER */

/* Section - intro */

.intro-developer-content {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: .7rem 0 0 0;
}

.intro-developer-content-left {
    width: 5.25rem;
    max-width: 100%;
    margin: 0 1.37rem 0 0;
    color: #fff;
}

.intro-developer-content-left > h1 {
    opacity: 0;
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .1rem 0;
    -webkit-animation: revealIntroContent 2s ease forwards;
            animation: revealIntroContent 2s ease forwards;
}

.intro-developer-content-left > p {
    opacity: 0;
    font-size: .2rem;
    line-height: .4rem;
    margin: 0;
    -webkit-animation: revealIntroContent 2s ease forwards;
            animation: revealIntroContent 2s ease forwards;
    -webkit-animation-delay: .2s;
            animation-delay: .2s;
}

.intro-developer-content-right {
    opacity: 0;
    height: 1.28rem;
    -webkit-animation: revealIntroContent 2s ease forwards;
            animation: revealIntroContent 2s ease forwards;
    -webkit-animation-delay: .4s;
            animation-delay: .4s;
}


.intro-developer-content-right > a {
    display: block;
    height: 100%;
}

.intro-developer-content-right > a > img {
    display: block;
    height: 100%;
    width: auto;
}


/* Section - stats */

.about-complex-page-params {
    padding: .8rem 0 1rem .8rem;
}

.about-complex-page-params-content > h2 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    text-align: center;
    margin: 0 0 .6rem 0;
}

.about-complex-page-params-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
}

.about-complex-page-params-list > li {
    margin: 0 .5rem;
}

.about-complex-page-params-list > li > span:first-of-type {
    display: block;
    font-weight: 600;
    font-size: .7rem;
    line-height: .8rem;
}

.about-complex-page-params-list > li > span:last-of-type {
    display: block;
    font-size: .2rem;
    line-height: .25rem;
}

.about-complex-page-params-cta {
    text-align: center;
    margin: .6rem 0 0 0;
}

.about-complex-page-cta {
    padding: .3rem 0 .35rem 1.2rem;
    text-align: center;
}

.about-complex-page-params-cta a.button {
    display: inline-block;
    vertical-align: top;
}






/* PAGE - Contacts */

.commercial-mob {
    display: none;
}

.section-contacts {
    padding: .6rem 0 1rem 1.8rem;
}

.section-contacts > h1 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .45rem 0;
}

.section-contacts-content {
    display: flex;
    flex-wrap: wrap;
}

.section-contacts-content-column {
    width: 5.8rem;
    max-width: 100%;
    padding: 0 .3rem 0 0;
}

.section-contacts-content-column.left ul li:not(:first-child) {
    display: none;
}

.section-contacts-content-column.right {
    padding-top: .5rem;
}

.section-contacts-content-column > h2 {
    font-weight: 600;
    font-size: .25rem;
    line-height: .3rem;
    letter-spacing: .0083rem;
    text-transform: uppercase;
    color: #3c6847;
    margin: .8rem 0 .2rem 0;
}

.section-contacts-content-column > h2:first-of-type {
    margin: 0 0 .2rem 0;
}

.section-contacts-content-column > ul > li:not(:last-of-type) {
    margin: 0 0 .4rem 0;
}

.section-contacts-content-column > ul > li > h3 {
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    opacity: .3;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    margin: 0 0 .1rem 0;
}

.section-contacts-content-column > ul > li > span {
    display: block;
    font-weight: 600;
    font-size: .25rem;
    line-height: .3rem;
    letter-spacing: .0083rem;
    text-transform: uppercase;
}

.contacts-shedule-list {
    font-size: .2rem;
    line-height: .4rem;
    margin: .15rem 0 .5rem 0;
}

.contacts-phones-list,
.contacts-emails-list {
    font-weight: 600;
    font-size: .25rem;
    line-height: .3rem;
    letter-spacing: .0083rem;
}

.contacts-emails-list a {
    color: #3c6847;
}

.page-wrapper-contacts + .main-footer {
    padding: 0;
}

.page-wrapper-contacts + .main-footer .main-footer-contacts {
    display: none;
}

.page-wrapper-contacts + .main-footer .footer-map-root {
    margin: 0;
}

.contacts-page-cta {
    display: inline-block;
    vertical-align: text-top;
    margin: .5rem 0 0 0;
}






/* GALLERY */

/* GALLERY MODAL */

.gallery-modal-menu {
    width: 2rem;
    position: absolute;
    top: .6rem;
    right: 1.6rem;
    color: #fff;
    z-index: 1;
}

.gallery-modal-menu-btn,
.gallery-modal-category-menu-list > li a {
    font-size: .15rem;
    color: #FFFFFF;
    letter-spacing: 0;
    line-height: .2rem;
    cursor: pointer;
}
.gallery-modal-category-menu-list {
    display: none;
    background-color: #3c6847;
    padding: .1rem .15rem;
}
.gallery-modal-menu-btn {
    display: block;
    position: relative;
    padding: .1rem .15rem;
    background-color: #3c6847;
    margin-bottom: .01rem;
}
.gallery-modal-menu-btn::after {
    content: '';
    display: block;
    width: .12rem;
    height: .12rem;
    position: absolute;
    top: .15rem;
    right: .059rem;
    background-image: url(../static/img/elements/mini_down_arrow.svg);
    background-repeat: no-repeat;
    background-position: center;
    transition: transform .5s;
}
.gallery-modal-menu-btn.active::after {
    transform: rotate(180deg);
}
.gallery-modal-category-menu-list > li {
    margin-bottom: .11rem;
}
.gallery-modal-category-menu-list > li a {
    display: block;
    transition: transform .5s;
}
.gallery-modal-category-menu-list > li a:hover {
    transform: translateX(.05rem);
}
.gallery-modal-category-menu-list > li.current a {
    opacity: .3;
}

.gallery-modal {
    position: fixed;
    z-index: 2000;
    top: 120%;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    overflow: hidden;
    pointer-events: none;
    transition: -webkit-transform 1.5s ease;
    transition: transform 1.5s ease;
    transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}

.gallery-modal.visible {
    -webkit-transform: translateY(-120%);
            transform: translateY(-120%);
    pointer-events: auto;
}

.gallery-modal-slider-list {
    display: flex;
    flex-wrap: wrap;
    width: 10000rem;
    height: 100%;
    transition: -webkit-transform 1.5s ease;
    transition: transform 1.5s ease;
    transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}

.gallery-modal-slider-list.left:hover {
    cursor: url('../static/img/ui/gallery-cursor-left.svg'), auto;
}

.gallery-modal-slider-list.right:hover {
    cursor: url('../static/img/ui/gallery-cursor-right.svg'), auto;
}

.gallery-modal-slider-list > li {
    width: 100vw;
    height: 100%;
    overflow: hidden;
}

.gallery-modal-slider-list > li > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.gallery-modal-slider-list > li.active > img {
    -webkit-transform: scale(1);
            transform: scale(1);
}

.gallery-modal-slider-controls {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: .8rem;
    z-index: 2;
    background-color: rgba(25, 38, 48, .7);
}

.gallery-modal-slider-controls-list {
    width: 10000rem;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    transition: -webkit-transform 1.5s ease;
    transition: transform 1.5s ease;
    transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}

.gallery-modal-slider-controls-list > li {
    width: 1.3rem;
    height: 100%;
    padding: .1rem .05rem;
    position: relative;
    transition: -webkit-transform .5s ease;
    transition: transform .5s ease;
    transition: transform .5s ease, -webkit-transform .5s ease;
    opacity: .5;
    transition: opacity .3s;
}
.gallery-modal-slider-controls-list > li:hover,
.gallery-modal-slider-controls-list > li.active {
    opacity: 1;
}

.gallery-modal-slider-controls-list > li.active::after {
    box-sizing: border-box;
    content: '';
    width: calc(100% - .06rem);
    height: calc(100% - .14rem);
    border: .02rem solid #3c6847;
    position: absolute;
    top: .07rem;
    left: .03rem;
}

.gallery-modal-slider-controls-list > li > img {
    position: relative;
    z-index: 1;
    box-sizing: content-box;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    cursor: pointer;
    opacity: 1;
    transition: opacity .5s ease;
}








/* CATEGORY - NEWS */

.category-blog-section {
    padding: .6rem 1rem 1rem 1.8rem;
}

.category-blog-section > h1 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .45rem 0;
}

.category-blog-categories-list {
    display: flex;
    flex-wrap: wrap;
    font-weight: 600;
    font-size: .15rem;
    line-height: .2rem;
    letter-spacing: .0125rem;
    text-transform: uppercase;
}

.category-blog-categories-list > li {
    margin: 0 .2rem 0 0;
}

.category-blog-categories-list > li > a {
    display: block;
    position: relative;
    transition: color .3s ease;
}

.category-blog-categories-list > li > a::after {
    content: '';
    display: block;
    width: 0;
    height: .02rem;
    background-color: #3c6847;
    position: absolute;
    bottom: -.04rem;
    left: 50%;
    opacity: 0;
    transition: width .3s ease, opacity .3s ease, width .3s ease;
}

.category-blog-categories-list > li.active > a::after {
    width: 100%;
    left: 0;
    opacity: 1;
}

.category-blog-categories-list > li.active > a,
.category-blog-categories-list > li > a:hover {
    color: #3c6847;
}

.category-blog-list-container {
    margin: .6rem 0 0 0;
}

.category-blog-list {
    display: flex;
    flex-wrap: wrap;
}

.category-blog-list > li {
    width: 3.6rem;
    margin: 0 .3rem .5rem 0;
}

.category-blog-list > li:nth-of-type(3n) {
    margin: 0 0 .5rem 0;
}

.category-blog-list > li > a {
    display: block;
    width: 100%;
    height: 100%;
}

.category-blog-list-item-img {
    width: 100%;
    height: 2rem;
    overflow: hidden;
}

.category-blog-list-item-img > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    transition: -webkit-transform 1.5s ease;
    transition: transform 1.5s ease;
    transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}

.category-blog-list > li:hover .category-blog-list-item-img > img {
    -webkit-transform: rotate(-1deg) scale(1.05);
            transform: rotate(-1deg) scale(1.05);
}

.category-blog-list-item-meta {
    padding: .2rem 0 0 0;
}

.category-blog-list-item-meta > span {
    display: block;
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    margin: 0 0 .1rem 0;
    color: rgba(62, 83, 99, .3);
    margin: 0;
}

.category-blog-list-item-meta > h2 {
    font-weight: 600;
    font-size: .25rem;
    line-height: .3rem;
    letter-spacing: .0083rem;
    text-transform: uppercase;
    color: #3c6847;
    margin: 0 0 .1rem 0;
}

.category-blog-list-item-meta > p {
    font-size: .2rem;
    line-height: .3rem;
    margin: 0;
}

.page-wrapper-category-blog + .main-footer {
    display: none;
}






/* PAGE - DOCUMENTs */

.documents-page-section {
    padding: .6rem 1.6rem 1rem 1.8rem;
}

.documents-page-section > h1 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    text-transform: uppercase;
    margin: 0 0 .45rem 0;
}

.documents-list {
    display: flex;
    flex-wrap: wrap;
}

.documents-list > li {
    width: 3.4rem;
    background-color: #fff;
    margin: 0 .3rem .3rem 0;
    transition: -webkit-transform .5s ease;
    transition: transform .5s ease;
    transition: transform .5s ease, -webkit-transform .5s ease;
}

.documents-list > li:hover {
    -webkit-transform: translateY(-.1rem);
            transform: translateY(-.1rem);
}

.documents-list > li:nth-of-type(3n) {
    margin: 0 0 .3rem 0;
}

.documents-list > li > a {
    display: block;
    width: 100%;
    height: 100%;
    padding: .8rem 0;
}

.documents-list-item-img {
    height: 2rem;
    width: 100%;
    padding: 0 .2rem;
}

.documents-list-item-img > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
}

.documents-list > li > a > h2 {
    padding: 0 .6rem;
    max-width: 100%;
    margin: .2rem 0 0 0;
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    text-align: center;
    color: #3c6847;
}

.page-wrapper-docs + .main-footer {
    display: none;
}









/* SINGLE - ARTICLE */

.article-intro {
    width: 100%;
    height: 5.6rem;
    overflow: hidden;
}

.article-intro > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

.article-content {
    width: 11.4rem;
    margin: 0 auto;
    padding: 1rem 1.2rem 0 1.2rem;
    background-color: #f1f1f1;
    margin-top: -1.4rem;
    position: relative;
    z-index: 1;
}

.article-content-header > span {
    display: block;
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    color: rgba(62,83,99,.3);
    margin: 0 0 .1rem 0;
}

.article-content-header > h1 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .25rem 0;
}

.article-content-text {
    font-size: .2rem;
    line-height: .4rem;
}
a.doc-link {
    display: inline-block;
    font-weight: 600;
    font-size: .18rem;
    line-height: .2rem;
    color: #3c6847;
    transition: opacity .3s;
}
a.doc-link:hover {
    opacity: .7;
}
.article-content-text h1,
.article-content-text h2,
.article-content-text h3,
.article-content-text h4,
.article-content-text h5,
.article-content-text h6 {
    font-weight: bold;
    font-size: .25rem;
    line-height: .35rem;
    margin: 0 0 .2rem 0;
}

.article-content-text p,
.article-content-text ol,
.article-content-text ul {
    width: 8.4rem;
    max-width: 100%;
    margin: 0 0 .4rem 0;
}

.article-content-text img,
.article-content-text iframe,
.article-content-text video {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    margin: 0 0 .4rem 0;
}

.article-content-text img {
    width: 100% !important;
    height: auto !important;
    max-width: inherit;
}

.article-content-text ul.blog-images-list {
    width: calc(100% + 2.4rem);
    max-width: inherit;
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 .2rem 0;
    margin-left: -1.2rem;
}

.blog-images-list > li {
    width: calc(50% - .1rem);
    margin: 0 .2rem .2rem 0;
}

.blog-images-list > li:nth-of-type(even) {
    margin: 0 0 .2rem 0;
}

.blog-images-list > li img {
    width: 100%;
    margin: 0;
}

.article-cta-block {
    text-align: center;
    margin: .8rem 0 0 0;
}

.article-cta-block .button {
    display: inline-block;
    vertical-align: top;
}








/* PAGE - PROGRESS */

.section-intro-progress .section-intro-content-container {
    padding: 0 0 0 1.8rem;
}

.intro-progress-content {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: relative;
    z-index: 1;
    color: #fff;
    padding: .8rem 0 0 0;
}

.intro-progress-content-left {
    width: 5.2rem;
    max-width: 100%;
    margin: 0 1.45rem 0 0;
}

.intro-progress-content-left > h1 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .25rem 0;
}

.intro-progress-content-left > p {
    font-size: .2rem;
    line-height: .4rem;
    margin: 0;
}

a.intro-progress-content-left-link {
    display: inline-block;
    vertical-align: top;
    position: relative;
    margin: .35rem 0 0 0;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    text-transform: uppercase;
    color: #3c6847;
}

.construction-news-pie-chart-list {
    width: 4rem;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.construction-news-pie-chart-list > li {
    text-align: center;
    width: 1.8rem;
}
.construction-news-pie-percent {
    display: none;
}
.construction-news-pie-chart-list > li h3 {
    font-weight: 600;
    font-size: .16rem;
    font-style: normal;
    font-stretch: normal;
    line-height: .2rem;
    letter-spacing: normal;
    color: #fff;
    margin: 0;
}


.progress-page-news {
    padding: .9rem .8rem 1.5rem 1.8rem;
}

.progress-page-news > h2 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    text-transform: uppercase;
    margin: 0 0 .75rem 0;
}

.progress-news-list {
    position: relative;
}

.progress-news-list::before {
    content: '';
    display: block;
    width: .05rem;
    height: calc(100% - 3rem);
    background-color: #3c6847;
    position: absolute;
    left: calc(50% - .025rem);
    top: .2rem;
}

.progress-news-list > li {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 0 1.5rem 0;
}

.progress-news-list > li:nth-of-type(even) {
    flex-direction: row-reverse;
    text-align: right;
}

.progress-news-list > li:last-of-type {
    margin: 0;
}

.progress-news-list-item-img {
    width: 5.27rem;
    max-width: 100%;
    height: 3rem;
}

.progress-news-list-item-img > a {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.progress-news-list-item-img > a > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    transition: -webkit-transform 1.5s ease;
    transition: transform 1.5s ease;
    transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}

.progress-news-list-item-img > a:hover > img {
    -webkit-transform: rotate(-1deg) scale(1.05);
            transform: rotate(-1deg) scale(1.05);
}

.progress-news-list > li:nth-of-type(even) .progress-news-list-item-img > a:hover > img {
    -webkit-transform: rotate(1deg) scale(1.05);
            transform: rotate(1deg) scale(1.05);
}

.progress-news-list-item-content {
    width: 5.27rem;
    max-width: 100%;
}

.progress-news-list-item-content > h3 {
    font-weight: 600;
    font-size: .25rem;
    line-height: .3rem;
    letter-spacing: .0083rem;
    text-transform: uppercase;
    color: #3c6847;
    margin: 0 0 .1rem 0;
}

.progress-news-list-item-content > p {
    font-size: .2rem;
    line-height: .3rem;
    margin: 0 0 .25rem 0;
    padding: 0 1.27rem 0 0;
}

.progress-news-list-item-content .link-container a {
    display: inline-block;
    vertical-align: top;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .001rem;
    text-transform: uppercase;
    color: #3c6847;
    position: relative;
}

.progress-news-list > li:nth-of-type(even) .progress-news-list-item-content > p {
    padding: 0 0 0 1.27rem;
}

.progress-dot {
    width: .3rem;
    height: .3rem;
    border-radius: 50%;
    background-color: #fff;
    box-shadow: 0 .05rem .25rem 0 rgba(40,48,61,0.07);
    position: absolute;
    top: .05rem;
    left: calc(50% - .15rem);
}

.progress-dot::after {
    content: '';
    width: .1rem;
    height: .1rem;
    border-radius: 50%;
    background-color: #3c6847;
    position: absolute;
    top: calc(50% - .05rem);
    left: calc(50% - .05rem);
}

.page-wrapper-progress + .main-footer {
    display: none;
}
/* single progress slider */
.single-progress-slider-inner {
    width: 9.9rem;
    height: 80vh;
    margin: 0 auto .2rem;
    overflow: hidden;
}
.single-progress-slider-list {
    width: 100%;
    height: 100%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    transition: transform 1s;
    overflow: hidden;
}
.single-progress-slider-list > li {
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.single-progress-slider-list > li img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.4);
    transition: transform 1s;
}
.single-progress-slider-list > li.active img {
    transform: scale(1);
}
.single-progress-slider-outer {
    position: relative;
}
.single-progress-controls span {
    position: absolute;
    top: calc(50% - .2rem);
    border: 1px solid rgba(138, 136, 136, 0.5);
    z-index: 5;
    transition: opacity .5s;
}
.single-progress-controls span:hover {
    opacity: .8;
}
.slider-controls > span {
    display: block;
    width: .4rem;
    height: .4rem;
    border-radius: 50%;
    border: 1px solid #3c6847;
    position: absolute;
    bottom: 0;
    cursor: pointer;
    z-index: 1;
    background-position: center;
    background-repeat: no-repeat;
    transition: transform .5s;
    cursor: pointer;
}
.single-progress-controls .left-control {
    left: 1.5rem;
    background-image: url(../static/img/left-slider-black.svg);
}
.single-progress-controls .right-control {
    right: 1.5rem;
    background-image: url(../static/img/right-slider-black.svg);
}
.single-progress-slider-counter {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    font-size: .25rem;
    line-height: .4rem;
    text-align: center;
    letter-spacing: 0.02em;
    font-weight: bold;
    color: rgba(138, 136, 136, 0.5);
}





/* PAGE - FILTER */

.page-wrapper-filter-apps ~ .main-footer {
    display: none;
}

.page-wrapper-filter-apps .menu-cta-choose {
    position: fixed;
    opacity: 1;
    bottom: 0;
    transform: translateY(0);
}

.filter-page-container {
    padding: .7rem 0 0 4.83rem;
}

.filter-page-container-flex {
    display: flex;
    flex-wrap: wrap;
}

.filter-page-container-left {
    position: fixed;
    top: .6rem;
    left: 1.85rem;
    height: calc(100% - .6rem);
    width: 2.65rem;
    max-width: 100%;
}

.filter-page-container-left > h1 {
    width: 100%;
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0;
    padding: 0 0 0 .15rem;
    height: 1.1rem;
}

.filter-page-container-left-form-container {
    position: relative;
    padding: .5rem 0;
    overflow: hidden;
    height: calc(100% - 1.1rem);
}

.filter-page-container-left-form-container::before,
.filter-page-container-left-form-container::after {
    content: '';
    display: block;
    width: 100%;
    height: .5rem;
    background-image: linear-gradient(to bottom, #f1f1f1 50%, rgba(246,246,246,0) 100%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    pointer-events: none;
}

.filter-page-container-left-form-container::after {
    background-image: linear-gradient(to top, #f6f6f6 0%, rgba(246,246,246,0) 100%);
    bottom: 0;
    top: inherit;
}

.filter-page-container-left-form-container-inner {
    position: relative;
    width: 100%;
    height: calc(100% + 1rem);
    top: -.5rem;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: .5rem 0 .5rem .15rem;
}

.filter-page-container-left-form-container-inner::-webkit-scrollbar{
    width: .04rem;
    background-color: rgba(255,255,255,0);
}

.filter-page-container-left-form-container-inner::-webkit-scrollbar-thumb {
    border-radius: .02rem;
    background-color: #eee;
    transition: background-color .6s ease;
}

.filter-section-ranges {
    margin: 0 0 .3rem 0;
}

.filter-section-range-block {
    width: 1.93rem;
    max-width: 100%;
    margin: 0 0 .15rem 0;
}

.filter-section-range-block > span {
    display: block;
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    margin: 0 0 .05rem 0;
}

.filter-section-range-block:last-of-type {
    margin: 0;
}

.rs-container {
    height: .35rem;
    margin: 0 0 0 .05rem;
}

.rs-scale {
    display: none;
}

.rs-container .rs-bg,
.rs-container .rs-selected {
    height: .02rem;
    border-radius: .01rem;
    background-color: rgba(18,40,76,.1);
    border: none;
    top: .04rem;
}

.rs-container .rs-pointer {
    width: .1rem;
    height: .1rem;
    border-radius: 50%;
    background-color: #3c6847;
    border: none;
    box-shadow: none;
}

.rs-container .rs-pointer::before,
.rs-container .rs-pointer::after {
    display: none;
}

.rs-container .rs-selected {
    background-color: #3c6847;
    border: none;
}

.rs-tooltip {
    pointer-events: none;
    width: .2rem;
    height: .2rem;
    -webkit-transform: none;
            transform: none;
    left: -.05rem;
    top: .15rem;
    min-width: auto;
    padding: 0;
    border: none;
    background-color: transparent;
    font-weight: normal;
    font-size: .13rem;
    line-height: .2rem;
    text-align: center;
}

.filter-section-ranges-checkboxes:not(:last-of-type) {
    margin: 0 0 .6rem 0;
}

.filter-checkboxes-list > li {
    position: relative;
    height: .3rem;
}

.filter-checkboxes-list > li:not(:last-of-type) {
    margin: 0 0 .2rem 0;
}

.filter-checkboxes-list > li > input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    top: 0;
    left: 0;
}

.filter-checkboxes-list > li > label {
    position: relative;
    display: inline-block;
    vertical-align: text-bottom;
    font-weight: 600;
    font-size: .13rem;
    line-height: .3rem;
    padding: 0 0 0 .4rem;
    cursor: pointer;
    transition: padding .5s ease;
}

.filter-checkboxes-list > li > label:hover {
    padding: 0 0 0 .45rem;
}

.filter-checkboxes-list > li > label::before {
    content: '';
    display: block;
    width: .3rem;
    height: .3rem;
    border-radius: 50%;
    border: .01rem solid #3c6847;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    transition: background-color .3s ease;
}

.filter-checkboxes-list > li > label::after {
    content: '';
    width: .12rem;
    height: 100%;
    position: absolute;
    left: .09rem;
    top: 0;
    background-image: url('../static/img/ui/checkmark.svg');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0;
    -webkit-transform: scale(.5);
            transform: scale(.5);
    transition: opacity .3s ease, -webkit-transform .3s ease;
    transition: transform .3s ease, opacity .3s ease;
    transition: transform .3s ease, opacity .3s ease, -webkit-transform .3s ease;
}

.filter-checkboxes-list > li > input:checked + label {
    color: #3c6847;
}

.filter-checkboxes-list > li > input:checked + label::before {
    background-color: #3c6847;
}

.filter-checkboxes-list > li > input:checked + label::after {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
}

.filter-page-container-right {
    width: 9rem;
    max-width: 100%;
}

.filter-categories-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 .6rem 0;
    font-weight: 600;
    font-size: .15rem;
    line-height: .2rem;
    letter-spacing: .0126rem;
    text-transform: uppercase;
}

.filter-categories-list > li:not(:last-of-type) {
    margin: 0 .2rem 0 0;
}

.filter-categories-list > li > a {
    display: block;
    position: relative;
    color: #C2C2C2;
    transition: color .3s ease;
}

.filter-categories-list > li.active > a {
    color: #12284C;
}

.filter-categories-list > li.active > a::before {
    content: '';
    display: block;
    width: 100%;
    height: .02rem;
    background-color: #3c6847;
    position: absolute;
    bottom: -.04rem;
    left: 0;
}

.filter-categories-list > li > a:hover {
    color: #12284C;
}

.filter-page-container-right-header-meta {
    width: 8.2rem;
    max-width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    font-weight: 500;
    font-size: .15rem;
    line-height: .5rem;
}

.filter-page-container-right-header-meta-right {
    display: flex;
    flex-wrap: wrap;
}

.filter-page-container-right-header-meta-right > span {
    display: block;
    color: #12284C;
    opacity: .2;
    margin: 0 .2rem 0 0;
}

.filter-page-container-right-header-meta-right > select {
    width: auto;
}

.selectize-control {
    width: 1.7rem;
    height: .5rem;
}

.selectize-input,
.selectize-input.full,
.selectize-control.single .selectize-input.input-active {
    height: .5rem;
    border: none;
    padding: 0 .35rem 0 .22rem;
    border-radius: .25rem;
    background-color: transparent;
    font-weight: 600;
    font-size: .15rem;
    line-height: .5rem;
    text-transform: uppercase;
    color: #3E5363;
    border: .01rem solid #3c6847;
}

.selectize-input.dropdown-active {
    border-radius: .25rem .25rem 0 0 !important;
}

.selectize-control.single .selectize-input:after {
    right: .2rem;
    margin-top: -.03rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .05rem .05rem 0 .05rem;
    border-color: #3E5363 transparent transparent transparent
}

.selectize-control.single .selectize-input.dropdown-active:after {
    margin-top: -.04rem;
    border-width: 0 .05rem .05rem .05rem;
    border-color: transparent transparent #3E5363 transparent;
}

.selectize-dropdown,
.selectize-input,
.selectize-input input {
  color: #3E5363;
  font-size: .13rem;
  line-height: .18rem;
  cursor: pointer;
}

.filter-page-container-right-result-outer {
    position: relative;
    /*height: calc(100vh - 2rem);*/
}

.filter-page-container-right-result-outer::after {
    content: '';
    display: block;
    width: 100%;
    height: .4rem;
    background-image: linear-gradient(to bottom, #f1f1f1 30%, rgba(246,246,246,0) 100%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    pointer-events: none;
}

.filter-page-container-right-result {
    width: 100%;
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: .4rem .2rem .2rem 0;
}

.filter-page-container-right-result::-webkit-scrollbar{
    width: .04rem;
    background-color: rgba(255,255,255,0);
}

.filter-page-container-right-result::-webkit-scrollbar-thumb {
    border-radius: .02rem;
    background-color: #eee;
    transition: background-color .6s ease;
}

.filter-page-container-right-result-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.filter-page-container-right-result-list > li {
    width: 4.2rem;
    max-width: 100%;
    background-color: #fff;
    margin: 0 0 .4rem 0;
    transition: box-shadow .5s ease, -webkit-transform .5s;
    transition: transform .5s, box-shadow .5s ease;
    transition: transform .5s, box-shadow .5s ease, -webkit-transform .5s;
}

.filter-page-container-right-result-list > li:hover {
    -webkit-transform: translateY(-.1rem);
            transform: translateY(-.1rem);
}

.filter-page-container-right-result-list > li > a {
    display: block;
    padding: .4rem .4rem .2rem .4rem; 
}

.filter-page-container-right-result-list > li > a > span {
    display: block;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    letter-spacing: .004rem;
    color: #3c6847;
    margin: 0 0 .3rem 0;
}

.filter-page-container-right-result-list-img {
    height: 2.8rem;
}

.filter-page-container-right-result-list-img > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
}

.filter-page-container-right-result-list-item-meta {
    display: flex;
    flex-wrap: wrap;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    margin: .45rem 0 0 0;
}

.filter-page-container-right-result-list-item-meta > li {
    min-width: 1.24rem;
    max-width: 100%;
    margin: 0 0 .2rem 0;
    padding: 0 .1rem 0 0;
}

.close-filter {
    display: block;
    width: .2rem;
    height: .2rem;
    position: absolute;
    top: .8rem;
    right: .7rem;
    background-image: url('../statics/img/ui/close_big_blue.svg');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease;
}

.close-filter:hover {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
}

.page-wrapper-filter-apps + .main-footer {
    display: none;
}






/* SINGLE - APPARTMENT */

.section-single-app {
    padding: 0 0 .4rem 1.8rem;
}

.section-single-app-content {
    display: flex;
    flex-wrap: wrap;
}

.section-single-app-content-left {
    width: calc(100% - 7.2rem);
    padding: .7rem .3rem 0 0;
}

a.single-app-back {
    display: inline-block;
    vertical-align: top;
    position: relative;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    letter-spacing: .004rem;
    color: #3c6847;
    padding: 0 0 0 .3rem;
}

a.single-app-back::before {
    content: '';
    box-sizing: border-box;
    display: block;
    width: .2rem;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url('../static/img/ui/small_arrow_left.svg');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.app-info {
    margin: .35rem 0 0 0;
}

.app-type {
    display: block;
    font-size: .25rem;
    line-height: .25rem;
    font-weight: 600;
    color: rgba(64,83,100,.5);
    text-transform: uppercase;
    margin: 0 0 .15rem 0;
}

.app-info > h1 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .3rem 0;
}

.app-specs-list {
    display: flex;
    flex-wrap: wrap;
}

.app-specs-list > li {
    max-width: 1.55rem;
    margin: 0 .5rem .5rem 0;
}

.app-specs-list > li > span:first-of-type {
    display: block;
    font-weight: 600;
    font-size: .4rem;
    line-height: .55rem;
    margin: 0 0 .05rem 0;
    color: #3c6847;
}

.app-specs-list > li > span:last-of-type {
    display: block;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    letter-spacing: .004rem;
}

.single-app-secondry-specs-list {
    column-count: 2;
    column-gap: .5rem;
    font-weight: 600;
    font-size: .14rem;
    line-height: .3rem;
    counter-reset: secondary-specs;
}

.single-app-secondry-specs-list > li {
    width: max-content;
    display: inline-block;
    vertical-align: text-bottom;
    position: relative;
    padding: 0 0 0 .45rem;
    margin: 0 0 .1rem 0;
}

.single-app-secondry-specs-list > li .app-item {
    display: block;
    width: .3rem;
    height: .3rem;
    border-radius: 50%;
    background-color: #3c6847;
    font-weight: bold;
    font-size: .14rem;
    line-height: .3rem;
    text-align: center;
    color: #fff;
    position: absolute;
    top: 0;
    left: 0;
}

.single-app-btns {
    margin: .3rem 0 0 0;
}

.single-app-btns .button {
    display: inline-block;
    vertical-align: top;
}

.single-app-additional-btns {
    margin: .55rem 0 0 0;
}

a.single-app-additional-btn,
.single-app-additional-btn {
    display: inline-block;
    vertical-align: top;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .25rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    color: #3c6847;
    position: relative;
    padding: 0 0 0 .35rem;
    cursor: pointer;
    margin: 0 0 .3rem 0;
}

.single-app-additional-btn::before {
    content: '';
    display: block;
    box-sizing: border-box;
    width: .2rem;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.single-app-additional-btn[data-icon="pdf"]::before {
    background-image: url('../static/img/ui/pdf_green.svg');
}

.single-app-additional-btn[data-icon="print"]::before {
    background-image: url('../static/img/ui/print_green.svg');
}

.section-single-app-content-right {
    width: 7.2rem;
}

.app-pane {
    width: 100%;
    position: relative;
    padding: .97rem .5rem .4rem .34rem;
    background-color: #fff;
    overflow: hidden;
}

.wind-rose {
    width: .7rem;
    height: .7rem;
    background-image: url('../static/img/ui/icon_rose.svg');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: .74rem;
    right: .68rem;
}

.wind-rose > span {
    display: block;
    font-weight: 600;
    font-size: .13rem;
    line-height: .7rem;
    text-align: center;
    text-transform: uppercase;
    height: .7rem;
    width: .7rem;
    position: absolute;
    opacity: .3;
}

.wind-rose > span:nth-of-type(1) {
    top: -70%;
    left: 0;
}

.wind-rose > span:nth-of-type(2) {
    top: 0;
    right: -70%;
}

.wind-rose > span:nth-of-type(3) {
    top: 70%;
    left: 0;
}

.wind-rose > span:nth-of-type(4) {
    top: 0;
    left: -70%;
}

.app-pane .wind-rose {
    position: absolute;
    top: .45rem;
    left: .49rem;
}

.single-app-slider {
    width: 3.1rem;
    height: auto;
    margin: 0 auto .35rem auto;
    position: relative;
}

.single-app-slider-list {
    width: 1000%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.single-app-slider-list > li {
    width: 3.1rem;
    height: 100%;
    pointer-events: none;
    opacity: 0;
    transition: opacity 1s ease;
}

.single-app-slider-list > li.active {
    pointer-events: auto;
    opacity: 1;
}

.single-app-slider-list > li > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    -webkit-transform: scale(.4);
            transform: scale(.4);
    transition: -webkit-transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease;
}

.single-app-slider-list > li.active > img {
    -webkit-transform: none;
            transform: none;
}

.single-app-slider-control {
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: absolute;
    top: calc(50% - .25rem);
}

.single-app-slider-control > img {
    display: block;
    width: .2rem;
    height: auto;
}

.single-app-slider-control.left {
    left: -.55rem;
}

.single-app-slider-control.right {
    right: -.55rem;
}

.app-pane-footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
}

.app-pane-footer-left {
    width: 3.72rem;
    max-width: 100%;
}

.app-pane-footer-left-img > img,
.app-pane-footer-right-img > img {
    display: block;
    width: 100%;
    height: auto;
}

.app-pane-footer-right {
    width: 2.46rem;
    max-width: 100%;
}

.app-pane-footer-left > span,
.app-pane-footer-right > span {
    display: block;
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    text-align: center;
    color: #3E5363;
    opacity: .3;
    margin: .3rem 0 0 0;
}

/* Section - more apps */

.section-apps-more {
    padding: .4rem .5rem 0 1.8rem;
}

.section-apps-more > h2 {
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .45rem 0;
}

.apps-slider-list {
    width: 1000%;
    display: flex;
    flex-wrap: wrap;
    transition: -webkit-transform 1s ease;
    transition: transform 1s ease;
    transition: transform 1s ease, -webkit-transform 1s ease;
}

.apps-slider-list > li {
    padding: 0 .4rem 0 0;
    opacity: 0;
    transition: opacity 2s ease;
}

.apps-slider-list > li.active,
.apps-slider-list > li.active + li,
.apps-slider-list > li.active + li + li {
    opacity: 1;
}

.apps-slider-list > li > a {
    display: block;
    width: 3.8rem;
    max-width: 100%;
    min-height: 5rem;
    background-color: #fff;
    padding: .4rem .4rem .2rem .4rem;
    transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease;
}

.apps-slider-list > li > a:hover {
    -webkit-transform: translateY(-.1rem);
            transform: translateY(-.1rem);
}

.apps-slider-list > li > a > span {
    display: block;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    letter-spacing: .004rem;
    color: #3c6847;
    margin: 0 0 .3rem 0;
}

.apps-slider-list .filter-page-container-right-result-list-img {
    height: 2.8rem;
}

.apps-slider-list .filter-page-container-right-result-list-img > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
}

.apps-slider-list .filter-page-container-right-result-list-item-meta {
    display: flex;
    flex-wrap: wrap;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    margin: .45rem 0 0 0;
}

.apps-slider-list .filter-page-container-right-result-list-item-meta > li {
    min-width: 1.24rem;
    max-width: 100%;
    margin: 0 0 .2rem 0;
    padding: 0 .1rem 0 0;
}

.apps-slider-container-footer {
    margin: .6rem 0 0 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.apps-slider-controls {
    display: flex;
    flex-wrap: wrap;
    margin: 0 .5rem 0 0;
}

.apps-slider-control {
    display: flex;
    justify-content: center;
    align-items: center;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    border: .01rem solid rgba(105,191,74,.4);
    margin: 0 .1rem 0 0;
    cursor: pointer;
    transition: border-color .6s ease, -webkit-transform .6s ease;
    transition: transform .6s ease, border-color .6s ease;
    transition: transform .6s ease, border-color .6s ease, -webkit-transform .6s ease;
}

.apps-slider-control > img {
    display: block;
    width: .2rem;
    height: auto;
}

.apps-slider-control:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
    border-color: #3c6847;
}

a.apps-slider-container-footer-link {
    display: block;
    vertical-align: top;
    position: relative;
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    color: #3c6847;
    white-space: pre-wrap;
}

a.apps-slider-container-footer-link::after {
    content: '';
    display: block;
    box-sizing: border-box;
    width: 0;
    height: .02rem;
    background-color: #3c6847;
    position: absolute;
    bottom: -.08rem;
    left: .2rem;
    transition: width .6s ease;
}

a.apps-slider-container-footer-link:hover::after {
    width: .4rem;
}








/* POP-UP FORM FEEDBACK */

.feedback-modal {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    right: -100%;
    z-index: 2000;
    background-color: #f1f1f1;
    transition: -webkit-transform 1s ease;
    transition: transform 1s ease;
    transition: transform 1s ease, -webkit-transform 1s ease;
}

.feedback-modal.active {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
}

.feedback-modal-content {
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

.form-feedback-wrapper {
    width: 10.8rem;
    margin: auto;
    text-align: center;
}
.form-feedback-wrapper h3 {
    font-size: .7rem;
    color: #12284C;
    letter-spacing: 0;
    line-height: .8rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: .6rem;
}
.form-feedback-col-wrapper {
    display: flex;
    justify-content: space-between;
    margin-bottom: .2rem;
}
.form-feedback-col-wrapper > div {
    width: 5.2rem;
}
.form-feedback-left-col > div:first-of-type {
    margin-bottom: .4rem;
}
.forms-input,
.client-mssg {
    padding: .2rem;
    background-color: #F6F6F6;
    border: .01rem solid transparent;
    font-size: .2rem;
    color: #12284C;
    letter-spacing: 0;
    line-height: .3rem;
}
.client-mssg {
    height: 1.8rem;
}
.input-section-title {
    display: none;
}
::-webkit-input-placeholder { color: #12284C;; transition: opacity .3s; font: .2rem; font-style: normal;}/* webkit */
::-moz-placeholder          { color: #12284C;; transition: opacity .3s; font: .2rem; font-style: normal;}/* Firefox 19+ */
:-moz-placeholder           { color: #12284C;; transition: opacity .3s; font: .2rem; font-style: normal;}/* Firefox 18- */
:-ms-input-placeholder      { color: #12284C;; transition: opacity .3s; font: .2rem; font-style: normal;}/* IE */
:focus::-webkit-input-placeholder {opacity:0;}/* webkit */
:focus::-moz-placeholder          {opacity:0;}/* Firefox 19+ */
:focus:-moz-placeholder           {opacity:0;}/* Firefox 18- */
:focus:-ms-input-placeholder      {opacity:0;}/* IE */

.req-input {
    display: none;
}
.phone-number-example {
    display: block;
    font-size: .18rem;
    color: #C2C2C2;
    letter-spacing: 0;
    line-height: .18rem;
    margin-bottom: .22rem;
    font-weight: 300;
    text-align: left;
}
.form-feedback-order-button {
    cursor: pointer;
    padding: .28rem 1.05rem;
    display: inline-block;
    vertical-align: top;
}
.form-feedback {
    margin-bottom: .4rem;
}
.form-feedback-info-text {
    margin: 0;
    font-size: .18rem;
    color: #C2C2C2;
    letter-spacing: 0;
    line-height: .18rem;
    font-weight: 300;
}
.form-feedback-close-btn {
    width: .2rem;
    height: .2rem;
    position: absolute;
    top: .4rem;
    right: .4rem;
    cursor: pointer;
    background-image: url(../statics/img/ui/close.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: -webkit-transform .6s;
    transition: transform .6s;
    transition: transform .6s, -webkit-transform .6s;
}
.form-feedback-close-btn:hover {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
}
.form-feedback-success-container {
    display: none;
    width: 7.65rem;
    margin: auto;
    text-align: center;
}
.form-feedback-success-container h3 {
    font-size: .7rem;
    color: #12284C;
    letter-spacing: 0;
    line-height: .8rem;
    font-weight: bold;
    margin-bottom: .4rem;
}
.form-feedback-success-container p {
    max-width: 3.7rem;
    margin: 0 auto .6rem;
    font-size: .25rem;
    color: #12284C;
    letter-spacing: 0;
    line-height: .35rem;
}
.form-feedback-success-container .close-form-feedback-success {
    padding: .28rem 1.15rem;
    font-size: .2rem;
    color: #F6F6F6;
    letter-spacing: 0;
    text-align: center;
    line-height: .2rem;
}
.forms-input.invalid {
    background: #FFFFFF;
    border: .01rem solid #E22737;
    color: #E22737;
}


/* Reveals animation */

/* PAGE - HOME */

@media all and (min-width: 768px) {
    .animation-element-default {
        -webkit-transform: translateY(.5rem) scale(.9);
                transform: translateY(.5rem) scale(.9);
        opacity: 0;
        transition: opacity 1s ease, -webkit-transform 1s ease;
        transition: transform 1s ease, opacity 1s ease;
        transition: transform 1s ease, opacity 1s ease, -webkit-transform 1s ease;
    }

    .animation-element-default.in-view {
        -webkit-transform: translateY(0) scale(1);
                transform: translateY(0) scale(1);
        opacity: 1;
    }

    .article-intro img.animation-element-default {
        -webkit-transform: scale(1.4);
                transform: scale(1.4);
        opacity: 0;
        transition: opacity 2s ease, -webkit-transform 2s ease;
        transition: transform 2s ease, opacity 2s ease;
        transition: transform 2s ease, opacity 2s ease, -webkit-transform 2s ease;
    }

    .article-intro img.animation-element-default.in-view {
        -webkit-transform: none;
                transform: none;
        opacity: 1;
    }

    .filter-page-container-right.animation-element-default {
        transition-delay: .4s;
    }

    .progress-news-list-item-content > h3.animation-element-default {
        transition-delay: .1s;
    }

    .progress-news-list-item-content > p.animation-element-default {
        transition-delay: .2s;
    }

    .progress-news-list-item-content .link-container.animation-element-default {
        transition-delay: .3s;
    }

    .floor-slice-page-left.animation-element-default {
        transition-delay: .1s;
    }

    .floor-slice-page-right.animation-element-default {
        transition-delay: .3s;
    }

    .category-blog-categories-list.anim.animation-element-default {
        transition-delay: .1s;
    }

    .category-blog-list-container.animation-element-default {
        transition-delay: .3s;
    }

    .article-content-header > span.animation-element-default {
        transition-delay: .1s;
    }

    .article-content-header > h1.animation-element-default {
        transition-delay: .2s;
    }

    .article-content.animation-element-default.in-view .article-content-text {
        opacity: 1;
        -webkit-transform: none;
                transform: none;
    }

    .section-contacts-content-column > h2.animation-element-default {
        transition-delay: .1s;
    }

    .section-contacts-content-column > ul > li.animation-element-default:nth-of-type(1) {
        transition-delay: .2s;
    }

    .section-contacts-content-column > ul > li.animation-element-default:nth-of-type(2) {
        transition-delay: .3s;
    }

    .section-contacts-content-column > ul > li.animation-element-default:nth-of-type(3) {
        transition-delay: .4s;
    }

    .contacts-page-cta-container.animation-element-default {
        transition-delay: .5s;
    }

    .app-info > h1.animation-element-default {
        transition-delay: .1s;
    }

    .app-specs-list.animation-element-default {
        transition-delay: .2s;
    }

    .single-app-secondry-specs-list.animation-element-default {
        transition-delay: .3s;
    }

    .single-app-btns.animation-element-default {
        transition-delay: .4s;
    }
}

/* MOBILE TAILS */

.mobile-only,
.mobile-header,
.mobile-header-content,
.mobile-filter-button,
a.mobile-filter-button,
.mobile-filter-close-btn {
    display: none;
}

/* CATEGORY FLOORS SELECTION */
.page-wrapper-category-floors + .main-footer {
    display: none;
}
.category-floors-filter-wrapper {
    padding: .7rem 0 .76rem 1.8rem;
}
.category-floors-filter-wrapper > a {
    margin-bottom: .5rem;
}
.category-floors-filter-row,
.category-floors-filter-row > div {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}
.category-floors-filter-row > div h3 {
    font-size: .13rem;
    color: #3E5363;
    letter-spacing: 0;
    line-height: .5rem;
    color: #3E5363;
    margin: 0 .1rem 0 0;
    opacity: .3;
}
.category-floors-filter-checkbox {
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    position: relative;
    overflow: hidden;
    transition: box-shadow .5s ease, transform .5s ease;
}
.category-floors-filter-checkbox:hover {
    transform: translateY(-.03rem);
    box-shadow: 0 0.1rem 0.4rem 0 rgba(62, 83, 99, .14);
}
.category-floors-filter-checkbox > span {
    display: block;
    width: 100%;
    height: 100%;
    font-size: .15rem;
    color: #3E5363;
    letter-spacing: .0125rem;
    text-align: center;
    line-height: .5rem;
    border-radius: 50%;
    border: .01rem solid #3c6847;
    transition: color .3s, background-color .3s;
}
.category-floors-filter-checkbox > input {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    cursor: pointer;
    opacity: 0;
}
.category-floors-filter-checkbox > input:checked + span {
    background-color: #3c6847;
    color: #fff;
}
.category-floors-filter-row > div > div:not(:last-child) {
    margin-right: .1rem;
}
.category-floors-filter-row > div {
    margin-right: .45rem;
}
#floor-filter .selectize-control {
    width: .97rem;
}
.category-floors-filter-result {
    min-height: 5.3rem;
    position: relative;
    padding: 1.1rem 0;
    background-color: #fff;
}
.floor-scheme-wrapper {
    width: 9.5rem;
    margin: auto;
}
.floor-scheme-wrapper > img,
.floor-scheme-wrapper > svg {
    display: block;
    width: 100%;
}
.floor-scheme-wrapper a.is-disable {
    cursor: auto;
}
.category-floors-filter-result .wind-rose {
    top: .6rem;
    left: 1.5rem;
    bottom: auto;
    right: auto;
}
.apartment-legend-list {
    position: absolute;
    right: .8rem;
    bottom: 1.18rem;
}
.apartment-legend-list li {
    padding-left: .2rem;
    position: relative;
}
.apartment-legend-list li:not(:last-child) {
    margin-bottom: .2rem;
}
.apartment-legend-list li::before {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    overflow: hidden;
    position: absolute;
    top: calc(50% - 5px);
    left: 0;
}
.room-1::before {
    background-color: #F7EEEB;
}
.room-2::before {
    background-color: #D1E5BC;
}
.room-3::before {
    background-color: #DEDFDC;
}
.room-4::before {
    background-color: #E7E8EB;
}
.apartment-legend-list li span {
    display: block;
    font-size: .16rem;
    color: #3E5363;
    letter-spacing: .004rem;
    line-height: .2rem;
}
.floor-scheme-wrapper svg a path {
    transition: fill .5s;
    opacity: .8;
}
.floor-scheme-wrapper svg a:hover path {
    fill: #3c6847;
}
/* PAGE GENPLAN */
.page-wrapper-genplan + .main-footer {
    display: none;
}
.page-wrapper-genplan {
    position: relative;
}
.main-genplan {
    width: 100%;
    height: 100%;
    -webkit-background-size: contain;
    background-size: contain;
    background-position: top center;
    background-repeat: no-repeat;
}
.genplan-link path {
    fill: rgba(60, 104, 71, 0.5);
    stroke: #3c6847;
    opacity: 0;
    transition: opacity .5s;
    stroke-width: .03rem;
}
.genplan-link:hover path {
    opacity: 1;
}

.genplan-btns-wrapper {
    position: fixed;
    bottom: 0;
    right: 0;
    display: flex;
}
.page-wrapper-genplan .menu-cta-choose.genplan-btn-3d {
    background: #fff;
    color: #3c6847;
    margin-right: .3rem;
    text-align: center;
    transition: background .5s, color .5s;
}
.page-wrapper-genplan .menu-cta-choose.genplan-btn-3d:hover {
    color: #fff;
    background: #3c6847;
}
.genplan-link:hover path {
    opacity: 1;
}
.page-wrapper-genplan .menu-cta-choose {
    padding: 0 .5rem;
    bottom: 0;
    opacity: 1;
    transform: translateY(0);   
    position: relative;

}

.genplan-description span {
    display: block;
}
.genplan-text {
    text-shadow: 0 .02rem .1rem rgba(0, 0, 0, 0.5);
    font-size: .20rem;
    font-weight: bold;
    text-align: center;
    color: #fff;
    opacity: 1;
    transition: opacity .5s;
    pointer-events: none;
    position: absolute;
}
.genplan-subtext {
    font-size: .14rem;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.5;
    text-align: center;
    color: #fff;
}
.genplan-subtext > b {
    display: block;
}
.awaiting-stage {
    cursor: auto;
}
.genplan-text.visible {
    opacity: 1;
}
.genplan-link-disable {
    cursor: auto;
}
.genplan-link-disable path {
    fill: rgba(62, 83, 99, 0.5);
    stroke: #3E5363;
}

/* Genplan qr */

.genplan-qr {
    display: flex;
    align-items: center;
    width: 358px;
    padding: 15px;
    gap: 20px;
    border-radius: 10px;
    background: #FFF;
    position: fixed;
    bottom: 100px;
    left: 280px;
    z-index: 2;
}

.genplan-qr__img {
    display: block;
    max-width: 110px;
}

.genplan-qr__title {
    font-family: 'Montserrat';
    display: flex;
    align-items: center;
    gap: 10px;
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 100%; /* 16px */
    letter-spacing: 0.48px;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.genplan-qr__description {
    font-family: 'Montserrat';
    color: #425261;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}

/* End genplan qr */

.house-name-block > span {
    display: block;
    padding: .15rem;
    background-color: #fff;
    font-size: .16rem;
    font-weight: 600;
    color: #3E5363;
    letter-spacing: .004rem;
    line-height: .2rem;
    position: absolute;
    z-index: 3;
}
.house-name1 {
    bottom: 1.8rem;
    left: 3.4rem;
}
.house-name2 {
    bottom: 1rem;
    left: 5.5rem; 
}
.floor-select-info-block {
    position: absolute;
    top: 2rem;
    right: 0;
    transition: transform .5s;
    transform: translateX(100%);
}
.floor-select-info-block.active {
    transform: translateX(0);
}
.floor-select-info-block > a {
    position: initial;
}
.floor-select-info {
    padding: .4rem .5rem .26rem;
    background-color: #fff;
    text-align: center;
}
.floor-select-info-top-row {
    border-bottom: .02rem solid #F2F2F2;
    margin-bottom: .18rem;
}
.floor-select-info-top-row-list {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    padding: 0 0 .26rem 0;
}
.floor-select-info-top-row-list li span {
    display: block;
}
.select-floor-info {
    font-size: .5rem;
    color: #3c6847;
    font-weight: 600;
    letter-spacing: -.0125rem;
    line-height: .5rem;
    margin-bottom: .04rem;
}
.select-floor-descr {
    font-size: .14rem;
    color: #3E5363;
    letter-spacing: .01rem;
    text-transform: uppercase;
    line-height: .2rem;
    font-weight: 600;
}
.floor-select-info-bottom-row span {
    display: block;
}
.select-floor-num {
    font-size: .5rem;
    color: #3E5363;
    letter-spacing: -.0125rem;
    text-align: center;
    line-height: .5rem;
    font-weight: 600;
    margin-bottom: .04rem;
}
.genplan-link-floor path {
    fill: #fff;
    transition: opacity .5s;
    opacity: 0;
}
.genplan-link-floor:hover path {
    opacity: .7;
}
.house-name3 {
    bottom: 1rem;
    left: 3.4rem;
}


























/* PAGE - APPS REMODELED */

.page-wrapper-apps-remodeled {
    overflow: hidden;
}

.page-wrapper-apps-remodeled ~ .main-footer {
    display: none;
}

.page-wrapper-apps-remodeled .intro-slider-item-content h2 {
    height: 2.2rem;
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
}

.section-remodeled-description {
    position: relative;
}

.section-remodeled-description-content {
    background-color: #F2F2F2;
    padding: .8rem;
    margin: -1.4rem auto 0 auto;
    width: 10.8rem;
    max-width: 100%;
}

.section-remodeled-description-content {
    font-size: .2rem;
    line-height: .4rem;
}

.section-remodeled-description-content h1,
.section-remodeled-description-content h2,
.section-remodeled-description-content h3,
.section-remodeled-description-content h4,
.section-remodeled-description-content h5,
.section-remodeled-description-content h6 {
    font-weight: bold;
    font-size: .25rem;
    line-height: .35rem;
    margin: 0 0 .2rem 0;
}

.section-remodeled-description-content p,
.section-remodeled-description-content ol,
.section-remodeled-description-content ul {
    width: 8.4rem;
    max-width: 100%;
    margin: 0 0 .4rem 0;
}

.section-remodeled-description-content img,
.section-remodeled-description-content iframe,
.section-remodeled-description-content video {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    margin: 0 0 .4rem 0;
}

.section-remodeled-description-content img {
    width: calc(100% + 2.4rem);
    max-width: inherit;
    margin-left: -1.2rem;
}

.section-remodeled-advantages {
    margin: 0 0 1.2rem 0;
    padding: 0 .8rem 0 1.2rem;
    position: relative;
}

.section-remodeled-advantages-bg {
    height: 5.9rem;
    position: absolute;
    left: -.92rem;
    top: -.8rem;
}

.section-remodeled-advantages-bg > img {
    display: block;
    height: 100%;
    width: auto;
}

.section-remodeled-advantages > h2 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .6rem 0;
    padding: 0 0 0 .6rem;
}

.remodeled-advantages-slider-list {
    display: flex;
    flex-wrap: wrap;
    width: 1000%;
    transition: -webkit-transform 1s ease;
    transition: transform 1s ease;
    transition: transform 1s ease, -webkit-transform 1s ease;
}

.remodeled-advantages-slider-list > li {
    width: 3.8rem;
    max-width: 100%;
    padding: 0 .3rem 0 0;
}

.remodeled-advantages-slider-list > li > div {
    position: relative;
    display: block;
    min-height: 4.37rem;
    padding: .7rem .25rem .35rem .25rem;
    background-color: #fff;
}

.remodeled-advantages-slider-list > li > div::before {
    content: '';
    display: block;
    width: 1.4rem;
    height: 1.3rem;
    box-sizing: border-box;
    border-top: 2px solid #3c6847;
    border-left: 2px solid #3c6847;
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
}

.remodeled-advantages-slider-list-item-img {
    height: .9rem;
    margin: 0 0 .4rem 0;
}

.remodeled-advantages-slider-list-item-img > img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
}

.remodeled-advantages-slider-list > li > div > h3 {
    font-weight: 600;
    font-size: .2rem;
    line-height: .2rem;
    letter-spacing: .0167rem;
    text-align: center;
    color: #3c6847;
    margin: 0 0 .32rem 0;
}

.remodeled-advantages-slider-list > li > div > p {
    font-size: .2rem;
    line-height: .3rem;
    text-align: center;
    margin: 0;
    position: relative;
}

.remodeled-advantages-slider-list > li > div > p::before {
    content: '';
    display: block;
    width: 1.3rem;
    height: 2px;
    max-width: 100%;
    background-color: #F2F2F2;
    position: absolute;
    top: -.17rem;
    left: calc(50% - .65rem);
}

.remodeled-advantages-slider-controls {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin: .6rem 0 0 0;
}

.remodeled-advantages-slider-control {
    display: flex;
    justify-content: center;
    align-items: center;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    border: .01rem solid rgba(105,191,74,.4);
    margin: 0 .1rem 0 0;
    cursor: pointer;
    transition: border-color .6s ease, -webkit-transform .6s ease;
    transition: transform .6s ease, border-color .6s ease;
    transition: transform .6s ease, border-color .6s ease, -webkit-transform .6s ease;
}

@media all and (min-width: 767px) {
    .remodeled-advantages-slider-control:hover {
        -webkit-transform: translateY(-.05rem);
                transform: translateY(-.05rem);
        border-color: #3c6847;
    }
}

.remodeled-advantages-slider-control:last-of-type {
    margin: 0;
}

.remodeled-advantages-slider-control > img {
    display: block;
    width: .2rem;
    height: auto;
}

.section-comparison {
    padding: 0 1.2rem;
    margin: 0 0 1.2rem 0;
}

.section-comparison > h2 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .6rem 0;
    padding: 0 0 0 .6rem;
}

.comparison-slider-wrapper{
    width: 100%;
    position: relative;
    overflow: hidden;
}

.comparison-slider-wrapper > img{
    display: block;
    width: 100%;
    height: auto;
}

.comparison-slider-wrapper{
    margin: 0 0 80rem 0;
}

.comparison-slider-wrapper:last-of-type{
    margin: 0;
}

.comparison-style {
    display: block;
    height: .8rem;
    min-width: 1.6rem;
    background-color: #fff;
    font-weight: 600;
    font-size: .2rem;
    letter-spacing: .0167rem;
    line-height: .8rem;
    text-align: center;
    position: absolute;
    bottom: 0;
}

.comparison-style.left {
    left: 0;
}

.comparison-style.right {
    right: 0;
}

.section-style {
    margin: 0 0 1.2rem 0;
    padding: 0 .8rem 0 1.6rem;
}

.section-style > h3 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .35rem 0;
    padding: 0 0 0 .2rem;
}
.section-style .decorate-leaf-left::after,
.section-style .decorate-leaf::after {
    display: none;
}
.section-style.header-reverse > h3 {
    text-align: right;
    padding: 0 1rem 0 0;
}

.section-style > div.clearfix > p {
    width: 7.85rem;
    max-width: 100%;
    padding: 0 0 0 .2rem;
    font-size: .2rem;
    line-height: .3rem;
    margin: 0;
}

.section-style.header-reverse > div.clearfix > p {
    float: right;
    padding: 0 1rem 0 0;
    text-align: right;
}

.styles-list {
    margin: .6rem 0 0 0;
}

.styles-list > li {
    margin: 0 0 1.2rem 0;
    position: relative;
    background-color: #3E5363;
}

.styles-list > li:last-of-type {
    margin: 0;
}

.styles-list > li:nth-of-type(even) {
    right: .8rem;
}

.style-label {
    display: block;
    font-weight: 600;
    font-size: .2rem;
    line-height: .3rem;
    letter-spacing: .0167rem;
    text-transform: uppercase;
    color: #fff;
    margin: 0;
    position: absolute;
    right: .16rem;
    top: .6rem;
    transform-origin: 0 0;
    transform: translateX(100%) rotate(90deg);
}

.styles-list > li:nth-of-type(even) .style-label {
    right: initial;
    left: .16rem;
    transform-origin: 100% 0;
    transform: translateX(-100%) rotate(-90deg);
}

.style-img-container {
    position: relative;
    top: .6rem;
    right: .6rem;
}

.styles-list > li:nth-of-type(even) .style-img-container {
    left: .6rem;
    right: initial;
}

.style-img-container > img {
    display: block;
    width: 100%;
    height: auto;
    user-select: none;
}

.style-marker {
    position: absolute;
    width: .3rem;
    height: .3rem;
}

.style-marker:hover {
    z-index: 2;
}

.style-marker::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    box-shadow: 0 .05rem .25rem 0 rgba(40,48,61,0.07);
    background-color: #3c6847;
    border: .1rem solid #fff;
    box-sizing: border-box;
    cursor: pointer;
    transform-origin: 50% 50%;
    animation: pulsate-fwd 2s ease-in-out infinite both;
}

.style-marker:nth-of-type(2)::before {
    animation-delay: .2s;
}

.style-marker:nth-of-type(3)::before {
    animation-delay: .4s;
}

.style-marker:nth-of-type(4)::before {
    animation-delay: .6s;
}

.style-marker:nth-of-type(5)::before {
    animation-delay: .8s;
}

.style-marker:nth-of-type(6)::before {
    animation-delay: 1s;
}

.style-marker:nth-of-type(7)::before {
    animation-delay: 1.2s;
}

.style-marker-description {
    width: 3.07rem;
    background-color: #fff;
    padding: .2rem .3rem .3rem .3rem;
    position: absolute;
    left: .45rem;
    top: 0;
    opacity: 0;
    pointer-events: none;
    transform: scale(.95);
    transition: opacity .6s ease, transform .6s ease;
}

.style-marker-description.left-top {
    left: initial;
    right: .45rem;
    top: initial;
    bottom: 0;
}

.style-marker-description.left-bottom {
    left: initial;
    right: .45rem;
}

.style-marker-description.right-top {
    top: initial;
    bottom: 0;
}

@media all and (min-width: 767px) {
    .style-marker:hover .style-marker-description {
        opacity: 1;
        transform: scale(1);
    }
}

.style-marker-description h6 {
    font-weight: 600;
    font-size: .2rem;
    line-height: .3rem;
    letter-spacing: .0167rem;
    text-transform: uppercase;
    color: #3c6847;
    margin: 0 0 .1rem 0;
}

.style-marker-description p {
    font-size: .2rem;
    line-height: .25rem;
    margin: 0;
}

@keyframes pulsate-fwd {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

.tour-3d-btn {
    display: flex;
    justify-content: space-between;
    width: 7.2rem;
    margin: 1rem auto 0 auto;
    flex-wrap: wrap;
    align-items: center;
}

.tour-3d-btn > a:not(.button) {
    display: block;
    width: 1rem;
    height: 1rem;
    transform: translateX(120%);
}
.tour-3d-btn > a.button {
    width: 2.4rem;
    color: #3c6847;
    transform: translateX(-18%);
}
.tour-3d-btn > a.button:hover {
    color: #fff;
}
.tour-3d-btn > a > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.style-info-block {
    margin: .4rem 0 0 0;
}

.style-info-block > h5 {
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: .14rem;
    line-height: .2rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    text-align: center;
}

.style-info-block > h5 > span {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding: 0 .25rem 0 0;
    cursor: pointer;
}

.style-info-block > h5 > span::after {
    content: '';
    display: block;
    width: .1rem;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    background-image: url('../static/img/ui/select_arrow.svg');
    -webkit-background-size: contain;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.style-info-collapsable {
    padding: .6rem 1rem .1rem .6rem;
    background-color: #fff;
    box-shadow: 0 .02rem .18rem .01rem rgba(62,83,99,0.14);
    position: relative;
    display: none;
}

.style-info-collapsable-close {
    width: .8rem;
    height: .8rem;
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

.style-info-collapsable-close > img {
    display: block;
    width: .2rem;
    height: auto;
    transition: transform .6s ease;
}

.style-info-collapsable-close:hover > img {
    transform: rotate(-90deg);
}

.style-info-list {
    column-count: 2;
    column-gap: .8rem;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    align-items: end;
    flex-wrap: wrap;
}

.style-info-list > li {
    width: 45%;
    display: inline-block;
    vertical-align: top;
    margin: 0 0 .5rem 0;
}

.style-info-list > li > h6 {
    font-weight: 600;
    font-size: .2rem;
    line-height: .3rem;
    text-transform: uppercase;
    margin: 0 0 .15rem 0;
}

.style-info-list > li > ul {
    font-size: .2rem;
    line-height: .28rem;
}

.style-info-list > li > ul > li {
    margin: 0 0 .15rem 0;
    padding: 0 0 0 .25rem;
    position: relative;
}

.style-info-list > li > ul > li::before {
    content: '';
    display: block;
    width: .1rem;
    height: .1rem;
    border-radius: 50%;
    background-color: #3c6847;
    position: absolute;
    left: 0;
    top: .09rem;
}

.style-info-list > li > ul > li:last-of-type {
    margin: 0;
}

.style-btns {
    text-align: center;
    margin: .6rem 0 0 0;
}

.style-btns a.button {
    min-width: 3.4rem;
    display: inline-block;
    vertical-align: top;
    margin: 0 .2rem;
}

.section-remodel-phylosophy {
    margin: 0 0 2.3rem 0;
}

.section-remodel-phylosophy > h2 {
    padding: 0 1.8rem;
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .6rem 0;
}

.section-remodel-phylosophy-slider {
    position: relative;
}

.section-remodel-phylosophy-slider-imgs-container {
    width: 9.55rem;
    max-width: 100%;
    height: 8rem;
    overflow: hidden;
}

.section-remodel-phylosophy-slider-imgs-list {
    display: flex;
    flex-wrap: wrap;
    width: 10000%;
    height: 100%;
    transition: transform 2s ease;
}

.section-remodel-phylosophy-slider-imgs-list > li {
    width: 9.55rem;
    height: 100%;
    overflow: hidden;
}

.section-remodel-phylosophy-slider-imgs-list > li > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 2s ease;
    transform: scale(1.4);
}

.section-remodel-phylosophy-slider-imgs-list > li.active > img {
    transform: none;
}

.section-remodel-phylosophy-slider-info-pane {
    width: 7rem;
    max-width: 100%;
    background-color: #fff;
    padding: 0 0 1rem 0;
    overflow: hidden;
    position: absolute;
    bottom: -1.1rem;
    left: 6.06rem;
    z-index: 2;
}

.section-remodel-phylosophy-slider-info-list {
    display: flex;
    flex-wrap: wrap;
    width: 10000%;
    transition: transform 2s ease, height 2s ease;
}

.section-remodel-phylosophy-slider-info-list > li {
    width: 7rem;
    max-width: 100%;
    padding: 0 .8rem 0 1rem;
}

.section-remodel-phylosophy-slider-info-list > li > div {
    padding: 1rem 0 0 0;
}

.section-remodel-phylosophy-slider-info-list > li > div > h3 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .35rem 0;
}

.section-remodel-phylosophy-slider-info-list > li > div > p {
    font-size: .2rem;
    line-height: .3rem;
    margin: 0;
}

.remodel-phylosophy-slider-controls-container {
    display: flex;
    flex-wrap: wrap;
    padding: 0 0 0 1rem;
    align-items: center;
    margin: .6rem 0 0 0;
}

.remodel-phylosophy-slider-counters {
    position: relative;
    margin: 0 .17rem 0 0;
}

.remodel-phylosophy-slider-counter-current {
    display: block;
    font-weight: 600;
    font-size: .8rem;
    line-height: .8rem;
    color: #3c6847;
    letter-spacing: -.02rem;
}

.remodel-phylosophy-slider-counter-total {
    width: .3rem;
    display: block;
    font-weight: bold;
    font-size: .2rem;
    line-height: .3rem;
    text-align: right;
    position: absolute;
    top: .05rem;
    right: -.42rem;
}

.remodel-phylosophy-slider-controls-separator {
    width: 1.2rem;
    height: .02rem;
    background-color: #3E5363;
    max-width: 100%;
    margin: 0 .2rem 0 0;
}

.remodel-phylosophy-slider-controls {
    display: flex;
    flex-wrap: wrap;
}

.remodel-phylosophy-slider-control {
    display: flex;
    justify-content: center;
    align-items: center;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    border: .01rem solid rgba(105,191,74,.4);
    margin: 0 .1rem 0 0;
    cursor: pointer;
    transition: border-color .6s ease, -webkit-transform .6s ease;
    transition: transform .6s ease, border-color .6s ease;
    transition: transform .6s ease, border-color .6s ease, -webkit-transform .6s ease;
}

.remodel-phylosophy-slider-control:hover {
    -webkit-transform: translateY(-.05rem);
            transform: translateY(-.05rem);
    border-color: #3c6847;
}

.remodel-phylosophy-slider-control:last-of-type {
    margin: 0;
}

.remodel-phylosophy-slider-control > img {
    display: block;
    width: .2rem;
    height: auto;
}

.section-remodel-price > h2 {
    padding: 0 1.8rem;
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 1.9rem 0;
}

.section-remodel-price-content {
    position: relative;
}

.section-remodel-price-content > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}

.section-remodel-price-content-pane {
    width: 12rem;
    max-width: 100%;
    margin: 0 auto;
    background-color: #fff;
    position: relative;
    z-index: 2;
    top: -1.28rem;
    padding: 1rem 1.3rem .9rem 1.3rem;
    overflow: hidden;
}

.section-remodel-price-content-pane-row {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    z-index: 2;
}

.section-remodel-price-content-pane-column {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 50%;
    padding: 0 0 0 .4rem;
}

.section-remodel-price-content-pane-column:nth-of-type(1) {
    padding: 0 .4rem 0 0;
}

.section-remodel-price-content-pane-form > h3 {
    font-weight: bold;
    font-size: .4rem;
    line-height: .55rem;
    letter-spacing: .01rem;
    text-transform: uppercase;
    margin: 0 0 .4rem 0;
}

.section-remodel-price-content-pane-form {
    display: block;
}

.form-rows > li {
    margin: 0 0 .3rem 0;
}

.form-rows > li:last-of-type {
    margin: 0;
}

.form-rows > li > div {
    line-height: .2rem;
}

.form-rows > li label {
    font-weight: 600;
    font-size: .13rem;
    line-height: .2rem;
    opacity: .3;
    user-select: none;
    margin: 0;
}

.form-rows > li > input {
    display: block;
    width: 3.4rem;
    max-width: 100%;
    padding: .15rem 0;
    font-size: .2rem;
    line-height: .22rem;
    letter-spacing: .0067rem;
    border-bottom: 2px solid #F2F2F2;
    transition: border-color .3s ease;
}

.form-rows > li > input.invalid {
    border-color: #E22737;
}

.remodel-price-block {
    text-align: center;
    padding: .6rem 0 0 0;
}

.remodel-price-block > span > span {
    letter-spacing: 0.01rem;
}

.remodel-price-block > span:nth-of-type(1) {
    display: block;
    font-weight: 600;
    font-size: .8rem;
    line-height: .8rem;
    letter-spacing: -.02rem;
    color: #3c6847;
}

.remodel-price-block > span:nth-of-type(2) {
    display: block;
    font-weight: 600;
    font-size: .16rem;
    line-height: .2rem;
    letter-spacing: .004rem;
    margin: .1rem 0 0 0;
}

.section-remodel-price-content-pane-row.last {
    margin: .6rem 0 0 0;
}

.section-remodel-price-content-pane-row.last .section-remodel-price-content-pane-column:nth-of-type(2) {
    justify-content: flex-start;
}

.section-remodel-price-content-pane-bg {
    display: block;
    width: auto;
    height: 7.3rem;
    position: absolute;
    top: -2.5rem;
    left: -4.5rem;
}

.consult-success {
    opacity: 0;
    pointer-events: none;
    width: 50%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #fff;
    padding: 0 1rem .65rem 1rem;
    transition: opacity .6s ease;
}

.consult-success.visible {
    opacity: 1;
    pointer-events: auto;
    z-index: 10;
}

.consult-success-content {
    font-weight: bold;
    font-size: .3rem;
    line-height: .4rem;
    text-transform: uppercase;
}

.consult-success-content > span {
    display: block;
}

.section-style .decorate-leaf span {
    font-weight: 500;
    font-size: .3rem;
    text-transform: capitalize;
}

/* PROMO POPUP */
.promo-modals-container {
    position: absolute;
    bottom: 1rem;
    right: .5rem;
    opacity: 0;
    -webkit-animation: revealIntroOverlaysToRight 2s ease forwards;
    animation: revealIntroOverlaysToRight 2s ease forwards;
    -webkit-animation-delay: .8s;
    animation-delay: .8s;
}
.promo-banner-container {
    position: relative;
}
.promo-banner-container > a {
    display: flex;
    width: 100%;
    height: 1.8rem;
    padding: .2rem .14rem .2rem .3rem;
    flex-direction: column;
    justify-content: center;
    position: relative;
    z-index: 1;
}
.promo-banner-container > a img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    transition: transform 1.5s;
}
.promo-banner-container > a:hover img {
    -webkit-transform: rotate(-1deg) scale(1.05);
    transform: rotate(-1deg) scale(1.05);
}
.promo-banner-container > a p {
    font-size: .16rem;
    line-height: .28rem;
    font-weight: bold;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #FFFFFF;
    position: relative;
    z-index: 3;
}
.close-promo-modal {
    display: flex;
    justify-content: center;
    align-items: center;
    width: .3rem;
    height: .3rem;
    position: absolute;
    top: -.3rem;
    right: 0;
    cursor: pointer;
    z-index: 5;
}
.close-promo-modal i {
    color: #fff;
    line-height: .2rem;
    font-size: .18rem;
}
.promo-popup1 {
    margin-bottom: .3rem;
}
.phone-mask-error{
    display: none;
    font-size: .18rem;
    color: red;
    letter-spacing: 0;
    line-height: .18rem;
    margin-bottom: .22rem;
    font-weight: 300;
    text-align: left;
}
/*3D PAGE*/
.m3d-page {
    padding: 0;
}
.model-loading-wrapper {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #fff;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    flex-direction: column;
    background-image: url(../statics/img/3d_bg.png);
    background-position: bottom;
    -webkit-background-size: contain;
    background-size: 90%;
    background-repeat: no-repeat;
    z-index:11;
}

#model_loading {
  margin: auto;
  width: 4rem;
  height: .08rem;
  position: relative;
}
.section-floor-info-block {
    width: 1.7rem;
    background: #3c6847;
    color: #fff;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .07rem .15rem;
    position: absolute;
    z-index: 10;
    left: 50%;
    flex-wrap: wrap;
}
.sq-info-block {
    width: 1.9rem;
    opacity: 0;
    position: absolute;
}
.section-floor-info-block > span {
    font-size: .14rem;
    color: #FFFFFF;
    font-weight: 500;
}
.section-floor-info-block-separate {
    display: block;
    width: 1px;
    height: .18rem;
    background: rgba(255, 255, 255, 0.4);
}
.m3d-body .camera-btn {
    display: none;
}
.m3d-single-cta-btn {
    display: none !important;
    position: absolute;
    bottom: .2rem;
    left: 1.5rem;
}
.progress-size-bar-container {
    position: absolute;
    top: 37px;
    left: 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    font-size: .18rem;
    line-height: .23rem;
}
.model-loading-description {
    width: 100%;
    text-align: center;
    font-size: .14rem;
    color: rgba(0, 0, 0, 0.3);
    position: absolute;
    top: 60%;
}
.apartment-parameters-table, .levels-table {
    width: 2.3rem;
    position: absolute;
    bottom: .15rem;
    right: .3rem;
    z-index: 10;
}
.levels-table {
    bottom: 2.4rem;
}
.levels-table > .ap-levels-title-row {
    background-color: #ffffff;
}
.levels-table .ap-levels-title-row span {
    color: #3c6847;
}
.levels-table > .ap-levels-title-row.active {
    background-color: #3c6847;
}
.levels-table .active span {
    color: #ffffff;
}
.levels-table > .ap-levels-title-row:hover {
    cursor:pointer;
}
.ap-param-title-row,.ap-levels-title-row {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    justify-content: space-between;
    align-items: center;
    display: flex;
    padding: .07rem .18rem .06rem .22rem;
    background-color: #3c6847;
}
.ap-param-title-row,.ap-levels-title-row span {
    font-size: .14rem;
    color: #FFFFFF;
    text-transform: uppercase;
    font-weight: bold;
}
.ap-param-list {
    padding: .2rem .18rem .2rem .2rem;
    background-color: #fff;
}
.ap-param-list > li {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .05rem 0;
}
.ap-param-list > li:not(:last-child) {
    border-bottom: 1px solid #3E5363;
}
.ap-param-list > li span {
    font-size: .14rem;
    color: #3E5363;
    font-weight: 500;
    line-height: .18rem;
}
.m3d-body .main-footer {
    display: none;
}
.m3d-body {
    width: 100%;
    height: 100%;
    overflow: hidden;
}
 .leaflet-pane.leaflet-marker-pane img {
    transition: opacity .5s;
 }
 .leaflet-pane.leaflet-marker-pane img:first-child {
     opacity: 1;
 }

 .leaflet-marker-icon {
     opacity: 0;
 }

.leaflet-interactive {
    opacity: 1;
    z-index: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

/* Section Terms purchase */

.terms-purchase {
    padding: 0.25rem 0 1rem 1.8rem;
}

.terms-purchase__container {
    padding: .35rem .4rem;
    background-color: #fff;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.terms-purchase__title {
    font-size: .26rem;
    line-height: 130%;
    font-weight: 400;
    margin: 0;
}

.terms-purchase__title span {
    font-size: .36rem;
}

.terms-purchase__subtitle {
    font-size: .18rem;
    color: #3c6847;
    margin: 0;
}

.terms-purchase__description {
    font-size: .16rem;
    line-height: 145%;
    margin: .35rem 0 .6rem;
}

.terms-purchase__bottom {
    margin-top: auto;
    display: flex;
    flex-direction: column;
}

.terms-purchase__discount-text {
    font-size: .18rem;
    line-height: 145%;
    margin-bottom: .24rem;
}

.terms-purchase__btn  {
    width: 100%;
    background-color: #3c6847;
    padding: .22rem 0;
    font-size: .18rem;
    line-height: 100%;
    cursor: pointer;
    color: #FFF;
    transition: transform .6s;
}

.terms-purchase__btn:hover {
    transform: translateY(-0.05rem);
}

/* Binotel */

#bingc-phone-button {
    display: none !important; 
}

