

/* Start:/local/templates/main/css/style.css?178574357743308*/
:root {
    /*Fill*/
    --fill-primary: #E34D2A;
    --fill-primary-dark: #B63E22;
    --fill-secondary: #2C2E30;
    --fill-secondary-dark: #606163;
    --fill-white: #FFFFFF;
    --fill-black: #151719;


    /*Background*/
    --background-bg: #FFFFFF;
    --background-surface: #151719;


    /*Stroke*/
    --stroke-border-default: #2C2E30;
    --stroke-border-hover: #606163;
    --stroke-border-error: #E33B2A;
    --stroke-line: #2C2E30;


    /*Text*/
    --text-line: #FFFFFF;
    --dark-text-secondary: #FFFFFF99;
    --dark-text-dissable: #FFFFFF4C;


    /*Icons*/
    --dark-icon-primary: #FFFFFF;
    --dark-icon-secondary: #FFFFFF99;
    --dark-icon-dissable: #FFFFFF4C;


    /*System*/
    --system-danger: #E33B2A;
    --system-success: #59C36A;
    --system-warning: #F5B64C;
}
@font-face {
    font-family: 'Manrope';
    src: url('/local/templates/main/css/fonts/manrope.ttf') format('truetype-variations');
    font-weight: 200 800;
    font-stretch: 75% 125%;
    font-style: normal;
}
body{
    font-family: "Manrope";

    margin: 0;
    min-height: 100vh;
    max-width: 100vw;
    width: 100%;
    background: var(--background-surface);
    color: var(--text-line);

    font-size: 18px;
    font-weight: 400;
    line-height: 146%;
    letter-spacing: -1%;
}
section{
    margin: 200px 48px;
    max-width: 1600px;
    margin: 200px auto;
}
h1{
    font-size: 76px;
    font-weight: 550;
    line-height: 111%;
    letter-spacing: -2.5%;
}
h2{
    font-size: 55px;
    font-weight: 550;
    line-height: 106%;
    letter-spacing: -2%;
}
h3{
    font-size: 23px;
    font-weight: 500;
    line-height: 126%;
    letter-spacing: -1%;
}
h1.center,h2.center,h3.center{
    text-align: center;
}
.small{
    font-size: 16px;
    font-weight: 400;
    line-height: 133%;
    letter-spacing: 0;
}
.caption{
    font-size: 14px;
    font-weight: 400;
    line-height: 139%;
    letter-spacing: 0;
}
a{
    font-width: 500;
    font-size: 14px;
    line-height: 139%;
    letter-spacing: 0%;
    color: #FFFFFFB8;
    text-decoration: none;
}
a:hover{
    color: #FFFFFF;
    text-decoration: underline;
}
@media screen and (max-width: 700px){
    body{
        font-size: 18px;
        font-weight: 400;
        line-height: 140%;
        letter-spacing: -2%;
    }
    h1{
        font-size: 38px;
        font-weight: 400;
        line-height: 105%;
        letter-spacing: -2%;
    }
    h2{
        font-size: 33px;
        font-weight: 400;
        line-height: 105%;
        letter-spacing: -2%;
    }
    h3{
        font-size: 23px;
        font-weight: 400;
        line-height: 100%;
        letter-spacing: -2%;
    }
    .small{
        font-size: 16px;
        font-weight: 400;
        line-height: 130%;
        letter-spacing: 0;
    }
    .caption{
        font-size: 14px;
        font-weight: 400;
        line-height: 140%;
        letter-spacing: 0;
    }
}
i.icon{
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url('/local/templates/main/css/../img/icons/Add.svg');
    background-position: center;
    background-size: 24px;
    background-repeat: no-repeat;
}
i.icon.small{
    background-size: 20px;
}
i.icon.search{
    background-image: url('/local/templates/main/css/../img/icons/Search.svg');
}
i.icon.burger{
    background-image: url('/local/templates/main/css/../img/icons/Burger.svg');
}
i.icon.chevron-back{
    background-image: url('/local/templates/main/css/../img/icons/Chevron-back.svg');
    transform: rotate(180deg);
}
i.icon.chevron-down{
    background-image: url('/local/templates/main/css/../img/icons/Chevron-down.svg');
}
i.icon.chevron-forward{
    background-image: url('/local/templates/main/css/../img/icons/Chevron-forward.svg');
}
i.icon.chevron-up{
    background-image: url('/local/templates/main/css/../img/icons/Chevron-up.svg');
}
i.icon.plus{
    background-image: url('/local/templates/main/css/../img/icons/Add.svg');
}
i.icon.done{
    background-image: url('/local/templates/main/css/../img/icons/Done.svg');
}
i.icon.eye-off{
    background-image: url('/local/templates/main/css/../img/icons/Eye-off.svg');
}
i.icon.services{
    background-image: url('/local/templates/main/css/../img/icons/Services.svg');
}
i.icon.close{
    background-image: url('/local/templates/main/css/../img/icons/Close.svg');
}
i.icon.mail{
    background-image: url('/local/templates/main/css/../img/icons/Mail.svg');
}
i.icon.tr-tc{
    background-image: url('/local/templates/main/css/../img/icons/TR TC.svg');
}
i.icon.right-up{
    background-image: url('/local/templates/main/css/../img/icons/Right-up.svg');
}
i.icon.add{
    background-image: url('/local/templates/main/css/../img/icons/Add.svg');
}
i.icon.doc{
    background-image: url('/local/templates/main/css/../img/icons/Doc.svg');
}
i.icon.invoice{
    background-image: url('/local/templates/main/css/../img/icons/Invoice.svg');
}
i.icon.sigh-out{
    background-image: url('/local/templates/main/css/../img/icons/Sigh out.svg');
}
i.icon.combine{
    background-image: url('/local/templates/main/css/../img/icons/Combine.svg');
}
i.icon.star{
    background-image: url('/local/templates/main/css/../img/icons/Star.svg');
}
i.icon.max{
    background-image: url('/local/templates/main/css/../img/soc/Max.svg');
}
i.icon.telegram{
    background-image: url('/local/templates/main/css/../img/soc/Telegram.svg');
}
i.icon.check{
    background-image: url('/local/templates/main/css/../img/icons/Check.svg');
}

