

/* Start:/local/css/elements/v2026/btn.light.css?1784805196244*/
.btn-light{
    --button-background: #ECF7F0;
    --button-color: #386753;

    --buttion-hover-background: #DBEFE1;
    --button-hover-color: #2D5242;

    --button-disabled-background: #E4E6E5;
    --button-disabled-color: #939997;
}
/* End */


/* Start:/local/css/elements/v2026/btn.outline-light.css?1784806251296*/
.btn-outline-light{
    --button-background: transparent;
    --button-color: #ECF7F0;
    --button-border-color: #ECF7F0;

    --button-hover-color: #DBEFE1;
    --button-hover-border-color: #DBEFE1;

    --button-disabled-color: #AEB3B2;
    --button-disabled-border-color: #AEB3B2;
}
/* End */


/* Start:/uslugi/style.css?17853301687942*/
.uslugi h2{
    font-weight: 600;
}
.uslugi-top{
    --gap: 4px;

    display: flex;
    flex-flow: column-reverse;
    gap: var(--gap);

    width: 100%;
}
.uslugi-top > * {
    width: 100%;
}
.uslugi-top__text{
    background-color: #568972;
    color: white;
    padding: 20px 16px;
}
.uslugi-top__image{
    background-image: url(https://www.gwd.ru/upload/medialibrary/061/0617359a1734edd601b32b3c3901a24c.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;

    height: 195px;
}
.uslugi-top__label{
    font-size: 14px;
    line-height: 1.3;
    margin-bottom: 16px;
}
.uslugi-top h1{
    font-size: 24px;
    line-height: 1.2;
    margin-bottom: 16px;
    font-weight: 600;
}
.uslugi-top__description{
    line-height: 1.3;
    font-weight: 500;
    margin-bottom: 35px;
}
.uslugi-top__buttons{
    display: flex;
    flex-flow: column;
    gap: 12px;
}
@media (min-width: 440px) {

}
@media (min-width: 992px) {
    .uslugi-top{
        --gap: 14px;
        flex-flow: row nowrap;

        height: 657px;
        align-items: stretch;
    }
    .uslugi-top__image{
        height: unset;
        background-image: url(https://www.gwd.ru/upload/medialibrary/4f3/4f3ddd929cd277670fa20054f21de14d.jpg);
        width: calc(40% - var(--gap) / 2);

        border-radius: 12px 0 0 12px;
    }
    .uslugi-top__text{
        width: calc(60% - var(--gap) / 2);
        height: unset;

        border-radius: 0 12px 12px 0;
    }
    .uslugi-top__text-boundary {
        margin-left: auto;
        width: 560px;
        height: 100%;

        padding-right: 33px;

        display: flex;
        flex-flow: column;
        justify-content: center;

    }
    .uslugi-top__label{
        font-size: 24px;
        opacity: 0.6;
        font-weight: 600;

        margin-bottom: 42px;
    }
    .uslugi-top h1{
        font-size: 64px;
        margin-bottom: 22px;
    }
    .uslugi-top__description{
        font-size: 18px;
        line-height: 1.3;
        font-weight: 400;
        margin-bottom: 62px;
    }

    .uslugi-top__buttons{
        flex-flow: row;
        gap: 19px;
    }
    .uslugi-top__buttons > *:first-child{
        width: 316px;
    }
}
@media (min-width: 1200px) {
    .uslugi-top__text-boundary {
        margin-left: auto;
        width: 670px;
    }
}
@media (min-width: 1400px) {
    .uslugi-top__text-boundary {
        margin-left: auto;
        width: 780px;
    }
}
@media (min-width: 1780px) {
    .uslugi-top__text,
    .uslugi-top__image{
        width: calc(50% - var(--gap) / 2);
    }
    .uslugi-top__text-boundary {
        margin-left: auto;
        width: calc(1700px / 2 - var(--gap) / 2 - 12px);

        padding-right: 86px;
    }
}


.uslugi-states, .uslugi-way{
    margin-top: 82px;
}
@media (min-width: 992px) {
    .uslugi-states{
        margin-top: 120px;
    }
}

.uslugi-why{
    margin-top: 82px;

    background-color: #2D5242;
    padding-top: 32px;
    padding-bottom: 32px;

    color: white;
}
.uslugi-why__row{
    margin-bottom: -24px;
}
@media (min-width: 992px) {
    .uslugi-why{
        margin-top: 66px;
        margin-bottom: 0;
        padding-top: 52px;
        padding-bottom: 52px;
    }
    .uslugi-why__row{
        margin-bottom: 0;
    }
}
@media (min-width: 1680px) {
    .uslugi-why__row{
        padding-left: 143px;
        padding-right: 143px;
    }
}
.uslugi-why h4{
    color: #BDD9C6;
    text-align: center;
    margin-bottom: 32px;
    font-size: 14px;
    font-weight: 400;
}

.uslugi-why__item{
    border: 2px solid #386753;
    padding: 32px 20px;

    border-radius: 12px;

    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 8px;

    margin-bottom: 24px;
}
.uslugi-why__item-content{
    width: min-content;
}
.uslugi-why__item-value{
    font-size: 64px;
    line-height: 1.2;
    white-space: nowrap;
}

.uslugi-way-container{
    margin-top: 80px;
}
@media (min-width: 992px) {
    .uslugi-why__item{
        justify-content: center;
        padding-left: 0;
        padding-right: 0;
        margin-bottom: 0;
    }
}


.uslugi-built{
    margin-top: 80px;
    margin-bottom: -32px;
}
.uslugi-built h2{
    margin-bottom: 32px;
}
.uslugi-built__item{
    position: relative;
    display: block;
    text-decoration: none;
    color: black;
    margin-bottom: 32px;
}
.uslugi-built__item-image{
    display: block;
}
.uslugi-built__item-image img{
    width: 100%;
    height: 380px;

    border-radius: 12px;
    
    object-fit: cover;
    object-position: center;
}
.uslugi-built__item-lines{
    display: flex;
    flex-flow: column;

    margin-top: 16px;
}
.uslugi-built__item-title{
    font-size: 24px;
    font-weight: 600;
}
.uslugi-built__item-descrition{
    opacity: 0.7;
    line-height: 1.3;
    margin-top: 8px;
    margin-bottom: 0;
}
.uslugi-built__item-pseudolink{
    margin-top: 22px;
    font-size: 18px;
    white-space: nowrap;

    color: #386753;

    font-weight: 500;
    display: block;

    text-decoration: none;
}
.uslugi-built__item-pseudolink svg{
    width: 24px;
    height: 24px;
    vertical-align: bottom;

}
@media (max-width: 991px) {
    .uslugi-built__item-pseudobutton{
        display: none;
    }
}

@media (min-width: 992px) {
    .uslugi-built__item-image img{
        height: 546px;
    }
    .uslugi-built__item-lines{
        flex-flow: row wrap;
        align-items: center;
        gap: 8px;

        margin-top: 22px;
    }
    .uslugi-built__item-title{
        order: 1;
        flex: 1 1 60%;
    }
    .uslugi-built__item-descrition{
        order: 3;
    }
    .uslugi-built__item-pseudolink{
        order: 2;
        flex: 0 1 35%;

        text-align: right;

        margin-top: 0;
        padding-right: 10px;

        text-decoration: none;
    }

    .uslugi-built__item-pseudobutton{
        position: absolute;
        top: 22px;
        right: 52px;

        width: 48px;
        height: 48px;

        display: flex;
        justify-content: center;
        align-items: center;

        background-color: #fff;
        border-radius: 999px;

    }
    .uslugi-built__item-pseudobutton svg{
        width: 32px;
        height: 32px;

        color: #00513A;
    }
}
@media (hover: hover) {
    .uslugi-built__item-image{
        opacity: 1;
        transition: opacity 0.2s;
    }
    .uslugi-built__item:hover .uslugi-built__item-image{
        opacity: 0.8;
    }
}

.uslugi-articles{
    margin-top: 80px;
    margin-bottom: 80px;
}
.uslugi-articles__h2{
    margin-bottom: 22px;
}

.uslugi-articles__link{
    text-align: right;
    margin-top: 6px;
}
.uslugi-articles__link a{
    font-size: 18px;
    text-decoration: none;
    color: #386753;
    font-weight: 600;

    display: flex;
    align-items: center;
    width: fit-content;

    margin-left: auto;
}
.uslugi-articles__link svg{
    width: 24px;
    height: 24px;

    color: #386753;
    opacity: 0.5;

    margin-left: 12px;
}
.uslugi-articles .article-card-small{
    margin-bottom: 16px;
}



@media (max-width: 991px) {
    .uslugi-articles .row > *{
        order: 2;
    }
    .uslugi-articles__h2{
        order: 1!important;
    }
    .uslugi-articles__link{
        order: 3!important;
    }
}

@media (min-width: 992px) {
    .uslugi-articles__h2{
        margin-bottom: 32px;
    }
    .uslugi-articles__link{
        margin-top: 0;
    }
    .uslugi-articles__link a{
        font-size: 32px;
        margin-bottom: 32px;
    }
    .sulugi-articles .article-card-small{
        margin-bottom: 0;
    }
}
/* End */


/* Start:/local/components/vue/uslugi/uslugi-state-tab/style.css?17841983692224*/
.uslugi-state-tab {
    --bg-image: '';
    --height: 282px;
    --padding: 22px;

    background-image: var(--bg-image);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    border-radius: 12px;
    overflow: hidden;

    height: var(--height);
    position: relative;

    color: white;

    display: flex;
    flex-flow: column;
    justify-content: flex-end;

    transition: flex-basis 0.2s;

    text-decoration: none;

    padding: var(--padding);
}
.uslugi-state-tab::before{
    content: '';

    display: block;
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.40) 0%, rgba(0, 0, 0, 0.40) 100%);
    opacity: 1;
    transition: opacity 0.2s;
}
.uslugi-state-tab.--active::before {
    opacity: 0;
}
.uslugi-state-tab__title {
    font-size: 24px;
    line-height: 1.2;
    font-weight: 600;
    position: relative;
}
.uslugi-state-tab__description{
    position: relative;
    font-size: 18px;
    line-height: 1.2;
    margin-top: 12px;
    margin-bottom: 0;
}
.uslugi-state-tab__icon{
    --size: 48px;

    position: absolute;
    top: 22px;
    right: 22px;

    width: 48px;
    height: 48px;

    background: white;
    border-radius: 999px;

    transform: translateY(0);

    transition: transform 0.2s;
}
.uslugi-state-tab.--active .uslugi-state-tab__icon{
    transform: translateY(calc(var(--height) - var(--size) - var(--padding) * 2));
}
.uslugi-state-tab__icon svg{
    width: 32px;
    height: 32px;

    transition: opacity 0.2s;

    position: absolute;
    top: 8px;
    left: 8px;

    opacity: 1;

    color: #00513A;
    fill: #00513A;
}
.uslugi-state-tab__icon svg.--active{
    transform: rotate(90deg);
    opacity: 0;
}
.uslugi-state-tab.--active .uslugi-state-tab__icon svg.--default{
    opacity: 0;
}
.uslugi-state-tab.--active .uslugi-state-tab__icon svg.--active{
    opacity: 1;
}

