@charset "utf-8";
@import url("reset.css");


img, object, embed, video { max-width: 100%; }

/* IE 6 does not support max-width so default to width 100% */
.ie6 img { width:100%; }

input, button, a { -webkit-transition: all 300ms; transition: all 300ms; }


@font-face { font-family: 'Lato';
  src: url('../fonts/Lato-Light.eot?#iefix') format('embedded-opentype'),  url('../fonts/Lato-Light.woff') format('woff'), url('../fonts/Lato-Light.ttf')  format('truetype'), url('../fonts/Lato-Light.svg#Lato-Light') format('svg');
  font-weight: 300; font-style: normal; font-display: swap;
}
@font-face { font-family: 'Lato';
  src: url('../fonts/Lato-Regular.eot?#iefix') format('embedded-opentype'),  url('../fonts/Lato-Regular.woff') format('woff'), url('../fonts/Lato-Regular.ttf')  format('truetype'), url('../fonts/Lato-Regular.svg#Lato-Regular') format('svg');
  font-weight: normal; font-style: normal; font-display: swap;
}
@font-face { font-family: 'Lato';
  src: url('../fonts/Lato-Medium.eot?#iefix') format('embedded-opentype'),  url('../fonts/Lato-Medium.woff') format('woff'), url('../fonts/Lato-Medium.ttf')  format('truetype'), url('../fonts/Lato-Medium.svg#Lato-Medium') format('svg');
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face { font-family: 'Lato';
	src: url('../fonts/Lato-Semibold.eot');
	src: url('../fonts/Lato-Semibold.woff') format('woff'), url('../fonts/Lato-Semibold.ttf') format('truetype'), url('../fonts/Lato-Semibold.svg') format('svg');
	font-weight: 600; font-style: normal; font-display: swap;
}
@font-face { font-family: 'Lato';
	src: url('../fonts/Lato-Bold.eot?#iefix') format('embedded-opentype'), url('../fonts/Lato-Bold.woff') format('woff'), url('../fonts/Lato-Bold.ttf') format('truetype'), url('../fonts/Lato-Bold.svg') format('svg');
	font-weight: 700; font-style: normal; font-display: swap;
}
@font-face { font-family: 'Lato';
	src: url('../fonts/Lato-Heavy.eot');
	src: url('../fonts/Lato-Heavy.woff') format('woff'), url('../fonts/Lato-Heavy.ttf') format('truetype'), url('../fonts/Lato-Heavy.svg') format('svg');
	font-weight: 800; font-style: normal; font-display: swap;
}


body { background: #fff; font-family: 'Lato'; }
.container { max-width: 1170px; margin: 0 auto; padding: 0 15px; }
input, textarea, button { font-family: 'Lato'; }


.points_blocks { display: block; position: fixed; z-index: 100; left: 55px; top: 50%; transform: translate(0,-50%); -moz-transform: translate(0,-50%); -webkit-transform: translate(0,-50%); }
    .points_blocks ul { display: block; list-style: none; }
        .points_blocks ul li { display: block; padding: 8px 0; }
            .points_blocks ul li a { display: block; width: 26px; height: 26px; border-radius: 50%; box-sizing: border-box; position: relative; border: 1px solid transparent; }
            .points_blocks ul li a.active, .points_blocks ul li a:hover { border-color: #e22f3b; }
                .points_blocks ul li a:after { content: ''; position: absolute; width: 6px; height: 6px; border-radius: 50%; background: #fff; top: 9px; left: 9px; }
                .points_blocks.invert ul li a:after { background: #e22f3b; }


.btn_next_block { position: absolute; z-index: 17; right: 74px; top: 100%; transform: translate(0,-50%); -moz-transform: translate(0,-50%); -webkit-transform: translate(0,-50%); }
    .btn_next_block a { display: block; width: 100px; height: 100px; border-radius: 50%; box-sizing: border-box; border: 1px solid #ddddde; position: relative; }
        .btn_next_block a:before { content: ''; position: absolute; z-index: 1; left: 50%; top: 50%; transform: translate(-50%,-50%); -moz-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); width: 60px; height: 60px; border-radius: 50%; background: #e72228; }
        .btn_next_block a:hover:before { background: #d60b11; }
        .btn_next_block a:after { content: ''; position: absolute; z-index: 2; width: 16px; height: 9px; background: url(../img/arrow_down.png) no-repeat 0 0; left: 41px; top: 47px; }


.block_title { font-size: 36px; text-align: center; color: #31354c; line-height: 1.25; text-transform: uppercase; padding: 0 0 32px; margin: 0 0 60px; background: url(../img/ico_title.png) no-repeat bottom center; }
.red { color: #e72228; }


.header { position: absolute; z-index: 16; left: 0; top: 27px; right: 0; }
    .h_row { width: 100%; display: flex; justify-content: space-between; align-items: center; }
        .h_left { display: flex; }
            .h_phone { margin: 0 30px 0 0; }
                .h_phone a { color: #fff; text-decoration: none; font-size: 16px; line-height: 20px; }
                .h_phone a:hover { color: #e62228; }
                    .h_phone a i { display: inline-block; vertical-align: top; margin: 0 3px 0 0; width: 22px; }
            .h_email { margin: 0 30px 0 0; }
                .h_email a { color: #fff; text-decoration: none; font-size: 16px; line-height: 20px; position: relative; }
                .h_email a:hover { color: #e62228; }
                    .h_email a i { display: inline-block; vertical-align: top; margin: 0 5px 0 0; width: 23px; }
                    .h_email a:after { content: attr(data-title); position: absolute; left: 50%; top: -20px; opacity: 0; visibility: hidden; -webkit-transition: all 300ms; transition: all 300ms; white-space: nowrap; font-size: 13px; color: #fff; background: rgba(0,0,0,0.7); line-height: 16px; padding: 4px 15px; border-radius: 3px; transform: translate(-50%,0); -moz-transform: translate(-50%,0); -webkit-transform: translate(-50%,0); }
                    .h_email a:hover:after { opacity: 1; top: -25px; visibility: visible; }
        .h_right { display: inline-block; }
            .h_call { margin: 0; }
                .h_call a { color: #fff; text-decoration: none; font-size: 16px; line-height: 20px; }
                .h_call a:hover { color: #e62228; }
                    .h_call a i { display: inline-block; vertical-align: top; margin: 0 4px 0 0; width: 22px; }


.header_fixed { display: block; position: fixed; z-index: 101; left: 0; top: -120px; right: 0; background: #fff; border-bottom: 1px solid #e7e7e7; padding: 20px 0 20px; -webkit-transition: all 500ms; transition: all 500ms; }
.header_fixed.visible { top: 0; }
.header_fixed.invert { background: #171e37; border-color: #515874; }
.header_fixed.no-fixed { top: 0; }
    .h_fix_row { display: flex; width: 100%; justify-content: space-between; align-items: center; }
        .h_fix_logo_wrap { width: 238px; height: 68px; position: relative; }
            .h_fix_logo_black { width: 100%; opacity: 1; visibility: visible; position: absolute; left: 0; top: 0; -webkit-transition: all 300ms; transition: all 300ms; }
            .h_fix_logo_white { width: 100%; opacity: 0; visibility: hidden; position: absolute; left: 0; top: 0; -webkit-transition: all 300ms; transition: all 300ms; }
            .header_fixed.invert .h_fix_logo_black { opacity: 0; visibility: hidden; }
            .header_fixed.invert .h_fix_logo_white { opacity: 1; visibility: visible; }
        .h_fix_right { display: flex; align-items: center; }
            .h_fix_right > div { margin: 0 0 0 112px; }
                .h_fix_phone { display: inline-block; vertical-align: top; width: 22px; }
                .h_fix_email { display: inline-block; vertical-align: top; width: 23px; }
                    .h_fix_email a { position: relative; }
                    .h_fix_email a:after { content: attr(data-title); position: absolute; left: 50%; top: -20px; opacity: 0; visibility: hidden; -webkit-transition: all 300ms; transition: all 300ms; white-space: nowrap; font-size: 13px; color: #fff; background: rgba(0,0,0,0.7); line-height: 16px; padding: 4px 15px; border-radius: 3px; transform: translate(-50%,0); -moz-transform: translate(-50%,0); -webkit-transform: translate(-50%,0); }
                    .h_fix_email a:hover:after { opacity: 1; top: -25px; visibility: visible; }
                .h_fix_call { display: inline-block; vertical-align: top; width: 22px; }


.block1 { background: url(../img/bg1.jpg) no-repeat center center; background-size: cover; position: relative; z-index: 15; }
.block1:before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 137px; background: rgba(4,5,8,.64); }
    .b1_content { padding: 183px 0 0; width: 100%; display: block; min-height: 577px; position: relative; }
        .b1_logo { margin: 0 0 62px; }
        .b1_title { font-weight: 300; font-size: 46px; color: #aaadb8; line-height: 1.25; margin: 0 0 35px; text-transform: uppercase; }
            .b1_title b { font-weight: 500; color: #fff; }
            .b1_title:first-letter { color: #e02229; }
        .b1_desc { font-size: 30px; color: #fff; font-weight: 300; line-height: 1.25; }
        .b1_img { position: absolute; right: 0; bottom: 0; }
            .b1_img_text { position: absolute; top: 70px; left: -88px; font-size: 18px; color: #fff; font-weight: 300; line-height: 1.25; }
                .b1_img_text:after { content: ''; position: absolute; width: 149px; height: 66px; right: -22px; bottom: -85px; background: url(../img/ico01.png) no-repeat 0 0; }


.block2 { position: relative; z-index: 14; padding: 175px 0 105px; background: url(../img/bg2.jpg) no-repeat bottom center; background-size: cover; border-bottom: 1px solid #e7e7e7; }
    .b2_row { display: flex; align-items: center; }
        .b2_img { width: 37.6%; text-align: center; margin: 0 4.88% 0 0; }
            .b2_img span { position: relative; display: inline-block; font-size: 0; line-height: 0; }
                .b2_img span:before { content: ''; position: absolute; left: -15px; bottom: 0; width: 15px; top: 47px; background: #e72228; }
                .b2_img span:after { content: ''; position: absolute; left: -15px; bottom: -15px; height: 15px; right: 98px; background: #e72228; }
        .b2_text { width: 57.52%; font-size: 24px; line-height: 36px; color: #31354c; font-weight: 300; }


.block3 { position: relative; z-index: 13; padding: 175px 0 105px; background: url(../img/bg2.jpg) no-repeat bottom center; background-size: cover; border-bottom: 1px solid #e7e7e7; }
    .b3_row { display: flex; }
        .b3_text { width: 57.52%; font-size: 24px; line-height: 36px; color: #31354c; font-weight: 300; margin: 0 4.88% 0 0; }
        .b3_img { width: 37.6%; text-align: center; }
            .b3_img span { position: relative; display: inline-block; font-size: 0; line-height: 0; }
                .b3_img span:before { content: ''; position: absolute; left: -15px; bottom: 0; width: 15px; top: 47px; background: #e72228; }
                .b3_img span:after { content: ''; position: absolute; left: -15px; bottom: -15px; height: 15px; right: 98px; background: #e72228; }


.block4 { position: relative; z-index: 12; padding: 175px 0 105px; background: url(../img/bg2.jpg) no-repeat bottom center; background-size: cover; border-bottom: 1px solid #e7e7e7; }
    .b4_row { display: flex; }
        .b4_img { width: 37.6%; text-align: center; margin: 0 4.88% 0 0; }
            .b4_img span { position: relative; display: inline-block; font-size: 0; line-height: 0; }
                .b4_img span:before { content: ''; position: absolute; left: -15px; bottom: 0; width: 15px; top: 47px; background: #e72228; }
                .b4_img span:after { content: ''; position: absolute; left: -15px; bottom: -15px; height: 15px; right: 98px; background: #e72228; }
        .b4_text { width: 57.52%; font-size: 24px; line-height: 36px; color: #31354c; font-weight: 300; }


.block5 { position: relative; z-index: 11; padding: 180px 0 80px; background: #171e37 url(../img/bg3.jpg) no-repeat bottom center; }
    .block5 .block_title { color: #fff; }
    .b5_row { display: flex; width: 100%; justify-content: space-between; flex-wrap: wrap; }
        .b5_item { width: 48.71%; display: flex; height: 183px; align-items: center; box-sizing: border-box; border: 1px solid rgba(194,200,228,.5); padding: 30px 43px; margin: 0 0 27px; }
            .b5_item_img { width: 80px; height: 80px; border: 1px solid rgba(252,252,252,.35); border-radius: 5px; display: flex; align-items: center; justify-content: center; margin: 0 42px 0 0; }
                .b5_item_img img { max-width: 65%; }
            .b5_item_text { max-width: 255px; font-size: 24px; color: #ebf0f8; line-height: 26px; font-weight: 300; }


.block6 { position: relative; z-index: 10; padding: 185px 0 60px; background: #171e37 url(../img/bg4.jpg) no-repeat bottom center; background-size: cover; border-bottom: 1px solid #e7e7e7; }
    .b6_row { display: flex; width: 100%; justify-content: space-between; flex-wrap: wrap; }
        .b6_item { width: 48.71%; display: flex; box-sizing: border-box; background: #fff; border: 1px solid #c2c8e4; box-shadow: 0 0 24px rgba(204,204,204,0.33); margin: 0 0 20px; padding: 35px 44px; min-height: 241px; }
            .b6_item_img { width: 80px; height: 80px; box-sizing: border-box; margin: 0 40px 0 0; background: #fcfcfc; border: 1px solid #e0e7f0; border-radius: 5px; display: flex; align-items: center; justify-content: center; }
                .b6_item_img img { max-width: 65%; }
            .b6_item_right { width: calc(100% - 120px); }
                .b6_item_title { font-size: 24px; font-weight: 700; color: #31354c; line-height: 1; margin: 0 0 24px; }
                .b6_item_list { display: flex; }
                    .b6_item_list ul { list-style: none; display: inline-block; }
                    .b6_item_list ul + ul { margin-left: 48px; }
                        .b6_item_list ul li { position: relative; font-size: 18px; color: #31354c; line-height: 22px; font-weight: 300; }
                            .b6_item_list ul li:before { content: '—'; position: absolute; top: 0; left: -21px; }


.block7 { position: relative; z-index: 9; background: #fdfdfd; padding: 185px 0 145px; border-bottom: 1px solid #e7e7e7; }
    .b7_row { position: relative; background: url(../img/b7_line.png) no-repeat center center; background-size: 81% auto; height: 445px; }
        .b7_item { width: 23.07%; position: absolute; text-align: center; padding: 0 12px 25px; box-sizing: border-box; }
        .b7_item:nth-child(1) { left: -2%; bottom: 57%; }
        .b7_item:nth-child(2) { left: 9.7%; top: 57%; }
        .b7_item:nth-child(3) { left: 20.9%; bottom: 57%; }
        .b7_item:nth-child(4) { left: 32.6%; top: 57%; }
        .b7_item:nth-child(5) { left: 44%; bottom: 57%; }
        .b7_item:nth-child(6) { left: 55.8%; top: 57%; }
        .b7_item:nth-child(7) { left: 67.3%; bottom: 57%; }
        .b7_item:nth-child(8) { left: 78.7%; top: 57%; }
        .b7_item:nth-child(odd) { display: flex; flex-wrap: wrap; justify-content: center; flex-direction: column-reverse; padding: 25px 12px 0; }
            .b7_item_number { position: absolute; top: -74px; z-index: 2; left: 50%; width: 36px; height: 36px; margin: 0 0 0 -18px; border-radius: 50%; box-sizing: border-box; border: 4px solid #ff3333; background: #dee8f6; text-align: center; line-height: 28px; font-size: 18px; color: #171e37; font-weight: 700; box-shadow: 0 10px 26px rgba(204,204,204,0.5); }
            .b7_item:nth-child(odd) .b7_item_number { top: auto; bottom: -74px; }
            .b7_item:before { content: ''; position: absolute; left: 50%; width: 1px; height: 40px; top: -39px; z-index: 1; background: #ff3333; margin: 0 0 0 -0.5px; }
            .b7_item:nth-child(odd):before { top: auto; bottom: -39px; }     
            .b7_item_img { width: 80px; height: 80px; position: relative; z-index: 2; background: #171e37; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 30px; box-shadow: 0 5px 15px rgba(0,0,0,0.1); box-shadow: 0 10px 26px rgba(204,204,204,0.5); }
            .b7_item:nth-child(odd) .b7_item_img { margin: 30px auto 0; } 
                .b7_item_img img { max-width: 72%; max-height: 72%; }
            .b7_item_title { width: 100%; position: relative; z-index: 2; margin: 0 0 12px; font-size: 20px; color: #000; line-height: 1; }
            .b7_item:nth-child(odd) .b7_item_title { margin: 12px 0 0; }  
            .b7_item_text { width: 100%; position: relative; z-index: 2; font-size: 18px; line-height: 20px; font-weight: 300; color: #000; visibility: hidden; opacity: 0; -webkit-transition: all 300ms; transition: all 300ms; }
            .b7_item:hover .b7_item_text { opacity: 1; visibility: visible; }
            .b7_item:after { content: ''; position: absolute; z-index: 1; top: 45px; left: 0; right: 0; bottom: 0; background: #fff; border-radius: 8px; border: 1px solid #ebebeb; box-shadow: 0 10px 26px rgba(204,204,204,0.5); opacity: 0; -webkit-transition: all 300ms; transition: all 300ms; }
            .b7_item:nth-child(odd):after { top: 0; bottom: 45px; } 
            .b7_item:hover:after { opacity: 1; }


.block8 { position: relative; z-index: 8; padding: 178px 0 60px; background: url(../img/bg2.jpg) no-repeat bottom center; background-size: cover; border-bottom: 1px solid #e7e7e7; }
    #work { padding: 0; position: relative; }
        .work_item { display: none; }
        .work_item.active { display: block; }
            .work_item_top { margin: 0 240px 54px; text-align: center; }
                .work_item_title { font-size: 30px; color: #31354c; font-weight: 700; line-height: 1.2; margin: 0; }
                .work_item_desc { font-size: 18px; color: #31354c; font-weight: 300; line-height: 1.2; margin: 0; }
            .work_item_tabs_list { margin: 0 0 29px; }
                .work_item_tabs_list ul { display: flex; width: 100%; list-style: none; border: 1px solid #e0e1e4; box-sizing: border-box; }
                    .work_item_tabs_list ul li { display: block; flex: 1; cursor: pointer; padding: 20px 25px; border-right: 1px solid #7f818c; font-size: 18px; color: #f6f9fc; font-weight: 700; line-height: 20px; text-align: center; white-space: nowrap; background: #31354c; -webkit-transition: all 300ms; transition: all 300ms; }
                    .work_item_tabs_list ul li.active, .work_item_tabs_list ul li:hover { background: #e42227; }
            .work_bottom { display: flex; justify-content: space-between; }
                .work_items_tab_content_wrap { width: 48.71%; }
                    .work_items_tab_content { display: none; }
                    .work_items_tab_content.active { display: block; }
                        .work_items_tab_content_top { margin: 0 0 12px; display: flex; align-items: center; }
                            .work_items_tab_content_top i { margin: 0 10px 0 0; border: 1px solid #e7e7e7; border-radius: 5px; width: 80px; height: 80px; display: flex; align-items: center; justify-content: center; }
                                .work_items_tab_content_top i img { max-width: 80%; max-height: 80%; }
                            .work_items_tab_content_top span { color: #31354c; font-size: 24px; font-weight: 700; }
                        .work_items_tab_content_text { padding: 0 0 0 10px; }
                            .work_items_tab_content_text p { font-size: 18px; color: #000; font-weight: 300; line-height: 1.2; margin: 0 0 9px; }
                .work_bottom_preview { width: 50%; }
                    .work_bottom_preview_img { position: relative; margin: 0 0 26px; width: 100%; }
                        .work_bottom_preview_img_laptop { width: 114.5299%; max-width: none; }
                        .work_bottom_preview_img_src { width: 81.5384%; position: absolute; top: 4.1%; left: 16.5811%; }
                    .work_bottom_preview_btn { text-align: center; padding: 0 0 0 14.52%; }
        .work_nav_prev { position: absolute; left: 0; top: 9px; font-size: 18px; color: #31354c; font-weight: 700; line-height: 22px; padding: 0 0 0 35px; }
        .work_nav_next { position: absolute; right: 0; top: 9px; font-size: 18px; color: #31354c; font-weight: 700; line-height: 22px; padding: 0 35px 0 0; }
        .work_nav_prev:hover, .work_nav_next:hover { color: #7c99c3; }
            .work_nav_prev:before { content: ''; position: absolute; left: 0; top: 50%; width: 25px; height: 19px; margin: -9.5px 0 0; background: url(../img/work_arrow.png) no-repeat 0 -19px; -webkit-transition: all 300ms; transition: all 300ms; }
            .work_nav_next:before { content: ''; position: absolute; right: 0; top: 50%; width: 25px; height: 19px; margin: -9.5px 0 0; background: url(../img/work_arrow.png) no-repeat -25px -19px; -webkit-transition: all 300ms; transition: all 300ms; }
            .work_nav_prev:hover:before { background-position: 0 0; }
            .work_nav_next:hover:before { background-position: -25px 0; }


.block9 { position: relative; z-index: 7; padding: 178px 0 78px; background: url(../img/bg2.jpg) no-repeat bottom center; background-size: cover; border-bottom: 1px solid #e7e7e7; }
    .block9 .block_title { margin: 0 0 80px; }
    .b9_list { display: flex; justify-content: space-between; }
        .b9_item { width: 48.71%; background: #fff; border-radius: 7px; padding: 0 0 119px; overflow: hidden; box-sizing: border-box; border: 1px solid #ebebeb; box-shadow: 0 10px 26px rgba(204,204,204,0.5); text-align: center; position: relative; }
            .b9_item_title { background: #d5e0f3; padding: 35px 20px 12px; font-size: 30px; color: #31354c; font-weight: 700; line-height: 1.2; }
            .b9_item_price { background: #e9eff9; padding: 15px 20px; font-size: 48px; color: #31354c; font-weight: 700; line-height: 50px; }
            .b9_item_list { padding: 0 40px; }
                .b9_item_list_title { border-bottom: 1px solid #eaeef3; font-size: 20px; color: #31354c; font-weight: 700; line-height: 1.2; padding: 16px 0; }
                .b9_item_list_item { border-bottom: 1px solid #eaeef3; font-size: 20px; color: #31354c; line-height: 1.2; padding: 16px 0; }
                    .b9_item_list_item:before { content: ''; width: 18px; height: 14px; display: inline-block; vertical-align: top; background: url(../img/ico_list_price.png) no-repeat 0 0; margin: 5px 16px 0 0; }
            .b9_item_btn { position: absolute; left: 40px; right: 40px; bottom: 29px; }
                .b9_item_btn a { font-size: 20px; color: #fff; text-decoration: none; font-weight: 600; line-height: 24px; display: inline-block; vertical-align: top; width: 100%; padding: 19px 20px 20px; border: 3px solid #e72228; box-sizing: border-box; border-radius: 35px; background: linear-gradient(to bottom, #e72228, #e72228); box-shadow: 0 19px 30px rgba(255,0,0,.36); }
                .b9_item_btn a:hover { border-color: #f6594b; background: linear-gradient(to bottom, #f9423a, #ee2e33); }
                .b9_item_btn a:active { border-color: #e72c2a; background: linear-gradient(to bottom, #f22120, #dd171c); }


#learn_more { position: relative; z-index: 6; }
    .block10 { background: #171e37 url(../img/bg5.jpg) no-repeat top center; padding: 178px 0 187px; border-bottom: 1px solid #d9d9d9; }
        .block10 .block_title { color: #fff; margin: 0 0 155px; }
        .b10_list { width: 100%; display: flex; justify-content: space-between; }
            .b10_item_left { max-width: 380px; font-size: 24px; color: #ebf0f8; line-height: 1.2; font-weight: 300; }
            .b10_item_right { max-width: 370px; font-size: 24px; color: #ebf0f8; line-height: 1.2; font-weight: 300; }
                .b10_list_title { margin: 0 0 29px; }
                .b10_item { margin: 0 0 30px; padding: 0 0 0 35px; position: relative; }
                .b10_item:last-child { margin: 0; }
                    .b10_item:before { content: ''; position: absolute; left: 0; top: 7px; width: 22px; height: 17px; background: url(../img/b10_list.png) no-repeat 0 0; }
    .block11 { padding: 40px 0 27px; background: #fff; border-bottom: #e5e5e5; box-shadow: 0 0 24px rgba(204,204,204,.33); }
        .b11_form { padding: 0 0 0 8.54%; }
            .b11_form_row { display: flex; align-items: center; margin: 0 0 34px; }
                .b11_form_title { font-size: 30px; color: #f00; font-weight: 700; line-height: 1.2; }
                .b11_form_input { margin: 0 15px 0 40px; width: 40.17%; }
                    input[type="text"] { width: 100%; height: 70px; box-sizing: border-box; background: #fff; border: 1px solid #cccccc; border-radius: 4px; padding: 21px 27px; font-size: 24px; line-height: 28px; font-weight: 300; color: #000; }
                    ::-webkit-input-placeholder {color:#000;}
                    ::-moz-placeholder          {color:#000;}/* Firefox 19+ */
                    :-moz-placeholder           {color:#000;}/* Firefox 18- */
                    :-ms-input-placeholder      {color:#000;}
                    input[type="text"]:focus { box-shadow: 0 0 24px rgba(204,204,204,0.33); background: #fff; }
                .b11_form_btn { width: 315px; }
                    button[type="submit"] { width: 100%; height: 70px; box-sizing: border-box; outline: none; cursor: pointer; font-size: 18px; color: #fff; text-decoration: none; font-weight: 800; line-height: 24px; display: inline-block; vertical-align: top; width: 100%; padding: 20px 20px 20px; border: 3px solid #e72228; box-sizing: border-box; border-radius: 35px; background: linear-gradient(to bottom, #e72228, #e72228); box-shadow: 0 19px 30px rgba(255,0,0,.36); }
                    button[type="submit"]:hover { border-color: #f6594b; background: linear-gradient(to bottom, #f9423a, #ee2e33); }
                    button[type="submit"]:active { border-color: #e72c2a; background: linear-gradient(to bottom, #f22120, #dd171c); }
            .b11_form_check { display: block; }
                .b11_form_check label { cursor: pointer; display: inline-block; vertical-align: top; padding: 0 0 0 42px; position: relative; font-size: 16px; color: #31354c; font-weight: 700; line-height: 1.2; }
                    .b11_form_check label input[type="checkbox"] { display: none; }
                    .b11_form_check label span { width: 26px; height: 26px; background: #fff; box-sizing: border-box; position: absolute; left: 0; top: 50%; margin: -14px 0 0; border: 1px solid #e82e2b; border-radius: 3px; }
                        .b11_form_check label input[type="checkbox"]:checked + span:before { content: ''; position: absolute; width: 26px; height: 19px; background: url(../img/check.png) no-repeat 0 0; left: 4px; top: 0; }
                    .b11_form_check label span:after { content: 'Пожалуйста, поставьте галочку в знак согласия на обработку Ваших персональных данных'; position: absolute; left: 0; top: -30px; opacity: 0; visibility: hidden; -webkit-transition: all 300ms; transition: all 300ms; white-space: nowrap; font-size: 13px; color: #fff; background: rgba(0,0,0,0.8); line-height: 16px; padding: 4px 15px; border-radius: 3px; }
                    .b11_form_check label input[type="checkbox"].error + span:after { opacity: 1; top: -35px; visibility: visible; }
                    .b11_form_check label a { color: #31354c; text-decoration: none; }
                    .b11_form_check label a:hover { text-decoration: underline; }
            .input_error { position: relative; }
                .input_error span { display: none; position: absolute; left: 50%; top: -14px; transform: translate(-50%,-50%); -moz-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); white-space: nowrap; font-size: 13px; color: #fff; background: rgba(0,0,0,0.8); line-height: 16px; padding: 4px 15px; border-radius: 3px; }


.block12 { padding: 53px 0 0; background: #ecf1fa; }
    .b12_logo { text-align: center; margin: 0 0 29px; }
    .b12_title { margin: 0 0 38px; font-size: 36px; color: #31354c; line-height: 1.25; text-align: center; }
    .b12_form { padding: 40px 0 28px; border-top: 1px solid #dcdee3; border-bottom: 1px solid #dcdee3; }
    .b12_contacts { padding: 35px 0 42px; }
        .b12_contacts_row { width: 100%; display: flex; justify-content: space-between; }
            .b12_contacts_left { width: 48.71%; display: flex; justify-content: space-between; }
                .b12_contacts_phone { margin: 0 0 36px; }
                    .b12_contacts_phone a { display: inline-block; vertical-align: top; padding: 0 0 0 30px; position: relative; font-size: 16px; color: #171e37; line-height: 20px; text-decoration: none; }
                        .b12_contacts_phone a:after { content: ''; width: 21px; height: 20px; background: url(../img/phone.svg) no-repeat 0 0; position: absolute; left: 1px; top: 50%; margin: -10px 0 0; }
                    .b12_contacts_phone a:hover { color: #e82d2b; }
                .b12_contacts_email { margin: 0; }
                    .b12_contacts_email a { display: inline-block; vertical-align: top; padding: 0 0 0 30px; position: relative; font-size: 16px; color: #171e37; line-height: 20px; text-decoration: none; }
                        .b12_contacts_email a:after { content: ''; width: 23px; height: 20px; background: url(../img/envelope.svg) no-repeat center center; position: absolute; left: 0; top: 50%; margin: -10px 0 0; }
                    .b12_contacts_email a:hover { color: #e82d2b; }
                        .b12_contacts_email a:before { content: attr(data-title); position: absolute; left: 50%; top: -20px; opacity: 0; visibility: hidden; -webkit-transition: all 300ms; transition: all 300ms; white-space: nowrap; font-size: 13px; color: #fff; background: rgba(0,0,0,0.7); line-height: 16px; padding: 4px 15px; border-radius: 3px; transform: translate(-50%,0); -moz-transform: translate(-50%,0); -webkit-transform: translate(-50%,0); }
                        .b12_contacts_email a:hover:before { opacity: 1; top: -25px; visibility: visible; }
                .b12_contacts_adres { margin: 0 0 16px; padding: 0 0 0 30px; position: relative; font-size: 16px; color: #19213b; line-height: 20px; }
                    .b12_contacts_adres:after { content: ''; width: 19px; height: 28px; background: url(../img/adres.png) no-repeat center center; position: absolute; left: 0; top: -4px; margin: 0; }
                .b12_contacts_politics { padding: 0 0 0 30px; }
                    .b12_contacts_politics a { font-size: 16px; color: #e82d2b; line-height: 20px; text-decoration: none; }
                    .b12_contacts_politics a:hover { text-decoration: underline; }
            .b12_contacts_social { width: 48.71%; display: flex; justify-content: space-between; }
                .b12_contacts_social_title { font-size: 16px; line-height: 20px; color: #000; }
                    .b12_contacts_social_title b { font-weight: 700; }
                .b12_contacts_social_list { display: flex; }
                    .b12_contacts_social_list a { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; margin: 0 34px 0 0; border: 1px solid #9594a2; border-radius: 50%; }
                    .b12_contacts_social_list a:last-child { margin: 0; }
                    .b12_contacts_social_list a:hover { border-color: #e22f3b; }


.footer { padding: 20px 0; background: #e72228; }
    .f_copiryght { font-size: 16px; color: #fefefe; line-height: 20px; }


.modal { width: 90%; max-width: 430px; padding: 0; margin: 25px auto; background: #fff; box-sizing: border-box; border: 1px solid #c2c8e4; border-radius: 4px; box-shadow: 0 0 24px rgba(204,204,204,.33); overflow: visible; }
    .fancybox-slide--html .fancybox-close-small { width: 40px; height: 40px; top: -1px; right: -47px; background: #e72228; border-radius: 3px; padding: 4px; box-sizing: border-box; opacity: 1; }
        .fancybox-slide--html .fancybox-close-small path { fill: #fff; }
    .fancybox-slide--html .fancybox-close-small:hover { opacity: .8; }
    .modal_top { padding: 38px 29px 33px; }
        .modal_title { margin: 0 0 38px; text-align: center; font-size: 24px; color: #302e34; line-height: 1.2; text-transform: uppercase; }
        .modal_title:first-letter { color: #e02229; }
            .modal_title span { display: block; font-size: 20px; text-transform: none; }
        .modal_input_row { margin: 0 0 20px; }
            .modal_input_row input[type="text"] { background: #f7f9fd; border-color: #c2c8e4; height: 60px; padding: 18px 23px; font-size: 18px; line-height: 22px; }
            .modal_input_row input[type="text"]:focus { background: #fff; }
        .modal .b11_form_check label { font-size: 14px; }
    .modal_bottom { background: #f7f9fd; border-top: 1px solid #c2c8e4; padding: 19px 29px 50px; }
    .modal_container { padding: 39px 29px; }
        .modal_icon { width: 172px; height: 172px; box-sizing: border-box; border: 1px solid #e0e7f0; display: flex; align-items: center; justify-content: center; margin: 0 auto 27px; }
        .modal_title_02 { font-size: 24px; color: #302e34; line-height: 1.2; margin: 0; text-align: center; text-transform: uppercase; }
        .modal_desc { font-size: 20px; color: #302e34; line-height: 1.2; margin: 0 0 34px; text-align: center; }
        .modal_desc_02 { font-size: 20px; color: #302e34; line-height: 1.2; margin: 16px 0 34px; text-align: center; }
        .modal_good_bottom { background: #ecf2fa; border-radius: 8px; text-align: center; padding: 30px 15px 40px; font-size: 20px; color: #302e34; line-height: 1.2; }
            .modal_good_bottom span { font-size: 24px; text-transform: uppercase; }


input[type="text"].error, .modal_input_row input[type="text"].error { border-color: #f00; }

#politics { max-width: 1170px; }
    .politics_content { padding: 30px 29px; }

.confidencial_page, .good_page { padding: 190px 0 70px; }


@media only screen and (max-width: 1499px) {
    
    .points_blocks { left: 25px; }
    
    .block1:before { width: 75px; }
    
}

@media only screen and (max-width: 1359px) {
    
    .container { max-width: 960px; box-sizing: border-box; padding: 0 15px 0 110px; }
    .block_title { font-size: 26px; }
    
    .points_blocks { left: calc(100% / 2 - 455px); }
    .btn_next_block { right: 15px; }
    
    .header_fixed { padding: 15px 0; }
        .h_fix_logo_wrap { margin-left: -110px; width: 200px; height: 58px; }
    
    .block1:before { width: calc(100% / 2 - 405px); }
    .b1_content { padding: 140px 0; min-height: 0; }
        .b1_img { right: -15px; max-width: 400px; }
        .b1_title { font-size: 36px; }
        .b1_desc { font-size: 24px; }
    
    .b2_text, .b3_text, .b4_text { font-size: 21px; line-height: 32px; }
    
    .b5_item_img { margin: 0 20px 0 0; }
    .b5_item_text { font-size: 16px; line-height: 21px; }
    
    .b6_item { min-height: 0; }
        .b6_item_img { margin: 0 30px 0 0; }
        .b6_item_right { width: calc(100% - 110px); }
            .b6_item_title { font-size: 16px; margin: 0 0 16px; }
            .b6_item_list ul li { font-size: 14px; line-height: 18px; }
    
    .b7_item:nth-child(1), .b7_item:nth-child(3), .b7_item:nth-child(5), .b7_item:nth-child(7) { bottom: 58.5%; }
    .b7_item:nth-child(2), .b7_item:nth-child(4), .b7_item:nth-child(6), .b7_item:nth-child(8) { top: 58.5%; }
        .b7_item_img { margin: 0 auto 15px; }
        .b7_item:nth-child(odd) .b7_item_img { margin: 15px auto 0; }
        .b7_item_title { font-size: 16px; }
        .b7_item_text { font-size: 14px; line-height: 17px; }
    
    .work_nav_prev, .work_nav_next { font-size: 13px; }
    .work_item_top { margin: 0 180px 40px; }
        .work_item_title { font-size: 22px; line-height: 1.2; }
        .work_item_desc { font-size: 15px; }
    .work_bottom_preview_img_laptop { width: 100%; }
    .work_bottom_preview_img_src { width: 70.8%; top: 4.5%; left: 14.7%; }
    .work_bottom_preview_btn { padding: 0; }
        .work_bottom_preview_btn img { max-width: 35px; }
    .work_items_tab_content_text p { font-size: 15px; }
    
    .b9_item_title { font-size: 22px; padding: 20px 20px 12px; }
    .b9_item_price { font-size: 32px; line-height: 1.2; }
    .b9_item_list { padding: 0 20px; }
        .b9_item_list_title { font-size: 16px; }
        .b9_item_list_item { font-size: 16px; }
    .b9_item_btn { left: 20px; right: 20px; }
        .b9_item_btn a { font-size: 17px; padding: 17px 18px 18px; }
    
    .b10_item_left { font-size: 18px; max-width: 320px; }
    .b10_item_right { font-size: 18px; max-width: 310px; }
    
    .b11_form { padding: 0; }
    .b11_form_title { font-size: 20px; }
    
    .b12_title { font-size: 26px; }
    .b12_contacts_phone a, .b12_contacts_email a, .b12_contacts_politics a, .b12_contacts_adres { font-size: 13px; }
    .b12_contacts_social_title { font-size: 13px; }
    .b12_contacts_social_list a { margin: 0 10px 0 0; width: 40px; height: 40px; }
    .f_copiryght { font-size: 13px; }
    
    
}

@media only screen and (max-width: 992px) {
    
    .container { max-width: 750px; padding: 0 15px 0 63px; }
    .block_title { font-size: 22px; padding: 0 0 19px; margin: 0 0 36px; background-size: 166px auto; }
    
    .points_blocks { left: calc(100% / 2 - 352px); }
        .points_blocks ul li { padding: 4px 0; }
            .points_blocks ul li a { width: 18px; height: 18px; }
                .points_blocks ul li a:after { width: 4px; height: 4px; left: 6px; top: 6px; }
    
    .header { top: 13px; }
        .header .container { padding-left: 110px; }
            .h_phone a, .h_email a, .h_call a { font-size: 12px; line-height: 14px; }
                .h_phone a i { width: 13px; margin: 0.5px 1px 0 0; }
                .h_email a i { width: 14px; margin: 0 4px 0 0; }
                .h_call a i { width: 14px; margin: 0 2px 0 0; }
    
    .header_fixed { padding: 18px 0; }
        .h_fix_logo_wrap { width: 145px; height: 42px; margin: 0 0 0 -48px; }
        .h_fix_right > div { margin: 0 0 0 70px; }
            .h_fix_call, .h_fix_email { width: 14px; }
            .h_fix_phone { width: 13px; }
    
    .block1:before { width: calc(100% / 2 - 312px); }
    .b1_content { padding: 109px 0 124px 47px; box-sizing: border-box; }
        .b1_logo { max-width: 147px; margin: 0 0 40px; }
        .b1_title { font-size: 28px; margin: 0 0 25px; }
        .b1_desc { font-size: 18px; }
        .b1_img { max-width: 312px; }
            .b1_img_text { font-size: 14px; line-height: 15px; left: -56px; top: 40px; }
                .b1_img_text:after { width: 92px; height: 42px; background-size: 100% 100%; bottom: -54px; right: 18px; }
    
    .block2, .block3, .block4 { padding: 114px 0 72px; }
        .block2 .container, .block3 .container, .block4 .container { padding-left: 110px; }
    .block2 .block_title, .block3 .block_title, .block4 .block_title { margin-left: -48px; }
            .b2_row { align-items: baseline; }
                .b2_img span:before, .b3_img span:before, .b4_img span:before { width: 9px; left: -9px; }
                .b2_img span:after, .b3_img span:after, .b4_img span:after { height: 9px; left: -9px; bottom: -9px; }
                .b2_text, .b3_text, .b4_text { font-size: 15px; line-height: 22px; }
    
    .block5 { padding: 114px 0 47px; background-size: cover; }
        .b5_item { padding: 28px 14px; margin: 0 0 20px; width: 47.52%; height: 110px; }
            .b5_item_img { width: 50px; height: 50px; margin: 0 17px 0 0; }
            .b5_item_text { font-size: 14px; line-height: 16px; }
    
    .block6 { padding: 125px 0 40px; }
        .b6_item { width: 47.52%; padding: 19px 19px 15px 14px; }
            .b6_item_img { width: 50px; height: 50px; margin: 0 14px 0 0; }
            .b6_item_right { width: calc(100% - 64px); }
                .b6_item_title { font-size: 14px; line-height: 15px; margin: 0 0 10px; }
                .b6_item_list ul { margin: 0 0 0 13px; }
                .b6_item_list ul + ul { margin-left: 24px; }
                    .b6_item_list ul li { font-size: 12px; line-height: 1.2; }
                        .b6_item_list ul li:before { left: -13px; }
    
    .block7 { padding: 115px 0 86px; }
        .b7_row { height: 258px; margin: 48px 0 0; }
            .b7_item:nth-child(1), .b7_item:nth-child(3), .b7_item:nth-child(5), .b7_item:nth-child(7) { bottom: 56.5%; }
            .b7_item:nth-child(2), .b7_item:nth-child(4), .b7_item:nth-child(6), .b7_item:nth-child(8) { top: 56.5%; }
                .b7_item:before { height: 23px; top: -22px; }
                .b7_item:nth-child(odd):before { bottom: -22px; }
                .b7_item_number { width: 21px; height: 21px; line-height: 12px; font-size: 10px; margin: 0 0 0 -10.5px; top: -42px; }
                .b7_item:nth-child(odd) .b7_item_number { bottom: -42px; }
                .b7_item_img { width: 46px; height: 46px; margin: 0 auto 17px; }
                .b7_item:nth-child(odd) .b7_item_img { margin: 17px auto 0; }
                .b7_item_title { font-size: 12px; margin: 0 0 9px; }
                .b7_item:nth-child(odd) .b7_item_title { margin: 9px 0 0; }
                .b7_item_text { font-size: 12px; line-height: 1; }
                .b7_item:after { top: 27px; }
                .b7_item:nth-child(odd):after { bottom: 27px; top: 0; }
    
    .block8 { padding: 117px 0 30px; }
        .work_nav_prev { padding: 0 0 0 22px; font-size: 12px; line-height: 15px; top: 4px; }
            .work_nav_prev:before { width: 15px; height: 12px; background-size: 30px 24px; background-position: 0 -12px; margin: -6px 0 0; }
            .work_nav_prev:hover:before { background-position: 0 0; }
        .work_nav_next { padding: 0 22px 0 0; font-size: 12px; line-height: 15px; top: 4px; }
            .work_nav_next:before { width: 15px; height: 12px; background-size: 30px 24px; background-position: -15px -12px; margin: -6px 0 0; }
            .work_nav_next:hover:before { background-position: -15px 0; }
        .work_item_top { margin: 0 135px 25px; }
            .work_item_title { font-size: 18px; }
            .work_item_desc { font-size: 12px; }
        .work_item_tabs_list { margin: 0 0 27px; }
            .work_item_tabs_list ul li { font-size: 11px; line-height: 15px; padding: 10px 14px; }
            .work_items_tab_content_top i { width: 50px; height: 50px; }
            .work_items_tab_content_top span { font-size: 15px; }
            .work_items_tab_content_text p { margin: 0 0 5px; font-size: 12px; }
        .work_bottom_preview_img { margin: 0 0 18px; }
        .work_bottom_preview_btn img { max-width: 28px; }
    
    .block9 { padding: 117px 0 41px; }
        .block9 .block_title { margin: 0 0 43px; }
        .b9_item { padding: 0 0 86px; }
            .b9_item_title { padding: 20px 20px 10px; font-size: 18px; }
            .b9_item_price { font-size: 30px; padding: 6px 20px; }
            .b9_item_list { padding: 0; }
                .b9_item_list_title { font-size: 12px; padding: 12px 15px 6px; }
                .b9_item_list_item { font-size: 12px; padding: 8px 16px 6px; }
                    .b9_item_list_item:before { width: 12px; height: 9px; background-size: 100% 100%; margin: 1px 10px 0 0; }
        .b9_item_btn { bottom: 26px; left: 16px; right: 16px; }
            .b9_item_btn a { font-size: 13px; line-height: 16px; padding: 10px 10px 11px; }
    
    .block10 { padding: 112px 0 90px; background-size: auto 100%; }
        .block10 .block_title { margin: 0 0 99px; }
        .b10_item_left { max-width: 240px; font-size: 15px; }
        .b10_item_right { max-width: 220px; font-size: 15px; }
            .b10_list_title { margin: 0 0 20px; }
            .b10_item { padding: 0 0 0 21px; margin: 0 0 23px; }
                .b10_item:before { width: 14px; height: 11px; background-size: 100% 100%; }
    
    .block11 { padding: 26px 0 14px; }
        .b11_form_row { margin: 0 0 19px; }
            .b11_form_title { font-size: 18px; }
            .b11_form_input { margin: 0 12px 0 30px; width: 35%; max-width: 300px; }
                input[type="text"] { height: 43px; font-size: 12px; line-height: 14px; padding: 14px 16px 15px; }
            .b11_form_btn { width: 188px; }
                button[type="submit"] { height: 43px; font-size: 12px; line-height: 14px; padding: 11px 11px 12px; }
    .b11_form_check label { padding: 0 0 0 25px; font-size: 12px; line-height: 14px; }
        .b11_form_check label span { width: 16px; height: 16px; margin: -8px 0 0; }
            .b11_form_check label input[type="checkbox"]:checked + span:before { width: 16px; height: 12px; background-size: 100% 100%; top: -1px; left: 2px; }
    
    .block12 { padding: 32px 0 0; }
        .b12_logo { margin: 0 0 17px; }
            .b12_logo img { max-width: 145px; }
            .b12_title { font-size: 22px; margin: 0 0 30px; }
    .b12_contacts { padding: 16px 0 25px; }
        .b12_contacts_phone { margin: 0 0 18px; }
        .b12_contacts_adres { margin: 0 0 7px; }
        .b12_contacts_politics { padding: 0 0 0 18px; }
            .b12_contacts_phone a, .b12_contacts_email a, .b12_contacts_politics a, .b12_contacts_adres { font-size: 12px; padding: 0 0 0 18px; line-height: 15px; }
            .b12_contacts_politics a { padding: 0; }
                .b12_contacts_phone a:after { width: 13px; height: 12px; background-size: 100% 100%; margin: -6px 0 0; }
                .b12_contacts_email a:after { width: 14px; height: 12px; background-size: 100% 100%; margin: -6px 0 0; }
                .b12_contacts_adres:after { width: 12px; height: 17px; background-size: 100% 100%; top: -2px; }
        .b12_contacts_social_title { font-size: 12px; line-height: 15px; }
        .b12_contacts_social_list a { width: 30px; height: 30px; margin: 0 5px 0 0; }
    
    .footer { padding: 11px 0; }
        .footer .container { padding: 0 15px; }
        .f_copiryght { font-size: 12px; text-transform: uppercase; }
    
    .modal { max-width: 300px; }
        .fancybox-slide--html .fancybox-close-small { width: 25px; height: 25px; padding: 2px; right: -30px; }
        .modal_top { padding: 25px 16px 21px; }
            .modal_title { font-size: 18px; margin: 0 0 20px; }
            .modal_input_row { margin: 0 0 14px; }
                .modal_input_row input[type="text"] { height: 43px; font-size: 12px; line-height: 14px; padding: 11px 11px 12px; }
                .b11_form_check label span:after { font-size: 12px; line-height: 1.2; white-space: normal; width: 236px; left: -1px; padding: 4px 10px; top: -50px; }
                .b11_form_check label input[type="checkbox"].error + span:after { top: -55px; }
        .modal_bottom { padding: 13px 16px 24px; }
    .modal_container { padding: 25px 16px; }
        .modal_icon { width: 100px; height: 100px; margin: 0 auto 17px; }
            .modal_icon img { max-width: 45px; max-height: 45px; }
            .modal_title_02 { font-size: 18px; }
            .modal_desc { font-size: 15px; margin: 0; }
            .modal_desc_02 { font-size: 15px; margin: 6px 0 15px; }
            .modal_good_bottom { padding: 13px 10px 15px; font-size: 15px; }
                .modal_good_bottom span { font-size: 18px; }
    .modal .b11_form_check label { font-size: 12px; }
    
}

@media only screen and (max-width: 749px) {
    
    .container { max-width: 480px; padding: 0 15px; }
    
    .points_blocks, .btn_next_block { display: none; }
    
    .header .container { padding-left: 15px; }
    
    .h_fix_logo_wrap { margin: 0; } 
    
    .block1 { overflow: hidden; }
        .block1:before { content: none; display: none; }
        .b1_content { padding: 90px 0 50px; }
            .b1_logo { margin: 0 0 34px; }
            .b1_title { font-size: 22px; margin: 0 0 20px; }
            .b1_desc { max-width: 220px; }
            .b1_img { max-width: 230px; right: -36px; }
                .b1_img_text { top: 12px; left: -74px; }
    
    .block2 .container, .block3 .container, .block4 .container { padding-left: 15px; }
        .block2 .block_title, .block3 .block_title, .block4 .block_title { margin-left: 0; }
        .block_title { font-size: 18px; }
    
    .b5_item { width: 100%; padding: 12px 16px; margin: 0 0 9px; height: auto; }
    
    .b6_item { width: 100%; padding: 16px 16px 12px; margin: 0 0 9px; }
    
    .b7_row { height: 515px; background: none; }
        .b7_row:before { content: ''; position: absolute; width: 1px; top: 25px; bottom: 70px; left: 50%; margin: 0; background: #e72228; }
        .b7_item { width: 150px; z-index: 2; padding: 0 12px 18px; }
        .b7_item:hover { z-index: 5; }
        .b7_item:nth-child(1), .b7_item:nth-child(3), .b7_item:nth-child(5), .b7_item:nth-child(7) { right: 50%; left: auto; margin: 0 42px 0 0; padding: 0 12px 18px; flex-direction: column; bottom: auto; }
        .b7_item:nth-child(2), .b7_item:nth-child(4), .b7_item:nth-child(6), .b7_item:nth-child(8) { left: 50%; margin: 0 0 0 43px; }
            .b7_item:nth-child(odd) .b7_item_img, .b7_item_img { margin: 0 auto 10px; }
            .b7_item:nth-child(odd) .b7_item_title { margin: 0 0 9px; }
            .b7_item:nth-child(odd):after { bottom: 0; top: 27px; }
            .b7_item_number { left: -53px; top: 13px; margin: 0; }
            .b7_item:before { width: 89px; height: 0; left: -32px; top: 23px; margin: 0; border-top: 1px dotted #e72228; background: none; }
            .b7_item:nth-child(odd) .b7_item_number { bottom: auto; left: auto; right: -53px; top: 13px; margin: 0; }
            .b7_item:nth-child(odd):before { left: auto; right: -32px; bottom: auto; top: 23px; margin: 0; }
        .b7_item:nth-child(1) { top: 0; }
        .b7_item:nth-child(2) { top: 60px; }
        .b7_item:nth-child(3) { top: 119px; }
        .b7_item:nth-child(4) { top: 181px; }
        .b7_item:nth-child(5) { top: 241px; }
        .b7_item:nth-child(6) { top: 300px; }
        .b7_item:nth-child(7) { top: 360px; }
        .b7_item:nth-child(8) { top: 421px; }
    
    .work_nav_prev { top: 57px; left: auto; right: 50%; margin: 0 15px 0 0; z-index: 10; }
    .work_nav_next { top: 57px; right: auto; left: 50%; margin: 0 0 0 15px; z-index: 10; }
    .work_item_top { margin: 0 0 47px }
    .work_item_tabs_list ul { flex-wrap: wrap; }
        .work_item_tabs_list ul li { flex: auto; box-sizing: border-box; width: 33.3333%; }
        .work_item_tabs_list ul li:nth-child(1) { width: 50%; border-bottom: 1px solid #7f818c; }
        .work_item_tabs_list ul li:nth-child(2) { width: 50%; border: none; border-bottom: 1px solid #7f818c; }
    .work_bottom { flex-direction: column-reverse; flex-wrap: wrap; }
        .work_bottom_preview { width: 100%; margin: 0 0 32px; position: relative; }
            .work_bottom_preview_img { margin: 0; }
                .work_bottom_preview_img_laptop { display: none; }
                .work_bottom_preview_img_src { position: static; margin: 0 auto; display: block; width: 71%; box-shadow: 0 12px 20px #cccccc; }
                .work_bottom_preview_btn { position: absolute; left: 50%; top: 50%; margin: -15px 0 0 -15px; }
                    .work_bottom_preview_btn img { max-width: 30px; }
        .work_items_tab_content_wrap { width: 100%; }
            .work_items_tab_content_top { justify-content: center; }
    
    .block9 .block_title { margin: 0 0 32px; }
    .b9_list { flex-wrap: wrap; }
        .b9_item { width: 100%; margin: 0 0 12px; }
            .b9_item_btn { text-align: center; bottom: 26px; }
                .b9_item_btn a { max-width: 290px; }
    
    .block10 .block_title { margin: 0 0 36px; }
    .b10_item_left { max-width: 190px; }
    .b10_item_right { max-width: 215px; padding: 38px 0 0; }
    
    .block11 { padding: 23px 0 30px; }
        .b11_form_row { flex-wrap: wrap; max-width: 290px; margin: 0 auto 25px; }
            .b11_form_title { width: 100%; text-align: center; margin: 0 0 20px; }
            .b11_form_input { width: 100%; margin: 0 0 18px; }
            .b11_form_btn { width: 100%; }
        .b11_form_check { max-width: 290px; margin: 0 auto; }
    
    .b12_title { font-size: 18px; }
    .b12_contacts_row { flex-wrap: wrap; }
        .b12_contacts_left { width: 100%; margin: 0 0 23px; }
        .b12_contacts_social { width: 100%; }
            .b12_contacts_social_list a { margin: 0 20px 0 0; }
    
    .f_copiryght { text-align: center; }
    
}

@media only screen and (max-width: 479px) {
    
    html, body { overflow-x: hidden; }
    
    .h_call a { font-size: 0; }
        .h_call a i { margin: 0; }
    
    .h_fix_right > div { margin: 0 0 0 35px; }
    
    .b1_img { max-width: 180px; }
        .b1_img_text { top: -52px; left: -27px; }
        .b1_img_text:after { left: 5px; right: auto; }
    
    
    .b7_item:nth-child(1), .b7_item:nth-child(3), .b7_item:nth-child(5), .b7_item:nth-child(7) { margin: 0 20px 0 0; }
    .b7_item:nth-child(2), .b7_item:nth-child(4), .b7_item:nth-child(6), .b7_item:nth-child(8) { margin: 0 0 0 20px; }
        .b7_item_number { left: -30px; }
        .b7_item:nth-child(odd) .b7_item_number { right: -31px; }
        .b7_item:before { left: -20px; }
        .b7_item:nth-child(odd):before { right: -20px; }
    
    .b10_list { flex-wrap: wrap; }
        .b10_item_left, .b10_item_right { max-width: none; padding: 0; width: 100%; }
    
}