button{
    padding: 16px;
    font-weight: 500;
    font-family: "Manrope";
    font-size: 18px;
    line-height: 146%;
    text-align: center;
    background: var(--fill-primary);
    color: var(--text-line);
    border: none;
    display: flex;
    gap: 8px;
    align-items: center;
    cursor: pointer;
    align-self: flex-start;
}
a.button{
    padding: 16px;
    font-weight: 500;
    font-family: "Manrope";
    font-size: 18px;
    line-height: 146%;
    text-align: center;
    background: var(--fill-primary);
    color: var(--text-line);
    border: none;
    display: flex;
    gap: 8px;
    align-items: center;
    cursor: pointer;
    align-self: flex-start;
}
button.black{
    background: var(--fill-secondary);
}
button.white{
    background: #FFFFFF1A;
}
button.small{
    padding: 12px;
    gap: 4px;
    font-size: 16px;
    line-height: 133%;
}
button:hover{
    background: var(--fill-primary-dark);
}
button.black:hover{
    background: #3E221C;
}
button[disabled]{
    background: var(--fill-primary-dark);
    color: var(--dark-text-secondary);
    cursor: default;
}
button[disabled].black{
    background: #2C2E30;
    color: var(--dark-text-secondary);
}
a.button.social{
    padding: 26px;
}
a.button.black{
    background: #FFFFFF0D;
    color: #fff;
}
a.button:hover{
    background: #3E221C;
}
a.button.center{
    display: block;
    margin: auto;
    width: fit-content;
}
button.tab{
    padding: 12px 20px;
    font-size: 16px;
    font-weight: 500;
    line-height: 133%;
    letter-spacing: 0%;
    background: var(--background-surface);
    border: 1px solid #2C2C2C;
}
button.tab:hover{
    background: #212325;
}
button.tab.active{
    background: #E34D2A1A;  /* 10% прозрачности */
    border: 1px solid #E34D2A66;
}
button.tab[disabled]{
    background: #212325;
}
a.tab{
    padding: 12px 20px;
    font-size: 16px;
    font-weight: 500;
    line-height: 133%;
    letter-spacing: 0%;
    background: var(--background-surface);
    border: 1px solid #2C2C2C;
}
a.tab:hover{
    background: #212325;
    text-decoration: none;
    cursor: pointer;
}
a.tab.active{
    background: #E34D2A1A;  /* 10% прозрачности */
    border: 1px solid #E34D2A66;
}
a.tab[disabled]{
    background: #212325;
}
input{
    background: none;
    border: none;
    font-size: 18px;
    font-weight: 500;
    line-height: 146%;
    color: #FFFFFF;
}
input::placeholder{
    color: #FFFFFF52;
}
input:focus{
    background: none;
    border: none;
    outline: none;
    color: #FFFFFF;
}
.input{
    padding: 16px;
    border: 1px solid #2C2C2C;
    display: flex;
    gap: 8px;
}
.input.error{
    border: 1px solid var(--system-danger);
}
.input.error input{
    color: var(--system-danger);
}
.input.disabled{
    background: #FFFFFF1A;
}
.input input[required]::placeholder::after {
    content: ' *';
    color: var(--system-danger);
}
.input input{
    width: 100%;
}
a.button.pagination {
    width: 45px;
    height: 45px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #FFFFFF0D;
    border: 1px solid #2C2C2C;
}
a.button.pagination:hover{
    border: 1px solid #FFFFFF26;
    text-decoration: none;
}
a.button.pagination.active{
    background: #E34D2A1A;
    border: 1px solid #E34D2A4D;
}
a.button.pagination.disabled{
    background: #FFFFFF0D;
    cursor: default;
    border-color: #FFFFFF0D;
    color: #FFFFFF52;
}
a.button.pagination.disabled:hover{
    border: 1px solid #2C2C2C;
}



.head-row {
    padding: 24px 48px;
    display: flex;
    justify-content: space-between;
}
.head-row a.logo {
    max-height: 45px;
}
.menu {
    display: flex;
    gap: 24px;
    align-items: center;
}
.menu a{
    font-weight: 500;
    font-size: 16px;
    color: var(--text-line);
}
.menu a:hover{
    text-decoration: none;
}
.head-row button{
    padding: 13px 16px;
}

.menu-soc{
    display: flex;
    gap: 4px;
    align-items: center;
}
.head-row button{
    min-width: 48px;
    height: 48px;
    justify-content: center;
    padding: 12px;
    font-size: 16px;
}
.menu.menu-services a{
    text-align: center;
    max-width: 175px;
}
.head-row.header-fixed{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 200;

    transition: background 0.3s ease-in-out;
}
.head-row.header-fixed.black{
    background: var(--background-surface);
}
.head-row.header-fixed.black .button.white{
    background-color: #FFFFFF1A;
}
.button.white:hover{
    background-color: var(--fill-primary-dark);
}
.head-row.header-absolute{
    position: absolute;
    top: 82px;
    z-index: 40;
    width: 100%;
    box-sizing: border-box;
}
.menu-services {
    width: 100%;
    justify-content: space-between;
}
.main-banner {
    margin: 0px;
    height: 100vh;
    background: linear-gradient(to bottom, #00000033, rgba(0,0,0,0)), url('/local/templates/main/img/76561aa4f47a51c87fdf17011ca8b604cc0bd3db.jpg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    padding: 48px;
    box-sizing: border-box;
    max-width: none;
}
.banner-info {
    display: flex;
    align-items: self-end;
    width: 100%;
    height: 100%;
    justify-content: space-between;
    gap: 100px;
}
.banner-info button{
    align-self: self-end;
    width: 40%;
    justify-content: center;
}
.banner-info h1{
    margin: 12px 0;
}
.banner-info-text {
    width: 65%;
}
.banner-info-text-info {
    color: #FFFFFFB8;
    margin-right: 10%;
    margin-bottom: 20px;
}
.banner-info-text-list {
    display: flex;
    justify-content: flex-start;
    gap: 24px;
    align-items: center;
}
.banner-info-text-list-el {
    display: flex;
    align-items: center;
    gap: 4px;
}
.header-fixed .menu-mobile{
    display: none;
}
.menu-soc .burger{
    display: none;
}
section.info-blocks {
    gap: 24px;
    display: flex;
    margin: 80px auto;
}
.info-blocks-element-wrap {
    width: 50%;
    aspect-ratio: 1 / 1;
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}
.info-blocks-element {
    background: #FFFFFF0D;
    aspect-ratio: 1 / 1;
    width: calc(50% - 12px);
    padding: 24px;
    box-sizing: border-box;
    background-position: left bottom;
    background-repeat: no-repeat;
}
.info-blocks-element.big {
    background: black;
    background-size: 155%;
    background-image: url('/local/templates/main/img/eb84af7e575dbffb0ba38d4de310d7bbc796990a.jpg');
    background-position: 0 120px;
    background-repeat: no-repeat;
    padding: 40px;
    position: relative;
}
.info-blocks-element-logo img{
    height: 40px;
}
.info-blocks-element .text{
    color: #FFFFFFB8;
    width: 100%;
    max-width: 600px;
}
.info-blocks-element h2{
    margin: 24px 0;
}
.info-blocks-element h3{
    margin: 0;
}
.info-blocks-element button{
    bottom: 40px;
    position: absolute;
}
.cards-element-list{
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: repeat(2, auto);
    gap: 24px;
}
.cards-element-list .cards-element{
    width: 358px;
    background-color: #212325;
    padding: 24px;
    box-sizing: border-box;
    position: relative;
}
#services-carousel .cards-element-list .cards-element{
    aspect-ratio: 1 / 1;
}
.cards-element-logo img{
    width: 113px;
}
a.cards-element-link{
    position: absolute;
    bottom: 24px;
    color: white !important;
}
.cards-element-wrap {
    overflow: hidden;
}
.cards-controll {
    position: absolute;
    display: flex;
    right: 0;
    top: 10px;
    gap: 8px;
}
.cards-section{
    position: relative;
}
.pages-block {
    background: #212325;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 11px;
    font-size: 16px;
    gap: 3px;
}
.cards-controll button{
    background: #212325;
}
 .cards-controll button[disabled]{
     background: #1B1D1F;
 }
.cards-element-list {
    transition: transform 1s ease-in-out;
}
.text-block {
    margin-bottom: 72px;
}
.text-block p{
    font-weight: 500;
    font-size: 54px;
    line-height: 133%;
    text-align: center;
    vertical-align: middle;
}
.numbers-block {
    display: flex;
    justify-content: center;
    gap: 96px;
}
.numbers-block__number-el {
    max-width: 260px;
    text-align: center;
}
.numbers-block__number-el__number{
    font-weight: 400;
    font-size: 76px;
    line-height: 94%;
    letter-spacing: -2.59px;
    color: var(--fill-primary);
    margin-bottom: 16px;
}
.image-section img{
    min-width: 530px;
    margin: auto;
    display: block;
    margin-top: 73px;
    max-width: 100%;
}
.cards-element {}

#reviews-carousel .cards-element {
    background: none;
    border-bottom: 1px solid #FFFFFF4D;
    border-top: 1px solid #FFFFFF4D;
    display: flex;
    gap: 254px;
    padding: 40px 0;
}

#reviews-carousel .company-data {
    width: 35%;
    display: flex;
    position: relative;
    gap: 16px;
}

#reviews-carousel .company-text {
    width: 65%;
    padding-bottom: 85px;
    position: relative;
}