@media (min-width: 992px) {
    .uslugi-state-tab {
        flex: 1 1 20%;
    }
    .uslugi-state-tab.--active{
        flex: 1 1 33%;
    }
}

/* End */


/* Start:/local/components/vue/uslugi/uslugi-state-content/style.css?17854092603903*/
.uslugi-state-content{
    background-color: #EFF7F1;

    display: flex;
    flex-flow: column;

    gap: 16px;

    padding: 16px;

    border-radius: 12px;
}
.uslugi-state-content__text{
    display: flex;
    flex-flow: column;

    flex-shrink: 0;
    flex-grow: 0;

    margin-bottom: 26px;
}
.uslugi-state-content__title{
    font-size: 18px;
    margin-bottom: 16px;
}
.uslugi-state-content__description{
    margin-bottom: 0;
}
.uslugi-state-content__button{
    margin-top: 42px;
    width: 100%;
}
.uslugi-state-content__card{
    background-color: white;
    align-self: stretch;

    height: 264px;

    padding: 72px 16px 22px;

    box-shadow: 0 4px 15px 0 rgba(107, 142, 116, 0.15);
    position: relative;

    border-radius: 12px;

    flex-shrink: 0;
    flex-grow: 0;

    display: flex;
    flex-flow: column;
}
.uslugi-state-content__card-label{
    position: absolute;
    top: 22px;
    left: 16px;

    max-width: 50%;

    font-size: 12px;
    line-height: normal;

    opacity: 0.4;
    color: #161919;

    text-transform: uppercase;
}
.uslugi-state-content__card-badge{
    position: absolute;
    top: 22px;
    right: 16px;

    font-size: 12px;
    line-height: 1.3;
    font-weight: 500;

    padding: 6px 12px;

    border-radius: 999px;
}
.uslugi-state-content__card-badge.--free{
    background-color: #B9EAFF;
    color: #0741AE;
}
.uslugi-state-content__card-badge.--paid{
    background-color: #E7FFF1;
    color: #00513A;
}
.uslugi-state-content__card-badge.--client{
    background-color: #D2D8FB;
    color: #2A2D8E;
}
.uslugi-state-content__card-icon{
    width: 42px;
    height: 42px;

    display: flex;
    justify-content: center;
    align-items: center;

    background-color: #DBEFE1;
    border-radius: 999px;
}
.uslugi-state-content__card-icon svg{
    width: 20px;
    height: 20px;
}
.uslugi-state-content__card-title{
    font-size: 18px;
    line-height: 1.2;

    margin-top: 12px;
}
.uslugi-state-content__card-link{
    font-size: 18px;
    line-height: 1.2;
    display: inline-block;
    text-decoration: none;
}
.uslugi-state-content__card-link svg{
    width: 1em;
    height: 1em;
}

