@charset "UTF-8";
/*
Theme Name:	Catamount Solar
Description: Cutom theme for Catamount Solar, 2021
Version: 1.0
Author: Gabe Halberg / Dadra Design
Author URI: https://dadradesign.com
*/
*:not(select) {
  margin: 0;
  padding: 0;
  border: 0;
}

.clear {
  clear: both;
  line-height: 0;
  margin: 0;
  padding: 0;
}

a:focus {
  outline: none;
}

/* disable default styling for various browsers */
input[type=search],
input:not([type=radio]):not([type=checkbox]),
textarea {
  outline: none !important;
  /*for webkit*/
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  border-radius: 0 !important;
}

#lte-ie9,
#ie10-ie11 {
  position: relative;
  max-width: 600px;
  margin: 120px auto -30px auto;
  padding: 30px !important;
  text-align: center;
  color: #fff !important;
  background: darkred;
  z-index: 1000;
}
#lte-ie9 h2,
#ie10-ie11 h2 {
  text-transform: uppercase !important;
  font-weight: bold;
  color: #fff !important;
}
#lte-ie9 a,
#ie10-ie11 a {
  color: #fff;
  font-weight: bold;
  text-decoration: underline !important;
}

#ie10-ie11-edge-15-and-under {
  display: none !important;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  #ie10-ie11-edge-15-and-under {
    display: block !important;
    position: relative;
    max-width: 600px;
    margin: 120px auto -30px auto;
    padding: 30px !important;
    text-align: center;
    color: #fff !important;
    background: darkred;
    z-index: 1000;
  }
  #ie10-ie11-edge-15-and-under h2 {
    text-transform: uppercase;
    font-weight: bold;
    color: #fff !important;
  }
  #ie10-ie11-edge-15-and-under a {
    color: #fff;
    font-weight: bold;
    text-decoration: underline !important;
  }
}
@supports (-ms-ime-align: auto) and (not (position: sticky)) {
  #ie10-ie11-edge-15-and-under {
    display: block !important;
    position: relative;
    max-width: 600px;
    margin: 120px auto -30px auto;
    padding: 30px !important;
    text-align: center;
    color: #fff !important;
    background: darkred;
    z-index: 1000;
  }
  #ie10-ie11-edge-15-and-under h2 {
    text-transform: uppercase;
    font-weight: bold;
    color: #fff !important;
  }
  #ie10-ie11-edge-15-and-under a {
    color: #fff;
    font-weight: bold;
    text-decoration: underline !important;
  }
}
aside {
  display: none;
  position: relative;
  margin: 0;
}
@media screen and (min-width: 1000px) {
  aside {
    display: block !important;
    padding: 40px 0;
  }
}
aside ul.sidebar-menu {
  display: block;
  margin: 0 0 30px 0;
  padding: 0;
  list-style-type: none;
  overflow: hidden;
  background: #105e30;
}
@media screen and (min-width: 1000px) {
  aside ul.sidebar-menu {
    font-size: 0.95em;
    background: none;
  }
}
aside ul.sidebar-menu li {
  margin: 0;
  padding: 0 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.3);
}
@media screen and (min-width: 1000px) {
  aside ul.sidebar-menu li {
    padding: 0;
    border: 0;
  }
}
@media screen and (min-width: 1000px) {
  aside ul.sidebar-menu li.active a {
    font-weight: 700;
    color: #000 !important;
  }
}
aside ul.sidebar-menu li a {
  display: block;
  padding: 20px 10px;
  text-transform: uppercase;
  font-weight: 600;
  color: #fff;
}
@media screen and (min-width: 1000px) {
  aside ul.sidebar-menu li a {
    padding: 10px 0;
    font-weight: 400;
    color: #777;
  }
}
@media screen and (min-width: 1000px) {
  aside ul.sidebar-menu li a:hover {
    text-decoration: underline;
  }
}
aside .sidebar-text-block {
  padding: 30px 30px 15px 30px;
  border-bottom: 1px solid #ccc;
}
@media screen and (min-width: 1000px) {
  aside .sidebar-text-block {
    padding: 30px 0 0 0;
    border: 0;
    border-top: 1px solid #ccc;
    font-size: 0.95em;
  }
}
aside .button, aside input[type=submit] {
  margin: 10px 0 0 0;
}

a.sidebar-toggle {
  position: relative;
  display: inline-block;
  margin: 0 0 30px 20px;
  font-size: 1em;
  font-weight: 600;
  text-transform: uppercase;
  cursor: pointer;
}
@media screen and (min-width: 1000px) {
  a.sidebar-toggle {
    display: none;
  }
}
a.sidebar-toggle:after {
  display: inline-block;
  margin-left: 5px;
  font-family: FontAwesome;
  content: "\f078";
  font-weight: 100;
}
@media screen and (min-width: 650px) {
  a.sidebar-toggle:after {
    right: 40px;
  }
}
a.sidebar-toggle.active:after {
  content: "\f077";
}

footer {
  border-top: 1px solid #fff;
}
footer .pre-footer {
  color: #fff;
  background: #000;
}
footer .pre-footer .pre-footer-content {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px;
}
@media screen and (min-width: 800px) {
  footer .pre-footer .pre-footer-content {
    padding: 40px;
  }
}
@media screen and (min-width: 1000px) {
  footer .pre-footer .pre-footer-content {
    display: grid;
    grid-template-columns: 3fr 1fr;
    grid-gap: 50px;
  }
}
@media screen and (min-width: 1100px) {
  footer .pre-footer .pre-footer-content {
    grid-gap: 70px;
  }
}
@media screen and (min-width: 650px) {
  footer .pre-footer .contact-faq-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 50px;
  }
}
footer .pre-footer a.footer-get-in-touch,
footer .pre-footer a.footer-faq {
  display: grid;
  grid-template-columns: 60px auto;
  grid-gap: 30px;
  margin: 0 0 30px 0;
  font-weight: inherit;
  color: inherit;
}
@media screen and (min-width: 1000px) {
  footer .pre-footer a.footer-get-in-touch,
footer .pre-footer a.footer-faq {
    grid-template-columns: 75px auto;
    grid-gap: 30px;
  }
}
footer .pre-footer a.footer-get-in-touch .icon,
footer .pre-footer a.footer-faq .icon {
  display: block;
  width: 60px;
  height: 60px;
  background-size: 60px;
}
@media screen and (min-width: 1000px) {
  footer .pre-footer a.footer-get-in-touch .icon,
footer .pre-footer a.footer-faq .icon {
    width: 75px;
    height: 75px;
    background-size: 75px;
  }
}
footer .pre-footer a.footer-get-in-touch h4,
footer .pre-footer a.footer-faq h4 {
  display: flex;
  align-items: center;
}
footer .pre-footer a.footer-get-in-touch h4 i,
footer .pre-footer a.footer-faq h4 i {
  padding-left: 10px;
  font-size: 1.5em;
}
footer .pre-footer a.footer-get-in-touch:hover .icon,
footer .pre-footer a.footer-faq:hover .icon {
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-animation-name: bounce;
          animation-name: bounce;
  -webkit-animation-timing-function: ease;
          animation-timing-function: ease;
}
@-webkit-keyframes bounce {
  10% {
    -webkit-transform: scale(1.1, 0.9) translateY(0);
            transform: scale(1.1, 0.9) translateY(0);
  }
  30% {
    -webkit-transform: scale(0.9, 1.1) translateY(-5px);
            transform: scale(0.9, 1.1) translateY(-5px);
  }
  50% {
    -webkit-transform: scale(1.05, 0.95) translateY(0);
            transform: scale(1.05, 0.95) translateY(0);
  }
}
@keyframes bounce {
  10% {
    -webkit-transform: scale(1.1, 0.9) translateY(0);
            transform: scale(1.1, 0.9) translateY(0);
  }
  30% {
    -webkit-transform: scale(0.9, 1.1) translateY(-5px);
            transform: scale(0.9, 1.1) translateY(-5px);
  }
  50% {
    -webkit-transform: scale(1.05, 0.95) translateY(0);
            transform: scale(1.05, 0.95) translateY(0);
  }
}
footer .pre-footer .footer-get-in-touch .icon {
  background-image: url(images/get-in-touch.png);
}
footer .pre-footer .footer-faq .icon {
  background-image: url(images/faq.png);
}
@media screen and (min-width: 650px) {
  footer .pre-footer .footer-buttons {
    text-align: center;
  }
}
@media screen and (min-width: 1000px) {
  footer .pre-footer .footer-buttons .button, footer .pre-footer .footer-buttons input[type=submit] {
    display: block;
    margin: 0 0 20px 0;
  }
  footer .pre-footer .footer-buttons .button:last-of-type, footer .pre-footer .footer-buttons input[type=submit]:last-of-type {
    margin: 0;
  }
}
footer .main-footer .main-footer-content {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px;
}
@media screen and (min-width: 800px) {
  footer .main-footer .main-footer-content {
    display: grid;
    grid-template-columns: 4fr 9fr 3fr;
    grid-gap: 30px;
    padding: 60px 40px;
  }
}
@media screen and (min-width: 1000px) {
  footer .main-footer .main-footer-content {
    display: grid;
    grid-template-columns: 7fr 9fr 3fr;
    grid-gap: 50px;
  }
}
footer .main-footer .footer-col {
  margin: 0 0 40px 0;
}
@media screen and (min-width: 800px) {
  footer .main-footer .footer-col {
    margin: 0;
  }
}
@media screen and (min-width: 1000px) {
  footer .main-footer .col-contact {
    display: grid;
    grid-template-columns: 120px auto;
    grid-gap: 20px;
  }
}
footer .main-footer .footer-logo {
  display: block;
  width: 120px;
  height: 120px;
  margin: 0 0 40px 0;
  background: url(images/logo.jpg) no-repeat center center;
  background-size: 120px 120px;
}
footer .main-footer .footer-phone,
footer .main-footer .footer-email {
  display: flex;
  align-items: center;
  color: inherit;
}
footer .main-footer .footer-phone:before,
footer .main-footer .footer-email:before {
  content: "";
  display: inline-block;
  margin: 0 10px 0 0;
}
footer .main-footer .footer-phone:hover,
footer .main-footer .footer-email:hover {
  text-decoration: underline;
}
footer .main-footer .footer-phone {
  margin-top: 20px;
}
footer .main-footer .footer-phone:before {
  width: 16px;
  height: 16px;
  background: url(images/footer-call.png) no-repeat center center;
  background-size: 16px 16px;
}
footer .main-footer .footer-email {
  margin-top: 15px;
}
footer .main-footer .footer-email:before {
  width: 31px;
  height: 14px;
  background: url(images/footer-email.png) no-repeat center center;
  background-size: 31px 14px;
}
footer .main-footer .footer-social a {
  display: inline-block;
  margin-right: 10px;
  font-size: 2.5em;
  color: #105e30;
}
footer .main-footer .footer-social a:hover {
  color: #14743b;
}
footer .main-footer .col-affiliates p {
  margin: 0 0 25px 0;
}
footer .main-footer .footer-affiliates {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
footer .main-footer .footer-affiliates a {
  margin: 0 20px 25px 0;
}
footer .main-footer .footer-affiliates a img {
  display: block;
  max-height: 65px;
}
footer .main-footer .footer-affiliates a.has-added-text {
  display: flex;
  align-items: center;
  max-width: 200px;
}
footer .main-footer .footer-affiliates a.has-added-text span {
  display: block;
  margin-left: 5px;
  font-size: 0.7em;
  font-weight: 400;
  color: #000;
}
@media screen and (min-width: 800px) {
  footer .main-footer .col-nav {
    justify-self: end;
  }
}
footer .main-footer .menu {
  margin: 0;
  list-style-type: none;
}
footer .main-footer .menu li {
  margin: 0 0 10px 0;
}
footer .main-footer .menu li a {
  font-weight: inherit;
  color: inherit;
}
footer .main-footer .menu li a:hover {
  text-decoration: underline;
}

a.skip {
  position: absolute;
  top: -1000px;
  left: -1000px;
  padding: 10px 20px;
  font-size: 0.8em;
  font-weight: 700;
  color: #fff !important;
  text-decoration: none;
  background: #000;
  border-radius: 5px;
  z-index: 20000;
  transition: none;
}
a.skip:active, a.skip:focus, a.skip:hover {
  top: 60px;
  left: 30%;
}
@media screen and (min-width: 1000px) {
  a.skip:active, a.skip:focus, a.skip:hover {
    top: 0;
    left: 45%;
  }
}

/*  shiftnav toggle bar & menu:
	small-screen fixed header & off-canvas nav, medium-screen off-canvas nav
=========================================================================*/
.shiftnav-wrap {
  margin-top: 0 !important;
}

#shiftnav-toggle-main {
  height: 75px;
  padding: 0 !important;
}
#shiftnav-toggle-main .shiftnav-main-toggle-content {
  padding: 0 !important;
}
#shiftnav-toggle-main .shiftnav-main-toggle-content a {
  display: block;
  width: 65px;
  height: 65px;
  margin: 5px 0 0 10px;
  text-indent: -9999px;
  background: url(images/logo.jpg) no-repeat center center;
  background-size: 65px 65px;
}
@media screen and (min-width: 650px) {
  #shiftnav-toggle-main .shiftnav-main-toggle-content a {
    margin: 5px 0 0 20px;
  }
}
#shiftnav-toggle-main .shiftnav-main-toggle-content-before {
  position: absolute;
  left: 85px;
  top: 17px;
  text-align: left;
  text-transform: uppercase;
  font-family: urw-din-condensed, sans-serif;
  font-weight: 600;
  line-height: 1.2em;
  color: #105e30;
}
@media screen and (min-width: 650px) {
  #shiftnav-toggle-main .shiftnav-main-toggle-content-before {
    left: 95px;
  }
}
#shiftnav-toggle-main .shiftnav-main-toggle-content-before .title {
  font-size: 1.6em;
}
@media screen and (min-width: 375px) {
  #shiftnav-toggle-main .shiftnav-main-toggle-content-before .title {
    font-size: 1.85em;
  }
}
@media screen and (min-width: 650px) {
  #shiftnav-toggle-main .shiftnav-main-toggle-content-before .title {
    font-size: 2.4em;
  }
}
#shiftnav-toggle-main .shiftnav-main-toggle-content-before .tag {
  font-size: 0.95em;
  opacity: 0.75;
}
@media screen and (min-width: 650px) {
  #shiftnav-toggle-main .shiftnav-main-toggle-content-before .tag {
    font-size: 1.1em;
  }
}
#shiftnav-toggle-main .shiftnav-toggle-burger {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 75px;
  padding: 0 20px !important;
  font-size: 1.5em;
}
@media screen and (min-width: 650px) {
  #shiftnav-toggle-main .shiftnav-toggle-burger {
    height: 85px;
    padding-right: 30px !important;
  }
}