#reviews-carousel .company-data_info {
    display: flex;
    flex-direction: column;
}

#reviews-carousel img.company-data_info_logo {
    width: 80px;
    height: 80px;
    border-radius: 50%;
}

#reviews-carousel .company-data_info_text {
    color: #FFFFFFB8;
    font-weight: 500;
    font-size: 16px;
    line-height: 133%;
    letter-spacing: 0%;
}

.company-data_date {
    position: absolute;
    bottom: 0;
    left: 0;
    font-weight: 500;
    font-size: 16px;
    line-height: 133%;
    letter-spacing: 0%;
    color: #FFFFFFB8;
}

#reviews-carousel .company-text a.button.black {
    position: absolute;
    bottom: 0;
    font-size: 16px;
}

#reviews-carousel .cards-element-list {
    gap: 0;
}

.spoilers {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.spoiler {
    background: #FFFFFF0D;
    padding: 24px;
}

.spoiler_title {
    display: flex;
    justify-content: space-between;
    font-weight: 500;
    font-size: 23px;
    line-height: 126%;
    letter-spacing: -1%;
    vertical-align: middle;
    align-items: center;
}

.spoiler_title_icon {
    width: 48px;
    height: 48px;
    background: #FFFFFF0D;
    display: flex;
    justify-content: center;
    align-items: center;
}

.spoiler_title_icon i{
    transition: transform 0.3s ease-in-out;
}

.spoiler_text {
    margin-top: 24px;
    color: #FFFFFFB8;
    max-width: 760px;

    /* Анимация появления */
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: max-height 0.4s ease-out, opacity 0.3s ease-in, margin 0.3s ease;
    margin-top: 0;
}

.spoiler.open .spoiler_text {
    max-height: 500px; /* Достаточно большое значение для вашего контента */
    opacity: 1;
    margin-top: 24px;
}
.spoiler.open .spoiler_title_icon i{
    transform: rotate(180deg);
}


#news-carousel .cards-element {
    background: none;
    padding: 0;
    height: fit-content;
}

#news-carousel img {
    width: 100%;
    height: 460px;
    object-fit: cover;
}

a.new-card-title {
    font-weight: 500;
    font-size: 23px;
    line-height: 126%;
    letter-spacing: -1%;
    vertical-align: middle;
    color: #FFFFFF;
    margin: 24px 0 8px 0;
    display: inline-block;
    max-width: 608px;
}

.new-card-text {
    color: #FFFFFFB8;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* Количество строк */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 16px;
    font-weight: 500;
    font-size: 16px;
    line-height: 133%;
    letter-spacing: 0%;
    vertical-align: middle;
    max-width: 608px;
}

.new-card-info {
    display: flex;
    gap: 16px;
    font-weight: 500;
    font-size: 14px;
    line-height: 139%;
    letter-spacing: 0%;
    vertical-align: middle;
}

.new-card-info_date {
    color: #FFFFFFB8;
}

.new-card-info_source {
    color: var(--fill-primary);
}
section.banner {
    height: 540px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 48px;
    box-sizing: border-box;
}

.banner-content {
    max-width: 650px;
    position: relative;
    padding-bottom: 60px;
    height: 100%;
    box-sizing: border-box;
}

.banner-content h2 {
    margin: 0;
    margin-bottom: 24px;
}

.banner-info_text {
    max-width: 520px;
    font-weight: 500;
    color: #FFFFFFB8;
}

.banner-content button {
    position: absolute;
    bottom: 0;
}

footer {
    margin: 0 48px;
    border-top: 1px solid #FFFFFF4D;
    padding: 32px 0;
}

.footer-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 160px;
}

a.footer-logo {
    padding: 18px;
    width: 35%;
    max-width: 520px;
}

.footer-logo img {
    width: 100%;
}

.footer-info {
    font-weight: 500;
    letter-spacing: 0%;
}
.footer-info-contacts {
    font-weight: 500;
    letter-spacing: 0%;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.footer-info-contacts a {
    font-weight: 500;
    font-size: 18px;
    line-height: 146%;
    letter-spacing: 0%;
    color: #fff;
}
.footer-menu {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.footer-menu a {
    font-weight: 500;
    font-size: 18px;
    line-height: 146%;
    color: #fff;
}

.footer-soc a.button.social {
    padding: 15px;
}

.footer-soc {
    display: flex;
    gap: 8px;
    align-self: flex-start;
}

.footer-bot {
    display: flex;
    justify-content: space-between;
    font-weight: 500;
    font-size: 14px;
    line-height: 139%;
    letter-spacing: 0%;
    color: #FFFFFFB8;
    align-items: center;
}

.copyright {
}

footer .dev img {
    max-height: 50px;
    margin-left: 16px;
}

.dev {
    display: flex;
    align-items: center;
}

footer .design a {
    color: #fff;
    text-decoration: underline;
}

a.policy {
    text-decoration: underline;
}



.popup-windows {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.popup-overlay {
    display: none;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    background: #00000080;
    z-index: 70;
}
.popup-overlay.active{
    display: block;
}
.popup-window {
    display: block;
    position: fixed;
    top: 0;
    bottom: 0;
    background: #151719;
    z-index: 70;
    width: fit-content;
    max-width: 50%;
    padding-top: 100px;
    transition: transform 0.5s ease-in-out;
    max-height: 100%;
    overflow-y: auto;
    overflow-x: clip;
}

.popup-window.left {
    left: 0;
    transform: translateX(-100%);
}

.popup-window.right {
    right: 0;
    transform: translateX(100%);
}

.popup-window.active {
    display: block;
    transform: translateX(0);
}

.popup-menu {
    display: flex;
    flex-direction: column;
    padding: 100px 0 0;
    gap: 8px;
    overflow: visible;
}
.popup-menu a{
    width: 320px;
    padding: 12px 16px;
    display: flex;
    align-items: center;
    position: relative;
    padding-right: 42px;
    box-sizing: border-box;
    gap: 16px;
}
.popup-menu a .icon.section{
    background-image: none;
    background-color: #FFF9;
    mask-repeat: no-repeat;
    mask-size: contain;
}
.popup-menu a i.chevron-forward{
    position: absolute;
    right: 16px;
}
.popup-menu a:hover{
    background: #FFFFFF1A;
    text-decoration: none;
}
.popup-menu a:hover .icon.section{
    background-image: none;
    background-color: #E34D2A;
}
.popup-menu.active {
    display: flex;
}

#popup-search {
    padding: 48px;
    padding-top: 132px;
}
.closeFormBtn{
    padding: 12.5px;
    margin-left: auto;
}
#popup-search .input.search-input{
    width: 500px;
    margin-bottom: 24px;
}
#popup-search .search-results{
    font-size: 16px;
    vertical-align: middle;
    color: #FFFFFFB8;
}

#popup-consult {
    padding: 124px 48px 48px 48px;
    max-width: 600px;
}
#popup-consult h2{
    text-align: center;
}
#popup-consult .subtitle {
    text-align: center;
    color: #FFFFFFB8;
    margin-bottom: 24px;
}

#popup-consult .input {
    margin-bottom: 8px;
}
#popup-consult .submit-btn{
    width: 100%;
    justify-content: center;
    margin-top: 24px;
    margin-bottom: 16px;
}


label.checkbox{
    font-weight: 500;
    font-style: Medium;
    font-size: 14px;
    leading-trim: NONE;
    line-height: 139%;
    letter-spacing: 0%;
    color: #FFFFFFB8;
}
label.checkbox::before{
    content: '';
    width: 16px;
    height: 16px;
    border: 1px solid #FFFFFF4D;
    display: inline-block;
}
label.checkbox:has(input:checked)::before {
    background-color: var(--fill-primary);
    background-image: url('/local/templates/main/css/../img/icons/Done.svg');
    background-position: center;
    background-size: contain;
}
label.checkbox input{
    width: 0;
    height: 0;
    opacity: 0;
}
label.checkbox a{
    text-decoration: underline;
}

