.pageTitle{
  font-size: 26px;
  line-height: 1.2em;
  margin: 0;
  color: var(--pageTitle);
  font-weight: 800;
  text-align: center;

}

.pageSubtitle{
  font-size: 17px;
  line-height: 2em;
  margin: .5em 0 0 0;
  color: var(--pageSubtitle);
  font-weight: 600;
  text-transform: uppercase;
  text-align: center;
}

.homeTitle h1{
  font-size: 24px;
  font-weight: 600;
}

.homeTitle h2{
  font-size: 17px;
  font-weight: 800;
}



h2.first{margin-top: 0;}


h3.first{margin-top: 0;}

h4.first{margin-top: 0;}

.bgMainSection{
  background: var(--stageBg);
}

.titleBar{
  background: var(--bodyBar4Bg);
}

.sectionOne{
  background: var(--bodyBar1Bg);
}
.sectionOne *{
  color: #FFF;
}

.darkSection{
  background: var(--bodyBar2Bg);
  padding-bottom: 1.5em;
}
.darkSection *{
  color: #FFF;
}

.graySection{
  background: var(--bodyBar3Bg);
}

.whiteSection{
  background: #FFF;
}

.homeTitle{
  background: var(--bodyBar4Bg);
}


.bodyCallToAction{
  display: block;
  margin: 20px auto;
  font-size: 28px;
  text-align: center;
}


iframe.youtube{
  width: 100%;
  height: 190px;
  margin: 0 auto;
}


.inlineLeft, .inlineRight{
  margin: 0em auto 2em;
  max-whidth: 300px;
  display: block;
}

.homeMenu *{
  text-align: center;
  font-family: bebas-neue, sans-serif;
  font-weight: 200;
  font-size: 24px;
}

.homeMenu .homeIcon{
  display: block;
  width: 100px;
  margin: 10px auto;
}

.servicesSection{
  background: var(--bodyBar3Bg);
}
.servicesSection h3{
  margin-top: 5px;
  text-align: center;
}
.servicesIcon{
  display: block;
  width: 140px;
  margin: 10px auto;
}
.homeIcon{
  display: block;
  width: 230px;
  margin: 10px auto;
}
.homeServices h2{
  margin-top: 0;
  text-align: center;
}
.homeServices p{
  text-align: center;
}

.h2Align{
  margin-top: 2.8em;
}

.h3Align{
  margin-top: 2em;
}

.noLink{
  color: var(--bodyText);
}

.noLink:hover{
  color: var(--bodyText);
  text-decoration: none;
}


.footerLogos{
  width: 150px;
  display: float;
  margin: 5px auto;
}
.centerContents *{
  text-align: center;
}
.smallImg{
  width: 150px;
}
.h400{
  height: 300px;
}
.center *{
  text-align: center !important;
}

.imageMono{
  filter: var(--imageMonoFilter);
}
.imageMonoLight{
  filter: var(--imageMonoFilterLight);
}
.imageMonoDark{
  filter: var(--imageMonoFilterLightDark);
}



/* MOBILE SPECIFIC OVERRIDES ------------------------------------------------ */


img {
  max-width: 100% !important;
}



.easeButton{
  color: var(--button);
  background-color: var(--buttonBg);
  font-family: bebas-neue, sans-serif;
  font-weight: 500;
  font-size: 26px;
  box-shadow: none;
  padding: 12px 36px;
  border-radius: 12px;
  text-transform: uppercase;
  letter-spacing: 0px;
  display: block;
}

.easeButton:hover{
  color: var(--buttonHover);
  background-color: var(--buttonHoverBg);
}



/* BEGIN EDITOR FORM */
table.formTable{
  font-size: 1em;
  line-height: 1em;
  margin: 0 auto 20px auto;
  width: 100%;
}


table.formTable td.itemCell{
  padding: 5px 15px 0 0;
  text-align: left;
  vertical-align: top;
}

table.formTable td.inputCell{
  padding: .5em 0 10px 0;
  text-align: left;
  vertical-align: top;
}



table.formTable td.inputCell input[type=text], table.formTable td.inputCell input[type=password], table.formTable td.inputCell select,table.formTable td.inputCell textarea{
  width: 96%;
  font-size: 1em;
  line-height: 2em;
  padding: 0px 5px;
}

