/* fonts */

@font-face{
  font-family: 'openSans';
  font-weight: 300;
  font-style: normal;
  src: url('../../assets/fonts/openSans/OpenSans-Light.ttf') format('truetype');
}
@font-face{
  font-family: 'openSans';
  font-weight: 300;
  font-style: italic;
  src: url('../../assets/fonts/openSans/OpenSans-LightItalic.ttf') format('truetype');
}
@font-face{
  font-family: 'openSans';
  font-weight: 500;
  font-style: normal;
  src: url('../../assets/fonts/openSans/OpenSans-Regular.ttf') format('truetype');
}
@font-face{
  font-family: 'openSans';
  font-weight: 500;
  font-style: italic;
  src: url('../../assets/fonts/openSans/OpenSans-Italic.ttf') format('truetype');
}
@font-face{
  font-family: 'openSans';
  font-weight: 600;
  font-style: normal;
  src: url('../../assets/fonts/openSans/OpenSans-SemiBold.ttf') format('truetype');
}
@font-face{
  font-family: 'openSans';
  font-weight: 600;
  font-style: italic;
  src: url('../../assets/fonts/openSans/OpenSans-SemiBoldItalic.ttf') format('truetype');
}
@font-face{
  font-family: 'openSans';
  font-weight: 700;
  font-style: normal;
  src: url('../../assets/fonts/openSans/OpenSans-Bold.ttf') format('truetype');
}
@font-face{
  font-family: 'openSans';
  font-weight: 700;
  font-style: italic;
  src: url('../../assets/fonts/openSans/OpenSans-BoldItalic.ttf') format('truetype');
}
@font-face{
  font-family: 'openSans';
  font-weight: 800;
  font-style: normal;
  src: url('../../assets/fonts/openSans/OpenSans-ExtraBold.ttf') format('truetype');
}
@font-face{
  font-family: 'openSans';
  font-weight: 800;
  font-style: italic;
  src: url('../../assets/fonts/openSans/OpenSans-ExtraBoldItalic.ttf') format('truetype');
}

/* end - fonts */

/* base styles */
html,
body {
  margin: 0;
  padding: 0;
}

body {
  font-family: openSans;
  line-height: 1;
  font-size: 16px;
}

body * {
  box-sizing: border-box;
  outline: none;
}

a {
  cursor: pointer;
}

a, a:hover, a:visited {
  color: #000;
  text-decoration: none;
}

ul {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0px;
  -webkit-margin-end: 0px;
  -webkit-padding-start: 0;
  margin: 0;
  padding: 0;
}

.is_desktop {
  display: flex;
}

header.site-header,
main,
footer {
  width: 100%;
}

.site-wrapper {
  width: 1230px;
  padding-left: 30px;
  padding-right: 30px;
}

.site-section {
  background: linear-gradient(0.25turn, #ecf5f4, #fff, #ecf5f4);
  -webkit-transition: -webkit-transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out;
}

.remove-padding {
  padding-left: 0px;
  padding-right: 0px;
}

.semi-bold {
  font-weight: 600;
}

.bold {
  font-weight: 700;
}

.extra-bold {
  font-weight: 800;
}

.btn {
  display: flex;
  align-items: center;
  padding: 0 30px;
  border-radius: 7px;
  height: 41px;
  text-transform: uppercase;
}

.btn-white {
  background-color: #fff;
  color: #1b1b1b;
}

.text-line {
  display: block;
}

.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none; /* Safari */
  -khtml-user-select: none; /* Konqueror HTML */
  -moz-user-select: none; /* Firefox */
  -ms-user-select: none; /* Internet Explorer/Edge */
  user-select: none; /* Non-prefixed version, currently supported by Chrome and Opera */
}

.centered {
  align-items: center;
  justify-content: center;
}

.center {
  text-align: center;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
}

h1 {
  font-size: 68px;
}

h2 {
  font-size: 48px;
}

h4 {
  font-size: 22px;
}
.anchor {
  position: absolute;
  top: -200px;
}
#prof-system.anchor,
#universal-system.anchor {
  position: absolute;
  top: -130px;
}
#prof-system-container,
#universal-system-container {
  position: absolute;
  top: -20px;
}
/* end - base styles */


/* icons */

.site-icon {
  display: block;
  background-repeat: no-repeat;
  background-size: cover;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  margin-top: 1px;
}

.icon-clock {
  background-image: url(../../assets/images/icons/clock.png);
}

.icon-phone {
  background-image: url(../../assets/images/icons/phone.png);
}

.icon-phone-white {
  background-image: url(../../assets/images/icons/phone-white.png);
}

.icon-viber {
  background-image: url(../../assets/images/icons/viber.png);
  margin-right: 5px;
}

.icon-whatsapp {
  background-image: url(../../assets/images/icons/whatsapp.png);
}

.icon-email {
  background-image: url(../../assets/images/icons/mail.png);
}

.icon-email-white {
  background-image: url(../../assets/images/icons/mail-white.png);
}