section.itemMainSection h1{
    width: 80%;
}



.info-block {
    display: flex;
    gap: 24px;
    margin-bottom: 40px;
}
.info-block .text {
    width: 50%;
    font-weight: 500;
    font-size: 18px;
    line-height: 146%;
    letter-spacing: 0%;
    color: #FFFFFFB8;
}
.info-block .active {
    width: 50%;
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.info-block .buttons {
    display: flex;
    gap: 8px;
}
.black {
}
.info-block .buttons button {
    width: 50%;
    justify-content: center;
}
.info-block .text-list {
    display: flex;
    justify-content: space-between;
}
.itemMainSection .image-block {
    width: 100%;
    max-height: 700px;
    object-fit: cover;
}

.two-columns {
    display: flex;
    gap: 8px;
}
.two-columns__column {
    width: 50%;
}
.two-columns__column h2 {
    margin: 0;
}
.black-text {
    color: #FFFFFFB8;
}
hr {
    margin: 120px 48px;
    border: 1px solid #2C2C2C;
}


.card-element {
    display: flex;
    flex-wrap: wrap;
    width: calc(50% - 12px);
    background: #FFFFFF0D;
    box-sizing: border-box;
    padding: 24px;
    aspect-ratio: 1 / 1;
    flex-direction: column;
    justify-content: space-between;
}
.cards-list {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}
.cards-list.one-element .card-element{
    width: 100%;
    aspect-ratio: auto;
    min-height: 270px;
}
.card-element .subtitle {
    color: #FFFFFFB8;
    font-size: 16px;
}
.card-element h3 {
    margin-bottom: 8px;
}
.text .icon {
    margin-bottom: -4px;
}
.card-element .text {
    font-size: 14px;
    line-height: 139%;
    letter-spacing: 0%;
    font-weight: 500;
}
.card-element .price-info {
    padding-top: 16px;
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #2C2C2C;
    margin-top: 16px;
}


.vertical-list__element {
    padding-bottom: 28px;
    border-bottom: 1px solid #FFFFFF4D;
}
.vertical-list {
    display: flex;
    flex-direction: column;
    gap: 116px;
}
.vertical-list__element__title {
    display: flex;
    gap: 24px;
    margin-bottom: 24px;
}
.vertical-list__element__number {
    display: inline-block;
    font-weight: 500;
    font-size: 66px;
    line-height: 80%;
    letter-spacing: -3%;
    color: #E34D2A;
    padding-right: 24px;
    border-right: 1px solid #FFFFFF4D;
    align-self: flex-start;
}
.vertical-list__element__title h3 {
    margin: 0;
}
.vertical-list__element__content {
    color: #FFFFFFB8;
}

section.min-margin{
    margin: 120px auto;
}

section.simplePage{
    margin-top: 200px;
}

.colored-list-element__number {
    display: inline-block;
    font-weight: 500;
    color: #E34D2A;
    margin-right: 16px;
}

.vertical-list.short{
    gap: 8px;
}
.colored-list-element {
    padding: 16px;
    background: #FFFFFF1A;
}
.text-block.left p{
    text-align: left;
    max-width: 1300px;
}
.text-block.left .numbers-block{
    justify-content: left;
}

.head-row .button {
    min-width: 48px;
    height: 48px;
    justify-content: center;
    padding: 12px;
    font-size: 16px;
    box-sizing: border-box;
}
.button.white {
    background: #FFFFFF1A;
}

#story-carousel .cards-element__title{
    font-weight: 500;
    font-size: 18px;
    leading-trim: NONE;
    line-height: 146%;
    color: #E34D2A;
    margin-bottom: 16px;
}
#story-carousel .cards-element.big .cards-element__title{
    font-size: 23px;
}
#story-carousel .cards-element__text{
    font-weight: 500;
    font-size: 16px;
    leading-trim: NONE;
    line-height: 133%;
}
#story-carousel .cards-element{
    height: 560px;
    position: relative;
}
#story-carousel .cards-element.big{
    width: 500px !important;
    max-width: calc(100vw - 32px);
}
#story-carousel .cards-element__years {
    position: absolute;
    bottom: 24px;
    font-weight: 500;
    font-size: 23px;
    line-height: 126%;
}
#story-carousel .cards-element.big .cards-element__years {
    font-size: 110px;
}
.numbers-block.left {
    justify-content: start;
}