#shiftnav-main .shiftnav-menu li:hover {
  color: #000 !important;
}
#shiftnav-main .shiftnav-menu li:hover .shiftnav-submenu-activation {
  color: #000 !important;
}
#shiftnav-main .shiftnav-menu li ul {
  margin-bottom: 5px;
  background: none !important;
}
#shiftnav-main .shiftnav-menu li ul li a {
  padding: 6px 25px 6px 50px !important;
  text-transform: none;
  font-size: 1.3em !important;
}
#shiftnav-main .shiftnav-menu a {
  padding: 10px 25px !important;
  font-size: 1.5em !important;
  color: #105e30 !important;
  font-weight: 600;
  text-transform: uppercase;
  font-family: urw-din-condensed, sans-serif;
  background: none !important;
}
#shiftnav-main .shiftnav-menu a:hover {
  color: #000 !important;
  background: #fcc03c !important;
}
#shiftnav-main .shiftnav-menu .shiftnav-submenu-activation:hover {
  color: #000 !important;
  background: #fcc03c !important;
}
#shiftnav-main .shiftnav-menu span.shiftnav-submenu-activation {
  background: none !important;
}
#shiftnav-main .shiftnav-menu-image {
  margin-bottom: 12px;
  padding-top: 15px !important;
  padding-bottom: 5px !important;
}
#shiftnav-main .shiftnav-menu-image img {
  display: block;
  width: 80px !important;
}
#shiftnav-main .mobile-nav-phone {
  display: block;
  padding: 20px 20px 20px 25px;
  text-transform: uppercase;
  font-family: urw-din-condensed, sans-serif;
  font-weight: 600;
  font-size: 2em;
  color: #105e30;
}
#shiftnav-main .mobile-nav-phone i {
  padding-right: 10px;
}
#shiftnav-main .shiftnav-search {
  margin-top: 10px !important;
  margin-bottom: 30px !important;
}
#shiftnav-main .shiftnav-search .shiftnav-searchform {
  background: none !important;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
#shiftnav-main .shiftnav-search .shiftnav-searchform .shiftnav-search-input {
  font-size: 1.1em !important;
  font-family: open-sans, sans-serif !important;
  border: 0 !important;
}
#shiftnav-main .shiftnav-search .shiftnav-searchform .shiftnav-search-submit {
  color: #666 !important;
}
#shiftnav-main .shiftnav-search .shiftnav-searchform .shiftnav-search-submit:hover {
  background: none;
}

.shiftnav.shiftnav-skin-light ul.shiftnav-menu li.menu-item.current-menu-item > .shiftnav-target,
.shiftnav.shiftnav-skin-light ul.shiftnav-menu > li.shiftnav-sub-accordion.current-menu-ancestor > .shiftnav-target,
.shiftnav.shiftnav-skin-light ul.shiftnav-menu > li.shiftnav-sub-shift.current-menu-ancestor > .shiftnav-target,
.shiftnav.shiftnav-skin-light ul.shiftnav-menu li.menu-item ul.sub-menu .current-menu-item .shiftnav-target {
  background: none !important;
}

header {
  z-index: 1000000 !important;
}
@media screen and (min-width: 1000px) {
  header {
    position: fixed !important;
    top: 0;
    left: auto;
    width: 100%;
    height: 150px;
    background: #fff;
    border-bottom: 1px solid #ccc;
    overflow: visible;
  }
}
@media screen and (min-width: 1000px) {
  header #header-content {
    position: relative;
    box-sizing: border-box;
    max-width: 1200px;
    height: 150px;
    margin: 0 auto;
  }
  header #header-content:after {
    content: "";
    display: table;
    clear: both;
  }
}
header a#logo,
header #secondary-nav,
header nav.ubermenu-main {
  position: absolute;
  top: auto;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
@media screen and (min-width: 1000px) {
  header a#logo,
header #secondary-nav,
header nav.ubermenu-main {
    position: relative !important;
    top: 0;
    left: auto;
    width: auto;
    height: auto;
    overflow: visible;
  }
}
@media screen and (min-width: 1000px) {
  header a#logo {
    transition: none;
    display: block;
    position: absolute;
    left: 20px;
    width: 120px;
    height: 150px;
    text-indent: -9999px;
    background: url(images/logo.jpg) no-repeat center center;
    background-size: 120px 120px;
    z-index: 100000;
  }
}
header .action-buttons {
  position: relative;
  z-index: 100000;
}
@media screen and (min-width: 650px) {
  header .action-buttons {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 2px;
  }
}
@media screen and (min-width: 1000px) {
  header .action-buttons {
    position: absolute;
    top: 0;
    right: 0;
    grid-template-columns: 1fr;
  }
}
header .action-buttons a {
  display: flex;
  align-items: center;
  padding: 12px 20px;
  font-size: 1.35em;
  text-transform: uppercase;
  font-family: urw-din-condensed, sans-serif;
  color: #000;
  background: #f4b221;
}
@media screen and (min-width: 650px) {
  header .action-buttons a {
    justify-content: center;
  }
}
@media screen and (min-width: 1000px) {
  header .action-buttons a {
    display: block;
    height: 74px;
    box-sizing: border-box;
    padding: 10px 20px 0 20px;
    line-height: 1.1em;
  }
}
@media screen and (min-width: 1200px) {
  header .action-buttons a {
    padding: 10px 30px 0 40px;
  }
}
header .action-buttons a:first-of-type {
  margin-bottom: 2px;
}
@media screen and (min-width: 650px) {
  header .action-buttons a:first-of-type {
    margin: 0;
  }
}
header .action-buttons a:hover {
  background: #fcc03c;
}
header .action-buttons a br {
  display: none;
}
@media screen and (min-width: 1000px) {
  header .action-buttons a br {
    display: inline;
  }
}
header .action-buttons a i {
  display: inline-block;
  padding-left: 10px;
  font-size: 1.25em;
  color: #fff;
}
@media screen and (min-width: 1000px) {
  header .action-buttons a i {
    padding-left: 5px;
  }
}
header .action-buttons a i:first-of-type {
  display: none;
}
@media screen and (min-width: 1000px) {
  header .action-buttons a i:first-of-type {
    display: inline;
  }
}
@media screen and (min-width: 1000px) {
  header .action-buttons a i:last-of-type {
    display: none;
  }
}
@media screen and (min-width: 1000px) {
  header nav.ubermenu-main {
    position: absolute !important;
    top: 55px;
    width: 100%;
  }
}
@media screen and (min-width: 1100px) {
  header nav.ubermenu-main {
    top: 50px;
  }
}
header nav.ubermenu-main > ul {
  float: right;
  margin-right: 180px !important;
}
@media screen and (min-width: 1200px) {
  header nav.ubermenu-main > ul {
    margin-right: 240px !important;
  }
}
header nav.ubermenu-main > ul > li > .ubermenu-target {
  display: inline-block;
  box-sizing: border-box;
  height: 95px;
  padding: 10px 10px 0 10px !important;
  font-size: 1.25em;
  font-family: urw-din-condensed, sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  color: #000 !important;
  transition: all 0.15s ease;
}
@media screen and (min-width: 1100px) {
  header nav.ubermenu-main > ul > li > .ubermenu-target {
    height: 100px;
    padding: 15px 15px 0 15px !important;
    font-size: 1.5em;
  }
}
@media screen and (min-width: 1200px) {
  header nav.ubermenu-main > ul > li > .ubermenu-target {
    padding: 15px 20px 0 20px !important;
  }
}
header nav.ubermenu-main > ul > li > .ubermenu-target:hover span {
  border-color: #fcc03c;
}
header nav.ubermenu-main > ul > li > .ubermenu-target:focus {
  outline: none;
}
header nav.ubermenu-main > ul > li > .ubermenu-target span {
  border-bottom: 4px solid transparent;
  transition: all 0.15s ease;
}
header nav.ubermenu-main > ul > li.ubermenu-active > .ubermenu-target {
  transition: all 0.15s ease;
}
header nav.ubermenu-main > ul > li.ubermenu-active > .ubermenu-target span {
  border-color: #fcc03c !important;
}
header nav.ubermenu-main .ubermenu-has-submenu-drop > .ubermenu-target {
  padding-right: 30px !important;
  transition: all 0.15s ease;
}
header nav.ubermenu-main .ubermenu-has-submenu-drop > .ubermenu-target > .ubermenu-sub-indicator {
  top: 18px !important;
  right: 11px !important;
  font-size: 1.3em;
  font-weight: 300 !important;
  color: #f4b221;
  transition: all 0.15s ease;
}
@media screen and (min-width: 1100px) {
  header nav.ubermenu-main .ubermenu-has-submenu-drop > .ubermenu-target > .ubermenu-sub-indicator {
    top: 23px !important;
    right: 9px !important;
  }
}
header nav.ubermenu-main > ul > li > .ubermenu-submenu {
  display: flex !important;
  justify-content: flex-end;
  border-top: 1px solid #ccc;
  background: #fff;
}
header nav.ubermenu-main > ul > li > .ubermenu-submenu > li.ubermenu-item {
  width: 809px;
  padding: 40px 100px 40px 0 !important;
}
@media screen and (min-width: 1100px) {
  header nav.ubermenu-main > ul > li > .ubermenu-submenu > li.ubermenu-item {
    width: 916px;
    padding: 40px 120px 40px 0 !important;
  }
}
@media screen and (min-width: 1200px) {
  header nav.ubermenu-main > ul > li > .ubermenu-submenu > li.ubermenu-item {
    width: 996px;
    padding: 40px 130px 40px 0 !important;
  }
}
header nav.ubermenu-main > ul > li > .ubermenu-submenu > li.ubermenu-item > a {
  margin-bottom: 5px;
  padding: 18px 0 !important;
  font-family: urw-din, sans-serif;
  font-weight: 300;
  font-size: 2.1em;
  color: #000;
  border-bottom: 2px solid #f4b221;
}
header nav.ubermenu-main > ul > li > .ubermenu-submenu > li.ubermenu-item > a:hover span {
  border-color: #fcc03c;
}
header nav.ubermenu-main > ul > li > .ubermenu-submenu > li.ubermenu-item > a span {
  border-bottom: 2px solid transparent;
  transition: all 0.15s ease;
}
header nav.ubermenu-main > ul > li > .ubermenu-submenu > li.ubermenu-item > .ubermenu-submenu {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 50px;
}
@media screen and (min-width: 1100px) {
  header nav.ubermenu-main > ul > li > .ubermenu-submenu > li.ubermenu-item > .ubermenu-submenu {
    grid-template-columns: 2fr 2fr 1fr;
  }
}
header nav.ubermenu-main > ul > li > .ubermenu-submenu > li.ubermenu-item > .ubermenu-submenu li {
  margin: 0 !important;
}
header nav.ubermenu-main > ul > li > .ubermenu-submenu > li.ubermenu-item > .ubermenu-submenu a {
  padding: 10px 0;
  font-weight: 400;
  font-size: 1.4em;
  color: #000;
}
header nav.ubermenu-main > ul > li > .ubermenu-submenu > li.ubermenu-item > .ubermenu-submenu a:hover span {
  border-color: #fcc03c;
}
header nav.ubermenu-main > ul > li > .ubermenu-submenu > li.ubermenu-item > .ubermenu-submenu a span {
  border-bottom: 2px solid transparent;
  transition: all 0.15s ease;
}
@media screen and (min-width: 1000px) {
  header #secondary-nav {
    position: absolute !important;
    top: -5px;
    right: 170px;
  }
}
@media screen and (min-width: 1200px) {
  header #secondary-nav {
    right: 230px;
  }
}
header #secondary-nav ul > li > .ubermenu-target {
  display: inline-block;
  box-sizing: border-box;
  padding: 25px 10px 0 10px !important;
  font-size: 0.8em;
  font-family: open-sans, sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  color: #000 !important;
  border-bottom: 1px solid transparent;
  transition: all 0.15s ease;
}
header #secondary-nav ul > li > .ubermenu-target:hover span {
  border-color: #000;
}
header #secondary-nav ul > li > .ubermenu-target:focus {
  outline: none;
}
header #secondary-nav ul > li > .ubermenu-target span {
  border-bottom: 1px solid transparent;
  transition: all 0.15s ease;
}
header #secondary-nav .nav-search {
  margin-right: 10px;
}
header #secondary-nav .nav-search .ubermenu-target {
  padding-top: 20px !important;
  font-size: 0.85em;
}
header #secondary-nav .nav-search .ubermenu-target i {
  display: block;
  margin-bottom: -1px;
}
header #secondary-nav .nav-search .ubermenu-target:hover {
  cursor: pointer !important;
}
header #secondary-nav .nav-search ul.ubermenu-submenu {
  min-width: 0 !important;
  margin: 15px 0 0 0 !important;
  padding: 0 !important;
  border: 1px solid #f4b221;
  box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.25) !important;
}
header #secondary-nav .nav-search ul.ubermenu-submenu .ubermenu-content-block {
  width: 650px;
}
@media screen and (min-width: 1100px) {
  header #secondary-nav .nav-search ul.ubermenu-submenu .ubermenu-content-block {
    width: 750px;
  }
}
@media screen and (min-width: 1200px) {
  header #secondary-nav .nav-search ul.ubermenu-submenu .ubermenu-content-block {
    width: 800px;
  }
}
header #secondary-nav .nav-search ul.ubermenu-submenu .ubermenu-content-block .ubermenu-search {
  width: 100% !important;
  padding: 0 0 0 20px !important;
  background: #fff !important;
}
header #secondary-nav .nav-search ul.ubermenu-submenu .ubermenu-content-block form {
  height: auto !important;
  background: none !important;
}
header #secondary-nav .nav-search ul.ubermenu-submenu .ubermenu-content-block form .ubermenu-search-input {
  max-width: none !important;
  padding: 30px 5px !important;
  font-size: 2em;
  font-family: open-sans, sans-serif !important;
  border: 0 !important;
}
header #secondary-nav .nav-search ul.ubermenu-submenu .ubermenu-content-block form .ubermenu-search-submit {
  width: 70px !important;
  font-size: 0.9em;
  transition: all 0.15s ease;
}
header #secondary-nav .nav-search ul.ubermenu-submenu .ubermenu-content-block form .ubermenu-search-submit:hover {
  color: #666;
}

