/*   
Theme Name: kirov-remont-kvartir
Theme URI: https://kirov-remont-kvartir.ru/
Description: Ремонт квартир в Кирове
Author: PR-Tovar.ru
Author URI: https://pr-tovar.ru/
Version: 1.0
*/

/*
Шрифты начало ***************************************/

@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-Italic.eot');
  src: url('fonts/OpenSans-Italic.eot?#iefix') format('embedded-opentype'),
    url('fonts/OpenSans-Italic.woff') format('woff'),
    url('fonts/OpenSans-Italic.ttf') format('truetype');
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: 'Roboto Slab';
  src: url('fonts/RobotoSlab-Bold.eot');
  src: url('fonts/RobotoSlab-Bold.eot?#iefix') format('embedded-opentype'),
    url('fonts/RobotoSlab-Bold.woff') format('woff'),
    url('fonts/RobotoSlab-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Roboto Slab';
  src: url('fonts/RobotoSlab-Regular.eot');
  src: url('fonts/RobotoSlab-Regular.eot?#iefix') format('embedded-opentype'),
    url('fonts/RobotoSlab-Regular.woff') format('woff'),
    url('fonts/RobotoSlab-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-Light.eot');
  src: url('fonts/OpenSans-Light.eot?#iefix') format('embedded-opentype'),
    url('fonts/OpenSans-Light.woff') format('woff'),
    url('fonts/OpenSans-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-ExtraBold.eot');
  src: url('fonts/OpenSans-ExtraBold.eot?#iefix') format('embedded-opentype'),
    url('fonts/OpenSans-ExtraBold.woff') format('woff'),
    url('fonts/OpenSans-ExtraBold.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
}

@font-face {
  font-family: 'Roboto Slab';
  src: url('fonts/RobotoSlab-Light.eot');
  src: url('fonts/RobotoSlab-Light.eot?#iefix') format('embedded-opentype'),
    url('fonts/RobotoSlab-Light.woff') format('woff'),
    url('fonts/RobotoSlab-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-BoldItalic.eot');
  src: url('fonts/OpenSans-BoldItalic.eot?#iefix') format('embedded-opentype'),
    url('fonts/OpenSans-BoldItalic.woff') format('woff'),
    url('fonts/OpenSans-BoldItalic.ttf') format('truetype');
  font-weight: bold;
  font-style: italic;
}

@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-LightItalic.eot');
  src: url('fonts/OpenSans-LightItalic.eot?#iefix') format('embedded-opentype'),
    url('fonts/OpenSans-LightItalic.woff') format('woff'),
    url('fonts/OpenSans-LightItalic.ttf') format('truetype');
  font-weight: 300;
  font-style: italic;
}

@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-Bold.eot');
  src: url('fonts/OpenSans-Bold.eot?#iefix') format('embedded-opentype'),
    url('fonts/OpenSans-Bold.woff') format('woff'),
    url('fonts/OpenSans-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans.eot');
  src: url('fonts/OpenSans.eot?#iefix') format('embedded-opentype'),
    url('fonts/OpenSans.woff') format('woff'),
    url('fonts/OpenSans.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Open Sans';
  src: url('fonts/OpenSans-ExtraBoldItalic.eot');
  src: url('fonts/OpenSans-ExtraBoldItalic.eot?#iefix') format('embedded-opentype'),
    url('fonts/OpenSans-ExtraBoldItalic.woff') format('woff'),
    url('fonts/OpenSans-ExtraBoldItalic.ttf') format('truetype');
  font-weight: 800;
  font-style: italic;
}

/*
************************************** Шрифты конец */

*,
*::before,
*::after {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

a {
  outline: none;
  text-decoration: none;
  color: inherit;
  cursor: pointer;
  transition: .1s all ease-in;
}

input[type="submit"] {
  outline: none;
}

li {
  list-style: none;
}

body,
html {
  width: 100%;
  font-family: 'Open Sans';
  font-weight: 400;
  position: relative;
  scroll-behavior: smooth;
}

.bold {
  font-weight: 700;
}

.white {
  color: white;
}

.grey {
  color: #b8b8b8;
}

.wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 10px;
  width: 100%;
}

.full_wrapper {
  width: 100%;
}

header > .full_wrapper {
  background-color: #1d2338;
  font-size: 14px;
}

.top_header_container,
.bottom_header_container {
  padding: 10px 0;
}

.top_header_container,
header .top_header,
header .bottom_header,
header .bottom_header > div > ul {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.top_header_container > div:last-child,
.top_header_container > div p {
  display: flex;
  flex-direction: column;
}

.top_header_container > div:last-child {
  max-width: 200px;
  width: 100%;
}

.push-left {
  width: 100%;
}

.menu-active .top_header {
  transform: translateY(0%);
  opacity: 1;
}

.hamburger {
  background: transparent;
  border: none;
  cursor: pointer;
  display: none;
  outline: none;
  height: 30px;
  position: relative;
  width: 30px;
  z-index: 11;
}

.hamburger img {
  width: 30px;
  height: 30px;
}

.contacts_header .recall_form_link {
  color: #f9bb02;
  text-decoration: underline;
  transition: color .2s ease-in;
}

.contacts_header .recall_form_link:hover {
  color: #8c7222;
}

.hidden {
  display: none !important;
}

.contacts_header .phone_header {
  font-size: 20px;
  color: #ffffff;
  font-family: "Roboto Slab";
  display: flex;
  align-items: center;
}

.contacts_header .phone_header img {
  margin-right: 5px;
}

.contacts_header .phone_header:hover,
header .bottom_header ul a:hover,
.services_container .services > div a:hover,
.writtings_main_item > a:hover,
.writtings_item > a:hover,
.carta_container .info a:hover,
footer .footer_container a:hover,
footer .footer_container .contacts_footer > a:last-child,
.stoimost .man_block > a:hover,
.modal p > a,
.form_container p > a,
.info_about .contacts p > a:hover,
.services_inner a:hover,
.anketa_container form > p > a:hover,
p.text > a:hover,
.inner_container ul a:hover {
  text-decoration: underline;
}

.no-selected {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: #019bd3;
}

a.logo_header,
a.logo_header img {
  max-width: 254px;
  width: 100%;
}

header .bottom_header > div {
  max-width: 900px;
  width: 100%;
}

header .bottom_header > div > ul {
  width: 100%;
  font-size: 16px;
  color: #1d2338;
  font-weight: 600;
  height: 59px;
  position: relative;
}

header .bottom_header > div > ul a img {
  margin-right: 5px;
  vertical-align: middle;
  margin-bottom: 3px;
}

header .bottom_header > div > ul li {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  height: 100%;
}

header .bottom_header > div > ul a > img.down_header {
  transition: all .10s ease;
  margin-right: 0;
  margin-left: 5px;
}

header .bottom_header > div > ul a:hover > img.down_header {
  transform: rotate(-180deg);
}

header .bottom_header > div > ul li > a + ul.sub_menu,
header .bottom_header ul.sub_menu li > a + ul.sub_sub_menu {
  display: none;
  position: absolute;
  font-size: 15px;
  color: #ffffff;
  font-weight: 400;
  background-color: #1d2338;
  min-width: 280px;
  width: 100%;
  z-index: 10;
}

header .bottom_header > div > ul li > a + ul.sub_menu {
  top: 50px;
  left: 0;
}

header .bottom_header > div > ul li > a + ul.sub_menu::before {
  content: '';
  position: absolute;
  left: 40px;
  top: -15px;
  border: 10px solid transparent;
  border-bottom: 10px solid #1d2338;
}

header .bottom_header ul.sub_menu li > a + ul.sub_sub_menu {
  left: 100%;
  top: 0;
}

header .bottom_header ul ul li:not(:last-child) {
  border-bottom: 1px solid #ffffff;
}

header .bottom_header > div > ul ul li:hover {
  background-color: #111524;
}

header .bottom_header > div > ul li:hover > a + ul.sub_menu,
header .bottom_header ul.sub_menu li:hover > a + ul.sub_sub_menu {
  display: block;
}

header .bottom_header ul.sub_menu li,
header .bottom_header ul.sub_menu li > a + ul.sub_sub_menu li {
  padding: 5px;
  width: 100%;
  position: relative;
  height: 60px;
  transition: background .2s ease;
}

header .bottom_header > div > ul ul li:hover {
  background-color: #111524;
}

header .bottom_header ul.sub_menu li > a,
header .bottom_header ul.sub_menu li > a + ul.sub_sub_menu li > a {
  max-width: 230px;
  display: block;
}

header .bottom_header ul.sub_menu li img {
  transform: rotate(-180deg);
  position: absolute;
  right: 10px;
  top: 40%;
  width: 5px;
  height: 9px;
}


a.menu_open {
  display: none;
  font-size: 15px;
  font-weight: 400;
  color: #1d2338;
}

a.menu_open img {
  width: 30px;
  height: 30px;
  margin-right: 8px;
  vertical-align: middle;
}

.main_menu_container.active {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #1d2338;
  padding: 90px 20px 20px;
  display: block;
  z-index: 100;
}

.main_menu_container.active > ul {
  color: #ffffff;
  flex-direction: column;
}

header .bottom_header > div.active > ul li:hover > a + ul.sub_menu,
header .bottom_header div.active ul.sub_menu li:hover > a + ul.sub_sub_menu {
  display: none;
}

a.menu_open.active {
  position: fixed;
  z-index: 100;
  right: 10px;
  top: 90px;
}

.banners_container,
#owl-banners .item img {
  display: block;
  width: 100%;
  height: auto;
}

