/* FILE: TEMPLATE.CSS */
/* Roboto Font Weights: 300, 400, 700 */
.background-overlay{
  width: 100%;
  height: 100%;
  position: absolute;
  background: rgba(0, 0, 0, 0.6);
  top: 0;
}
.background-image h1,
.background-image h2,
.background-image h3,
.background-image h4,
.background-image h5,
.background-image h6,
.background-image .headline1,
.background-image .headline2,
.background-image .headline3,
.background-image .headline4,
.background-image .headline5,
.background-image .headline6
{
  color: #fff;
}
#top-bar{
  margin-top: 0;
  padding: 0;
  -webkit-box-shadow: 0px 10px 33px 0px rgba(0,0,0,0.5);
  -moz-box-shadow: 0px 10px 33px 0px rgba(0,0,0,0.5);
  box-shadow: 0px 10px 33px 0px rgba(0,0,0,0.5);
  position: relative;
  z-index: 10;
}
#top-bar a{
  text-decoration: none;
}
#top-bar-inner{
  margin: 0;
  padding: 0.25rem;
  font-size: 0.9rem;
  line-height: 0.9rem;
  vertical-align: middle;
  text-transform: uppercase;
  font-weight: 700;
  background-color: #478f41;
  color: #fff;
}
#top-bar-inner a{
  color: #fff;
}
#top-bar-contact {
  text-align: center;
}
#top-bar-contact span{
  position: relative;
  top: 1px;
}
#top-bar-contact img{
  width: 22px;
  height: 22px;
  margin: 0 0.3rem;
  vertical-align: middle;
}
#top-bar-social{
  display: none;
  position: relative;
  z-index: 10;
}
#top-bar-social img{
  width: 30px;
  height: 30px;
}
#top-bar-social a{
  display: inline-block;
  margin: 0 0.25rem;
}
#img-logo{
  max-height: 120px;
  width: auto;margin-bottom: -0.5rem;
}
#nav-outer{
  display: none;
}
#btn-nav{
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  width: 32px;
  height: 32px;
  cursor: pointer;
}

#btn-nav img{
  background-color: #478f41;
}

nav{ 
  width: auto;
  -webkit-overflow-scrolling: touch;
}

#header-main{
  background-color: #111406;
  background-size: cover;
  background-position: center bottom;
}

#header-main .background-overlay {
  display: none;
}
#header-main-inner{
  position: relative;
  z-index: 1;
  padding: 0;
}
#header-main-content{
  display: inline-block;
  background: rgba(0,0,0,0.7);
  text-align: left;
  padding: 2rem 1.5rem 3rem; 
  max-width: 100%; 
  color: #fff;
  
  background: rgba(26,31,4,0.7); 
  margin: 3rem auto; 
  padding: 1rem !important; 
  max-width: 90%;
  background: rgba(0,0,0,0.7);
}
  
#header-main img.background {
  display: none;
}
#header-main h1{
  font-size: 2.25rem;
  line-height: 2.25rem;
  color: #fff;
  }

#header-main hr{
  width: 50%;
  max-width: 150px;
  background-color: #fff;
  margin-left: 0;
}
#header-main input[type="button"],
#header-main input[type="submit"],
#header-main button,
#header-main .button,
#header-main a.button {
  padding: 1rem;
  font-size: 0.9rem;
  line-height: 1.2rem;
  margin-top: 1rem;
  font-weight: 700;
}
#header-main input[type="button"]:hover,
#header-main input[type="submit"]:hover,
#header-main button:hover,
#header-main .button:hover,
#header-main a.button:hover {
  background-color: #fff;
  border: solid 1px #84b424;
  color: #84b424;
}
#header-main .background-overlay{
  display: none;
}
section{
  position: relative;
  padding: 3rem 0;
}
section.background-image{
  color: #fff;
  background-size: cover;
}
section.background-image hr{
  background-color: #fff;
}
section > .container{
  position: relative;
  z-index: 1;
}

footer{
  color: #fff;
  font-size: 0.85rem;
  line-height: 1.3rem;
  padding: 1rem 0;
  background-color: #16180f;   
  border-top: solid 0.3rem #16180f;
}
footer .headline4 {
  color: #fff;
}
footer a{
  color: #fff;
}
footer hr{
  background-color: #323525;
  width: 100%;
}
footer input, footer input[type="button"] {
  max-width: 350px;
}
#footer-top-row > div{
  border-top: solid 1px #323525;
}
#footer-top-row > div:first-of-type {
  border-top: 0;
}
#footer-social a {
  line-height: normal;
  display: inline-block;
  padding: 0 0.15rem;
}
#footer-social a img{
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  box-shadow: none;
  width: 24px !important;
  height: 24px !important;
}