body {
  -webkit-text-size-adjust: 100%;
  font-family: open-sans, sans-serif;
  font-weight: 400;
  color: #000;
}
@media screen and (min-width: 1000px) {
  body {
    font-weight: 300;
  }
}

main {
  position: relative;
  display: block;
  font-size: 1em;
}

.main-content-wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 30px 0;
}
@media screen and (min-width: 800px) {
  .main-content-wrap {
    padding: 50px 0;
  }
}
@media screen and (min-width: 1000px) {
  .main-content-wrap {
    padding: 50px;
  }
}
.main-content-wrap.no-sidebar.top-content-border {
  border-top: 1px solid #aaa;
}
@media screen and (min-width: 1000px) {
  .main-content-wrap.no-sidebar.top-content-border {
    border: 0;
  }
}
.main-content {
  padding-top: 0 !important;
}

@media screen and (min-width: 1000px) {
  .main-content.has-sidebar {
    display: grid;
    grid-template-columns: 1fr 3fr;
    grid-gap: 50px;
  }
  .main-content.has-sidebar .heads {
    text-align: left;
  }
  .main-content.has-sidebar .heads,
.main-content.has-sidebar .text-block,
.main-content.has-sidebar .tabs-wrap,
.main-content.has-sidebar .accordion-wrap,
.main-content.has-sidebar .personnel,
.main-content.has-sidebar .button-row {
    max-width: none;
  }
  .main-content.has-sidebar .cards .content {
    grid-gap: 30px;
  }
}
@media screen and (min-width: 1100px) {
  .main-content.has-sidebar {
    grid-gap: 65px;
  }
}

.main-content.no-sidebar {
  max-width: 1100px;
  margin: 0 auto;
}

article {
  padding: 0 20px 30px 20px;
}
@media screen and (min-width: 1000px) {
  article {
    padding: 0;
  }
}

#headroom {
  display: none;
}
@media screen and (min-width: 1000px) {
  #headroom {
    display: block;
    margin-top: 150px;
  }
}

/*  small screen fixed positioning for wp toolbar on front end
================================================================*/
@media only screen and (max-width: 680px) {
  html #wpadminbar {
    position: absolute !important;
    top: -46px !important;
    z-index: 90000 !important;
  }
}
.accordion-wrap {
  position: relative;
  max-width: 1100px;
  margin: 0 auto 30px auto;
}
.accordion-wrap:after {
  content: "";
  display: table;
  clear: both;
}
@media screen and (min-width: 1000px) {
  .accordion-wrap {
    margin: 0 auto 40px auto;
  }
}
.accordion-wrap .accordion-trigger {
  margin: 0 0 10px 0;
  padding: 20px 25px;
  color: #fff;
  font-family: urw-din, sans-serif;
  font-size: 1.3em;
  background: #105e30;
  cursor: pointer;
  transition: all 0.15s ease;
}
.accordion-wrap .accordion-trigger .ui-icon-triangle-1-e:after {
  display: inline-block;
  width: 10px;
  margin-right: 20px;
  font-family: "Font Awesome 5 Pro";
  content: "\f067";
  font-weight: 400;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  text-align: center;
}
.accordion-wrap .accordion-trigger .ui-icon-triangle-1-s:after {
  display: inline-block;
  width: 10px;
  margin-right: 20px;
  font-family: "Font Awesome 5 Pro";
  content: "\f068";
  font-weight: 400;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  text-align: center;
}
.accordion-wrap .accordion-trigger:hover {
  background: #14743b;
}
.accordion-wrap .accordion-trigger:focus {
  outline: none;
}
.accordion-wrap .accordion-panel {
  margin: -10px 0 10px 0;
  padding: 30px 20px 10px 20px;
  background: #fff;
  border: 1px solid #105e30;
  border-top: 0;
}
@media screen and (min-width: 1000px) {
  .accordion-wrap .accordion-panel {
    padding: 30px 30px 10px 30px;
  }
}
.accordion-wrap .accordion-panel .text-block {
  margin-bottom: 0;
}
.accordion-wrap .accordion-panel .button-row {
  margin-bottom: 0;
}

.alert-bar {
  font-size: 0.95em;
}
.alert-bar .content {
  max-width: 1000px;
  margin: 0 auto;
  padding: 12px 20px 2px 20px;
  text-align: center;
}
.alert-bar span {
  display: inline-block;
  margin: 0 10px 5px 0;
  line-height: 1.3em;
}
.alert-bar .button, .alert-bar input[type=submit] {
  margin: 0 0 10px 0;
  padding: 10px 20px 11px 20px;
}
@-moz-document url-prefix() {
  .alert-bar .button, .alert-bar input[type=submit] {
    padding-bottom: 7px !important;
  }
}
.alert-bar.red {
  background: #aaa;
  color: #fff;
}
.alert-bar.red .button, .alert-bar.red input[type=submit] {
  background: rgba(0, 0, 0, 0.3) !important;
}
.alert-bar.red .button:before, .alert-bar.red input[type=submit]:before {
  display: none !important;
}
.alert-bar.red .button:hover, .alert-bar.red input[type=submit]:hover {
  background: rgba(0, 0, 0, 0.2) !important;
}
.alert-bar.ivory {
  color: #000;
  background: #aaa;
}
@media screen and (min-width: 1000px) {
  .alert-bar.ivory {
    border-bottom: 1px solid #aaa;
  }
}
.alert-bar.ivory .button, .alert-bar.ivory input[type=submit] {
  background: #aaa;
}
.alert-bar.pale-blue {
  color: #000;
  background: #aaa;
}
.alert-bar.pale-blue .button, .alert-bar.pale-blue input[type=submit] {
  background: #000;
}

.banner {
  background: #105e30;
}
.banner .content {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (min-width: 1000px) {
  .banner .content {
    display: grid;
    grid-template-columns: 2fr 3fr;
  }
}
@media screen and (min-width: 1100px) {
  .banner .content {
    grid-template-columns: 1fr 2fr;
  }
}
.banner h1 {
  margin: 0;
  padding: 30px 20px;
  color: #fff;
  background: #105e30;
}
@media screen and (min-width: 1000px) {
  .banner h1 {
    justify-self: end;
    padding: 100px 50px;
    box-sizing: border-box;
  }
}
@media screen and (min-width: 1100px) {
  .banner h1 {
    max-width: 400px;
  }
}
.banner .banner-img-wrap {
  position: relative;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 100;
}
.banner .banner-img-wrap img {
  display: block;
  opacity: 0;
}
@media screen and (min-width: 1000px) {
  .banner .banner-img-wrap img {
    position: absolute;
  }
}

blockquote {
  margin: 0 auto;
  font-family: urw-din, sans-serif;
  font-weight: 300;
}
blockquote p {
  margin: 0;
  font-size: 1.3em;
}
@media screen and (min-width: 1000px) {
  blockquote p {
    font-size: 1.5em;
  }
}
blockquote .attribution {
  display: block;
  margin-top: 30px;
  font-weight: 600;
  font-size: 1.2em;
}
@media screen and (min-width: 1000px) {
  blockquote .attribution {
    font-size: 1.4em;
  }
}
blockquote .town {
  display: block;
  margin-top: 10px;
  font-weight: 600;
  text-transform: uppercase;
}

.comments-wrap {
  max-width: 800px;
  margin: 0 auto 50px auto;
  padding: 1px 30px;
  background: rgba(255, 255, 255, 0.75);
}

#respond {
  margin-top: 30px;
}
#respond h3#reply-title {
  margin: 0 0 10px 0;
  font-size: 2em;
}
#respond .comment-notes {
  font-style: italic;
  font-weight: 300;
  font-size: 0.9em;
  color: #666;
  line-height: 1.4em;
}
#respond span.required {
  font-size: 1.5em;
  color: red;
}
#respond .comment-form-cookies-consent input {
  margin-right: 4px;
}
#respond .comment-form-cookies-consent label {
  text-transform: none;
  font-weight: 400;
  font-size: 0.9em;
}
#respond #submit {
  margin-top: 20px;
}
#respond #submit:hover {
  background: #14743b;
}

#comments {
  margin: 0;
  font-size: 0.95em;
}
#comments p {
  margin: 0 0 10px 0;
}
#comments .comments-count {
  margin: 20px 0;
  font-size: 2em;
}
#comments #cancel-comment-reply-link {
  display: inline-block;
  margin-left: 10px;
  font-size: 0.5em;
  font-weight: 600;
  text-transform: uppercase;
  font-family: open-sans, sans-serif;
  color: #105e30;
}
#comments #cancel-comment-reply-link:hover {
  color: #14743b;
}

ol.commentlist {
  display: block;
  margin: 0 0 10px 0;
}
ol.commentlist li {
  margin: 0;
  padding: 20px 20px 0 0;
  list-style-type: none;
  border-top: 1px solid rgba(0, 0, 0, 0.1) !important;
}

ol.commentlist li.comment div.vcard {
  position: relative;
}
ol.commentlist li.comment div.vcard cite.fn {
  display: inline-block;
  font-style: normal;
  font-weight: 600;
  color: #000;
}
ol.commentlist li.comment div.vcard cite.fn a {
  font-weight: 600;
}
ol.commentlist li.comment div.vcard img.avatar {
  float: left;
  margin: 0 14px 10px 0;
}

ol.commentlist li.comment div.comment-meta {
  margin-bottom: 10px;
  font-size: 0.9em;
}
ol.commentlist li.comment div.comment-meta a {
  color: #777 !important;
  font-weight: normal;
}

ol.commentlist li.comment div.reply a {
  display: inline-block;
  margin: 10px 0 20px 0;
  padding: 3px 10px;
  font-weight: 400;
  text-transform: uppercase;
  font-size: 0.75em;
  letter-spacing: 0.04em;
  color: #fff;
  background: #105e30;
  border-radius: 6px;
}
ol.commentlist li.comment div.reply a:hover {
  background: #14743b;
}
ol.commentlist li.comment div.reply a:after {
  display: inline-block;
  content: " ↑";
  margin: 0 0 0 5px;
}

ol.commentlist li.comment ul.children {
  display: block;
  list-style: none;
  padding: 0 !important;
  margin: 0 0 0 20px !important;
}
ol.commentlist li.comment ul.children li {
  border: 0;
}
ol.commentlist li.comment ul.children li.bypostauthor {
  padding: 20px 20px 0 20px;
}

#crumbs-wrap {
  display: none;
}
@media screen and (min-width: 1000px) {
  #crumbs-wrap {
    display: block;
    margin: 0 0 5px 0;
    padding: 15px 0;
    background: rgba(0, 0, 0, 0.05);
  }
}
#crumbs-wrap #crumbs {
  display: block;
  max-width: 1250px;
  margin: 0 auto;
  padding-left: 50px;
  color: #777;
}
#crumbs-wrap #crumbs a {
  display: inline-block;
  position: relative;
  font-size: 0.8em;
  text-transform: uppercase;
  font-weight: 600;
  color: #777;
}
#crumbs-wrap #crumbs a:hover {
  text-decoration: underline;
}
#crumbs-wrap #crumbs span {
  display: inline-block;
  margin: 0 13px;
  font-size: 0.9em;
}
#crumbs-wrap.no-sidebar #crumbs {
  max-width: 1150px;
}
.button-row {
  display: flex;
  flex-wrap: wrap;
  max-width: 1100px;
  margin: 0 auto 40px auto;
}
@media screen and (min-width: 1000px) {
  .button-row {
    margin: 0 auto 50px auto;
  }
}
.button-row.buttons-center {
  justify-content: center;
}
.button-row.buttons-center .button, .button-row.buttons-center input[type=submit] {
  margin: 0 10px 20px 10px;
}
.button-row .button, .button-row input[type=submit] {
  margin: 0 20px 20px 0;
}