.banners_container .owl-carousel .owl-stage-outer {
  z-index: -1;
}

.banners_container .owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: -30px !important;
}

.banners_container .owl-theme .owl-dots .owl-dot.active span,
.banners_container .owl-theme .owl-dots .owl-dot:hover span {
  background: #8c7222;
}

.banners_container .owl-theme .owl-dots .owl-dot span {
  background: #f9bb02;
}

.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav button.owl-prev,
.owl-carousel button.owl-dot {
  outline: none;
}

.banners_container {
  padding-bottom: 45px;
  margin-bottom: 30px;
}

.title {
  width: 100%;
  font-size: 34px;
  color: #1d2338;
  font-family: "Roboto Slab";
  text-align: center;
  font-weight: 400;
}

.title > img {
  margin-right: 10px;
}

.works_container .works {
  padding: 40px 0;
  width: 100%;
}

.services_container,
.services_type_container,
.videorequest_container,
.writings_main_container,
.stoimost_container {
  padding-bottom: 40px;
  width: 100%;
}

.works_container .works .info_block_work .item {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  color: #1d2338;
}

.works_container .works .info_block_work .item h2 {
  font-size: 30px;
  font-weight: 700;
  margin-bottom: 20px;
}

.works_container .works .info_block_work .item p {
  font-size: 18px;
  line-height: 43px;
  color: #1d2338;
  font-weight: 400;
  margin-bottom: 10px;
}

.works_container .works .info_block_work .item .info > a {
  margin-top: 30px;
  font-size: 16px;
  color: #1d2338;
  font-weight: 700;
  display: block;
  padding: 15px 20px;
  border-radius: 8px;
  background-color: #ffc001;
  text-transform: uppercase;
  max-width: 245px;
  text-align: center;
  box-shadow: 0px 15px 5px -11px #c79705;
}

.works_container .works .info_block_work {
  width: 100%;
  position: relative;
  z-index: 1;
}

.works_container .works .info_block_work::after {
  content: '';
  display: block;
  width: 252px;
  height: 183px;
  position: absolute;
  right: -30px;
  top: -30px;
  background: url(img/pattern.png);
  background-size: cover;
  z-index: -1;
}

.works_container .works .info_block_work::before {
  content: '';
  display: block;
  width: 66px;
  height: 66px;
  position: absolute;
  right: -20px;
  top: -20px;
  background: url(img/rectangle_big.png);
  background-size: cover;
  z-index: 0;
  transform: rotate(-180deg);
}

.works_container {
  background: url(img/pero.png) no-repeat;
  background-size: auto;
  background-position: top left;
}

.works_container .works .info_block_work .item .photo_main {
  width: 100%;
  max-width: 700px;
  position: relative;
  z-index: 1;
}

.owl-item.active .photo_main {
  display: block !important;
}

.works_container .works .info_block_work .item .photo_main::before {
  content: '';
  display: block;
  width: 66px;
  height: 66px;
  position: absolute;
  left: -20px;
  bottom: 38px;
  background: url(img/rectangle_big.png);
  background-size: cover;
  z-index: 0;
}

.works_container .works .info_block_work .item .photo_main > img.main_photo,
.works_container .works_slider_container,
.works_container .works_slider_container .works_slider {
  width: 100%;
}

.works_container .works .info_block_work .item .photo_main > img.main_photo {
  max-width: 700px;
  max-height: 400px;
  height: 100%;
}

.works_container .works .info_block_work .item .photo_main > div {
  display: flex;
  padding-bottom: 10px;
  justify-content: center;
  align-items: center;
}

.works_container .works .info_block_work .item .photo_main > div > p {
  font-size: 20px;
  color: #1d2338;
  font-weight: 700;
  margin-bottom: 0;
  margin: 0 10px;
}

.works_container .works .info_block_work .item .photo_main > div > a {
  opacity: 0.7;
  transition: opacity .2s ease-in;
}

.works_container .works .info_block_work .item .photo_main > div > a:hover {
  opacity: 1;
}

.works_container .works .info_block_work .item .photo_main > div > a.prev {
  transform: rotate(-180deg);
}

.works_container .works .info_block_work .item .photo_main > div > p > span {
  font-size: 32px;
}

.works_container .works_slider_container .works_slider {
  padding: 40px 30px;
  position: relative;
}

.works_container .works_slider_container .works_slider::after,
.works_container .works_slider_container .works_slider::before {
  content: '';
  display: block;
  position: absolute;
  background: url(img/rectangle.png);
  width: 66px;
  height: 66px;
}

.works_container .works_slider_container .works_slider::before {
  bottom: 0;
  left: 0;
}

.works_container .works_slider_container .works_slider::after {
  right: 0;
  top: 0;
  transform: rotate(180deg);
}

.works_container .works .info_block_work .item .photo_main > img.pattern_left {
  position: absolute;
  width: 252px;
  height: 183px;
  z-index: -1;
  left: -30px;
  bottom: 25px;
}

.works_container .works_slider_container .works_slider .item {
  width: 278px;
  height: 178px;
  padding: 10px;
  border: 1px solid #ffffff;
  margin: 0 auto;
}

.works_container .works_slider_container .works_slider .item .item_inner {
  width: 100%;
  height: 100%;
  position: relative;
  display: block;
}