.contacts-list {
    display: flex;
    margin-top: 24px;
    gap: 24px;
}
.contact-block {
    width: 33.3%;
    background: #FFFFFF0D;
    padding: 24px;
    height: 340px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.contact-name {
    font-weight: 500;
    font-size: 16px;
    line-height: 133%;
    letter-spacing: 0%;
    color: #E34D2A;
}
.contact-value {
    font-weight: 500;
    font-size: 23px;
    line-height: 126%;
    letter-spacing: -1%;
}
.contact-value.h3 {
}
.contact-value a {
    font-weight: 500;
    font-size: 23px;
    line-height: 126%;
    letter-spacing: -1%;
    color: white;
}

.button.social.black {
    background: #FFFFFF0D;
}
.social-links {
    display: flex;
    margin-top: 24px;
    gap: 24px;
}
.social-links a {
    width: 50%;
    justify-content: center;
}

.news-filter {
    margin-bottom: 45px;
}


.news-filter {
    margin-bottom: 45px;
}
.news-list {
    display: flex;
    gap: 24px;
    margin-top: 24px;
}
.news-list .cards-element {
    width: 33.3%;
}
.news-list.big .cards-element {
    width: 50%;
}
.news-list .cards-element img {
    width: 100%;
    height: 340px;
    object-fit: cover;
}
.news-list.big .cards-element img{
    height: 460px;
}
.pagination {
    display: flex;
    justify-content: space-between;
    margin-top: 60px;
}
.pagination .pages {
    display: flex;
    gap: 8px;
}
.pagination .arrows {
    display: flex;
    gap: 8px;
}
.news-info {
    display: flex;
    gap: 16px;
    margin-bottom: 16px;
}
.news-info .date{
    font-weight: 500;
    font-size: 16px;
    line-height: 133%;
    letter-spacing: 0%;
    color: #FFFFFFB8;
}
.news-info .type{
    font-weight: 500;
    font-size: 16px;
    line-height: 133%;
    letter-spacing: 0%;
    color: #E34D2A;
}
section.narrow-text {
    margin: 80px calc(50% - 370px);
}
section.narrow-text p{
    color: #FFFFFFB8;
}
blockquote {
    border-left: 2px solid #E34D2A;
    padding-left: 24px;
    margin-left: 0;
    margin: 64px 0;
}
li {
    margin: 16px 0;
    color: #FFFFFFB8;
}
li::marker{
    color: #E34D2A;
}
section.narrow-text img{
    margin: 64px 0;
    max-width: 100%;
}

@media screen and (max-width: 2000px){
    .main-banner {
        background: linear-gradient(to bottom, #00000033, rgba(0,0,0,0)), url('/local/templates/main/img/banner/default-fhd.jpg');
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
    }
}
@media screen and (max-width: 1090px){
    .main-banner {
        background: linear-gradient(to bottom, #00000033, rgba(0,0,0,0)), url('/local/templates/main/img/banner/default-hd.jpg');
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
    }
}
@media screen and (max-width: 600px){
    .main-banner {
        background: linear-gradient(to bottom, #00000033, rgba(0,0,0,0)), url('/local/templates/main/img/banner/default-m.jpg');
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
    }
}
@media screen and (max-width: 1450px){
    section.questions{
        display: none;
    }
    #news-carousel img {
        height: 390px;
    }
}

@media screen and (max-width: 1240px){
    .header-fixed .menu{
        display: none;
    }

    #news-carousel img {
        height: 330px;
    }
    .header-fixed .lk{
        display: none;
    }
    .header-fixed .menu-mobile{
        display: flex;
        gap: 4px;
    }
    .menu-soc .call{
        display: none;
    }
    .menu-soc .mail{
        display: none;
    }
    .menu-soc .burger{
        display: flex;
    }
    .header-absolute{
        display: none;
    }
    .main-banner {
        max-height: 836px;
    }
    .banner-info {
        flex-direction: column;
        align-items: baseline;
        justify-content: end;
        gap: 40px;
    }
    .banner-info button {
        align-self: baseline;
        width: 55%;
    }
    .banner-info-text {
        width: 80%;
    }
    .main-banner{
        padding: 24px;
    }
    .head-row.header-fixed {
        padding: 20px 16px;
        width: 100vw;
        box-sizing: border-box;
    }
    section.info-blocks {
        flex-direction: column;
        margin: 48px 24px;
    }
    .info-blocks-element.big {
        width: 100%;
        aspect-ratio: auto;
        background-position: left;
    }
    .info-blocks-element-logo {
        height: 40px;
    }
    .info-blocks-element h2 {
        width: 60%;
    }
    .info-blocks-element .text {
        width: 40%;
        margin-bottom: 146px;
    }
    .info-blocks-element-wrap{
        width: 100%;
        aspect-ratio: auto;
    }
    .info-blocks-element-wrap .info-blocks-element {
        aspect-ratio: auto;
        padding-bottom: 210px;
    }
    .info-blocks-element h3 {
        width: 80%;
    }
    a.cards-element-link{
        padding: 12px;
        font-size: 16px;
    }
    #reviews-carousel .cards-element{
        gap: 40px;
    }
    #reviews-carousel .company-data {
        width: 50%;
    }
    #reviews-carousel .company-text {
        width: 50%;
    }
    a.new-card-title {
        max-width: 100%;
    }
    .new-card-text{
        max-width: 100%;
    }
    .banner-content {
        max-width: 600px;
    }
    .footer-bot {
        gap: 30px;
    }
    .footer-bot .dev{
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }
    .footer-top {
        margin-bottom: 120px;
    }
    a.footer-logo {
        padding: 18px;
        width: 35%;
        max-width: 320px;
    }
    section {
        margin: 100px 24px;
    }
    footer {
        margin: 0 24px;
    }
    section.itemMainSection h1 {
        width: 100%;
    }


    .info-block {
        flex-direction: column;
    }
    .info-block .text {
        width: 100%;
    }
    .info-block .active {
        width: 100%;
    }
    .info-block .text-list {
        justify-content: space-around;
    }
    .two-columns {
        flex-direction: column;
    }
    .two-columns__column {
        width: 100%;
    }
    .two-columns__column.black-text {
        max-width: 600px;
    }
    .two-columns__column h2 {
        margin-bottom: 48px;
    }
    .card-element {
        width: calc(33.3% - 16px);
        flex-wrap: nowrap;
    }
    .card-element .text {
        margin-top: 40px;
    }
    .vertical-list {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 28px;
    }
    .vertical-list__element {
        width: calc(50% - 27px);
        position: relative;
    }
    .vertical-list__element__title {
        flex-direction: column;
    }
    .vertical-list__element__number {
        border-right: 0;
    }
    .vertical-list__element:last-child, .vertical-list__element:nth-last-child(2) {
        border-bottom: none;
    }
    .vertical-list__element:nth-child(2n)::after {
        content: ' ';
        position: absolute;
        bottom: 12px;
        left: 0;
        transform: translateX(-15px);
        background-color: #FFFFFF4D;
        top: -12px;
        width: 1px;
    }

    .cards-list.one-element .card-element {
        width: calc(50% - 12px);
    }

    .vertical-list.short {
        gap: 8px;
        flex-wrap: nowrap;
        flex-direction: column;
    }
    section.simplePage {
        margin-top: 160px;
    }
    .news-list {
        display: flex;
        gap: 24px;
        margin-top: 24px;
        flex-wrap: wrap;
    }
    .news-list.big .cards-element img {
        height: 335px;
    }
    .news-list.big .cards-element {
        width: calc(50% - 12px);
    }
    .news-list .cards-element {
        width: calc(50% - 12px);
    }
}

@media screen and (max-width: 900px){
    .banner-info button {
        width: 100%;
    }
    .banner-info-text {
        width: 100%;
    }
    .main-banner{
        padding: 16px 24px;
    }
    .main-banner {
        max-height: 708px;
    }
    .banner-info-text-list {
        flex-wrap: wrap;
    }
    .header-fixed .menu-mobile {
        display: none;
    }
    .banner-info-text-list-el{
        font-size: 16px;
    }
    .banner-info-text-list {
        gap: 10px;
    }
    section {
        margin: 32px 16px;
    }
    .info-blocks-element h2 {
        width: 100%;
    }
    .info-blocks-element.big {
        padding: 24px;
        background-position: bottom;
        background-position-x: inherit;
        padding-bottom: 320px;
    }
    .info-blocks-element .text {
        width: 100%;
        margin-bottom: 32px;
    }
    .info-blocks-element button {
        position: initial;
    }
    .info-blocks-element-wrap .info-blocks-element {
        width: 100%;
    }
    .info-blocks-element h3 {
        width: 100%;
    }
    #services-carousel .cards-element-list .cards-element {
        aspect-ratio: auto;
        height: 270px;
    }
    .cards-controll{
        top: auto;
        bottom: -70px;
        width: 100%;
        justify-content: end;
    }
    .pages-block{
        position: absolute;
        left: 0px;
    }
    .cards-element-wrap {
        overflow: hidden;
        margin-bottom: 150px;
    }
    .text-block p {
        font-size: 30px;
        text-align: left;
    }
    .numbers-block {
        gap: 24px;
        flex-direction: column;
    }
    .numbers-block__number-el {
        max-width: 260px;
        text-align: left;
    }
    .image-section h2{
        margin-top: 80px;
    }
    .image-section img{
        position: relative;
        left: 50%;
        transform: translateX(-50%);
    }
    .cards-section {
        margin-top: 64px;
    }
    #reviews-carousel .cards-element{
        flex-direction: column;
    }
    #reviews-carousel .company-data {
        width: 100%;
        position: initial;
    }
    #reviews-carousel .company-text {
        width: 100%;
    }
    #reviews-carousel .company-text a.button.black {
        right: 0;
    }
    .company-data_date {
        bottom: 38px;
    }
    #reviews-carousel .cards-element {
        border-bottom: none;
    }
    #reviews-carousel .cards-element-list {
        gap: 20px;
    }
    .cards-section .cards-element-wrap{
        margin-bottom: 100px;
    }
    .section-news.cards-section .cards-controll {
        bottom: 80px;
    }
    section.banner {
        padding: 16px;
    }
    .banner-content button {
        margin-top: 16px;
        position: initial;
    }
    section.banner {
        height: 850px;
    }
    section.banner {
        height: 750px;
        background-size: 300%;
        background-position: bottom;
        background-position-x: 67%;
        background-color: #000;
    }
    .footer-top {
        margin-bottom: 120px;
        flex-direction: column;
        align-items: flex-start;
        gap: 32px;
        margin-bottom: 43px;
    }
    a.footer-logo {
        width: auto;
        padding: 0;
    }
    .footer-bot {
        flex-direction: column;
        align-items: start;
        gap: 12px;
    }
    .footer-bot .dev {
        flex-direction: row;
        align-items: center;
    }
    .image-section{
        overflow: hidden;
        padding: 0 16px;
        margin: 32px 0;
    }


    section.min-margin {
        margin: 64px 16px;
    }
    section.simplePage {
        margin-top: 128px;
    }
    .info-block .buttons {
        flex-direction: column;
    }
    .info-block .buttons button {
        width: 100%;
    }
    .info-block .text-list {
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 10px;
    }
    .itemMainSection .image-block {
        margin: 0 -16px;
        height: 340px;
        width: calc(100% + 32px);
    }
    hr {
        margin: 64px 16px;
    }
    .card-element {
        width: 100%;
    }
    .vertical-list__element {
        width: 100%;
    }
    .vertical-list__element:nth-child(2n)::after {
        display: none;
    }
    .vertical-list__element:nth-last-child(2) {
        border-bottom: 1px solid #FFFFFF4D;
    }
    .cards-list.one-element .card-element {
        width: 100%;
    }

    .colored-list-element__number {
        display: block;
    }
    #story-carousel .cards-element {
        height: fit-content;
        padding-bottom: 40px;
    }
    #story-carousel .cards-element.big {
        height: 450px;
    }

    .contacts-list {
        flex-direction: column;
        gap: 16px;
    }
    .contact-block {
        width: 100%;
        box-sizing: border-box;
        height: 180px;
    }
    .social-links {
        flex-direction: column;
        gap: 16px;
        margin-top: 16px;
    }
    .social-links a {
        width: 100%;
        box-sizing: border-box;
    }
    .news-filter {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    .news-list.big .cards-element {
        width: 100%;
    }
    .news-list .cards-element {
        width: 100%;
    }
    .news-list.big .cards-element img {
        height: 250px;
    }
    .news-list .cards-element img {
        height: 250px;
    }
    .new-card-info {
        flex-direction: column;
    }
    .pagination .pages a{
        display: none;
    }
    .pagination .pages a.show-more{
        display: inline-block;
        height: auto;
    }
    .pagination .arrows{
        display: none;
    }
    .pagination{
        justify-content: center;
        margin-top: 0;
    }
    section.narrow-text {
        max-width: 100%;
        margin: 80px 16px;
    }
    section.narrow-text img{
        margin: 24px 0;
    }
    .news-info {
        flex-direction: column;
        gap: 4px;
    }

    #popup-search {
        width: 100%;
        max-width: 100vw;
        box-sizing: border-box;
        padding: 100px 16px;
    }
    #popup-search .input.search-input {
        width: 100%;
        box-sizing: border-box;
    }
    #popup-menu-m {
        max-width: 100%;
        box-sizing: border-box;
        padding: 100px 0px 32px;
        width: 100%;
    }
    .mobile-menu .services .icon.chevron-down {
        position: absolute;
        right: 16px;
        top: 30px;
    }
    .mobile-menu a, .mobile-menu .services {
        padding: 22px 16px;
        box-sizing: border-box;
        width: 100%;
        border-bottom: 1px solid #FFFFFF26;
        position: relative;
        color: #fff;
        font-weight: 550;
        font-size: 33px;
        line-height: 111.00000000000001%;
        letter-spacing: -2.5%;
    }
    .services-menu a {
        font-size: 18px;
        border-bottom: none;
        padding: 12px 16px;
    }
    .mobile-menu .services-menu a .icon.chevron-forward{
        display: none;
    }
    .mobile-menu .services.active .icon.chevron-down {
        transform: rotateX(180deg);
    }
    #news-carousel img {
        height: 250px;
    }
}

