/**/
/* reset */
/**/
html,
body,
iframe,
header,
footer,
main,
aside,
nav,
section,
article,
div,
p,
h1,
h2,
h3,
h4,
h5,
h6,
dl,
dt,
dd,
ul,
ol,
li,
hr,
blockquote,
pre,
figure,
figcaption,
a,
address,
del,
em,
i,
img,
strong,
sub,
sup,
table,
thead,
tbody,
tfoot,
tr,
th,
td,
form,
fieldset,
legend,
label,
input,
select,
textarea,
button {
  vertical-align: baseline;
  margin: 0;
  padding: 0;
  border: 0;
  outline: none;
  background: none;
  font-size: 100%;
  font: inherit;
}
html,
body,
iframe,
header,
footer,
main,
aside,
nav,
section,
article,
div,
h1,
h2,
h3,
h4,
h5,
h6,
p,
dl,
dt,
dd,
ul,
ol,
li,
hr,
blockqoute,
pre,
figure,
figcaption,
form,
fieldset,
legend,
label,
input,
select,
textarea,
button {
  display: block;
}
dl,
dt,
dd,
ul,
ol,
li {
  list-style: none;
}
table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}
button,
.button {
  cursor: pointer;
}
img {
  max-width: 100%;
  height: auto;
}

/**/
/* defaults */
/**/
html,
body {
  background-color: #fff;
  font-weight: 300;
  font: 400 16px/1 "Montserrat", sans-serif;
  color: #231f20;
}
a {
  text-decoration: none;
  cursor: pointer;
  color: inherit;
}
em {
  font-style: italic;
}
/**/
/* grid */
/**/
.grid {
  max-width: 1500px;
  margin: 0 auto;
}
.grid-row {
  margin: 0 -15px;
  font-size: 0;
}
.grid-col {
  display: inline-block;
  vertical-align: top;
  padding: 0 15px;
  box-sizing: border-box;
  font-size: 1rem;
}
.grid-col_1 {
  width: 4.166%;
}
.grid-col_2 {
  width: 8.333%;
}
.grid-col_3 {
  width: 12.5%;
}
.grid-col_4 {
  width: 16.666%;
}
.grid-col_5 {
  width: 20.833%;
}
.grid-col_6 {
  width: 25%;
}
.grid-col_7 {
  width: 29.166%;
}
.grid-col_8 {
  width: 33.333%;
}
.grid-col_9 {
  width: 37.5%;
}
.grid-col_10 {
  width: 41.666%;
}
.grid-col_11 {
  width: 45.833%;
}
.grid-col_12 {
  width: 50%;
}
.grid-col_13 {
  width: 54.166%;
}
.grid-col_14 {
  width: 58.333%;
}
.grid-col_15 {
  width: 62.5%;
}
.grid-col_16 {
  width: 66.666%;
}
.grid-col_17 {
  width: 70.833%;
}
.grid-col_18 {
  width: 75%;
}
.grid-col_19 {
  width: 79.166%;
}
.grid-col_20 {
  width: 83.333%;
}
.grid-col_21 {
  width: 87.5%;
}
.grid-col_22 {
  width: 91.666%;
}
.grid-col_23 {
  width: 95.833%;
}
.grid-col_24 {
  width: 100%;
}
@media screen and (max-width: 1499px) {
  /* laptop */
  .grid-col_lg-1 {
    width: 4.166%;
  }
  .grid-col_lg-2 {
    width: 8.333%;
  }
  .grid-col_lg-3 {
    width: 12.5%;
  }
  .grid-col_lg-4 {
    width: 16.666%;
  }
  .grid-col_lg-5 {
    width: 20.833%;
  }
  .grid-col_lg-6 {
    width: 25%;
  }
  .grid-col_lg-7 {
    width: 29.166%;
  }
  .grid-col_lg-8 {
    width: 33.333%;
  }
  .grid-col_lg-9 {
    width: 37.5%;
  }
  .grid-col_lg-10 {
    width: 41.666%;
  }
  .grid-col_lg-11 {
    width: 45.833%;
  }
  .grid-col_lg-12 {
    width: 50%;
  }
  .grid-col_lg-13 {
    width: 54.166%;
  }
  .grid-col_lg-14 {
    width: 58.333%;
  }
  .grid-col_lg-15 {
    width: 62.5%;
  }
  .grid-col_lg-16 {
    width: 66.666%;
  }
  .grid-col_lg-17 {
    width: 70.833%;
  }
  .grid-col_lg-18 {
    width: 75%;
  }
  .grid-col_lg-19 {
    width: 79.166%;
  }
  .grid-col_lg-20 {
    width: 83.333%;
  }
  .grid-col_lg-21 {
    width: 87.5%;
  }
  .grid-col_lg-22 {
    width: 91.666%;
  }
  .grid-col_lg-23 {
    width: 95.833%;
  }
  .grid-col_lg-24 {
    width: 100%;
  }
}
@media screen and (max-width: 999px) {
  /* tablet */
  .grid-col_md-1 {
    width: 4.166%;
  }
  .grid-col_md-2 {
    width: 8.333%;
  }
  .grid-col_md-3 {
    width: 12.5%;
  }
  .grid-col_md-4 {
    width: 16.666%;
  }
  .grid-col_md-5 {
    width: 20.833%;
  }
  .grid-col_md-6 {
    width: 25%;
  }
  .grid-col_md-7 {
    width: 29.166%;
  }
  .grid-col_md-8 {
    width: 33.333%;
  }
  .grid-col_md-9 {
    width: 37.5%;
  }
  .grid-col_md-10 {
    width: 41.666%;
  }
  .grid-col_md-11 {
    width: 45.833%;
  }
  .grid-col_md-12 {
    width: 50%;
  }
  .grid-col_md-13 {
    width: 54.166%;
  }
  .grid-col_md-14 {
    width: 58.333%;
  }
  .grid-col_md-15 {
    width: 62.5%;
  }
  .grid-col_md-16 {
    width: 66.666%;
  }
  .grid-col_md-17 {
    width: 70.833%;
  }
  .grid-col_md-18 {
    width: 75%;
  }
  .grid-col_md-19 {
    width: 79.166%;
  }
  .grid-col_md-20 {
    width: 83.333%;
  }
  .grid-col_md-21 {
    width: 87.5%;
  }
  .grid-col_md-22 {
    width: 91.666%;
  }
  .grid-col_md-23 {
    width: 95.833%;
  }
  .grid-col_md-24 {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .grid-col_sm-1 {
    width: 4.166%;
  }
  .grid-col_sm-2 {
    width: 8.333%;
  }
  .grid-col_sm-3 {
    width: 12.5%;
  }
  .grid-col_sm-4 {
    width: 16.666%;
  }
  .grid-col_sm-5 {
    width: 20.833%;
  }
  .grid-col_sm-6 {
    width: 25%;
  }
  .grid-col_sm-7 {
    width: 29.166%;
  }
  .grid-col_sm-8 {
    width: 33.333%;
  }
  .grid-col_sm-9 {
    width: 37.5%;
  }
  .grid-col_sm-10 {
    width: 41.666%;
  }
  .grid-col_sm-11 {
    width: 45.833%;
  }
  .grid-col_sm-12 {
    width: 50%;
  }
  .grid-col_sm-13 {
    width: 54.166%;
  }
  .grid-col_sm-14 {
    width: 58.333%;
  }
  .grid-col_sm-15 {
    width: 62.5%;
  }
  .grid-col_sm-16 {
    width: 66.666%;
  }
  .grid-col_sm-17 {
    width: 70.833%;
  }
  .grid-col_sm-18 {
    width: 75%;
  }
  .grid-col_sm-19 {
    width: 79.166%;
  }
  .grid-col_sm-20 {
    width: 83.333%;
  }
  .grid-col_sm-21 {
    width: 87.5%;
  }
  .grid-col_sm-22 {
    width: 91.666%;
  }
  .grid-col_sm-23 {
    width: 95.833%;
  }
  .grid-col_sm-24 {
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .grid-col_smm-24 {
    width: 100%;
  }
}

/**/
/* helpers */
/**/
.tbl {
  display: table;
  width: 100%;
  height: 100%;
}
.tcl {
  display: table-cell;
  vertical-align: middle;
}
.tcl.align-down {
  vertical-align: bottom;
}
.align-down h4 {
  padding-bottom: 30px;
}
.removed {
  display: none !important;
}
.blocked {
  display: block !important;
}
.inlined {
  display: inline !important;
}
.iblocked {
  display: inline-block !important;
}
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}
.flt-right {
  float: right;
}
@media screen and (max-width: 1499px) {
  /* laptop */
  .removed-lg {
    display: none !important;
  }
  .blocked-lg {
    display: block !important;
  }
  .inlined-lg {
    display: inline !important;
  }
  .iblocked-lg {
    display: inline-block !important;
  }
}
@media screen and (max-width: 999px) {
  /* tablet */
  .removed-md {
    display: none !important;
  }
  .blocked-md {
    display: block !important;
  }
  .inlined-md {
    display: inline !important;
  }
  .iblocked-md {
    display: inline-block !important;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .removed-sm {
    display: none !important;
  }
  .blocked-sm {
    display: block !important;
  }
  .inlined-sm {
    display: inline !important;
  }
  .iblocked-sm {
    display: inline-block !important;
  }
  .align-down h4 {
    padding-bottom: 10px;
  }
}
@media screen and (max-width: 374px) {
  /* mobile s */
  .removed-xs {
    display: none !important;
  }
  .blocked-xs {
    display: block !important;
  }
  .inlined-xs {
    display: inline !important;
  }
  .iblocked-xs {
    display: inline-block !important;
  }
  .flt-right {
    float: none;
  }
}

/**/
/* button */
/**/
.button {
  position: relative;
  display: inline-block;
  padding: 0 15px;
  background: #40b4e5;
  font-size: 14px;
  line-height: 2.572;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #fff;
}
.button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -12px;
  bottom: 0;
  border-right: 12px solid #40b4e5;
  border-top: 18px solid transparent;
  border-bottom: 18px solid transparent;
}
.button::after {
  content: "";
  position: absolute;
  top: 0;
  right: -12px;
  bottom: 0;
  border-left: 12px solid #40b4e5;
  border-top: 18px solid transparent;
  border-bottom: 18px solid transparent;
}
.button_alt {
  background: #cecece;
}
.button_alt::before {
  border-right: 12px solid #cecece;
}
.button_alt::after {
  border-left: 12px solid #cecece;
}

/**/
/* wysiwyg */
/**/
.wysiwyg p,
.single-job-listing p {
  margin-bottom: 30px;
  font-size: 18px;
  line-height: 1.556;
}
.wysiwyg a,
.single-job-listing a {
  color: #40b4e5;
}
.wysiwyg strong,
.single-job-listing strong {
  font-weight: 700;
}
.wysiwyg h1,
.single-job-listing h1 {
  margin-bottom: 30px;
  font-size: 29px;
  line-height: 1.2;
  font-weight: 600;
  color: #1c5a7d;
}
.wysiwyg.no-featured-image h1,
.wysiwyg.no-featured-image h5 {
  margin-bottom: 15px;
}
.wysiwyg h2,
.single-job-listing h2 {
  margin-bottom: 12px;
  font-size: 24px;
  line-height: 1.2;
  font-weight: 600;
  color: #38b5e6;
}
.wysiwyg h3,
.single-job-listing h3 {
  margin-bottom: 12px;
  font-size: 20px;
  line-height: 1.2;
  font-weight: 600;
  color: #e94f3d;
}
.wysiwyg h4,
.single-job-listing h4 {
  margin-bottom: 12px;
  font-size: 16px;
  line-height: 1.2;
  font-weight: 700;
  text-transform: uppercase;
  color: #bbb21e;
}
.wysiwyg h5 {
  color: #195072;
}
.wysiwyg h5,
.wysiwyg h6 {
  margin-bottom: 0;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 700;
}
.wysiwyg ul {
  margin-bottom: 30px;
  font-size: 18px;
  line-height: 1.888;
}
.wysiwyg ul li:not(.gfield) {
  position: relative;
  padding-left: 30px;
}
.wysiwyg ul li:not(.gfield)::before {
  content: "";
  position: absolute;
  top: 11px;
  left: 0;
  width: 10px;
  height: 10px;
  background: #d1d1d1;
}

@media screen and (max-width: 767px) {
  /* mobile */
  .wysiwyg p {
    margin-bottom: 20px;
    font-size: 16px;
  }
  .wysiwyg h1 {
    margin-bottom: 20px;
    font-size: 22px;
  }
  .wysiwyg h2 {
    margin-bottom: 20px;
    font-size: 18px;
  }
  .wysiwyg h3 {
    margin-bottom: 20px;
    font-size: 16px;
  }
  .wysiwyg h4 {
    margin-bottom: 20px;
  }
  .wysiwyg ul {
    margin-bottom: 20px;
    font-size: 16px;
  }
  .wysiwyg ul li::before {
    top: 9px;
  }
}

/**/
/* page */
/**/
.page_wrapper {
  position: relative;
  overflow: hidden;
}
.page_wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 2000px;
  background: #1c5a7c;
}
.page_wrapper::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 60px;
  right: 50%;
  margin-right: -2000px;
  border-bottom: 2000px solid #e9e9e9;
  border-right: 2000px solid transparent;
  border-left: 2000px solid transparent;
}
.page-header {
  position: relative;
  height: 400px;
  margin-bottom: -340px;
  padding-top: 20px;
  box-sizing: border-box;
}
.page-header::before {
  content: "";
  position: absolute;
  z-index: 10;
  top: 60px;
  right: 0;
  left: 0;
  height: 340px;
  background: linear-gradient(#fff 30%, transparent);
}
.page-footer {
  position: relative;
  z-index: 1;
  padding: 95px 0 30px;
  background: #1c5a7c;
  color: #fff;
}
.page-footer .grid {
  padding: 0 30px;
}
@media screen and (max-width: 999px) {
  /* tablet */
  .page-footer {
    padding: 45px 0 50px;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .page-header {
    z-index: 10;
    height: auto;
    margin: 0;
    padding: 78px 0 0 0;
    background: #fff;
  }
  .page-header::before {
    top: 100%;
    height: 60px;
    background: linear-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
    /*pointer-events: none;*/
  }
}

/*----------------------------------------------*/
/*                    HEADER                    */
/*----------------------------------------------*/

/**/
/* logo */
/**/
.logo {
  position: absolute;
  z-index: 10;
  top: 150px;
  left: 50%;
  display: block;
  width: 175px;
  height: 127px;
  margin-left: -87px;
  background: url(../img/logo/main.png);
  background-size: 100%;
}
@media screen and (max-width: 999px) {
  /* tablet */
  .logo {
    width: 123px;
    height: 89px;
    margin-left: -62px;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .logo {
    top: 20px;
    left: 20px;
    width: 153px;
    height: 38px;
    margin: 0;
    background-image: url(../img/logo/small.png);
  }
}

/**/
/* socials nav */
/**/
.socials-nav {
  font-size: 0;
  color: #40b4e5;
}
.socials-nav__item {
  display: inline-block;
  vertical-align: top;
  margin-left: 30px;
  font-size: 20px;
}
.socials-nav_alt {
  color: #fff;
}
.socials-nav_alt .socials-nav__item:first-child {
  margin-left: 0;
}
@media screen and (max-width: 999px) {
  /* tablet */
  .socials-nav_alt {
    margin: 30px 0;
    text-align: center;
  }
  .socials-nav_alt .socials-nav__item:first-child {
    margin: 0;
  }
}

/**/
/* main nav */
/**/
.main-nav li {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin: 0 15px;
}
.main-nav li a {
  display: block;
  padding: 0 10px;
  font-size: 14px;
  line-height: 32px;
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: #083a51;
  transition-duration: 0.2s;
}
.main-nav li a:hover {
  color: #40b4e5;
}
.main-nav li ul {
  position: absolute;
  z-index: 10;
  top: 100%;
  left: -10px;
  padding: 10px 0;
  background: #083a51;
  text-align: left;
  white-space: nowrap;
  visibility: hidden;
  /*pointer-events: none;*/
  opacity: 0;
  transition-duration: 0.3s;
}
.main-nav li:hover ul {
  visibility: visible;
  /*pointer-events: auto;*/
  opacity: 1;
}
.main-nav li li {
  display: block;
  margin: 0;
}
.main-nav li li a {
  display: block;
  padding: 10px 20px;
  font-size: 14px;
  line-height: 1;
  color: #fff;
  transition-duration: 0.2s;
  text-transform: none;
  letter-spacing: normal;
}
.main-nav li li a:hover {
  color: #40b4e5;
}
@media screen and (max-width: 1099px) {
  /* laptop */
  .main-nav li {
    margin: 0 10px;
  }
}
@media screen and (max-width: 999px) {
  /* tablet */
  .main-nav {
    top: 148px;
  }
  .main-nav li {
    margin: 0;
  }
  .main-nav li a {
    font-size: 12px;
    line-height: 18px;
    letter-spacing: 0.1em;
  }
  .main-nav li li a {
    padding: 6px 20px;
    font-size: 12px;
  }
}

/**/
/* search */
/**/
.search-form {
  position: relative;
  float: right;
  height: 30px;
  margin: -5px 15px -5px 30px;
}
.search__icon {
  position: absolute;
  top: 0;
  right: 0;
  width: 20px;
  font-size: 14px;
  line-height: 30px;
  text-align: center;
  pointer-events: none;
  color: #fff;
}
.search__input {
  width: 20px;
  height: 30px;
  padding: 5px 10px;
  background: transparent;
  font-size: 14px;
  line-height: 20px;
  -webkit-appearance: none;
  transition-duration: 0.2s;
}

.search__input:focus {
  width: 200px;
  background: #fff;
}
@media screen and (max-width: 999px) {
  /* tablet */
  .search-form {
    margin-left: 20px;
  }
  .search__input:focus {
    width: 100px;
  }
}
@media screen and (min-width: 768px) and (max-width: 999px) {
  .search__input {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 9999;
  }
}

/**/
/* secondary nav */
/**/
.secondary-nav {
  font-size: 0;
  text-align: right;
}

.secondary-nav li {
  display: inline-block;
  vertical-align: top;
  margin-left: 30px;
  font-size: 12px;
  line-height: 20px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #fff;
  position: relative;
}
@media (min-width: 768px) {
  .secondary-nav li:first-child {
    margin: 0;
  }
}
.secondary-nav__icon {
  vertical-align: top;
  margin-top: 2px;
  margin-right: 12px;
  font-size: 16px;
  color: #40b4e5;
}
.secondary-nav__icon_alt {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-top: 3px;
  background: url(../img/secondary-nav/icon.png);
  background-size: 100%;
}
.secondary-nav__item .fa-comment {
  margin-top: 1px;
}
.secondary-nav li ul {
  position: absolute;
  z-index: 9999;
  top: 110%;
  padding: 10px 0;
  background: #083a51;
  text-align: left;
  white-space: nowrap;
  visibility: hidden;
  /*pointer-events: none;*/
  opacity: 0;
  transition-duration: 0.3s;
  width: auto;
  right: -10px;
}
.secondary-nav li:hover ul {
  visibility: visible;
  /*pointer-events: auto;*/
  opacity: 1;
}
.secondary-nav li li a {
  display: block;
  padding: 10px 20px;
  font-size: 14px;
  color: #fff;
  transition-duration: 0.2s;
  text-transform: capitalize;
  font-weight: normal;
}
.secondary-nav li li a:hover {
  color: #40b4e5;
}
@media screen and (max-width: 999px) {
  /* tablet */
  .secondary-nav li {
    margin-left: 20px;
    letter-spacing: 0;
  }
  .secondary-nav__icon {
    margin-right: 10px;
  }
  .secondary-nav li li a {
    padding: 6px 20px;
    font-size: 12px;
  }
}
@media screen and (min-width: 767px) and (max-width: 999px) {
  .secondary-nav > ul {
    margin-left: -25px;
    float: left;
  }
}
@media screen and (max-width: 767px) {
  .secondary-nav li ul {
    position: relative;
    opacity: 1;
    visibility: visible;
    background: none;
    padding: 0 !important;
  }
  .secondary-nav li ul a {
    text-transform: uppercase;
    font-weight: 600;
    padding: 10px 0;
    margin-left: 10px;
  }
  .secondary-nav li ul a::before {
    content: "- ";
    padding: 0 4px;
    display: inline-block;
    font-size: 18px;
  }
  .secondary-nav li li {
    margin-left: 0;
  }
}

/**/
/* burger */
/**/
.burger {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 10;
  display: none;
  width: 28px;
  height: 20px;
  margin-top: 11px;
  margin-left: auto;
}
.burger::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 3px;
  margin-top: -1px;
  background: #1c5a7c;
  box-shadow: 0 8px 0 #1c5a7c, 0 -8px 0 #1c5a7c;
}
@media screen and (max-width: 767px) {
  /* mobile */
  .burger {
    display: block;
  }
}

/**/
/* mobile nav */
/**/
.mobile-nav {
  position: relative;
  z-index: 10;
  padding-bottom: 40px;
  background: #1c5a7c;
  color: #fff;
  display: none;
}
.mobile-main-menu li a {
  display: block;
  padding: 10px 40px;
  font-size: 14px;
  line-height: 30px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.mobile-nav > ul li.active a {
  background: #40b4e5;
}
.mobile-nav ul.mobile-main-menu ul {
  display: none;
  padding: 0 40px;
  line-height: 2;
}
.mobile-main-menu li li a {
  padding: 6px 20px;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 300;
  text-transform: none;
  transition-duration: 0.3s;
}
.mobile-nav .socials-nav {
  margin-left: 10px;
  margin-top: 20px;
}
.mobile-nav .secondary-nav {
  margin-top: 35px;
  text-align: left;
}
.mobile-nav .secondary-nav > ul > li {
  display: block;
  margin: 15px 0 0 40px;
}

/**/
/* mobile search */
/**/
.mobile-search {
  position: relative;
  margin: 30px 40px 0 40px;
}
.mobile-search__input {
  display: inline-block;
  width: 100%;
  padding-left: 15px;
  box-sizing: border-box;
  background: #13455f;
  line-height: 2.75;
  color: #fff;
}
.mobile-mobile-search__button {
  position: absolute;
  right: 0;
  width: 44px;
  line-height: 42px;
  text-align: center;
  color: #fff;
  bottom: 0;
}

/*----------------------------------------------*/
/*                    CONTENT                   */
/*----------------------------------------------*/

/**/
/* hero */
/**/
.hero {
  position: relative;
  height: 590px;
  margin: 0 -150px 40px;
  border-bottom: 12px solid #40b4e5;
  background-size: cover;
  background-position: 50% 50%;
  text-align: center;
  color: #fff;
}
.hero::before {
  content: "";
  position: absolute;
  right: 50%;
  bottom: 0;
  margin-right: -25px;
  border-right: 25px solid transparent;
  border-bottom: 25px solid #40b4e5;
  border-left: 25px solid transparent;
}
.hero h1,
.hero p {
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 1);
}
.hero h1 {
  margin: 10px 0;
  font-size: 70px;
  font-weight: 700;
}
.hero p {
  margin: 10px 0;
  font-size: 21px;
}
.hero .tcl {
  padding-top: 300px;
}
@media screen and (max-width: 1499px) {
  /* laptop */
  .hero {
    margin: 0 -100px 80px;
  }
}
@media screen and (max-width: 999px) {
  /* tablet */
  .hero {
    margin: 0 -40px 60px;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .hero {
    height: 350px;
    margin: 0 -20px 40px;
    padding: 0 20px;
    border-bottom-width: 6px;
  }
  .hero h1 {
    font-size: 28px;
  }
  .hero p {
    font-size: 16px;
  }
  .hero .tcl {
    padding-top: 80px;
  }
  .hero::before {
    margin-right: -10px;
    border-width: 20px;
  }
}

/**/
/* intro */
/**/
.intro {
  position: relative;
  z-index: 1;
  margin: 0 -150px;
  text-align: center;
  color: #fff;
}
.intro h1,
.intro p {
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 1);
}
.intro h1 {
  margin-bottom: 15px;
  font-size: 70px;
  font-weight: 700;
}
.intro p {
  margin-bottom: 20px;
  font-size: 21px;
  line-height: 1.333;
  font-weight: 500;
  text-shadow: 0 0 7px #000;
}
.intro__item {
  height: 1000px;
  padding-top: 160px;
  box-sizing: border-box;
  background-size: cover;
  background-position: 50% 50%;
}
.intro .slick-arrow {
  position: absolute;
  z-index: 1;
  top: 50%;
  width: 14px;
  height: 52px;
  margin-top: -26px;
  background-size: 100%;
  font-size: 0;
  transform: translateY(80px);
}
.intro .slick-prev {
  left: 40px;
  background-image: url(../img/intro/prev.png);
}
.intro .slick-next {
  right: 40px;
  background-image: url(../img/intro/next.png);
}
@media screen and (max-width: 1499px) {
  /* laptop */
  .intro {
    margin: 0 -100px;
  }
}
@media screen and (max-width: 999px) {
  /* tablet */
  .intro {
    margin: 0 -40px;
  }
  .intro__item {
    height: 800px;
  }
  .intro .tcl {
    padding: 0 54px;
  }
  .intro .slick-prev {
    left: 20px;
  }
  .intro .slick-next {
    right: 20px;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .intro {
    margin: 0 -20px;
  }
  .intro__item {
    height: 330px;
    padding-top: 0;
  }
  .intro h1 {
    margin-bottom: 10px;
    font-size: 25px;
  }
  .intro p {
    font-size: 15px;
  }
  .intro .tcl {
    padding: 0 27px;
  }
  .intro .slick-arrow {
    width: 7px;
    height: 26px;
    margin-top: -13px;
    transform: none;
  }
  .intro .slick-prev {
    left: 10px;
  }
  .intro .slick-next {
    right: 10px;
  }
}

/**/
/* services list */
/**/
.services-list {
  position: relative;
  z-index: 10;
  margin: -80px -90px 0;
}
.services-list__item {
  margin-top: 30px;
}
.services-list__pic {
  float: left;
  width: 280px;
  height: 280px;
  margin-right: 50px;
  background-size: cover;
}
.services-list__title {
  font-size: 28px;
  line-height: 34px;
  text-align: center;
  color: #fff;
}
.services-list__more {
  display: inline-block;
  margin-top: 15px;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #1c5a7c;
  overflow: hidden;
}
.services-list p {
  max-width: 680px;
  padding-top: 105px;
  font-size: 20px;
  line-height: 1.4;
  color: #7c7c7c;
}
.services-list__pic .tcl {
  height: 280px;
}
.services-list__item_alt {
  text-align: right;
}
.services-list_blue {
  color: #40b4e5 !important;
}
.services-list_red {
  color: #e94f3d !important;
}
.services-list_yellow {
  color: #bbb21e !important;
}
.services-list__item_alt .services-list__pic {
  float: right;
  margin: 0 0 0 50px;
}
.services-list__mobile .services-list__title {
  margin-top: 40px;
  font-size: 27px;
  text-align: left;
  color: #13455f;
}
@media screen and (max-width: 1499px) {
  /* laptop */
  .services-list {
    margin: -60px -80px 0;
  }
  .services-list__pic {
    width: 210px;
    height: 210px;
    margin-right: 30px;
  }
  .services-list p {
    padding-top: 45px;
    font-size: 16px;
  }
  .services-list__item_alt .services-list__pic {
    margin: 0 0 0 30px;
  }
  .services-list__pic .tcl {
    height: 210px;
  }
}
@media screen and (max-width: 999px) {
  /* tablet */
  .services-list {
    margin: -60px 0 0;
  }
  .services-list__pic {
    width: 280px;
    height: 280px;
  }
  .services-list__pic .tcl {
    height: 180px;
  }
  .services-list p {
    padding-top: 15px;
  }
  .services-list__mobile {
    max-width: 590px;
    margin: 0 auto;
  }
  .services-list__mobile .services-list__title br {
    display: none;
  }
}
@media screen and (max-width: 600px) {
  .services-list__pic {
    width: 180px;
    height: 180px;
  }
  .services-list__mobile {
    max-width: 390px;
  }
}
@media screen and (max-width: 424px) {
  /* mobile */
  .services-list {
    margin: -35px 0 0 0;
  }
  .services-list__item {
    margin-top: 15px;
  }
  .services-list__pic {
    width: 160px;
    height: 160px;
  }
  .services-list__title {
    font-size: 16px;
    line-height: 20px;
  }
  .services-list__pic .tcl {
    height: 115px;
  }
  .services-list .grid-row {
    margin: 0 -7px;
  }
  .services-list .grid-col {
    padding: 0 7px;
  }
  .services-list p {
    padding-top: 10px;
    font-size: 14px;
  }
  .services-list__more {
    font-size: 11px;
  }
  .services-list__mobile {
    max-width: 335px;
  }
}
@media screen and (max-width: 374px) {
  /* mobile s */
  .services-list__pic {
    width: 120px;
    height: 120px;
  }
}

/**/
/* title */
/**/
.title {
  margin-bottom: 50px;
  line-height: 28px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #606060;
}
.title__icon {
  display: inline-block;
  vertical-align: bottom;
  margin-right: 20px;
}
@media screen and (max-width: 767px) {
  /* mobile */
  .title {
    margin-bottom: 25px;
  }
}

/**/
/* recent news */
/**/
.recent-news {
  position: relative;
  z-index: 1;
  margin-bottom: 30px;
}
.recent-news__item {
  margin-bottom: 50px;
}
.recent-news > .recent-news__item:first-child {
  margin-top: 0;
}
.recent-news__text {
  overflow: hidden;
}
.recent-news__pic {
  position: relative;
  float: left;
  max-width: 50%;
  margin-right: 30px;
}
.recent-news__img {
  display: block;
  max-width: 100%;
}
.recent-news__note {
  position: absolute;
  z-index: 1;
  top: 12px;
  right: 15px;
  font-size: 14px;
  text-transform: uppercase;
  color: #fff;
}
.recent-news__note::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -12px;
  right: -15px;
  border-top: 55px solid #42b3e1;
  border-right: 55px solid #42b3e1;
  border-bottom: 55px solid transparent;
  border-left: 55px solid transparent;
}
.recent-news__note i {
  display: block;
  font-size: 23px;
}
.recent-news__title {
  font-size: 29px;
  line-height: 1.206;
  font-weight: 600;
  color: #13455f;
}
.recent-news__tag {
  position: relative;
  display: inline-block;
  margin-top: 15px;
  padding: 0 8px 0 10px;
  background: #cecece;
  font-size: 14px;
  line-height: 1.857;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #fff;
}
.recent-news__tag::before {
  content: "";
  position: absolute;
  top: 0;
  right: -8px;
  bottom: 0;
  border-left: 8px solid #cecece;
  border-top: 13px solid transparent;
  border-bottom: 13px solid transparent;
}
.recent-news__more {
  display: inline-block;
  margin-top: 30px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: #929292;
}
.recent-news__more_red {
  color: #e94f3d;
}
.recent-news__date {
  margin-top: 10px;
  font-size: 22px;
  color: #9f9f9f;
}
.recent-news__time {
  margin-top: 8px;
  color: #606060;
}
.recent-news p {
  margin-top: 20px;
  font-size: 18px;
  line-height: 1.555;
}
.recent-news p:first-child {
  margin: 0;
}
.recent-news .button {
  margin-bottom: 50px;
}
.recent-news__item_alt p {
  margin-top: 15px;
}
.recent-news__item_alt .recent-news__title {
  font-size: 24px;
}
.recent-news__item_alt .recent-news__more {
  margin-top: 20px;
}
@media screen and (max-width: 1499px) {
  /* laptop */
  .recent-news {
    padding: 0 40px;
  }
  .frame .recent-news {
    padding: 0;
  }
  .recent-news_l {
    padding-right: 0;
  }
  .recent-news_r {
    padding-left: 0;
  }
  .recent-news__img {
    height: auto;
  }
}
@media screen and (max-width: 999px) {
  /* tablet */
  .recent-news {
    padding: 0 40px;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .recent-news {
    max-width: 360px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 10px;
    padding: 0 20px;
  }
  .recent-news__item {
    margin-bottom: 30px;
    text-align: center;
  }
  .recent-news__pic {
    float: none;
    display: inline-block;
    vertical-align: top;
    max-width: 100%;
    margin: 0 0 20px;
  }
  .recent-news__note::before {
    top: -10px;
    right: -10px;
    border-top: 40px solid #42b3e1;
    border-right: 40px solid #42b3e1;
    border-bottom: 40px solid transparent;
    border-left: 40px solid transparent;
  }
  .recent-news__note {
    top: 10px;
    right: 10px;
    font-size: 10px;
    text-transform: uppercase;
    color: #fff;
  }
  .recent-news__note i {
    font-size: 16px;
  }
  .recent-news__text {
    text-align: left;
  }
  .recent-news__title {
    font-size: 24px;
  }
  .recent-news__more {
    margin-top: 15px;
  }
  .recent-news p {
    font-size: 14px;
  }
  .recent-news .button {
    margin-bottom: 30px;
  }
}

/**/
/* pager */
/**/
.pager {
  padding: 19px 0;
  border-top: 2px solid #e3e3e3;
  border-bottom: 2px solid #e3e3e3;
  font-size: 21px;
  text-align: center;
  color: #5d5d5d;
}
.pager__item,
.pager a {
  margin: 0 0.25em;
}
.pager__item_active,
.pager .current {
  font-weight: 700;
}

/**/
/* tweet */
/**/
.tweet {
  background: #42b3e1;
}
.tweet .tcl {
  padding: 30px 0;
}
.tweet .tcl:first-child {
  width: 1%;
}
.tweet .tcl:last-child {
  text-align: right;
}
.tweet__pic {
  display: block;
  margin-right: 30px;
}
.tweet__title {
  margin-right: 30px;
  font-size: 19px;
  line-height: 1.33;
  font-weight: 700;
  text-transform: uppercase;
  white-space: nowrap;
  color: #fff;
}
.tweet__text {
  margin-right: 30px;
  font-size: 19px;
  line-height: 1.33;
  color: #fff;
}
.tweet__follow {
  display: inline-block;
  vertical-align: top;
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
  text-transform: uppercase;
  white-space: nowrap;
  color: #a6eaff;
  transition-duration: 0.2s;
}
.tweet__follow:hover {
  color: #fff;
}
.tweet__follow i {
  display: inline-block;
  vertical-align: top;
  font-size: 20px;
  margin-right: 15px;
}
.tweet__link:hover {
  text-decoration: underline;
}
@media screen and (max-width: 1499px) {
  /* laptop */
  .tweet .grid {
    padding: 0 40px;
  }
}
@media screen and (max-width: 999px) {
  /* tablet */
  .tweet .grid {
    padding: 0 20px;
  }
  .tweet .tcl:first-child {
    display: none;
  }
  .tweet__title {
    font-size: 15px;
  }
  .tweet__text {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .tweet {
    padding: 20px 0;
  }
  .tweet .tcl,
  .tweet .tcl:last-child,
  .tweet .tcl:first-child {
    display: block;
    width: auto;
    padding: 0;
    text-align: center;
  }
  .tweet__pic {
    margin: 0 auto;
  }
  .tweet__title {
    margin: 20px 0 5px;
  }
  .tweet__text {
    margin: 0 0 20px;
  }
}

/**/
/* insta */
/**/
.insta {
  position: relative;
  height: 274px;
  font-size: 0;
  text-align: center;
}
.insta__inner {
  position: absolute;
  top: 0;
  left: 50%;
  width: 3014px;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  /* mobile */
  .insta {
    height: 160px;
  }
  .insta__inner {
    width: 1760px;
  }
  .insta__inner img {
    width: 80px;
    height: 80px;
  }
}

/**/
/* side nav */
/**/
.side-nav {
  padding: 30px 0 10px;
  border-top: 1px solid #c5c5c5;
  border-bottom: 1px solid #c5c5c5;
  color: #999;
}
.side-nav__item {
  margin-bottom: 20px;
}
.side-nav__link {
  display: block;
  line-height: 1.5;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition-duration: 0.3s;
}
.side-nav__link:hover {
  color: #40b4e5;
}
.side-nav__dropdown {
  margin-top: 10px;
  padding-left: 20px;
}
.side-nav__sublink {
  position: relative;
  display: block;
  margin-bottom: 15px;
  padding-left: 15px;
  font-size: 14px;
  text-transform: uppercase;
}
.side-nav__sublink::before {
  content: "-";
  position: absolute;
  top: 0;
  left: 0;
}
.side-nav__sublink--active {
  color: #40b4e5;
}
@media screen and (max-width: 999px) {
  /* tablet */
  .side-nav__link {
    letter-spacing: 0;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .side-nav {
    margin-bottom: 40px;
    padding: 20px 0 10px;
  }
  .side-nav__item {
    margin-bottom: 10px;
  }
  .side-nav__sublink {
    margin-bottom: 10px;
  }
}

/**/
/* services */
/**/
.services__pic {
  position: relative;
  height: 690px;
  margin: 110px -150px 0;
  background-size: cover;
  background-position: 50% 50%;
}
#services__pic-1 {
  margin-top: 40px;
}
.services__steps {
  position: absolute;
  top: 50%;
  right: 60px;
  transform: translateY(-50%);
  display: none;
}
.services__step {
  position: relative;
  display: block;
  width: 25px;
  height: 25px;
  margin: 20px 0;
  cursor: pointer;
}
.services__step_active {
  cursor: default;
  /*pointer-events: none;*/
}
.services__step_active::after {
  content: "";
  position: absolute;
  top: 7px;
  right: 7px;
  bottom: 7px;
  left: 7px;
  background: #fff;
}
.services__title {
  position: relative;
  z-index: 1;
  width: 300px;
  height: 300px;
  margin: -235px 0 60px;
  font-size: 42px;
  line-height: 1.19;
  text-align: center;
  color: #fff;
}
.services p {
  margin-bottom: 30px;
  font-size: 18px;
  line-height: 28px;
}
@media screen and (max-width: 1499px) {
  /* laptop */
  .services__pic {
    margin: 100px -100px 0;
  }
}
@media screen and (max-width: 999px) {
  /* tablet */
  .services__pic {
    height: 600px;
    margin: 80px -40px 0;
  }
  .services__title {
    width: 220px;
    height: 220px;
    margin: -180px 0 50px;
    font-size: 32px;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .services__pic {
    height: 300px;
    margin: 50px -20px 0;
  }
  .services__title {
    width: 150px;
    height: 150px;
    margin: -120px 0 40px;
    font-size: 22px;
  }
  .services__steps {
    right: 30px;
  }
  .services p {
    margin-bottom: 20px;
    font-size: 14px;
  }
}

/**/
/* contacts */
/**/
.contacts__form {
  margin-top: 40px;
}
input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
.contacts__input,
.contacts__textarea,
.contacts__form select {
  width: 100% !important;
  box-sizing: border-box;
  margin-bottom: 30px;
  padding: 5px 20px !important;
  border: 1px solid #e2e2e2;
  line-height: 2.125;
}

.name_first label,
.name_last label {
  margin-bottom: 0 !important;
}

.name_first,
.name_last {
  margin-bottom: 30px;
}
.name_first input,
.name_last input {
  margin-bottom: 15px;
}

textarea,
.contacts__textarea {
  height: 216px;
  margin-bottom: 40px;
  resize: none;
}
.contacts h5 {
  margin-bottom: 35px;
  font-size: 20px;
  font-weight: 700;
  color: #1c5a7d;
}
.contacts .button {
  margin-left: 12px;
}

.gfield_label {
  display: none;
}
.gfield_description {
  margin-bottom: 10px;
}
.gform_wrapper form:not(.contacts__form_alt) label {
  display: none !important;
}
body .gform_wrapper ul li.gfield,
body .gform_wrapper .top_label div.ginput_container {
  margin-top: 0 !important;
}
.contacts__form_alt .gfield_label {
  display: inline-block;
}
.contacts__form .ginput_container input,
.contacts__form .ginput_container label {
  display: inline-block;
}
@media screen and (max-width: 767px) {
  /* mobile */
  .contacts__form {
    margin-top: 50px;
  }
  .contacts__input {
    margin-bottom: 20px;
  }
  .contacts__textarea {
    margin-bottom: 30px;
  }
  .contacts h5 {
    margin-bottom: 25px;
  }
}

/**/
/* contact map */
/**/
.contact-map {
  margin: -80px -150px 80px;
  background: #f2f2f2;
}
.contact-map__gmap {
  height: 540px;
}
.contact-map__pin {
  width: 32px;
  height: 43px;
  background: url(../img/contacts/pin.png) no-repeat;
  cursor: pointer;
  transform: translateY(21px);
}
.contact-map__tooltip {
  position: absolute;
  bottom: 100%;
  left: 50%;
  width: 250px;
  margin-bottom: 25px;
  padding: 20px;
  background: #fff;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  box-sizing: border-box;
  font-family: "Raleway", sans-serif;
  font-size: 15px;
  line-height: 1.25;
  /*pointer-events: none;*/
  opacity: 0;
  transform: translateX(-50%);
  transition-duration: 0.2s;
}
.contact-map__tooltip::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -10px;
  border-top: 10px solid #fff;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
}
.contact-map__tooltip span {
  display: block;
  margin-bottom: 10px;
  font-size: 19px;
  color: #1c5a7d;
}
.contact-map__pin:hover .contact-map__tooltip {
  /*pointer-events: auto;*/
  opacity: 1;
}
@media screen and (max-width: 1499px) {
  /* laptop */
  .contact-map {
    margin-right: -100px;
    margin-left: -100px;
  }
}
@media screen and (max-width: 999px) {
  /* tablet */
  .contact-map {
    margin: -60px -40px 60px;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .contact-map {
    margin: -40px -20px 40px;
  }
  .contact-map__gmap {
    height: 340px;
  }
}

/**/
/* locations */
/**/
.locations__gmap {
  height: 460px;
}
@media screen and (max-width: 767px) {
  /* mobile */
  .locations__gmap {
    height: 340px;
    margin-bottom: 40px;
  }
}

/**/
/* category */
/**/
.category__link {
  display: block;
  padding: 20px 10px 20px 30px;
  font-size: 20px;
  line-height: 38px;
  border-top: 2px solid #efefef;
  color: #5d5d5d;
  transition-duration: 0.3s;
}
.category__link:first-child {
  border-top: 4px solid #efefef;
}
.category__link:hover,
.category__link--active {
  color: #1896b9;
}
@media screen and (max-width: 999px) {
  /* tablet */
  .category__link {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .category {
    margin-bottom: 30px;
  }
  .category__link {
    padding: 10px;
    font-size: 16px;
  }
}

/**/
/* post */
/**/
.post__pic {
  position: relative;
  margin-bottom: 70px;
}
.post__img {
  display: block;
  max-width: 100%;
  height: auto;
}
.post__date {
  position: absolute;
  z-index: 1;
  right: 23px;
  bottom: 17px;
  font-size: 20px;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
}
.post__date::before {
  content: "";
  position: absolute;
  z-index: -1;
  right: -23px;
  bottom: -17px;
  border-top: 85px solid transparent;
  border-right: 85px solid #42b3e1;
  border-bottom: 85px solid #42b3e1;
  border-left: 85px solid transparent;
}
.post__date i {
  display: block;
  font-size: 32px;
}
.post__tag {
  position: relative;
  display: inline-block;
  margin-bottom: 50px;
  padding: 0 8px 0 10px;
  background: #cecece;
  font-size: 14px;
  line-height: 1.857;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #fff;
}
.post__tag::before {
  content: "";
  position: absolute;
  top: 0;
  right: -8px;
  bottom: 0;
  border-left: 8px solid #cecece;
  border-top: 13px solid transparent;
  border-bottom: 13px solid transparent;
}
@media screen and (max-width: 1499px) {
  /* laptop */
  .post__img {
    height: auto;
  }
}
@media screen and (max-width: 999px) {
  /* tablet */
  .post__date {
    right: 20px;
    bottom: 15px;
    font-size: 18px;
  }
  .post__date::before {
    right: -20px;
    bottom: -15px;
    border-top: 70px solid transparent;
    border-right: 70px solid #42b3e1;
    border-bottom: 70px solid #42b3e1;
    border-left: 70px solid transparent;
  }
  .post__date i {
    font-size: 28px;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .post__pic {
    margin-bottom: 40px;
  }
  .post__date {
    right: 10px;
    bottom: 7px;
    font-size: 12px;
  }
  .post__date::before {
    right: -10px;
    bottom: -7px;
    border-top: 40px solid transparent;
    border-right: 40px solid #42b3e1;
    border-bottom: 40px solid #42b3e1;
    border-left: 40px solid transparent;
  }
  .post__date i {
    font-size: 18px;
  }
  .post__tag {
    margin-bottom: 35px;
  }
}

/**/
/* career */
/**/
.career__search {
  margin: 100px 0 50px;
}
.career__input {
  width: 100%;
  padding: 0 0 7px 5px;
  border-bottom: 1px dotted #727272;
  box-sizing: border-box;
  font-size: 18px;
  line-height: 2;
  color: #727272;
}
.career__button {
  float: right;
  width: 250px;
  background: #40b4e5;
  font-size: 17px;
  line-height: 2.53;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 0.2em;
  color: #fff;
}
.career tr {
  border-bottom: 1px solid #e2e2e2;
}
.career td {
  padding: 17px 0;
  font-size: 22px;
  line-height: 1.5;
  color: #5d5d5d;
}
@media screen and (max-width: 999px) {
  /* tablet */
  .career__button {
    width: 100%;
  }
  .career td {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .career__search {
    margin: 50px 0 40px;
  }
  .career__input {
    margin-bottom: 15px;
    font-size: 16px;
  }
  .career__button {
    font-size: 14px;
  }
  .career table {
    display: block;
  }
  .career table {
    display: block;
  }
  .career tbody {
    display: block;
  }
  .career tr {
    display: block;
    padding: 15px 0;
  }
  .career td {
    display: block;
    padding: 0;
    font-size: 16px;
  }
}

/*----------------------------------------------*/
/*                    FOOTER                    */
/*----------------------------------------------*/

/**/
/* slogan */
/**/
.slogan {
  width: 523px;
  height: 57px;
  margin: 0 auto 70px;
  background: url(../img/footer/slogan.png);
  background-size: 100%;
}
@media screen and (max-width: 767px) {
  /* mobile */
  .slogan {
    width: 261.5px;
    height: 28.5px;
    margin-bottom: 40px;
  }
}

/**/
/* foot logo */
/**/
.foot-logo {
  display: block;
  width: 215px;
  height: 134px;
  margin: -25px auto 40px;
  background: url(../img/footer/footer-logo.png);
  background-size: cover;
}
@media screen and (max-width: 999px) {
  /* tablet */
  .foot-logo {
    width: 175px;
    height: 107px;
    margin: 0 auto 30px;
  }
}

/**/
/* partners */
/**/
.partners {
  margin-bottom: 25px;
  font-size: 0;
  text-align: center;
}
.partners__item {
  display: inline-block;
  vertical-align: middle;
  margin-right: 15px;
}
.partners__item.accessibility {
  display: block;
  margin-top: 10px;
}

/**/
/* address */
/**/
.address {
  line-height: 22px;
}
.address i {
  display: block;
  margin-top: 20px;
  font-weight: 700;
}
@media screen and (max-width: 999px) {
  /* tablet */
  .address {
    margin-bottom: 15px;
    text-align: center;
  }
}

/**/
/* foot nav */
/**/
.foot-nav__link {
  display: block;
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 1.2;
  text-transform: uppercase;
}
@media screen and (max-width: 999px) {
  /* tablet */
  .foot-nav {
    text-align: center;
  }
}

/**/
/* copyrights */
/**/
.copyrights {
  margin-top: 30px;
  font-size: 14px;
  line-height: 1.428;
  text-align: center;
}
.copyrights i {
  display: inline-block;
  margin-left: 25px;
}
.copyrights a {
  display: inline-block;
  vertical-align: top;
}
.copyrights a:hover {
  text-decoration: underline;
}
.copyrights br {
  display: none;
}
@media screen and (max-width: 999px) {
  /* tablet */
  .copyrights {
    margin: 0;
  }
  .copyrights i {
    margin: 15px 0 0 0;
  }
  .copyrights br {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  /* mobile */
  .copyrights {
    font-size: 12px;
  }
}

/**/
/* events */
/**/
.tribe-events-button {
  background-color: #40b4e5 !important;
}
.tribe-events-single-section-title {
  color: #40b4e5;
}
.tribe-event-url:hover,
.tribe-events-nav-next a:hover,
.tribe-events-nav-previous a:hover {
  color: #40b4e5;
}
.tribe-events-event-thumb img {
  margin-bottom: 7px;
}
.tribe-event-description {
  padding-top: 9px;
}
.tribe-events-user-recurrence-toggle {
  width: 362px;
  margin: 0 auto;
}
.tribe-events-user-recurrence-toggle input {
  position: relative;
  top: 12px;
}
.tribe-events-list .tribe-events-event-image + div.tribe-events-content {
  width: 49%;
}
.tribe-events-read-more {
  color: #40b4e5;
}
.tribe-events-meta-group-details {
  width: 25% !important;
}
.tribe-events-meta-group-venue {
  width: 25% !important;
}
.tribe-events-meta-group-gmap {
  width: 50% !important;
}
.tribe-events-venue-map {
  width: 100% !important;
}

/**/
/* careers */
/**/
.job_types li {
  padding: 20px !important;
}
.job_types label {
  text-transform: uppercase;
  font-weight: bold;
  font-size: 14px;
}
.job_types label input {
  display: inline-block;
  margin-right: 3px;
}
.search_jobs {
  background: #40b4e5;
}
.search_jobs input {
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 10px;
  padding: 5px 20px;
  border: 1px solid #e2e2e2;
  background: white;
  line-height: 1.5;
}
.job_listing a {
  border-left: 5px solid #fff !important;
  padding: 2em 1em 2em 2em !important;
}
.job_listing a:hover {
  border-color: #40b4e5 !important;
}
.job-listing-meta li::before {
  display: none;
}
.single_job_listing .meta .location:before,
.single_job_listing .meta .date-posted:before {
  background-color: transparent !important;
}
.single_job_listing .meta li {
  padding-left: 20px;
}
.job-manager-form fieldset input.input-text,
.job-manager-form fieldset select,
.job-manager-form fieldset textarea {
  background-color: #eee;
}
.desktop {
  display: block;
  position: absolute;
  top: 60px;
  z-index: 999;
  width: 100%;
}
.desktop img,
.mobile img {
  width: 100%;
  height: auto;
}
.mobile {
  display: none;
}
@media screen and (max-width: 767px) {
  .desktop {
    display: none;
  }
  .mobile {
    display: block;
  }
}

/* Custom Form */
.employment-application label {
  line-height: 1.3;
}
.employment-application input[type="checkbox"] {
  display: inline-block;
  width: auto;
  margin-right: 5px;
}
fieldset {
  width: 100%;
  display: inline-block;
  box-sizing: border-box;
  padding: 30px 30px 0;
  background: #e6e6e6;
}
.employment-application input[type="text"],
.employment-application input[type="email"],
.employment-application textarea {
  background: #fff;
  margin-bottom: 30px;
}
.employment-application input.error,
.employment-application textarea.error {
  border: 1px solid red;
  margin-bottom: 15px;
}
.employment-application label.error {
  color: red;
  margin-bottom: 15px;
}
.employment-application fieldset {
  margin-bottom: 25px;
}
.employment-application h2 {
  text-transform: uppercase;
  font-weight: bold;
  font-size: 24px;
  margin-bottom: 30px;
}
.employment-application fieldset hr {
  border-top: 2px solid #b3b3b3;
  width: 100%;
  margin: 0 0 30px 0;
}
.employment-application .field.em-title label {
  color: #808080;
  font-weight: bold;
}
.employment-application .field.white {
  margin: 0 30px 30px 30px;
  line-height: 1.3;
}
@media screen and (max-width: 767px) {
  .employment-application input[type="checkbox"] {
    margin-right: 0;
  }
}
@media screen and (max-width: 480px) {
}

/**/
/* .gallery_grid */
/**/
.grid-row.gallery_grid {
  margin-bottom: 30px;
  width: 100%;
  display: inline-block;
}
.gallery_grid figcaption {
  margin: 5px 0 20px;
  line-height: 1.5;
  text-align: left;
  font-size : 12px 
}
.gallery_grid .container {
  display: inline-block;
}
.gallery_grid > div {
  text-align: left;
}
/* End of file main.css */

.page_wrapper::before,
.page_wrapper::after {
  display: none;
}

* {
  box-sizing: border-box;
}

.grid {
  padding-left: 30px;
  padding-right: 30px;
}

.grid-row {
  margin-left: -10px;
  margin-right: -10px;
}

.grid-col {
  padding-left: 10px;
  padding-right: 10px;
}

.d-flex {
  display: flex;
  -ms-display: flex;
  flex-wrap: wrap;
}

.align-center {
  align-items: center;
}

.align-stretch {
  align-items: stretch;
}

.align-stretch > .grid-col {
  display: flex;
  -ms-display: flex;
  align-items: stretch;
}

.ave-header {
  background-color: #fff;
}

.ave-header-top {
  color: #fff;
  background-color: #1c5a7c;
  padding-top: 20px;
  padding-bottom: 20px;
}

.ave-header-top .socials-nav__item:first-child {
  margin-left: 15px;
}

.search-form {
  margin-right: 15px;
}

.search__icon {
  font-size: 18px;
}

.ave-header-middle {
  position: relative;
}

.main-nav {
  display: flex;
  -ms-display: flex;
  position: static;
  top: auto;
  left: auto;
  right: auto;
  padding-top: 20px;
  padding-bottom: 20px;
}

.main-nav > ul {
  flex: 1 1 0;
  display: flex;
  -ms-display: flex;
  align-items: center;
}

.main-nav > .logo {
  flex: 0 1 auto;
  display: flex;
  -ms-display: flex;
  align-items: center;
}

.main-menu-left {
  justify-content: flex-end;
}

.main-menu-right {
  justify-content: flex-start;
}

.logo {
  position: static;
  left: auto;
  top: auto;
  width: auto;
  height: auto;
  background: none;
  max-width: 233px;
  width: auto;
  height: auto;
  margin-left: 60px;
  margin-right: 60px;
  margin-top: 0;
  z-index: 99;
  background: none;
}

.logo img {
  display: block;
  max-width: 100%;
  height: auto;
}

.mobile-nav {
  padding-top: 15px;
}

/* Sticky Header */
@keyframes fixedHeader {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (min-width: 768px) {
  .sticky-header {
    -webkit-backface-visibility: hidden;
  }

  .sticky-header.fixed {
    position: fixed;
    left: 0;
    right: 0;
    top: -60px;
    z-index: 999;
    animation-name: fixedHeader;
    animation-duration: 0.55s;
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.2);
  }
}

.ave-hero {
  margin-bottom: 40px;
}

.ave-hero-image {
  width: 100%;
}

.ave-hero-image img {
  display: block;
  max-width: none;
  width: 100%;
}

.ave-hero-content {
  color: #1c5b7e;
  width: 100%;
  background-color: #dcf5fa;
  padding: 30px 55px;
}

.ave-hero-content h1 {
  color: #44b4e6;
  font: 800 56px/1.15 "Montserrat", sans-serif;
  margin-bottom: 17px;
}

.ave-hero-content p {
  margin-bottom: 30px;
  font-size: 18px;
  line-height: 1.575;
}

.ave-button {
  display: inline-flex;
  -ms-display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 10px;
  min-width: 290px;
  text-align: center;
  font-weight: 800;
  font-size: 16px;
  line-height: 1.5;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #fff !important;
  background-color: #44b4e4;
  transition: all 0.3s ease;
}
.wysiwyg .ave-button {
  margin-bottom: 30px;
}

.ave-button:hover,
.ave-button:focus {
  background-color: #369fcc;
}

.ave-button-secondary {
  background-color: #1c5a7d;
}

.ave-button-secondary:hover,
.ave-button-secondary:focus {
  background-color: #26688d;
}

.ave-hero .ave-button {
  min-width: 0;
  width: 100%;
}

.ave-services {
  margin-bottom: 20px;
}

.ave-service-item {
  flex: 0 0 20%;
  max-width: 20%;
  padding: 0 10px;
}
.service-pic {
  position: relative;
  overflow: hidden;
  padding-top: 100%;
}
.service-pic img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.ave-service {
  display: block;
  margin-bottom: 20px;
  border: 1px solid #1c5b7e;
  padding: 0 18px;
  text-align: center;
  transition: all 0.3s ease;
}

.ave-service:hover,
.ave-service:focus {
  background-color: #e6f3fc;
}

.ave-service-title {
  color: #1c5b7e;
  display: flex;
  -ms-display: flex;
  align-items: center;
  justify-content: center;
  font: 800 18px/1.25 "Montserrat", sans-serif;
  text-transform: uppercase;
  letter-spacing: 1px;
  min-height: 70px;
}

.ave-service-more {
  color: #43b3e3;
  display: block;
  margin-left: -18px;
  margin-right: -18px;
  margin-top: 17px;
  padding: 10px;
  border-top: 1px solid #1c5b7e;
  font: 800 16px/1.35 "Montserrat", sans-serif;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.ave-card {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: flex-start;
  align-items: flex-start;
  padding: 70px 55px;
  color: #1c5b7e;
  background-color: #faf8eb;
  margin-bottom: 40px;
}

.ave-card-full {
  color: #1c5b7e;
  padding-top: 40px;
  padding-bottom: 40px;
  margin-bottom: 40px;
  padding-left: 50px;
  background-color: #e6f3fc;
}
.ave-card-full figure {
  width: 100%
}
.ave-card-full img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}

.ave-card-content {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: flex-start;
  align-items: flex-start;
  padding-left: 25px;
  padding-right: 30px;
}

.ave-card-title {
  color: #43b4e3;
  font: 800 42px/1.35 "Montserrat", sans-serif;
  margin-bottom: 20px;
}

.ave-card p,
.ave-card-content p {
  margin-bottom: 30px;
  font-size: 18px;
  line-height: 1.575;
}
.ave-card-content p {
  max-width: 500px;
}

.ave-card-primary {
  background-color: #dcf5fa;
}

.ave-services-list {
  width: 100%;
  font: 800 16px/1.35 "Montserrat", sans-serif;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 21px;
  padding-left: 50px;
}

.ave-services-list li {
  padding-top: 19px;
  padding-bottom: 19px;
}

.ave-services-list li:first-child {
  padding-top: 8px;
}

.ave-services-list li:not(:last-child) {
  border-bottom: 1px solid #1c5b7e;
}

.ave-services-list a {
  color: #1c5b7e;
  display: inline-flex;
  align-items: center;
  transition: color 0.3s ease;
}

.ave-services-list a:hover,
.ave-services-list a:focus {
  color: #43b4e3;
}

.ave-services-list-icon {
  display: inline-block;
  min-width: 50px;
  text-align: center;
  margin-right: 15px;
}

.ave-services-list-icon img {
  display: inline-block;
}

.ave-info {
  display: flex;
  -ms-display: flex;
  align-items: center;
  padding-right: 30px;
  background-color: #43b4e3;
  margin-bottom: 50px;
}

.ave-info img {
  display: block;
  max-width: 100%;
  height: auto;
}

.ave-info-title {
  color: #fff;
  font: 800 36px/1.4 "Montserrat", sans-serif;
  margin-left: 70px;
  padding-top: 40px;
  padding-bottom: 40px;
}

.ave-page-header {
  display: flex;
  -ms-display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background-color: #43b4e3;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 341.67 318.15'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%2373d2eb;%7D%3C/style%3E%3C/defs%3E%3Cg%3E%3Cg%3E%3Cpolygon class='cls-1' points='341.67 98.41 232.22 98.41 232.22 0 109.44 0 109.44 98.41 0 98.41 0 211.49 98.48 211.49 170.83 144.86 243.18 211.49 341.67 211.49 341.67 98.41'/%3E%3Cpolygon class='cls-1' points='170.83 160.83 109.44 217.37 109.44 318.15 232.22 318.15 232.22 217.37 170.83 160.83'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left center;
  margin-bottom: 40px;
  padding: 30px 15px;
  min-height: 230px;
}

.ave-page-title {
  color: #fff;
  font: 800 60px/1.175 "Montserrat", sans-serif;
  margin-bottom: 0;
}

.ave-page-title span {
  display: block;
  font-weight: 300;
  font-size: 45px;
}

@media (max-width: 1400px) {
  .ave-hero-content h1,
  .ave-hero-title {
    font-size: 50px;
  }

  .ave-card-title {
    font-size: 40px;
  }

  .ave-info-title {
    font-size: 34px;
  }

  .ave-page-title {
    font-size: 54px;
  }

  .ave-page-title span {
    font-size: 42px;
  }
}

@media (max-width: 1340px) {
  .logo {
    margin-left: 40px;
    margin-right: 40px;
  }
  .ave-hero-content {
    padding: 20px 30px;
  }

  .ave-hero-content h1,
  .ave-hero-title {
    font-size: 46px;
  }

  .ave-card {
    padding: 40px 30px;
  }

  .ave-card-title {
    font-size: 36px;
  }

  .ave-info-title {
    font-size: 30px;
    margin-left: 30px;
  }

  .ave-page-title {
    font-size: 50px;
  }

  .ave-page-title span {
    font-size: 40px;
  }

  .ave-button {
    font-size: 14px;
    min-width: 240px;
  }
}

@media (max-width: 991px) {
  .ave-header-top .socials-nav__item:first-child {
    margin-left: 0;
  }

  .search-form {
    margin-right: 0;
  }
  .flex-col-md {
    flex-direction: column;
  }

  .flex-col-reverse-md {
    flex-direction: column-reverse;
  }

  .flex-col-md > .grid-col,
  .flex-col-reverse-md > .grid-col {
    width: 100%;
  }

  .ave-service-item {
    flex: 0 0 33.33%;
    max-width: 33.33%;
  }
}

@media (max-width: 767px) {
  .grid {
    padding-left: 20px;
    padding-right: 20px;
  }
  .ave-header-top {
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .logo {
    margin-left: 0;
    margin-right: 0;
  }
  .ave-hero-content {
    padding-left: 20px;
    padding-right: 20px;

  }
  .ave-hero-content p {
    font-size: 19px
  }

  .ave-button {
    font-size: 13px;
    min-width: 190px;
  }

  .ave-hero-content .ave-button {
    margin-bottom: 8px;
  }

  .ave-card {
    padding-left: 20px;
    padding-right: 20px;
  }
  .ave-card-full {
    padding-left: 20px;
    padding-right: 20px;
  }

  .ave-card-content {
    padding-left: 0;
    padding-right: 0;
  }

  .ave-card-full img {
    margin-left: 0;
    margin-bottom: 20px;
  }
  .ave-services-list {
    padding-left: 0;
    font-size: 15px;
  }

  .ave-hero-title,
  .ave-hero-content h1 {
    font-size: 36px;
  }

  .ave-card-title {
    font-size: 28px;
  }

  .ave-info-title {
    font-size: 24px;
    margin-left: 30px;
  }

  .ave-page-header {
    background-size: 120px;
  }

  .ave-page-title {
    font-size: 38px;
  }

  .ave-page-title span {
    font-size: 30px;
  }

  .ave-service-title {
    font-size: 16px;
  }

  .ave-service-more {
    font-size: 14px;
  }
}

@media (max-width: 620px) {
  .ave-service-item {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (max-width: 360px) {
  .ave-service-item {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

.wpml-ls-legacy-list-horizontal.wpml-ls-statics-footer {
  margin-bottom: 0 !important;
}
.bronze-icon {
  display: block;
  margin: 15px auto 30px;
}

/* =WordPress Core
-------------------------------------------------------------- */
.alignnone {
  margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
  display: block;
  margin: 5px auto 5px auto;
}

.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

a img.alignnone {
  margin: 5px 20px 20px 0;
}

a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption {
  background: #fff;
  border: 1px solid #f0f0f0;
  max-width: 96%; /* Image does not overflow the content area */
  padding: 5px 3px 10px;
  text-align: center;
}

.wp-caption.alignnone {
  margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
  margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
  margin: 5px 0 20px 20px;
}

.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto;
}

.wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}
.video-container {
  position: relative;
  overflow: hidden;
  padding-top: 56.25%;
  height: auto;
  margin-bottom: 1rem;
}
@media(min-width: 768px) {
  .video-container {
    margin-bottom: 0;
  }
}
.video-container iframe,
.video-container .rll-youtube-player {
  position: absolute;
  height: 100%;
  top: 0;
  left: 0;
}
.video-container,
.video-container iframe,
.video-container .rll-youtube-player {
  width: 100%;
}