@media (min-width: 992px) {
    .uslugi-state-content{
        flex-flow: row nowrap;

        gap: 24px;

        padding: 63px 42px;
    }
    .uslugi-state-content__text{
        justify-content: center;
        align-items: flex-start;

        margin-right: auto;

        font-size: 18px;
        line-height: 1.3;

        margin-bottom: 0;

        flex-shrink: 1;
        flex-grow: 1;
        flex-basis: 30%;
    }
    .uslugi-state-content__title{
        font-size: 32px;
        margin-bottom: 22px;

        font-weight: 600;
    }
    .uslugi-state-content__button{
        margin-top: 62px;
        width: 320px;
    }
    .uslugi-state-content__card{
        height: unset;
        /*width: 243px;*/

        padding: 126px 16px 22px;

        flex-shrink: 1.2;
        flex-grow: 0;
        flex-basis: 25%;
    }

    .uslugi-state-content__card-label {
        font-size: 12px;
    }
    .uslugi-state-content__card-icon {
        width: 80px;
        height: 80px;
        margin-bottom: 31px;
    }
    .uslugi-state-content__card-icon svg{
        width: 32px;
        height: 32px;
    }
    .uslugi-state-content__card-title {
        margin-top: auto;
        margin-bottom: 16px;
    }
    .uslugi-state-content__card-link{
        display: block;
    }
}

