* {
    box-sizing: border-box;
}

html {
    overflow-x: hidden;
}

body {
    font-family: 'Inter';
    font-style: normal;
    color: #040F10;
    background: #FFFFFF;
}

body.openned_popup,
html.openned_popup {
    overflow: hidden;
}

/* Privacy policy */
.policy-page .header_top {
    background-color: #243445;
}

.policy-hero {
    padding: 190px 0 96px;
    background: #243445;
}

.policy-container {
    width: min(1317px, calc(100% - 64px));
    margin: 0 auto;
}

.policy-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 64px;
    color: rgba(255, 255, 255, .65);
    font-size: 14px;
    line-height: 20px;
}

.policy-breadcrumbs a {
    color: #CDAF84;
}

.policy-eyebrow {
    margin-bottom: 18px;
    color: #CDAF84;
    font-size: 13px;
    line-height: 18px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.policy-hero h1 {
    max-width: 980px;
}

.policy-lead {
    max-width: 760px;
    margin-top: 32px;
    color: rgba(255, 255, 255, .78);
    font-size: 20px;
    line-height: 32px;
}

.policy-content {
    padding: 120px 0;
    background: #F4F2EE;
}

.policy-card {
    display: grid;
    grid-template-columns: minmax(280px, .8fr) minmax(0, 1.5fr);
    gap: 80px;
    padding: 64px;
    border-radius: 5px;
    background: #FFFFFF;
}

.policy-card-heading h2 {
    font-size: 36px;
    line-height: 44px;
}

.policy-details {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 40px;
    margin: 0;
}

.policy-detail {
    min-width: 0;
    padding: 22px 0;
    border-bottom: 1px solid #E1E3E4;
}

.policy-detail-wide {
    grid-column: 1 / -1;
}

.policy-detail dt {
    margin-bottom: 9px;
    color: #888D91;
    font-size: 14px;
    line-height: 20px;
}

.policy-detail dd {
    margin: 0;
    color: #243445;
    font-size: 17px;
    line-height: 27px;
    font-weight: 600;
    overflow-wrap: anywhere;
}

.policy-page .btn_to_top {
    padding: 0;
    border: 0;
}

@media (max-width: 900px) {
    .policy-container {
        width: min(100% - 40px, 680px);
    }

    .policy-hero {
        padding: 150px 0 72px;
    }

    .policy-breadcrumbs {
        margin-bottom: 42px;
    }

    .policy-hero h1 {
        font-size: 38px;
        line-height: 46px;
    }

    .policy-content {
        padding: 72px 0;
    }

    .policy-card {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 40px;
    }
}

@media (max-width: 600px) {
    .policy-container {
        width: calc(100% - 30px);
    }

    .policy-hero {
        padding: 125px 0 52px;
    }

    .policy-breadcrumbs {
        margin-bottom: 34px;
    }

    .policy-hero h1 {
        font-size: 30px;
        line-height: 37px;
        overflow-wrap: anywhere;
    }

    .policy-lead {
        margin-top: 24px;
        font-size: 17px;
        line-height: 27px;
    }

    .policy-content {
        padding: 48px 0;
    }

    .policy-card {
        gap: 18px;
        padding: 28px 20px;
    }

    .policy-card-heading h2 {
        font-size: 28px;
        line-height: 35px;
    }

    .policy-details {
        grid-template-columns: 1fr;
    }

    .policy-detail-wide {
        grid-column: auto;
    }
}

main {
    overflow: hidden;
    width: 100vw;
}

a {
    cursor: pointer;
    text-decoration: none;
    font-family: 'Inter';
    font-style: normal;
}

/*
::-webkit-scrollbar {
    width: 0;
}

::-webkit-scrollbar {
    height: 0;
}

* {
    scrollbar-width: none;
}*/

p {
    margin: 0;
}

h1,
h2 {
    margin: 0;
    font-size: 48px;
    line-height: 54px;
    font-weight: 500;
    font-family: 'Halvar Breitschrift';
    color: #243445;
    font-style: normal;
    text-transform: uppercase;
}

h1 {
    color: #FFFFFF;
}


.section {
    padding-left: calc((100% - 1317px) / 2);
    padding-right: calc((100% - 1317px) / 2);
    padding-top: 120px;
    padding-bottom: 120px;
}

.btn {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #CDAF84;
    color: #FFFFFF;
    height: 64px;
    width: 288px;
    border-radius: 5px;
    font-size: 18px;
    line-height: 18px;
    font-weight: 700;
}

.arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 54px;
    max-width: 54px;
    height: 54px;
    border: 1px solid #CDAF84;
    border-radius: 5px;
    cursor: pointer;
    transition: all linear .3s;
}

.arrow svg path {
    transition: all linear .3s;
}

.arrow:hover svg path {
    fill: #FFFFFF;
}

.arrow:hover {
    background-color: #CDAF84;
}

/*Header*/

header {
    position: fixed;
    top: 0;
    z-index: 95;
    width: 100%;
    min-width: 100vw;
    transition: all linear .3s;
}

.header_main,
.header_top {
    padding-left: calc((100% - 1317px) / 2);
    padding-right: calc((100% - 1317px) / 2);
}

.header_top {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    padding-top: 18px;
    padding-bottom: 18px;
    position: relative;
    z-index: 2;
    background-color: rgba(36, 52, 69, .85);
}

.header_top_menu {
    display: flex;
    flex: 1 1 auto;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 8px 14px;
    min-width: 0;
}

.header_top_menu a {
    color: #FFFFFF;
    font-size: 14px;
    line-height: 18px;
    font-weight: 600;
    white-space: nowrap;
    transition: color linear .3s;
}

.header_top_menu a:hover {
    color: #CDAF84;
}

.header_main {
    display: block;
    background-color: rgba(15, 32, 51, 0.85);
    height: 430px;
    position: absolute;
    width: 100vw;
    top: 0;
    padding-top: 116px;
    padding-bottom: 40px;
    transform: translateY(-100%);
    transition: ease-in-out .7s;
}

.header_main.active {
    transform: translateY(-0%);
}

.header_menu {
    display: flex;
    flex-direction: column;
    gap: 25px;
    flex-wrap: wrap;
    height: 100%;
    max-width: 466px;
    opacity: 0;
    transition: ease-in-out 1s;
}

.header_main.active .header_menu {
    opacity: 1;
}

.header_menu a {
    color: #FFFFFF;
    font-size: 18px;
    line-height: 28px;
    font-weight: 700;
    max-width: 195px;
}




.menu_btn {

    align-items: center;
    justify-content: center;
    cursor: pointer;
    width: 40px;
    height: 40px;
    display: none;
}

.menu_btn svg {
    display: none;
}

.menu_btn svg.active {
    display: block;
}

.header_top_left,
.header_top_right,
.header_phone {
    display: flex;
    flex-direction: row;
    gap: 30px;
    align-items: center;
}

.header_top_right {
    gap: 20px;
    flex-shrink: 0;
}

.header_logo {
    width: 225px;
}

.header_logo img {
    width: 100%;
    height: auto;
}

.header_phone {
    gap: 5px;
    color: #FFFFFF;
    font-size: 16px;
    line-height: 16px;
    font-weight: 700;
}

.header_btn {
    height: 52px;
    width: 191px;
}

/*Баннер*/