.button, input[type=submit],
input.button,
input.button[type=submit],
#submit {
  position: relative;
  display: inline-block;
  margin: 0 10px 20px 0;
  padding: 15px 35px;
  text-align: center;
  color: #fff !important;
  font-weight: 600;
  text-decoration: none !important;
  font-family: urw-din-condensed, sans-serif;
  font-size: 1.2em;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  background: #105e30;
  cursor: pointer;
  transition: all 0.15s ease;
}
@media screen and (min-width: 1000px) {
  .button, input[type=submit],
input.button,
input.button[type=submit],
#submit {
    padding: 15px 45px;
  }
}
.button:hover, input[type=submit]:hover,
input.button:hover,
input.button[type=submit]:hover,
#submit:hover {
  background: #14743b;
}
.button.button-green, input.button-green[type=submit],
input.button.button-green,
input.button[type=submit].button-green,
#submit.button-green {
  color: #fff !important;
  background: #105e30;
}
.button.button-green:hover, input.button-green[type=submit]:hover,
input.button.button-green:hover,
input.button[type=submit].button-green:hover,
#submit.button-green:hover {
  background: #14743b;
}
.button.button-yellow, input.button-yellow[type=submit],
input.button.button-yellow,
input.button[type=submit].button-yellow,
#submit.button-yellow {
  color: #000 !important;
  background: #f4b221;
}
.button.button-yellow:hover, input.button-yellow[type=submit]:hover,
input.button.button-yellow:hover,
input.button[type=submit].button-yellow:hover,
#submit.button-yellow:hover {
  background: #fcc03c;
}
.button.button-width-wide, input.button-width-wide[type=submit],
input.button.button-width-wide,
input.button[type=submit].button-width-wide,
#submit.button-width-wide {
  padding-right: 70px;
  padding-left: 70px;
}
.button.button-width-extra-wide, input.button-width-extra-wide[type=submit],
input.button.button-width-extra-wide,
input.button[type=submit].button-width-extra-wide,
#submit.button-width-extra-wide {
  padding-right: 70px;
  padding-left: 70px;
}
@media screen and (min-width: 650px) {
  .button.button-width-extra-wide, input.button-width-extra-wide[type=submit],
input.button.button-width-extra-wide,
input.button[type=submit].button-width-extra-wide,
#submit.button-width-extra-wide {
    padding-right: 150px;
    padding-left: 150px;
  }
}

.cards {
  margin: 0 auto 30px 0;
  padding: 0 20px;
}
@media screen and (min-width: 650px) {
  .cards {
    padding: 0 30px;
  }
}
@media screen and (min-width: 1000px) {
  .cards {
    margin: 40px 0 50px 0;
    padding: 0 50px;
  }
}
.cards .content {
  display: grid;
  grid-gap: 30px;
  max-width: 1300px;
  margin: 0 auto 40px auto;
}
@media screen and (min-width: 650px) {
  .cards .content {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (min-width: 1000px) {
  .cards .content {
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 25px;
  }
}
@media screen and (min-width: 1200px) {
  .cards .content {
    grid-gap: 40px;
  }
}
.cards .card {
  display: block;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.05);
}
@media screen and (min-width: 1000px) {
  .cards .card:hover img {
    opacity: 0.85;
  }
}
.cards .card img {
  display: block;
  margin-bottom: 1px;
  transition: all 0.15s ease;
}
.cards .card .card-content {
  padding: 25px 30px 35px 30px;
  font-weight: 400;
  color: #fff;
  background: #14743b;
}
@media screen and (min-width: 1000px) {
  .cards .card .card-content {
    font-weight: 300;
  }
}
.cards .card .card-content h2 {
  font-family: urw-din, sans-serif;
  font-weight: 700;
  font-size: 1.5em;
}
.cards .card .card-content p {
  margin: 0;
  opacity: 0.85;
}
.cards .card .card-content .button, .cards .card .card-content input[type=submit] {
  margin: 25px 0 0 0;
}

@media screen and (min-width: 1000px) {
  .has-sidebar .cards .content {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (min-width: 1100px) {
  .has-sidebar .cards .content {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media screen and (min-width: 650px) {
  .cards-horiz .content {
    grid-template: auto/1fr !important;
  }
}
@media screen and (min-width: 650px) {
  .cards-horiz .card {
    display: grid;
    grid-template: auto/4fr 5fr;
    grid-gap: 0;
  }
}
.cards-horiz .card .horiz-card-img-wrap {
  background-size: 0;
  transition: all 0.15s ease;
}
@media screen and (min-width: 650px) {
  .cards-horiz .card .horiz-card-img-wrap {
    position: relative;
    min-height: 220px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    border-right: 1px solid rgba(255, 255, 255, 0.7) !important;
  }
}
@media screen and (min-width: 650px) {
  .cards-horiz .card .horiz-card-img-wrap img {
    position: absolute;
    opacity: 0;
    margin: 0;
  }
}
@media screen and (min-width: 1000px) {
  .cards-horiz .card:hover .horiz-card-img-wrap {
    opacity: 0.85;
  }
}
@media screen and (min-width: 650px) {
  .cards-horiz .card .content {
    padding-left: 0;
  }
}

article .cards {
  padding: 0;
}

.checkerboard {
  margin: 0 auto 30px 0;
}
@media screen and (min-width: 800px) {
  .checkerboard {
    margin: 0 auto 40px auto;
  }
}
.checkerboard .checkerboard-content {
  max-width: 1300px;
  margin: 0 auto;
}
.checkerboard .cb-row {
  position: relative;
  overflow: hidden;
  margin-top: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.05);
}
.checkerboard .cb-img-wrap {
  display: block;
  height: 250px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  overflow: hidden;
}
@media screen and (min-width: 450px) {
  .checkerboard .cb-img-wrap {
    height: 300px;
  }
}
@media screen and (min-width: 550px) {
  .checkerboard .cb-img-wrap {
    height: 350px;
  }
}
@media screen and (min-width: 650px) {
  .checkerboard .cb-img-wrap {
    height: 400px;
  }
}
@media screen and (min-width: 800px) {
  .checkerboard .cb-img-wrap {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 50%;
    height: 100%;
    z-index: 10;
  }
}
.checkerboard .cb-img-wrap img {
  opacity: 0;
}
@media screen and (min-width: 1000px) {
  .checkerboard a.cb-img-wrap:hover {
    opacity: 0.85;
  }
}
@media screen and (min-width: 800px) {
  .checkerboard .cb-text-wrap {
    position: relative;
    width: 50%;
    margin: 0 0 0 50%;
  }
}
.checkerboard .cb-text-wrap .content {
  margin: 0 auto;
  padding: 35px 30px 45px 30px;
  background: #fff;
}
@media screen and (min-width: 650px) {
  .checkerboard .cb-text-wrap .content {
    padding: 40px 40px 50px 40px;
  }
}
@media screen and (min-width: 800px) {
  .checkerboard .cb-text-wrap .content {
    padding: 50px 30px 60px 30px;
  }
}
@media screen and (min-width: 1100px) {
  .checkerboard .cb-text-wrap .content {
    padding: 50px 50px 60px 50px;
  }
}
@media screen and (min-width: 1300px) {
  .checkerboard .cb-text-wrap .content {
    padding: 50px 60px 60px 60px;
  }
}
.checkerboard .cb-text-wrap .content h2 {
  color: #000;
  font-family: urw-din, sans-serif;
  font-weight: 700;
}
.checkerboard .cb-text-wrap .content p {
  margin: 0;
  color: #777;
}
.checkerboard .cb-text-wrap .content .button, .checkerboard .cb-text-wrap .content input[type=submit] {
  margin: 25px 0 0 0;
}
@media screen and (min-width: 800px) {
  .checkerboard .cb-img-right .cb-img-wrap {
    margin-left: 50%;
  }
  .checkerboard .cb-img-right .cb-text-wrap {
    margin-left: 0;
  }
}

.columns {
  margin: 0 auto 50px 0;
}
@media screen and (min-width: 800px) {
  .columns {
    display: grid;
    grid-gap: 50px;
    margin: 0 auto 60px auto;
  }
}
@media screen and (min-width: 1000px) {
  .columns {
    grid-gap: 90px;
  }
}
@media screen and (min-width: 800px) {
  .columns.halves {
    grid-template: auto/1fr 1fr;
  }
}
@media screen and (min-width: 800px) {
  .columns.two-thirds-one-third {
    grid-template: auto/2fr 1fr;
  }
}
@media screen and (min-width: 800px) {
  .columns.one-third-two-thirds {
    grid-template: auto/1fr 2fr;
  }
}
@media screen and (min-width: 800px) {
  .columns.thirds {
    grid-template: auto/1fr 1fr 1fr;
  }
}
.columns.highlight {
  padding: 30px;
}
@media screen and (min-width: 800px) {
  .columns .column > *:last-child {
    margin-bottom: 0;
  }
}
.columns .text-block p:last-child {
  margin-bottom: 0;
}
.columns .column-img {
  display: block;
  margin: 0 0 30px 0;
  border: 0;
}
.columns .column-img img {
  display: block;
}
.columns .button-row-horiz:last-child .button:last-of-type, .columns .button-row-horiz:last-child input[type=submit]:last-of-type {
  margin-bottom: 0;
}

input[type=text],
input[type=email],
input[type=password],
textarea {
  display: block;
  width: 100%;
  max-width: 300px;
  box-sizing: border-box;
  padding: 5px 10px;
  font-family: open-sans, sans-serif;
  font-size: 1.1em;
  color: #000;
  background: rgba(255, 255, 255, 0.45) !important;
  border: 1px solid #ccc !important;
  border-radius: 6px !important;
}

textarea {
  max-width: 600px;
}

label {
  margin: 0 0 7px 0;
  font-size: 0.8em;
  text-transform: uppercase;
  font-weight: 700;
}

.post-password-form {
  max-width: 450px;
  margin: 0 auto;
  padding: 30px;
}
.post-password-form input[type=password] {
  margin-bottom: 10px;
  padding: 15px 10px;
}

.wpforms-container {
  max-width: 800px !important;
  margin: 30px auto;
}
@media screen and (min-width: 1000px) {
  .wpforms-container {
    margin: 40px auto;
  }
}

.wpforms-field {
  margin: 0 0 10px 0;
}

.wpforms-field-container input[type=text].wpforms-field-medium,
.wpforms-field-container input[type=email].wpforms-field-medium,
.wpforms-field-container textarea {
  position: relative;
  display: block;
  width: 100% !important;
  max-width: 410px !important;
  box-sizing: border-box !important;
  padding: 10px 15px !important;
  font-family: open-sans, sans-serif !important;
  font-size: 1.1em !important;
  color: #000 !important;
  background: rgba(255, 255, 255, 0.45) !important;
  border: 1px solid #ccc !important;
  border-radius: 6px !important;
}
.wpforms-field-container textarea {
  max-width: none !important;
}
@media screen and (max-width: 450px) {
  .wpforms-field-container .wpforms-one-half {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
  }
}
.wpforms-field-container .wpforms-field-textarea {
  clear: both !important;
}
.wpforms-field-container label {
  margin: 0 0 7px 0;
  font-size: 0.8em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
}
.wpforms-field-container .wpforms-field-checkbox ul li,
.wpforms-field-container .wpforms-field-radio ul li {
  margin: 0 0 5px 0;
}
.wpforms-field-container .wpforms-field-checkbox ul li label,
.wpforms-field-container .wpforms-field-radio ul li label {
  font-size: 1em !important;
  text-transform: none !important;
  font-weight: 400 !important;
}
.wpforms-field-container .wpforms-field-number-slider input {
  height: 7px !important;
  margin: 15px 0 10px 0 !important;
  background: #ccc !important;
  border-radius: 100px !important;
  font-size: 1em !important;
}
.wpforms-field-container .wpforms-field-number-slider .wpforms-field-number-slider-hint {
  text-transform: uppercase !important;
}

.wpforms-container .wpforms-recaptcha-container {
  padding: 20px 0 10px 0 !important;
}

button.wpforms-submit.button {
  margin-top: 10px !important;
}

.wpforms-confirmation-container {
  max-width: 450px !important;
  margin: 30px auto;
  padding: 20px 30px 23px 30px !important;
  text-align: center !important;
  font-weight: 600;
  font-size: 1.2em;
  color: #fff !important;
  background: #aaa !important;
  border: 0 !important;
  border-radius: 3px !important;
}
.wpforms-confirmation-container p:last-of-type {
  margin: 0;
}

select .chosen-single,
.chosen-container-single .chosen-single {
  height: 40px !important;
  padding: 8px 15px !important;
  font-size: 1.15em !important;
  font-weight: 400 !important;
  color: #000 !important;
  background: #fff !important;
  border: 1px solid #ccc !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}
select .chosen-single div,
.chosen-container-single .chosen-single div {
  top: 4px !important;
  right: 7px !important;
}
select .chosen-single div b,
.chosen-container-single .chosen-single div b {
  background: none !important;
}
select .chosen-single div b:before,
.chosen-container-single .chosen-single div b:before {
  content: "\f0dd";
  font-family: FontAwesome;
  font-size: 0.9em;
}
select .chosen-drop,
.chosen-container-single .chosen-drop {
  max-width: 410px !important;
  font-size: 1.1em !important;
  border: 0 !important;
}
select .chosen-drop .chosen-search,
.chosen-container-single .chosen-drop .chosen-search {
  background: #fff !important;
}
select .chosen-drop ul.chosen-results,
.chosen-container-single .chosen-drop ul.chosen-results {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  border-radius: 0 0 6px 6px !important;
}
select .chosen-drop ul.chosen-results li,
.chosen-container-single .chosen-drop ul.chosen-results li {
  padding: 7px 15px !important;
}
select .chosen-drop ul.chosen-results li.highlighted, select .chosen-drop ul.chosen-results li:hover,
.chosen-container-single .chosen-drop ul.chosen-results li.highlighted,
.chosen-container-single .chosen-drop ul.chosen-results li:hover {
  background: #14743b;
}

.grid-wrap {
  margin: 0 auto 40px auto;
  box-sizing: border-box;
}
@media screen and (min-width: 1000px) {
  .grid-wrap {
    margin: 0 auto 50px auto;
  }
}
.grid-wrap .grid-content {
  color: #000;
}
.grid-wrap .grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 30px;
}
@media screen and (min-width: 575px) {
  .grid-wrap .grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media screen and (min-width: 800px) {
  .grid-wrap .grid {
    grid-gap: 50px;
  }
}
@media screen and (min-width: 1000px) {
  .grid-wrap .grid {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
.grid-wrap .grid .grid-item {
  display: block;
  box-sizing: border-box;
  font-size: 0.95em;
  line-height: 1.05em;
  text-align: center;
  text-decoration: none;
  color: #000;
}
.grid-wrap .grid .grid-item img {
  display: block;
  transition: all 0.15s ease;
}
.grid-wrap .grid .grid-item h4 {
  margin: 0;
  font-size: 1.25em !important;
  color: #000;
}
.grid-wrap .grid .grid-item em {
  font-weight: 400;
  font-size: 1em;
}
.grid-wrap .grid.img-grid.round img {
  border-radius: 50%;
}
.grid-wrap .grid.img-grid a.grid-item:hover img {
  opacity: 0.9;
}
.grid-wrap .grid.img-grid a.grid-item:hover h4 {
  color: #000;
}
.grid-wrap .grid.img-grid img {
  margin-bottom: 15px;
}
.grid-wrap .grid.logo-grid {
  align-items: center;
}
.grid-wrap .grid.logo-grid img {
  max-width: 100% !important;
  width: auto !important;
  margin: 0 auto;
}

.hero-split-screen {
  background: #666;
}
@media screen and (min-width: 1000px) {
  .hero-split-screen.text-left .content .text-wrap {
    grid-row-start: 1;
    justify-content: flex-end;
  }
}
@media screen and (min-width: 1000px) {
  .hero-split-screen.text-left .content .text-wrap .text-content {
    max-width: 530px;
    margin-right: 40px;
    margin-left: 30px;
  }
}
@media screen and (min-width: 1100px) {
  .hero-split-screen.text-left .content .text-wrap .text-content {
    margin-left: 50px;
  }
}
@media screen and (min-width: 1300px) {
  .hero-split-screen.text-left .content .text-wrap .text-content {
    margin-right: 60px;
  }
}
.hero-split-screen .content {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 0;
  max-width: 1500px;
  margin: 0 auto;
  background: #fff;
}
@media screen and (min-width: 1000px) {
  .hero-split-screen .content {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (min-width: 1000px) {
  .hero-split-screen .content.has-notification-bar .text-wrap .text-content {
    margin-top: 220px;
  }
}
@media screen and (min-width: 1300px) {
  .hero-split-screen .content.has-notification-bar .text-wrap .text-content {
    margin-top: 250px;
  }
}
.hero-split-screen .content .img-wrap {
  display: flex;
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  width: 100%;
  height: 225px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1000;
}
@media screen and (min-width: 450px) {
  .hero-split-screen .content .img-wrap {
    height: 300px;
  }
}
@media screen and (min-width: 650px) {
  .hero-split-screen .content .img-wrap {
    height: 400px;
  }
}
@media screen and (min-width: 1000px) {
  .hero-split-screen .content .img-wrap {
    height: auto;
    border: 0;
  }
}
.hero-split-screen .content .img-wrap img {
  position: absolute;
  opacity: 0;
}
.hero-split-screen .content .text-wrap {
  margin: 0 auto;
  padding: 35px 30px 45px 30px;
  font-weight: 400;
}
@media screen and (min-width: 800px) {
  .hero-split-screen .content .text-wrap {
    padding: 50px 40px;
  }
}
@media screen and (min-width: 1000px) {
  .hero-split-screen .content .text-wrap {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
  }
}
@media screen and (min-width: 1300px) {
  .hero-split-screen .content .text-wrap {
    font-size: 1.05em;
  }
}
.hero-split-screen .content .text-wrap .text-content {
  max-width: 650px;
}
@media screen and (min-width: 1000px) {
  .hero-split-screen .content .text-wrap .text-content {
    max-width: 570px;
    margin: 140px 50px 160px 50px;
  }
}
@media screen and (min-width: 1100px) {
  .hero-split-screen .content .text-wrap .text-content {
    margin: 165px 70px 195px 70px;
  }
}
@media screen and (min-width: 1300px) {
  .hero-split-screen .content .text-wrap .text-content {
    margin: 180px 70px 220px 70px;
  }
}
.hero-split-screen .content .text-wrap h1 {
  margin: 0;
}
.hero-split-screen .content .text-wrap h2 {
  margin: 20px 0 0 0;
  font-weight: 600;
}
.hero-split-screen .content .text-wrap p {
  margin: 20px 0 0 0;
  color: #777;
}
@media screen and (min-width: 1300px) {
  .hero-split-screen .content .text-wrap p {
    font-size: 1.1em;
  }
}
.hero-split-screen .content .text-wrap .button, .hero-split-screen .content .text-wrap input[type=submit] {
  margin: 30px 0 0 0;
}

.img-gallery-wrap {
  margin: 0 auto 30px auto;
}
@media screen and (min-width: 650px) {
  .img-gallery-wrap {
    margin: 0 auto 40px auto;
  }
}
.img-gallery-wrap h2 {
  position: relative;
  margin: 0 0 1px 0;
  padding: 20px;
  font-size: 1.7em;
  font-weight: 800;
  text-align: center;
  color: #fff;
  background: #666;
  border-radius: 20px 20px 0 0;
  z-index: 10;
}
@media screen and (min-width: 1000px) {
  .img-gallery-wrap h2 {
    font-size: 2em !important;
  }
}

.img-gallery-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 1px;
}
@media screen and (min-width: 800px) {
  .img-gallery-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.img-gallery-grid .img-gallery-item {
  position: relative;
}
.img-gallery-grid .img-gallery-item img {
  display: block;
}
.img-gallery-grid .img-gallery-item span.img-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-weight: 500;
  color: #fff;
  text-shadow: 1px 1px 0 #000;
  z-index: 1000;
  transition: all 0.15s ease;
  opacity: 0;
}
.img-gallery-grid .img-gallery-item span.img-text i {
  display: block;
  font-size: 1.5em;
}
@media screen and (min-width: 575px) {
  .img-gallery-grid .img-gallery-item span.img-text i {
    font-size: 1.75em;
  }
}
@media screen and (min-width: 800px) {
  .img-gallery-grid .img-gallery-item span.img-text i {
    font-size: 2em;
  }
}
.img-gallery-grid .img-gallery-item span.img-text p {
  box-sizing: border-box;
  max-width: 100%;
  text-align: center;
  margin: 10px 0 0 0;
  padding: 0 10px;
  line-height: 1.4em;
  font-size: 0.7em;
  word-wrap: break-word !important;
}
@media screen and (min-width: 575px) {
  .img-gallery-grid .img-gallery-item span.img-text p {
    padding: 0 20px;
    font-size: 0.85em;
  }
}
@media screen and (min-width: 800px) {
  .img-gallery-grid .img-gallery-item span.img-text p {
    font-size: 0.95em;
  }
}
.img-gallery-grid .img-gallery-item:hover span.img-text {
  opacity: 1;
}
.img-gallery-grid .img-gallery-item span.overlay {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  z-index: 100;
  transition: all 0.15s ease;
  opacity: 0;
}
.img-gallery-grid .img-gallery-item:hover span.overlay {
  opacity: 1;
}

#slb_viewer_wrap .slb_theme_slb_default .slb_data_desc {
  display: none !important;
}

.img-rows {
  margin: 0 auto 40px auto;
}
@media screen and (min-width: 650px) {
  .img-rows {
    margin: 0 auto 50px auto;
  }
}
.img-rows .img-row {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 5px;
}
@media screen and (min-width: 800px) {
  .img-rows .img-row {
    margin-bottom: 15px;
  }
}
.img-rows .img-row img {
  display: block;
}
.img-rows .img-row .full {
  display: grid;
  grid-template: auto/1fr;
}
.img-rows .img-row .two-thirds-one-third {
  display: grid;
  grid-template: auto/2fr 1fr;
}
.img-rows .img-row .one-third-two-thirds {
  display: grid;
  grid-template: auto/1fr 2fr;
}
.img-rows .img-row .halves {
  display: grid;
  grid-template: auto/1fr 1fr;
}
.img-rows .img-row .thirds {
  display: grid;
  grid-template: auto/1fr 1fr 1fr;
}
.img-rows .img-row .thirds,
.img-rows .img-row .two-thirds-one-third,
.img-rows .img-row .one-third-two-thirds,
.img-rows .img-row .halves,
.img-rows .img-row .thirds {
  grid-gap: 0 5px;
}
@media screen and (min-width: 800px) {
  .img-rows .img-row .thirds,
.img-rows .img-row .two-thirds-one-third,
.img-rows .img-row .one-third-two-thirds,
.img-rows .img-row .halves,
.img-rows .img-row .thirds {
    grid-gap: 0 15px;
  }
}
.img-rows a {
  position: relative;
}
.img-rows a span.img-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-weight: 500;
  color: #fff;
  text-shadow: 1px 1px 0 #000;
  z-index: 1000;
  transition: all 0.15s ease;
  opacity: 0;
}
.img-rows a span.img-text i {
  display: block;
  font-size: 1.5em;
}
@media screen and (min-width: 575px) {
  .img-rows a span.img-text i {
    font-size: 1.75em;
  }
}
@media screen and (min-width: 800px) {
  .img-rows a span.img-text i {
    font-size: 2em;
  }
}
.img-rows a span.img-text p {
  box-sizing: border-box;
  max-width: 100%;
  text-align: center;
  margin: 10px 0 0 0;
  padding: 0 10px;
  line-height: 1.4em;
  font-size: 0.7em;
  word-wrap: break-word !important;
}
@media screen and (min-width: 575px) {
  .img-rows a span.img-text p {
    padding: 0 20px;
    font-size: 0.85em;
  }
}
@media screen and (min-width: 800px) {
  .img-rows a span.img-text p {
    font-size: 0.95em;
  }
}
.img-rows a:hover span.img-text {
  opacity: 1;
}
.img-rows a span.overlay {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  z-index: 100;
  transition: all 0.15s ease;
  opacity: 0;
}
.img-rows a:hover span.overlay {
  opacity: 1;
}

/*  images
==================================================*/
img,
.alignleft,
.alignright,
.aligncenter,
.alignnone,
.wp-caption,
.img-link {
  max-width: 100%;
  height: auto;
  box-sizing: border-box;
}

.alignleft {
  display: block;
  margin: 5px 0 20px 0;
}
@media screen and (min-width: 450px) {
  .alignleft {
    float: left;
    max-width: 50%;
    margin: 5px 30px 10px 0;
  }
}

.alignright {
  display: block;
  margin: 5px 0 20px 0;
}
@media screen and (min-width: 450px) {
  .alignright {
    float: right;
    max-width: 50%;
    margin: 5px 0 10px 30px;
  }
}

.aligncenter {
  display: block;
  margin: 0 auto 20px auto;
}

.alignnone {
  display: block;
  margin: 0 0;
}

span.texture-overlay {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(images/img-texture.png);
  z-index: 1;
}

.wp-caption {
  margin-bottom: 25px !important;
}

.wp-caption img {
  max-width: 100%;
}

p.wp-caption-text {
  margin: 2px 0 0 0;
  font-size: 0.8em;
  text-align: center;
  line-height: 1.4em;
  color: #000;
}

aside .alignleft,
aside .alignright,
aside .aligncenter,
aside .alignnone,
aside .wp-caption,
aside .img-link {
  margin-bottom: 40px;
}

/*  Lightbox
==================================================*/
#slb_viewer_wrap .slb_theme_slb_baseline {
  top: 60px !important;
}
@media screen and (min-width: 481px) {
  #slb_viewer_wrap .slb_theme_slb_baseline {
    top: 0 !important;
  }
}

#slb_viewer_wrap .slb_theme_slb_baseline .slb_container {
  padding-bottom: 8px !important;
}

#slb_viewer_wrap .slb_theme_slb_default .slb_data_title,
#slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
  margin-top: 12px;
  font-family: inherit !important;
  font-size: 1.3em !important;
}

#slb_viewer_wrap .slb_theme_slb_default .slb_data_title {
  margin-right: 0.5em !important;
  font-weight: 600;
}

#slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
  font-weight: 300;
}