.icon-water-drop {
  background-image: url(../../assets/images/icons/water-drop.png);
  width: 11px !important;
  height: 16px !important;
  min-width: 11px !important;
}
.icon-smell {
  background-image: url(../../assets/images/icons/smell.png);
}
.icon-fe {
  background-image: url(../../assets/images/icons/fe.png);
}
.icon-mn {
  background-image: url(../../assets/images/icons/mn.png);
}
.icon-spot {
  background-image: url(../../assets/images/icons/spot.png);
}
.icon-salt {
  background-image: url(../../assets/images/icons/salt.png);
}
.icon-factory {
  background-image: url(../../assets/images/icons/factory.png);
}

/* end - icons */


/* header */

.site-header {
  position: fixed;
  top: 0;
  color: #444444;
  z-index: 5;
}

.site-header__inner {
  position: relative;
  width: 100%;
  height: 100%;
}

.site-header__info {
  display: flex;
  justify-content: center;
  height: 40px;
  background-color: rgba(255, 255, 255, 0.9);
  z-index: 1;
  position: relative;
}

.site-header__info-inner {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  line-height: 1.4em;
}

.info-inner__element,
.info-inner__element a {
  display: flex;
}

.info-inner__working-hours {
  margin-right: 34px;
}

.info-inner__phone {
  margin-right: 15px;
}

.site-header__nav {
  display: flex;
  justify-content: center;
  height: 70px;
  background-color: #fff;
  box-shadow: 0px -2px 2px 1px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1;
}

.site-header__nav-inner {
  display: flex;
  justify-content: space-between;
}

.site-header__logo {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 110px;
  margin-top: -40px;
}

.site-header__logo-image {
  width: 70px;
  flex-grow: 1;
  display: flex;
  align-items: flex-end;
}

.site-header__logo-image img {
  width: 100%;
  display: block;
}

.site-header__logo-caption {
  color: #2b9292;
  font-weight: 700;
  display: flex;
  flex-grow: 1;
  align-items: center;
  margin-top: -2px;
  margin-bottom: 2px;
  line-height: 1.4em;
}

.site-header__menu {
  display: flex;
  align-items: center;
}

.site-header__menu a {
  display: flex;
  align-items: center;
  position: relative;
  height: 100%;
  padding: 0 12px;
  text-transform: uppercase;
  //color: #444444;
}
.site-header__menu a:after {
  content: '';
  position: absolute;
  bottom: 0;
  width: 60px;
  height: 4px;
  left: 50%;
  transform: translateX(-50%);
  background-color: transparent;
}

.site-header__menu a:hover {
  color: #2b9292;
}

.site-header__menu a:hover:after {
  background-color: #2b9292;
}

.site-header__nav-info {
  display: flex;
  height: 100%;
}

.site-header__email {
  display: flex;
  align-items: center;
}

.site-header__email span {
}

/* end - header */


/* main */

main {

}

.site-section {
  width: 100%;
  display: flex;
  justify-content: center;
}

/* main * services-section */

.services-section {
  padding-top: 110px;
  background-image: url(../../assets/images/section-services.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}

/*.services-section .site-section-inner {*/
  /*overflow: hidden;*/
/*}*/

.services-section header {
  color: #fff;
}

.site-section-inner > header {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 60px 0;
  text-align: center;
}

.site-section-inner > header h4 {
  position: relative;
}
.services-section header .h1-lines {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-bottom: 20px;
}

.services-section header .h1-lines h1 {
  position: relative;
}

.h1-line {
  width: 135px;
  max-width: 135px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  width: inherit;
}

.h1-line__left {
  margin-right: 45px;
}

.h1-line__right {
  margin-left: 45px;
}


/*.services-section header h1.with-lines:before,*/
/*.services-section header h1.with-lines:after {*/
  /*content: '';*/
  /*position: absolute;*/
  /*width: 135px;*/
  /*height: 1px;*/
  /*background-color: rgba(255, 255, 255, 0.5);*/
  /*top: 50%;*/
/*}*/

/*.services-section header h1.with-lines:before {*/
  /*left: -180px;*/
/*}*/

/*.services-section header h1.with-lines:after {*/
  /*right: -180px;*/
/*}*/

.services-section header h2 {
  text-transform: uppercase;
}

.services-section__services-list {
  display: flex;
  justify-content: space-between;
  margin-left: -15px;
  margin-right: -15px;
}

.services-section__service {
  padding: 0 15px;
  width: 400px;
  width: calc(100% / 3);
  max-width: 400px;
}

.services-section__service-inner {
  display: flex;
  flex-direction: column;
  background-color: #2b9292;
  border: 2px solid #2b9292;
  border-radius: 7px;
  height: 100%;
}

.services-section__service header.service-caption {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 47px;
}

.services-section__service header span {
  font-weight: 600;
  color: #fff;
  text-transform: uppercase;
}

.services-section__service-description {
  display: flex;
  flex-direction: column;
  background-color: #fff;
  padding: 0 19px;
  height: 340px;
  color: #1b1b1b;
  overflow: hidden;

  min-height: 340px;
  height: auto;
  flex-grow: 1;
}

.service-description__image {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 5px;
  height: 195px;
}

.service-description__image img {
  width: 100%;
  display: block;
}

.service-description__image span {
  font-size: 164px;
  font-weight: 800;
  color: #a1d9ec;
  line-height: 1;
  margin-top: 10px;
}

.service-description__text {
  display: flex;
  flex-grow: 1;
  margin-bottom: 10px;
}

.service-invidual .service-description__text > span {
  margin-top: -20px;
}

.service-description__text ul {
  list-style-image: url('../../assets/images/icons/list-icon-romb.png');
  padding-left: 25px;
  line-height: 1.4em;
}

.services-section__service-more-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  //flex-grow: 1;
  color: #fff;
  font-weight: 600;
  height: 105px;
  line-height: 1.4em;
  padding: 0 15px;
}