#div-sb-main-spacer{
  display: none;
}
#div-side-bar-outer > section{
  padding: 0 0 3rem 0;
}
.side-bar-contact{
  padding: 3rem 1rem;
  text-align: center;
}
.side-bar-contact h3{
  text-transform: uppercase;
  margin-bottom: -1rem;
}

.area-map-outer
{
  width: 100%;
  height: 100%;
  min-height: 400px;
}
.google-map{
  width: 100%;
  height: 100%;
  min-height: 250px;
}
.popup-quote{
  display: none;
}

ul.blocks{
list-style: none;
margin: 0;
padding: 0;
}
ul.blocks > li > a {
  display: block;
  background-color: #164388;
  color: #fff;
  text-align: center;
  text-decoration: none !important;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 5rem 0;
  font-family: 'Ubuntu', sans-serif;
  font-size: 1.3rem;
  line-height: 1.7rem;
}
ul.blocks > li > a:hover .background-overlay{
  background: rgba(0, 0, 0, 0.25);
}

#section-sub-main-4{
  background:#fafafa;
  border-bottom:1px solid #e2e2e2;
}

#sidebar-menus h3 a,
#sidebar-menus h3 a:hover{
  color:#215228;
  text-decoration:none;
}

#top-bar .payments-button{
  font-size:0.8rem;
  padding:0 1rem;
  margin:0 1rem;
  display:inline-block;
  position:relative;
}
#top-bar .payments-button::after{
  content:"";
  background-color:#fff;
  width:1px;
  height:100%;
  position:absolute;
  top:49%;
  right:0;
  transform:translate3d(2px,-50%,0);
  opacity:0.2;
}

/* overview page lists */
.list-overview{
    align-items:stretch;
}
.list-overview>[class^="col-"]{
    padding:1rem 0!important;
    position:relative;
}
.list-overview .alert-box{
    height:100%;
    min-height:256px;
    text-align:left;
    border-top:0.4rem solid #e0e0e0;
    margin:0;
    display:block;
    position:relative;
    transition:all 250ms ease;
    transform-origin:center;
}
.list-overview .alert-box:hover{
    border-top:0.4rem solid #478f41;
    transform:scale(1.02);
    box-shadow:0 0.2rem 0.5rem rgba(0,0,0,0.01);
}
.list-overview .box-image{
    width:100%;
    margin:0 0 1rem 0;
    display:block;
    position:relative;
}
.list-overview .box-image img{
    width:100%!important;
    margin:0;
    display:block;
}
.list-overview a.headline6{
    color:#478f41;
}
.list-overview a.headline6:hover{
    color:#215228;
}
.list-overview h3 + p{
    font-size:0.85rem;
    line-height:1.25rem;
}