#popup-consult {#popup-consult {
                    padding: 124px 48px 48px 48px;
                    max-width: 600px;
                };
#popup-consult {
    padding: 124px 48px 48px 48px;
    max-width: 600px;
};
padding: 124px 48px 48px 48px;
max-width: 600px;
}

#popup-service {
    max-width: 600px;
    padding: 124px 48px 48px;
}

#popup-service h2 {
    text-align: center;
}

#popup-service .subtitle {
    text-align: center;
    font-size: 18px;
    color: #FFFFFFB8;
    margin-bottom: 24px;
}

#popup-service form.consult {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#popup-service .submit-btn {
    width: 100%;
    justify-content: center;
    margin-top: 20px;
    margin-bottom: 8px;
}
.input.select {
    background: none;
    color: white;
    font-weight: 500;
    font-size: 18px;
    line-height: 146%;
    letter-spacing: 0%;
}
.input.select option {
    color: white;
    background: #151719;
}
textarea.input {
    font-family: "Manrope";
    background: none;
    resize: none;
    min-height: 150px;
    font-size: 18px;
    font-weight: 500;
    line-height: 146%;
    color: #FFFFFF;
}
textarea::placeholder{
    color: #FFFFFF52;
}
div#popup-success {padding: 128px 48px 48px;}

img.form-image {
    margin-top: 100px;
    margin-bottom: 24px;
}

#popup-success h2 {
    text-align: center;
    margin-bottom: 16px;
}

#popup-success .subtitle {
    color: #FFFFFFB8;
    font-size: 18px;
    text-align: center;
    max-width: 500px;
    margin-bottom: 24px;
}

#popup-success button.submit-btn {
    width: 100%;
    justify-content: center;
}

.error-text {
    margin-bottom: 16px;
    text-align: center;
    color: var(--system-danger);
}


.contact-requisites {
    background: #FFFFFF0D;
    padding: 24px;
    display: flex;
    flex-direction: column;

    margin-top: 24px;
}
.contact-requisites__title {
    font-weight: 500;
    font-size: 23px;
    line-height: 126%;
    text-transform: uppercase;
    margin-bottom: 12px;
}
.contact-requisites__list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: fit-content;
}
.contact-requisites__item {
    display: flex;
    align-items: center;
    gap: 150px;
    justify-content: space-between;
}
.contact-requisites__item-name {
    color: #FFFFFFB8;
    font-size: 20px;
    line-height: 126%;
}
.contact-requisites__item-value {
    color: #fff;
    font-size: 20px;
    line-height: 126%;
}
@media (max-width: 450px) {
    .contact-requisites__list {
        width: 100%;
    }
    .contact-requisites__item {
        gap: 15px;
    }
}

.lock {
    height: 100%;
    overflow: hidden;
}
.catalog-menu, .catalog-submenu {
    padding: 0 0 32px;
    margin: 0;
    list-style: none;
    height: 100%;
}
.catalog-menu {
    position: relative;
}
.catalog-submenu {
    display: none;
    position: absolute;
    left: 100%;
    top: 0;
    background: #151719;
}
.catalog-menu li:hover > .catalog-submenu {
    display: block;
}
/* End */


