.page-single {
  margin-top: 150px;
  margin-bottom: 150px; }

.slick-slide *:focus {
  outline: none !important; }

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0; }

input[type="number"] {
  -moz-appearance: textfield; }

input[type="number"]:hover,
input[type="number"]:focus {
  -moz-appearance: number-input; }

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0; }

.wpcf7 .ajax-loader {
  position: absolute !important;
  top: 5px;
  left: -20px; }

.wpcf7-not-valid-tip {
  display: none !important; }

.wpcf7-not-valid {
  -webkit-box-shadow: 0px 0px 0px 2px #fc8282;
  -moz-box-shadow: 0px 0px 0px 2px #fc8282;
  box-shadow: 0px 0px 0px 2px #fc8282; }

.modal .wpcf7 form div.wpcf7-response-output {
  top: unset;
  bottom: 0; }

.wpcf7 form div.wpcf7-response-output {
  margin: 0;
  padding: 0;
  font-family: Montserrat;
  font-size: 13px;
  font-weight: 400;
  text-align: center;
  border: none;
  position: absolute;
  bottom: 0%;
  width: 100%;
  left: 0;
  color: #fff;
  padding: 10px 10px;
  z-index: 2; }

.wpcf7 form.invalid div.wpcf7-response-output {
  border: none;
  background: #fc8282; }

.wpcf7 form.sent .wpcf7-response-output {
  background: #46b450;
  border-color: #46b450; }

.modal .close {
  position: absolute;
  right: 10px;
  top: 15px;
  width: 17px;
  height: 17px;
  background: url(../image/close-modal.png) no-repeat center;
  background-size: contain;
  opacity: 1;
  z-index: 10; }
.modal#modal-content .modal-content, .modal#modal-content2 .modal-content {
  border-radius: 0;
  box-shadow: 0 25px 45px #333;
  background-color: #505050; }
.modal#modal-content .modal-body, .modal#modal-content2 .modal-body {
  padding: 50px 45px 40px;
  z-index: 2; }
.modal#modal-content .head, .modal#modal-content2 .head {
  color: #fff;
  font-weight: 700;
  font-size: 18px; }
.modal#modal-content .text, .modal#modal-content2 .text {
  color: #fff;
  font-weight: 500;
  font-size: 16px; }
.modal#modal-content img, .modal#modal-content2 img {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  -o-object-fit: cover;
  z-index: -1;
  opacity: 0.5; }
.modal#modal-content .more, .modal#modal-content2 .more {
  display: none; }
.modal#modal .modal-body {
  padding: 50px 45px 40px;
  z-index: 2; }
.modal#modal .head-form {
  text-align: center;
  color: #ffffff;
  font-size: 35px;
  font-weight: 700;
  line-height: 30px;
  margin: 0;
  margin-bottom: 7px; }
.modal#modal .text-form {
  color: #ffffff;
  font-size: 20px;
  font-weight: 300;
  margin-bottom: 25px;
  text-align: center; }
.modal#modal .modal-content {
  border-radius: 0;
  box-shadow: 0 25px 45px #ffffff54;
  background-color: #505050; }
  .modal#modal .modal-content::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: url(../image/foncal.png) no-repeat center;
    background-size: cover;
    z-index: 0;
    opacity: 0.2; }
.modal#modal input[type='text'], .modal#modal input[type='tel'], .modal#modal input[type='email'] {
  outline: none;
  border: none;
  display: block;
  width: 100%;
  color: #76674d;
  font-family: Montserrat;
  font-size: 17px;
  font-weight: 500;
  padding: 15px 25px;
  margin: 0 auto 15px;
  background-color: #eef1f2;
  border-radius: 30px;
  max-width: 300px;
  text-align: center; }
.modal#modal input[type='submit'] {
  outline: none;
  border: none;
  display: block;
  width: 100%;
  color: #fff;
  font-family: Montserrat;
  font-size: 16px;
  font-weight: 600;
  background-color: #2dc4df;
  padding: 15px 25px;
  -webkit-transition-property: all;
  -moz-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 0.4s;
  -moz-transition-duration: 0.4s;
  -o-transition-duration: 0.4s;
  transition-duration: 0.4s;
  margin: 0 auto 20px;
  border-radius: 30px;
  max-width: 300px; }
  .modal#modal input[type='submit']:hover {
    background: #03cc77; }
.modal#modal label {
  display: block;
  color: #fff;
  font-family: Montserrat;
  font-size: 14px;
  font-weight: 300;
  text-align: center;
  line-height: 25px;
  margin: 0; }
  .modal#modal label a {
    color: #43e3ff;
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 300;
    border-bottom: 1px solid; }
@media (max-width: 768px) {
  .modal#modal .head-form {
    font-size: 30px;
    line-height: 38px; }
  .modal#modal .text-form {
    margin-bottom: 25px; } }
@media (max-width: 768px) {
  .modal#modal .modal-body {
    padding: 30px 25px; } }
@media (max-width: 687px) {
  .modal#modal .modal-sm {
    margin-top: 0; }
  .modal#modal .head-form {
    font-size: 28px;
    line-height: 30px; }
  .modal#modal .text-form {
    font-size: 18px; }
  .modal#modal input[type='text'], .modal#modal input[type='tel'], .modal#modal input[type='email'], .modal#modal input[type='submit'] {
    padding: 15px 25px;
    margin-bottom: 15px;
    font-size: 16px; }
  .modal#modal textarea {
    height: 50px;
    padding: 15px 25px;
    font-size: 16px;
    margin-bottom: 10px;
    height: 90px; }
  .modal#modal label {
    margin-top: 5px;
    margin-bottom: 0; } }
@media (max-width: 500px) {
  .modal#modal .modal-body {
    padding: 40px 15px 20px; }
  .modal#modal .head-form {
    font-size: 28px;
    line-height: 32px;
    margin: 0 0 5px; }
  .modal#modal .text-form {
    font-size: 18px;
    margin-bottom: 20px; } }
@media (max-width: 380px) {
  .modal#modal .head-form {
    font-size: 28px; }
  .modal#modal .modal-content {
    background-color: #1e1e1e; } }
@media (max-width: 768px) {
  .modal {
    top: 50px !important; } }
@media (max-width: 500px) {
  .modal {
    top: 20px !important; } }
@media (max-width: 380px) {
  .modal {
    top: 0px !important; }
    .modal .modal-dialog {
      margin: 0;
      height: 100%; }
    .modal .modal-body {
      padding-top: 60px !important; }
    .modal .close {
      top: 20px;
      right: 15px; }
    .modal .modal-content {
      height: 100%; } }

html {
  overflow-x: hidden; }
  html body {
    overflow-x: hidden;
    font-family: Montserrat; }

