

/* Start:/local/templates/main/css/style.css?177936853844055*/
: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: 66%;
    object-fit: cover;
    max-height: 550px;
}

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 32px 32px 32px;
    gap: 8px;
}
.popup-menu a{
    width: 480px;
    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;
    }
}

@media screen and (max-width: 1240px){
    .header-fixed .menu{
        display: none;
    }
    .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);
    }
}

#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);
}

/* End */
/* /local/templates/main/css/style.css?177936853844055 */