/* Start:/local/templates/main/css/redesign.css?17866289834181*/
body {position: relative;}
body::after {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 50px);
  max-width: 1600px;
  height: 100%;
  background-image: 
    linear-gradient(to right, #666 1px, transparent 1px),
    linear-gradient(to bottom, #666 1px, transparent 1px);
  background-size: 50px 50px;
  background-position: center;
  opacity: 0.2;
  z-index: -1;
}
.container {
  position: relative;
  margin: auto;
  padding: 0 25px;
  max-width: 1600px;
}
@media (max-width:1600px) {
  .container {
    max-width: 1200px;
  }
  body::after {
    max-width: 1200px;
  }
}
@media (max-width: 992px) {
  body::after {
    background-size: 25px 25px;
  }
}
@media (max-width:640px) {
  body::after {
    width: 100%;
  }
  .container {
    padding: 0 20px;
  }
}
.section {
  margin: 150px auto;
  max-width: unset;
}
.section--top {
  margin-top: 0;
  padding-top: 166px;
  background-image: url('/local/templates/main/img/banner/top_bg.png');
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
}
.section--topcover {
  background-size: cover;
}
.section--bottom {
  margin-bottom: 100px;
}
.section__heading {
  margin-bottom: 40px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 940px;
}
.section__heading--short {
  max-width: 906px;
}
.section__heading--full {
  max-width: unset;
}
.section__title {
  margin: 0;
  font-weight: 500;
  font-size: 55px;
  line-height: 100%;
  letter-spacing: -0.03em;
  color: #fff;
}
.section__subtitle {
  margin: 0;
  font-weight: 500;
  font-size: 18px;
  line-height: 26px;
  color: rgba(255, 255, 255, 0.8);
}
.section__subtitle--short {
  max-width: 701px;
}
.h1 {
  margin: 0 0 40px;
  font-weight: 500;
  font-size: 65px;
  line-height: 100%;
  letter-spacing: -0.03em;
  color: #fff;
}
@media (max-width:1600px) {
  .section__title {
    font-size: 35px;
  }
  .section__subtitle {
    font-size: 16px;
    line-height: 23px;
  }
  .h1 {
    font-size: 50px;
  }
}
@media (max-width:992px) {
  .section {
    margin: 60px auto;
  }
  .section--top {
    margin-top: 0;
    padding-top: 166px;
  }
  .section--bottom {
    margin-bottom: 50px;
  }
  .section__title {
    font-size: 25px;
  }
  .h1 {
    font-size: 35px;
  }
}
@media (max-width:640px) {
  .section--top {
    padding-top: 90px;
  }
  .section__subtitle {
    font-size: 14px;
    line-height: 20px;
  }
}
.button {
  padding: 19px !important;
  background-color: #e34d2a !important;
  border: 1px solid rgba(255, 255, 255, 0.5) !important;
  /* font-weight: 700 !important; */
  font-size: 18px !important;
  line-height: 26px !important;
  color: #fff !important;
}
.button:hover {
  text-decoration: none !important;
}
.button--main {
  border-color: #e34d2a !important;
}
.button--dark {
  background-color: rgba(255, 255, 255, 0.1) !important;
}
.blocktitle {
  font-weight: 500;
  font-size: 30px;
  line-height: 32px;
  letter-spacing: -0.02em;
  color: #e34d2a;
}
.blocktitle--white {
  color: #fff;
}
.blocktext {
  font-weight: 500;
  font-size: 18px;
  line-height: 26px;
  color: rgba(255, 255, 255, 0.8);
}
.blockbutton {
  padding: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  background-color: #e34d2a;
  font-weight: 500;
  font-size: 18px;
  line-height: 26px;
  color: #fff;
}
.blockbutton--smallgap {
  gap: 4px;
}
.blockbutton:hover {
  text-decoration: none;
}
@media (max-width:1600px) {
  .blocktitle {
    font-size: 25px;
    line-height: 26px;
  }
  .blocktext {
    font-size: 16px;
    line-height: 23px;
  }
  .blockbutton {
    font-size: 16px;
    line-height: 23px;
  }
}
@media (max-width:992px) {
  .blocktitle {
    font-size: 20px;
    line-height: 21px;
  }
}
@media (max-width: 640px) {
  .blocktext--mobsmall {
    font-size: 14px;
    line-height: 20px;
  }
}
.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}
.tags__tag {
  padding: 10px;
  background-color: rgba(255, 255, 255, 0.1);
  font-weight: 500;
  font-size: 18px;
  line-height: 26px;
  color: rgba(255, 255, 255, 0.8);
}
@media (max-width:992px) {
  .tags {
    gap: 12px;
  }
}
/* End */


/* Start:/local/templates/main/css/header.css?17858276843902*/
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  background-color: rgba(1, 1, 1, 0);
  z-index: 100;
  transition-duration: 700ms;
}
.header.scrolled {
  background-color: rgba(1, 1, 1, 1);
}
.header__top {
  padding: 20px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 2px solid rgba(255, 255, 255, 0.1);
}
.header__left {
  display: flex;
  align-items: center;
  gap: 50px;
}
.header__logo {
  display: flex;
}
.header__link {
  font-weight: 500;
  font-size: 16px;
  line-height: 22px;
  color: #fff;
}
.header__right {
  display: flex;
  gap: 20px;
}
.header__menu {
  padding: 14px 0;
  display: flex;
  justify-content: space-between;
  gap: 4px;
  overflow-x: auto;
}
.header__item {
  padding: 10px;
  display: flex;
  align-items: center;
  gap: 10px;
  background-color: rgba(255, 255, 255, 0.1);
  font-weight: 500;
  font-size: 16px;
  line-height: 133%;
  color: #fff;
}
.header__item > img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}
.header__burger {
  display: none;
  padding: 8px;
}
@media (max-width: 1600px) {
  .header__left {
    gap: 30px;
  }
  .header__logo {
    margin-right: 20px;
  }
  .header__item {
    padding: 5px;
  }
  .header__item,
  .header__link {
    font-size: 12px;
    line-height: 16px;
  }
  .header__contact .contact__button {
    padding: 8px 5px;
    font-size: 12px;
    line-height: 16px;
  }
}
@media (max-width:1220px) {
  .header__contact .contact__button:first-child {
    display: none;
  }
}
@media (max-width:1060px) {
  .header__contact .contact__button {
    display: none;
  }
}
@media (max-width:992px) {
  .header__top {
    padding: 20px 0 11px;
  }
  .header__link {
    display: none;
  }
  .haeder__menu {
    padding: 11px 0;
  }
  .header__item {
    white-space: nowrap;
  }
}
@media (max-width:640px) {
  .header__top {
    padding: 10px 0;
    border-bottom: none;
  }
  .header__logo {
    margin-right: 0;
    width: 170px;
    height: 30px;
  }
  .header__menu,
  .contact.header__contact {
    display: none;
  }
  .header__burger {
    display: flex;
  }
}

.contact {
  display: flex;
  align-items: center;
  gap: 10px;
}
.contact--socials {
  gap: 20px;
}
.contact__icon {
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  background-color: rgba(255, 255, 255, 0.1);
}
.contact__icon > img {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  object-fit: contain;
}
.contact__inner {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.contact__label {
  font-weight: 500;
  font-size: 16px;
  line-height: 21px;
  color: rgba(255, 255, 255, 0.8);
}
.contact__link {
  font-weight: 500;
  font-size: 18px;
  line-height: 23px;
  color: #fff;
}
.contact__social {
  width: 40px;
  height: 40px;
}
.contact__social > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.contact__button {
  padding: 10px;
  display: flex;
  align-items: center;
  gap: 10px;
  background-color: rgba(255, 255, 255, 0.1);
  font-weight: 500;
  font-size: 16px;
  line-height: 22px;
  color: #fff;
}
.contact__button > img {
  width: 24px;
  height: 24px;
  object-fit: cover;
}

.login {
  display: flex;
  align-items: center;
  border: 1px solid #e34d2a;
}
.login:hover {
  text-decoration: none;
}
.login__img {
  margin: 0;
  width: 38px;
  height: 38px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(255, 255, 255, 0.1);
}
.login__img > img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}
.login__text {
  padding: 0 10px;
  font-weight: 500;
  font-size: 18px;
  line-height: 23px;
  color: #fff;
}
/* End */