@media (min-width: 1400px) {
    .uslugi-state-content__text{
        flex-shrink: 0;
        flex-grow: 1.2;
        flex-basis: 40%;
    }
    .uslugi-state-content__button{
        width: 408px;
    }
    .uslugi-state-content__card{
        flex-basis: 20%;
    }
}
/* End */


/* Start:/local/components/vue/uslugi/uslugi-states/style.css?1784898561664*/
.uslugi-states__tabs{
    display: flex;
    flex-flow: row nowrap;
    gap: 20px;
}

.uslugi-states__description{
    margin-top: 22px;
    margin-bottom: 22px;
    opacity: 0.7;
    line-height: 1.3;
}
@media (max-width: 991px) {
    .uslugi-state-tab{
        margin-bottom: 8px;
    }
    .uslugi-state__collapse{
        display: block;
        padding-bottom: 60px;
    }
    .uslugi-state__content:last-child{
        margin-bottom: 0;
    }
}
@media (min-width: 992px) {
    .uslugi-state-content{
        margin-top: 24px;
    }
    .uslugi-states__description{
        font-size: 18px;
        margin-bottom: 32px;
    }
}
/* End */


/* Start:/local/components/vue/uslugi/uslugi-way-content/style.css?17853207834586*/
.uslugi-way-content{
    background-color: #EFF7F1;
    border-radius: 12px;

    display: flex;
    flex-flow: column-reverse;

    padding: 32px 16px 42px;
}
.uslugi-way-content__text{
    flex-shrink: 0;
}
.uslugi-way-content__title{
    font-size: 24px;
    margin-bottom: 22px;
    margin-top: 42px;
    font-weight: 600;
}
.uslugi-way-content__description{
    line-height: 1.3;
    opacity: 0.7;
}
.uslugi-way-content__list{
    list-style: none;
    padding-left: 36px;
    margin-top: 32px;
}
.uslugi-way-content__list > li{
    position: relative;

    font-size: 18px;
    font-weight: 500;
    line-height: normal;
}
.uslugi-way-content__list > li + li{
    margin-top: 16px;
}
.uslugi-way-content__list > li::before{
    content: '';
    display: block;
    background-image: url(/local/icons/green-check.svg);
    width: 24px;
    height: 24px;

    position: absolute;
    top: 0;
    left: -36px;
}
.uslugi-way-content__button{
    width: 100%;
    margin-top: 42px;
}
.uslugi-way-content__cards{
    display: flex;
    flex-flow: row;
    align-items: stretch;
    gap: 25px;

    width: fit-content;
}
@media (max-width: 767px) {
    .uslugi-way-content__cards-wrapper {
        margin-left: -16px;
        margin-right: -16px;

        overflow-x: scroll;
        overflow-y: hidden;
    }
    .uslugi-way-content__cards {
        padding-left: 16px;
        padding-right: 16px;
    }
}
.uslugi-way-content__card{
    width: 70vw;
    height: 415px;
    flex-shrink: 0;
    flex-grow: 0;

    border-radius: 12px;
    padding: 22px 16px;
    
    background-color: white;

    display: flex;
    flex-flow: column;

    position: relative;

    overflow: clip;
}
.uslugi-way-content__card.--image{
    object-fit: cover;
    object-position: center;

    /*display: block;*/
}
.uslugi-way-content__card-title{
    font-size: 18px;
    font-weight: 600;
}
.uslugi-way-content__card-description{
    font-size: 14px;
    font-weight: 400;
    margin-top: 14px;
}
.uslugi-way-content__card-image{
    width: calc(100% + 16px * 2);
    margin: -22px -16px 28px;

    object-fit: cover;
    object-position: center;
}
.uslugi-way-content__card-link{
    text-decoration: none;
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    margin-top: 16px;
}
.uslugi-way-content__card-link svg{
    width: 24px;
    height: 24px;
}
.uslugi-way-content__label{
    position: absolute;
    top: 22px;
    left: 22px;

    font-size: 14px;
    text-transform: uppercase;
    font-weight: 400;
    color: white;
}

.uslugi-way-content__badge{
    position: absolute;
    top: 22px;
    right: 22px;

    line-height: 16px;
    padding: 6px 12px;
    border-radius: 999px;

}
.uslugi-way-content__badge.--free{
    background-color: #B9EAFF;
    color: #0741AE;
}
.uslugi-way-content__badge.--paid{
    background-color: #E7FFF1;
    color: #00513A;
}
.uslugi-way-content__badge.--client{
    background-color: #D2D8FB;
    color: #2A2D8E;
}
@media (max-width: 991px) {
    .uslugi-way-content__card-image{
        flex-grow: 1;
    }
}
@media (min-width: 992px) {
    .uslugi-way-content{
        display: flex;
        flex-flow: row nowrap;
        gap: 62px;
        justify-content: space-between;

        padding: 32px 32px 69px;
    }

    .uslugi-way-content__text{
        display: flex;
        flex-flow: column;
    }
    .uslugi-way-content__cards-wrapper{
        overflow: hidden;
    }

    .uslugi-way-content__cards{
        width: unset;
        height: 100%;
        gap: 20px;
    }
    .uslugi-way-content__card{
        height: unset;
        width: unset;
        flex-shrink: 1;
        flex-grow: 1;
        flex-basis: 50%;

        padding: 22px;
    }

    .uslugi-way-content__title{
        margin-top: 0;
    }

    .uslugi-way-content__card-image{
        flex-shrink: 1;
        flex-grow: 1;
        width: calc(100% + 22px * 2);

        margin: -22px -22px 12px;
    }

    .uslugi-way-content__button{
        /*margin-top: auto;*/
        width: 385px;
    }
}
@media (min-width: 1780px) {
    .uslugi-way-content__card{
        --xxxl-flex-basis: none;
        height: 457px;
        flex-basis: var(--xxxl-flex-basis);
    }
}

