/*------------------------------------*\
    FOOTER STYLE
\*------------------------------------*/
.footer {
    background: #fff;
    position: relative;
    padding: 15px 0;
    overflow: hidden;
}

.site-map {
  /*background-image: url(../img/google-map.jpg);*/
  width: 100%;
  height: 50vw;
  min-height: 400px;
  margin-bottom: 15px;
  background-size: auto;
  background-position: 32% 20%;
}

.site-map-link {
  text-indent: -99999px;
  top: 0;
  left: 0;
  z-index: 2;
}

.footer-form .title {
    font-size: 24px;
    color: #fff;
    line-height: 1;
    margin-top: 0;
}

.footer-form {
    background: #074472;
    padding: 35px 0;
    position: relative;
    z-index: 3;
}

.footer-form .wrapper {
    z-index: 5;
}

.footer-form .btn-submit {
  max-width: 185px;
}

.footer-bottom {
  padding-top: 15px;
  font-size: 18px;
}

.footer-bottom > div:not(:last-child) {
  /*margin-bottom: 28px;*/
}

.social-links div:not(:last-child) {
    margin-right: 12px;
}

.social-links a {
    width: 48px;
    height: 48px;
    background: #3b5998;
    color: #fff;
    border-radius: 50px;
    font-size: 24px;
    text-decoration: none;
}

.social-links a.instagram {
    background: #d6249f;
    background: radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%);
}

.social-links a.linkedin {
  background: #0274b3;
}

.footer-bottom ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

/*
* Custom Select Menu
*/
/* The container must be positioned relative: */
.custom-select {
  position: relative;
  z-index: 3;
  text-align: left;
  font-family: 'helveticaregular';
  font-weight: 400;
}

/* make container more  */
.custom-select.is-select {
  z-index: 4;
}

.custom-select select {
  display: none; /*hide original SELECT element: */
}

/* Style the arrow inside the select element: */
.select-selected:after {
  position: absolute;
  content: "";
  top: 13px;
  right: 10px;
  width: 0;
  height: 0;
  border: solid white;
  border-width: 0 1px 1px 0;
  display: inline-block;
  padding: 4px;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}

/* Point the arrow upwards when the select box is open (active): */
.select-selected.select-arrow-active:after {
  top: 19px;
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}

/* style the items (options), including the selected item: */
.select-items div,
.select-selected {
  color: #ffffff;
  padding: 11px 15px;
  cursor: pointer;
  line-height: 1.2;
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

.select-selected {
  background-color: rgba(247, 247, 248, 0.3);
  padding-right: 27px;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  white-space: nowrap;
}

/* Style items (options): */
.select-items {
  position: absolute;
  background-color: DodgerBlue;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 99999;
}

/* Hide the items when the select box is closed: */
.select-hide {
  display: none;
}

.select-items div:hover, .same-as-selected {
  background-color: rgba(0, 0, 0, 0.1);
}

/********* End Custom Select Menu *********/

/********* Custom Checkbox *********/
/* The container */
.check-container {
  display: block;
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: #fff;
}

/* Hide the browser's default checkbox */
.check-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 3px;
  left: 0;
  height: 18px;
  width: 18px;
  /* background-color: #eee; */
  border: 1px solid #fff;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.check-container input:checked ~ .checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */
.check-container .checkmark:after {
  left: 6px;
  top: -1px;
  width: 7px;
  height: 13px;
  border: solid white;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/********* End Custom Checkbox *********/

@media (min-width: 640px) {
  .footer-form .title {
    font-size: 32px;
  }
}

@media (min-width: 768px) {
    .footer-bottom li {
    display: inline-block;
    }
    .footer-bottom li:not(:last-child) {
    margin-right: 18px;
    }
}

@media (min-width: 970px) {
    .footer-top {
        padding-bottom: 125px;
    }

    .site-map {
        position: absolute;
        top: 0;
        height: 100%;
        background-position: center center;
        -webkit-background-size: cover;
        background-size: cover;
    }

    .footer-form {
      max-width: calc(50% - 14px);
      margin-left: auto;
      position: relative;
      background: rgba(7, 68, 114, .85);
      padding: 60px 0 60px 3%;
    }

    .footer-form:before {
      content: '';
      background: rgba(7, 68, 114, .85);
      display: block;
      position: absolute;
      top: 0;
      height: 100%;
      width: 150vw;
      left: 100%;
      z-index: 4;
    }

    .footer-form .wrapper {
        max-width: 415px;
        margin-left: 0;
        padding: 0;
    }

    .map-details {
        padding: 85px 0;
    }
    .map-details .sprite {
        -webkit-box-shadow: 0px 0px 10px 0px rgba(44,96,135,0.4);
        -moz-box-shadow: 0px 0px 10px 0px rgba(44,96,135,0.4);
        box-shadow: 0px 0px 10px 0px rgba(44,96,135,0.4);
        line-height: 0;
    }
    .map-details .directions {
        width: 302px;
        height: 97px;
        background-position: 48px 261px;
        background-position: -261px -48px;
    }
    .map-details .satellite {
        width: 42px;
        height: 42px;
        background-position: -361px 0;
        bottom: 85px;
        left: 0;
    }
    .map-details .zoom {
        width: 40px;
        height: 81px;
        background-position: -218px -48px;
        right: 30px;
        bottom: 85px;
    }

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

  .footer-nav {
    max-width: 210px;
  }

  .footer-nav ul {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    -o-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 15px;
    -moz-column-gap: 15px;
    -o-column-gap: 15px;
    column-gap: 15px;
  }

  .copyright {
    text-align: center;
    -webkit-order: 2;
    -moz-order: 2;
    -ms-order: 2;
    -o-order: 2;
    order: 2;
  }

  .social-links {
    -webkit-order: 3;
    -moz-order: 3;
    -ms-order: 3;
    -o-order: 3;
    order: 3;
  }

  .footer-form .select-selected {
    width: 189px;
  }

}

@media (min-width: 1170px) {

  .footer {
    padding-bottom: 50px;
  }

  .footer-form {
    padding-left: 75px;
  }

  .footer-bottom {
    padding-top: 50px;
    line-height: 1.6;
  }

}