.v-padding-both-wide {
  padding-top: 15px;
  padding-bottom: 15px;
}
.v-padding-top-wide {
  padding-top: 15px;
}
.v-padding-bottom-wide {
  padding-bottom: 15px;
}
.v-padding-both {
  padding-top: 7.5px;
  padding-bottom: 7.5px;
}
.v-padding-top {
  padding-top: 7.5px;
}
.v-padding-bottom {
  padding-bottom: 7.5px;
}
.h-padding-both {
  padding-left: 15px;
  padding-right: 15px;
}
.h-padding-left {
  padding-left: 15px;
}
.h-padding-right {
  padding-right: 15px;
}
.strip-top-margin {
  margin-top: 0 !important;
}
.strip-bottom-margin {
  margin-bottom: 0 !important;
}
.line-under {
  border-bottom: 1px solid #eee;
}
.line-over {
  border-top: 1px solid #eee;
}
.generic-shadow {
  box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.1);
}
.generic-border {
  border: 1px solid #eee;
}
body {
  background: #fff;
}
h1,
h2 {
  border-bottom: 1px solid #eee;
  padding-bottom: 7.5px;
  margin-bottom: 15px;
}
h3 span {
  color: #bbb;
  font-weight: 400;
  font-size: 90%;
  display: inline-block;
  padding-left: 15px;
}
header a.logo-text {
  font-size: 300%;
  display: block;
  padding: 22.5px 0;
  color: #bbb;
  font-weight: 300;
  text-decoration: none;
}
header a.logo-text small {
  color: #ddd;
  font-size: inherit;
}
header nav.mobilenav {
  position: fixed;
  width: 100%;
  background: #fff;
  z-index: 11;
  top: 0;
}
header .social-menu {
  font-size: 150%;
}
header .social-menu a {
  color: #bbb;
}
header .social-menu a:hover {
  color: #aaa;
}
header .mainmenu {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  padding-top: 7.5px;
  padding-bottom: 7.5px;
  background: #fff;
  text-align: center;
}
header .mainmenu img {
  display: none;
  margin-right: 15px;
  vertical-align: middle;
}
header .mainmenu a.logo-text {
  color: #999;
  display: none;
  font-size: 100%;
  padding: 0 15px 0 0;
}
header .mainmenu.fixed {
  position: fixed;
  width: 100%;
  z-index: 11;
  top: 0;
  left: 0;
  box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.1);
}
header .mainmenu.fixed img {
  display: inline;
}
header .mainmenu.fixed a.logo-text {
  display: inline;
}
header .mainmenu > ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
header .mainmenu > ul > li {
  display: inline-block;
  position: relative;
  padding: 0;
  margin: 0;
}
header .mainmenu > ul > li > ul {
  display: none;
  position: absolute;
  top: 28px;
  left: 0;
  background: #fff;
  z-index: 11;
  list-style: none;
  padding: 7.5px 0;
  margin: 0;
  box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.1);
  min-width: 150%;
  border: 1px solid #eee;
  border-radius: 2px;
}
header .mainmenu > ul > li > ul > li {
  display: block;
  margin: 0;
  padding: 0;
}
header .mainmenu > ul > li > ul > li a {
  display: block;
  text-align: left;
  margin: 0;
  padding: 7.5px 22.5px 7.5px 7.5px;
  text-decoration: none;
}
header .mainmenu > ul > li > ul > li a.feature {
  border-bottom: 1px solid #eee;
  background: rgba(221, 221, 221, 0.1);
}
header .mainmenu > ul > li > ul > li a:hover {
  color: #fff;
  background: #bbb;
}
header .mainmenu > ul > li:last-child > ul {
  left: auto;
  right: 0;
}
.slideshow img {
  width: 100%;
  height: auto;
}
.slideshow ul {
  margin: 0;
  padding: 0;
}
.footerwrapper {
  background: #999;
}
.footerwrapper footer {
  font-size: 95%;
  color: #ddd;
}
.footerwrapper footer a {
  color: #eee;
}
.footerwrapper footer a:hover {
  color: #fff;
}
.footerwrapper footer h1,
.footerwrapper footer h2,
.footerwrapper footer h3 {
  border: none;
  padding: 0;
  color: #eee;
}
.footerwrapper footer address,
.footerwrapper footer p.social {
  line-height: 1.5;
}
.searchbox {
  display: none;
  position: fixed;
  z-index: 12;
  width: 30%;
  top: 35px;
  background: transparent;
  padding: 0;
}
.cloak {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  background: rgba(153, 153, 153, 0.5);
  z-index: 11;
  top: 0;
  left: 0;
}
.launch-gallery-modal {
  cursor: pointer;
  position: relative;
}
.launch-gallery-modal span {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 2px;
  background: rgba(255, 255, 255, 0.15);
  border-radius: 25%;
}
.launch-gallery-modal:hover {
  background: rgba(159, 182, 205, 0.15);
}
.launch-gallery-modal:hover span {
  background: rgba(255, 255, 255, 0.3);
}
.modal-content {
  position: relative;
}
.modal-content .gallery-modal-title {
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 7.5px;
  line-height: 1;
}
.modal-content .gallery-description {
  overflow-y: auto;
  margin-bottom: 30px;
}
.item-close {
  position: absolute;
  right: 15px;
  bottom: 15px;
}
.fa-facebook {
  color: #3b5998;
}
.fa-twitter {
  color: #55acee;
}
.fa-instagram {
  color: #125688;
}
footer .fa-facebook,
footer .fa-twitter,
footer .fa-instagram {
  color: #fff;
}
@media (min-width: 992px) {
  .searchbox {
    width: 25%;
  }
  .modal-content .gallery-description {
    max-height: 280px;
  }
}
@media (min-width: 1200px) {
  .searchbox {
    width: 20%;
  }
  .modal-content .gallery-description {
    max-height: 480px;
  }
}
@media (max-width: 767px) {
  body {
    padding-top: 50px;
  }
  header .mainmenu {
    display: none;
    border: none;
    padding: 0;
    background: #aaa;
    text-align: left;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 13;
    max-width: 85%;
    min-width: 60%;
  }
  header .mainmenu > ul {
    list-style: none;
    padding: 0;
    margin: 0;
  }
  header .mainmenu > ul:last-child a i {
    font-size: 1.25em;
  }
  header .mainmenu > ul:last-child a + a {
    padding-left: 2em;
  }
  header .mainmenu > ul.visible-xs > li {
    border-bottom: none;
    text-align: center;
  }
  header .mainmenu > ul.visible-xs > li.hidemobilemenu {
    text-align: right;
  }
  header .mainmenu > ul.visible-xs > li > a {
    font-size: 150%;
    color: #eee;
  }
  header .mainmenu > ul > li {
    display: block;
    position: relative;
    padding: 7.5px 15px 7.5px 7.5px;
    margin: 0;
    border-bottom: 1px solid #b7b7b7;
  }
  header .mainmenu > ul > li > ul {
    display: none;
    position: fixed;
    top: 0;
    left: auto;
    right: 0;
    max-width: 85%;
    min-width: 60%;
    background: #b7b7b7;
    z-index: 10;
    list-style: none;
    padding: 0;
    margin: 0;
    min-width: auto;
    border: none;
    border-radius: 0;
    overflow: auto;
  }
  header .mainmenu > ul > li > ul > li {
    display: block;
    padding: 0;
    margin: 0;
    border: none;
  }
  header .mainmenu > ul > li > ul > li.hidemobilesubmenu a {
    text-align: left;
    border: none;
    font-size: 150%;
    color: #eee;
  }
  header .mainmenu > ul > li > ul > li a {
    display: block;
    text-align: left;
    margin: 0;
    padding: 15px 22.5px;
    text-decoration: none;
    color: #eee;
    border-bottom: 1px solid #c3c3c3;
  }
  header .mainmenu > ul > li > ul > li a.feature {
    border-bottom: 1px solid #c3c3c3;
    background: inherit;
  }
  header .mainmenu > ul > li:last-child > ul {
    left: auto;
    right: 0;
  }
  .searchbox {
    position: fixed;
    z-index: 12;
    width: 65%;
    right: 0;
    top: 0;
    padding: 7.5px 7.5px 7.5px 0;
  }
}
@media (max-width: 479px) {
  .slideshow {
    overflow: hidden;
  }
  .slideshow .glide {
    /*            width: 200%;
            margin-left: -50%;*/
  }
  .col-xs-6 {
    width: 100%;
  }
  .searchbox {
    width: 100%;
  }
}
@media print {
  body {
    margin: 0;
    padding: 0;
    color: #000;
  }
  header,
  nav,
  .slideshow-container,
  .social {
    display: none;
  }
}