.uslugi-way-content__card.--image{
    padding: 0;
}
.uslugi-way-content__card.--image .uslugi-way-content__card-image{
    width: 100%;
    height: 100%;
    margin: 0;
}
/* End */


/* Start:/local/components/vue/uslugi/uslugi-way/style.css?1785409443955*/
.uslugi-way__nav-wrapper{
    margin-top: 22px;
    margin-bottom: 16px;
}
.uslugi-way__nav-pill{
    display: flex;
    align-items: center;
    gap: 8px;

    font-size: 16px;
}
.uslugi-way__nav-pill svg{
    width: 24px;
    height: 24px;
}
@media (max-width: 991px) {
    .uslugi-way .nav-pills{
        flex-wrap: nowrap;
    }
    .uslugi-way__nav-wrapper{
        overflow-x: scroll;
        overflow-y: hidden;

        margin-left: -12px;
        margin-right: -12px;

        padding-left: 12px;
        padding-right: 12px;
    }

    .uslugi-way-content{
        margin-left: -12px;
        margin-right: -12px;
    }
}
@media (min-width: 992px) {
    .uslugi-way__nav-wrapper{
        margin-top: 32px;
        margin-bottom: 22px;
    }
}
@media (min-width: 992px) and (max-width: 1400px) {
    .uslugi-way__nav-wrapper .nav-link{
        padding-left: 24px;
        padding-right: 24px;
    }
}
/* End */


/* Start:/local/components/vue/misc/bottom-popup-panel/style.css?17809033723146*/
.bottom-popup{
    position: fixed;

    width: 100vw;

    bottom: 0;
    left: 0;
    z-index: 1000000;

    display: flex;
    flex-flow: column;

    padding: 16px;
    gap: 8px;

    transform: translateY(100%);

    border-radius: 24px 24px 0 0;

    background: white;
}
@media (min-width: 768px) {
    .bottom-popup{
        padding: 24px;
        gap: 12px;
    }
}
@media (min-width: 992px) {
    .bottom-popup{
        padding: 40px;
        gap: 20px;
    }
}
@media (hover: none) {
    .bottom-popup{
        padding-top: 30px;
    }
    .bottom-popup__handle{
        width: 10rem;
        height: 3rem;

        position: absolute;
        padding-top: 0.8rem;
        top: 0;
        display: flex;
        justify-content: center;
        left: calc(50% - 5rem);
    }
    .bottom-popup__handle::before{
        content: '';
        display: block;

        width: 7.7rem;
        height: 4px;
        border-radius: 999px;

        background-color: var(--black-a25);
    }
}
@media (hover: hover) {
    .bottom-popup__handle{
        display: none;
    }
}
@media (min-width: 992px) {
    .bottom-popup{
        width: fit-content;
        left: calc(50% - 450px);
        bottom: unset;

        border-radius: 24px;
    }
}
.bottom-popup.--transition{
    transition: transform 0.15s;
}
.bottom-popup__header{
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;

    position: relative;

    flex-shrink: 0;
}
.bottom-popup__name{
    font-weight: 500;
    font-size: 1.8rem;
    margin-bottom: 0;
}

.bottom-popup__scroller{
    /*background: white;*/
    overflow-y: auto;
    overflow-x: hidden;

    flex-shrink: 1;
    flex-grow: 1;

}
.bottom-popup__scroller.no-scroll{
    overflow-y: hidden;
}

.bottom-popup__footer{
    display: flex;
    flex-flow: column;
    gap: 1.2rem;
}
@media (min-width: 768px) {
    .bottom-popup__footer{
        flex-flow: row;
    }
}
@media (max-width: 767px) {
    .bottom-popup__footer .btn {
        width: 100%;
    }
}
.bottom-popup__close{
    border: none;
    background: none;
    padding: 0;
    width: 3.2rem;
    height: 3.2rem;

    position: absolute;
    right: 0;
    top: -50px;

    fill: white;
}
.bottom-popup__close > * {
    width: 2rem;
    height: 2rem;
}
.bottom-popup__background{
    display: none;

    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;

    background: rgba(0, 0, 0, 0.50);
    backdrop-filter: blur(4px);

    opacity: 0;

    transition: opacity 0.15s;
    z-index: 100000;
}

body.--stages-gallery .bottom-popup.--stage-gallery-popup{
    z-index: 100000;
}

body.--stages-gallery .bottom-popup__background.--stage-gallery-popup-bg{
    z-index: 99999;
    backdrop-filter: blur(4px);
}