.top_banner {
    padding: 0 !important;
    min-height: 100vh;
    max-height: 100vh;
    background-image: url(../img/top_banner_bg.jpg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}

.top_banner_content {
    /*background: linear-gradient(90deg, #243445 41.91%, rgba(36, 52, 69, 0) 87.61%);*/
    min-height: 100vh;
    padding-left: calc((100% - 1317px) / 2);
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 55%;
}

.top_banner_desc {
    color: #FFFFFF;
    font-size: 18px;
    line-height: 28px;
    font-weight: 400;
    margin-top: 20px;
}

.top_banner_btn {
    margin-top: 40px;
}

.btn svg {
    margin-left: 7px;
    margin-right: -5px;
    margin-top: 3px;
}

/*О компании*/
.about_company_desc {
    font-size: 18px;
    line-height: 28px;
    font-weight: 400;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.about_company_row {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 80px;
    margin-top: 50px;
}

.about_link {
    margin-top: 10px;
    height: 54px;
    width: 197px;
}

.about_company_list {
    margin-top: 80px;
    display: flex;
    flex-direction: row;
    gap: 30px;
    flex-wrap: wrap;
    justify-content: space-between;
}

.about_company_img {
    min-width: 46%;
    max-width: 46%;
    border-radius: 30px;
    overflow: hidden;
}

.about_company_img img {
    width: 100%;
    height: auto;
}

.about_company_item,
.about_company_list .about_company_img {
    min-width: 31.5%;
    max-width: 31.5%;
}

.about_company_item {
    border-radius: 20px;
    padding: 50px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    border: 1px solid #8A8A8A;
}

.about_company_item_num {
    color: #CDAF84;
    font-weight: 700;
    font-size: 80px;
    line-height: 97px;
    letter-spacing: -1px;
}

.about_company_item_num b {
    font-weight: 700;
    font-size: 48px;
    line-height: 58px;
}

.about_company_item_desc {
    font-weight: 600;
    font-size: 28px;
    line-height: 34px;
}

/*Услуги*/
.services {
    background-color: #243445;
    position: relative;
    padding-bottom: 160px;
}

.bg_top,
.bg_bottom {
    min-width: 50vw;
    min-height: 80vw;
    background: radial-gradient(50.72% 41.34% at 24.48% 17.06%, #5A6D84 0%, rgba(36, 52, 69, 0) 100%);
    position: absolute;
}

.bg_top {
    right: 0;
    top: -15vw;
    rotate: 90deg;
}

.bg_bottom {
    left: 0;
    bottom: -15vw;
    rotate: 270deg;
}

.services_content h2 {
    color: #FFFFFF;
    text-align: center;
}

.services_content {
    position: relative;
    z-index: 3;
}

.services_desc {
    color: #FFFFFF;
    font-size: 18px;
    line-height: 28px;
    font-weight: 400;
    text-align: center;
    margin-top: 50px;
}

.services_tabs {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 20px;
    margin-top: 50px;
}

.services_tabs div {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    width: 217px;
    height: 54px;
    transition: all linear .3s;
    border-radius: 5px;
    border: 1px solid #CDAF84;
    color: #FFFFFF;
    font-weight: 500;
    font-size: 16px;
    line-height: 16px;
    cursor: pointer;
}

.services_tabs div.active,
.services_tabs div:hover {
    background-color: #CDAF84;
}

.services_block_content {
    margin-top: 40px;
}

.services_block_content .services_block {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 30px;
    justify-content: space-between;
    opacity: 0;
    height: 0;
    overflow: hidden;
}

.services_block_content .services_block.active {
    height: fit-content;
    opacity: 1;
    overflow: visible;
}

.services_item_height {
    max-height: 123px;
    max-width: 48.6%;
    min-width: 48.6%;
    overflow: hidden;
    transition: all ease-in .5s;
    position: relative;
}

.services_item {
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 30px;
    padding: 30px;
    display: flex;
    cursor: pointer;
    transition: all ease-in .5s;
    height: 123px;
}

.services_item svg {
    min-width: 60px;
}

.services_item_title {
    color: #FFFFFF;
    font-size: 22px;
    font-weight: 600;
    line-height: 32px;
    letter-spacing: -1px;
    min-height: 96px;
    transition: all linear .2s;
    flex-direction: row;
    gap: 20px;
    display: flex;
}

.services_item_desc {
    margin-top: 10px;
    font-size: 18px;
    line-height: 28px;
    color: #040F10;
}

.services_item_link {
    display: flex;
    gap: 5px;
    flex-direction: row;
    align-items: center;
    margin-top: 20px;
    font-size: 18px;
    font-weight: 700;
    color: #CDAF84;
}

.services_item_link svg {
    min-width: 24px;
}

.services_item_height:hover {
    overflow: visible;
    z-index: 2;
}

.services_item_height:hover .services_item {
    background-color: #FFFFFF;
    height: fit-content;
    box-shadow: 0px 4px 22px 0px #00000026;

}

.services_item_height:hover svg.icon path {
    stroke: #243445;
}

.services_item_height:hover svg.fill path {
    fill: #243445;
}

.services_item_height:hover .services_item_title {
    min-height: fit-content;
    color: #243445;
}

/*Наша команда*/
.team {
    background-image: url(../img/team_bg.jpg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}

.team_main_row {
    display: flex;
    justify-content: space-between;
    gap: 60px;
    margin-top: 50px;
}

.team_main_info,
.team_main_desc.additionally {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.team_main_desc.additionally {
    gap: 15px;
    margin-top: 12px;
}

.team_main_desc.additionally b {
    font-weight: 600;
}

.team_main_name {
    font-size: 27px;
    font-weight: 600;
    line-height: 32px;
}

.img_line {
    width: 60px;
    height: 5px;
}

.team_main_job {
    margin-top: -10px;
    font-size: 18px;
    font-weight: 600;
    line-height: 28px;
}

.team_main_desc {
    font-size: 18px;
    line-height: 28px;
}

.team_main_img {
    border-radius: 30px;
    overflow: hidden;
    min-width: 42.5%;
    max-width: 42.5%;
}

.team_main_img img {
    width: 100%;
    height: auto;
}

.team_slider_content,
.reviews_slider_content {
    position: relative;
    margin-top: 80px;
}

.reviews_slider_content .arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.team_slider_content .arrow {
    position: absolute;
    top: 33%;
    transform: translateY(-67%);
}

.team_slider_content .arrow_prev,
.reviews_slider_content .arrow_prev {
    left: -84px;
}

.team_slider_content .arrow_next,
.reviews_slider_content .arrow_next {
    right: -84px;
}

.team_slider .slick-track {
    display: flex !important;
    gap: 30px;
}

.team_slider .slick-slide,
.team_slide {
    min-width: 419px;
    max-width: 419px;
}

.team_slide {
    display: flex !important;
    flex-direction: column;
    gap: 20px;
}

.team_slide_name {
    margin-top: 10px;
    font-weight: 600;
    font-size: 26px;
    line-height: 32px;
}

.team_slide_img {
    width: 100%;
    border-radius: 30px;
    overflow: hidden;
}

.team_slide_img img {
    width: 100%;
    height: auto;
}

.team_slide_job {
    margin-top: -10px;
    font-weight: 600;
    font-size: 18px;
    line-height: 28px;
}

.team_slide_desc {
    font-size: 18px;
    line-height: 28px;
}

/*Преимущества*/
.advantages_row {
    display: flex;
    flex-direction: row;
    gap: 30px;
    justify-content: space-between;
    margin-top: 50px;
    align-items: center;
}

.advantages_list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px;
}

.advantages_item {
    min-width: 47.5%;
    max-width: 47.5%;
    padding: 40px;
    border: 1px solid #8A8A8A;
    border-radius: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.advantages_item img {
    width: 85px;
    height: 85px;
}

.advantages_item_desc {
    font-size: 18px;
    line-height: 28px;
    letter-spacing: -.5px;
}

.advantages_item_title {
    font-weight: 600;
    font-size: 26px;
    line-height: 32px;
}

.advantages_img {
    display: flex;
    align-items: center;
    min-width: 31.9%;
    max-width: 31.9%;
}

.advantages_img img {
    width: 100%;
    height: auto;
}

/*Блок с формой*/
.block_with_form {
    padding-right: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    background-color: #243445;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    min-height: 595px;
}

.block_with_form_content h2,
.block_with_form_desc {
    color: #FFFFFF;
}

.block_with_form_img {
    height: 100%;
    margin-bottom: -5px;
}

.block_with_form_img img {
    height: 100%;
    width: auto;
}

.block_with_form_desc {
    line-height: 28px;
    font-size: 18px;
}

.block_with_form_content {
    display: flex;
    flex-direction: column;
    padding: 70px;
    padding-bottom: 75px;
    padding-left: 0;
    justify-content: center;
    gap: 20px;
}

.block_with_form_btn {
    margin-top: 10px;
}

/*Выигранные дела*/

.cases_row {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 60px;
    margin-top: 45px;
}

.cases_link_btn {
    width: 176px;
    min-width: 176px;
}

.cases_row p {
    max-width: 650px;
    font-size: 18px;
    line-height: 28px;
}

.cases_filter {
    margin-top: 50px;
    display: flex;
    gap: 25px;
    justify-content: space-between;
    max-width: 100%;
}

.cases_filter_items {
    display: flex;
    gap: 25px;
    overflow-x: scroll;
    transition: all linear .3s;
    -webkit-overflow-scrolling: touch;
}

.cases_filter_items::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.cases_filter_items a {
    height: 54px;
    width: max-content;
    padding-left: 20px;
    padding-right: 20px;
    display: flex;
    align-items: center;
    border: 1px solid #CDAF84;
    border-radius: 5px;
    transition: all linear .3s;
;
    color: #243445;
    font-weight: 500;
    font-size: 16px;
    line-height: 19.5px;
    white-space: nowrap
}

.cases_filter_items a.active,
.cases_filter_items a:hover {
    background-color: #CDAF84;
    color: #FFFFFF;
}

.cases_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 50px;
    gap: 40px;
}

.cases_item {
    min-width: 31%;
    max-width: 31%;
    padding: 30px;
    cursor: pointer;
    border-radius: 30px;
    border: 1px solid #8A8A8A;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.cases_item img {
    width: 80px;
    height: auto;
}

.cases_theme {
    margin-top: 5px;
    background-color: #F7F2EB;
    padding: 5px 10px;
    border-radius: 5px;
    color: #BB9D72;
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    width: fit-content;
}

.cases_link {
    margin-top: 15px;
    display: flex;
    align-items: center;
    color: #CDAF84;
    font-weight: 700;
    font-size: 18px;
    line-height: 28px;
    gap: 7px;
}

.cases_title {
    font-weight: 600;
    font-size: 26px;
    line-height: 32px;
}

.cases_desc {
    font-size: 18px;
    line-height: 24px;
}

/*Этапы работы*/

.stages_work{
    padding-top: 0 !important;
}

.stages_work_list {
    display: flex;
    flex-direction: row;
    gap: 40px;
    flex-wrap: wrap;
    margin-top: 50px;
    justify-content: space-between;
}

.stages_work_item {
    min-width: 48.3%;
    max-width: 48.3%;
    border-radius: 30px;
    border: 1px solid #8A8A8A;
    padding: 40px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.stages_work_row,
.stages_work_left {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}

.stages_work_left {
    gap: 20px;
}

.stages_work_name {
    font-size: 26px;
    line-height: 32px;
    font-weight: 600;
    letter-spacing: -.5px;
}

.stages_work_left img {
    min-width: 85px;
}

.stages_work_num {
    font-family: 'Halvar Breitschrift';
    font-size: 115px;
    font-weight: 500;
    line-height: 90px;
    max-height: 85px;
    color: #F2F1EF;
}

.stages_work_desc{
    font-size: 18px;
    line-height: 28px;
}

/*Отзывы*/
.reviews {
    background-image: url(../img/reviews_bg.jpg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}

.reviews_content h2 {
    text-align: center;
}

.reviews_desc {
    margin-top: 50px;
    text-align: center;
    font-size: 18px;
    line-height: 28px;
}

.reviews_slider_content {
    margin-top: 40px;
}

.review_desc {
    font-size: 18px;
    line-height: 28px;
}

.review_author {
    display: flex;
    align-items: center;
    gap: 15px;
    justify-content: end;
    margin-top: auto;
    margin-bottom: -5px;
}

.review_author_name {
    font-weight: 600;
    font-size: 20px;
    line-height: 30px;
}

.reviews_slider .slick-slide,
.reviews_slide {
    min-width: 645px;
    max-width: 645px;
}

.slick-track {
    display: flex !important;
    gap: 30px;
}

.reviews_slide,
.review_info {
    position: relative;
}

.reviews_slide {
    overflow: visible;
    margin-top: 30px;
    margin-bottom: 60px;
}

.review_bg {
    position: absolute;
    top: 0;
    left: 0;
    height: calc(100% + 60px);
    width: 100%;
}

.quote {
    position: absolute;
    z-index: 2;
    right: 40px;
    top: -30px;
}

.review_bg img {
    height: 100%;
    width: 100%;
}

.review_info {
    z-index: 3;
    padding: 50px;
    min-height: 260px;
    display: flex;
    flex-direction: column;
}

.review_desc {
    font-size: 18px;
    line-height: 28px;
    margin-bottom: 26px;
}

/*Нам доверяют*/
.trust_us_content h2 {
    text-align: center;
}

.trust_us_slider_content {
    display: flex;
    flex-direction: column;
    gap: 30px;
    margin-top: 50px;
}

.trust_us_arrows {
    display: flex;
    justify-content: center;
    gap: 15px;
}

.trust_us_slider .slick-track {
    display: flex !important;
    gap: 60px;
}

.trust_us_slider .slick-slide,
.trust_us_slide {
    min-width: 170px;
    height: 170px;
    max-width: 170px;
}

.trust_us_slide {
    display: flex !important;
    align-items: center;
    justify-content: center;
}

/*Контакты*/
.contacts {
    padding: 0 !important;
    position: relative;
}

.map {
    min-width: 100vw;
    max-height: 650px;
    overflow: hidden;
}

.map iframe {
    width: 99.4% !important;
    height: auto !important;
    min-height: 650px;
}

.contacts_info {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: calc((100% - 1317px) / 2);
    width: 425px;
    background-color: #FFFFFF;
    border-radius: 20px;
    padding: 40px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.contacts_info h2 {
    margin-bottom: 10px;
    font-size: 26px;
    line-height: 32px;
    font-weight: 600;
    font-family: 'Inter';
    text-transform: none;
}

.contacts_phones {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.contacts_phone {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 18px;
    line-height: 28px;
    font-weight: 700;
    color: #040F10;
}

.contacts_address,
.working_time {
    color: #040F10;
    font-size: 18px;
    line-height: 28px;
}

/*Footer*/
footer {
    background-color: #243445;
    padding-left: calc((100% - 1317px) / 2);
    padding-right: calc((100% - 1317px) / 2);
    padding-top: 50px;
    padding-bottom: 40px;
    position: relative;
}

.footer_content,
.footer_name_col {
    display: flex;
}

.footer_name_col {
    flex-direction: column;
    gap: 35px;
}

.footer_logo {
    width: 225px;
}

.footer_logo img {
    width: 100%;
    height: auto;
}

.footer_name_col p {
    color: #FFFFFF !important;
    text-decoration: none;
    font-size: 18px;
    line-height: 28px;
}

.footer_menu {
    display: flex;
    flex-wrap: wrap;
    column-gap: 80px;
    row-gap: 20px;
    flex-direction: column;
    max-height: 200px;
    margin-left: 100px;
}

.footer_menu a {
    color: #FFFFFF;
    font-size: 18px;
    line-height: 18px;
    font-weight: 600;
    max-height: 20px;
}

.footer_col_contacts {
    margin-left: auto;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.footer_phone {
    display: flex;
    gap: 5px;
    margin-bottom: -20px;
    align-items: center;
    color: #FFFFFF;
    font-size: 24px;
    line-height: 32px;
    font-weight: 600;
}

.mail_address {
    color: #CDAF84;
    line-height: 28px;
    font-size: 18px;
    font-weight: 600;
}

.footer_btn {
    height: 52px;
    width: 191px;
}

.footer_social_links {
    display: flex;
    gap: 30px;
}

.footer_bottom_row {
    margin-top: 50px;
    border-top: 1px solid rgba(255, 255, 255, 0.4);
    padding-top: 30px;
    justify-content: space-between;
    display: flex;
}

.copyright,
.dev,
.policy {
    font-size: 18px;
    line-height: 28px;
    color: #FFFFFF;
}

.dev a,
.policy {
    color: #CDAF84;
    font-weight: 500;
}

.footer_bottom p {
    margin-top: 20px;
    color: rgba(255, 255, 255, .3);
    font-size: 16px;
    line-height: 24px;
}

.dev {
    margin-right: 70px;
}

.btn_to_top {
    position: absolute;
    right: calc((100% - 1317px) / 2);
    bottom: 85px;
    cursor: pointer;
}

/*Попап*/
.popup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.45);
}

.popup.active {
    display: block;
}

.popup_form_content,
.popup_successful_content {
    border-radius: 30px;
    width: 635px;
    height: fit-content;
    padding: 50px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    position: relative;
    background-color: #FFFFFF;
}

.popup_close {
    position: absolute;
    top: 30px;
    right: 30px;
    cursor: pointer;
}

.form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.form_message {
    color: #18753b;
    font-size: 16px;
    line-height: 24px;
}

.form_message_error {
    color: #b42318;
}

.popup_form_title {
    font-weight: 600;
    font-size: 32px;
    line-height: 40px;
    margin-bottom: 20px;
}

.popup_form_desc {
    font-size: 18px;
    line-height: 28px;
    margin-bottom: 20px;
}

.form input[type='text'],
.form input[type='phone'],
.form input[type='email'] {
    width: 100%;
    background-color: #FAFAFA;
    border: 1px solid #E5E5E5;
    display: flex;
    align-items: center;
    font-family: 'Inter';
    font-weight: 400;
    font-size: 18px;
    line-height: 28px;
    color: #040F10;
    padding: 15px;
    border-radius: 10px;
}

.form input[type='submit'] {
    height: 64px;
    width: 100%;
    border: none;
    margin-top: 5px;
    border-radius: 5px;
    color: #FFFFFF;
}

.form input[type='text']:focus,
.form input[type='text']:hover,
.form input[type='phone']:focus,
.form input[type='phone']:hover,
.form input[type='email']:focus,
.form input[type='email']:hover {
    border: 1px solid #8A8A8A;
    background-color: #FFFFFF;
    color: #040F10;
}

.form input[type='text']::placeholder,
.form input[type='phone']::placeholder,
.form input[type='email']::placeholder {
    font-weight: 400;
    font-size: 18px;
    line-height: 28px;
    color: #4D5C60;
    font-family: 'Inter';
}

.form p {
    min-width: 100%;
    width: 100%;
}

.form-checkbox {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 45px;
    position: relative;
    margin-top: 5px;
}

.custom-checkbox {
    position: absolute;
    z-index: -1;
    opacity: 0;
    width: 20px !important;
    max-height: 20px;
}

.custom-checkbox+label {
    display: inline-flex;
    align-items: start;
    user-select: none;
}

.custom-checkbox+label::before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 15px;
    flex-shrink: 0;
    flex-grow: 0;
    margin-right: 0.5em;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 50% 50%;
    cursor: pointer;
    border: none;
    background-color: #243445;
    border-radius: 0;
    transition: all linear .3s;
    align-items: center;
    display: flex;
    justify-content: center;
    margin-right: 15px;
    position: absolute;
    padding: 2px;
    padding-top: 3px;
    border-radius: 3px;
    margin-top: 7px;
}

.custom-checkbox:checked+label::before {
    background: url(../img/check.svg) center / auto no-repeat, #FFFFFF;
    color: #FFFFFF;
    text-align: center;
    vertical-align: middle;
    height: 15px;
}

.form-checkbox label p {
    font-size: 16px;
    line-height: 24px;
    margin-left: 30px;
    font-family: 'Inter';
    color: #040F10;
}

.form-checkbox label p a {
    border-bottom: 1px solid #040F10;
    color: #040F10;
    transition: all linear .3s;
}

.popup_successful_content {
    width: 478px;
}

.popup_successful_title,
.popup_successful_desc {
    text-align: center;
}

.popup_successful_title {
    font-size: 32px;
    line-height: 40px;
    font-weight: 600;
    margin-bottom: 20px;
}

.popup_successful_desc {
    font-size: 18px;
    line-height: 28px;
}

.popup_successful_content .popup_close {
    top: 20px;
    right: 20px;
}

/*Анимация*/
.btn,
.header_menu a,
.header_phone,
.header_phone svg path,
.popup_close svg rect,
.contacts_phone,
.footer_phone,
.contacts_phone svg path,
.footer_phone svg path,
.contacts_address,
.footer_menu a,
.mail_address,
.policy,
.dev a,
.footer_social_links a svg path,
.btn_to_top path {
    transition: all linear .3s;
}

.cases_item,
.cases_item .cases_link,
.cases_item .cases_link svg path {
    transition: ease-out .5s;
}

.btn:hover {
    background-color: #BB9B6C;
}

.header_menu a:hover,
.header_phone:hover,
.contacts_phone:hover,
.footer_phone:hover,
.contacts_address:hover,
.footer_menu a:hover {
    color: #CDAF84;
}

.mail_address:hover,
.policy:hover,
.dev:hover a {
    color: #ffffff;
}

.popup_close:hover svg rect {
    fill: #4D5C60;
}

.form-checkbox label p a:hover {
    color: #BB9B6C;
    border-bottom: 1px solid #BB9B6C;
}

.header_phone:hover svg path,
.contacts_phone:hover svg path,
.footer_phone:hover svg path,
.footer_social_links a:hover svg path,
.btn_to_top:hover path {
    fill: #CDAF84;
;
}

.cases_item:hover {
    box-shadow: 0px 6px 50px 0px #DCDCDC;
    border: none;
}

.cases_item:hover .cases_link {
    color: #243445;
}

.cases_item:hover .cases_link svg path {
    stroke: #243445;
}

.team_slider_arrows.tablet,
.reviews_slider_arrows.tablet, .popup_successful_title br {
    display: none;
}

/*Навигация*/

ul.breadcrumbs {
    padding-top: 150px;
    padding-left: calc((100% - 1317px) / 2);
    padding-right: calc((100% - 1317px) / 2);
}

ul.breadcrumbs li {
    display: inline;
    font-size: 18px;
    line-height: 30px;
    font-weight: 500;
    font-family: 'Inter';
}

ul.breadcrumbs li+li:before {
    padding: 13px;
    color: #A3A8A9;
    content: ">";
}

ul.breadcrumbs li a {
    color: #A3A8A9;
    text-decoration: none;
    transition: all linear .3s;
}

ul.breadcrumbs li a:hover {
    color: #CDAF84;
}

/*О компании*/
.about_company_main{
    padding-top: 44px;
}

.about_company_desc_main{
    gap: 30px;
}

.about_company_col_main1, .about_company_col_main2{
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.about_company_col_main2{
    gap: 50px;
    min-width: 46%;
    max-width: 46%;
}

.about_company_desc_b{
    font-size: 26px;
    line-height: 38px;
    font-weight: 600;
}

.about_company_img_main {
    width: 100%;
    border-radius: 30px;
    overflow: hidden;
}

.about_company_img_main img{
    width: 100%;
    height: auto;
}

.about_company_row_main{
    align-items: start;
}

/*Услуги*/
.usluga_detail{
    padding-bottom: 0 !important;
}

.usluga_detail_row{
    background-color: #FAFAFA;
    border-radius: 10px;
    border: 1px solid #E5E5E5;
    padding: 47px 40px;
    display: flex;
    gap: 60px;
    justify-content: space-between;
    margin-top: 80px;
}

.usluga_detail_left{
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: 18px;
    line-height: 28px;
}

.usluga_detail_info{
    margin-top: 50px;
    display: flex;
    justify-content: space-between;
    gap: 80px;
    align-items: start;
}

.usluga_detail_desc{
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: 18px;
    line-height: 28px;
}

.usluga_detail_img{
    border-radius: 30px;
    overflow: hidden;
    min-width: 46%;
    max-width: 46%;
}

.usluga_detail_img img{
    width: 100%;
    height: auto;
}

.usluga_detail{
    padding-top: 44px;
}

.usluga_detail_btn{
    min-width: 317px;
}

/*Выигранное дело подробно*/
.case_detail{
    padding-top: 44px;
    padding-bottom: 0 !important;
}

.case_detail_row{
    display: flex;
    align-items: start;
    gap: 80px;
    margin-top: 40px;
}

.case_detail_desc_row{
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 40px;
    font-weight: 600;
    font-size: 20px;
    line-height: 28px;
}

.case_detail_info{
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.case_detail_desc{
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: 18px;
    line-height: 28px;
}

.case_detail_title{
    font-size: 26px;
    line-height: 32px;
    font-weight: 600;
}

.case_detail_link{
    display: flex;
    gap: 17px;
    align-items: center;
    padding: 20px;
    background-color: #FAFAFA;
    border-radius: 10px;
    border: 1px solid #E5E5E5;
    width: 100%;
}

.case_detail_link span{
    font-weight: 600;
    font-size: 18px;
    line-height: 22px;
    color: #BB9B6C;
    border-bottom: 1px solid #BB9B6C;
    transition: all linear .3s;
}

.case_detail_link span:hover{
    border-bottom: 1px solid transparent;
}

.case_detail_img{
    min-width: 40%;
    max-width: 40%;
}

.case_detail_img img{
    width: 100%;
    height: auto;
}

.case_detail_img {
    min-width: 31.5%;
    max-width: 31.5%;
}

@media screen and (max-width: 1500px) {

    .section,
    .header_main,
    .header_top,
    footer {
        padding-left: calc((100% - 1200px) / 2);
        padding-right: calc((100% - 1200px) / 2);
    }

    .top_banner_content {
        padding-left: calc((100% - 1200px) / 2);
    }

    .btn_to_top {
        right: calc((100% - 1200px) / 2);
    }

    .contacts_info {
        left: calc((100% - 1200px) / 2);
    }

    .block_with_form_img {
        height: auto;
    }

    .block_with_form {
        overflow: hidden;
    }

    .top_banner {
        background-position: 40% 50%;
    }

    .about_company_item_num {
        font-size: 70px;
        line-height: 87px;
    }

    .about_company_item_num b {
        font-size: 40px;
    }

    .about_company_item_desc {
        font-size: 25px;
        line-height: 32px;
    }

    .stages_work_num {
        font-size: 90px;
    }

    .block_with_form_content {
        min-width: 54%;
    }

    .reviews_slider .slick-slide,
    .reviews_slide {
        min-width: 585px;
        max-width: 585px;
    }


    .about_company_desc_b {
        font-size: 23px;
        line-height: 34px;
    }

    ul.breadcrumbs{
        padding-left: calc((100% - 1200px) / 2);
        padding-right: calc((100% - 1200px) / 2);
    }


}

@media screen and (max-width: 1400px) {
    .arrow.desc {
        display: none !important;
    }

    .team_slider_arrows.tablet,
    .reviews_slider_arrows.tablet {
        display: flex;
        flex-direction: row;
        justify-content: center;
        gap: 15px;
        margin-top: 40px;
    }

    .team_slider_arrows .arrow,
    .reviews_slider_arrows .arrow {
        position: static;
        transform: translateY(0);
    }

    .cases_filter_items {
        padding-bottom: 1px;
    }

    .usluga_detail_info{
        gap: 60px;
    }

}

@media screen and (max-width: 1300px) {

    .section,
    .header_main,
    .header_top,
    footer {
        padding-left: 60px;
        padding-right: 60px;
    }

    .top_banner_content {
        padding-left: 60px;
    }

    .btn_to_top {
        right: 60px;
    }

    .contacts_info {
        left: 60px;
    }

    .header_top {
        gap: 16px;
    }

    .header_top_menu {
        gap: 6px 10px;
    }

    .header_top_menu a {
        font-size: 13px;
        line-height: 17px;
    }

    .top_banner_content {
        max-width: 60%;
    }

    .about_company_item {
        padding: 35px;
    }

    .advantages_img {
        min-width: 29%;
        max-width: 29%;
    }

    h1,
    h2 {
        font-size: 44px;
        line-height: 52px;
    }

    .about_company_item_num {
        font-size: 68px;
        line-height: 85px;
    }

    .about_company_item_num b {
        font-size: 36px;
    }

    .services_item_title {
        font-size: 20px;
        line-height: 30px;
    }

    .services_item {
        padding: 25px;
        height: 112px;
    }

    .cases_item {
        min-width: 48%;
        max-width: 48%;
    }

    .stages_work_item {
        min-width: 100%;
        max-width: 100%;
    }

    ul.breadcrumbs{
        padding-left: 60px;
        padding-right: 60px;
    }
}

.about_company_img_main.adapt{
    display: none;
}

@media screen and (max-width: 1200px) {
    .services_item_height {
        min-width: 100%;
        max-width: 100%;
    }

    .services_item_title {
        margin-top: 16px;
    }

    .services_item_title svg {
        margin-top: -16px;
    }

    .services_block_content .services_block {
        gap: 15px;
    }

    .about_company_item,
    .about_company_list .about_company_img {
        min-width: 47%;
        max-width: 47%;
    }

    .about_company_item_num {
        font-size: 80px;
        line-height: 97px;
    }

    .about_company_item_desc {
        font-size: 28px;
        line-height: 34px;
    }

    .about_company_item_num b {
        font-size: 46px;
    }

    .about_company_item {
        padding: 45px;
    }

    .about_company_row {
        flex-direction: column;
        align-items: start;
        gap: 40px;
    }

    .about_company_img {
        min-width: 65%;
        max-width: 65%;
    }

    .advantages_row {
        flex-direction: column;
    }

    .advantages_img {
        min-width: 40%;
        max-width: 40%;
    }

    .footer_menu {
        column-gap: 50px;
    }

    .footer_menu {
        margin-left: 70px;
    }

    .footer_bottom_row,
    .footer_content {
        flex-wrap: wrap;
    }

    .cases_item {
        min-width: 47%;
        max-width: 47%;
    }



    .about_company_col_main2{
        min-width: 100%;
        max-width: 100%;
    }

    .about_company_img_main.adapt{
        display: block;
        min-width: 70%;
        max-width: 70%;
        margin-top: 5px;
        margin-bottom: 5px;
    }

    .about_company_img_main{
        display: none;
    }

    .usluga_detail_info{
        flex-direction: column;
        gap: 40px;
    }

    .usluga_detail_img {
        min-width: 65%;
        max-width: 65%;
    }

    .case_detail_row{
        flex-direction: column;
        gap: 50px;
    }

    .case_detail_img{
        min-width: 60%;
        max-width: 60%;
    }
}

@media screen and (max-width: 1024px) {

    .popup_form_content,
    .popup_successful_content {
        max-height: 85vh;
        overflow-y: scroll;
    }

    .section,
    .header_main,
    .header_top,
    footer {
        padding-left: 40px;
        padding-right: 40px;
    }

    .top_banner_content {
        padding-left: 40px;
    }

    .btn_to_top {
        right: 40px;
    }

    .contacts_info {
        left: 40px;
    }

    .header_top {
        flex-wrap: wrap;
        gap: 12px 20px;
    }

    .header_top_menu {
       /* order: 3;
        flex: 0 0 100%;
        justify-content: flex-start;
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 2px;
        scrollbar-width: none;*/
        display: none;
    }
    .menu_btn {
        display: flex;
    }

    .header_top_menu::-webkit-scrollbar {
        display: none;
    }

    .top_banner_content {
        max-width: 90%;
    }

    .top_banner {
        background-position: 30% 50%;
    }

    .block_with_form {
        padding-left: 0 !important;
        flex-direction: column;
    }

    .block_with_form_content {
        padding-left: 40px;
        padding-right: 40px;
    }

    .block_with_form_img {
        width: 100%;
        height: 518px;
        overflow: hidden;
        align-items: center;
    }

    .block_with_form_img img {
        width: 100%;
        height: auto;
    }

    .cases_list {
        gap: 25px;
    }

    .cases_item {
        min-width: 48%;
        max-width: 48%;
    }

    .footer_content {
        gap: 40px;
    }

    .footer_col_contacts {
        margin-left: 0;
    }

    .footer_menu {
        margin-left: 120px;
    }

    .footer_bottom_row {
        gap: 25px;
    }

    .btn_to_top {
        bottom: 110px;
    }

    ul.breadcrumbs{
        padding-left: 40px;
        padding-right: 40px;
    }

    .about_company_desc_main{
        gap: 15px;
    }

    .about_company_img_main.adapt{
        margin: 0;
    }

    .about_company_row_main{
        gap: 20px;
    }

    .usluga_detail_row{
        margin-top: 60px;
    }

    .usliga_detail_content h2 br{
        display: none;
    }

    .usluga_detail_img {
        min-width: 70%;
        max-width: 70%;
    }

    .usluga_detail_left br{
        display: none;
    }

    .usluga_detail_row{
        gap: 40px;
        align-items: center;
    }




}


@media screen and (max-width: 900px) {
    .about_company_item_num {
        font-size: 68px;
        line-height: 85px;
    }

    .about_company_item_num b {
        font-size: 36px;
    }

    .about_company_item_desc {
        font-size: 25px;
        line-height: 32px;
    }

    .services_item_title,
    .services_item_title svg {
        margin-top: 0;
    }

    .team_main_row {
        flex-direction: column;
        gap: 40px;
    }

    .team_main_img {
        min-width: 60%;
        max-width: 60%;
    }

    .footer_menu {
        margin-left: 50px;
    }

    header{
        position: fixed;
        top: 0;
        z-index: 95;
        transition: all linear .3s;
    }

    .header_top{
        background-color: rgba(36, 52, 69, .85) !important;
    }

    header.out {
        transform: translateY(-100%);
    }

    .usluga_detail_row{
        flex-direction: column;
        gap: 30px;
        align-items: start;
    }
    .menu_btn {
        display: flex;
    }
}

.footer_tablet, .case_detail_img.mob {
    display: none;
}

@media screen and (max-width: 768px) {
    .top_banner_content {
        max-width: 100%;
    }

    .section,
    .header_main,
    .header_top,
    footer {
        padding-left: 24px;
        padding-right: 24px;
    }

    .top_banner_content {
        padding-left: 24px;
        padding-right: 24px;
    }

    .btn_to_top {
        right: 24px;
    }

    .contacts_info {
        left: 24px;
    }

    h2 br {
        display: none;
    }

    .header_logo {
        width: 190px;
    }

    .header_top_left {
        gap: 20px;
    }

    .header_btn {
        width: 185px;
    }

    .section {
        padding-top: 100px;
        padding-bottom: 100px;
    }

    .about_company_row,
    .services_desc,
    .team_slider_content {
        margin-top: 40px;
    }

    .about_company_img {
        min-width: 85%;
        max-width: 85%;
    }

    .about_company_list {
        margin-top: 50px;
        gap: 20px;
    }

    .about_company_item {
        padding: 30px;
    }

    .about_company_item,
    .about_company_list .about_company_img {
        min-width: 48%;
        max-width: 48%;
    }

    .services_item_height {
        transition: all ease-in 1.2s;
    }

    .services_item_height:hover .services_item_title {
        min-height: 96px;
    }

    .services_item_height.active {
        max-height: 100vh;
        transition: all ease-in 1.2s;
    }

    .services_item_height:hover .services_item {
        height: 112px;
    }

    .services_item_height.active .services_item {
        height: fit-content;
        box-shadow: 0px 4px 22px 0px #00000026;
        background-color: #FFFFFF;
    }

    .services_item_height.active .services_item_title {
        min-height: fit-content;
        color: #243445;
    }

    .services_item_height.active svg.icon path {
        stroke: #243445;
    }

    .services_item_height.active svg.fill path {
        fill: #243445;
    }

    .services_item_height:hover {
        overflow: hidden;
    }

    .team_main_img {
        min-width: 85%;
        max-width: 85%;
    }

    .team_slider .slick-slide,
    .team_slide {
        min-width: 340px;
        max-width: 340px;
    }

    .team_main_row {
        margin-top: 40px;
        gap: 30px;
    }

    .team_main_desc.additionally {
        margin-top: 5px;
    }

    .team_slider .slick-track {
        gap: 20px;
    }

    .team_slide_job {
        letter-spacing: -.5px;
    }

    .team_slide {
        gap: 15px;
    }

    .team_slide_job {
        margin-top: -5px;
    }

    .team_slider_arrows.tablet,
    .reviews_slider_arrows.tablet {
        margin-top: 30px;
    }

    .advantages_item {
        padding: 25px;
    }

    .advantages_item_title {
        font-size: 23px;
        line-height: 23px;
    }

    .advantages_list {
        gap: 17px
    }

    .advantages_item {
        min-width: 48.5%;
        max-width: 48.5%;
    }

    .advantages_row {
        gap: 40px;
    }

    .advantages_img {
        min-width: 50%;
        max-width: 50%;
    }

    .cases_row {
        gap: 40px;
    }

    .cases_row,
    .cases_list,
    .cases_filter,
    .stages_work_list,
    .reviews_desc {
        margin-top: 40px;
    }

    .cases_filter_items,
    .cases_filter {
        gap: 20px;
    }

    .cases_link {
        margin-top: 5px;
    }

    .cases_list {
        gap: 20px;
    }

    .cases_item {
        padding: 25px;
    }

    .block_with_form_img {
        height: 420px;
    }

    .stages_work_list {
        gap: 20px;
    }

    .reviews_slider_content {
        margin-top: 30px;
    }

    .reviews_slider .slick-slide,
    .reviews_slide {
        min-width: calc(100vw - 49px);
        max-width: calc(100vw - 49px);
    }

    .reviews_slider_arrows.tablet {
        margin-top: 15px;
    }

    .trust_us_slider .slick-track {
        gap: 20px;
    }

    .trust_us_slider_content {
        margin-top: 40px;
    }

    .footer_content {
        flex-direction: column;
        gap: 40px;
    }

    .footer_menu {
        margin-left: 0;
    }

    .footer_name_col {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 30px;
        justify-content: space-between;
        align-items: center;
    }

    .footer_name_col p {
        min-width: 307px;
    }

    .footer_col_contacts {
        flex-wrap: wrap;
        max-height: 130px;
        gap: 20px;
    }

    .footer_phone {
        margin-bottom: -10px;
    }

    .dev,
    .policy {
        display: none;
    }

    .footer_bottom_row {
        margin-top: 40px;
    }

    .footer_bottom p {
        margin-bottom: 20px;
    }

    .footer_tablet,
    .footer_tablet .dev,
    .footer_tablet .policy {
        display: flex;
    }

    .footer_tablet {
        gap: 30px;
        flex-wrap: wrap;
    }

    .dev {
        margin-right: 0;
    }

    .btn_to_top {
        bottom: 155px;
    }


    ul.breadcrumbs{
        padding-left: 24px;
        padding-right: 24px;
        padding-top: 130px;
    }

    .about_company_main{
        padding-top: 40px;
    }

    .usluga_detail{
        padding-top: 40px;
    }

    .usluga_detail_info{
        margin-top: 40px;
    }

    .usluga_detail_row{
        padding: 40px;
        margin-top: 40px;
    }

    .case_detail_img{
        display: none;
    }

    .case_detail_img.mob{
        display: flex;
    }

    .case_detail {
        padding-top: 40px;
    }

    .case_detail_img{
        margin-top: 40px;
    }
    .menu_btn {
        display: flex;
    }
}

.header_btn svg {
    display: none;
}

@media screen and (max-width: 700px) {
    .menu_btn {
        display: flex;
    }
    .footer_name_col p {
        min-width: 271px;
    }

    .cases_item {
        min-width: 100%;
        max-width: 100%;
    }

    .header_btn span {
        display: none;
    }

    .header_btn {
        width: 40px;
        height: 40px;
    }

    .header_btn svg {
        display: block;
        margin: 0 !important;
    }

    .popup_form_content,
    .popup_successful_content {
        width: 90vw;
    }
}

@media screen and (max-width: 650px) {
    .advantages_item {
        min-width: 100%;
        max-width: 100%;
    }

    .footer_tablet {
        gap: 20px;
    }

    .footer_col_contacts {
        max-height: fit-content;
    }
    .menu_btn {
        display: flex;
    }
    h1,
    h2 {
        font-size: 34px;
        line-height: 46px;
    }

    .about_company_item_desc {
        font-size: 20px;
        line-height: 28px;
    }

    .about_company_item_num {
        font-size: 48px;
        line-height: 58px;
    }

    .about_company_item_num b {
        font-size: 24px;
    }

    .about_company_item {
        padding: 20px;
    }

    .services_item,
    .services_item_height:hover .services_item {
        height: 135px;
    }

    .services_item_heigh:hover {
        max-height: 100vh;
        transition: all ease-in 1.2s;
    }

    .services_item_height {
        max-height: 143px;
    }

    .about_company_item,
    .about_company_list .about_company_img {
        min-width: 47%;
        max-width: 47%;
    }

    .services_item_height.active .services_item {
        height: fit-content;
    }

    .case_detail_link span{
        border-bottom: none !important;
        text-decoration: underline;
    }
}

.cases_link_btn.mob, .header_col_contacts{
    display: none;
}

@media screen and (max-width: 500px) {
    .menu_btn {
        display: flex;
    }
    h1,
    h2 {
        font-size: 28px;
        line-height: 32px;
    }

    .header_phone {
        display: none;
    }

    .header_logo {
        width: 150px;
    }

    .btn {
        font-size: 16px;
        line-height: 16px;
        width: 100%;
    }

    .btn svg {
        margin-top: 0px;
    }

    .section,
    .header_main,
    .header_top,
    footer {
        padding-left: 20px;
        padding-right: 20px;
    }

    .top_banner_content {
        padding-left: 20px;
        padding-right: 20px;
    }

    .btn_to_top {
        right: 20px;
    }

    .contacts_info {
        left: 20px;
    }

    .header_top {
        padding-top: 15px;
        padding-bottom: 15px;
    }

    .top_banner_desc {
        font-size: 16px;
        line-height: 24px;
        margin-top: 15px;
    }

    .top_banner_btn {
        margin-top: 20px;
        height: 54px;
        width: 246px;
    }

    .header_btn {
        width: 40px;
    }

    .top_banner_content {
        justify-content: start;
        padding-top: 115px;
    }

    .top_banner {
        background-image: url(../img/top_banner_bg_mob.jpg);
        background-position: 50% 50%;
    }

    .section {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .about_company_desc {
        gap: 15px;
        font-size: 16px;
        line-height: 26px;
    }

    .about_link {
        margin-top: 0;
        width: 189px;
    }

    .about_company_row {
        margin-top: 20px;
        gap: 30px;
    }

    .about_company_img {
        min-width: 100%;
        max-width: 100%;
        border-radius: 15px;
    }

    .about_company_list{
        margin-top: 30px;
        flex-wrap: nowrap;
        gap: 20px;
        overflow-x: scroll;
        overflow-y: hidden;
        align-items: center;
        padding-bottom: 30px;
    }

    .about_company_item, .about_company_list  .about_company_img{
        min-width: 246px;
        max-width: 246px;
        max-height: 162px;
    }

    .about_company_item{
        padding: 21px;
    }

    .about_company_item_num{
        font-size: 48px;
        line-height: 58px;
    }

    .about_company_item_num b{
        font-size: 30px;
        line-height: 36px;
    }

    .about_company_item_desc{
        font-size: 18px;
        line-height: 26px;
    }

    .about_company_item{
        gap: 5px;
    }

    .about_company_list{
        -webkit-overflow-scrolling: touch;
    }

    .about_company_list::-webkit-scrollbar {
        width: 172px;
        height: 3px;
    }

    .about_company_list::-webkit-scrollbar-track {
        background: #DCDCDC;        /* цвет дорожки */
    }

    .about_company_list::-webkit-scrollbar-thumb {
        background-color: #CDAF84;    /* цвет плашки */
    }

    .services_content h2, .services_desc{
        text-align: left;
    }

    .services_desc{
        margin-top: 20px;
        font-size: 16px;
        line-height: 26px;
    }

    .services_tabs{
        flex-direction: column;
        margin-top: 20px;
        gap: 15px;
    }

    .services_block_content{
        margin-top: 20px;
    }

    .services_tabs div{
        width: 100%;
    }

    .services_item_title{
        font-size: 18px;
        line-height: 26px;
        gap: 12px;
        flex-direction: column;
    }

    .services_item_title svg{
        width: 50px !important;
        height: 50px !important;
    }

    .services_item{
        padding: 20px;
    }

    .services_item_desc{
        margin-top: 40px;
        font-size: 16px;
        line-height: 26px;
    }

    .services_item_title {
        height: 140px;
        justify-content: center;
    }

    .services_item,
    .services_item_height:hover .services_item {
        height: 180px;
    }

    .services_item_height {
        max-height: 180px;
    }

    .services_item_height.active .services_item {
        height: fit-content;
    }

    .services_item_height.active {
        max-height: fit-content;
    }

    .services_item_height.active .services_item_desc{
        margin-top: 10px;
    }

    .services_item_height.active  .services_item_title{
        height: fit-content;
    }

    .services_item_info{
        max-width: 100%;
    }

    .team_main_img {
        min-width: 100%;
        max-width: 100%;
    }

    .team_main_img img {
        width: 140%;
        margin-left: -20%;
    }

    .team_main_row{
        margin-top: 20px;
        gap: 20px;
    }

    .team_main_name{
        font-size: 20px;
        line-height: 30px;
    }

    .team_main_job{
        font-size: 16px;
        line-height: 28px;
    }

    .team_main_desc{
        font-size: 16px;
        line-height: 26px;
    }

    .team_main_info, .team_main_desc.additionally{
        gap: 15px;
    }

    .team_main_desc.additionally {
        margin-top: 15px;
    }

    .team_slider_content{
        margin-top: 30px;
    }

    .team_slider .slick-slide, .team_slide {
        min-width: calc(100vw - 40px);
        max-width: calc(100vw - 40px);
    }

    .team_slide_name{
        font-size: 20px;
        line-height: 30px;
        margin-top: 5px;
    }

    .team_slide_job{
        font-size: 16px;
        line-height: 28px;
    }

    .team_slide_desc{
        font-size: 16px;
        line-height: 26px;
    }

    .team{
        background-image: none;
        background-color: #F5F5F5;
    }

    .team_slider_arrows.tablet, .reviews_slider_arrows.tablet {
        margin-top: 20px;
    }

    .advantages_row{
        margin-top: 20px;
        gap: 20px;
    }

    .advantages_list{
        gap: 20px;
    }

    .advantages_item{
        gap: 10px;
    }

    .advantages_item_title{
        margin-top: 5px;
        font-size: 20px;
        line-height: 26px;
    }

    .advantages_item img{
        width: 70px;
        height: 70px;
    }

    .advantages_item_desc{
        font-size: 16px;
        line-height: 26px;
    }

    .advantages_img{
        min-width: 100%;
        max-width: 100%;
    }

    .block_with_form_content{
        padding: 50px 20px;
        gap: 15px;
    }

    .block_with_form_btn{
        margin-top: 5px;
    }

    .block_with_form_desc br{
        display: none;
    }

    .block_with_form_desc{
        font-size: 16px;
        line-height: 26px;
    }

    .block_with_form_img {
        height: 253px;
    }

    .cases_row{
        margin-top: 20px;
        flex-direction: column;
    }

    .cases_row .cases_link_btn{
        display: none;
    }

    .cases_row p{
        font-size: 16px;
    }

    .filter_arrow{
        display: none;
    }

    .cases_filter, .cases_list{
        margin-top: 27px;
    }

    .cases_list{
        gap: 15px;
    }

    .cases_item{
        padding: 20px;
        gap: 10px;
    }

    .cases_item img{
        width: 64px;
    }

    .cases_title{
        font-size: 20px;
        line-height: 26px;
        margin-top: 5px;
    }

    .cases_desc{
        font-size: 16px;
        line-height: 24px;
    }

    .cases_link{
        font-size: 16px;
        line-height: 26px;
    }

    .cases_link_btn.mob{
        display: flex;
        margin-top: 20px;
    }

    .stages_work_item{
        padding: 25px;
        gap: 10px;
        position: relative;
    }

    .stages_work_left{
        flex-direction: column;
        gap: 15px;
        align-items: start;
        width: 100%;
    }

    .stages_work_left img {
        min-width: 70px;
        max-width: 70px;
    }

    .stages_work_name{
        font-size: 20px;
        line-height: 26px;
    }

    .stages_work_num{
        position: absolute;
        right: 20px;
        top: 10px;
        font-size: 96px;
        line-height: 96px;
    }

    .stages_work_name br{
        display: none;
    }

    .block_with_form{
        min-height: fit-content;
    }

    .review_info{
        padding: 25px;
    }

    .reviews_desc{
        font-size: 16px;
        line-height: 26px;
        margin-top: 20px;
    }

    .quote{
        width: 60px;
        right: 30px;
        top: -20px;
    }

    .reviews_slider_content{
        margin-top: 20px;
    }

    .review_desc{
        margin-top: 10px;
        font-size: 15px;
        line-height: 25px;
        margin-bottom: 20px;
        letter-spacing: -.7px;
    }

    .review_author_name{
        font-size: 17px;
        line-height: 17px;
    }

    .review_author {
        gap: 10px;
    }

    .reviews_slider .slick-slide, .reviews_slide {
        min-width: calc(100vw - 40px);
        max-width: calc(100vw - 40px);
    }

    .review_info{
        min-height: 220px;
    }

    .reviews_slide {
        margin-top: 20px;
        margin-bottom: 50px;
    }

    .trust_us_slider .slick-slide, .trust_us_slide {
        min-width: 160px;
        height: 160px;
        max-width: 160px;
    }

    .trust_us_slider .slick-track {
        gap: 15px;
    }

    .trust_us_slider_content{
        margin-top: 20px;
        gap: 20px;
    }

    .contacts_info{
        position: static;
        padding: 0px 20px;
        border-radius: 0;
        transform: translateY(0);
        width: 100%;
        gap: 15px;
    }

    .contacts_content{
        display: flex;
        flex-direction: column-reverse;
        gap: 30px;
    }

    .contacts_info h2{
        margin-bottom: 5px;
        font-size: 30px;
        line-height: 36px;
    }

    .contacts_phones{
        gap: 5px;
    }

    .contacts_address, .working_time{
        font-size: 16px;
        line-height: 26px;
    }

    .map{
        max-height: 420px;
        min-width: 200vw;
    }

    .map iframe {
        width: 100% !important;
        min-height: 420px;
        margin-left: -100vw;
    }

    .footer_logo {
        width: 170px;
    }

    .footer_name_col p{
        font-size: 16px;
        line-height: 26px;
        margin-bottom: 0;
    }

    .footer_name_col{
        gap: 20px;
    }

    .footer_menu {
        column-gap: 50px;
        max-height: 180px;
    }

    .footer_menu a{
        font-size: 16px;
        line-height: 16px;
    }

    .footer_phone{
        font-size: 20px;
        line-height: 26px;
        gap: 8px;
    }

    .footer_phone svg{
        width: 20px !important;
        height: 20px !important;
    }

    .mail_address, .copyright, .dev, .policy{
        font-size: 16px;
        line-height: 26px;
    }

    .footer_btn{
        height: 50px;
        width: 181px;
    }

    .dev, .policy{
        display: flex;
    }

    .btn_to_top, .footer_tablet, .footer_tablet .dev, .footer_tablet .policy{
        display: none;
    }

    .footer_bottom p{
        font-size: 14px;
        line-height: 20px;
    }

    .footer_content{
        gap: 30px;
    }

    .footer_col_contacts{
        margin-top: 10px;
    }

    .footer_bottom_row{
        padding-top: 20px;
        gap: 10px;
    }

    .popup_form_content{
        padding: 60px 20px;
    }

    .popup_form_content{
        width: 101vw;
        height: 101vh;
        max-height: 101vh;
        border-radius: 0;
    }

    .popup_form_title{
        font-size: 30px;
        line-height: 36px;
        margin-bottom: 15px;
    }

    .popup_form_desc{
        font-size: 16px;
        line-height: 24px;
    }

    .form-checkbox label p{
        font-size: 14px;
        line-height: 20px;
        max-width: 90%;
        min-width: 90%;
    }

    .form-checkbox, .btn_popup_form{
        margin-top: 0;
    }

    .popup_close{
        top: 20px;
        right: 20px;
    }

    .popup_successful_title{
        font-size: 30px;
        line-height: 36px;
        margin-bottom: 15px;
    }

    .popup_successful_desc{
        font-size: 16px;
        line-height: 26px;
    }

    .popup_successful_desc br{
        display: none;
    }

    .popup_successful_content .popup_close {
        top: 15px;
        right: 15px;
    }

    .popup_successful_content{
        padding: 40px 35px;
    }

    .popup_successful_title br{
        display: block;
    }

    .header_menu a{
        font-size: 16px;
        line-height: 16px;
    }

    .header_main{
        background-color: #243445;
        height: fit-content;
        min-height: 100vh;
    }

    .header_top{
        transition: all linear .3s;
    }

    .header_top.active{
        border-bottom: 1px solid #425264;
    }

    .header_main{
        padding-top: 110px;
        padding-bottom: 100px;
        display: flex;
        flex-direction: column;
    }

    .header_col_contacts{
        display: flex;
        margin-top: auto;
        flex-direction: column;
        gap: 5px;
    }

    .header_col_contacts .footer_phone{
        margin-bottom: 0;
    }

    .header_menu {
        max-width: 100%;
        height: calc(100vh - 300px);
        overflow-y: scroll;
        gap: 30px;
        flex-wrap: nowrap;
    }

    .header_logo{
        display: flex;
        align-items: center;
    }



    ul.breadcrumbs{
        padding-left: 20px;
        padding-right: 20px;
        padding-top: 92px;
    }

    ul.breadcrumbs li+li:before {
        padding: 10px;
    }

    .about_company_main{
        padding-top: 22px;
    }

    .about_company_img_main.adapt{
        min-width: 100%;
        max-width: 100%;
    }

    .about_company_desc_b{
        font-size: 20px;
        line-height: 26px;
    }

    .about_company_col_main1, .about_company_col_main2{
        gap: 20px;
    }

    .about_company_row_main{
        gap: 15px;
        padding-bottom: 10px;
    }

    .stages_work_list{
        margin-top: 20px;
    }

    ul.breadcrumbs li{
        font-size: 14px;
        line-height: 22px;
    }

    .about_company_img_main {
        border-radius: 15px;
    }


    .usluga_detail{
        padding-top: 22px;
    }

    .usliga_detail_content h2{
        font-size: 25px;
        line-height: 32px;
        letter-spacing: -.5px;
    }

    .usluga_detail_desc, .usluga_detail_left{
        font-size: 16px;
        line-height: 26px;
    }

    .usluga_detail_img{
        min-width: 100%;
        max-width: 100%;
        border-radius: 15px;
    }

    .usluga_detail_img img{
        width: 150%;
        margin-left: -25%;
    }

    .usluga_detail_info{
        margin-top: 20px;
        gap: 20px;
    }

    .usluga_detail_desc{
        gap: 15px;
    }

    .usluga_detail_row{
        margin-top: 22px;
        padding: 20px;
        gap: 18px;
    }

    .usluga_detail_left{
        gap: 10px;
        align-items: start;
    }

    .usluga_detail_left img{
        width: 40px;
        height: 40px;
    }

    .usluga_detail_btn{
        min-width: 100%;
    }

    .case_detail {
        padding-top: 22px;
    }

    .case_detail_content h2 {
        font-size: 25px;
        line-height: 32px;
        letter-spacing: -.5px;
    }

    .case_detail_img{
        margin-top: 20px;
        min-width: 100%;
        max-width: 100%;
    }

    .case_detail_desc_row{
        margin-top: 25px;
        gap: 15px;
    }

    .case_detail_desc_row{
        font-size: 18px;
        line-height: 26px;
    }

    .case_detail_desc{
        font-size: 16px;
        line-height: 26px;
    }

    .case_detail_row{
        margin-top: 25px;
    }

    .case_detail_info{
        gap: 20px;
    }

    .case_detail_desc{
        gap: 15px;
    }

    .case_detail_title{
        font-size: 20px;
        line-height: 26px;
    }

    .case_detail_link{
        padding: 20px;
    }

    .case_detail_link span{
        font-size: 16px;
        line-height: 24px;
    }
}
