/* custom styles */

.grid-container {
  max-width: 1200px;
}

body {
  font-size: 16px;
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  color: #111;
}

.align_left, .align-left {
  float: left;
  margin-right: 20px;
  margin-bottom: 10px;
}
.align_right, .align-right {
  float: right;
  margin-left: 20px;
  margin-bottom: 10px;
}
.align_center, .align-center {
  margin-top: 10px;
  margin-bottom: 10px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.image-border {
  padding: 6px;
  border: 1px #ddd solid;
  background-color: #fff;
}
.image-inline {
  display: inline;
}
span.inline-at-medium {
  display: block;
}

/* rollover images */
.vwfade {
  position: relative;
}
.vwfade div {
  position: absolute;
  top: 0;
  left: 0;
  display: none;
}

hr {
  border: 0px solid #ccc;
  border-top-width: 1px;
  margin-top: 60px;
  width: 80%;
}

/*=== typography ===*/

h1, h2, h3, h4, h5, h6, figcaption {
  font-family: 'PT Serif', serif;
  font-weight: normal;
}
h1 { font-size: 30px; }
h2 { font-size: 26px; }
h3 { font-size: 22px; }
h4 { font-size: 18px; }

.jobs h3 { margin-top: 2em; }
.jobs h4 { margin-top: 2em; }

figcaption {
  font-size: 0.95em;
  font-style: italic;
  text-align: center;
  margin-top: -10px;
}

i.icon-primary {
  color: #595959 !important;
}

a {
  color: #3474CC;
 }
a:hover, a:focus {
  color: #8F0F1C;
  }

.responsive-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 20px;
  height: 0;
  overflow: hidden;
  margin-bottom: 20px;
}
.responsive-container iframe,
.responsive-container object,
.responsive-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*=== layout ===*/

.margintop {
  margin-top: 40px;
}
.marginbottom {
  margin-bottom: 40px;
}

.paddingtop {
  margin-top: 0;
  padding-top: 40px;
}
.paddingbottom {
  margin-bottom: 0;
  padding-bottom: 40px;
}

#hdr {
  background-color: #fff;
  padding-top: 5px;
}
#hdr-container img {
  padding-top:10px;
  padding-bottom:10px;
}
.hdr-right p {
  font-size: 14px;
  margin-bottom: 0px;
}
#hdr-container .hdr-right img {
  padding-top: 5px;
  padding-bottom: 5px;
}

h2.tagline {
  color: #36464D;
  font-size: 46px;
  text-align: left;
  line-height: 48px;
  margin-top: 20px;
  margin-bottom: 0;
}

h3.tagline {
  color: #595959;
  font-size: 32px;
  text-align: left;
  font-style: italic;
  line-height: normal;
  margin-top: 0px;
  margin-bottom: 10px;
}

#mainmenu {
  color: #fff;
  background-color: #374853;
}

#text-callout {
  background-color: #7C95A5;
  margin-bottom: 25px;
  border-bottom: 2px solid #bdc1c3;
}
#text-callout h3 {
  color: #e2e2e2;
  font-size: 32px;
  line-height: 40px;
  text-align: center;
  font-style: italic;
  padding: 25px 50px 15px 50px;
}

.features h2 {
  margin-top: 20px;
}
section.bg {
  background-color: #F2F5F2;
  border-top: 1px solid #E3EAE3;
  border-bottom: 1px solid #E3EAE3;
  padding-top: 15px;
  padding-bottom: 15px;
  margin-bottom: 40px;
}

.construction-hdr, .renovation-hdr {
  background-color: #cfdee4;
  padding-top: 40px;
  padding-bottom: 25px;
  margin-top: 0;
  margin-bottom: 0;
  border-bottom: 1px solid #b4cad2;
}
.renovation-hdr {
  margin-bottom: 30px;
}

.construction-hdr img {
  margin-top: 30px;
}

.projects {
  margin-top: 20px;
}
.proj-gallery {
  background-color: #52585A;
}

/* before/after pics */
.twenty20 {
  max-width: 770px;
  margin-bottom: 30px;
}

.award-div {
  margin-top: 25px;
}
.award-div:nth-child(even) {
  background-color: #EDEDED;
  border-top: 1px solid #E0E0E0;
  border-bottom: 1px solid #E0E0E0;
}

div.bldg-btns ul.p7TKL-list-h li a {
  font-size: 13px;
  margin: 5px;
}

div.bldg-btns ul.p7TKL-list-h {
  text-align: center;
}

div.bldg-btns { display:table; margin:0 auto; }

#footer {
  color:#eaeaea;
  background-color: #1A1A1A;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
}
#footer h4 {
  color: #CBDEE8;
  text-transform: uppercase;
}
#footer hr {
  border: 0px solid #444; border-top-width: 1px;
  margin-top: 60px;
  width: 80%;
}

#footer a,
#footer a:link,
#footer a:visited {
  color: #C4D8E0;
  text-decoration: none;
}
#footer a:hover {
  color: #ffffff;
}
#footer-left {
  padding-top: 30px;
  padding-bottom: 30px;
  padding-right: 20px;
}
#footer-middle {
  font-size: 0.9em;
  border-right: 1px solid #6b6a6a;
  padding-top: 30px;
  padding-bottom: 30px;
}
#footer-right {
  font-size: 0.8em;
  padding-top: 30px;
  padding-bottom: 30px;
}

.copyright {
  color: #999;
  margin-top: 30px;
  text-align: center;
}
.designedby {
  color: #999;
  margin-top: 15px;
  text-align: center;
}
.designedby a, .designedby a:visited {
  color: #777 !important;
}
.designedby a:hover {
  color: #aaa !important;
}