.works_container .works_slider_container .works_slider .item .item_inner > img {
  width: 100%;
  height: 100%;
}

.color_block {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: none;
  font-size: 16px;
  line-height: 20px;
  color: #ffffff;
  font-weight: 600;
  text-align: center;
  align-items: flex-end;
  padding-bottom: 10px;
}

.works_container .works_slider_container .works_slider .item:hover {
  border: 1px solid #ffc001;
}

.works_container .works_slider_container .works_slider .item .item_inner:hover .color_block {
  display: flex;
}

.color_block.gold {
  background-image: linear-gradient(0deg, #dca603 0%, rgba(255, 192, 1, 0.10196078431372549) 100%);
}

.works_container .works_slider_container .owl-nav button {
  width: 60px;
  height: 60px;
  border-radius: 30px;
  filter: drop-shadow(-5px 0 7.5px rgba(199, 150, 0, 0.5));
  background: #ffc001 !important;
  position: absolute;
  top: 35%;
}

.works_container .works_slider_container .owl-nav button span {
  color: #ffffff;
  font-size: 40px;
  line-height: 30px;
}

.works_container .works_slider_container .owl-nav button:hover {
  background: #dfa700 !important;
}

.works_container .works_slider_container .owl-nav button.owl-next {
  right: 10px;
}

.works_container .works_slider_container .owl-nav button.owl-prev {
  left: 10px;
}

.tour3d {
  height: 640px;
  width: 100%;
  padding: 40px 0;
  position: relative;
}

.advantages_container {
  padding-bottom: 40px;
  width: 100%;
}

.advantages_container .advantages {
  width: 100%;
  max-width: 840px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  padding-top: 40px;
}

.advantages_container .advantages > div {
  font-size: 18px;
  line-height: 25px;
  color: #1d2338;
  font-weight: 600;
  max-width: 240px;
  text-align: center;
  margin-bottom: 40px;
  width: 100%;
}

.advantages_container .advantages > div > img {
  margin-bottom: 10px;
}

.services_container {
  background: url(img/bg_stena.png) no-repeat;
  background-size: cover;
  margin-bottom: 40px;
}

.services_container .services {
  width: 100%;
  max-width: 680px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  padding-top: 40px;
  margin-left: auto;
  position: relative;
}

.services_container .services > div {
  background: url(img/services_tab.png) no-repeat;
  background-size: 110% 110%;
  background-position: center center;
  width: 100%;
  max-width: 330px;
  min-height: 175px;
  padding: 10px 30px;
}

.services_container .services > div:last-child {
  background: url(img/services_tab_big.png) no-repeat;
  background-size: 105% 110%;
  background-position: center center;
  max-width: none;
}

.services_container .services > div h2 {
  font-size: 18px;
  color: #1d2338;
  font-weight: 600;
  text-align: center;
  width: 100%;
  margin-bottom: 5px;
}

.services_container .services > div ul li {
  font-size: 14px;
  line-height: 19px;
  color: #1d2338;
  font-weight: 400;
  position: relative;
  padding-left: 13px;
}

.services_container .services > div ul li::before,
.stoimost .man_block li::before,
.vacancies > div ul li::before {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background-color: #8fce3d;
  position: absolute;
  left: 0;
  top: 8px;
}


.services_container .services > div > a {
  text-align: center;
  width: 100%;
  display: block;
  margin-top: 30px;
}

.services_container .services::before {
  content: '';
  display: block;
  background: url(img/woman.png) no-repeat;
  width: 711px;
  height: 899px;
  position: absolute;
  top: 0;
  left: -100%;
  z-index: 1;
}

.services_container .services > div:hover {
  filter: drop-shadow(0px 8px 10px rgba(129, 129, 129, 0.12));
}

.services_type_container .services_type {
  padding: 40px 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: flex-start;
}

.services_type_container .services_type > a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  margin-bottom: 20px;
}

.services_type_container .services_type > a:first-child::before,
.services_type_container .services_type > a:last-child::before {
  content: url(img/pattern.png);
  display: block;
  width: 252px;
  height: 183px;
  position: absolute;
  z-index: -1;
}

.services_type_container .services_type > a:first-child::before {
  top: -40px;
  left: -40px;
}

.services_type_container .services_type > a:last-child::before {
  bottom: -40px;
  right: -40px;
}

.services_type_container .services_type > a:first-child::after,
.services_type_container .services_type > a:last-child::after {
  content: url(img/rectangle_big.png);
  display: block;
  width: 66px;
  height: 66px;
  position: absolute;
  z-index: -1;
}

.services_type_container .services_type > a:first-child::after {
  transform: rotate(90deg);
  top: -25px;
  left: -25px;
}

.services_type_container .services_type > a:last-child::after {
  bottom: -25px;
  right: -25px;
  transform: rotate(-90deg);
}

.services_type_container .services_type > a img {
  width: 100%;
  height: 100%;
}

.services_type_container .services_type > a span {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  color: #ffffff;
  font-weight: 400;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(36, 56, 110, 0.7);
  padding: 40px 60px;
  transition: all .3s ease-in-out;
}


.services_type_container .services_type > a span b {
  font-size: 34px;
  font-weight: 700;
  text-align: center;
}

.services_type_container .services_type > a span b::after {
  content: '';
  width: 103%;
  height: 1px;
  background-color: #ffffff;
  display: block;
  margin: 8px 0;
}

.services_type_container .services_type > a:hover span {
  width: 100%;
  height: 100%;
  top: 0;
  transform: none;
}

.writtings_main,
.writtings_inner {
  width: 100%;
  padding-top: 40px;
  position: relative;
}

.writtings_inner {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-bottom: -20px;
}

.writtings_main_item,
.writtings_item {
  max-width: 280px;
  width: 100%;
  box-shadow: 0 0 12px rgba(231, 231, 231, 0.7);
  border: 1px solid #e5e5e5;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-weight: 400;
  margin: 0 auto;
  height: 275px;
}

.zab a:hover {
  box-shadow: 0 0 12px rgba(231, 231, 231, 0.7);
}

.writtings_item {
  margin-bottom: 20px;
}

.writtings_main_item > a > img,
.writtings_item > a > img {
  width: 100%;
}

.writtings_main_item a,
.writtings_item a {
  margin: 10px 0 0;
  text-align: center;
  font-size: 14px;
  color: #019bd3;
  flex: 1 0 auto;
}

.writtings_main_item > a:first-child,
.writtings_item > a:first-child {
  display: block;
  width: 100%;
  padding: 10px 10px 0;
  margin: 0 0;
}

.writtings_main_item > p,
.writtings_item > p {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  background-color: #f7f7f7;
  padding: 10px;
  font-size: 12px;
  color: #bab9b9;
}

.writtings_main_item > p > img,
.writtings_item > p > img {
  width: 16px !important;
  height: 10px;
  margin-right: 10px;
}

.writtings_main_item:hover > a:first-child > img,
.writtings_item:hover > a:first-child > img {
  transform: scale(1.08, 1.13);
}

.writtings_main .owl-prev,
.writtings_main .owl-next {
  top: 35%;
  color: #fabd02 !important;
  font-size: 35px !important;
  opacity: 0.7;
}

.writtings_main .owl-prev:hover,
.writtings_main .owl-next:hover {
  opacity: 1;
}

.writtings_main .owl-prev {
  position: absolute;
  left: -15px;
}

.writtings_main .owl-next {
  position: absolute;
  right: -15px;
}