/*  vids & iframes
==================================================*/
/*video (fitvids plugin)*/
.fluid-width-video-wrapper {
  clear: both;
  margin: 40px 0;
}

.embed-container {
  clear: both;
  position: relative;
  margin: 25px 0;
  padding-bottom: 60%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.embed-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.list-columns {
  max-width: 1100px;
  margin: 0 auto 30px auto;
}
@media screen and (min-width: 800px) {
  .list-columns {
    display: flex;
    justify-content: center;
    margin: 0 auto 40px auto;
  }
}
.list-columns .list-column {
  max-width: 375px;
  margin: 0 20px !important;
}
@media screen and (min-width: 800px) {
  .list-columns ul {
    margin-bottom: 0;
  }
}
.list-columns h4 {
  font-size: 1.1em;
}

.icon-list {
  margin: 60px 0;
}
.icon-list .content {
  max-width: 1100px;
  margin: 0 auto;
}
.icon-list .icon-list-item {
  margin: 0 0 40px 0;
}
@media screen and (min-width: 650px) {
  .icon-list .icon-list-item {
    display: grid;
    grid-template-columns: 150px auto;
    grid-gap: 30px;
  }
}
@media screen and (min-width: 1000px) {
  .icon-list .icon-list-item {
    grid-gap: 50px;
  }
}
@media screen and (min-width: 1100px) {
  .icon-list .icon-list-item {
    padding-right: 60px;
  }
}
.icon-list .icon-list-item img {
  display: block;
  float: left;
  margin: 0 20px 10px 0;
  width: 100px;
}
@media screen and (min-width: 650px) {
  .icon-list .icon-list-item img {
    float: none;
    margin: 0;
    width: 150px;
  }
}
@media screen and (min-width: 650px) {
  .icon-list .icon-list-item .button-row {
    margin-bottom: 10px;
  }
}
.icon-list .icon-list-item .button-row .button, .icon-list .icon-list-item .button-row input[type=submit] {
  margin-bottom: 0;
}

.modal {
  max-width: 800px !important;
  margin: 0 0 30px 0;
  padding: 50px 20px !important;
  font-family: urw-din, sans-serif;
}
@media screen and (min-width: 575px) {
  .modal {
    padding: 50px !important;
  }
}
@media screen and (min-width: 800px) {
  .modal {
    padding: 50px 150px !important;
  }
}
.modal p {
  line-height: 1.2em;
}
.modal strong {
  font-weight: 600;
}

.close-modal,
.close-modal-bottom {
  display: block;
  background: none !important;
  text-indent: -9999px !important;
}
.close-modal:after,
.close-modal-bottom:after {
  position: absolute !important;
  top: 0;
  right: 0;
  display: block !important;
  content: "\f057" !important;
  font-family: FontAwesome !important;
  font-size: 1.8em;
  color: #aaa;
  text-indent: 0 !important;
  transition: all 0.15s ease;
}
.close-modal:hover:after,
.close-modal-bottom:hover:after {
  color: #666;
}

.close-modal {
  top: 15px !important;
  right: 15px !important;
}

.close-modal-bottom {
  position: absolute;
  right: 15px !important;
  bottom: 30px !important;
}

.pagination {
  max-width: 1300px;
  margin: 0 auto;
  font-size: 0.9em;
}

.wp-pagenavi {
  margin: 0 auto;
  color: #000;
}
.wp-pagenavi .pages {
  margin-right: 10px;
  padding-left: 0;
  font-weight: 300;
}
.wp-pagenavi span, .wp-pagenavi a {
  display: inline-block;
  margin: 2px 2px 2px 0;
  padding: 6px 9px 5px 9px;
  width: auto;
  font-weight: 600;
  color: #000;
  border-radius: 3px;
  border: 0;
}
.wp-pagenavi a:hover {
  background: #ccc;
  color: #000;
}
.wp-pagenavi .current {
  padding: 6px 9px 5px 9px;
  background: #aaa;
  color: #fff;
}

.personnel {
  max-width: 800px;
  margin: 0 auto 30px auto;
}
.personnel:after {
  content: "";
  display: table;
  clear: both;
}
.personnel img {
  display: block;
  float: left;
  width: 35%;
  margin: 2px 20px 10px 0;
}
@media screen and (min-width: 650px) {
  .personnel img {
    width: auto;
    margin: 7px 30px 15px 0;
  }
}
.personnel h2 {
  margin: 0 0 10px 0;
}
.personnel h3 {
  margin: 0 0 20px 0;
  font-size: 1.05em;
  font-style: italic;
  font-weight: 600;
  font-family: open-sans, sans-serif;
  color: #000;
}

.faq {
  margin: 0 auto 30px auto;
  max-width: 800px;
}
@media screen and (min-width: 1000px) {
  .faq {
    margin: 0 auto 40px auto;
  }
}
.faq .faq-questions-wrap {
  margin-bottom: 25px;
  border-bottom: 1px solid #aaa;
}
.faq h3 {
  margin: 0 0 20px 0;
  font-size: 1.3em;
}
@media screen and (min-width: 1000px) {
  .faq h3 {
    font-size: 1.5em;
  }
}
.faq ol.faq-questions {
  margin: 20px 0 0 20px;
  padding: 0 0 15px 0;
}
.faq ol.faq-questions > li {
  margin: 0 0 15px 0 !important;
  font-weight: 400;
  color: #000;
}
.faq ol.faq-questions > li a {
  font-weight: 400;
  color: #000;
}
.faq ol.faq-questions > li a:hover {
  text-decoration: underline;
}
.faq ol.faq-answers {
  margin: 0;
  counter-reset: h4;
}
.faq ol.faq-answers > li {
  margin: 0 0 25px 0;
  position: relative;
  list-style-type: none;
}
.faq ol.faq-answers > li h4 {
  margin: 0 0 18px 0;
  font-size: 1.1em;
  font-family: open-sans, sans-serif;
  font-weight: 600;
}
@media screen and (min-width: 1000px) {
  .faq ol.faq-answers > li h4 {
    font-size: 1.4em;
  }
}
.faq ol.faq-answers > li h4.faq-question:before {
  content: counter(h4) ". ";
  counter-increment: h4;
}
.faq ol.faq-answers a.faq-top {
  display: inline-block;
  margin: 0 0 30px 0;
  padding: 4px 7px 3px 7px;
  font-size: 0.65em;
  text-transform: uppercase;
  font-weight: 400;
  color: #fff;
  background: #105e30;
  border-radius: 5px;
}
.faq ol.faq-answers a.faq-top:before {
  display: inline-block;
  padding-right: 3px;
  font-family: FontAwesome;
  content: "\f0aa";
  font-weight: 400;
}

table {
  width: 100%;
  margin: 0 auto 30px 0;
  font-size: 0.9em;
  background: #f5f5f5;
  border-collapse: collapse;
  border: 1px solid rgba(0, 0, 0, 0.1);
}
table thead,
table tfoot {
  vertical-align: top;
  font-weight: 600;
  color: #fff;
  background: #105e30 !important;
  border: 0;
}
table tr {
  border: 0;
}
@media screen and (max-width: 649px) {
  table tr {
    border-bottom: 1px solid #f5f5f5;
  }
}
table tr:nth-of-type(2n+2) {
  background: #fff;
}
table td, table th {
  vertical-align: top;
}
@media screen and (min-width: 650px) {
  table td, table th {
    padding: 15px 25px !important;
  }
}
table td {
  width: auto !important;
}
@media screen and (max-width: 649px) {
  table td:before {
    padding: 10px 15px;
    color: #fff;
    background: #105e30 !important;
  }
  table td span {
    padding: 10px 15px;
  }
}
table ul {
  margin: 0 !important;
  list-style-position: inside;
}

.tabs-wrap {
  position: relative;
  max-width: 1100px;
  margin: 0 auto 40px auto;
}
.tabs-wrap:after {
  content: "";
  display: table;
  clear: both;
}
@media screen and (min-width: 1000px) {
  .tabs-wrap {
    margin: 0 auto 50px auto;
  }
}
.tabs-wrap .tabs-nav {
  display: block;
  position: relative;
  margin: 0 0 -1px 0;
  box-sizing: border-box;
  overflow: hidden;
  border: 0;
  border-radius: 10px 10px 0 0;
  z-index: 100;
}
.tabs-wrap .tabs-nav li {
  display: block;
  position: relative;
  top: 0;
  margin: 0;
  box-sizing: border-box;
  list-style-type: none;
}
.tabs-wrap .tabs-nav li:last-of-type {
  margin: 0;
}
.tabs-wrap .tabs-nav li a {
  display: grid;
  grid-template-columns: 20px 1fr;
  align-items: center;
  height: 100%;
  margin-right: 1px;
  margin-bottom: -20px;
  padding: 20px 20px 40px 20px;
  font-family: urw-din, sans-serif;
  font-size: 1.2em;
  font-weight: 300;
  color: #fff;
  border: 1px solid transparent;
  border-radius: 10px 10px 0 0;
  background: #105e30;
  box-shadow: 0 -1px 2px 0 rgba(0, 0, 0, 0.2);
}
.tabs-wrap .tabs-nav li a:hover {
  background: #14743b;
}
.tabs-wrap .tabs-nav li a:before {
  margin-left: -5px;
  padding-right: 10px;
  font-family: FontAwesome;
  content: "\f0da";
  font-weight: 400 !important;
}
.tabs-wrap .tabs-nav li.ui-tabs-active a {
  font-weight: 700;
  color: #000;
  cursor: text;
  background: #fff;
  border-color: #105e30;
  border-bottom-color: #fff;
}
.tabs-wrap .tabs-nav li.ui-tabs-active a:before {
  padding-right: 10px;
  font-family: FontAwesome;
  content: "\f0d7";
  font-weight: 400 !important;
}
@media screen and (min-width: 650px) {
  .tabs-wrap .tabs-nav.horiz-tabs {
    display: flex !important;
    align-items: stretch;
  }
}
@media screen and (min-width: 650px) {
  .tabs-wrap .tabs-nav.horiz-tabs li a {
    display: block;
    margin-bottom: 0;
    padding: 15px 20px;
    text-align: center;
    box-shadow: none;
  }
}
@media screen and (min-width: 650px) and (min-width: 650px) {
  .tabs-wrap .tabs-nav.horiz-tabs li a:before {
    padding-right: 0 !important;
    content: none !important;
  }
}
.tabs-wrap .tabs-panel {
  position: relative;
  padding: 20px;
  background: #fff;
  border: 1px solid #105e30;
  z-index: 0;
}
.tabs-wrap .tabs-panel:after {
  content: "";
  display: table;
  clear: both;
}
@media screen and (min-width: 800px) {
  .tabs-wrap .tabs-panel {
    padding: 30px;
  }
}
.tabs-wrap .tabs-panel p:last-of-type {
  margin: 0;
}
.tabs-wrap .tabs-panel .button-row {
  margin: 30px auto 0 auto;
}
.tabs-wrap .tabs-panel .anchor-target {
  padding-top: 90px !important;
  margin-top: -90px !important;
}

.heads {
  max-width: 800px;
  margin: 0 auto;
  padding: 30px 0 0 0;
  text-align: center;
}
@media screen and (min-width: 1000px) {
  .heads {
    padding: 40px 0 0 0;
  }
}
.heads h2 {
  margin: 0;
}
.heads.left {
  text-align: left;
}

.text-block {
  max-width: 1100px;
  margin: 0 auto 40px auto;
}
.text-block:after {
  content: "";
  display: table;
  clear: both;
}
.text-block p:last-child {
  margin-bottom: 0;
}
.text-block.font-size-large {
  font-size: 1.2em;
}
@media screen and (min-width: 1000px) {
  .text-block.font-size-large {
    font-size: 1.4em;
    font-weight: 500;
  }
}
.text-block.font-size-large h1 {
  font-size: 1.75em;
}
.text-block.font-size-large h2 {
  font-size: 1.45em;
}
@media screen and (min-width: 650px) {
  .text-block.font-size-large h2 {
    font-size: 1.65em;
  }
}
@media screen and (min-width: 1000px) {
  .text-block.font-size-large h2 {
    font-size: 1.6em;
  }
}
.text-block.font-size-large .button, .text-block.font-size-large input[type=submit] {
  font-size: 0.875em;
}
.text-block .button-row {
  margin: 0 auto;
}

.highlight {
  padding: 30px;
  background: #fdf4de;
}
.highlight p:last-child {
  margin-bottom: 5px;
}
.highlight ul:last-child, .highlight ol:last-child {
  margin-bottom: 0;
}

h1 {
  margin: 0 0 20px 0;
  line-height: 1.1em;
  font-size: 2em;
  font-family: urw-din, sans-serif;
  font-weight: 300;
}
@media screen and (min-width: 650px) {
  h1 {
    font-size: 2.5em;
  }
}
@media screen and (min-width: 1100px) {
  h1 {
    font-size: 2.75em;
  }
}

h2 {
  margin: 0 0 20px 0;
  line-height: 1.2em;
  font-size: 1.75em;
  font-family: urw-din, sans-serif;
  font-weight: 300;
}
@media screen and (min-width: 650px) {
  h2 {
    font-size: 2em;
  }
}
@media screen and (min-width: 1000px) {
  h2 {
    font-size: 2.25em;
  }
}
h2.standalone-head {
  max-width: 1100px;
  margin: 0 auto 30px auto;
}

h1 strong, h1 strong {
  font-weight: 600;
}

h3 {
  margin: 0 0 20px 0;
  line-height: 1.25em;
  font-size: 1em;
  text-transform: uppercase;
  font-family: open-sans, sans-serif;
  font-weight: 700;
}
@media screen and (min-width: 1000px) {
  h3 {
    font-size: 1.1em;
  }
}

h4 {
  margin: 0 0 20px 0;
  line-height: 1.25em;
  font-size: 1em;
  font-family: open-sans, sans-serif;
  font-weight: 700;
}
@media screen and (min-width: 1000px) {
  h4 {
    font-size: 1.1em;
  }
}

p {
  margin: 0 0 20px 0;
  line-height: 1.5em;
}

strong {
  font-weight: 700;
}

a {
  color: #105e30;
  text-decoration: none;
  font-weight: 700;
  transition: all 0.15s ease;
}
a:hover {
  color: #14743b;
}

h1 a, h2 a, h3 a, h4 a {
  font-weight: inherit;
  color: inherit;
}

main ul,
main ol {
  display: table;
  margin: 20px 1.2em 10px 1.2em;
}

main ul li,
main ol li {
  margin: 0 0 10px 0;
  line-height: 1.3em;
}

main ul ul,
main ol ol,
main ul ol,
main ol ul {
  margin: 6px 0 6px 10px;
}

main ul ul li,
main ol ul li {
  list-style-type: square;
}

main ol ol li,
main ul ol li {
  list-style-type: lower-alpha;
}

hr {
  clear: both;
  height: 0 !important;
  margin: 50px 0 !important;
  border-top: 1px solid #000 !important;
  background: #000 !important;
  opacity: 0.3;
}

.page-template-blog-landing .main-content-wrap,
.archive .main-content-wrap {
  max-width: 1000px;
}
@media screen and (min-width: 1000px) {
  .page-template-blog-landing .main-content-wrap .main-content,
.archive .main-content-wrap .main-content {
    grid-template-columns: 4fr 1fr !important;
  }
}
.page-template-blog-landing .blog-intro,
.archive .blog-intro {
  padding: 0 20px 20px 20px;
}
@media screen and (min-width: 1100px) {
  .page-template-blog-landing .blog-intro,
.archive .blog-intro {
    padding: 0;
  }
}
@media screen and (min-width: 1000px) {
  .page-template-blog-landing article,
.archive article {
    grid-row-start: 1;
  }
}
.page-template-blog-landing aside,
.archive aside {
  padding: 0 20px 20px 20px;
}
@media screen and (min-width: 1000px) {
  .page-template-blog-landing aside,
.archive aside {
    padding: 40px 0 0 0;
  }
}
.page-template-blog-landing aside h3,
.archive aside h3 {
  display: none;
}
@media screen and (min-width: 1000px) {
  .page-template-blog-landing aside h3,
.archive aside h3 {
    display: block;
  }
}
.page-template-blog-landing aside ul.categories,
.archive aside ul.categories {
  margin: 0;
  list-style-type: none;
}
.page-template-blog-landing aside ul.categories li,
.archive aside ul.categories li {
  margin: 0 0 15px 0;
}
.page-template-blog-landing aside ul.categories li a,
.archive aside ul.categories li a {
  font-weight: 400;
  color: #000;
}
.page-template-blog-landing aside ul.categories li a:hover,
.archive aside ul.categories li a:hover {
  text-decoration: underline;
}

.home .home-hero-slider {
  position: relative;
}
.home .home-hero-slider .home-slides {
  height: 300px;
}
@media screen and (min-width: 650px) {
  .home .home-hero-slider .home-slides {
    height: 500px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-hero-slider .home-slides {
    height: 550px;
  }
}
.home .home-hero-slider .home-slide {
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 0;
}
.home .home-hero-slider .home-slide:after {
  content: "";
  display: table;
  clear: both;
}
.home .home-hero-slider .home-slide img {
  position: absolute;
  opacity: 0;
}
.home .home-hero-slider .home-slide .content {
  display: flex;
  align-items: center;
  position: relative;
  height: 300px;
  max-width: 1300px;
  margin: 0 auto;
  padding: 30px 20px;
  box-sizing: border-box;
  z-index: 10;
}
@media screen and (min-width: 650px) {
  .home .home-hero-slider .home-slide .content {
    align-items: flex-end;
    height: 500px;
    padding-bottom: 60px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-hero-slider .home-slide .content {
    height: 550px;
  }
}
.home .home-hero-slider .home-slide h1 {
  max-width: 650px;
  font-size: 2.2em;
  text-transform: uppercase;
  font-weight: 600;
  line-height: 1.1em;
  color: #fff;
}
@media screen and (min-width: 650px) {
  .home .home-hero-slider .home-slide h1 {
    font-size: 2.5em;
  }
}
@media screen and (min-width: 800px) {
  .home .home-hero-slider .home-slide h1 {
    font-size: 3em;
    line-height: 1.2em;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-hero-slider .home-slide h1 {
    max-width: 800px;
    font-size: 3.1em;
  }
}
.home .home-hero-slider .home-slide span.overlay {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: rgba(0, 0, 0, 0.25);
}
.home .home-hero-slider .flex-control-nav {
  bottom: 30px;
  z-index: 1000;
}
@media screen and (min-width: 800px) {
  .home .home-hero-slider .flex-control-nav {
    right: 80px;
    bottom: 40px;
    width: auto;
  }
}
.home .home-hero-slider .flex-control-nav li a {
  width: 12px;
  height: 12px;
  background: none;
  border: 2px solid #fff;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
}
.home .home-hero-slider .flex-control-nav li a:hover {
  background: #fcc03c;
}
.home .home-hero-slider .flex-control-nav li a.flex-active {
  background: #fff;
}
.home .home-hero-slider .flex-direction-nav {
  display: none;
}
.home .home-intro .content {
  max-width: 1000px;
  margin: 0 auto;
  padding: 30px 20px;
}
@media screen and (min-width: 575px) {
  .home .home-intro .content {
    text-align: center;
  }
}
@media screen and (min-width: 650px) {
  .home .home-intro .content {
    padding: 40px 20px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-intro .content {
    padding: 60px 20px;
  }
}
.home .home-intro .text-content {
  max-width: 800px;
  margin: 0 auto 30px auto;
}
@media screen and (min-width: 575px) {
  .home .home-intro .text-content {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-intro .text-content h2 {
    margin: 0 0 30px 0;
  }
}
.home .home-intro .intro-links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 0 30px;
}
@media screen and (min-width: 575px) {
  .home .home-intro .intro-links {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
.home .home-intro .intro-links a.intro-link {
  text-align: center;
}
.home .home-intro .intro-links a.intro-link img {
  display: block;
  width: 80px;
  margin: 0 auto 10px auto;
}
@media screen and (min-width: 800px) {
  .home .home-intro .intro-links a.intro-link img {
    width: 100px;
    margin-bottom: 15px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-intro .intro-links a.intro-link img {
    width: 110px;
    margin-bottom: 20px;
  }
}
.home .home-intro .intro-links a.intro-link h3 {
  margin: 0;
  font-family: urw-din-condensed, sans-serif;
  font-size: 1.6em;
  color: #000;
}
@media screen and (min-width: 800px) {
  .home .home-intro .intro-links a.intro-link h3 {
    font-size: 1.75em;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-intro .intro-links a.intro-link h3 {
    font-size: 2.25em;
  }
}
.home .home-intro .intro-links a.intro-link:hover img {
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-animation-name: bounce;
          animation-name: bounce;
  -webkit-animation-timing-function: ease;
          animation-timing-function: ease;
}
@keyframes bounce {
  10% {
    -webkit-transform: scale(1.1, 0.9) translateY(0);
            transform: scale(1.1, 0.9) translateY(0);
  }
  30% {
    -webkit-transform: scale(0.9, 1.1) translateY(-5px);
            transform: scale(0.9, 1.1) translateY(-5px);
  }
  50% {
    -webkit-transform: scale(1.05, 0.95) translateY(0);
            transform: scale(1.05, 0.95) translateY(0);
  }
}
.home .home-incentives {
  position: relative;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.home .home-incentives .content {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
  padding: 30px 20px 35px 20px;
  color: #fff;
  z-index: 10;
}
@media screen and (min-width: 575px) {
  .home .home-incentives .content {
    text-align: center;
  }
}
@media screen and (min-width: 650px) {
  .home .home-incentives .content {
    padding: 40px 20px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-incentives .content {
    padding: 80px 20px;
  }
}
.home .home-incentives .text-content {
  max-width: 800px;
  margin: 0 auto 30px auto;
}
@media screen and (min-width: 575px) {
  .home .home-incentives .text-content {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-incentives .text-content {
    margin-bottom: 60px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-incentives .text-content h2 {
    margin: 0 0 30px 0;
  }
}
.home .home-incentives .incentives-links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 30px;
}
@media screen and (min-width: 800px) {
  .home .home-incentives .incentives-links {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
.home .home-incentives .incentives-links a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px;
  text-align: center;
  color: #fff;
  border: 1px solid #fff;
}
@media screen and (min-width: 1000px) {
  .home .home-incentives .incentives-links a {
    padding: 30px 20px;
    border: 2px solid #fff;
  }
}
.home .home-incentives .incentives-links a:hover {
  color: #105e30;
  background: #fff;
}
.home .home-incentives .incentives-links a br {
  display: none;
}
@media screen and (min-width: 1000px) {
  .home .home-incentives .incentives-links a br {
    display: inline;
  }
}
.home .home-incentives .incentives-links a h3 {
  margin: 0;
  font-family: urw-din-condensed, sans-serif;
  font-size: 1.25em;
  line-height: 1.3em;
}
.home .home-incentives span.overlay {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: rgba(16, 94, 48, 0.9);
}
.home .home-team {
  border-bottom: 10px solid #f4b221;
}
.home .home-team .content {
  position: relative;
  max-width: 1100px;
  margin: 0 auto;
  padding: 30px 20px;
}
@media screen and (min-width: 575px) {
  .home .home-team .content {
    text-align: center;
  }
}
@media screen and (min-width: 650px) {
  .home .home-team .content {
    padding: 40px 20px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-team .content {
    padding: 80px 20px;
  }
}
@media screen and (min-width: 1100px) {
  .home .home-team .content {
    display: grid;
    grid-template-columns: 4fr 7fr;
    grid-gap: 70px;
    text-align: left;
  }
}
.home .home-team .text-content {
  max-width: 800px;
  margin: 0 auto 30px auto;
}
@media screen and (min-width: 575px) {
  .home .home-team .text-content {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-team .text-content {
    margin-bottom: 60px;
  }
}
@media screen and (min-width: 1100px) {
  .home .home-team .text-content {
    max-width: none;
    margin: 0;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-team .text-content h2 {
    margin: 0 0 30px 0;
  }
}
.home .home-team .text-content .button, .home .home-team .text-content input[type=submit] {
  margin: 20px 0 0 0;
}
.home .home-team .vid-content {
  max-width: 800px;
  margin: 0 auto;
}
@media screen and (min-width: 1100px) {
  .home .home-team .vid-content {
    max-width: none;
    margin: 0;
  }
}
@media screen and (min-width: 1100px) {
  .home .home-team .vid-content .fluid-width-video-wrapper {
    margin-top: 10px;
  }
}
.home .home-team .vid-content .button, .home .home-team .vid-content input[type=submit] {
  margin: 0 30px 20px 0;
}
@media screen and (min-width: 575px) {
  .home .home-team .vid-content .button, .home .home-team .vid-content input[type=submit] {
    margin: 0 15px;
  }
}
@media screen and (min-width: 1100px) {
  .home .home-team .vid-content .button, .home .home-team .vid-content input[type=submit] {
    margin: 0 30px 0 0;
  }
}
.home .home-recent-projects {
  border-bottom: 10px solid #f4b221;
}
.home .home-recent-projects .content {
  position: relative;
  max-width: 1100px;
  margin: 0 auto;
  padding: 30px 20px;
}
@media screen and (min-width: 650px) {
  .home .home-recent-projects .content {
    padding: 40px 20px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-recent-projects .content {
    padding: 60px 20px;
  }
}
.home .home-recent-projects .content .recent-projects-heads {
  margin-bottom: 30px;
}
@media screen and (min-width: 650px) {
  .home .home-recent-projects .content .recent-projects-heads {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}
@media screen and (min-width: 650px) {
  .home .home-recent-projects .content .recent-projects-heads h2 {
    margin: 0;
  }
}
.home .home-recent-projects .content .recent-projects-heads h2 a:hover {
  color: #f4b221;
}
.home .home-recent-projects .content a.recent-projects-all {
  display: flex;
  align-items: center;
  font-family: urw-din, sans-serif;
  text-transform: uppercase;
  color: #000;
}
@media screen and (min-width: 650px) {
  .home .home-recent-projects .content a.recent-projects-all {
    display: block;
  }
}
.home .home-recent-projects .content a.recent-projects-all br {
  display: none;
}
@media screen and (min-width: 650px) {
  .home .home-recent-projects .content a.recent-projects-all br {
    display: inline;
  }
}
.home .home-recent-projects .content a.recent-projects-all i {
  padding: 0 0 0 10px;
  font-size: 1.5em;
}
.home .home-recent-projects .content a.recent-projects-all:hover {
  color: #f4b221;
}
.home .home-recent-projects span.img-text p {
  font-size: 1.1em;
  font-family: urw-din-condensed, sans-serif;
  line-height: 1.3em;
}
@media screen and (min-width: 650px) {
  .home .home-recent-projects span.img-text p {
    font-size: 1.5em;
  }
}
.home .home-testimonials {
  position: relative;
  padding: 80px 50px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
@media screen and (min-width: 650px) {
  .home .home-testimonials {
    padding: 120px 70px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-testimonials {
    padding: 175px 100px;
  }
}
.home .home-testimonials .testimonials-content {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
  color: #fff;
  z-index: 10;
}
.home .home-testimonials .testimonials-content:after {
  content: "";
  display: table;
  clear: both;
}
.home .home-testimonials .testimonials-content blockquote {
  margin: 0 auto;
  font-family: urw-din, sans-serif;
  font-weight: 600;
  color: #fff;
}
.home .home-testimonials .testimonials-content blockquote p {
  font-size: 1.25em;
}
@media screen and (min-width: 650px) {
  .home .home-testimonials .testimonials-content blockquote p {
    font-size: 1.5em;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-testimonials .testimonials-content blockquote p {
    font-size: 1.75em;
  }
}
.home .home-testimonials .testimonials-content blockquote .attribution {
  font-family: urw-din-condensed, sans-serif;
}
.home .home-testimonials .testimonials-content blockquote .town {
  font-family: urw-din-condensed, sans-serif;
  text-transform: none;
}
.home .home-testimonials .flex-control-nav {
  display: none;
}
.home .home-testimonials .flex-direction-nav li {
  position: absolute;
  top: 40%;
  font-size: 2em;
  color: #fff;
  opacity: 0.75;
  z-index: 10000;
}
@media screen and (min-width: 650px) {
  .home .home-testimonials .flex-direction-nav li {
    top: 32.5%;
    font-size: 2.5em;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-testimonials .flex-direction-nav li {
    top: 15%;
    font-size: 3.5em;
  }
}
.home .home-testimonials .flex-direction-nav li a {
  display: block;
  color: #fff;
}
.home .home-testimonials .flex-direction-nav li a:after, .home .home-testimonials .flex-direction-nav li a:before {
  font-family: "Font Awesome 5 Pro";
  font-weight: 300;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}
.home .home-testimonials .flex-direction-nav li:first-of-type {
  left: -40px;
}
@media screen and (min-width: 650px) {
  .home .home-testimonials .flex-direction-nav li:first-of-type {
    left: -60px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-testimonials .flex-direction-nav li:first-of-type {
    left: -90px;
  }
}
.home .home-testimonials .flex-direction-nav li:first-of-type a:after {
  content: "\f053";
}
.home .home-testimonials .flex-direction-nav li:last-of-type {
  right: -40px;
}
@media screen and (min-width: 650px) {
  .home .home-testimonials .flex-direction-nav li:last-of-type {
    right: -60px;
  }
}
@media screen and (min-width: 1000px) {
  .home .home-testimonials .flex-direction-nav li:last-of-type {
    right: -90px;
  }
}
.home .home-testimonials .flex-direction-nav li:last-of-type a:after {
  content: "\f054";
}
.home .home-testimonials span.overlay {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: rgba(0, 0, 0, 0.5);
}

.page-template-projects-landing .main-content-wrap {
  max-width: 1100px;
}
@media screen and (min-width: 1000px) {
  .page-template-projects-landing .main-content-wrap .main-content {
    grid-template-columns: 4fr 1fr !important;
  }
}
.page-template-projects-landing .projects-intro {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 20px 20px 20px;
}
.page-template-projects-landing .cards {
  max-width: 800px;
  margin: 0 auto;
}
@media screen and (min-width: 1000px) {
  .page-template-projects-landing .cards {
    max-width: 1100px !important;
  }
}
@media screen and (min-width: 1200px) {
  .page-template-projects-landing .cards .content {
    grid-gap: 30px !important;
  }
}
.page-template-projects-landing .project-card {
  position: relative;
  max-width: 400px;
  margin: 0 auto;
}
.page-template-projects-landing .project-card img {
  position: relative;
  display: block;
  z-index: 1;
}
.page-template-projects-landing .project-card .card-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 40px 20px 0 20px;
  box-sizing: border-box;
  text-align: center;
  font-weight: 500;
  color: #fff;
  text-shadow: 1px 1px 0 #000;
  z-index: 100;
  transition: all 0.15s ease;
  /*
  .cat-head {
  	display: inline;
  	text-transform: uppercase;
  	font-size: .9em;
  	font-weight: $font-bold;

  }
  */
}
@media screen and (min-width: 650px) {
  .page-template-projects-landing .project-card .card-content {
    padding-top: 20px;
  }
}
.page-template-projects-landing .project-card .card-content h2 {
  margin: 0;
  font-size: 2em;
  font-family: urw-din-condensed, sans-serif;
}
.page-template-projects-landing .project-card .card-content .categories {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 10px 20px;
  box-sizing: border-box;
  width: 100%;
  font-size: 0.9em;
  border-top: 1px solid rgba(255, 255, 255, 0.75);
}
.page-template-projects-landing .project-card .card-content .project-cat {
  display: inline;
  font-style: italic;
}
.page-template-projects-landing .project-card .card-content .project-cat:last-of-type span {
  display: none;
}
.page-template-projects-landing .project-card span.overlay {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 50;
  transition: all 0.15s ease;
  opacity: 0.85;
}
.page-template-projects-landing .project-card:hover span.overlay {
  opacity: 1;
}

body.search #searchform {
  position: relative;
  max-width: 100%;
  height: 70px;
  margin: 0 0 30px 0;
  border: 1px solid #ccc;
}
body.search #searchform input#searchfield[type=text] {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  height: 100%;
  padding: 14px 80px 14px 15px;
  font-family: open-sans, sans-serif;
  font-weight: 300;
  font-size: 1.3em;
  color: #333;
  border: 0 !important;
}
body.search #searchform input#searchsubmit {
  position: absolute;
  right: 0;
  top: 0;
  width: 70px;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
  line-height: 1;
  font-family: FontAwesome;
  font-size: 1em;
  color: #666 !important;
  cursor: pointer;
  background: none;
}
body.search article {
  box-sizing: border-box;
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
  /*self-clear*/
  max-width: 800px !important;
  margin: 0 auto;
  padding-top: 40px !important;
}
@media screen and (min-width: 650px) {
  body.search article {
    padding: 30px 40px;
  }
}
@media screen and (min-width: 1000px) {
  body.search article {
    max-width: 1350px;
  }
}
body.search article:after {
  content: "";
  display: table;
  clear: both;
}
@media screen and (min-width: 1000px) {
  body.search article {
    padding-top: 60px !important;
  }
}
@media screen and (min-width: 1100px) {
  body.search article {
    padding-top: 80px !important;
  }
}
body.search article h1 {
  margin: 0 0 20px 0;
  font-size: 1.3em;
}
body.search article a.search-result {
  display: block;
  margin: 0;
  padding: 20px 0;
  font-weight: 300;
  font-size: 0.9em;
  border-bottom: 1px solid #ccc;
}
body.search article a.search-result:after {
  content: "";
  display: table;
  clear: both;
}
body.search article a.search-result:hover h3 {
  color: #14743b;
  text-decoration: underline;
}
body.search article a.search-result img {
  float: left;
  display: block;
  max-width: 100px;
  vertical-align: top;
  margin: 3px 20px 5px 0;
}
body.search article a.search-result h3 {
  margin: 0 0 5px 0;
  font-size: 1.1em;
  font-weight: 600;
  font-family: open-sans, sans-serif;
  color: #105e30;
}
body.search article a.search-result p {
  margin: 0;
  font-size: 0.95em;
  color: #777;
}
body.search .pagination {
  margin-top: 30px;
  background: none;
}

.page-template-section-child #crumbs-wrap #crumbs {
  max-width: 1250px;
}

.page-template-section-landing #crumbs-wrap #crumbs {
  max-width: 1350px;
}

.single-post .main-content {
  max-width: 800px;
}
.single-post a.back-to-blog {
  display: inline-block;
  margin: 0 0 30px 0;
  padding: 3px 10px;
  text-transform: uppercase;
  font-weight: 400;
  font-size: 0.75em;
  color: #fff;
  background: #105e30;
}
.single-post a.back-to-blog:hover {
  background: #14743b;
}
.single-post .no-hero .heads {
  padding-top: 0;
}
.single-post .no-hero h1 {
  margin: 0 0 15px 0;
}
.single-post .no-hero h2 {
  margin: 0 0 15px 0;
  font-weight: 400;
  font-size: 1.1em;
  line-height: 1.4em;
}
@media screen and (min-width: 650px) {
  .single-post .no-hero h2 {
    margin: 0 0 20px 0;
    font-size: 1.2em;
  }
}
@media screen and (min-width: 1000px) {
  .single-post .no-hero h2 {
    font-size: 1.3em;
  }
}
@media screen and (min-width: 1100px) {
  .single-post .no-hero h2 {
    font-size: 1.4em;
  }
}
.single-post .no-hero .date-author {
  margin: 15px 0;
  padding: 0 0 30px 0;
  text-transform: uppercase;
  font-size: 0.7em;
  font-weight: 400;
  color: #777;
  border-bottom: 1px solid #ccc;
}
.single-post .no-hero .date-author a {
  font-weight: 400;
  color: #777;
}
.single-post .no-hero .date-author a:hover {
  text-decoration: underline;
}
.single-post .post-hero {
  position: relative;
  max-width: 100% !important;
  margin: 0 auto;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  overflow: hidden;
  z-index: 0;
}
.single-post .post-hero:after {
  content: "";
  display: table;
  clear: both;
}
.single-post .post-hero img {
  position: absolute;
  opacity: 0;
}
.single-post .post-hero .content-wrap {
  width: 100%;
  max-width: 1300px;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 200px 20px 30px 20px;
}
@media screen and (min-width: 650px) {
  .single-post .post-hero .content-wrap {
    padding: 250px 20px 30px 20px;
  }
}
@media screen and (min-width: 1000px) {
  .single-post .post-hero .content-wrap {
    padding: 350px 40px 40px 40px;
  }
}
@media screen and (min-width: 1300px) {
  .single-post .post-hero .content-wrap {
    padding: 400px 40px 40px 40px;
  }
}
.single-post .post-hero .content {
  position: relative;
  max-width: none;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 1000;
}
.single-post .post-hero .content h1 {
  margin: 0 0 5px 0;
  font-weight: 700;
  text-transform: uppercase;
}
.single-post .post-hero .content h2 {
  margin: 10px 0 15px 0;
  font-weight: 600;
  font-size: 1.1em;
  line-height: 1.35em;
  color: inherit;
}
@media screen and (min-width: 650px) {
  .single-post .post-hero .content h2 {
    font-size: 1.2em;
  }
}
@media screen and (min-width: 1000px) {
  .single-post .post-hero .content h2 {
    font-size: 1.3em;
  }
}
@media screen and (min-width: 1300px) {
  .single-post .post-hero .content h2 {
    font-size: 1.4em;
  }
}
.single-post .post-hero .content .date-author {
  text-transform: uppercase;
  font-weight: 400;
  font-size: 0.75em;
  color: inherit;
  line-height: 2em;
}
.single-post .post-hero .content .date-author a {
  font-weight: 400;
  color: inherit;
}
.single-post .post-hero .content .date-author a:hover {
  text-decoration: underline;
}
.single-post .post-hero.text-left .content {
  text-align: left;
}
.single-post .post-hero.text-center .content {
  text-align: center;
}
.single-post .post-hero.text-right .content {
  text-align: right;
}
.single-post .post-hero.darken-img span.overlay, .single-post .post-hero.brighten-img span.overlay {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.single-post .post-hero.darken-img span.overlay {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, transparent 60%);
}
@media screen and (min-width: 1000px) {
  .single-post .post-hero.darken-img span.overlay {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, transparent 40%);
  }
}
.single-post .post-hero.brighten-img span.overlay {
  background-image: linear-gradient(to top, rgba(255, 255, 255, 0.7) 0%, transparent 60%);
}
@media screen and (min-width: 1000px) {
  .single-post .post-hero.brighten-img span.overlay {
    background-image: linear-gradient(to top, rgba(255, 255, 255, 0.7) 0%, transparent 40%);
  }
}

.single-projects .main-content {
  max-width: 800px;
}
.single-projects a.back-to-blog {
  display: inline-block;
  margin: 0 0 30px 0;
  padding: 3px 10px;
  text-transform: uppercase;
  font-weight: 400;
  font-size: 0.75em;
  color: #fff;
  background: #105e30;
}
.single-projects a.back-to-blog:hover {
  background: #14743b;
}
.single-projects .no-hero .heads {
  padding-top: 0;
}
.single-projects .no-hero h1 {
  margin: 0 0 15px 0;
}
.single-projects .no-hero h2 {
  margin: 0 0 15px 0;
  font-weight: 400;
  font-size: 1.1em;
  line-height: 1.4em;
}
@media screen and (min-width: 650px) {
  .single-projects .no-hero h2 {
    margin: 0 0 20px 0;
    font-size: 1.2em;
  }
}
@media screen and (min-width: 1000px) {
  .single-projects .no-hero h2 {
    font-size: 1.3em;
  }
}
@media screen and (min-width: 1100px) {
  .single-projects .no-hero h2 {
    font-size: 1.4em;
  }
}
.single-projects .no-hero .date-author {
  margin: 15px 0;
  padding: 0 0 30px 0;
  text-transform: uppercase;
  font-size: 0.7em;
  font-weight: 400;
  color: #777;
  border-bottom: 1px solid #ccc;
}
.single-projects .no-hero .date-author a {
  font-weight: 400;
  color: #777;
}
.single-projects .no-hero .date-author a:hover {
  text-decoration: underline;
}
.single-projects .post-hero {
  position: relative;
  max-width: 100% !important;
  margin: 0 auto;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  overflow: hidden;
  z-index: 0;
}
.single-projects .post-hero:after {
  content: "";
  display: table;
  clear: both;
}
.single-projects .post-hero img {
  position: absolute;
  opacity: 0;
}
.single-projects .post-hero .content-wrap {
  width: 100%;
  max-width: 1300px;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 200px 20px 30px 20px;
}
@media screen and (min-width: 650px) {
  .single-projects .post-hero .content-wrap {
    padding: 250px 20px 30px 20px;
  }
}
@media screen and (min-width: 1000px) {
  .single-projects .post-hero .content-wrap {
    padding: 350px 40px 40px 40px;
  }
}
@media screen and (min-width: 1300px) {
  .single-projects .post-hero .content-wrap {
    padding: 400px 40px 40px 40px;
  }
}
.single-projects .post-hero .content {
  position: relative;
  max-width: none;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 1000;
}
.single-projects .post-hero .content h1 {
  margin: 0 0 5px 0;
  font-weight: 700;
  text-transform: uppercase;
}
.single-projects .post-hero .content h2 {
  margin: 10px 0 15px 0;
  font-weight: 600;
  font-size: 1.1em;
  line-height: 1.35em;
  color: inherit;
}
@media screen and (min-width: 650px) {
  .single-projects .post-hero .content h2 {
    font-size: 1.2em;
  }
}
@media screen and (min-width: 1000px) {
  .single-projects .post-hero .content h2 {
    font-size: 1.3em;
  }
}
@media screen and (min-width: 1300px) {
  .single-projects .post-hero .content h2 {
    font-size: 1.4em;
  }
}
.single-projects .post-hero .content .date-author {
  text-transform: uppercase;
  font-weight: 400;
  font-size: 0.75em;
  color: inherit;
  line-height: 2em;
}
.single-projects .post-hero .content .date-author a {
  font-weight: 400;
  color: inherit;
}
.single-projects .post-hero .content .date-author a:hover {
  text-decoration: underline;
}
.single-projects .post-hero.text-left .content {
  text-align: left;
}
.single-projects .post-hero.text-center .content {
  text-align: center;
}
.single-projects .post-hero.text-right .content {
  text-align: right;
}
.single-projects .post-hero.darken-img span.overlay, .single-projects .post-hero.brighten-img span.overlay {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.single-projects .post-hero.darken-img span.overlay {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, transparent 60%);
}
@media screen and (min-width: 1000px) {
  .single-projects .post-hero.darken-img span.overlay {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, transparent 40%);
  }
}
.single-projects .post-hero.brighten-img span.overlay {
  background-image: linear-gradient(to top, rgba(255, 255, 255, 0.7) 0%, transparent 60%);
}
@media screen and (min-width: 1000px) {
  .single-projects .post-hero.brighten-img span.overlay {
    background-image: linear-gradient(to top, rgba(255, 255, 255, 0.7) 0%, transparent 40%);
  }
}

/*# sourceMappingURL=style.css.map */