/* ==========================================================================
   Variables
   ========================================================================== */
/* ==========================================================================
   Images
   ========================================================================== */
/* ==========================================================================
   Mixins
   ========================================================================== */
/* ==========================================================================
   Animation Mixins
   ========================================================================== */
/* ==========================================================================
   Components
   ========================================================================== */
.btn {
  display: block;
  border: none;
  background: #000416;
  font-size: 1.4em;
  text-transform: uppercase;
  text-align: center;
  line-height: 45px;
  text-decoration: none;
  color: #fff; }

.alert {
  width: 100%;
  padding: 0 0 15px 0;
  margin: 0 0 30px 0;
  border-bottom: 1px solid #ccc; }
  .alert.alert-error {
    color: #c30032;
    border-color: #c30032; }

#mainFloatingNavigation,
.slideout-menu {
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 0;
  width: 256px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  display: none;
  background-color: #233746;
  font-family: DINPro;
  font-weight: 400;
  color: #222222; }
  #mainFloatingNavigation ul,
  .slideout-menu ul {
    padding: 0;
    margin: 0;
    display: none; }
    #mainFloatingNavigation ul li,
    .slideout-menu ul li {
      padding: 0;
      margin: 0; }
      #mainFloatingNavigation ul li a,
      .slideout-menu ul li a {
        display: block;
        padding: 5px 30px 5px 20px;
        color: #222222;
        text-decoration: none; }
      #mainFloatingNavigation ul li.current-menu-item > a,
      .slideout-menu ul li.current-menu-item > a {
        color: #ffffff; }
      #mainFloatingNavigation ul li.active,
      .slideout-menu ul li.active {
        padding-bottom: 15px; }
        #mainFloatingNavigation ul li.active > ul,
        .slideout-menu ul li.active > ul {
          display: block; }
  #mainFloatingNavigation > ul,
  .slideout-menu > ul {
    padding: 10px 0;
    display: block;
    border-top: 50px solid #92256d; }
    #mainFloatingNavigation > ul > li > a,
    .slideout-menu > ul > li > a {
      padding: 10px 30px 10px 20px;
      font-family: DINProBold;
      color: #15cef0;
      text-transform: uppercase; }
    #mainFloatingNavigation > ul > li > ul > li > a,
    .slideout-menu > ul > li > ul > li > a {
      font-family: DINProBold; }
    #mainFloatingNavigation > ul > li.menu-item-has-children > a,
    .slideout-menu > ul > li.menu-item-has-children > a {
      background: url(../img/common/menu-point.png) 107% 17px no-repeat; }
    #mainFloatingNavigation > ul > li.menu-item-has-children.active > a,
    .slideout-menu > ul > li.menu-item-has-children.active > a {
      background-position: -118% 17px;
      border-bottom: 1px solid #222222;
      color: #ffffff; }

.slideout-panel {
  position: relative;
  z-index: 1; }

.slideout-open,
.slideout-open body,
.slideout-open #mainFloatingNavigation,
.slideout-open .slideout-panel {
  overflow: hidden; }

.slideout-open #mainFloatingNavigation,
.slideout-open .slideout-menu {
  display: block; }

/* easy social media */
.essb_links.essb_template_copy-retina .essb_hide_name li a,
.essb_links.essb_template_copy-retina .essb_force_hide li a {
  padding: 4px 8px 5px !important; }

.essb_links.essb_template_copy-retina .essb_counter_right {
  top: 1px !important; }

/* contact us map */
.acf-map {
  z-index: 1;
  position: relative; }

/* ==========================================================================
   Helper classes
   ========================================================================== */
dl {
  margin: 0 0 30px 0; }

dl dt {
  float: left;
  clear: left;
  width: 30%; }

dl dd {
  padding: 0 0 5px 31%; }

.ir {
  background-color: transparent;
  border: 0;
  overflow: hidden;
  *text-indent: -9999px; }

.ir:before {
  content: "";
  display: block;
  width: 0;
  height: 150%; }

.hidden {
  display: none !important;
  visibility: hidden; }

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

.invisible {
  visibility: hidden; }

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table; }

.clearfix:after {
  clear: both; }

.clearfix {
  *zoom: 1; }

.left {
  float: left; }

img.left, div.captionImage.left {
  padding: 0 15px 30px 0; }

.right {
  float: right; }

img.right, div.captionImage.right {
  padding: 0 0 30px 15px; }

.img-responsive {
  width: 100%;
  height: auto; }

.img-responsive-max {
  max-width: 100%; }

.visible-mobile,
.visible-tablet,
.visible-desktop {
  display: none !important; }

@media only screen and (max-width: 767px) {
  .visible-mobile {
    display: block !important; } }

@media only screen and (min-width: 768px) and (max-width: 1001px) {
  .visible-tablet {
    display: block !important; } }

@media only screen and (min-width: 1002px) {
  dl dt {
    width: 20%; }
  dl dd {
    padding-left: 21%; }
  .visible-desktop {
    display: block !important; } }