.carta_container {
  height: 500px;
  width: 100%;
  position: relative;
}

.carta_container .info {
  padding: 30px 20px;
  background-color: #ffffff;
  font-size: 14px;
  line-height: 21px;
  color: #1d2338;
  font-weight: 400;
  max-width: 280px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 11%;
}

.carta_container .info h2,
.info_about .contacts h2 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 30px;
}

.carta_container .info p,
.info_about .contacts p,
.about_us p {
  margin-bottom: 20px;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
}

.carta_container .info p > img,
.info_about .contacts p > img,
.about_us p > img {
  margin-right: 8px;
  margin-top: 4px;
}

footer {
  background-color: #111524;
  width: 100%;
}

footer .footer_container {
  width: 100%;
  padding: 40px 0;
  color: #ffffff;
  font-size: 14px;
  line-height: 30px;
  color: #ffffff;
  font-weight: 400;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}

footer .footer_container h2 {
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 20px;
}

footer .footer_container .logo_footer {
  margin-top: 20px;
  display: block;
  max-width: 202px;
  width: 100%;
}

footer .footer_container .logo_footer > img {
  width: 100%;
}

footer .footer_container .contacts_footer {
  max-width: 240px;
}

footer .footer_container .contacts_footer .icons_s {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
}

footer .footer_container .contacts_footer .icons_s > a {
  display: block;
  margin-right: 8px;
}

footer .footer_container .contacts_footer .developer {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 30px 0 30px;
}

footer .footer_container .contacts_footer .developer:hover {
  color: #ffffff;
  text-decoration: none;
}

footer .footer_container .contacts_footer .developer > img {
  margin-top: 10px;
}

footer .footer_container a:hover {
  color: #dfa700;
}

.stoimost {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  padding-top: 40px;
}

.stoimost .man_block {
  max-width: 480px;
  width: 100%;
  padding: 25px 40px;
  background-color: #1d2338;
  border: 4px solid #ffc001;
  position: relative;
  font-size: 14px;
  line-height: 30px;
  color: #ffffff;
  font-weight: 400;
}

.stoimost .man_block::before {
  content: '';
  display: block;
  border: 10px solid transparent;
  border-left: 10px solid #ffc001;
  position: absolute;
  top: 40px;
  left: 0;
}

.stoimost .man_block::after {
  content: '';
  background: url(img/step_man.png);
  width: 236px;
  height: 369px;
  position: absolute;
  top: 57px;
  right: -20px;
}

.stoimost .man_block > span {
  color: #bcbdc4;
  text-align: center;
  display: block;
}

.stoimost .man_block > span::after {
  width: 70px;
  content: '';
  display: block;
  height: 1px;
  background-color: #fff;
  margin: 20px auto;
}

.stoimost .man_block > h2 {
  font-size: 22px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 40px;
}

.stoimost .man_block > p {
  margin: 20px 0;
}

.stoimost .man_block > p.no-selected {
  margin: 0;
  color: #fff;
}

.stoimost .man_block li {
  position: relative;
}

.stoimost .man_block li::before {
  top: 11px;
  left: -13px;
}

.stoimost .man_block > h3 {
  font-size: 14px;
  line-height: 25px;
}

.stoimost .request_stoimost {
  max-width: 680px;
  width: 100%;
}

#msform {
  width: 100%;
  text-align: center;
}

#msform > h2 {
  font-size: 22px;
  color: #c4c4c4;
  font-weight: 600;
  text-align: center;
}

#msform .fieldset {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  border: 0 none;
  width: 100%;
}

#msform .fieldset:not(:first-of-type) {
  display: none;
}

#msform .fieldset .fs-title {
  font-size: 24px;
  color: #1d2338;
  font-weight: 600;
  text-align: center;
  margin-bottom: 40px;
  width: 100%;
}

#msform .fieldset label.fs-container-with-image,
#msform .fieldset label.fs-container-with-image-big {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}

#msform .fieldset label.fs-container-with-image {
  max-width: 155px;
}

#msform .fieldset label.fs-container-with-image-big {
  max-width: 213px;
}

#msform .fieldset label input,
#msform .fieldset label input,
.big_punkt label input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

#msform .fieldset label.fs-container-with-image img,
#msform .fieldset label.fs-container-with-image-big img {
  margin-bottom: 20px;
  border: 2px solid white;
  opacity: 0.7;
}

#msform .fieldset label.fs-container-with-image:hover img,
#msform .fieldset label.fs-container-with-image input:checked ~ img,
#msform .fieldset label.fs-container-with-image-big:hover img,
#msform .fieldset label.fs-container-with-image-big input:checked ~ img {
  border: 2px solid #ffc001;
  opacity: 1;
}


#msform .fieldset label .checkmark {
  position: absolute;
  top: 137px;
  left: 41%;
  width: 26px;
  height: 26px;
  border-radius: 13px;
  filter: drop-shadow(0 0 7.5px rgba(144, 144, 144, 0.5));
  background-color: #ffffff;
}


#msform .fieldset label input:checked ~ .checkmark::before {
  content: '';
  display: block;
  position: absolute;
  width: 18px;
  height: 18px;
  border-radius: 9px;
  background-color: #fabd02;
  top: 4px;
  left: 4px;
}

#msform .fieldset label input:checked ~ .checkmark::after {
  content: '';
  display: block;
  position: absolute;
  background: url(img/checked.png);
  width: 10px;
  height: 7px;
  top: 10px;
  left: 8px;
}

#msform .fieldset label.fs-container {
  max-width: 330px;
  width: 100%;
  background-color: #f6f6f6;
  padding: 15px 20px;
  margin-bottom: 19px;
  transition: background .2s ease-out;
  text-align: left;
}

#msform .fieldset label.active,
.anketa_container form > .big_punkt .container input:checked ~ .checkmark,
.anketa_container form > .punkt.has_list > ul li:hover {
  background-color: #ffc001;
}

#msform .fieldset h3.fs-title-last {
  font-size: 16px;
  line-height: 24px;
  color: #1d2338;
  font-weight: 400;
}

#msform .fieldset .label_container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 40px;
}

#msform .fieldset .label_container .fs-area,
.modal .label_container > label,
.form_container .label_container > label {
  background-color: #edf1f4;
  padding: 15px 10px;
  font-size: 14px;
  color: #363636;
  font-weight: 400;
  width: 100%;
  max-width: 290px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  border-radius: 5px;
}

#msform .submit-step,
.modal input[type="submit"],
.form_container input[type="submit"] {
  max-width: 290px;
  width: 100%;
}

#msform .fieldset .label_container .fs-area span.hr,
.modal .label_container > label span.hr,
.form_container .label_container > label span.hr {
  width: 1px;
  height: 29px;
  background-color: #d5d8db;
}

#msform .fieldset .label_container .fs-area > input,
.modal .label_container > label > input,
.form_container .label_container > label > input {
  display: block;
  outline: none;
  border: none;
  height: auto;
  width: 100%;
  max-width: 230px;
  background-color: #edf1f4;
  opacity: 1;
  position: static;
}

#msform .fieldset .label_container .fs-area:first-child,
.modal .label_container > label,
.form_container .label_container > label {
  margin-bottom: 20px;
}

#msform .fieldset label span.fs-name {
  font-size: 14px;
  color: #1d2338;
  font-weight: 400;
}

#msform .button_container {
  display: flex;
  width: 100%;
  margin-top: 10px;
  justify-content: center;
  align-items: center;
}