.services-section__service-more-info header span {
  display: flex;
  align-items: center;
  height: 51px;
  text-transform: uppercase;
  text-align: center;
}

.services-section__service-more-info-inner {
  display: flex;
  height: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  //flex-grow: 1;
  line-height: 1.3em;
}

.services-section__service-more-info-inner a span {
  color: #fff;
}

.service-invidual .services-section__service-more-info header span {
  height: auto;
  margin-bottom: 9px;
}

.services-section__guarantee-info {
  display: flex;
  justify-content: center;
  font-size: 36px;
  color: #fff;
  text-transform: uppercase;
  padding: 35px 0;
  text-align: center;
  line-height: 1.25em;
}
/* end - main * services-section */

.site-section-inner > header.extra-padding {
  padding: 90px 0;
}

.site-section-inner header h4 {
  text-transform: uppercase;
  font-weight: 700;
  color: #333333;
  line-height: 1.25em;
}

.site-section__water-drop {
  display: flex;
  width: 51px;
  justify-content: space-between;
  margin-top: 15px;
}

.site-section__water-drop .icon-water-drop {
  margin: 0;
}

/* */
.section-advantages .site-section-inner {
  padding-bottom: 170px;
}
.site-section__our-advantages {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  font-size: 18px;
}

.site-section__advantage {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 33.33%;
}

.site-section__advantage.advantage-4,
.site-section__advantage.advantage-5 {
  margin-top: 60px;
}

.site-section__advantage span {
  display: flex;
  width: 300px;
  text-align: center;
  line-height: 1.25em;
  margin-top: 20px;
}

.site-section__advantage.advantage-2 span {
  width: 200px;
}

.our-advantages__image-container {
  position: relative;
  display: flex;
  justify-content: center;
  padding-bottom: 20px;
}

.our-advantages__image-container:after {
  content: '';
  position: absolute;
  bottom: 0;
  width: 20px;
  height: 5px;
  background-color: #aeb0b0;
  left: calc(50% + 2px);
  transform: translateX(-50%);
}

.our-advantages__image {
  position: relative;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
  width: 52px;
  height: 52px;
}

.our-advantages__image:after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
  opacity: 0.1;
  top: 5px;
  left: 8px;
}

.advantage-1 .our-advantages__image-container:after {
  left: calc(50% + 2px);
}
.advantage-1 .our-advantages__image {
  background-image: url(../../assets/images/icons/004-shield-colored.png);
  width: 48px;
  height: 52px;
}
.advantage-1 .our-advantages__image:after {
  background-image: url(../../assets/images/icons/004-shield.png);
}

.advantage-2 .our-advantages__image-container:after {
  left: calc(50% + 1px);
}
.advantage-2 .our-advantages__image {
  background-image: url(../../assets/images/icons/003-engineer-colored.png);
  width: 52px;
  height: 52px;
}
.advantage-2 .our-advantages__image:after {
  background-image: url(../../assets/images/icons/003-engineer.png);
}

.advantage-3 .our-advantages__image-container:after {
  left: calc(50% + 7px);
}
.advantage-3 .our-advantages__image {
  background-image: url(../../assets/images/icons/005-drop-colored.png);
  width: 48px;
  height: 52px;
}
.advantage-3 .our-advantages__image:after {
  background-image: url(../../assets/images/icons/005-drop.png);
}

.advantage-5 .our-advantages__image-container:after {
  left: calc(50% - 1px);
}
.advantage-4 .our-advantages__image {
  background-image: url(../../assets/images/icons/002-repair-colored.png);
  width: 48px;
  height: 52px;
}
.advantage-4 .our-advantages__image:after {
  background-image: url(../../assets/images/icons/002-repair.png);
}

.advantage-5 .our-advantages__image-container:after {
  left: calc(50% + 5px);
}
.advantage-5 .our-advantages__image {
  background-image: url(../../assets/images/icons/001-support-colored.png);
  width: 52px;
  height: 52px;
}
.advantage-5 .our-advantages__image:after {
  background-image: url(../../assets/images/icons/001-support.png);
}
/* */

/* red */
.red-container {
  background-color: #ae2c5b;
  border-radius: 7px;
  width: 970px;
  height: 157px;
  padding: 15px;
  color: #fff;
  margin: 0 auto;
  margin-top: -157px;
  transform: translateY(50%);
}

.red-container h4 {
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2.5em;
  line-height: 1.25em;
}

.red-container .contact-info__phone,
.red-container .contact-info__mobile-messengers {
  display: flex;
  align-items: center;
}

.red-container .site-icon {
  width: 30px;
  height: 30px;
}

.red-container .icon-phone {
  background-image: url(../../assets/images/icons/phone-light.png);
}
.red-container .icon-viber {
  background-image: url(../../assets/images/icons/viber-light.png);
}
.red-container .icon-whatsapp {
  background-image: url(../../assets/images/icons/whatsapp-light.png);
}

.red-container-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border-radius: 7px;
  border: 1px solid #c66b8c;
  padding: 0 84px;
}