.fancybox-container,
.fancybox__container{
    z-index: 2147483647 !important;
}

body.--filters-open{
    overflow: hidden;
}

body.--filters-open .mob_contact{
    display: none!important;
}
/* End */


/* Start:/local/components/vue/form/validated-input/style.css?17788432961073*/
.validated-input{
    position: relative;
    display: block;

    --error-color: #B62326;
}
.form-group > label.validated-input,
.form-row > [class*=col-] > label.validated-input{
    margin-bottom: 0;
}
/*.validated-input .err-required{*/
    /*position: absolute;*/
    /*top: 0;*/
    /*left: 0;*/
    /*border-radius: var(--bs-input-border-radius);*/
    /*border: 1px solid var(--error-color);*/
    /*color: var(--error-color);*/
    /*display: flex;*/
    /*width: 100%;*/
    /*height: 100%;*/
    /*align-items: center;*/
    /*background: white;*/
    /*padding-left: 20px;*/
    /*font-size: 12px;*/
    /*margin-top: 5px;*/

    /*cursor: pointer;*/
/*}*/
/*.validated-input .err-invalid{*/
/*    color: var(--error-color);*/
/*    margin-top: 5px;*/
/*    font-size: 12px;*/
/*}*/

.validated-input__err{
    color: var(--error-color);
    margin-top: 4px;
    font-size: 12px;
}
.validated-input__err svg{
    color: var(--error-color);
    width: 17px;
    height: 17px;

    vertical-align: text-bottom;
}



/* End */


/* Start:/local/components/vue/form/checkboxes/checkbox/style.css?17316692021250*/
.checkbox-component{
    --box-size: 2.6rem;

    position: relative;
    display: flex;
    align-items: center;

    padding-left: calc(var(--box-size) + 10px);
    min-height: var(--box-size);

    line-height: normal;
    cursor: pointer;
}
.checkbox-component > input{
    display: none;
}
.checkbox__box{
    width: var(--box-size);
    height: var(--box-size);
    border-radius: 0.5rem;

    display: block;

    position: absolute;
    top: 0;
    left: 0;

    box-shadow: 0 0 0 0.5rem #ffffff;
    border: 0.2rem solid #eeeeee;
    background: #eeeeee;
    color: #333;

    transition: background-color 0.2s, border 0.2s;
}
.checkbox__box::before{
    display: inline-block;
    transform-origin: center center;
    transform: scale(0);
    font-size: 2.3rem;

    transition: transform 0.2s;
}
.checkbox-component > input:checked ~ .checkbox__box::before{
    transform: scale(1);
}
.checkbox-component > input:checked ~ .checkbox__box,
.checkbox-component:hover > input:not(:disabled) ~ .checkbox__box {
    /*border-color: var(--color-green-toxic, #99cc33);*/
}
.checkbox-component.--disabled > .checkbox__box{
    opacity: 0.5;
}
.checkbox-component.--disabled{
    color: #aaa;
}
/* End */