a.phone-lt,
a.phone-lt:link,
a.phone-lt:visited {
  color: #FAFAFA;
  text-decoration: none;
}
a.phone-lt:hover {
  color: #D2DCFE;
}


/*==========================
      Buttons enjoycss.com
===========================*/

.btn-margin-vertical {
  margin-top: 10px;
  margin-bottom: 10px;
}

.greenbtn, .greenbtn:visited {
  display: inline-block;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  cursor: pointer;
  padding: 10px 24px;
  border: 1px solid #018dc4;
  -webkit-border-radius: 7px;
  border-radius: 7px;
  font: normal 16px/normal Tahoma, Geneva, sans-serif;
  color: #fff;
  -o-text-overflow: clip;
  text-overflow: clip;
  background: #19931f;
  -webkit-box-shadow: 2px 2px 2px 0 rgba(0,0,0,0.2) ;
  box-shadow: 2px 2px 2px 0 rgba(0,0,0,0.2) ;
  text-shadow: -1px -1px 0 rgba(15,73,168,0.66) ;
  -webkit-transition: all 500ms cubic-bezier(0.42, 0, 0.58, 1);
  -moz-transition: all 500ms cubic-bezier(0.42, 0, 0.58, 1);
  -o-transition: all 500ms cubic-bezier(0.42, 0, 0.58, 1);
  transition: all 500ms cubic-bezier(0.42, 0, 0.58, 1);
}

.greenbtn:hover {
  color: #fff;
  background: rgba(61,114,63,1);
  -webkit-transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
  -moz-transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
  -o-transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
  transition: all 400ms cubic-bezier(0.42, 0, 0.58, 1);
}

p.view-btn {
  font-size: 13px;
  text-align: left;
}

p.awards-btn {
  text-align: center;
  margin-top: 20px;
}

.mbx-external {
  color: inherit !important;
}

/*====================
      /Buttons
====================*/


#back-top span {
  width: 50px;
  height: 50px;
  display: inline-block;
  margin-bottom: 25px;
  background: #dddddd url(up-arrow.png) no-repeat center center;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
  -webkit-transition: 1s;
  -moz-transition: 1s;
  transition: 1s;
  position: fixed;
  bottom: 0px;
  right: 0px;
  z-index: 9999;
}

/*===  Foundation overrides ===*/

ul, ol, dl {
  list-style-position: inside;
}

.thumbnail {
  border: solid 5px #fefefe;
}

.hbresources .card {
  background-color: #F2F5F2;
  border: 1px solid #ccc;
  height: 100%;
}
.hbresources .card .card-section {
  font-size: 15px;
}
.hbresources .card .card-section h3 {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
}
.hbresources .card .card-section h3 span {
  font-weight: normal;
  font-size: 15px;
  font-style: italic;
}
.hbresources p.card-link {
  text-align: center;
}

.orbit-bullets button {
  width: 0.9rem;
  height: 0.9rem;
}

.orbit-container {
  margin-bottom: 20px;
  width: 100%;
}
.orbit-slide img {
  width: 100%;
}

#bldg-categories .grid-margin-y > .cell {
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
}

/*=========== media queries =========*/

/* Small only */
@media screen and (max-width: 39.9375em) {

h2.tagline {
  font-size: 36px;
  text-align: center;
}

h3.tagline {
  font-size: 28px;
  text-align: center;
}

#text-callout h3 {
  font-size: 24px;
}

p.view-btn {
  text-align: center;
}

}


/* Medium only */
@media screen and (min-width: 40em) and (max-width: 63.9375em) {


}

/* Small & Medium */
@media screen and (max-width: 63.9375em) {

img.logo {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.hdr-right {
  margin-top: 20px;
}
.hdr-right p {
  text-align: center;
}

span.inline-at-medium {
  text-align: center;
  display: inline;
  margin-right: 20px;
}
span.center-span {
  display: table;
  margin: 0 auto;
  padding-bottom: 10px;
}

#footer-middle {
  border-right: none;
}

}

/* Large and up */
@media screen and (min-width: 64em) {

}

/* XLarge and up */
@media screen and (min-width: 90em) {
.orbit-slide img {
  width: 77% !important;
  display: table;
  margin-left: auto;
  margin-right: auto;
}
}




/*========= foundation visibility classes =========*/

@media screen and (max-width: 39.9375em) {
  .hide-for-small-only {
    display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important; } }

@media screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important; } }

@media screen and (max-width: 39.9375em) {
  .show-for-medium {
    display: none !important; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .hide-for-medium-only {
    display: none !important; } }

@media screen and (max-width: 39.9375em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important; } }

@media screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important; } }

@media screen and (max-width: 63.9375em) {
  .show-for-large {
    display: none !important; } }

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .hide-for-large-only {
    display: none !important; } }

@media screen and (max-width: 63.9375em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important; } }

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0); }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  height: auto;
  width: auto;
  overflow: visible;
  clip: auto; }

.show-for-landscape,
.hide-for-portrait {
  display: block !important; }
  @media screen and (orientation: landscape) {
    .show-for-landscape,
    .hide-for-portrait {
      display: block !important; } }
  @media screen and (orientation: portrait) {
    .show-for-landscape,
    .hide-for-portrait {
      display: none !important; } }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }
  @media screen and (orientation: landscape) {
    .hide-for-landscape,
    .show-for-portrait {
      display: none !important; } }
  @media screen and (orientation: portrait) {
    .hide-for-landscape,
    .show-for-portrait {
      display: block !important; } }