@charset "UTF-8";
@font-face {
  font-family: 'Geometria';
  src: url("../fonts/Geometria-Bold.eot?");
  src: url("../fonts/Geometria-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Geometria-Bold.woff?") format("woff"), url("../fonts/Geometria-Bold.ttf?") format("truetype");
  font-weight: 700;
  font-style: normal; }
@font-face {
  font-family: 'Roboto';
  src: url("../fonts/Roboto-Bold.eot");
  src: local("тШ║"), url("../fonts/Roboto-Bold.woff") format("woff"), url("../fonts/Roboto-Bold.ttf") format("truetype"), url("../fonts/Roboto-Bold.svg") format("svg");
  font-weight: 700;
  font-style: normal; }
@font-face {
  font-family: 'Roboto';
  src: url("../fonts/Roboto-Regular.eot");
  src: local("тШ║"), url("../fonts/Roboto-Regular.woff") format("woff"), url("../fonts/Roboto-Regular.ttf") format("truetype"), url("../fonts/Roboto-Regular.svg") format("svg");
  font-weight: 400;
  font-style: normal; }
form {
  margin: 0;
  padding: 0; }

input[type=text],
input[type=tel],
input[type=email],
input[type=password],
input[type=submit],
button[type=submit],
textarea {
  padding: 0 16px;
  margin: 0;
  width: 100%;
  border: none;
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  line-height: 1.3;
  font-style: normal;
  font-weight: 400;
  color: #00093e;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

input[type=text],
input[type=tel],
input[type=email],
input[type=password] {
  padding: 0 25px;
  line-height: 58px;
  height: 60px;
  border: 1px solid #e8eef5;
  background: #e8eef5; }
  @media all and (max-width: 768px) {
    input[type=text],
    input[type=tel],
    input[type=email],
    input[type=password] {
      padding-left: 60px;
      font-size: 14px;
      line-height: 32px;
      height: 34px;
      color: #666666;
      border: 1px solid #d8d8d8;
      background: #ffffff; } }

input[type=checkbox] {
  position: absolute;
  left: -9999px; }
  input[type=checkbox] + label {
    display: block;
    padding: 0 0 0 20px;
    position: relative;
    font-size: 14px;
    line-height: 16px;
    color: #0056a4;
    cursor: pointer; }
    input[type=checkbox] + label:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: 16px;
      height: 16px;
      background: #0056a4;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      -moz-border-radius: 2px;
      -webkit-border-radius: 2px;
      border-radius: 2px; }
    input[type=checkbox] + label:after {
      content: '';
      position: absolute;
      top: 1px;
      left: 1px;
      display: block;
      width: 14px;
      height: 14px;
      background: #ffffff;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      -moz-border-radius: 1px;
      -webkit-border-radius: 1px;
      border-radius: 1px; }
  input[type=checkbox]:checked + label:after {
    background: #ffffff url("../images/icons/checked.png") 50% 50% no-repeat; }
  @media all and (max-width: 768px) {
    input[type=checkbox] + label {
      padding: 0 0 0 20px;
      font-size: 12px;
      line-height: 14px;
      color: #cbcbcb; }
      input[type=checkbox] + label:before {
        width: 14px;
        height: 14px;
        background: #b7b7b7; }
      input[type=checkbox] + label:after {
        width: 12px;
        height: 12px; }
    input[type=checkbox]:checked + label:after {
      background-size: 12px 10px; } }

.dialog-window {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  z-index: 99999; }
  .dialog-window > div {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 480px;
    font-size: 15px;
    background: #ffffff;
    overflow: hidden; }
    .dialog-window > div .title {
      white-space: nowrap;
      background: #424242;
      color: #ffffff;
      padding: 10px;
      text-align: center; }
    .dialog-window > div .message {
      padding: 40px 20px; }
    .dialog-window > div .buttons {
      display: none;
      padding: 0 0 20px 0;
      text-align: center; }
      .dialog-window > div .buttons a {
        display: none;
        height: 55px;
        padding: 0 40px;
        margin: 0 10px;
        text-align: center;
        line-height: 55px;
        font-size: 14px;
        cursor: pointer;
        color: #000000;
        outline: none;
        border: 1px solid #e7e7e7;
        text-decoration: none;
        -webkit-transition: background-color 0.2s ease-in-out;
        -o-transition: background-color 0.2s ease-in-out;
        transition: background-color 0.2s ease-in-out;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
        .dialog-window > div .buttons a.no {
          background: #ffffff;
          color: #000000; }

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer,
header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

html {
  height: 100%; }

body {
  height: 100%;
  font-family: 'Roboto', sans-serif;
  font-size: 18px;
  line-height: 1.3;
  font-style: normal;
  font-weight: 400;
  color: #0957a0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: url("../images/bg/white.jpg") 50% 500px no-repeat; }
  @media all and (max-width: 768px) {
    body {
      background: #ffffff; } }

a {
  color: #25377c;
  text-decoration: none; }

.header {
  height: 132px;
  background: url("../images/bg/header.png") 50% 0 no-repeat; }
  .header > div {
    max-width: 1170px;
    padding: 0 15px;
    margin: 0 auto; }
    @media all and (max-width: 768px) {
      .header > div {
        padding: 0 20px; } }
    .header > div:after {
      content: '';
      display: block;
      clear: both; }
  .header .logo {
    float: left;
    width: 342px;
    height: 90px;
    margin: 21px 0 0 -10px;
    background: url("../images/logo.png") 0 0 no-repeat;
    background-size: contain; }
    .header .logo a {
      display: block;
      width: 100%;
      height: 100%; }
  .header .phone {
    float: right;
    margin: 33px 0 0 0;
    padding: 0 0 0 60px;
    background: url("../images/icons/phone.png") 0 2px no-repeat; }
    .header .phone > div {
      margin: 0 0 8px 0; }
      .header .phone > div a {
        font-family: Geometria, sans-serif;
        font-size: 32px;
        line-height: 1;
        font-weight: 700;
        color: #25377c; }
    .header .phone > a {
      font-size: 20px;
      line-height: 1;
      color: #25377c;
      border-bottom: 1px solid #25377c; }
  @media all and (max-width: 768px) {
    .header {
      height: 64px; }
      .header .logo {
        margin: 17px 0 0 0;
        width: 115px;
        height: 30px; }
      .header .phone {
        margin: 17px 0 0 0;
        padding: 0;
        line-height: 0;
        text-align: right;
        background: transparent; }
        .header .phone > div {
          margin: 0 0 3px 0; }
          .header .phone > div a {
            font-size: 15px;
            line-height: 1; }
        .header .phone > a {
          font-size: 12px;
          line-height: 1; } }

.top-banner {
  height: 703px;
  background: url("../images/bg/top-form.png") 50% 0 no-repeat; }
  .top-banner > div {
    max-width: 1170px;
    padding: 0 15px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 100px;
    height: 100%; }
    @media all and (max-width: 768px) {
      .top-banner > div {
        padding: 0 20px; } }
    .top-banner > div .top-title {
      padding-bottom: 60px;
      width: 50%; }
      .top-banner > div .top-title h1 {
        margin: 0 0 70px 0;
        font-size: 46px;
        line-height: 1.3;
        font-weight: 400;
        color: #ffffff; }
        .top-banner > div .top-title h1 span {
          font-weight: 700; }
      .top-banner > div .top-title h2 {
        position: relative;
        padding: 0 0 0 20px;
        max-width: 450px;
        font-size: 25px;
        line-height: 1.3;
        font-weight: 400;
        text-transform: uppercase;
        color: #18a3dd; }
        .top-banner > div .top-title h2:after {
          content: '';
          position: absolute;
          left: 0;
          top: 6px;
          bottom: 6px;
          display: block;
          width: 5px;
          background: #18a3dd;
          -moz-border-radius: 3px;
          -webkit-border-radius: 3px;
          border-radius: 3px; }
        .top-banner > div .top-title h2 span {
          font-weight: 700; }
    .top-banner > div .top-form {
      padding: 40px;
      width: 45%;
      border: 2px solid #6990bc;
      -moz-border-radius: 2px;
      -webkit-border-radius: 2px;
      border-radius: 2px; }
      .top-banner > div .top-form svg {
        display: none; }
      .top-banner > div .top-form h2 {
        margin: 0 0 20px 0;
        font-size: 35px;
        line-height: 1;
        font-weight: 700;
        color: #ffffff;
        text-transform: uppercase;
        text-align: center; }
        .top-banner > div .top-form h2 span {
          font-weight: 700; }
      .top-banner > div .top-form .message {
        margin: 0 0 30px 0;
        color: #ffffff;
        text-align: center; }
      .top-banner > div .top-form .form.process {
        position: relative;
        opacity: 0.8; }
        .top-banner > div .top-form .form.process:after {
          content: '';
          display: block;
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          background: url("../images/loading.gif") 50% 50% no-repeat; }
      .top-banner > div .top-form .form .fields {
        overflow: hidden; }
        .top-banner > div .top-form .form .fields .name,
        .top-banner > div .top-form .form .fields .phone,
        .top-banner > div .top-form .form .fields .email {
          margin: 0 0 10px 0; }
          .top-banner > div .top-form .form .fields .name input.error,
          .top-banner > div .top-form .form .fields .phone input.error,
          .top-banner > div .top-form .form .fields .email input.error {
            border: 1px solid #d80022; }
        .top-banner > div .top-form .form .fields .button a {
          display: block;
          min-height: 65px;
          padding: 20px 0;
          font-size: 18px;
          line-height: 25px;
          font-weight: 700;
          color: #ffffff;
          text-align: center;
          text-transform: uppercase;
          background: #d9086a; }
          @media all and (max-width: 768px) {
            .top-banner > div .top-form .form .fields .button a {
              padding: 11px 0;
              min-height: 46px;
              font-size: 14px;
              color: #d9086a;
              border: 2px solid #d9086a;
              background: #ffffff;
              text-transform: none;
              -moz-border-radius: 2px;
              -webkit-border-radius: 2px;
              border-radius: 2px; } }
      .top-banner > div .top-form .form .checkbox {
        margin: 25px 0 0 0; }
        .top-banner > div .top-form .form .checkbox input[type=checkbox] + label {
          color: #ffffff; }
          .top-banner > div .top-form .form .checkbox input[type=checkbox] + label:before {
            background: #b7b7b7; }
        .top-banner > div .top-form .form .checkbox.error input[type=checkbox] + label {
          color: #d80022; }
          .top-banner > div .top-form .form .checkbox.error input[type=checkbox] + label:before {
            background: #d80022; }
  @media all and (max-width: 768px) {
    .top-banner {
      height: auto;
      background: #f2f0f0; }
      .top-banner > div {
        display: block;
        padding: 0; }
        .top-banner > div .top-title {
          position: relative;
          padding: 40px 20px 110px 20px;
          width: 100%;
          background: #044080 url("../images/bg/mobile/top.png") 100% 0 no-repeat; }
          .top-banner > div .top-title h1 {
            margin: 0 0 40px 0;
            font-size: 23px; }
          .top-banner > div .top-title h2 {
            padding: 0 0 0 15px;
            font-size: 18px;
            text-transform: none; }
            .top-banner > div .top-title h2:after {
              width: 2px; }
        .top-banner > div .top-form {
          position: relative;
          padding: 0 20px 20px 20px;
          width: 100%;
          border: none; }
          .top-banner > div .top-form svg.top {
            display: block;
            position: absolute;
            top: -55px;
            left: 0;
            right: 0;
            width: 100%; }
          .top-banner > div .top-form svg.bottom {
            display: block;
            position: absolute;
            bottom: -55px;
            left: 0;
            right: 0;
            width: 100%; }
          .top-banner > div .top-form h2 {
            font-size: 20px;
            color: #25377c;
            text-align: left; }
          .top-banner > div .top-form .message {
            font-size: 16px;
            color: #1a569b;
            text-align: left; }
          .top-banner > div .top-form .form .fields .name,
          .top-banner > div .top-form .form .fields .phone,
          .top-banner > div .top-form .form .fields .email {
            margin: 0 0 15px 0; }
          .top-banner > div .top-form .form .fields input[name=name] {
            background: #ffffff url("../images/icons/form/name.png") 30px 50% no-repeat; }
          .top-banner > div .top-form .form .fields input[name=phone] {
            background: #ffffff url("../images/icons/form/phone.png") 30px 50% no-repeat; }
          .top-banner > div .top-form .form .fields input[name=email] {
            background: #ffffff url("../images/icons/form/email.png") 30px 50% no-repeat; }
          .top-banner > div .top-form .form .checkbox {
            margin-top: 20px; }
            .top-banner > div .top-form .form .checkbox input[type="checkbox"] + label {
              color: #c4c4c4; } }

.who {
  max-width: 1170px;
  padding: 0 15px;
  margin: 0 auto;
  margin-bottom: 125px; }
  @media all and (max-width: 768px) {
    .who {
      padding: 0 20px; } }
  .who h2 {
    margin: 0 0 80px 0;
    padding: 0;
    text-align: center;
    font-size: 35px;
    font-weight: 700;
    color: #0056a4; }
  .who .about {
    margin: 0 0 110px; }
    .who .about:after {
      content: '';
      display: block;
      clear: both; }
    .who .about > div {
      position: relative;
      float: left;
      width: 25%;
      padding: 115px 15px 45px 15px;
      font-weight: 700;
      text-align: center; }
      .who .about > div:before {
        content: '';
        display: block;
        width: 82px;
        height: 90px;
        position: absolute;
        top: 0;
        left: 50%;
        margin: 0 0 0 -41px; }
      .who .about > div:nth-child(1):before {
        background: url("../images/icons/about/1.png") 0 0 no-repeat; }
      .who .about > div:nth-child(2):before {
        background: url("../images/icons/about/2.png") 0 0 no-repeat; }
      .who .about > div:nth-child(3):before {
        background: url("../images/icons/about/3.png") 0 0 no-repeat; }
      .who .about > div:nth-child(4):before {
        background: url("../images/icons/about/4.png") 0 0 no-repeat; }
      .who .about > div:after {
        content: '';
        display: block;
        width: 70px;
        height: 2px;
        position: absolute;
        bottom: 0;
        left: 50%;
        margin: 0 0 0 -35px;
        background: #16569b; }
  @media all and (max-width: 768px) {
    .who {
      margin-bottom: 25px;
      padding-top: 50px; }
      .who h2 {
        margin: 0 0 20px 0;
        text-align: left;
        font-size: 20px;
        color: #25377c; }
      .who .about {
        margin-bottom: 45px; }
        .who .about > div {
          display: flex;
          align-items: center;
          float: none;
          width: 100%;
          min-height: 55px;
          padding: 0 0 13px 60px;
          margin: 11px 0 0 0;
          text-align: left;
          font-size: 15px;
          font-weight: 400;
          background: url("../images/dots.png") 0 100% repeat-x; }
          .who .about > div:first-child {
            margin-top: 0; }
          .who .about > div:last-child {
            padding-bottom: 0;
            background: transparent; }
          .who .about > div:before {
            left: 0;
            margin: 0;
            width: 38px;
            height: 41px;
            background-size: contain !important; }
          .who .about > div:after {
            display: none; } }
  .who .services {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row; }
    .who .services > div {
      position: relative;
      width: 32%;
      margin: 0 0 0 2%;
      padding: 45px 25px 15px 25px;
      text-align: center; }
      .who .services > div:before {
        content: '';
        display: block;
        width: 94px;
        height: 94px;
        position: absolute;
        top: -60px;
        left: 50%;
        margin: 0 0 0 -47px;
        background: #ffffff no-repeat;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        border-radius: 50%; }
      .who .services > div:nth-child(1) {
        margin-left: 0;
        border-top: 15px solid #1c8bc7;
        border-right: 1px solid #1c8bc7;
        border-bottom: 1px solid #1c8bc7;
        border-left: 1px solid #1c8bc7; }
        .who .services > div:nth-child(1):before {
          background-image: url("../images/icons/services/1.png");
          background-position: 50% 50%; }
      .who .services > div:nth-child(2) {
        border-top: 15px solid #16569b;
        border-right: 1px solid #16569b;
        border-bottom: 1px solid #16569b;
        border-left: 1px solid #16569b; }
        .who .services > div:nth-child(2):before {
          background-image: url("../images/icons/services/2.png");
          background-position: 23px 21px; }
      .who .services > div:nth-child(3) {
        border-top: 15px solid #25377c;
        border-right: 1px solid #25377c;
        border-bottom: 1px solid #25377c;
        border-left: 1px solid #25377c; }
        .who .services > div:nth-child(3):before {
          background-image: url("../images/icons/services/3.png");
          background-position: 50% 19px; }
      .who .services > div h3 {
        position: relative;
        margin: 0 0 25px 0;
        padding: 0 0 15px 0;
        font-size: 25px;
        font-weight: 400;
        text-transform: uppercase; }
        .who .services > div h3:before {
          content: '';
          display: block;
          width: 50px;
          height: 1px;
          position: absolute;
          bottom: 0;
          left: 50%;
          margin: 0 0 0 -25px;
          background: #cccccc; }
      .who .services > div > div {
        position: relative;
        padding: 20px 0; }
        .who .services > div > div:after {
          content: '';
          display: block;
          width: 100%;
          height: 2px;
          position: absolute;
          bottom: 0;
          left: 0;
          background: url("../images/dots.png") 0 100% repeat-x; }
        .who .services > div > div:last-child:after {
          display: none; }
  @media all and (max-width: 768px) {
    .who .services {
      display: block;
      flex-wrap: unset;
      flex-direction: unset; }
      .who .services > div {
        margin: 0 0 30px 0;
        padding: 25px 10px 10px 10px;
        width: 100%;
        background: #f3f0f0; }
        .who .services > div:before {
          margin-left: -22px;
          width: 44px;
          height: 44px;
          top: -28px;
          background-size: 30px; }
        .who .services > div:last-child {
          margin-bottom: 0; }
        .who .services > div:nth-child(1) {
          border-top: 10px solid #1c8bc7;
          border-right: none;
          border-bottom: none;
          border-left: none; }
        .who .services > div:nth-child(2) {
          border-top: 10px solid #16569b;
          border-right: none;
          border-bottom: none;
          border-left: none; }
          .who .services > div:nth-child(2):before {
            background-position: 10px 10px; }
        .who .services > div:nth-child(3) {
          border-top: 10px solid #25377c;
          border-right: none;
          border-bottom: none;
          border-left: none; }
          .who .services > div:nth-child(3):before {
            background-position: 50% 10px; }
        .who .services > div h3 {
          padding-bottom: 15px;
          margin-bottom: 5px; }
        .who .services > div > div {
          padding: 9px 0;
          font-size: 16px; } }

.callback {
  margin: 0 0 60px 0;
  padding: 50px 0 0 0;
  height: 432px;
  background: url("../images/bg/callback.png") 50% 0 no-repeat; }
  .callback svg {
    display: none; }
  .callback > div {
    max-width: 1170px;
    padding: 0 15px;
    margin: 0 auto; }
    @media all and (max-width: 768px) {
      .callback > div {
        padding: 0 20px; } }
    .callback > div h2 {
      margin: 0 0 30px 0;
      font-size: 55px;
      line-height: 1;
      font-weight: 400;
      text-align: center;
      color: #ffffff; }
      .callback > div h2 span {
        font-weight: 700; }
    .callback > div .message {
      margin: 0 0 50px 0;
      font-size: 30px;
      text-align: center;
      color: #ffffff; }
    .callback > div .form {
      overflow: hidden; }
      .callback > div .form.process {
        position: relative;
        opacity: 0.8; }
        .callback > div .form.process:after {
          content: '';
          display: block;
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          background: url("../images/loading.gif") 50% 50% no-repeat; }
      .callback > div .form .fields {
        overflow: hidden; }
        .callback > div .form .fields input[type=text],
        .callback > div .form .fields input[type=tel] {
          font-style: italic;
          background: #ffffff;
          border: 1px solid #ffffff; }
        .callback > div .form .fields .name {
          float: left;
          width: 31%;
          margin: 0 3.5% 0 0; }
          .callback > div .form .fields .name.error {
            border: 1px solid #d80022; }
        .callback > div .form .fields .phone {
          float: left;
          width: 31%; }
          .callback > div .form .fields .phone.error {
            border: 1px solid #d80022; }
        .callback > div .form .fields .button {
          float: right;
          width: 31%; }
          .callback > div .form .fields .button a {
            display: block;
            min-height: 60px;
            padding: 20px 0;
            font-size: 18px;
            line-height: 20px;
            font-weight: 700;
            color: #ffffff;
            text-align: center;
            text-transform: uppercase;
            background: #d9086a;
            -moz-border-radius: 3px;
            -webkit-border-radius: 3px;
            border-radius: 3px;
            -moz-border-radius: 0;
            -webkit-border-radius: 0;
            border-radius: 0; }
            @media all and (max-width: 768px) {
              .callback > div .form .fields .button a {
                padding: 11px 0;
                min-height: 46px;
                font-size: 14px;
                color: #d9086a;
                border: 2px solid #d9086a;
                background: #ffffff;
                text-transform: none;
                -moz-border-radius: 2px;
                -webkit-border-radius: 2px;
                border-radius: 2px; } }
      .callback > div .form .checkbox {
        float: right;
        width: 31%;
        margin: 25px 0 0 0; }
        .callback > div .form .checkbox input[type=checkbox] + label {
          color: #ffffff; }
          .callback > div .form .checkbox input[type=checkbox] + label:before {
            background: #b7b7b7; }
        .callback > div .form .checkbox.error input[type=checkbox] + label {
          color: #d80022; }
          .callback > div .form .checkbox.error input[type=checkbox] + label:before {
            background: #d80022; }
  @media all and (max-width: 768px) {
    .callback {
      position: relative;
      padding: 30px 0 50px 0;
      margin-bottom: 0;
      height: auto;
      background: #0e438d; }
      .callback svg {
        display: block;
        width: 100%;
        position: absolute;
        bottom: -20px;
        left: 0;
        right: 0; }
      .callback > div h2 {
        margin-bottom: 15px;
        font-size: 20px;
        line-height: 1.3;
        font-weight: 700;
        text-transform: uppercase; }
      .callback > div .message {
        margin-bottom: 25px;
        font-size: 16px; }
      .callback > div .form .fields .name,
      .callback > div .form .fields .phone {
        float: none;
        width: 100%;
        margin: 0 0 15px 0; }
      .callback > div .form .fields .button {
        float: none;
        width: 100%; }
      .callback > div .form .fields input[name=name] {
        font-style: normal;
        background: #ffffff url("../images/icons/form/name.png") 30px 50% no-repeat;
        border: 1px solid #e6e6e6; }
        .callback > div .form .fields input[name=name].error {
          border: 1px solid #d80022; }
      .callback > div .form .fields input[name=phone] {
        font-style: normal;
        background: #ffffff url("../images/icons/form/phone.png") 30px 50% no-repeat;
        border: 1px solid #e6e6e6; }
        .callback > div .form .fields input[name=phone].error {
          border: 1px solid #d80022; }
      .callback > div .form .checkbox {
        float: none;
        width: 100%;
        margin-top: 20px; }
        .callback > div .form .checkbox input[type="checkbox"] + label {
          color: #c4c4c4; } }

.how {
  margin: 0 0 90px 0; }
  .how > div {
    max-width: 1170px;
    padding: 0 15px;
    margin: 0 auto; }
    @media all and (max-width: 768px) {
      .how > div {
        padding: 0 20px; } }
    .how > div h2 {
      margin: 0 0 40px 0;
      font-size: 40px;
      font-weight: 700;
      text-align: center;
      color: #25377c; }
    .how > div > div {
      min-height: 470px;
      background: url("../images/bg/how.png") 50% 15px no-repeat;
      overflow: hidden; }
      .how > div > div > div {
        width: 230px; }
        .how > div > div > div.left {
          float: left;
          text-align: right; }
        .how > div > div > div.right {
          float: right; }
        .how > div > div > div > div {
          display: flex;
          flex-direction: column;
          justify-content: center;
          height: 92px; }
          .how > div > div > div > div span {
            display: none; }
  @media all and (max-width: 768px) {
    .how {
      margin: 0;
      padding: 30px 0 65px 0;
      background: #efefef url("../images/bg/mobile/how.png") 100% 0 no-repeat; }
      .how > div {
        padding-top: 260px;
        background: url("../images/bg/mobile/how-pic.png") 50% 0 no-repeat; }
        .how > div h2 {
          margin-bottom: 20px;
          font-size: 20px;
          text-align: left; }
        .how > div > div {
          min-height: auto;
          font-size: 16px;
          background: transparent;
          overflow: visible; }
          .how > div > div > div.left, .how > div > div > div.right {
            float: none;
            width: 100%;
            text-align: left; }
          .how > div > div > div.left {
            margin: 0 0 15px 0; }
          .how > div > div > div > div {
            position: relative;
            height: 42px;
            padding: 0 0 0 40px;
            margin: 0 0 15px 0; }
            .how > div > div > div > div:last-child {
              margin-bottom: 0; }
            .how > div > div > div > div:before {
              content: '';
              position: absolute;
              top: 36px;
              left: 12px;
              display: block;
              width: 1px;
              height: 25px;
              border-left: 1px dotted #0e438d; }
            .how > div > div > div > div:after {
              content: '';
              position: absolute;
              top: 46px;
              left: 8px;
              display: block;
              border-top: 5px solid #0e438d;
              border-left: 5px solid transparent;
              border-right: 5px solid transparent; }
            .how > div > div > div > div span {
              display: block;
              position: absolute;
              top: 50%;
              left: 0;
              width: 25px;
              height: 25px;
              margin: -13px 0 0 0;
              font-size: 18px;
              line-height: 24px;
              text-align: center;
              color: #ffffff;
              background: #0e438d;
              -moz-border-radius: 50%;
              -webkit-border-radius: 50%;
              border-radius: 50%; }
              .how > div > div > div > div span:before {
                content: '';
                position: absolute;
                top: -3px;
                left: -3px;
                display: block;
                width: 29px;
                height: 29px;
                border: 1px dotted #0e438d;
                -moz-border-radius: 50%;
                -webkit-border-radius: 50%;
                border-radius: 50%; }
          .how > div > div > div.right > div:last-child:before, .how > div > div > div.right > div:last-child:after {
            display: none; } }

.cases {
  margin: 0 0 35px 0;
  height: 985px;
  background: url("../images/bg/cases.png") 50% 160px no-repeat; }
  .cases > div {
    position: relative;
    max-width: 1170px;
    padding: 0 15px;
    margin: 0 auto; }
    @media all and (max-width: 768px) {
      .cases > div {
        padding: 0 20px; } }
    .cases > div .owl-carousel .owl-dots {
      display: none; }
    .cases > div .owl-carousel .owl-nav {
      position: absolute;
      top: 0;
      left: 0;
      right: 0; }
      .cases > div .owl-carousel .owl-nav .owl-prev {
        position: absolute;
        top: 50px;
        left: -100px;
        width: 57px;
        height: 57px;
        background: url("../images/icons/prev.png") 0 -57px no-repeat; }
        .cases > div .owl-carousel .owl-nav .owl-prev:hover {
          background-position: 0 0; }
        .cases > div .owl-carousel .owl-nav .owl-prev > span {
          display: none; }
        .cases > div .owl-carousel .owl-nav .owl-prev.disabled {
          opacity: 0.2;
          background-position: 0 -57px; }
      .cases > div .owl-carousel .owl-nav .owl-next {
        position: absolute;
        top: 50px;
        right: -100px;
        width: 57px;
        height: 57px;
        background: url("../images/icons/next.png") 0 -57px no-repeat; }
        .cases > div .owl-carousel .owl-nav .owl-next:hover {
          background-position: 0 0; }
        .cases > div .owl-carousel .owl-nav .owl-next > span {
          display: none; }
        .cases > div .owl-carousel .owl-nav .owl-next.disabled {
          opacity: 0.2;
          background-position: 0 -57px; }
      @media all and (max-width: 1330px) {
        .cases > div .owl-carousel .owl-nav {
          display: none; } }
    .cases > div h2 {
      margin: 0 0 80px 0;
      font-size: 40px;
      font-weight: 700;
      text-align: center;
      color: #25377c; }
    .cases > div .items .item {
      position: relative;
      height: 670px;
      background: #ffffff;
      overflow: hidden;
      -moz-border-radius: 10px;
      -webkit-border-radius: 10px;
      border-radius: 10px; }
      .cases > div .items .item:after {
        content: '';
        display: block;
        width: 100%;
        height: 64px;
        position: absolute;
        bottom: 29px;
        left: 0;
        background: 50% 0 no-repeat;
        background-size: contain; }
      .cases > div .items .item.case-okna21:after {
        background-image: url("../images/logo/cases/okna21.png"); }
      .cases > div .items .item.case-bayer:after {
        background-image: url("../images/logo/cases/bayer.png"); }
      .cases > div .items .item.case-mib:after {
        background-image: url("../images/logo/cases/mib.png"); }
      .cases > div .items .item.case-ens:after {
        background-image: url("../images/logo/cases/ens.png"); }
      .cases > div .items .item.case-mangazea:after {
        background-image: url("../images/logo/cases/mangazea.png"); }
      .cases > div .items .item.case-mtt:after {
        background-image: url("../images/logo/cases/mtt.png"); }
      .cases > div .items .item.case-triol:after {
        background-image: url("../images/logo/cases/triol.png"); }
      .cases > div .items .item.case-uralchim:after {
        background-image: url("../images/logo/cases/uralchim.png"); }
      .cases > div .items .item .top {
        position: relative;
        min-height: 155px;
        padding: 0 0 30px 0;
        margin: 0 0 15px 0;
        background: url("../images/bg/cases-top.svg") 50% 100% no-repeat; }
        .cases > div .items .item .top svg {
          display: block;
          position: absolute;
          bottom: 0;
          left: 0;
          right: 0;
          width: 100%; }
          .cases > div .items .item .top svg polygon {
            fill: #2b65ba; }
        .cases > div .items .item .top > div {
          /*position: absolute;
          top: 0;
          right: 0;
          left: 0;*/
          padding: 22px 30px 0 30px;
          font-size: 16px;
          line-height: 1.2;
          font-weight: 700;
          color: #ffffff; }
          .cases > div .items .item .top > div span {
            display: block;
            margin: 0 0 5px 0;
            font-size: 29px; }
      .cases > div .items .item .content {
        padding: 0 30px;
        font-size: 18px;
        line-height: 30px;
        color: #a6a7a7; }
        .cases > div .items .item .content ul {
          list-style: none; }
          .cases > div .items .item .content ul li {
            position: relative;
            margin: 17px 0 0 0;
            padding: 0 0 20px 20px;
            background: url("../images/dots.png") 0 100% repeat-x; }
            .cases > div .items .item .content ul li:first-child {
              margin-top: 0; }
            .cases > div .items .item .content ul li:last-child {
              padding-bottom: 0;
              background: transparent; }
            .cases > div .items .item .content ul li:before {
              content: '';
              display: block;
              width: 8px;
              height: 8px;
              position: absolute;
              top: 11px;
              left: 0;
              background: #0957a0;
              -moz-border-radius: 50%;
              -webkit-border-radius: 50%;
              border-radius: 50%; }
      .cases > div .items .item:hover {
        background: #f1f1f1; }
        .cases > div .items .item:hover .top svg polygon {
          fill: #16569b; }
        .cases > div .items .item:hover .content {
          color: #16569b; }
  .cases > svg {
    display: none; }
  @media all and (max-width: 768px) {
    .cases {
      margin: 0 0 10px 0;
      height: 610px;
      position: relative;
      background: #16569b url("../images/bg/mobile/cases.png") 100% -100px no-repeat; }
      .cases > svg.top {
        display: block;
        width: 100%;
        height: 55px;
        position: absolute;
        top: -55px;
        left: 0;
        right: 0; }
      .cases > svg.bottom {
        display: block;
        width: 100%;
        height: 55px;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0; }
      .cases > div {
        padding-top: 30px; }
        .cases > div .owl-carousel .owl-dots {
          display: block;
          position: absolute;
          bottom: -40px;
          left: 40px;
          right: 40px; }
          .cases > div .owl-carousel .owl-dots .owl-dot span {
            width: 8px;
            height: 8px;
            background: #f1f1f1; }
          .cases > div .owl-carousel .owl-dots .owl-dot.active span {
            background: #37b9ff; }
        .cases > div .owl-carousel .owl-nav {
          display: block;
          top: auto;
          bottom: 0;
          left: -17px;
          right: -17px; }
          .cases > div .owl-carousel .owl-nav .owl-prev,
          .cases > div .owl-carousel .owl-nav .owl-next {
            top: 0;
            left: 0;
            width: 40px;
            height: 40px;
            background: transparent; }
            .cases > div .owl-carousel .owl-nav .owl-prev:before,
            .cases > div .owl-carousel .owl-nav .owl-next:before {
              content: '';
              position: absolute;
              top: 14px;
              left: 14px;
              display: block;
              width: 10px;
              height: 10px;
              border-bottom: 2px solid #ffffff;
              border-left: 2px solid #ffffff;
              -webkit-transform: rotate(45deg);
              -moz-transform: rotate(45deg);
              transform: rotate(45deg); }
            .cases > div .owl-carousel .owl-nav .owl-prev:after,
            .cases > div .owl-carousel .owl-nav .owl-next:after {
              content: '';
              position: absolute;
              top: 19px;
              left: 14px;
              display: block;
              width: 15px;
              height: 2px;
              background: #ffffff; }
          .cases > div .owl-carousel .owl-nav .owl-next {
            left: auto;
            right: 0; }
            .cases > div .owl-carousel .owl-nav .owl-next:before {
              left: 14px;
              -webkit-transform: rotate(-135deg);
              -moz-transform: rotate(-135deg);
              transform: rotate(-135deg); }
            .cases > div .owl-carousel .owl-nav .owl-next:after {
              left: 11px; }
        .cases > div h2 {
          margin: 0;
          position: absolute;
          top: -20px;
          left: 20px;
          z-index: 10;
          font-size: 20px;
          text-align: left;
          color: #ffffff; }
        .cases > div .items .item {
          height: 480px;
          border: 1px solid #ffffff;
          background-color: #f1f1f1; }
          .cases > div .items .item:after {
            bottom: 0;
            background-size: auto 45px; }
          .cases > div .items .item .top {
            margin-bottom: 25px;
            height: 120px; }
            .cases > div .items .item .top svg polygon {
              fill: #16569b; }
            .cases > div .items .item .top > div {
              padding: 13px 15px 0 15px;
              font-size: 14px;
              line-height: 1.2;
              font-weight: 400;
              color: #37b9ff; }
              .cases > div .items .item .top > div span {
                font-size: 18px;
                font-weight: 700; }
          .cases > div .items .item .content {
            padding: 0 15px;
            font-size: 16px;
            line-height: 1.3;
            color: #0056a4; }
            .cases > div .items .item .content ul li {
              margin-top: 13px;
              padding: 0 0 15px 15px; }
              .cases > div .items .item .content ul li:first-child {
                margin-top: 0; }
              .cases > div .items .item .content ul li:before {
                width: 4px;
                height: 4px; } }

.brief {
  max-width: 1170px;
  padding: 0 15px;
  margin: 0 auto;
  margin-bottom: 75px; }
  @media all and (max-width: 768px) {
    .brief {
      padding: 0 20px; } }
  .brief > div {
    position: relative;
    padding: 1px 70px 35px 70px;
    text-align: right;
    border-right: 2px solid #0056a4;
    border-bottom: 2px solid #0056a4;
    border-left: 2px solid #0056a4; }
    .brief > div:before {
      content: '';
      display: block;
      width: 120px;
      height: 2px;
      position: absolute;
      top: 0;
      left: 0;
      background: #0056a4; }
    .brief > div:after {
      content: '';
      display: block;
      width: 120px;
      height: 2px;
      position: absolute;
      top: 0;
      right: 0;
      background: #0056a4; }
    .brief > div h2 {
      margin: -20px 0 25px 0;
      padding: 0 50px;
      font-size: 40px;
      line-height: 1;
      font-weight: 400;
      text-align: center;
      color: #d9086a; }
    .brief > div .message {
      margin: 0 0 30px 0;
      font-size: 25px;
      text-align: center; }
    .brief > div .form {
      overflow: hidden; }
      .brief > div .form.process {
        position: relative;
        opacity: 0.8; }
        .brief > div .form.process:after {
          content: '';
          display: block;
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          background: url("../images/loading.gif") 50% 50% no-repeat; }
      .brief > div .form .fields {
        padding: 15px;
        background: #d2e7f3;
        overflow: hidden; }
        .brief > div .form .fields input[type=text] {
          font-style: italic;
          background: #ffffff;
          border: 1px solid #ffffff;
          -moz-border-radius: 4px;
          -webkit-border-radius: 4px;
          border-radius: 4px; }
          .brief > div .form .fields input[type=text].error {
            border: 1px solid #d80022; }
        .brief > div .form .fields .name {
          float: left;
          width: 32%;
          padding: 0 10px 0 0; }
        .brief > div .form .fields .email {
          float: left;
          width: 37%; }
        .brief > div .form .fields .button {
          float: right;
          width: 28%; }
          .brief > div .form .fields .button a {
            display: block;
            min-height: 60px;
            padding: 20px 0;
            font-size: 18px;
            line-height: 20px;
            font-weight: 700;
            color: #ffffff;
            text-align: center;
            text-transform: uppercase;
            background: #d9086a;
            -moz-border-radius: 3px;
            -webkit-border-radius: 3px;
            border-radius: 3px; }
            @media all and (max-width: 768px) {
              .brief > div .form .fields .button a {
                padding: 11px 0;
                min-height: 46px;
                font-size: 14px;
                color: #d9086a;
                border: 2px solid #d9086a;
                background: #ffffff;
                text-transform: none;
                -moz-border-radius: 2px;
                -webkit-border-radius: 2px;
                border-radius: 2px; } }
      .brief > div .form .checkbox {
        float: right;
        padding: 25px 0 0 0; }
        .brief > div .form .checkbox.error input[type=checkbox] + label {
          color: #d80022; }
          .brief > div .form .checkbox.error input[type=checkbox] + label:before {
            background: #d80022; }
  @media all and (max-width: 768px) {
    .brief {
      position: relative;
      margin-bottom: 30px; }
      .brief > div {
        padding: 0;
        border: none; }
        .brief > div:before, .brief > div:after {
          display: none; }
        .brief > div h2 {
          margin: 0 0 10px 0;
          padding: 0;
          font-size: 18px;
          text-align: left;
          color: #25377c;
          text-transform: uppercase; }
        .brief > div .message {
          margin: 0 0 15px 0;
          color: #1a569b;
          font-size: 16px;
          text-align: left; }
        .brief > div .form .fields {
          padding: 0;
          background: transparent; }
          .brief > div .form .fields input[type=text] {
            border: 1px solid #d8d8d8;
            font-style: normal;
            background: inherit;
            -moz-border-radius: 2px;
            -webkit-border-radius: 2px;
            border-radius: 2px; }
            .brief > div .form .fields input[type=text].error {
              border: 1px solid #d80022; }
            .brief > div .form .fields input[type=text][name=name] {
              background: #ffffff url("../images/icons/form/name.png") 30px 50% no-repeat; }
            .brief > div .form .fields input[type=text][name=email] {
              background: #ffffff url("../images/icons/form/email.png") 30px 50% no-repeat; }
          .brief > div .form .fields .name,
          .brief > div .form .fields .email {
            float: none;
            width: 100%;
            padding: 0;
            margin: 0 0 20px 0; }
          .brief > div .form .fields .button {
            float: none;
            width: 100%; }
        .brief > div .form .checkbox {
          float: none;
          padding: 20px 0 0 0;
          text-align: left; } }

.instruments {
  padding: 35px 0 55px 0;
  background: #f1f1f1; }
  .instruments > div {
    max-width: 1170px;
    padding: 0 15px;
    margin: 0 auto; }
    @media all and (max-width: 768px) {
      .instruments > div {
        padding: 0 20px; } }
    .instruments > div h2 {
      margin: 0 0 70px 0;
      font-size: 40px;
      font-weight: 700;
      text-align: center;
      color: #0056a4; }
    .instruments > div > div {
      font-size: 0;
      color: transparent;
      text-align: justify; }
      .instruments > div > div:after {
        content: '';
        display: inline-block;
        width: 100%; }
      .instruments > div > div > div {
        display: inline-block;
        height: 90px; }
        .instruments > div > div > div img {
          display: block;
          width: auto;
          height: 100%; }
  @media all and (max-width: 768px) {
    .instruments {
      padding: 20px 0 30px 0; }
      .instruments > div h2 {
        margin: 0 0 20px 0;
        font-size: 20px;
        text-align: left; }
      .instruments > div > div > div {
        height: 48px; } }

.map {
  height: 505px; }
  @media all and (max-width: 768px) {
    .map {
      height: 300px; } }

.ymaps-2-1-74-ground-pane {
  filter: grayscale(1);
  -webkit-filter: grayscale(1); }

.office-map-window {
  position: absolute;
  padding: 0 20px 0 0; }
  .office-map-window .close {
    display: block;
    padding: 0 13px;
    position: absolute;
    top: 0;
    right: 20px;
    font-size: 40px;
    color: #ffffff; }
  .office-map-window .arrow {
    position: absolute;
    top: 50%;
    right: 0;
    margin: -20px 0 0 0;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    border-left: 20px solid rgba(22, 86, 155, 0.8); }
  .office-map-window .inner {
    padding: 30px 30px 35px 50px;
    font-size: 25px;
    line-height: 2;
    font-weight: 700;
    color: #ffffff;
    background: rgba(22, 86, 155, 0.8); }
    .office-map-window .inner a {
      color: #ffffff; }
  @media all and (max-width: 768px) {
    .office-map-window .close {
      font-size: 20px; }
    .office-map-window .arrow {
      top: 100%;
      right: 50%;
      margin: 0 -10px 0 0;
      border-right: 10px solid transparent;
      border-left: 10px solid transparent;
      border-top: 10px solid rgba(22, 86, 155, 0.8); }
    .office-map-window .inner {
      padding: 20px;
      font-size: 12px; } }

.footer {
  background: #16569b; }
  .footer > div {
    max-width: 1170px;
    padding: 0 15px;
    margin: 0 auto;
    height: 120px; }
    @media all and (max-width: 768px) {
      .footer > div {
        padding: 0 20px; } }
    .footer > div:after {
      content: '';
      display: block;
      clear: both; }
    .footer > div .logo {
      margin: 25px 110px 0 0;
      float: left;
      width: 262px;
      height: 69px; }
      .footer > div .logo a {
        display: block;
        width: 100%;
        height: 100%;
        background: url("../images/logo-footer.png") 0 0 no-repeat;
        background-size: contain; }
    .footer > div .copy {
      padding: 50px 0 0 375px;
      color: #ffffff;
      font-size: 14px; }
      .footer > div .copy a {
        color: #ffffff;
        border-bottom: 1px dotted rgba(255, 255, 255, 0.3); }
    .footer > div .social {
      float: left;
      margin: 35px 0 0 0; }
      .footer > div .social a {
        float: left;
        width: 40px;
        height: 40px;
        margin: 0 30px 0 0;
        background: 50% 50% no-repeat; }
        .footer > div .social a:last-child {
          margin: 0; }
        .footer > div .social a.facebook {
          background-image: url("../images/icons/social/facebook.png"); }
        .footer > div .social a.twitter {
          background-image: url("../images/icons/social/twitter.png"); }
        .footer > div .social a.youtube {
          background-image: url("../images/icons/social/youtube.png"); }
  @media all and (max-width: 768px) {
    .footer > div {
      height: 71px; }
      .footer > div .logo {
        margin: 17px 0 0 0;
        width: 145px;
        height: 37px; }
      .footer > div .copy {
        padding: 25px 0 0 200px; }
      .footer > div .social {
        float: right;
        margin: 15px 0 0 0; }
        .footer > div .social a {
          margin: 0 10px 0 0; } }
  @media all and (max-width: 570px) {
    .footer > div {
      height: auto;
      padding-top: 20px;
      padding-bottom: 20px; }
      .footer > div .logo {
        float: none;
        margin: 0 auto 15px auto; }
      .footer > div .copy {
        padding: 0;
        text-align: center; } }

.user-agreement-window,
.policy-window {
  padding: 110px;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #ffffff;
  z-index: 10;
  display: none; }
  .user-agreement-window .close,
  .policy-window .close {
    position: absolute;
    top: 30px;
    right: 30px;
    width: 50px;
    height: 50px; }
    .user-agreement-window .close:before,
    .policy-window .close:before {
      content: '';
      position: absolute;
      top: 50%;
      left: 0;
      display: block;
      width: 50px;
      height: 1px;
      background: #000000;
      -webkit-transform: rotate(45deg);
      -moz-transform: rotate(45deg);
      transform: rotate(45deg); }
    .user-agreement-window .close:after,
    .policy-window .close:after {
      content: '';
      position: absolute;
      top: 50%;
      left: 0;
      display: block;
      width: 50px;
      height: 1px;
      background: #000000;
      -webkit-transform: rotate(-45deg);
      -moz-transform: rotate(-45deg);
      transform: rotate(-45deg); }
  .user-agreement-window .inner,
  .policy-window .inner {
    height: 100%;
    overflow-y: scroll; }
    .user-agreement-window .inner .title,
    .policy-window .inner .title {
      margin: 0 0 20px 0;
      font-size: 32px;
      line-height: 1.1;
      color: #0056a4;
      font-weight: 300; }
    .user-agreement-window .inner p,
    .policy-window .inner p {
      padding: 0;
      margin: 20px 0; }
      .user-agreement-window .inner p.sub-title,
      .policy-window .inner p.sub-title {
        font-weight: 700; }
    .user-agreement-window .inner .sub p,
    .policy-window .inner .sub p {
      margin: 5px 0; }
  @media screen and (max-width: 1000px) {
    .user-agreement-window,
    .policy-window {
      padding: 50px 20px 20px 20px; }
      .user-agreement-window .close,
      .policy-window .close {
        top: 10px;
        right: 10px;
        width: 30px;
        height: 30px;
        overflow: hidden; }
        .user-agreement-window .close:before,
        .policy-window .close:before {
          left: -10px; }
        .user-agreement-window .close:after,
        .policy-window .close:after {
          left: -10px; } }

/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
  .owl-carousel .owl-item img {
    display: block;
    width: 100%; }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,
  .owl-carousel button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item {
    touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: grab; }
  .owl-carousel.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }
.owl-carousel .owl-animated-in {
  z-index: 0; }
.owl-carousel .owl-animated-out {
  z-index: 1; }
.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }
/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item {
  /**
  	This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
  	calculation of the height of the owl-item that breaks page layouts
   */ }
  .owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease; }
  .owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
    max-height: 0; }
  .owl-carousel .owl-item img.owl-lazy {
    transform-style: preserve-3d; }

/*
 * 	Default theme - Owl Carousel CSS File
 */
.owl-theme .owl-nav {
  margin-top: 10px;
  text-align: center;
  -webkit-tap-highlight-color: transparent; }
  .owl-theme .owl-nav [class*='owl-'] {
    color: #FFF;
    font-size: 14px;
    margin: 5px;
    padding: 4px 7px;
    background: #D6D6D6;
    display: inline-block;
    cursor: pointer;
    border-radius: 3px; }
    .owl-theme .owl-nav [class*='owl-']:hover {
      background: #869791;
      color: #FFF;
      text-decoration: none; }
  .owl-theme .owl-nav .disabled {
    opacity: 0.5;
    cursor: default; }
.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 10px; }
.owl-theme .owl-dots {
  text-align: center;
  -webkit-tap-highlight-color: transparent; }
  .owl-theme .owl-dots .owl-dot {
    display: inline-block;
    zoom: 1;
    *display: inline; }
    .owl-theme .owl-dots .owl-dot span {
      width: 10px;
      height: 10px;
      margin: 5px 7px;
      background: #D6D6D6;
      display: block;
      -webkit-backface-visibility: visible;
      transition: opacity 200ms ease;
      border-radius: 30px; }
    .owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
      background: #869791; }

/*# sourceMappingURL=styles.css.map */