.red-container__contact-info {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  margin-top: 15px;
}
.red-container__contact-info a {
  display: flex;
}

.red-container__contact-info span {
  font-size: 28px;
  font-weight: 700;
  color: #fff;
}
/* end - red */

/* our-solutions */
.section-solutions {
  background-image: url(../../assets/images/section-solutions.png);
  background-repeat: no-repeat;
  background-size: cover;
}
.section-solutions .site-section-inner {
  padding-bottom: 90px;
}
.section-solutions .site-section-inner header h4 {
  color: #fff;
}
.section-solutions .site-section-inner > header {
  padding-top: 170px;
  padding-bottom: 40px;
}
.site-section__our-solutions {
  padding: 20px;
  border-radius: 7px;
  background: linear-gradient(0.25turn, #ecf5f4, #fff, #ecf5f4);
}
.our-solutions-inner {
  border-radius: 7px;
  border: 1px solid #bfdede;
  padding: 26px 0;
}
.our-solutions-list {
  display: flex;
  flex-wrap: wrap;
  font-size: 20px;
  font-weight: 600;
  color: #1b1b1b;
}
.our-solutions__solution {
  display: flex;
  width: 50%;
  padding-left: 82px;
  align-items: center;
}
.our-solutions__solution:nth-child(4n - 1),
.our-solutions__solution:nth-child(4n) {
  padding-top: 17px;
  padding-bottom: 17px;
}

.our-solutions-list .site-icon {
  width: 43px;
  height: 43px;
  min-width: 43px;
  margin-right: 14px;
}
.our-solutions-list .icon-smell {
  transform: rotate(90deg);
}
.icon-fe {

}
.icon-mn {

}
.icon-spot {

}
.icon-salt {

}
.icon-factory {

}
/* end - */

/* ready-solutions */

.section-ready-solutions .site-section-inner {
  padding-bottom: 170px;
}

.site-section__ready-solution {
  border: 1px solid #2b9292;
  border-radius: 7px;
  overflow: hidden;
}

.ready-solution__caption {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 80px;
  background-color: #2b9292;
  color: #fff;
  font-size: 20px;
  line-height: 1.25em;
  font-weight: 600;
  text-align: center;
  position: relative;
}
.ready-solution__caption span {
  display: block;
}

.ready-solution__description {
  display: flex;
  padding: 0 15px;
  background-color: #fff;
}

.solution-professional .ready-solution__description-text-list,
.solution-3in1 .ready-solution__description-image {
  width: 585px;
  width: calc(50% - 15px);
}
.solution-professional .ready-solution__description-image,
.solution-3in1 .ready-solution__description-text-list {
  width: 615px;
  width: calc(50% + 15px);
}

.solution-professional .ready-solution__description-text-list {
  border-right: 1px solid #2b9292;
}
.solution-3in1 .ready-solution__description-text-list {
  border-left: 1px solid #2b9292;
}

.solution-professional {
  margin-bottom: 40px;
}

.ready-solution__description-image {
  padding: 15px;
  height: fit-content;
}

.ready-solution__description-text-list {
  padding: 35px 15px;
}

.ready-solution__description-image {

}

.ready-solution__description-image img {
  width: 100%;
}

.ready-solution__description-text-list {
  line-height: 1.4em;
}

.ready-solution__description-text-list i {
  width: 23px;
  height: 23px;
  min-width: 23px;
  color: #95c8c8;
  font-weight: 600;
  font-size: 16px;
  border: 2px solid #95c8c8;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-style: normal;
  margin-right: 10px;
}
.ready-solution__description-text-list li {
  display: flex;
  margin-bottom: 22px;
}
.ready-solution__description-text-list li:last-child {
  margin-bottom: 0;
}
.ready-solution__description-text-list li i span {
  margin-top: -1px;
  margin-left: 1px;
}
.ready-solution__description-text-list li:nth-child(4n) i span {
  margin-left: 0px;
}

.ready-solution__description-text-list span {
  display: block;
}

.ready-solution__description-text-list ul {
  list-style-type: none;
}

.ready-solution__description-text {

}
/* end - ready-solutions */


/* stages-of-work */
.section-stages-of-work {
  background-image: url(../../assets/images/section-stages-of-work.png);
  background-repeat: no-repeat;
  background-size: cover;
}
.section-stages-of-work .site-section-inner {
  padding-bottom: 90px;
}
.section-stages-of-work .site-section-inner > header {
  padding-top: 170px;
}
.site-section__stages-of-work-outer {
  position: relative;
  width: 100%;
  height: 445px;
}

#stages-of-work-canvas {
  position: absolute;
  width: 100%;
  height: 100%;
}

.site-section__stages-of-work {
  width: 100%;
  height: 100%;
}