table.formTable td.inputCell input[type=text], table.formTable td.inputCell input[type=password], table.formTable td.inputCell select{
  margin-top: 0;
}

table.formTable td.inputCell textarea{
  margin-top: 0;
}

table.formTable td.inputCell select{
  width: 96%;
}

table.formTable td.inputCell input[type=password]{
  width: 100px;
}


table.formTable td.inputCell input[type=button], table.formTable td.inputCell input[type=submit]{
  margin: 5px;
  background-color: var(--buttonBg);
  color: var(--button);
  padding: 12px 36px;
  font-size: 26px;
  border: none;
  border-radius: 12px;
  font-weight: 500;
  text-transform: uppercase;
}

table.formTable td.inputCell input[type=button]:hover, table.formTable td.inputCell input[type=submit]:hover{

  color: var(--buttonHover);
  background-color: var(--buttonHoverBg);
}


input[type=radio],input[type=checkbox]{
  border: 0;
  background-color: inherit;
}


.required, .formError{
  color: #c00;
  margin: 0 3px;
}


.invalidInput{
  background-color: #ffc;
}


.requiredStar{
  margin-left: 3px;
}








/* SLIDES */

.sliderContainer{
  width: 100%;
  height: 270px;
}

.sliderContainer ul, .sliderContainer li{
  margin: 0;
}

.slider {
  height: 100%;;
}
.slide {
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.slide img.fill{
  width: 100%;
  height: inherit;
}

.bx-viewport, .bx-wrapper{
  width: 100%;
  height: 100%;
  margin: 0;
  position: relative;
  top: 0;
  left: 0;
}

.bx-controls-direction a {
    opacity: 0;
}
.bx-wrapper{
 background: rgba(255,255,255,0);
 box-shadow: none;
}

.animElem1, .animElem2, .animElem3, .darkBlock{
  z-index: 9999;
  text-align: center;
  width: 100%;
  visibility: hidden;
  position: absolute;
  width: 90%;
  margin-left: 5%;
}

.animElem1 img, .animElem2 img, .animElem3 img{
  display: inline-block;
}


.animElem1.active, .animElem2.active, .animElem3.active, .darkBlock.active {
  visibility: visible;
}




/* ------ */




.slideButtonWhite a, .slideButtonBlack a{
  font-size: 16px;
  text-transform: uppercase;
  padding: 8px;
  transition: background-color .5s;
}

.slideButtonWhite a{
  color: var(--button);
  background-color: var(--buttonBg);
  border-radius: 12px;
  text-transform: uppercase;
}

.slideButtonWhite a:hover{
  background-color: #FFF;
}









/* Location vCard */

div.location{
  font-size: 1.1em;
}

div.location .map{
  width: 100%;
  height: 400px;
  border: solid 1px var(--bodyBar1Bg);;
}

div.location .title{
  font-weight: bold;
  margin: 0 0 1em 0;
}

div.location .locationItem{
  margin: 0 0 .8em 0;
  font-size: 1em;
  position: relative;
  padding-left: 1.8em;
}

div.location .locationItem img{
  width: 1.2em;
  top: .1em;
  left: 0;
  display: inline-block;
  position: absolute;
}



div.location .directions{
  font-size: .8em;
  line-height: 1.5em;
}

div.location .phone{

}



/* Locations list */


div.locations{
  margin: 30px auto;
}

div.locations div.location{
  font-size: 1em;
}

div.locations div.location h3{
  line-height: 1.2em;
  font-size: 1.2em;
  text-align: center;
}

div.locations div.imageDiv{
  width: 60%;
  margin: 10px auto;
}

div.locations div.infoDiv{
  width: 80%;
  margin: 10px auto;
}

div.locations div.distance, div.locations div.moreInfo{
  text-align: center;
  padding: .5em;
  line-height: 1.5em;
}                  

/* Home blog columns */
.homeBlogColumn{
  background-color: var(--bgSectionThree);
  padding: 1em;
}

.homeBlogColumn img{
  display: block;
  margin: 0 auto;
  width: 320px;
  height: 240px;
  object-fit: cover;
}

.homeBlogColumn div{
  font-size: .9em;
  color: #666;
  text-align: center;
  margin: .5em 0;
}
.homeBlogColumn h5{
  font-size: 1.2em;
  text-align: center;
  margin: 0;
}