/* Start:/local/templates/main/css/footer.css?17857668752036*/
.footer {
  margin: 0;
  padding: 100px 0 78px;
  background: linear-gradient(180deg, #151719 0%, #373738 100%);
  border-top: 2px solid rgba(255, 255, 255, 0.1);
}
.footer__wrapper {
  display: flex;
  flex-direction: column;
  gap: 104px;
}
.footer__map {
  width: 100%;
  height: 506px;
  filter: brightness(0.8);
}
.footer__inner {
  display: grid;
  grid-template-columns: 3fr 2fr 2fr 2fr 3fr;
  column-gap: 24px;
  row-gap: 50px;
}
.footer__contacts {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.footer__logo {
  margin-bottom: 20px;
}

.footer__menu {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.footer__menutitle {
  margin-bottom: 16px;
  font-weight: 500;
  font-size: 20px;
  line-height: 27px;
  color: #fff;
}
.footer__menuitem {
  font-weight: 500;
  font-size: 16px;
  line-height: 22px;
  color: #fff;
}
.footer__info {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.footer__text {
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  color: #fff;
}
.footer__bottom {
  grid-column: 1 / 6;
  display: flex;
  flex-wrap: wrap;
  column-gap: 50px;
  row-gap: 14px;
}
@media (max-width:1600px) {
  .footer {
    padding: 100px 0 34px;
  }
  .footer__wrapper {
    gap: 101px;
  }
  .footer__map {
    height: 505px;
  }
  .footer__inner {
    grid-template-columns: 2fr 1fr 1fr 1fr;
  }
  .footer__info,
  .footer__bottom {
    grid-column: 1 / 5;
  }
}
@media (max-width:992px) {
  .footer {
    padding: 50px 0 25px;
  }
  .footer__wrapper {
    gap: 60px;
  }
  .footer__inner {
    grid-template-columns: repeat(3, 1fr);
  }
  .footer__contacts,
  .footer__info,
  .footer__bottom {
    grid-column: 1/4;
  }
}
@media (max-width:640px) {
  .footer {
    padding: 50px 0 40px;
  }
  .footer__inner {
    grid-template-columns: repeat(2, 1fr);
  }
  .footer__contacts,
  .footer__info,
  .footer__bottom,
  .footer__menu--wide {
    grid-column: 1/3;
  }
}
/* End */


/* Start:/local/templates/main/css/pickdocs.css?17853312721425*/
.pickdocs {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.pickdocs__item {
  position: relative;
  padding: 24px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background: rgba(255, 255, 255, 0.1);
}
.pickdocs__tag {
  position: relative;
  margin-bottom: 244px;
  padding: 9px;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.5);
  font-weight: 500;
  font-size: 14px;
  line-height: 20px;
  color: rgba(255, 255, 255, 0.8);
  z-index: 1;
}
.pickdocs__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  max-height: 308px;
  object-fit: contain;
}
.pickdocs__img--transparent {
  opacity: 0.5;
}
.pickdocs__inner {
  position: relative;
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
  z-index: 1;
}
@media (max-width:1250px) {
  .pickdocs {
    grid-template-columns: repeat(3, 384px);
    overflow-x: auto;
  }
  .pickdocs__tag {
    margin-bottom: 145px;
  }
  .pickdocs__img {
    top: 24px;
    max-height: 209px;
  }
}
@media (max-width:640px) {
  .pickdocs {
    grid-template-columns: repeat(3, 300px);
  }
  .pickdocs__item {
    padding: 12px;
  }
  .pickdocs__tag {
    margin-bottom: 69px;
  }
  .pickdocs__img {
    top: 10px;
    left: 10px;
    width: calc(100% - 20px);
    max-height: 180px;
  }
}
/* End */


/* Start:/local/templates/main/css/stages.css?17853220481031*/
.stages {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
.stages__item {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  background-color: rgba(255, 255, 255, 0.1);
}
.stages__icon {
  margin: 0 0 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.5);
}
.stages__icon > img {
  width: 24px;
  height: 24px;
}
.stages__img {
  width: 100%;
  min-height: 268px;
  background-color: rgba(255, 255, 255, 0.1);
}
@media (max-width:1600px) {
  .stages__img {
    min-height: 250px;
  }
}
@media (max-width:1250px) {
  .stages {
    grid-template-columns: repeat(4, 282px);
    overflow-x: auto;
  }
}
@media (max-width:640px) {
  .stages {
    grid-template-columns: repeat(4, 280px);
    gap: 12px;
  }
  .stages__item {
    padding: 12px;
  }
  .stages__img {
    min-height: 240px;
  }
}
/* End */


/* Start:/local/templates/main/css/getcalc.css?17864367142741*/
.getcalc {
  padding: 48px;
  display: flex;
  gap: 40px;
  background: linear-gradient(96.13deg, rgba(53, 53, 55, 0.5) 0%, rgba(102, 102, 102, 0) 99.93%);
}
.getcalc__left {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: 40px;
}
.getcalc__header {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.getcalc__title {
  margin: 0;
  font-weight: 500;
  font-size: 55px;
  line-height: 61px;
  letter-spacing: -0.03em;
  color: #fff;
}
.getcalc__text {
  margin: 0;
  font-weight: 500;
  font-size: 16px;
  line-height: 18px;
  letter-spacing: -0.03em;
  color: #fff;
}
.getcalc__list {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
  list-style-type: none;
}
.getcalc__item {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 20px;
  font-weight: 500;
  font-size: 18px;
  line-height: 26px;
  color: rgba(255, 255, 255, 0.8);
}
.getcalc__form {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  gap: 40px;
  width: 678px;
}
.getcalc__inputs {
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 100%;
}
.getcalc__label {
  display: flex;
  flex-direction: column;
  gap: 12px;
  font-weight: 500;
  font-size: 14px;
  line-height: 100%;
  color: rgba(255, 255, 255, 0.8);
}
.getcalc__input,
.getcalc__input:focus {
  padding: 19px 9px;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.5);
  font-weight: 400;
  font-size: 18px;
  line-height: 26px;
  color: rgba(255, 255, 255, 0.8);
}
.getcalc__input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.getcalc__bottom {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.getcalc__button {
  justify-content: center;
  width: 100%;
  border-color: #e34d2a !important;
}
.getcalc__policy {
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #fff;
}
.getcalc__policy > a {
  color: #fff;
}
@media (max-width:1600px) {
  .getcalc {
    padding: 26px;
  }
  .getcalc__title {
    font-size: 35px;
    line-height: 39px;
  }
  .getcalc__item {
    font-size: 16px;
    line-height: 23px;
  }
  .getcalc__form {
    width: 480px;
  }
  .getcalc__input,
  .getcalc__input:focus {
    padding: 20px 9px;
    font-size: 16px;
    line-height: 24px;
  }
  .getcalc__policy {
    font-size: 10px;
    line-height: 15px;
  }
}
@media (max-width:992px) {
  .getcalc {
    flex-direction: column;
  }
  .getcalc__title {
    font-size: 25px;
    line-height: 28px;
  }
  .getcalc__form {
    width: 100%;
  }
}
@media (max-width:640px) {
  .getcalc {
    padding: 12px;
    gap: 24px;
  }
}
/* End */


/* Start:/local/templates/main/css/animate.css?1787235392671*/
.scroll-animate {
    opacity: 0;
    transform: translateY(60px);
    transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.scroll-animate.visible {
    opacity: 1;
    transform: translateY(0);
}
.scroll-animate.left {
    transform: translateX(-60px);
}

.scroll-animate.left.visible {
    transform: translateX(0);
}
.scroll-animate.right {
    transform: translateX(60px);
}

.scroll-animate.right.visible {
    transform: translateX(0);
}
.scroll-animate.zoom {
    transform: scale(0.8) translateY(40px);
}

.scroll-animate.zoom.visible {
    transform: scale(1) translateY(0);
}
/* End */


/* Start:/local/templates/main/components/bitrix/menu/services_menu_popup/style.css?1785754483220*/
#popup-menu {
  flex-direction: row;
  max-width: unset;
}
.catalog-submenu {
  position: static;
  flex-direction: column;
  flex-shrink: 0;
  overflow-y: auto;
}
.catalog-submenu.active {
  display: flex;
}
/* End */
/* /local/templates/main/css/style.css?178574357743308 */
/* /local/templates/main/css/redesign.css?17866289834181 */
/* /local/templates/main/css/header.css?17858276843902 */
/* /local/templates/main/css/footer.css?17857668752036 */
/* /local/templates/main/css/pickdocs.css?17853312721425 */
/* /local/templates/main/css/stages.css?17853220481031 */
/* /local/templates/main/css/getcalc.css?17864367142741 */
/* /local/templates/main/css/animate.css?1787235392671 */
/* /local/templates/main/components/bitrix/menu/services_menu_popup/style.css?1785754483220 */
