*{
    /* //обнуляет границы текста */
    padding: 0;
    margin: 0;
    border: 0;
}
*,*:before, *:after{
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
:focus, :active{outline: none;}
a:focus, a:active{outline: none;}

nav,footer,header,aside{display: block;}


html,body{
    height: 100%;
    width: 100%;
    font-size: 100%;
    color: #252B42;
    line-height: 1;
    font-size: 14px;
    font-weight: 500;
    -ms-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}
input,button,textarea{font-family: inherit;}

input::-ms-clear{display: none}
button{cursor: pointer;}
button::-moz-focus-inner {padding: 0;border: 0;}
a, a:visited{text-decoration: none;}
ul li{list-style: none;}
img{vertical-align: top;}

h1,h2,h3,h4,h5,h6{font-size: inherit;font-weight: 400;}

/* //выше обнуляющий код */

.wrapper{
    min-height: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    /* font-family: 'Montserrat', sans-serif; */
    font-family: 'Exo 2', sans-serif;
}

._container{
    padding: 0 15px;
    max-width: 1046px;
    margin: 0px auto;
    box-sizing: content-box;
    /* определяет как вычисляется общая ширина и высота элемента */
}

._ibg {
    position: relative;
}
._ibg img{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: contain;
    /* определяет, как содержимое заменяемого элемента, такого как <img> или <video>, должно заполнять контейнер относительно его высоты и ширины */
}
/* Блоки HEADER ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */

.header {
    position: relative;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 50;
    background-color: #100b22;
}
.header_container {
    display: flex;
    min-height: 104px;
    align-items: center;
    border-bottom: 3px solid #617d99;
}
@media (max-width: 479px) {
    .header_container {
        min-height: 70px;
    }
}
.header_logo {
    font-size: 24px;
    font-weight: 700;
    color: inherit;
}
.header_menu {
    margin: 0px 0px 0px 133px;
}
@media (max-width: 992px) {
    /* запрос медиа. Для изменения  отступа пунктов меню от лого в зависимости от экрана. При экране до 992 пикселя - отступ 80 пикселей */
    .header_menu {
        margin: 0px 0px 0px 80px;
    }
}
@media (max-width: 767px) {
    /* запрос медиа. Для изменения отступа пунктов меню от лого взависимости от экрана. Приэкране до 767 пикселя - отступ50 пикселей */
    .header_menu {
        margin: 0px 0px 0px 50px;
    }
}
@media (max-width: 479px) {
    /* запрос медиа. Для изменения отступа пунктов меню от лого взависимости от экрана. Приэкране до 767 пикселя - отступ50 пикселей */
    .header_menu {
        margin: 0px 0px 0px 20px;
    }
}

.menu {
    padding: 5px 0;
}
.menu_list {
    display: flex;
    /* Выравнивание по горизонтали */
    flex-wrap: wrap;
    /* Это позволит ломать блоки(смещать их под друг друга) при уменьшении разрешения */
}

.menu_item {
}
.menu_item:not(:last-child){
    /* Псевдокласс :нот(:кто) обращается ко всему, кроме того, что написано в скобках */
    margin: 0px 21px 0px 0px;
    /* Отступы между блоками меню */
}
.menu_link {
    color: white;
    font-weight: 600;
    line-height: calc(24 / 14 * 100%);
    text-shadow: 0 0 10px white;
    /* Требуемую высоту букв делим на стандартную (заданную в обнуляйке) и умножаем на 100% */
}
.menu_link:hover{
    text-decoration: underline;
    text-decoration-color: black;
}
.img_logo{
    width: 150px;
}
.menu_link_main{
    color: black;
    font-weight: 800;
    line-height: calc(24 / 14 * 100%);
    text-shadow: 0 0 10px white;
    background-color: #82a6c9;
    border-radius: 20%;
}
/* Блоки PAGE ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */

.page{
    background-color: #100b22;
    flex: 1 1 auto;
}
.page__main-block {
}
.page__services {
    position: relative;
    z-index: 2;
    margin: -111px 0px 0px 0px;
}
.page__advantages {
}
.page__practice {
}
.page__whoweare {
}
.page__clients {
}
.page__getintouch {
}

/* Header block общий */

.header-block {

    text-align: center;
    letter-spacing: 0.2px;  
}
.header-block__title {
    color: #617d99;
    font-size: 40px;
    font-weight: 700;  
    line-height: 142%;
}
@media (max-width: 992px) {
    .header-block__title {
        font-size: 35px;
    }
}
@media (max-width: 767px) {
    .header-block__title {
        font-size: 30px;
    }
}
.header-block__title:not(:last-child) {
    margin: 0 0 10px 0;
}
.header-block__sub-title {
    
}
/* Блоки MAIN-PAGE ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */




/* Блоки столбцы SECTION ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */


.services {
}
.services__container {
}
.services__body {
    
}
@media (min-width: 670px) {
    .services__body {
        display: flex;
        flex-wrap: wrap;
        margin: 0px -15px -30px;
    }
}
.services__column {
    padding: 0px 15px;
    flex: 0 1 33.333%;
    margin: 0 0 30px 0;
}

@media (max-width: 992px) {
    .services__column {
        flex: 0 1 50%;
    }
    .services__column:last-child {
        flex: 0 1 100%;
    }
}

.services__item {
    box-shadow: 0px 13px 19px rgba(0, 0, 0, 0.07);
    background-color: #fff;
    padding: 35px;
    height: 100%;
}
.item-service_green {
    background-color: #04aab9;
}
.item-service_green .item-service__title {
    color: #fff;
}
.item-service_green .item-service__text {
    color: #fff;
}
.item-service {
}

.item-service > *:not(last-child) {
    margin: 0px 0px 10px 0px;
}

.item-service__icon {
}
.item-service__title {
    font-weight: 700;
    letter-spacing: 0.1px;
    font-size: 24px;
    line-height: 133%;
}
.item-service__text {
    color: #737373;
    line-height: 142%;
}


/* Блоки столбцы SECTION ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */




/* Блоки столбцы SECTION ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */



.practice {
    
    padding: 25px 0 80px 0;
}
@media (max-width: 993px) {
    .practice {
        padding: 40px 0 80px 0;
    }
}
@media (max-width: 767px) {
    .practice {
        padding: 0px 0 40px 0;
    }
}
.practice__container {
   
}
.practice__header {
    margin: 0px 0 45px 0;
}
@media (max-width: 767px) {
    .practice__header {
        padding: 0px 0 25px 0;
    }
}
.practice__body {
    margin: 0 20px -30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    
}
.practice__column {
    padding: 0 20px;
    flex: 0 1 100%;
    margin: 0 0 30px 0;
}
@media (max-width: 1040px) {
    .practice__column {
        flex: 0 1 50%;
    }
}
@media (max-width: 600px) {
    .practice__column {
        flex: 0 1 100%;
    }
}
.practice__item {
}
.item-practice {
    background-color: #100b22;
    background-image: url(../sources/image_23.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    display: flex;
    flex-direction: column;
    height: 100%;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.537);
    color: white;
}
.item-practice__link {
    color: inherit;
    
}
.item-practice__link:hover{
    text-decoration: underline;
}
.item-practice__link:not(:last-child){
    margin: 0 0 15px 0;
}
.item-practice__title {
    letter-spacing: 0.1px;
    font-size: 16px;
    line-height: 150%;
    font-weight: 700;
    margin: 0 0 15px 0;
}
.item-practice__text {
    color: #737373;
    line-height: 142%;
}
.item-practice__image {
    display: inline-block;
    padding: 0% 0 30% 40%;
   
}
.item-practice__content{
    flex: 0 1 auto;
    display: flex;
    padding: 15px;
}

@media (max-width: 768px) {
    .item-practice__content{
        flex-direction: column;
    }
    .item-practice__image {
        padding: 0% 0 60% 70%;
    }
}

.item-practice__column {
    align-self: center;
    padding: 15px;
}

/* Блоки WHOWEARE ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */





/* Блоки КЛИЕНТЫ CLIENTS ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */




/* Блоки GET IN TOUCH ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */




/* Блоки ПОДВАЛ footer ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */

.footer {

}
.footer__top {
    background-color: #82a6c9;
    padding: 30px 0;

}
.footer__container {

}
.footer__column {
    flex: 0 1 16.6667%;
    padding: 20px 15px;
}
.footer__column:last-child {
    flex: 0 1 33.334%;
}
@media (max-width: 992px){
    .footer__column {
        flex: 0 1 25%;
    }
    .footer__column:last-child {
        flex: 1 1 100%;
    }
}
@media (max-width: 992px){
    .footer__column {
        flex: 0 1 50%;
    }
}
.footer__label {
    color: white;
    font-weight: 700;
    font-size: 16px;
    line-height: 150%;
    margin: 0 0 20px 0;
}
.footer__menu {
}
.footer__row {
    flex-wrap: wrap;
    display: flex;
    margin: 0 -15px;
}



.menu-footer {
}
.menu-footer__list {
}
.menu-footer__item {
}
.menu-footer__item:not(:last-child) {
    margin: 0 0 10px 0;
}
.menu-footer__link {
    color: white;
    letter-spacing: 0.2px;
    line-height: 171%;
    display: inline-block;
}
.menu-footer__link:hover {
    text-decoration: underline;
}


.footer__contacts {
}
.contacts-footer {
    display: flex;
    flex-direction: column;
}
.contacts-footer:not(:last-child) {
    margin: 0 0 12px 0;
}
.contacts-footer__item {
    padding: 0 0 0 34px;
    color: #fff;
    line-height: 142%;
    display: flex;
    align-items: center;
    min-height: 30px;
}
.contacts-footer__item:hover {
    text-decoration: underline;
}
.contacts-footer__item_phone {
    background: url("../sources/icon_6.png") 0 0 no-repeat;
}
.contacts-footer__item_map {
    background: url("../sources/icon_7.png") left no-repeat;
}
.contacts-footer__item_mail {
    background: url("../sources/icon_8.png") 0 0 no-repeat;
}