.mobile-menu.active {
  left: 0%; }
  .mobile-menu.active::after {
    position: absolute;
    top: 0;
    left: 100%;
    height: 100%;
    width: 0px;
    z-index: 99998;
    content: "";
    box-shadow: 0 0 20px 10px #c0c0c0ad; }
  .mobile-menu.active .close-shadow {
    z-index: 99997;
    opacity: 1;
    pointer-events: all; }

.mobile-menu {
  position: fixed;
  top: 0;
  left: -100%;
  height: 100%;
  width: 100%;
  max-width: 500px;
  -webkit-transition-property: all;
  -moz-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 0.7s;
  -moz-transition-duration: 0.7s;
  -o-transition-duration: 0.7s;
  transition-duration: 0.7s;
  z-index: 99999; }
  .mobile-menu .close-shadow {
    opacity: 0;
    position: fixed;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.7);
    -webkit-transition-property: all;
    -moz-transition-property: all;
    -o-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 0.5s;
    -moz-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    z-index: -9999;
    pointer-events: none; }
  .mobile-menu .mobile-sub {
    cursor: pointer;
    z-index: 999;
    position: absolute;
    right: 10px;
    height: 40px;
    width: 40px;
    background: rgba(0, 0, 0, 0.5);
    top: 7px;
    border-radius: 8px;
    -webkit-transition-property: all;
    -moz-transition-property: all;
    -o-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 0.5s;
    -moz-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s; }
    .mobile-menu .mobile-sub::after {
      content: "";
      position: absolute;
      left: calc(50% - 9px);
      top: calc(50% - 4px);
      width: 18px;
      height: 12px;
      background: url(../image/ar-top.png) center no-repeat;
      background-size: contain;
      transform: rotate(180deg); }
  .mobile-menu .top-close {
    position: absolute;
    top: 0;
    left: 0;
    height: 80px;
    width: 100%;
    background: #333;
    z-index: 99999;
    border-bottom: 2px solid #fff; }
    .mobile-menu .top-close > a {
      position: absolute;
      display: block;
      height: 50px;
      top: 50%;
      left: 20px;
      width: 145px;
      -moz-transform: translate(0px, -50%);
      -ms-transform: translate(0px, -50%);
      -webkit-transform: translate(0px, -50%);
      -o-transform: translate(0px, -50%);
      transform: translate(0px, -50%); }
      .mobile-menu .top-close > a img {
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        object-fit: contain;
        -o-object-fit: contain;
        object-position: left; }
    .mobile-menu .top-close .close-mobile-menu {
      cursor: pointer;
      position: absolute;
      color: #fff;
      font-family: Montserrat;
      font-size: 14px;
      font-weight: 700;
      padding: 9px 20px;
      text-transform: uppercase;
      border: 2px solid #fff;
      top: 50%;
      right: 20px;
      border-radius: 0px;
      -moz-transform: translate(0px, -50%);
      -ms-transform: translate(0px, -50%);
      -webkit-transform: translate(0px, -50%);
      -o-transform: translate(0px, -50%);
      transform: translate(0px, -50%);
      -webkit-transition-property: all;
      -moz-transition-property: all;
      -o-transition-property: all;
      transition-property: all;
      -webkit-transition-duration: 0.3s;
      -moz-transition-duration: 0.3s;
      -o-transition-duration: 0.3s;
      transition-duration: 0.3s; }
      .mobile-menu .top-close .close-mobile-menu:hover {
        color: #fff;
        background-color: #2dc4df;
        border: 2px solid #2dc4df; }
  .mobile-menu ul {
    padding: 0;
    margin: 0;
    list-style-type: none; }
    .mobile-menu ul li {
      padding: 0;
      margin: 0;
      list-style-type: none; }
  .mobile-menu > ul {
    position: absolute;
    left: 0;
    top: 80px;
    height: calc(100% - 80px);
    width: 100%;
    background: #fff;
    z-index: 99999;
    overflow: auto;
    padding-bottom: 40px; }
    .mobile-menu > ul::-webkit-scrollbar {
      width: 9px;
      background-color: #C9C9C9;
      padding: 5px; }
    .mobile-menu > ul::-webkit-scrollbar-thumb {
      background-color: #03cc77; }
    .mobile-menu > ul > li {
      position: relative;
      display: block;
      width: 100%;
      border-bottom: 1px solid #c2c2c2;
      -webkit-transition-property: all;
      -moz-transition-property: all;
      -o-transition-property: all;
      transition-property: all;
      -webkit-transition-duration: 0.3s;
      -moz-transition-duration: 0.3s;
      -o-transition-duration: 0.3s;
      transition-duration: 0.3s; }
      .mobile-menu > ul > li > a {
        position: relative;
        display: block;
        width: 100%;
        padding: 15px 60px 15px 20px;
        color: #4e4e4e;
        font-family: Montserrat;
        font-size: 16px;
        font-weight: 700;
        -webkit-transition-property: all;
        -moz-transition-property: all;
        -o-transition-property: all;
        transition-property: all;
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        -o-transition-duration: 0.3s;
        transition-duration: 0.3s; }
        .mobile-menu > ul > li > a:hover {
          padding-left: 30px;
          background: #2dc4df;
          color: #fff; }
      .mobile-menu > ul > li > ul {
        display: none;
        border-left: 10px solid #2dc4df; }
        .mobile-menu > ul > li > ul > li {
          border-top: 1px solid #d6d6d6;
          -webkit-transition-property: all;
          -moz-transition-property: all;
          -o-transition-property: all;
          transition-property: all;
          -webkit-transition-duration: 0.3s;
          -moz-transition-duration: 0.3s;
          -o-transition-duration: 0.3s;
          transition-duration: 0.3s; }
          .mobile-menu > ul > li > ul > li:hover {
            border-top: 1px solid #67c1d6; }
          .mobile-menu > ul > li > ul > li > a {
            position: relative;
            display: block;
            width: 100%;
            padding: 15px 20px 15px 20px;
            color: #5e5e5e;
            font-family: Montserrat;
            font-size: 15px;
            font-weight: 700;
            background: #fafafa;
            -webkit-transition-property: all;
            -moz-transition-property: all;
            -o-transition-property: all;
            transition-property: all;
            -webkit-transition-duration: 0.3s;
            -moz-transition-duration: 0.3s;
            -o-transition-duration: 0.3s;
            transition-duration: 0.3s; }
            .mobile-menu > ul > li > ul > li > a:hover {
              padding-left: 25px;
              -webkit-transition-property: all;
              -moz-transition-property: all;
              -o-transition-property: all;
              transition-property: all;
              -webkit-transition-duration: 0.3s;
              -moz-transition-duration: 0.3s;
              -o-transition-duration: 0.3s;
              transition-duration: 0.3s;
              background: #2dc4df;
              color: #fff; }

h1.pages {
  position: relative;
  color: #262626;
  font-size: 45px;
  font-weight: 700;
  line-height: 48px;
  margin: 30px 0 40px; }
  @media (max-width: 1200px) {
    h1.pages {
      font-size: 32px;
      margin-bottom: 40px;
      line-height: 40px; } }
  @media (max-width: 991px) {
    h1.pages {
      font-size: 30px;
      margin-bottom: 40px;
      line-height: 40px; } }
  @media (max-width: 768px) {
    h1.pages {
      font-size: 28px;
      margin-bottom: 30px;
      line-height: 38px; } }
  @media (max-width: 687px) {
    h1.pages {
      font-size: 26px;
      margin-bottom: 30px;
      line-height: 36px; } }
  @media (max-width: 500px) {
    h1.pages {
      font-size: 20px;
      margin-bottom: 30px;
      line-height: 28px; } }

h2.title {
  position: relative;
  font-size: 45px;
  font-weight: 600;
  line-height: 50px; }
  @media (max-width: 1200px) {
    h2.title {
      font-size: 36px;
      line-height: 46px; } }
  @media (max-width: 991px) {
    h2.title {
      font-size: 30px;
      line-height: 40px;
      margin-bottom: 15px; } }
  @media (max-width: 768px) {
    h2.title {
      font-size: 26px;
      line-height: 36px; } }
  @media (max-width: 687px) {
    h2.title {
      font-size: 22px;
      line-height: 30px; } }
  @media (max-width: 500px) {
    h2.title {
      font-size: 20px;
      line-height: 26px; } }

.sub-title {
  text-align: center;
  display: block;
  width: 100%;
  color: #74777e;
  font-family: Montserrat;
  font-size: 20px;
  font-weight: 300;
  margin-bottom: 50px; }
  @media (max-width: 1200px) {
    .sub-title {
      font-size: 21px; } }
  @media (max-width: 991px) {
    .sub-title {
      font-size: 19px;
      margin-bottom: 40px; } }
  @media (max-width: 768px) {
    .sub-title {
      font-size: 19px; } }
  @media (max-width: 687px) {
    .sub-title {
      font-size: 18px;
      margin-bottom: 30px; } }
  @media (max-width: 500px) {
    .sub-title {
      font-size: 16px; } }
  @media (max-width: 380px) {
    .sub-title {
      font-size: 16px; } }

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  padding: 60px 0;
  -webkit-transition-property: all;
  -moz-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 0.4s;
  -moz-transition-duration: 0.4s;
  -o-transition-duration: 0.4s;
  transition-duration: 0.4s; }
  header .container {
    position: relative;
    height: 70px; }
  header .logo {
    position: absolute;
    left: 15px;
    top: 50%;
    -moz-transform: translate(0px, -50%);
    -ms-transform: translate(0px, -50%);
    -webkit-transform: translate(0px, -50%);
    -o-transform: translate(0px, -50%);
    transform: translate(0px, -50%);
    max-height: 100%;
    height: 68px;
    width: 233px; }
    header .logo img {
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      object-fit: contain;
      -o-object-fit: contain; }
  header .socials {
    position: absolute;
    top: 50%;
    -moz-transform: translate(0px, -50%);
    -ms-transform: translate(0px, -50%);
    -webkit-transform: translate(0px, -50%);
    -o-transform: translate(0px, -50%);
    transform: translate(0px, -50%);
    right: 600px; }
    header .socials a {
      color: #fff;
      font-size: 28px;
      margin-left: 30px;
      -webkit-transition-property: all;
      -moz-transition-property: all;
      -o-transition-property: all;
      transition-property: all;
      -webkit-transition-duration: 0.3s;
      -moz-transition-duration: 0.3s;
      -o-transition-duration: 0.3s;
      transition-duration: 0.3s; }
      header .socials a:hover {
        color: #2dc4df; }
  header .emails {
    position: absolute;
    top: 50%;
    -moz-transform: translate(0px, -50%);
    -ms-transform: translate(0px, -50%);
    -webkit-transform: translate(0px, -50%);
    -o-transform: translate(0px, -50%);
    transform: translate(0px, -50%);
    right: 350px; }
    header .emails a {
      position: relative;
      display: block;
      color: #ffffff;
      font-size: 16px;
      font-weight: 300; }
      header .emails a i {
        font-size: 20px;
        margin-right: 10px; }
  header .phones {
    position: absolute;
    top: 50%;
    -moz-transform: translate(0px, -50%);
    -ms-transform: translate(0px, -50%);
    -webkit-transform: translate(0px, -50%);
    -o-transform: translate(0px, -50%);
    transform: translate(0px, -50%);
    right: 100px;
    text-align: right; }
    header .phones .phone {
      position: relative;
      display: block;
      color: #ffffff;
      font-size: 18px;
      font-weight: 300;
      padding-left: 30px; }
      header .phones .phone strong {
        font-weight: 600; }
      header .phones .phone::before {
        position: absolute;
        width: 20px;
        height: 21px;
        background: url(../image/phone.png) no-repeat center;
        background-size: contain;
        content: "";
        display: block;
        left: 0px;
        top: 50%;
        -moz-transform: translate(0px, -50%);
        -ms-transform: translate(0px, -50%);
        -webkit-transform: translate(0px, -50%);
        -o-transform: translate(0px, -50%);
        transform: translate(0px, -50%); }
    header .phones .callback {
      color: #2dc4df;
      font-size: 16px;
      font-weight: 500;
      -webkit-transition-property: all;
      -moz-transition-property: all;
      -o-transition-property: all;
      transition-property: all;
      -webkit-transition-duration: 0.3s;
      -moz-transition-duration: 0.3s;
      -o-transition-duration: 0.3s;
      transition-duration: 0.3s;
      border-bottom: 1px solid transparent; }
      header .phones .callback:hover {
        color: #03cc77;
        border-bottom: 1px solid #03cc77; }
  header .burger {
    display: block;
    right: 15px;
    position: absolute;
    top: 50%;
    -moz-transform: translate(0px, -50%);
    -ms-transform: translate(0px, -50%);
    -webkit-transform: translate(0px, -50%);
    -o-transform: translate(0px, -50%);
    transform: translate(0px, -50%);
    width: 30px;
    height: 30px;
    cursor: pointer; }
    header .burger span {
      position: absolute;
      background-color: #fff;
      height: 3px;
      width: 100%;
      top: 50%;
      -moz-transform: translate(0px, -50%);
      -ms-transform: translate(0px, -50%);
      -webkit-transform: translate(0px, -50%);
      -o-transform: translate(0px, -50%);
      transform: translate(0px, -50%);
      -webkit-transition-property: all;
      -moz-transition-property: all;
      -o-transition-property: all;
      transition-property: all;
      -webkit-transition-duration: 0.4s;
      -moz-transition-duration: 0.4s;
      -o-transition-duration: 0.4s;
      transition-duration: 0.4s;
      z-index: 100; }
      header .burger span::before {
        content: "";
        position: absolute;
        top: -10px;
        background-color: #fff;
        height: 3px;
        left: 0;
        width: 100%;
        -webkit-transition-property: all;
        -moz-transition-property: all;
        -o-transition-property: all;
        transition-property: all;
        -webkit-transition-duration: 0.4s;
        -moz-transition-duration: 0.4s;
        -o-transition-duration: 0.4s;
        transition-duration: 0.4s; }
      header .burger span::after {
        content: "";
        position: absolute;
        bottom: -10px;
        background-color: #fff;
        height: 3px;
        left: 0;
        width: 100%;
        -webkit-transition-property: all;
        -moz-transition-property: all;
        -o-transition-property: all;
        transition-property: all;
        -webkit-transition-duration: 0.4s;
        -moz-transition-duration: 0.4s;
        -o-transition-duration: 0.4s;
        transition-duration: 0.4s; }
    header .burger:hover span {
      background: #2dc4df; }
      header .burger:hover span::after, header .burger:hover span::before {
        background: #2dc4df; }
  header.active {
    background: #333;
    padding: 20px 0;
    border-bottom: 1px solid #fff; }
  @media (max-width: 1200px) {
    header {
      padding: 45px 0; } }
  @media (max-width: 991px) {
    header {
      padding: 30px 0; }
      header .container {
        height: 60px; }
      header .emails {
        display: none; }
      header .socials {
        right: 320px; } }
  @media (max-width: 687px) {
    header {
      padding: 15px 0; }
      header .container {
        height: 50px; }
      header .socials {
        right: 140px; }
      header .logo {
        width: 180px; }
      header .phones {
        right: 80px; }
        header .phones .phone {
          font-size: 0; }
          header .phones .phone::before {
            width: 25px;
            height: 25px; }
        header .phones .callback {
          display: none; }
      header.active {
        padding: 15px 0; } }
  @media (max-width: 500px) {
    header {
      padding: 15px 0; }
      header .container {
        height: 50px; }
      header .socials {
        right: 125px; }
        header .socials a {
          margin-left: 25px; }
      header .logo {
        width: 130px; }
      header .phones {
        right: 70px; }
      header.active {
        padding: 10px 0; } }
  @media (max-width: 500px) {
    header {
      padding: 15px 0; }
      header .container {
        height: 45px; }
      header .socials {
        right: 105px; }
        header .socials a {
          font-size: 25px;
          margin-left: 15px; }
      header .logo {
        width: 116px; }
      header .phones {
        right: 55px; }
        header .phones .phone::before {
          width: 20px;
          height: 22px; }
      header.active {
        padding: 10px 0; } }

.block-banner {
  position: relative;
  display: block;
  width: 100%;
  height: 950px; }
  .block-banner .comp {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -o-object-fit: cover;
    object-position: bottom;
    z-index: 2; }
  .block-banner .mobile {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -o-object-fit: cover;
    object-position: bottom;
    z-index: 1; }
  .block-banner .item {
    position: relative;
    height: 950px; }
    .block-banner .item .container {
      position: relative;
      height: 100%; }
    .block-banner .item .text-block {
      position: absolute;
      z-index: 1;
      top: 50%;
      -moz-transform: translate(0px, -50%);
      -ms-transform: translate(0px, -50%);
      -webkit-transform: translate(0px, -50%);
      -o-transform: translate(0px, -50%);
      transform: translate(0px, -50%);
      text-align: center;
      width: calc(100% - 30px);
      color: #fff;
      padding: 50px 75px 0;
      z-index: 3; }
    .block-banner .item h3 {
      font-size: 41px;
      font-weight: 300;
      margin: 0 0 15px;
      text-transform: uppercase; }
    .block-banner .item h2 {
      font-size: 81px;
      font-weight: 700;
      margin: 0 0 20px;
      text-transform: uppercase; }
    .block-banner .item h4 {
      font-size: 35px;
      font-weight: 300;
      margin: 0 0 15px; }
    .block-banner .item p {
      font-size: 21px;
      font-weight: 300; }
    .block-banner .item .callback {
      margin-top: 25px;
      position: relative;
      display: inline-block;
      color: #ffffff;
      font-size: 16px;
      font-weight: 500;
      border-radius: 30px;
      background-color: #2dc4df;
      padding: 15px 50px 15px 80px;
      -webkit-transition-property: all;
      -moz-transition-property: all;
      -o-transition-property: all;
      transition-property: all;
      -webkit-transition-duration: 0.3s;
      -moz-transition-duration: 0.3s;
      -o-transition-duration: 0.3s;
      transition-duration: 0.3s; }
      .block-banner .item .callback:hover {
        background: #03cc77; }
      .block-banner .item .callback::after {
        position: absolute;
        content: "";
        height: 20px;
        width: 30px;
        top: 50%;
        -moz-transform: translate(0px, -50%);
        -ms-transform: translate(0px, -50%);
        -webkit-transform: translate(0px, -50%);
        -o-transform: translate(0px, -50%);
        transform: translate(0px, -50%);
        left: 30px;
        background: url(../image/callback.png) no-repeat center;
        background-size: contain; }
  @media (max-width: 1200px) {
    .block-banner {
      height: 750px; }
      .block-banner .item {
        height: 750px; }
        .block-banner .item h3 {
          font-size: 34px; }
        .block-banner .item h2 {
          font-size: 60px; }
        .block-banner .item h4 {
          font-size: 30px; } }
  @media (max-width: 991px) {
    .block-banner {
      height: 700px; }
      .block-banner .item {
        height: 700px; }
        .block-banner .item .text-block {
          padding-top: 30px; }
        .block-banner .item h3 {
          font-size: 28px; }
        .block-banner .item h2 {
          font-size: 40px;
          margin-bottom: 15px; }
        .block-banner .item h4 {
          font-size: 26px; }
        .block-banner .item p {
          font-size: 18px; } }
  @media (max-width: 768px) {
    .block-banner .mobile {
      z-index: 2; }
    .block-banner .comp {
      z-index: 1; } }
  @media (max-width: 687px) {
    .block-banner {
      height: 600px; }
      .block-banner .item {
        height: 600px; }
        .block-banner .item .text-block {
          padding-top: 0px; }
        .block-banner .item h3 {
          font-size: 20px;
          margin-bottom: 10px; }
        .block-banner .item h2 {
          font-size: 28px;
          margin-bottom: 10px; }
        .block-banner .item h4 {
          font-size: 18px; }
        .block-banner .item p {
          font-size: 16px; } }
  @media (max-width: 500px) {
    .block-banner .slick-prev, .block-banner .slick-next {
      top: unset;
      bottom: 10px; }
    .block-banner .item .text-block {
      padding: 0px; } }
  @media (max-width: 380px) {
    .block-banner {
      height: 560px; }
      .block-banner .item {
        height: 560px; }
        .block-banner .item .text-block {
          padding-top: 0px; }
        .block-banner .item h3 {
          font-size: 18px;
          margin-bottom: 10px; }
        .block-banner .item h2 {
          font-size: 22px;
          margin-bottom: 10px; }
        .block-banner .item h4 {
          font-size: 16px;
          margin: 0 0 10px; }
        .block-banner .item p {
          font-size: 16px; } }

.block-services {
  position: relative;
  display: block;
  width: 100%;
  margin: 60px 0; }
  .block-services h2.title {
    position: relative;
    text-align: center;
    margin-bottom: 60px; }
    .block-services h2.title::after {
      position: absolute;
      width: 86px;
      height: 2px;
      background-color: #2dc4df;
      content: "";
      left: 50%;
      -moz-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      -webkit-transform: translate(-50%, 0);
      -o-transform: translate(-50%, 0);
      transform: translate(-50%, 0);
      bottom: -30px; }
  .block-services .sub-title {
    margin-bottom: 55px; }
  .block-services .items {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -15px; }
    .block-services .items .item {
      position: relative;
      height: 280px;
      width: calc(33.333% - 30px);
      -webkit-box-flex: 0 1 calc(33.333% - 30px);
      -moz-box-flex: 0 1 calc(33.333% - 30px);
      -webkit-flex: 0 1 calc(33.333% - 30px);
      -ms-flex: 0 1 calc(33.333% - 30px);
      flex: 0 1 calc(33.333% - 30px);
      margin: 15px;
      box-shadow: 0 11px 35px rgba(28, 30, 34, 0.07);
      background-color: #ffffff;
      overflow: hidden;
      -webkit-transition-property: all;
      -moz-transition-property: all;
      -o-transition-property: all;
      transition-property: all;
      -webkit-transition-duration: 0.3s;
      -moz-transition-duration: 0.3s;
      -o-transition-duration: 0.3s;
      transition-duration: 0.3s; }
      .block-services .items .item img {
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        -o-object-fit: cover;
        object-position: top;
        -webkit-transition-property: all;
        -moz-transition-property: all;
        -o-transition-property: all;
        transition-property: all;
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        -o-transition-duration: 0.3s;
        transition-duration: 0.3s; }
      .block-services .items .item .modal-content {
        display: none; }
      .block-services .items .item .text-block {
        position: absolute;
        z-index: 1;
        padding: 35px;
        bottom: -40px;
        left: 0;
        width: 100%;
        -webkit-transition-property: all;
        -moz-transition-property: all;
        -o-transition-property: all;
        transition-property: all;
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        -o-transition-duration: 0.3s;
        transition-duration: 0.3s; }
      .block-services .items .item .head {
        color: #1c1e22;
        font-size: 22px;
        font-weight: 700;
        -webkit-transition-property: all;
        -moz-transition-property: all;
        -o-transition-property: all;
        transition-property: all;
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        -o-transition-duration: 0.3s;
        transition-duration: 0.3s;
        line-height: 29px; }
      .block-services .items .item .text {
        color: #75777c;
        font-size: 16px;
        font-weight: 500;
        -webkit-transition-property: all;
        -moz-transition-property: all;
        -o-transition-property: all;
        transition-property: all;
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        -o-transition-duration: 0.3s;
        transition-duration: 0.3s;
        line-height: 24px; }
      .block-services .items .item .more {
        display: inline-block;
        padding: 6px 18px;
        color: #ffffff;
        font-size: 15px;
        font-weight: 500;
        border-radius: 18px;
        border: 1px solid #ffffff;
        opacity: 0;
        -webkit-transition-property: all;
        -moz-transition-property: all;
        -o-transition-property: all;
        transition-property: all;
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        -o-transition-duration: 0.3s;
        transition-duration: 0.3s; }
      .block-services .items .item:hover {
        background-color: #2dc4df; }
        .block-services .items .item:hover img {
          opacity: 0.4; }
        .block-services .items .item:hover .text-block {
          bottom: 0; }
        .block-services .items .item:hover .head, .block-services .items .item:hover .text {
          color: #fff; }
        .block-services .items .item:hover .more {
          opacity: 1;
          margin-top: 15px; }
          .block-services .items .item:hover .more:hover {
            background: #fff;
            color: #2dc4df; }
  @media (max-width: 1200px) {
    .block-services {
      margin: 40px 0 60px; }
      .block-services .items .item {
        width: calc(50% - 30px);
        -webkit-box-flex: 0 1 calc(50% - 30px);
        -moz-box-flex: 0 1 calc(50% - 30px);
        -webkit-flex: 0 1 calc(50% - 30px);
        -ms-flex: 0 1 calc(50% - 30px);
        flex: 0 1 calc(50% - 30px); } }
  @media (max-width: 991px) {
    .block-services {
      margin: 20px 0 60px; }
      .block-services .items .item .head {
        font-size: 20px;
        line-height: 27px; }
      .block-services .items .item .text-block {
        padding: 20px 30px; } }
  @media (max-width: 768px) {
    .block-services {
      margin: 20px 0 40px; }
      .block-services .items .item {
        width: calc(100% - 30px);
        -webkit-box-flex: 0 1 calc(100% - 30px);
        -moz-box-flex: 0 1 calc(100% - 30px);
        -webkit-flex: 0 1 calc(100% - 30px);
        -ms-flex: 0 1 calc(100% - 30px);
        flex: 0 1 calc(100% - 30px);
        height: auto; }
        .block-services .items .item img {
          opacity: 0.8; }
        .block-services .items .item .text-block {
          position: relative;
          bottom: 0; }
        .block-services .items .item .more {
          color: #6c6c6c;
          opacity: 1;
          border: 1px solid #6c6c6c;
          margin-top: 10px; }
        .block-services .items .item:hover {
          background-color: #ffffff; }
          .block-services .items .item:hover img {
            opacity: inherit; }
          .block-services .items .item:hover .head {
            color: #1c1e22; }
          .block-services .items .item:hover .text {
            color: #75777c; }
          .block-services .items .item:hover .more {
            margin-top: 10px; }
            .block-services .items .item:hover .more:hover {
              background: #2dc4df;
              color: #ffffff;
              border: 1px solid #2dc4df; } }
  @media (max-width: 500px) {
    .block-services .items .item .head {
      font-size: 18px; }
    .block-services .items .item .text {
      color: #4c4c4c; } }
  @media (max-width: 500px) {
    .block-services {
      margin: 20px 0 20px; }
      .block-services .items .item .text-block {
        padding: 20px; } }

.block-about {
  position: relative;
  display: block;
  width: 100%;
  background: url(../image/about.png) no-repeat center;
  background-size: cover;
  color: #fff;
  padding: 100px 0 85px; }
  .block-about h2 {
    margin: 0 0 30px; }
  .block-about blockquote {
    color: #ffffff;
    font-size: 21px;
    font-weight: 300;
    margin: 0 0 30px;
    padding: 0 0 0 25px;
    border-left: 10px solid #2dc4df; }
  .block-about .custom {
    font-size: 26px;
    font-weight: 600;
    margin-top: 40px; }
  .block-about .items1 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -20px; }
    .block-about .items1 .item {
      position: relative;
      width: calc(33.333% - 40px);
      -webkit-box-flex: 0 1 calc(33.333% - 40px);
      -moz-box-flex: 0 1 calc(33.333% - 40px);
      -webkit-flex: 0 1 calc(33.333% - 40px);
      -ms-flex: 0 1 calc(33.333% - 40px);
      flex: 0 1 calc(33.333% - 40px);
      margin: 20px; }
      .block-about .items1 .item .counter {
        color: #2dc4df;
        font-size: 76px;
        font-weight: 700; }
      .block-about .items1 .item .text {
        display: block;
        font-size: 16px;
        font-weight: 500;
        line-height: 27px; }
  .block-about .items2 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 40px -15px 0; }
    .block-about .items2 .item {
      position: relative;
      width: calc(20% - 30px);
      -webkit-box-flex: 0 1 calc(20% - 30px);
      -moz-box-flex: 0 1 calc(20% - 30px);
      -webkit-flex: 0 1 calc(20% - 30px);
      -ms-flex: 0 1 calc(20% - 30px);
      flex: 0 1 calc(20% - 30px);
      margin: 15px; }
      .block-about .items2 .item img {
        display: block;
        margin-bottom: 25px; }
      .block-about .items2 .item .text {
        display: block;
        font-size: 15px;
        font-weight: 500;
        line-height: 27px; }
  @media (max-width: 991px) {
    .block-about .custom {
      font-size: 23px; }
    .block-about blockquote {
      font-size: 18px; }
    .block-about .items1 .item {
      width: calc(50% - 40px);
      -webkit-box-flex: 1 1 calc(50% - 40px);
      -moz-box-flex: 1 1 calc(50% - 40px);
      -webkit-flex: 1 1 calc(50% - 40px);
      -ms-flex: 1 1 calc(50% - 40px);
      flex: 1 1 calc(50% - 40px); }
    .block-about .items2 .item {
      width: calc(33.333% - 30px);
      -webkit-box-flex: 1 1 calc(33.333% - 30px);
      -moz-box-flex: 1 1 calc(33.333% - 30px);
      -webkit-flex: 1 1 calc(33.333% - 30px);
      -ms-flex: 1 1 calc(33.333% - 30px);
      flex: 1 1 calc(33.333% - 30px); } }
  @media (max-width: 768px) {
    .block-about .custom {
      font-size: 20px; }
    .block-about blockquote {
      font-size: 16px; }
    .block-about .items1 {
      margin-bottom: 20px; }
      .block-about .items1 .item {
        width: calc(100% - 40px);
        -webkit-box-flex: 1 1 calc(100% - 40px);
        -moz-box-flex: 1 1 calc(100% - 40px);
        -webkit-flex: 1 1 calc(100% - 40px);
        -ms-flex: 1 1 calc(100% - 40px);
        flex: 1 1 calc(100% - 40px);
        margin-bottom: 0px;
        margin-top: 10px; }
    .block-about .items2 .item {
      width: calc(50% - 30px);
      -webkit-box-flex: 1 1 calc(50% - 30px);
      -moz-box-flex: 1 1 calc(50% - 30px);
      -webkit-flex: 1 1 calc(50% - 30px);
      -ms-flex: 1 1 calc(50% - 30px);
      flex: 1 1 calc(50% - 30px); } }
  @media (max-width: 500px) {
    .block-about .custom {
      font-size: 18px; }
    .block-about blockquote {
      font-size: 16px;
      border-left: 5px solid #2dc4df;
      padding-left: 15px; }
    .block-about .items1 {
      margin-bottom: 20px; }
      .block-about .items1 .item .counter {
        font-size: 50px; }
    .block-about .items2 {
      margin-top: 20px; }
      .block-about .items2 .item {
        width: calc(100% - 30px);
        -webkit-box-flex: 1 1 calc(100% - 30px);
        -moz-box-flex: 1 1 calc(100% - 30px);
        -webkit-flex: 1 1 calc(100% - 30px);
        -ms-flex: 1 1 calc(100% - 30px);
        flex: 1 1 calc(100% - 30px); }
        .block-about .items2 .item img {
          margin-bottom: 20px; }
        .block-about .items2 .item .text {
          font-size: 16px; } }

.block-know {
  position: relative;
  display: block;
  width: 100%;
  margin: 60px 0; }
  .block-know::before {
    position: absolute;
    width: 880px;
    height: 880px;
    right: -200px;
    top: -200px;
    background: url(../image/rad1.png) no-repeat center;
    background-size: contain;
    content: "";
    z-index: -1;
    -webkit-animation: rotate 45s ease-in-out infinite;
    animation: rotate 45s ease-in-out infinite; }
@-webkit-keyframes rotate {
  50% {
    -moz-transform: scale(0.5) rotate(180deg);
    -ms-transform: scale(0.5) rotate(180deg);
    -webkit-transform: scale(0.5) rotate(180deg);
    -o-transform: scale(0.5) rotate(180deg);
    transform: scale(0.5) rotate(180deg); }
  100% {
    -moz-transform: scale(1) rotate(360deg);
    -ms-transform: scale(1) rotate(360deg);
    -webkit-transform: scale(1) rotate(360deg);
    -o-transform: scale(1) rotate(360deg);
    transform: scale(1) rotate(360deg); } }
@keyframes rotate {
  50% {
    -moz-transform: scale(0.5) rotate(180deg);
    -ms-transform: scale(0.5) rotate(180deg);
    -webkit-transform: scale(0.5) rotate(180deg);
    -o-transform: scale(0.5) rotate(180deg);
    transform: scale(0.5) rotate(180deg); }
  100% {
    -moz-transform: scale(1) rotate(360deg);
    -ms-transform: scale(1) rotate(360deg);
    -webkit-transform: scale(1) rotate(360deg);
    -o-transform: scale(1) rotate(360deg);
    transform: scale(1) rotate(360deg); } }
  .block-know ul {
    padding: 0;
    margin: 50px 0;
    list-style-type: none;
    width: 70%;
    display: block; }
    .block-know ul li {
      position: relative;
      min-height: 92px;
      font-size: 18px;
      line-height: 28px;
      display: flex;
      align-items: center; }
      .block-know ul li div {
        position: relative;
        margin: 0;
        padding: 20px 0 20px 100px; }
        .block-know ul li div::before {
          position: absolute;
          width: 72px;
          height: 72px;
          background: url(../image/rad2.png) no-repeat center;
          background-size: contain;
          content: "";
          left: 0;
          top: 50%;
          -moz-transform: translate(0px, -50%);
          -ms-transform: translate(0px, -50%);
          -webkit-transform: translate(0px, -50%);
          -o-transform: translate(0px, -50%);
          transform: translate(0px, -50%); }
  .block-know blockquote {
    position: relative;
    margin-top: 60px;
    box-shadow: 0 20px 35px rgba(28, 30, 34, 0.27);
    background-color: #3b475b;
    padding: 40px;
    color: #E5E5E5;
    font-size: 18px;
    font-weight: 300;
    line-height: 31px;
    border: none; }
    .block-know blockquote::before {
      position: absolute;
      content: "";
      left: 20px;
      top: 20px;
      background-color: #3b475b;
      width: 100%;
      height: 100%;
      z-index: -1; }
    .block-know blockquote strong {
      color: #fff;
      font-size: 21px;
      display: block;
      margin-bottom: 15px; }
    .block-know blockquote a {
      color: #2ec4df;
      border-bottom: 1px dashed; }
  @media (max-width: 1200px) {
    .block-know {
      margin: 40px 0; }
      .block-know::before {
        width: 600px;
        height: 600px; }
      .block-know ul {
        width: 100%;
        margin-top: 30px; } }
  @media (max-width: 768px) {
    .block-know {
      margin: 0px 0 40px; }
      .block-know::before {
        width: 400px;
        height: 400px; }
      .block-know ul {
        width: 100%;
        margin-top: 20px;
        margin-bottom: 40px; }
      .block-know blockquote {
        margin-top: 40px;
        padding: 30px;
        font-size: 16px;
        line-height: 27px; }
        .block-know blockquote strong {
          font-size: 18px;
          margin-bottom: 10px; } }
  @media (max-width: 500px) {
    .block-know {
      margin: -20px 0 40px; }
      .block-know::before {
        width: 400px;
        height: 400px; }
      .block-know ul {
        width: 100%;
        margin-top: 20px;
        margin-bottom: 25px; }
        .block-know ul li {
          font-size: 16px;
          line-height: 27px;
          min-height: 70px; }
          .block-know ul li div {
            padding: 10px 0 15px 60px; }
            .block-know ul li div::before {
              width: 40px;
              height: 40px; }
      .block-know blockquote {
        margin-top: 25px;
        padding: 25px;
        font-size: 16px;
        line-height: 27px; }
        .block-know blockquote strong {
          font-size: 16px;
          margin-bottom: 10px; } }

.block-otzov {
  position: relative;
  display: block;
  width: 100%;
  margin: 80px 0; }
  .block-otzov h2.title {
    display: inline-block;
    margin: 0; }
  .block-otzov .all-otzov {
    cursor: pointer;
    float: right;
    display: inline-block;
    box-shadow: 0 11px 35px rgba(45, 196, 223, 0.27);
    border-radius: 30px;
    background-color: #2dc4df;
    color: #ffffff;
    font-size: 16px;
    font-weight: 500;
    padding: 15px 30px;
    -webkit-transition-property: all;
    -moz-transition-property: all;
    -o-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 0.3s;
    -moz-transition-duration: 0.3s;
    -o-transition-duration: 0.3s;
    transition-duration: 0.3s; }
    .block-otzov .all-otzov:hover {
      background: #03cc77; }
  .block-otzov .items {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 60px -15px; }
    .block-otzov .items .item {
      position: relative;
      width: calc(50% - 30px);
      -webkit-box-flex: 0 1 calc(50% - 30px);
      -moz-box-flex: 0 1 calc(50% - 30px);
      -webkit-flex: 0 1 calc(50% - 30px);
      -ms-flex: 0 1 calc(50% - 30px);
      flex: 0 1 calc(50% - 30px);
      margin: 15px;
      box-shadow: 0 11px 35px rgba(28, 30, 34, 0.07);
      background-color: #ffffff;
      padding: 45px 35px; }
    .block-otzov .items .hide-item {
      display: none; }
    .block-otzov .items .head {
      color: #242021;
      font-weight: 700;
      font-size: 18px;
      padding-left: 40px;
      line-height: 30px;
      position: relative; }
      .block-otzov .items .head::before {
        position: absolute;
        content: "";
        width: 26px;
        height: 30px;
        background: url(../image/person.png) no-repeat center;
        top: 50%;
        left: 0;
        -moz-transform: translate(0px, -50%);
        -ms-transform: translate(0px, -50%);
        -webkit-transform: translate(0px, -50%);
        -o-transform: translate(0px, -50%);
        transform: translate(0px, -50%); }
    .block-otzov .items .date {
      color: #8e8e8e;
      font-size: 18px;
      font-weight: 500;
      line-height: 30px;
      float: right; }
    .block-otzov .items .content {
      position: relative;
      margin-top: 30px;
      color: #75777c;
      font-style: italic;
      font-size: 16px;
      font-weight: 400;
      line-height: 27px; }
      .block-otzov .items .content .open-otzov {
        cursor: pointer;
        color: #2dc4df;
        -webkit-transition-property: all;
        -moz-transition-property: all;
        -o-transition-property: all;
        transition-property: all;
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        -o-transition-duration: 0.3s;
        transition-duration: 0.3s;
        border-bottom: 1px solid transparent; }
        .block-otzov .items .content .open-otzov:hover {
          color: #03cc77;
          border-bottom: 1px solid #03cc77; }
    .block-otzov .items .hide-content {
      display: none;
      position: relative;
      margin-top: 30px;
      color: #75777c;
      font-style: italic;
      font-size: 16px;
      font-weight: 400;
      line-height: 27px; }
      .block-otzov .items .hide-content .close-otzov {
        cursor: pointer;
        color: #2dc4df;
        -webkit-transition-property: all;
        -moz-transition-property: all;
        -o-transition-property: all;
        transition-property: all;
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        -o-transition-duration: 0.3s;
        transition-duration: 0.3s;
        border-bottom: 1px solid transparent; }
        .block-otzov .items .hide-content .close-otzov:hover {
          color: #03cc77;
          border-bottom: 1px solid #03cc77; }
  @media (max-width: 991px) {
    .block-otzov {
      margin: 60px 0 0px; }
      .block-otzov .all-otzov {
        padding: 14px 30px; }
      .block-otzov .items {
        margin: 45px -15px; }
        .block-otzov .items .item {
          width: calc(100% - 30px);
          -webkit-box-flex: 0 1 calc(100% - 30px);
          -moz-box-flex: 0 1 calc(100% - 30px);
          -webkit-flex: 0 1 calc(100% - 30px);
          -ms-flex: 0 1 calc(100% - 30px);
          flex: 0 1 calc(100% - 30px); } }
  @media (max-width: 768px) {
    .block-otzov {
      margin: 60px 0 0px; }
      .block-otzov h2.title {
        display: block;
        text-align: center; }
      .block-otzov .all-otzov {
        float: unset;
        text-align: center;
        width: 220px;
        display: block;
        padding: 14px 30px;
        margin: 15px auto 0; }
      .block-otzov .items {
        margin: 25px -15px; }
        .block-otzov .items .item {
          width: calc(100% - 30px);
          -webkit-box-flex: 0 1 calc(100% - 30px);
          -moz-box-flex: 0 1 calc(100% - 30px);
          -webkit-flex: 0 1 calc(100% - 30px);
          -ms-flex: 0 1 calc(100% - 30px);
          flex: 0 1 calc(100% - 30px); } }
  @media (max-width: 500px) {
    .block-otzov {
      margin: 50px 0 0px; }
      .block-otzov .items .item {
        padding: 30px 25px; }
        .block-otzov .items .item .head {
          display: block;
          margin-top: 10px; }
        .block-otzov .items .item .date {
          position: absolute;
          right: 10px;
          top: 10px;
          font-size: 16px;
          float: unset;
          display: block; }
        .block-otzov .items .item .content, .block-otzov .items .item .hide-content {
          margin-top: 20px; } }

.block-callback {
  position: relative;
  display: block;
  width: 100%; }
  .block-callback .container {
    padding: 150px 15px 100px;
    border-bottom: 1px solid #565659; }
  .block-callback .left {
    display: inline-block;
    width: 45%; }
    .block-callback .left .head {
      color: #ffffff;
      font-size: 42px;
      font-weight: 700;
      line-height: 48px;
      margin: 0; }
    .block-callback .left .text {
      color: #ffffff;
      font-size: 42px;
      font-weight: 500;
      line-height: 48px;
      margin: 0; }
  .block-callback .right {
    float: right;
    width: 50%;
    font-size: 0px;
    display: inline-block; }
    .block-callback .right input {
      display: inline-block;
      position: relative;
      border: none;
      outline: none;
      width: calc(50% - 8px);
      font-size: 16px;
      font-weight: 500;
      vertical-align: middle; }
    .block-callback .right input[type="text"] {
      margin-right: 16px; }
    .block-callback .right input[type="text"], .block-callback .right input[type="tel"] {
      margin-bottom: 15px;
      box-shadow: 0 11px 35px rgba(45, 196, 223, 0.27);
      border-radius: 30px;
      background-color: #ffffff;
      padding: 15px 30px; }
    .block-callback .right input[type="submit"] {
      margin-right: 16px;
      box-shadow: 0 11px 35px rgba(45, 196, 223, 0.27);
      border-radius: 30px;
      background-color: #2dc4df;
      color: #ffffff;
      padding: 15px 30px;
      -webkit-transition-property: all;
      -moz-transition-property: all;
      -o-transition-property: all;
      transition-property: all;
      -webkit-transition-duration: 0.3s;
      -moz-transition-duration: 0.3s;
      -o-transition-duration: 0.3s;
      transition-duration: 0.3s; }
      .block-callback .right input[type="submit"]:hover {
        background: #03cc77; }
    .block-callback .right label {
      position: relative;
      display: inline-block;
      width: calc(50% - 8px);
      color: #bebebe;
      font-size: 14px;
      font-weight: 500;
      vertical-align: middle;
      line-height: 24px; }
      .block-callback .right label a {
        color: #2dc4df;
        border-bottom: 1px solid; }
  @media (max-width: 1200px) {
    .block-callback .container {
      padding: 135px 15px 85px; }
    .block-callback .left {
      padding-top: 20px;
      width: 40%; }
      .block-callback .left .head {
        font-size: 36px;
        line-height: 42px; }
      .block-callback .left .text {
        font-size: 30px;
        line-height: 40px; }
    .block-callback .right {
      width: 57%; }
      .block-callback .right label {
        font-size: 13px; } }
  @media (max-width: 991px) {
    .block-callback .container {
      padding: 105px 15px 65px; }
    .block-callback .left {
      text-align: center;
      padding-top: 0px;
      width: 100%;
      margin-bottom: 40px; }
      .block-callback .left .head {
        font-size: 36px;
        line-height: 42px; }
      .block-callback .left .text {
        font-size: 30px;
        line-height: 40px; }
    .block-callback .right {
      width: 100%; }
      .block-callback .right label {
        font-size: 14px; } }
  @media (max-width: 687px) {
    .block-callback .container {
      padding: 105px 15px 45px; }
    .block-callback .left {
      text-align: center;
      padding-top: 0px;
      width: 100%;
      margin-bottom: 30px; }
      .block-callback .left .head {
        font-size: 30px;
        line-height: 38px; }
      .block-callback .left .text {
        font-size: 22px;
        line-height: 30px; }
    .block-callback .right {
      width: 100%; }
      .block-callback .right label {
        font-size: 14px;
        text-align: center;
        margin-top: 15px; }
      .block-callback .right input, .block-callback .right label {
        width: 100% !important;
        margin-right: 0 !important; } }
  @media (max-width: 380px) {
    .block-callback .container {
      padding: 85px 15px 45px; }
    .block-callback .left {
      text-align: center;
      padding-top: 0px;
      width: 100%;
      margin-bottom: 30px; }
      .block-callback .left .head {
        font-size: 24px;
        line-height: 34px; }
      .block-callback .left .text {
        font-size: 18px;
        line-height: 27px; } }

footer {
  position: relative;
  display: block;
  width: 100%;
  background-color: #333333;
  z-index: 1;
  padding-bottom: 140px; }
  footer::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: url(../image/footer.png) no-repeat bottom;
    background-size: cover;
    content: "";
    opacity: 0.07;
    pointer-events: none; }
  footer::before {
    content: '';
    position: absolute;
    top: 0%;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 60px 100vw;
    border-color: transparent transparent transparent #fff; }
  footer .top {
    position: relative;
    margin: 80px 0 40px;
    height: 68px;
    width: 100%; }
    footer .top .logo {
      position: absolute;
      left: 15px;
      top: 50%;
      -moz-transform: translate(0px, -50%);
      -ms-transform: translate(0px, -50%);
      -webkit-transform: translate(0px, -50%);
      -o-transform: translate(0px, -50%);
      transform: translate(0px, -50%);
      max-height: 100%;
      height: 68px;
      width: 233px; }
      footer .top .logo img {
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        object-fit: contain;
        -o-object-fit: contain; }
    footer .top .socials {
      position: absolute;
      top: 50%;
      -moz-transform: translate(0px, -50%);
      -ms-transform: translate(0px, -50%);
      -webkit-transform: translate(0px, -50%);
      -o-transform: translate(0px, -50%);
      transform: translate(0px, -50%);
      right: 500px; }
      footer .top .socials a {
        color: #fff;
        font-size: 28px;
        margin-left: 30px;
        -webkit-transition-property: all;
        -moz-transition-property: all;
        -o-transition-property: all;
        transition-property: all;
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        -o-transition-duration: 0.3s;
        transition-duration: 0.3s; }
        footer .top .socials a:hover {
          color: #2dc4df; }
    footer .top .emails {
      position: absolute;
      top: 50%;
      -moz-transform: translate(0px, -50%);
      -ms-transform: translate(0px, -50%);
      -webkit-transform: translate(0px, -50%);
      -o-transform: translate(0px, -50%);
      transform: translate(0px, -50%);
      right: 250px; }
      footer .top .emails a {
        position: relative;
        display: block;
        color: #ffffff;
        font-size: 16px;
        font-weight: 300; }
        footer .top .emails a i {
          font-size: 20px;
          margin-right: 10px; }
    footer .top .phones {
      position: absolute;
      top: 50%;
      -moz-transform: translate(0px, -50%);
      -ms-transform: translate(0px, -50%);
      -webkit-transform: translate(0px, -50%);
      -o-transform: translate(0px, -50%);
      transform: translate(0px, -50%);
      right: 15px;
      text-align: right; }
      footer .top .phones .phone {
        position: relative;
        display: block;
        color: #ffffff;
        font-size: 18px;
        font-weight: 300;
        padding-left: 30px; }
        footer .top .phones .phone strong {
          font-weight: 600; }
        footer .top .phones .phone::before {
          position: absolute;
          width: 20px;
          height: 21px;
          background: url(../image/phone.png) no-repeat center;
          background-size: contain;
          content: "";
          display: block;
          left: 0px;
          top: 50%;
          -moz-transform: translate(0px, -50%);
          -ms-transform: translate(0px, -50%);
          -webkit-transform: translate(0px, -50%);
          -o-transform: translate(0px, -50%);
          transform: translate(0px, -50%); }
      footer .top .phones .callback {
        color: #2dc4df;
        font-size: 16px;
        font-weight: 500;
        -webkit-transition-property: all;
        -moz-transition-property: all;
        -o-transition-property: all;
        transition-property: all;
        -webkit-transition-duration: 0.3s;
        -moz-transition-duration: 0.3s;
        -o-transition-duration: 0.3s;
        transition-duration: 0.3s;
        border-bottom: 1px solid transparent; }
        footer .top .phones .callback:hover {
          color: #03cc77;
          border-bottom: 1px solid #03cc77; }
  footer .bottom {
    position: relative;
    display: block;
    width: 100%;
    font-size: 0; }
    footer .bottom .item {
      width: 245px;
      position: relative;
      display: inline-block;
      vertical-align: top;
      margin-right: 60px; }
      footer .bottom .item:last-of-type {
        margin-right: 0; }
      footer .bottom .item .adres {
        display: block;
        color: #ffffff;
        font-size: 16px;
        font-weight: 500;
        line-height: 27px; }
      footer .bottom .item a {
        display: block;
        color: #ccc;
        font-size: 26px;
        font-weight: 500;
        margin-top: 10px; }
        footer .bottom .item a strong {
          color: #ffffff;
          font-weight: 600; }
    footer .bottom .copyright {
      float: right;
      text-align: right;
      width: 47%; }
      footer .bottom .copyright .text {
        color: #8e9198;
        font-size: 16px;
        font-weight: 300;
        margin-bottom: 20px; }
      footer .bottom .copyright a {
        display: inline-block;
        margin-left: 20px;
        color: #8e9198;
        font-size: 16px;
        font-weight: 300; }
  @media (max-width: 1200px) {
    footer .bottom .item {
      width: 50%;
      margin-right: 0; }
      footer .bottom .item:nth-of-type(2) {
        padding-left: 30px; }
      footer .bottom .item:nth-of-type(1) {
        padding-right: 30px; }
    footer .bottom .copyright {
      width: 100%;
      text-align: center;
      margin-top: 50px; } }
  @media (max-width: 991px) {
    footer .top {
      margin: 50px 0 70px; }
      footer .top .socials {
        top: 130%;
        right: 15px; }
    footer .bottom .item {
      width: 50%;
      margin-right: 0; }
      footer .bottom .item:nth-of-type(2) {
        padding-left: 30px; }
      footer .bottom .item:nth-of-type(1) {
        padding-right: 30px; }
    footer .bottom .copyright {
      width: 100%;
      text-align: center;
      margin-top: 50px; } }
  @media (max-width: 768px) {
    footer .top {
      margin: 40px 0 40px;
      height: auto; }
      footer .top .logo {
        position: relative;
        display: block;
        margin: 0 auto 30px;
        top: unset;
        -moz-transform: none;
        -ms-transform: none;
        -webkit-transform: none;
        -o-transform: none;
        transform: none;
        left: unset; }
      footer .top .emails {
        position: relative;
        display: block;
        margin: 0 auto 30px;
        top: unset;
        -moz-transform: none;
        -ms-transform: none;
        -webkit-transform: none;
        -o-transform: none;
        transform: none;
        right: unset;
        text-align: center; }
        footer .top .emails a {
          display: inline-block; }
      footer .top .phones {
        position: relative;
        display: block;
        margin: 0 auto 30px;
        top: unset;
        -moz-transform: none;
        -ms-transform: none;
        -webkit-transform: none;
        -o-transform: none;
        transform: none;
        right: unset;
        text-align: center; }
        footer .top .phones .phone {
          display: inline-block; }
        footer .top .phones .callback {
          display: block;
          width: 140px;
          text-align: center;
          margin: 24px auto 0px;
          width: 200px;
          background: #2dc4df;
          padding: 11px 15px;
          color: #fff;
          border-radius: 6px; }
          footer .top .phones .callback:hover {
            color: #fff;
            background: #03cc77; }
      footer .top .socials {
        position: relative;
        display: block;
        margin: 0 auto 30px;
        top: unset;
        -moz-transform: none;
        -ms-transform: none;
        -webkit-transform: none;
        -o-transform: none;
        transform: none;
        right: unset;
        text-align: center; }
        footer .top .socials a {
          margin: 0 20px; } }
  @media (max-width: 687px) {
    footer .bottom .item {
      width: 100%;
      padding: 0 !important;
      margin-bottom: 30px;
      text-align: center; }
    footer .bottom .copyright {
      margin-top: 20px; } }