/* Start:/local/components/vue/form/checkboxes/checkbox-approve/style.css?17863645742194*/
.checkbox-approve{
    --box-size: 2rem;

    --link-color: #aaa;

    --box-border-color: #aaa;
    --box-bg: white;
    --check-color: var(--box-bg);

    --link-hover-color: #2B6D3C;
    --box-hover-bg: #2B6D3C;

    --box-checked-border-color: #2B6D3C;
    --box-checked-bg: #2B6D3C;


    font-size: 1.4rem;
    color: var(--color-text-default, #333);
    padding-top: 0;
    padding-left: 2.5rem;


}
.checkbox-approve__wrapper{
    position: relative;

}
.checkbox-approve .checkbox__box{
    border-width: 0.1rem;
    /*color: white;*/
    background-color: var(--box-bg);
    border-color: var(--box-border-color);
    box-shadow: none;
}
.checkbox-approve .checkbox__box svg{
    fill: var(--check-color);
    margin-left: 2px;
    z-index: 1000;
    opacity:0;
    transition: opacity 0.15s;
    width: 14px;
    height: 14px;

    position: relative;
    top: -1px;
}
.checkbox-approve > input:checked ~ .checkbox__box{
    background-color: var(--box-checked-bg) ;
}
.checkbox-approve .checkbox__box,
.checkbox-approve > input:checked ~ .checkbox__box{
    /*border-color: var(--color-text-default, #333);*/
}
.checkbox-approve > input:checked ~ .checkbox__box svg{
    opacity: 1;
}
.checkbox-approve .checkbox__box::before{
    font-size: 1.8rem;
}

.checkbox-approve > input:checked ~ .checkbox__box:hover,
.checkbox-approve .checkbox__box:hover {
    /*border-color: var(--color-green-yellowish, #a2c037);*/
    /*color: var(--color-green-yellowish, #a2c037);*/
    background-color: var(--box-hover-bg);
}

.checkbox-approve__link{
    display: inline-block;

    color: var(--link-color);
    text-decoration: none;

    border-bottom: 1px dashed var(--link-color);

    margin-left: 0.5rem;

    transition: color 0.15s, border-color 0.15s;
}
.checkbox-approve__link:hover {
    color: var(--link-hover-color);
    border-color: var(--link-hover-color);
}
.checkbox-approve.--required .checkbox__box{
    border-color: var(--color-red-error, red);
}
.checkbox-approve__required {
    position: absolute;
    top: var(--box-size);
    left: 0;
    color: var(--color-red-error, red)
}
/* End */


/* Start:/local/css/elements/v2026/btn.dark.css?1784805188243*/
.btn-dark{
    --button-background: #386753;
    --button-color: #ECF7F0;

    --buttion-hover-background: #2D5242;
    --button-hover-color: #DBEFE1;

    --button-disabled-background: #E4E6E5;
    --button-disabled-color: #939997;
}
/* End */


/* Start:/local/components/vue/modals/wide-illustrated-form-modal/style.css?17853296813044*/


.wide-illustrated-form-modal .bottom-popup{

}
.wide-illustrated-form-modal__form{
    position: relative;
}
.wide-illustrated-form-modal__image{
    position: relative;
    margin-bottom: 24px;
}
.wide-illustrated-form-modal__image::before{
    content: '';
    display: block;

    padding-top: 65%;
    position: relative;
}
.wide-illustrated-form-modal__image img{
    height: 100%;
    width: 100%;

    position: absolute;
    top: 0;
    left: 0;

    object-fit: cover;
    object-position: center;

    border-radius: 12px;
}
.wide-illustrated-form-modal .checkbox-approve{
    --box-border-color: #7A807E;
    --box-bg: white;
}
.wide-illustrated-form-modal__header{
    font-size: 24px;
    margin-bottom: 12px;
}
.wide-illustrated-form-modal__description{
    margin-bottom: 24px;
}
.wide-illustrated-form-modal__button{
    width: 100%;
}
@media (min-width: 992px) {
    .wide-illustrated-form-modal .bottom-popup{
        width: 960px;
        left: calc(50% - 480px);

        padding: 24px;
    }

    .wide-illustrated-form-modal__inner{
        display: flex;
        flex-flow: row nowrap;
        width: 100%;
        gap: 43px;
    }
    .wide-illustrated-form-modal__image{
        flex: 1 1 auto;
        margin-bottom: 0;
    }
    .wide-illustrated-form-modal__image img{
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    .wide-illustrated-form-modal__form{
        flex: 1 0 60%;
        width: 55%;

        display: flex;
        flex-flow: column;
        justify-content: center;
    }
    .wide-illustrated-form-modal__header{
        font-size: 40px;
    }
    .wide-illustrated-form-modal__button{
        width: auto;
    }
}

@media (min-width: 1200px) {
    .wide-illustrated-form-modal .bottom-popup{
        width: 1140px;
        left: calc(50% - 570px);
    }
    .wide-illustrated-form-modal .btn{
        width: 235px;
    }
}

@media (min-width: 1400px) {
    .wide-illustrated-form-modal .bottom-popup{
        width: 1300px;
        left: calc(50% - 650px);
    }
}

@media (min-width: 1780px) {
    .wide-illustrated-form-modal .bottom-popup{
        width: 1500px;
        left: calc(50% - 750px);
    }

    .wide-illustrated-form-modal__form{
        width: 55%;
        flex-basis: 55%;
    }
}

.wide-illustrated-form-modal__success{
    position: absolute;

    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    display: flex;
    flex-flow: column;

    background-color: white;

    background-image: url('/local/components/vue/modals/wide-illustrated-form-modal/success-bg-mob.svg');
    background-size: contain;
    background-position: bottom center;
    background-repeat: no-repeat;
}
@media (min-width: 992px) {
    .wide-illustrated-form-modal__success{
        background-image: url('/local/components/vue/modals/wide-illustrated-form-modal/success-bg.svg');
    }
}
/* End */


/* Start:/local/components/vue/articles/article-card-small/style.css?1785316094965*/
.article-card-small{
    background-color: #EFF7F1;

    border-radius: 12px;
    height: 180px;
    width: 100%;

    padding: 6px 6px 6px 161px;

    display: flex;
    flex-flow: column;
    justify-content: center;

    position: relative;

    text-decoration: none;
    color: black;
}
.article-card-small__image{
    height: calc(100% - 12px);
    width: 143px;

    border-radius: 8px;

    position: absolute;
    top: 6px;
    left: 6px;

    object-fit: cover;
    object-position: center;
}
.article-card-small__title{
    font-size: 18px;
    font-weight: 600;
    line-height: 1.2;
}
.article-card-small__read-time{
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;

    opacity: 0.8;

    margin-top: 8px;
}
@media (min-width: 992px) {
    .article-card-small{
        height: 172px;
        padding-left: 191px;
    }
    .article-card-small__image{
        width: 160px;
    }
}

/* End */


/* Start:/local/include-areas/main/technology/style.css?17821236723903*/
.main-tech{
    margin-top: 64px;
    margin-bottom: 64px;

    position: relative;
}
@media(min-width: 992px) {
    .main-tech{
        margin-top: 88px;
        margin-bottom: 88px;

        height: 527px;
    }
}
@media (min-width: 1760px) {
    .main-tech{
        height: 532px;
    }
}
.main-tech__header{
    font-size: 32px;
    line-height: 1.2;
    font-weight: 600;
    margin-bottom: 0;
}
@media(min-width: 992px) {
    .main-tech__header{
        font-size: 40px;
    }
}
@media(min-width: 1760px) {
    .main-tech__header{
        font-size: 44px;
    }
}

.main-tech .nav-pills{
    background: #f1f1f1;
    flex-wrap: nowrap;
    margin-top: 20px;
}
@media (max-width: 991px) {
    .main-tech__nav-wrapper{
        overflow-x: scroll;
        margin-left: -12px;
        margin-right: -12px;
        padding-bottom: 4px;
    }
    .main-tech .nav-pills{
        margin-left: 12px;
        margin-right: 12px;
    }
}
.main-tech .nav-pills > .nav-item > .nav-link{
    color: rgba(0, 0, 0, 0.5);
    line-height: normal;
    font-size: 16px;
    font-weight: 600;
    white-space: nowrap;
}
.main-tech .nav-pills > .nav-item > .nav-link:hover{
    background: rgba(255, 255, 255, 0.7);
}
.main-tech .nav-pills > .nav-item > .nav-link.active{
    background: white;
    color: black;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.10);
}

.main-tech__title{
    margin-top: 17px;
    font-size: 24px;
    font-weight: 600;
}
.main-tech__description{
    margin-top: 8px;
    font-size: 16px;
}
@media (min-width: 992px) {
    .main-tech__title{
        margin-top: 40px;
        font-size: 32px;
    }
    .main-tech__description{
        width: 480px;
    }
}
.main-tech__closeups{
    display: flex;
    flex-flow: row nowrap;
    gap: 20px;

    margin-top: 32px;
}
.main-tech__closeup{
    flex: 0 0 calc(50% - 10px);
}
.main-tech__closeup-image-wrapper{
    width: 100%;
    position: relative;
}
.main-tech__closeup-image-wrapper::before{
    display: block;
    content: '';
    padding-top: 55%;
}
.main-tech__closeup-image{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;

    width: 100%;
    height: 100%;

    border-radius: 8px;
    overflow: hidden;

    object-fit: cover;
    object-position: center;
}
@media (min-width: 992px) {
    .main-tech__closeup{
        flex: unset;
        width: 211px;
    }
}

.main-tech__closeup-hint{
    font-size: 14px;
    opacity: 0.8;
    margin-top: 8px;
}

.main-tech__visual{
    width: 100%;
    margin-top: -10px;
}
@media(min-width: 992px) {
    .main-tech__visual{
        position: absolute;
        top: 0;
        right: 0;
        height: 100%;
        width: unset;
        margin-top: 0;

        z-index: -1;
    }
}

.main-tech__bottom{
    margin-top: 32px;
}
@media (min-width: 992px) {
    .main-tech__bottom{
        display: flex;
        flex-flow: row;
        justify-content: flex-start;
        align-items: center;
        gap: 20px;
        margin-top: 48px;
    }
}

.main-tech__projects-link{
    --button-background: #386753;
    --button-color: white;

    --button-hover-background: rgba(56, 103, 83, 0.8);
    --button-hover-color: white;

    font-size: 18px;
}
@media (max-width: 991px) {
    .main-tech__projects-link{
        width: 100%;
        margin-bottom: 20px;
    }
}

.main-tech__preview{
    width: 40px;
    height: 40px;

    border-radius: 999px;
    border: 2px solid white;
}
@media(max-width: 991px) {
    .main-tech__previews{
        margin: 0 auto;
        width: fit-content;
    }
}
.main-tech__preview + .main-tech__preview{
    margin-left: -20px;
}
.main-tech__projects-count{
    opacity: 0.6;
    letter-spacing: 0.5px;
    margin-left: 4px;
}

/* End */
/* /local/css/elements/v2026/btn.light.css?1784805196244 */
/* /local/css/elements/v2026/btn.outline-light.css?1784806251296 */
/* /uslugi/style.css?17853301687942 */
/* /local/components/vue/uslugi/uslugi-state-tab/style.css?17841983692224 */
/* /local/components/vue/uslugi/uslugi-state-content/style.css?17854092603903 */
/* /local/components/vue/uslugi/uslugi-states/style.css?1784898561664 */
/* /local/components/vue/uslugi/uslugi-way-content/style.css?17853207834586 */
/* /local/components/vue/uslugi/uslugi-way/style.css?1785409443955 */
/* /local/components/vue/misc/bottom-popup-panel/style.css?17809033723146 */
/* /local/components/vue/form/validated-input/style.css?17788432961073 */
/* /local/components/vue/form/checkboxes/checkbox/style.css?17316692021250 */
/* /local/components/vue/form/checkboxes/checkbox-approve/style.css?17863645742194 */
/* /local/css/elements/v2026/btn.dark.css?1784805188243 */
/* /local/components/vue/modals/wide-illustrated-form-modal/style.css?17853296813044 */
/* /local/components/vue/articles/article-card-small/style.css?1785316094965 */
/* /local/include-areas/main/technology/style.css?17821236723903 */