.stages-of-work {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.stages-of-work span {
  width: 200px;
  width: 204px;
  text-align: center;
  text-transform: uppercase;
  font-size: 18px;
  font-weight: 600;
  color: #1b1b1b;
  margin-top: 20px;
  line-height: 1.25em;
}
.stage-4 .stages-of-work span {
  //width: 225px;
}
.site-section__stage {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 33.33%;
}
.site-section__stage:nth-child(2n) {
  flex-direction: column-reverse;
}
.stages-of-work__number-container {
  margin-top: 20px;
}
.site-section__stage:nth-child(2n) .stages-of-work__number-container  {
  margin-bottom: 20px;
  margin-top: 18px;
}
.site-section__stage i {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #2b9292;
  border-radius: 50%;
  background-color: #fff;
  width: 32px;
  height: 32px;
  font-style: normal;
  //margin-top: 20px;
  //position: relative;
}
.site-section__stage i span {
  font-size: 22px;
  font-weight: 600;
  color: #2b9292;
  margin-top: -2px;
  margin-left: -1px;
}
.site-section__stage.stage-2 i span {
  margin-left: 1px;
}
.site-section__stage.stage-3 i span {
  margin-left: 0px;
}
.site-section__stage.stage-4 i span {
  margin-left: -2px;
}
.site-section__stage.stage-5 i span {
  margin-left: 1px;
}
.stages-of-work__image-container {
  border-radius: 50%;
  width: 100px;
  height: 100px;
  background-color: #2b9292;
  padding: 5px;
}
.stages-of-work__image-container-inner {
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 50%;
  width: 100%;
  height: 100%;
  padding: 16px;
}
.stages-of-work__image {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
}
.stage-1 {
  left: 0%;
}
.stage-2 {
  left: 16.67%;
}
.stage-3 {
  left: 33.33%;
}
.stage-4 {
  left: 50%;
}
.stage-5 {
  left: 66.67%;
}
.stage-2,
.stage-4 {
  top: 208px;
}
.stage-1 .stages-of-work__image {
  background-image: url(../../assets/images/icons/taxi-white.png);
}
.stage-2 .stages-of-work__image {
  background-image: url(../../assets/images/icons/flasks-white.png);
}
.stage-3 .stages-of-work__image {
  background-image: url(../../assets/images/icons/equipment-white.png);
}
.stage-4 .stages-of-work__image {
  background-image: url(../../assets/images/icons/filter-white.png);
}
.stage-5 .stages-of-work__image {
  background-image: url(../../assets/images/icons/service-white.png);
}

/* end stages-of-work */


/* section-our-clients */
.section-our-clients .site-section-inner {
  padding-bottom: 90px;
}

.section-our-clients .slick-slide {
  width: 224px;
}

.our-clients__slider-container {
  display: flex;
  justify-content: center;
}

.our-clients__slider {
  width: 896px;
}

.slide-logo {
  width: 160px;
  height: 160px;
}
.slide-logo img {
  width: 100%;
}

.slide-caption {
  margin-top: 15px;
}

.site-custom-slider .slick-slide,
.site-custom-slider .slick-initialized .slick-slide {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.slick-prev:before {
  content: '';
  width: 10px;
  height: 10px;
  border-left: 1px solid #999;
  border-bottom: 1px solid #999;
  display: block;
  transform: rotate(45deg);
}

.slick-next:before {
  content: '';
  width: 10px;
  height: 10px;
  border-right: 1px solid #999;
  border-top: 1px solid #999;
  display: block;
  transform: rotate(45deg);
}
/* end - section-our-clients */


/* section-works-done */

.section-works-done {
  background-image: url(../../assets/images/section-works-done.png);
  background-repeat: no-repeat;
  background-size: cover;
}

.section-works-done .site-section-inner {
  padding-bottom: 115px;
}

.section-works-done .red-container {
  margin-top: 0;
  transform: none;
}

.works-done__about {
  font-size: 18px;
  font-weight: 600;
  color: #fff;
  background-color: #2b9292;
  padding: 15px;
  border-radius: 7px;
  overflow: hidden;
  line-height: 1.25em;
  margin-bottom: 40px;
}
.works-done__about-inner {
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 7px;
  padding: 12px 24px;
}

.works-done__slider-container {
  margin-bottom: 90px;
}

.works-done__slider {
  width: 100%;
  overflow: hidden;
}
.works-done__slider .slick-prev {
  left: 0px;
  width: 35px;
  height: 50px;
  background-color: rgba(255, 255, 255, 0.7);
  z-index: 1;
}
.works-done__slider .slick-prev:before {
  width: 15px;
  height: 15px;
  margin-left: 13px;
}
.works-done__slider .slick-next {
  right: 0px;
  width: 35px;
  height: 50px;
  background-color: rgba(255, 255, 255, 0.7);
  z-index: 1;
}
.works-done__slider .slick-next:before {
  width: 15px;
  height: 15px;
  margin-left: 7px;
}
.works-done__slider .slick-list {
  margin-left: -17px;
  margin-right: -17px;
}
.works-done__slider .slick-slide a {
  width: 100%;
  position: relative;
  border-radius: 7px;
  overflow: hidden;
}
.works-done__slider .slick-slide a:hover:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}
.works-done__slider .slick-slide a:hover:after {
  content: '';
  position: absolute;
  background-image: url(../../assets/images/icons/loupe.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 75px;
  height: 75px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.works-done__slider .slick-slide a:hover .slide-caption {
  display: block;
}
.works-done__slider .slick-slide a,
.works-done__slider .slide-logo {
  width: 268px;
  height: 268px;
}
.works-done__slider .slide-caption {
  display: none;
  position: absolute;
  bottom: 20px;
  left: 20px;
  color: #9b9c9c;
}
.slide-logo div {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
}

.slick-lightbox .slick-prev,
.slick-lightbox .slick-next {
  z-index: 1;
}

.works-done__slider .slick-slide {
  width: 25%;
}


/* end - section-works-done */

/* end - main */


/* footer */
footer {
  height: 100px;
  background-color: #2b9292;
  display: flex;
  justify-content: center;
  color: #fff;
}

.site-footer__inner {
  display: flex;
  justify-content: space-between;
}

.site-footer__copyright {
  display: flex;
  align-items: center;
}

.site-footer__logo {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.site-footer__logo-image {
  height: 48px;
}

.site-footer__logo-caption {
  font-size: 11.5px;
  font-weight: 700;
  margin-top: 5px;
}

.site-footer__info {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.site-footer__phones,
.site-footer__email {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.site-footer__phones {
  margin-bottom: 15px;
}
.site-footer__phones-text a span {
  color: #fff;
}

/* end - footer */



/* responsive & mobile */

.site-header__menu-btn-container {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 30px;
}


#mobile-menu-btn {
  margin-right: 15px;
  cursor: pointer;
  width: 25px;
  height: 25px;
  display: flex;
  align-items: center;
}

.mobile__menu-btn {
  position: relative;
  width: 25px;
  height: 3px;
  background-color: #000;
}

.mobile__menu-btn:before,
.mobile__menu-btn:after {
  content: '';
  position: absolute;
  width: 25px;
  height: 3px;
  background-color: #000;
}

.mobile__menu-btn:before {
  top: -8px;
}
.mobile__menu-btn:after {
  bottom: -8px;
}

#mobile-menu {
  background: #fff;
  min-height: 50px;
  transform: translateY(calc(-100% + -5px));
  transition: 0.5s ease;
  position: absolute;
  width: 100%;
  display: flex;
  flex-direction: column;
}

#mobile-menu.menu-opened {
  transform: translateY(0);
  height: auto;
}

.mobile__menu {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.mobile__menu a {
  padding: 0 15px;
  transition: 0.5s ease;
}

i.is_mobile,
.is_mobile {
  display: none;
}

@media screen and (max-width: 1289px) {
  .site-wrapper.remove-padding {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (max-width: 1229px) {
  .site-wrapper {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
  .works-done__slider .slick-slide a, .works-done__slider .slide-logo {
    width: calc(100% - 10px);
    height: calc((100vw - 60px) / 4);
  }
}

@media screen and (max-width: 1030px) {
  .red-container {
    width: 100%;
  }
}

@media screen and (min-width: 1025px) {
  .show-1024 {
    display: none;
  }
  .hide-1024 {
    display: flex;
  }
}

@media screen and (max-width: 1024px) {
  .show-1024 {

    display: flex;
  }
  .hide-1024 {
    display: none;
  }
  .services-section__service-description {
    min-height: 340px;
    height: auto;
  }
  .services-section__service-more-info {

  }
  .site-section__advantage span {
    width: 90%;
    justify-content: center;
  }
  .our-solutions__solution {
    padding-left: calc(20.3125% - 104px);
  }
}

@media screen and (max-width: 1006px) {
  .our-clients__slider {
    width: 100%;
    padding-right: 25px;
    padding-left: 25px;
  }
  .slick-prev {
    left: 0;
  }
  .slick-next {
    right: 0;
  }
}

@media screen and (max-width: 900px) {
  .anchor {
    top: -264px;
  }
  .services-section__services-list {
    flex-wrap: wrap;
    justify-content: center;
  }
  .services-section__service {
    width: calc(100% / 2);
    margin-bottom: 30px;
  }
  .services-section__service:last-child {
    margin-bottom: 0;
  }
  .services-section {
    padding-top: 174px;
  }

  .site-header__info-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .site-header__info {
    height: auto;
  }
  .site-header__info-inner {
    flex-wrap: wrap;
  }
  .site-header__info-inner.site-wrapper {
    padding-top: 5px;
    padding-bottom: 5px;
  }
  .info-inner__working-hours,
  .info-inner__phone {
    margin-right: 0;
  }
  .info-inner__element {
    width: 50%;
    margin-bottom: 5px;
  }
  .info-inner__element,
  .site-header__email {
    font-size: 14px;
  }
  .site-header__nav {
    height: 110px;
  }
  .site-header__logo {
    margin-top: 0;
  }
}

@media screen and (max-width: 870px) {
  .red-container-inner {
    padding: 0 30px;
  }
  .red-container__contact-info {
    justify-content: center;
  }
  .red-container .contact-info__phone {
    margin-right: 40px;
  }
  .ready-solution__caption {
    min-height: 75px;
    padding: 5px 30px;
    height: auto;
    font-size: 18px;
  }
  .works-done__slider .slick-slide a, .works-done__slider .slide-logo {
    //width: calc(100% - 10px);
    height: calc((100vw - 60px) / 3);
  }
}

@media screen and (max-width: 768px) {
  .is_desktop {
    display: none !important;
  }
  i.is_mobile,
  .is_mobile {
    display: flex;
  }
  h1 {
    font-size: 48px;
  }
  h2 {
    font-size: 36px;
  }
  .site-icon {
    width: 18px;
    height: 18px;
    min-width: 18px;
  }
  .site-header__menu-btn-container {
    justify-content: center;
  }
  .anchor {
    top: -200px;
  }
  #mobile-menu-btn {
    margin-right: 0;
  }
  .info-inner__element {
    justify-content: center;
  }
  .mobile__menu a {
    padding: 5px 15px 10px;
  }

  .our-solutions__solution {
    padding-left: 30px;
  }
  .red-container h4 {
    width: 490px;
  }
  .red-container__contact-info {
    width: auto;
  }
  .red-container__contact-info span {
    font-size: 26px;
  }
  .red-container .contact-info__phone {
    margin-right: 20px;
  }

  .site-section__stages-of-work-outer {
    height: auto;
  }
  #stages-of-work-canvas {
    display: none;
  }
  .site-section__stage {
    position: relative;
    width: 100%;
    flex-direction: row-reverse;
  }
  .site-section__stage:nth-child(2n) {
    flex-direction: row-reverse;
  }
  .stage-1,
  .stage-2,
  .stage-3,
  .stage-4,
  .stage-5 {
    left: 0;
    top: 0;
  }
  .stages-of-work {
    flex-grow: 1;
    padding-bottom: 20px;
  }
  .stages-of-work:last-child {
    padding-bottom: 0;
  }
  .stages-of-work span.caption {
    font-size: 16px;
    width: 100%;
    height: 3.75em;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 10px;
  }
  .stages-of-work span.caption i {
    margin-right: 15px;
  }
  .stages-of-work__number-container {
    margin-top: calc(120px + 0.625em);
    transform: translateY(-50%);
    align-self: flex-start;
  }
  .site-section__stage:nth-child(2n) .stages-of-work__number-container {
    margin-bottom: 0;
    margin-top: calc(120px + 0.625em);
    transform: translateY(-50%);
  }
  .services-section {
    padding-top: 110px;
  }
  .ready-solution__description {
    flex-direction: column;
  }
  .ready-solution__description-text-list {
    padding: 15px;
  }
  .ready-solution__description-text-list li {
    margin-bottom: 15px;
  }

  .solution-professional .ready-solution__description-text-list,
  .solution-professional .ready-solution__description-image,
  .solution-3in1 .ready-solution__description-text-list,
  .solution-3in1 .ready-solution__description-image{
    width: 100%;
  }
  .ready-solution__description-image {
    max-width: 450px;
    align-self: center;
  }

  .solution-professional .ready-solution__description-text-list,
  .solution-3in1 .ready-solution__description-text-list {
    border: none;
  }
  .site-footer__phones-text {
    display: flex;
    flex-direction: column;
    line-height: 1.25em;
    align-items: flex-end;
  }
  footer {
    font-size: 14px;
  }
}

@media screen and (max-width: 720px) {
  .red-container {
    height: auto;
    margin-top: -210px;
  }
  .red-container-inner {
    padding: 15px;
  }
  .red-container__contact-info {
    flex-direction: column;
    align-items: flex-end;
  }
  .red-container .contact-info__phone {
    margin-right: 0;
    margin-bottom: 15px;
  }
  .section-stages-of-work .site-section-inner > header {
    padding-top: 193px;
  }
}


@media screen and (max-width: 640px) {
  body {
    font-size: 15px;
  }
  h1 {
    font-size: 42px;
  }
  h2 {
    font-size: 30px;
  }
  h4 {
    font-size: 20px;
  }
  .services-section__service {
    width: 100%;
  }
  .site-section__advantage {
    width: 50%;
  }
  .site-section__advantage.advantage-3 {
    margin-top: 60px;
  }
  .services-section__service-description {
    min-height: 300px;
  }
  .our-solutions__solution {
    width: 100%;
  }
  .our-solutions__solution,
  .our-solutions__solution:nth-child(4n - 1), .our-solutions__solution:nth-child(4n) {
    padding-top: 0;
    padding-bottom: 20px;
  }
  .our-solutions__solution:last-child {
    padding-bottom: 0;
  }
  .red-container h4 {
    width: 100%;
  }
  .services-section__guarantee-info {
    font-size: 28px;
    width: 440px;
  }
  .ready-solution__description-text-list {
    line-height: 1.25em;
  }
  footer {
    height: 150px;
  }
  footer .site-footer__inner {
    flex-direction: column;
    position: relative;
    justify-content: center;
  }
  .site-footer__copyright {
    position: absolute;
    bottom: 1em;
    left: 50%;
    transform: translateX(-50%);
  }
  .site-footer__info {
    flex-direction: row;
    align-items: flex-start;
    margin-top: 10px;
    margin-bottom: 2em;
  }
  .site-footer__phones {
    margin-bottom: 0;
    align-items: flex-start;
  }
  .site-footer__phones,
  .site-footer__email {
    width: 50%;
    padding: 0 15px;
  }
  .site-footer__email {
    justify-content: flex-start;
  }
  .works-done__slider .slick-slide a, .works-done__slider .slide-logo {
    width: calc(100% - 10px);
    height: calc((100vw - 60px) / 2);
  }
}
@media screen and (max-width: 550px) {
  .mobile__menu a {
    padding: 5px 1% 10px;
  }
}
@media screen and (max-width: 500px) {
  .services-section__guarantee-info {
    font-size: 26px;
    width: 100%;
  }
}

@media screen and (max-width: 480px) {
  body {
    font-size: 14px;
  }
  h1 {
    font-size: 36px;
  }
  h2 {
    font-size: 24px;
  }
  .site-wrapper,
  .site-wrapper.remove-padding {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
  }
  h4 {
    font-size: 18px;
  }
  .site-section-inner > header {
    padding: 40px 0;
  }
  .site-section-inner > header.extra-padding {
    padding: 60px 0;
  }
  .section-stages-of-work .site-section-inner > header {
    padding-top: 157px;
  }
  .red-container {
    margin-top: -196px;
  }
  .red-container h4 {
    font-size: 20px;
  }
  .red-container__contact-info span {
    font-size: 24px;
  }
  .red-container .site-icon {
    width: 26px;
    height: 26px;
  }
  .services-section__guarantee-info {
    font-size: 26px;
    width: 100%;
    width: 300px;
    margin: 0 auto;
  }
  .site-header__info {
    //position: absolute;
    //top: 0;
    //left: 0;
    //width: 100%;
  }
  .site-header__nav-info {

  }
  .site-header__info-inner {
    width: 100%;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .info-inner__element {
    width: 50%;
  }
  #mobile-menu {
    transform: translateY(-100%);
  }
  .mobile__menu {
    flex-direction: column;
  }
  .mobile__menu a {
    padding: 5px 15px;
  }
  .menu-opened .mobile__menu a {
    padding: 10px 15px;
  }
  .site-section__our-advantages {
    flex-direction: column;
    font-size: 16px;
  }
  .site-section__advantage {
    width: 100%;
    margin-top: 0;
  }
  .site-section__advantage.advantage-2,
  .site-section__advantage.advantage-3,
  .site-section__advantage.advantage-4,
  .site-section__advantage.advantage-5 {
    margin-top: 40px;
  }
  .site-section__advantage.advantage-2 span {
    width: 90%;
  }
  .stages-of-work span.caption {
    font-size: 14px;
  }
  .site-section__stage i {
    width: 28px;
    height: 28px;
  }
  .site-section__stage i span {
    font-size: 18px;
  }
  .our-solutions-list {
    font-size: 16px;
  }
  .our-solutions__solution, .our-solutions__solution:nth-child(4n - 1), .our-solutions__solution:nth-child(4n) {
    padding-left: 15px;
  }
  .ready-solution__caption {
    padding: 5px 15px;
    font-size: 16px;
  }
  .ready-solution__description-text-list li {
    margin-bottom: 10px;
  }
  .works-done__about {
    font-size: 16px;
  }
  footer {
    height: auto;
  }
  footer .site-footer__inner {
    padding-top: 15px;
  }
  .site-footer__info {
    flex-direction: column;
    line-height: 1.25em;
    align-items: center;
    margin-bottom: 2.5em;
  }
  .site-footer__phones, .site-footer__email {
    width: auto;
  }
  .works-done__slider .slick-slide a, .works-done__slider .slide-logo {
    width: calc(100% - 10px);
    height: calc((100vw - 60px));
  }
}

@media screen and (min-width: 451px) and (max-width: 768px) {
  .show-450 {
    display: none;
  }
  .hide-450 {
    display: flex;
  }
}

@media screen and (max-width: 450px) {
  .show-450 {
    display: flex;
  }
  .hide-450 {
    display: none;
  }
  .anchor {
    top: -150px;
  }
  .site-header__nav {
    height: 90px;
  }
  .site-header__logo {
    height: 100%;
  }
  .site-header__logo-image {
    width: 50px;
  }
  .site-header__logo-caption {

  }
  .site-header__info-inner {
    flex-direction: column;
  }
  .info-inner__element {
    width: auto;
    margin: 0;
  }
  .services-section {
    padding-top: 90px;
  }
}

@media screen and (max-width: 420px) {
  h1 {
    font-size: 32px;
  }
  h2 {
    font-size: 22px;
  }
  .red-container h4 {
    font-size: 18px;
  }
  .red-container__contact-info span {
    font-size: 22px;
  }
  .our-solutions-list .site-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
  }
  .works-done__about {
    font-size: 15px;
  }
  .site-footer__copyright {
    left: 0;
    transform: none;
    width: 100%;
    display: flex;
    justify-content: center;
  }
}

@media screen and (max-width: 360px) {
  h1 {
    font-size: 28px;
  }
  h2 {
    font-size: 20px;
  }
  .site-section-inner > header {
    padding: 30px 0;
  }
  .site-section-inner > header.extra-padding {
    padding: 40px 0;
  }
  .section-stages-of-work .site-section-inner > header {
    padding-top: 130px;
  }
  .anchor {
    top: -115px;
  }
  .site-header__nav {
    height: 75px;
  }
  .site-header__logo {
    height: 100%;
  }
  .site-header__logo-image {
    width: 40px;
  }
  .site-header__logo-caption {
    font-size: 12px;
  }
  .red-container {
    margin-top: -178px;
  }
  .red-container h4 {
    font-size: 16px;
  }

  .red-container__contact-info span {
    font-size: 20px;
  }

  .red-container .site-icon {
    width: 22px;
    height: 22px;
  }
  .services-section__guarantee-info {
    font-size: 22px;
    width: 250px;
  }
}
@media screen and (max-width: 320px) {
  .red-container h4 {
    font-size: 15px;
  }
  .red-container__contact-info span {
    font-size: 16px;
  }
}

/* end - responsive & mobile */