#msform .action-button,
.success > a,
.modal input[type="submit"],
.form_container input[type="submit"],
.anketa_container form > .last_container input[type="submit"],
.nav_for_inner_item a:last-child {
  border: none;
  font-size: 17px;
  font-weight: 700;
  display: block;
  padding: 15px 40px;
  border-radius: 8px;
  text-transform: uppercase;
  text-align: center;
  border: 2px solid #ffc001;
}

#msform .next,
#msform .submit-step,
.success > a,
.modal input[type="submit"],
.form_container input[type="submit"],
.anketa_container form > .last_container input[type="submit"],
.nav_for_inner_item a:last-child {
  color: #1d2338;
  background-color: #ffc001;
  box-shadow: 0px 15px 5px -11px #c79705;
}

#msform .next:hover,
#msform .submit-step:hover,
.success > a:hover,
.modal input[type="submit"]:hover,
.form_container input[type="submit"]:hover,
.anketa_container form > .last_container input[type="submit"]:hover,
.nav_for_inner_item a:last-child:hover {
  background-color: #dfa800;
  border: 2px solid #dfa800;
}

.modal input[type="submit"],
.form_container input[type="submit"] {
  margin-top: 10px;
}

#msform .action-button:focus {
  outline: none;
}

#msform .previous {
  background-color: #ffffff;
  color: #ffc001;
  margin-right: 20px;
}

#msform .previous:hover {
  color: #1d2338;
  background-color: #ffc001;
  box-shadow: 0px 15px 5px -11px #c79705;
}

#progressbar {
  margin: 30px 0;
  overflow: hidden;
}

#progressbar li {
  color: white;
  width: calc(100%/6);
  float: left;
  position: relative;
}

#progressbar li:before {
  content: '';
  width: 18px;
  height: 18px;
  border-radius: 9px;
  background-color: #ffffff;
  display: block;
  margin: 0 auto 5px auto;
  border: 1px solid #c4c4c4;
}

#progressbar li:after {
  content: '';
  width: 100%;
  height: 6px;
  background-color: #f8f8f8;
  position: absolute;
  left: -50%;
  top: 6px;
  z-index: -1;
}

#progressbar li:first-child:after {
  content: none;
}

#progressbar li.active:before,
#progressbar li.active:after {
  background-image: linear-gradient(90deg, #8fcd3d 0%, #a7f247 100%);
}

.success {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  color: #1d2338;
  font-weight: 400;
}

.success > img {
  margin-bottom: 40px;
}

.success > h2 {
  font-size: 25px;
  line-height: 40px;
  font-weight: 700;
  margin-bottom: 10px;
}

.success > h3 {
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 40px;
  font-weight: 400;
}

.videorequest {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  align-items: center;
  padding-top: 40px;
}

.modal,
.form_container {
  background: url(img/frame.png) no-repeat !important;
  background-position: center center !important;
  background-size: contain !important;
  box-shadow: none !important;
  color: #1d2338;
  max-width: 430px !important;
  padding: 40px 30px !important;
  min-height: 500px;
}

.modal a.close-modal {
  top: -5px !important;
  right: -5px !important;
}

.modal .wrapper_modal,
.form_container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.modal h1,
.form_container h1 {
  font-size: 27px;
  font-weight: 700;
  margin-bottom: 5px;
}

.modal h2,
.form_container h2 {
  font-size: 15px;
  font-weight: 400;
  margin-bottom: 30px;
}

.modal p,
.form_container p,
.anketa_container form > p {
  margin-top: 20px;
  font-size: 12px;
  line-height: 15px;
  color: #a5a5a5;
  font-weight: 400;
  text-align: center;
}

.modal p > a:hover,
.form_container p > a:hover,
.anketa_container form > p > a:hover {
  color: #1d2338;
}

.modal form,
.modal form .label_container,
.form_container form,
.form_container form .label_container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

span.failed {
  font-size: 14px;
  font-weight: 600;
  width: 100%;
  text-align: center;
  margin-top: 10px;
  display: none;
}

.red,
span.failed {
  color: #FF5733;
}

.main_container {
  padding-bottom: 20px;
  width: 100%;
}