@media (min-width:720px) {
  footer { padding: 4rem 0; }
  #footer-top-row > div{ border-left: solid 1px #323525; border-top: 0; }
  #footer-top-row > div:first-of-type { border-left: 0; }
  #top-bar-inner { font-size: 1.1rem; line-height: 1.1rem; padding: 0; }
  #top-bar-social{ display: inline-block; }
  #top-bar-contact {text-align: right;}
  #top-bar-contact img{ width: 32px; height: 32px; margin: 0 0.3rem; }
  .side-bar-contact{ padding: 5rem 1rem; }
  .side-bar-contact .headline2 {font-size: 3rem;}
  .side-bar-contact h3 { margin-bottom: 0; }
  #header-main-content{ margin: 2rem 0 2rem 2rem; padding: 1.25rem !important; max-width: 50%; }
  #header-main h1{ font-size: 2.4rem; line-height: 2.4rem; }
  .list-overview>[class^="col-"]{
      padding:1rem!important;
  }
}
@media (min-width:1024px) {
  #nav-outer { display: block !important; }
  nav { position: static; background: none; padding: 0; }
  #div-nav-button { display: none; }
  #nav-headline { display: none; }
  #header-main{ font-size: 1.3rem; line-height: 1.6rem; }
  #header-main input[type="button"],#header-main input[type="submit"],#header-main button,
  #header-main .button,#header-main a.button { font-size: 1rem; line-height: 1.2rem; }
  #header-main-content{ max-width: 43%; }
  #header-main h1{ font-size: 2.5rem; line-height: 2.5rem; }
  #div-side-bar-outer > section{padding: 3rem 0;}
  .side-bar-contact .headline2 {font-size: 2.2rem;}
  .side-bar-contact h3 { margin-bottom: -0.5rem; }
  #img-logo{max-height: 140px;margin-top: -3rem;margin-bottom: -1rem; margin-left: 1rem;}
  .list-overview>[class^="col-"]{
      padding:1rem 0!important;
  }
  .list-overview .alert-box{
      padding-left:20rem;
}
  .list-overview .box-image{
      width:18rem;
      height:auto;
      position:absolute;
      top:50%;
      left:0;
      transform:translate3d(-0.5rem,-50%,0);
      margin:0;
  }
  .list-overview .box-image img{
      margin:0;
      display:block;
      z-index:1;
  }
  .list-overview .box-image::before{
      content:"";
      width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0.5rem 0.5rem 0;
    border-color: transparent #d0d0d0 transparent transparent;
    position:absolute;
    top:100%;
    left:0;
    z-index:0;
  }
  .list-overview .box-image::after{
      content:"";
      width: 0;
height: 0;
border-style: solid;
border-width: 0 1rem 1rem 0;
border-color: transparent #f2f2f2 transparent transparent;
position:absolute;
top:-1px;
right:-1px;
z-index:2;
  }
}
@media (min-width:1200px) {
  section{padding: 4rem 0;}
  footer{font-size: 0.9rem;}
  #header-main-content{ padding: 1.5rem !important; max-width: 48%; }
  #header-main h1{ font-size: 2.75rem; line-height: 2.75rem; }
  #div-sb-main-outer > section { padding-right: 2rem; }
  #div-side-bar-outer > section{padding: 4rem 0;}
  .side-bar-contact .headline2 {font-size: 2.4rem;}
  .side-bar-contact h3 { margin-bottom: -0.75rem; }
  #header-main-inner{padding: 1rem 1rem;}
}
@media (min-width:1600px) {
  section{padding: 5rem 0;}
  #header-main h1{ font-size: 3rem; line-height: 3rem; }
  #header-main-content{ padding: 1.75rem !important; max-width: 36%; }
  .side-bar-contact .headline2 {font-size: 3rem;}
  .side-bar-contact h3 { margin-bottom: -0.5rem; }
  #div-side-bar-outer > section{padding: 5rem 0;}
}
@media (min-width:1850px) {
  #header-main-content{ padding: 2rem !important; max-width: 34%; }
}

.pac-container {
  z-index: 9999999 !important;
}

/* new landing format - july 16, 2020 */
#header-main.landing-header .background-overlay{
  display:block;
}
.landing-header #header-main-content{
  background:transparent;
  max-width:96%;
}
.landing-header-form .box{
  background:#478f41;
  width:100%;
  max-width:560px;
  border-radius:0.5rem;
  margin:0 auto;
}
.landing-header-form .SAPQuoteFormOuter{
  padding:1.5rem;
}
.landing-header-form .btnSAPSubmit{
  width:100%;
  background:#fff;
  color:#478f41;
  border:0!important;
  margin-top:0.25rem!important;
}
.landing-header-form .btnSAPSubmit:hover,
.landing-header-form .btnSAPSubmit:focus{
  background:#478f41;
  color:#fff;
  border:0!important;
}

.landing-header + #section-main{
  padding:0!important;
  overflow:hidden;
}

.landing-row>[class^="col-"]{
  padding:2rem;
}

.landing-row-media img{
  border-radius:0.3rem;
  margin-bottom:-3rem;
}

.landing-row-reviews{
  border-top:1px dashed #d0d0d0;
}
.landing-row-reviews img{
  max-width:250px;
  padding:10px;
}

@media (min-width:1200px){
  .landing-row>[class^="col-"]{
    padding:4rem;
  }
  .landing-row-media img{
    max-width:200%;
    margin-bottom:0;
    margin-left:-2rem;
    box-shadow:0 1rem 1.5rem rgba(0,0,0,0.1);
  }
}