.main_container .main {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.main_container .main .menu_inner {
  max-width: 265px;
  width: 100%;
}

.cd-accordion-menu {
  width: 100%;
  border: 1px solid #e8e8e8;
  border-bottom: none;
  border-top: none;
  line-height: 18px;
  font-size: 14px;
  color: #1d2338;
  font-weight: 700;
  text-transform: uppercase;
}

.cd-accordion-menu,
.cd-accordion-menu ul {
  display: none;
}

.cd-accordion-menu li {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border-bottom: 1px solid #e8e8e8;
}

.cd-accordion-menu li.active > label,
.cd-accordion-menu li.active > a {
  background-color: #f9bb02 !important;
}

.cd-accordion-menu > li > input[type=checkbox]:checked + label {
  background-color: #e8e8e8;
}

.cd-accordion-menu ul li {
  border-top: 1px solid #e8e8e8;
  border-bottom: none;
  font-size: 14px;
  font-weight: 400;
  text-transform: none;
}

.cd-accordion-menu ul li {
  background-color: #f5f5f5;
  transition: background .2s ease-in;
}

.cd-accordion-menu ul li.has-children {
  position: relative;
}

.cd-accordion-menu ul li.has-children ul {
  position: absolute;
  top: 0;
  left: 100%;
  width: 100%;
  z-index: 2;
}

.cd-accordion-menu ul li label:hover,
.cd-accordion-menu ul li:hover {
  background-color: #e8e8e8;
}

.cd-accordion-menu input[type=checkbox] {
  position: absolute;
  opacity: 0;
}

.cd-accordion-menu label,
.cd-accordion-menu a {
  position: relative;
  display: block;
  padding-left: 15px;
  height: 50px;
  display: flex;
  align-items: center;
}

.cd-accordion-menu label::before,
.cd-accordion-menu label::after,
.cd-accordion-menu a::after {
  content: '';
  display: inline-block;
  width: 9px;
  height: 5px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.cd-accordion-menu label {
  cursor: pointer;
}

.cd-accordion-menu label::before,
.cd-accordion-menu label::after {
  background-image: url(img/down.png);
  background-repeat: no-repeat;
}

.cd-accordion-menu label::before {
  right: 18px;
  background-position: 0 0;
  transform: translateY(-50%) rotate(-90deg);
}

.cd-accordion-menu label::after {
  left: 41px;
  background-position: -16px 0;
}

.cd-accordion-menu > li > input[type=checkbox]:checked + label::before {
  transform: translateY(-50%);
}

.cd-accordion-menu > li > input[type=checkbox]:checked + label + ul,
.cd-accordion-menu ul li:hover > ul {
  display: block;
}

.cd-accordion-menu ul label,
.cd-accordion-menu ul a {
  padding-left: 20px;
}

.cd-accordion-menu ul ul label,
.cd-accordion-menu ul ul a {
  padding-left: 25px;
}

.open_inner_menu {
  height: 50px;
  width: 100%;
  background-color: #1d2338;
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
  display: flex;
  justify-content: center;
  align-items: center;
  text-transform: uppercase;
  cursor: pointer;
}

.open_inner_menu.active + ul.cd-accordion-menu {
  display: block;
}

.where {
  padding-top: 10px;
  font-size: 13px;
  line-height: 26px;
  color: #bfbfbf;
}

.where a,
.where span.divider {
  color: #ffffff;
}

.where a:hover {
  text-decoration: underline;
}

.no_bg .where {
  padding-top: 5px;
}

.no_bg .where a,
.no_bg .where span.divider {
  color: #1d2338;
}

h1.inner_title {
  font-size: 46px;
  line-height: 90px;
  color: #ffffff;
  font-family: "Roboto Slab";
  font-weight: 400;
  text-align: center;
  width: 100%;
}

.inner_title_container {
  height: 170px;
  margin-bottom: 20px;
}

.bg_about {
  background: url(img/bg_about.jpg) no-repeat;
  background-size: cover;
  background-position: center center;
}

.bg_otd_nov {
  background: url(img/bg_otdelka.jpg) no-repeat;
  background-size: cover;
  background-position: center center;
}

.bg_remont {
  background: url(img/bg_remont.jpg) no-repeat;
  background-size: cover;
  background-position: center center;
}

.bg_tual {
  background: url(img/bg_tual.jpg) no-repeat;
  background-size: cover;
  background-position: center center;
}

.no_bg {
  height: auto;
}

.main > .inner_container {
  max-width: 880px;
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.inner_container .text_container {
  max-width: 480px;
}

.inner_container > img {
  max-width: 100%;
  margin-bottom: 20px;
}

.advantages_inner {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  margin: 40px 0;
}

.advantages_inner > div {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  max-width: 320px;
}

.advantages_inner > div > div {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  font-size: 16px;
  line-height: 25px;
  color: #1d2338;
  font-weight: 600;
  margin-bottom: 20px;
}

.advantages_inner img {
  margin-right: 10px;
}

h3.inner_title_h3 {
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 20px;
}

p.text {
  font-size: 16px;
  color: #1d2338;
  margin-bottom: 20px;
  width: 100%;
}

p.text > a,
.inner_container ul a {
  color: #019bd3;
}

.center {
  text-align: center;
  width: 100%;
}

.inner_container .videorequest_container {
  padding-bottom: 0;
}

.about_container {
  width: 100%;
  background: url(img/bg_cont.jpg) no-repeat;
  background-size: cover;
  background-position: center center;
  padding-bottom: 40px;
}

.about_container .about,
.about_container .about .info_about,
.zab {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
  align-items: flex-start;
  flex-wrap: wrap;
}

.about_container .about h1 {
  margin-bottom: 20px;
}

.about_container .about .info_about {
  justify-content: flex-start;
  max-width: 680px;
}

.form_container {
  width: 100%;
}

.info_about .contacts {
  margin-right: 80px;
}

.info_about .contacts,
.about_us {
  color: #ffffff;
  max-width: 250px;
}

.about_us {
  font-weight: 600;
}

.about_us p {
  align-items: center;
}

.services_inner,
.writtings {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

.services_inner > div:not(:last-child),
.services_inner > div:not(:last-child) img {
  max-width: 430px;
  width: 100%;
  height: 230px;
}

.services_inner > div:last-child,
.services_inner > div:last-child img {
  width: 100%;
  max-height: 230px;
  margin-bottom: 0;
}

.services_inner > div {
  position: relative;
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 30px;
  color: #ffffff;
  font-weight: 400;
  text-align: center;
  height: 230px;
}

.services_inner > div img {
  object-fit: cover;
  height: 230px;
}


.services_inner > div h4 {
  font-size: 22px;
  line-height: 28px;
  font-weight: 600;
  margin-bottom: 20px;
  color: #ffffff;
}

.services_inner > div div {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
}

.writtings > div {
  max-width: 430px;
  width: 100%;
  padding: 13px;
  border: 2px solid #e5e5e5;
  max-height: 270px;
  margin-bottom: 20px;
}

.writtings > div > a {
  display: block;
  width: 100%;
  height: 100%;
  max-height: 240px;
  transition: transform .2s ease-in;
}

.writtings > div > a:hover {
  transform: scale(1.07, 1.11);
}

.writtings > div > a img {
  width: 100%;
  height: 100%;
}

.video {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  flex-wrap: wrap;
}

.video > a {
  display: block;
  max-width: 280px;
  width: 100%;
  max-height: 170px;
  position: relative;
  margin-bottom: 20px;
}

.video > a > span {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(36, 56, 110, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: opacity .2s ease;
  opacity: 0;
}

.video > a > span::after {
  display: block;
  content: '';
  background: url(img/play.png);
  width: 180px;
  height: 180px;
}

.video > a:hover > span {
  opacity: 1;
}

.video > a:last-child {
  margin: 0 auto;
}

.vacancies_container {
  width: 100%;
}

.vacancies {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.vacancies > div {
  max-width: 430px;
  width: 100%;
  background-color: #edf1f4;
  color: #1d2338;
  margin-bottom: 20px;
}

.vacancies > div > div img {
  width: 100%;
}

.vacancies > div > div {
  position: relative;
  margin-bottom: 20px;
}

.vacancies > div > div > div {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #ffffff;
  text-align: center;
  font-size: 20px;
  width: 100%;
  font-weight: 600;
}

.vacancies > div > div > div h3 {
  font-size: 26px;
  font-weight: 700;
}

.vacancies > div > div > div h3::after {
  display: block;
  content: '';
  max-width: 236px;
  height: 1px;
  border-radius: 1px;
  background-color: #ffffff;
  width: 100%;
  margin: 10px auto;
}


.vacancies > div ul {
  font-size: 18px;
  font-weight: 700;
  padding: 0 20px 20px;
}

.vacancies > div ul li {
  font-size: 14px;
  line-height: 24px;
  font-weight: 400;
  position: relative;
  padding-left: 30px;

}

.vacancies > div ul li:first-child {
  margin-top: 5px;
}

.vacancies > div ul li::before {
  left: 15px;
}

.anketa_container {
  padding-top: 20px;
}

.anketa_container h2 {
  font-size: 24px;
  color: #1d2338;
  font-weight: 700;
  width: 100%;
  text-align: center;
  margin-bottom: 40px;
}

.anketa_container form {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}

.anketa_container form > .punkt {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  margin-bottom: 20px;
  position: relative;
}

.anketa_container form > .punkt > button {
  position: absolute;
  background: transparent;
  border: none;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}

.anketa_container form > .punkt > label,
.anketa_container form > .punkt > input {
  max-width: 430px;
  width: 100%;
  padding: 10px;
  background-color: #8fce3d;
  min-height: 42px;
  font-size: 14px;
  color: #1d2338;
  font-weight: 400;
}

.anketa_container form > .punkt > input {
  background-color: #edf1f4;
  border: none;
  color: #363636;
}

.anketa_container form > .punkt > input:focus {
  outline: 2px solid #8fce3d;
}

.anketa_container form > .punkt.has_list input {
  cursor: pointer;
}

.anketa_container form > div.has_list .chevron {
  outline: none;
  cursor: pointer;
}

.anketa_container form > .punkt.has_list > ul {
  display: none;
  position: absolute;
  top: 42px;
  right: 0;
  background-color: #ffffff;
  border: 1px solid #edf1f4;
  width: 100%;
  max-width: 430px;
  z-index: 2;
  filter: drop-shadow(0px 3px 2.5px rgba(57, 57, 57, 0.15));
  font-size: 14px;
  color: #363636;
  font-weight: 400;
}

.anketa_container form > .punkt.has_list > ul li {
  padding: 10px;
  cursor: pointer;
  transition: background .1s ease;
}


.anketa_container form > .big_punkt {
  max-width: 430px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-size: 14px;
  line-height: 34px;
  color: #1d2338;
  font-weight: 400;
}

.anketa_container form > .big_punkt h3 {
  font-size: 18px;
  font-weight: 700;
}

.anketa_container form > .big_punkt label {
  position: relative;
  padding-left: 25px;
}

.anketa_container form > .big_punkt .checkmark {
  position: absolute;
  top: 9px;
  left: 0;
  height: 16px;
  width: 16px;
  background-color: #ffffff;
  border: 1px solid #dddddd;
  border-radius: 2px;
}

.anketa_container form > .big_punkt .container:hover input ~ .checkmark {
  background-color: #dddddd;
}

.anketa_container form > .big_punkt .checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.anketa_container form > .big_punkt .container input:checked ~ .checkmark:after {
  display: block;
}

.anketa_container form > .big_punkt .container .checkmark:after {
  content: '';
  background: url("img/checked.png");
  width: 10px;
  height: 7px;
  top: 3px;
  left: 2px;
}

.anketa_container form > .last_container {
  display: flex;
  flex-direction: row;
  width: 100%;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  padding: 20px 0;
}

.anketa_container form > .last_container input[type="submit"] {
  max-width: 240px;
  padding: 15px 30px;
}

.anketa_container form > p {
  text-align: left;
  margin-top: 0;
}

.nav_for_inner {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  align-items: flex-start;
  margin-bottom: 20px;
}

.nav_for_inner_item {
  max-width: 280px;
  width: 100%;
  border-radius: 10px;
  box-shadow: 0px 3px 7.5px rgba(57, 57, 57, 0.1);
  min-height: 470px;
  text-align: center;
  color: #1d2338;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 20px;
}

.nav_for_inner.small .nav_for_inner_item {
  min-height: 320px;
}

.nav_for_inner.space-around {
  justify-content: space-around;
}

.nav_for_inner_item > a:first-child {
  display: block;
  position: relative;
  width: 100%;
  max-height: 170px;
  height: 100%;
}

.nav_for_inner_item > a:first-child > span,
.photo_container > a > span {
  display: none;
  position: absolute;
  width: 100%;
  background-color: rgba(36, 56, 110, 0.7);
  top: 0;
  left: 0;
  height: 100%;
  align-items: center;
  justify-content: center;
}

.nav_for_inner_item:hover > a:first-child > span,
.photo_container > a:hover > span {
  display: flex;
}

.nav_for_inner_item h3 {
  font-size: 18px;
  line-height: 24px;
  font-weight: 700;
  margin: 20px 0;
}

.nav_for_inner_item p {
  padding: 20px 30px;
  font-size: 13px;
  line-height: 20px;
  color: #696969;
  font-weight: 400;
  flex: 1 0 auto;
}

.nav_for_inner_item a:last-child {
  max-width: 230px;
  width: 100%;
  padding: 12px 10px;
  margin: 0 auto 15px;
}

.preview {
  margin-bottom: 20px;
  position: relative;
}

.preview,
.preview img {
  width: 100%;
  max-height: 352px;
}

.preview > div {
  display: flex;
  flex-direction: column;
  max-width: 680px;
  width: 100%;
  padding: 40px 45px;
  align-items: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #ffffff;
  background-color: rgba(36, 56, 110, 0.7);
}

.preview > div h1 {
  font-size: 36px;
  font-weight: 600;
  width: 100%;
  text-align: center;
}

.preview > div h1::after {
  display: block;
  content: '';
  max-width: 180px;
  width: 100%;
  height: 1px;
  background-color: #ffffff;
  margin: 15px auto;
}

.preview > div span {
  display: flex;
  flex-direction: row;
  align-items: center;
  font-size: 16px;
  font-weight: 400;
}

.preview > div span img {
  margin-right: 10px;
}

.inner_container > h4,
.inner_container > h3 {
  font-size: 18px;
  color: #1d2338;
  font-weight: 700;
  text-transform: uppercase;
  margin-top: 10px;
  width: 100%;
  text-align: left;
}

.inner_container > h2 {
  font-size: 20px;
  line-height: 24px;
  color: #1d2338;
  font-weight: 600;
  width: 100%;
  margin-bottom: 20px;
}

.inner_container > ul {
  padding: 20px 20px 40px;
  line-height: 28px;
}

.inner_container .links_container,
.form_inner_container {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
}

.links_container {
  flex-wrap: wrap;
}

.form_inner_container {
  align-items: center;
}

.form_inner_container .form_container {
  max-width: 380px !important;
  min-height: 460px;
  filter: drop-shadow(0 0 15px rgba(45, 45, 45, 0.1));
  position: relative;
}

.form_inner_container {
  border-radius: 10px;
  background-color: #f4f6f8;
  padding-left: 40px;
}

.form_inner_container .form_container .label_container > label {
  margin-bottom: 10px;
}

.form_inner_container .form_container p {
  margin-top: 10px;
}

.form_inner_container > h2 {
  font-size: 26px;
  line-height: 38px;
  color: #1d2338;
  font-weight: 700;
  max-width: 270px;
  position: relative;
}

.form_inner_container > h2::before {
  display: block;
  content: '';
  background: url(img/vopr.png);
  width: 181px;
  height: 295px;
  position: absolute;
  top: 60%;
  transform: translateY(-50%);
  left: 20px;
}

.form_inner_container .form_container::before {
  display: block;
  content: '';
  background: url(img/man.png);
  width: 252px;
  height: 395px;
  position: absolute;
  right: calc(100% - 35px);
  bottom: -10px;
}

.menu_inner nav {
  width: 100%;
  margin-top: 40px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
}

.menu_inner nav a {
  display: block;
  position: relative;
  width: 100%;
  height: 200px;
  margin-bottom: 20px;
  max-width: 263px;
}

.menu_inner nav a > span.color_block {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  top: 0;
  left: 0;
  background-color: rgba(36, 56, 110, 0.7);
}

.menu_inner nav a > h4 {
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  position: absolute;
  top: 10px;
  left: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  line-height: 32px;
  color: #ffffff;
  font-weight: 700;
  text-align: center;
  transition: border .2s ease;
}

.menu_inner nav a:hover > h4,
.menu_inner nav a.active > h4 {
  border: 1px solid #ffc001;
}

.menu_inner nav a:hover > span.color_block,
.menu_inner nav a.active > span.color_block {
  background-image: linear-gradient(0deg, #dca603 0%, rgba(255, 192, 1, 0.10196078431372549) 100%);

}

.table_container,
.table_container table {
  width: 100%;
}

.table_container table td {
  padding: 10px;
  font-size: 14px;
  color: #000000;
  font-weight: 400;
}

.table_container table tr.white td {
  color: #ffffff;
}

.table_container table tr.bold td {
  font-weight: 700;
}

.table_container table tr td:not(:first-child) {
  text-align: center;
}

.g-recaptcha {
  transform: scale(0.78);
  margin: 0 auto;
}

.last_container .failed {
  text-align: left;
}

.photo_container h1 {
  text-align: left;
  margin-bottom: 20px;
}

.photo_container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
  justify-content: space-between;
  align-items: flex-start;
  padding-top: 40px;
  margin-bottom: -20px;
}

.photo_container > a {
  display: block;
  max-width: 380px;
  max-height: 196px;
  width: 100%;
  height: 100%;
  position: relative;
  margin-bottom: 20px;
}

.inner_container .links_container a {
  max-height: 220px;
}

.inner_container .links_container a:hover {
  box-shadow: 0px 15px 5px -11px #c79705;
}

.links {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 10px;
  align-items: flex-start;
  margin: 20px auto 0;
  font-size: 14px;
  color: #ffc001;
  font-weight: 600;
  border: 1px solid #e8e8e8;
  max-width: 265px;
}

.links > a {
  display: block;
  width: 100%;
  display: flex;
  align-items: center;
  color: #1d2338;
}

.links > a:hover {
  color: #ffc001;
}

.links > a:not(:last-child) {
  margin-bottom: 10px;
}

.links > a span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  background-color: #ffffff;
  border: 2px solid #ffc001;
  margin-right: 10px;
  color: #ffc001;
  transition: background .1s ease;
}

.links > a:hover span {
  color: #1d2338;
  background-color: #ffc001;
}

.zab a,
.zab a > img {
  display: block;
  height: 188px;
  margin-bottom: 20px;
  max-width: 280px;
  width: 100%;
}

.absolute_3d {
  width: 100px;
  position: absolute;
  bottom: 45px;
  right: 5px;
}

.absolute_3d img {
  width: 100%;
}

@media screen and (max-width: 1200px) {
  .request_stoimost {
    margin-bottom: 40px;
  }

  .stoimost,
  .services_type_container .services_type {
    justify-content: center;
  }

  .works {
    padding-right: 40px;
  }

  .works_container .works .info_block_work .item {
    flex-direction: column-reverse;
    justify-content: center;
  }

  .works_container .works .info_block_work .item .photo_main {
    margin-bottom: 20px;
  }

  .works_container .works .info_block_work .item .info {
    text-align: center;
  }

  .works_container .works .info_block_work .item .info > a {
    margin: 30px auto;
  }

  .works_container .works .info_block_work .item .photo_main > img.pattern_left,
  .works_container .works .info_block_work .item .photo_main::before,
  .works_container .works .info_block_work::after,
  .works_container .works .info_block_work::before,
  .services_type_container .services_type > a:first-child::before,
  .services_type_container .services_type > a:first-child::after,
  .services_type_container .services_type > a:last-child::before,
  .services_type_container .services_type > a:last-child::after {
    display: none;
  }

  .services_type_container .services_type > a:nth-child(2) {
    margin-right: 20px;
  }

  .writtings_main .owl-prev {
    left: -7px;
  }

  .writtings_main .owl-next {
    right: -7px;
  }

  .videorequest {
    justify-content: space-around;
  }

  .videorequest > iframe:not(:last-child) {
    margin-bottom: 20px;
  }

  .main_container .main .menu_inner {
    max-width: none;
  }

  .cd-accordion-menu ul li.has-children ul {
    position: static;
  }

  .cd-accordion-menu input[type=checkbox]:checked + label + ul {
    display: block;
  }

  .cd-accordion-menu input[type=checkbox]:checked + label::before {
    transform: translateY(-50%);
  }

  .cd-accordion-menu input[type=checkbox]:checked + label {
    background-color: #f9bb02;
  }

  .cd-accordion-menu ul li:hover > ul {
    display: none;
  }

  .inner_container {
    margin-top: 20px;
  }

  .main > .inner_container,
  .advantages_inner {
    justify-content: center;
    max-width: 100%;
  }

  h3.inner_title_h3 {
    text-align: center;
  }

  .about_container .about,
  .about_container .about .info_about {
    justify-content: space-around;
  }

}

@media screen and (max-width: 990px) {
  .hidden {
    display: flex !important;
  }

  .push-left {
    max-width: 30px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  .hamburger {
    display: block;
  }

  header .top_header {
    background-color: #1d2338;
    flex-direction: column;
    justify-content: flex-start;
    opacity: 0;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: translateY(-100%);
    max-width: none;
    align-items: center;
    z-index: 10;
    padding-top: 15%;
  }

  .menu-active .top_header {
    transform: translateY(0%);
    opacity: 1;
  }

  header .top_header p {
    margin: 10px;
  }

  .services_type_container .services_type > a:nth-child(2) {
    margin-right: 0;
  }

  .services_type_container .services_type {
    padding: 40px 0 0;
  }

  a.menu_open {
    display: block;
  }

  div.main_menu_container {
    display: none;
    overflow-y: auto;
  }

  header .bottom_header > div > ul {
    height: auto;
  }

  header .bottom_header > div > ul li {
    margin-bottom: 20px;
  }

  .advantages_inner > div:last-child {
    max-width: 640px;
    width: 100%;
    flex-direction: row;
  }

  .advantages_inner > div > div {
    width: 100%;
  }
}

@media screen and (max-width: 900px) {

  .services_inner,
  .writtings,
  .video,
  .vacancies,
  .inner_container .links_container,
  .zab {
    justify-content: space-around;
  }

  .services_inner > div:last-child {
    max-width: 430px;
  }

  .video > a:last-child {
    margin: 0;
  }

  .anketa_container form > .big_punkt {
    max-width: 50%;
  }

  .form_inner_container .form_container::before {
    display: none;
  }
}

@media screen and (max-width: 700px) {
  .services_container .services {
    justify-content: center;
  }

  .writtings_main .owl-prev {
    left: 15%;
  }

  .writtings_main .owl-next {
    right: 15%;
  }

  .anketa_container form > .punkt {
    flex-wrap: wrap;
  }

  .anketa_container form > .punkt > label,
  .anketa_container form > .punkt > input,
  .anketa_container form > .punkt.has_list > ul {
    max-width: 100%;
  }

  .anketa_container form > .punkt > button {
    top: 75%;
  }

  .anketa_container form > .punkt.has_list > ul {
    top: 80px;
  }

  .preview > div {
    padding: 20px 10px;
  }

  .preview > div h1 {
    font-size: 22px;
  }

  .advantages_inner > div:last-child {
    max-width: 320px;
    flex-direction: column;
  }
}

@media screen and (max-width: 620px) {

  .services_container .services::before,
  .form_inner_container > h2::before,
  .form_inner_container > h2 {
    display: none;
  }

  .form_inner_container {
    justify-content: space-around;
    padding: 0;
    background-color: #ffffff;
  }

  #msform .fieldset {
    justify-content: space-around;
  }

  .info_about .contacts {
    margin-right: 20px;
  }
}

@media screen and (max-width: 520px) {
  footer .footer_container {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  footer .footer_container > div:not(:last-child) {
    margin-bottom: 20px;
  }

  .advantages_container .advantages {
    justify-content: center;
  }

  footer .footer_container .contacts_footer .developer {
    margin: 10px 0;
  }

  .services_type_container .services_type > a span {
    width: 100%;
    padding: 10px;
  }

  footer .footer_container .logo_footer {
    margin: 20px auto 0;
  }

  .works_container .works .info_block_work {
    max-height: 750px;
  }

  .stoimost .man_block::after {
    display: none;
  }

  .stoimost .man_block {
    width: auto;
  }

  .info_about .contacts {
    margin-right: 0;
  }
}

@media screen and (max-width: 400px) {
  .services_container .services > div:last-child {
    background-size: 105% 140%;
  }

  a.logo_header,
  a.logo_header img {
    max-width: 130px;
  }

  h1.inner_title {
    font-size: 30px;
  }

  .title {
    font-size: 28px;
  }

  .services_type_container .services_type > a span {
    font-size: 18px;
  }

  .services_type_container .services_type > a span b {
    font-size: 20px;
  }
}
