/* Theme Name - SCSS Document */
/**** **** **** ****/
/* Variables */
/**** **** **** ****/
/**** **** **** ****/
/* SCSS Imports */
/**** **** **** ****/
/*Foundation Imports*/
/*
@import "components/_buttons";
@import "components/_cards";
@import "components/_dividers";
@import "components/_featured-image";
@import "components/_links"; 
@import "app";
//@import "editor";

/*
@import "components/font-face";
@import "components/header";
@import "components/footer";
@import "components/hero";
@import "components/sidebar";
@import "components/accordions";
@import "components/map";
@import "components/callboxes";
@import "components/banner";
@import "components/site-animations"; 
@import "components/grey-area-content";
@import "components/icons_grid";
*/
/* Media Query Breakpoints */
/* //////////////////////// */
/* **** Content **** */
/*Off Canvas*/
.js-off-canvas-overlay.is-visible {
  background: rgba(0, 0, 0, 0.5); }

/*Main Wrap*/
.main-wrap.full-width {
  max-width: 100%; }
  .main-wrap.full-width .row {
    max-width: 75rem;
    margin-left: auto;
    margin-right: auto; }

/*Headings*/
body h2 {
  color: #2569b3;
  font-size: 2.25rem;
  line-height: 2.5rem;
  font-weight: bold;
  letter-spacing: .02em; }
body h3 {
  color: #7E7E7E; }
body h4 {
  color: #ffcc33;
  font-weight: bold; }

/*Orbit Hero Slider*/
.clean-hero-slider .orbit-caption {
  width: auto;
  height: auto;
  background: #000;
  position: absolute;
  text-align: center;
  right: 0;
  left: 0;
  padding: 0.2rem 2rem; }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .clean-hero-slider .orbit-caption {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      background: rgba(0, 0, 0, 0.6);
      text-align: left;
      width: 70%;
      right: 0;
      padding: 1rem 2rem; } }
  .clean-hero-slider .orbit-caption p {
    font-size: 0.9rem;
    line-height: 1.25; }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .clean-hero-slider .orbit-caption p {
        font-size: 1.1rem; } }
  .clean-hero-slider .orbit-caption h3 {
    color: #ffcc33;
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 0; }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .clean-hero-slider .orbit-caption h3 {
        font-size: 2.5rem;
        font-weight: normal; } }
.clean-hero-slider .orbit-slide {
  padding-bottom: 40%;
  background: #000; }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .clean-hero-slider .orbit-slide {
      padding-bottom: 0; } }
.clean-hero-slider .orbit-controls button {
  background: #ffcc33;
  padding: 1rem 0.5rem; }
  .clean-hero-slider .orbit-controls button:hover {
    background: #fff;
    color: #000; }
@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .clean-hero-slider .orbit-controls .orbit-previous {
    left: auto;
    right: 2.4rem; } }
@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .clean-hero-slider .orbit-controls .orbit-next {
    right: 0.5rem; } }
.clean-hero-slider .orbit-bullets {
  display: none; }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .clean-hero-slider .orbit-bullets {
      display: block;
      margin-bottom: 0;
      margin-top: -3rem;
      background: none; } }
  .clean-hero-slider .orbit-bullets button {
    width: 3rem;
    height: 0.4rem;
    border-radius: 0;
    background-color: #fff; }
    .clean-hero-slider .orbit-bullets button.is-active {
      background-color: #ffcc33; }
.clean-hero-slider ul.orbit-container {
  height: auto !important; }
.clean-hero-slider li.orbit-slide {
  max-height: 75vh !important; }

/*Split Block*/
.split_block .img-col {
  padding: 0;
  background-size: cover;
  background-position: center center; }
.split_block .content-col .panel-content {
  padding: 2.5rem;
  padding-left: calc(2.5rem - .9375rem);
  padding-right: calc(2.5rem - .9375rem); }
.split_block .content-col .headline {
  color: #2569b3; }
.split_block .content-col .preheadline {
  color: #666; }
.split_block .content-col .subheadline {
  color: #666; }
.split_block .content-col.primary {
  background: #2569b3; }
.split_block .content-col.secondary {
  background: #ffcc33; }
.split_block .content-col.other {
  background: #D8D8D8; }
.split_block .content-col.white {
  background: #fff; }
  .split_block .content-col.white * {
    color: #444; }
  .split_block .content-col.white .headline {
    color: #2569b3; }
  .split_block .content-col.white .preheadline {
    color: #666; }
  .split_block .content-col.white .subheadline {
    color: #666; }
.split_block .content-col.black {
  background: #000; }
  .split_block .content-col.black * {
    color: #fff; }
  .split_block .content-col.black .headline {
    color: #ccc; }
  .split_block .content-col.black .preheadline {
    color: #9F9F9F; }
  .split_block .content-col.black .subheadline {
    color: #9F9F9F; }
.split_block .row.full {
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0; }
@media screen and (min-width: 40em) {
  .split_block .row.split-img-left, .split_block .row.split-img-right {
    display: flex;
    flex-direction: row; }
    .split_block .row.split-img-left .img-col, .split_block .row.split-img-left .content-col, .split_block .row.split-img-right .img-col, .split_block .row.split-img-right .content-col {
      width: 50%; } }
@media screen and (max-width: 39.9375em) {
  .split_block .row.split-img-left, .split_block .row.split-img-right {
    flex-direction: column; } }
@media screen and (min-width: 40em) {
  .split_block .row.split-img-right {
    flex-direction: row-reverse; } }
@media screen and (max-width: 39.9375em) {
  .split_block .row.split-img-right {
    flex-direction: column-reverse; } }
@media screen and (min-width: 40em) {
  .split_block .row.two-third-photo {
    display: flex;
    flex-direction: row; }
    .split_block .row.two-third-photo .img-col {
      width: 66.66667%; }
    .split_block .row.two-third-photo .content-col {
      width: calc(100% - 66.66667%); } }
@media screen and (min-width: 40em) {
  .split_block .row.one-third-photo {
    display: flex;
    flex-direction: row; }
    .split_block .row.one-third-photo .img-col {
      width: calc(100% - 66.66667%); }
    .split_block .row.one-third-photo .content-col {
      width: 66.66667%; } }

/*Flex Cards*/
.flex-cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%; }
  .flex-cards .card {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-shadow: none; }
    .flex-cards .card .card-content {
      -webkit-box-flex: 1;
      -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
      flex: 1 0 auto;
      padding: 1rem; }
    .flex-cards .card .card-divider {
      -webkit-box-flex: 0;
      -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
      flex: 0 1 auto;
      padding: 1rem; }
    .flex-cards .card img {
      width: 100%; }
  @media print, screen and (min-width: 40em) {
    .flex-cards {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      width: 100%; }
      .flex-cards .card {
        width: 32%; } }

p:last-child, .button:last-child {
  margin-bottom: 0; }

.button {
  background: #2569b3; }
  .button:hover {
    opacity: .8;
    background: #000; }

.footer-container {
  margin-top: 0; }

/*Move This to Theme SCSS file? */
/*Banda Construction Theme Styles*/
body, html, html body {
  font-size: 18px; }

body {
  background: #e5e5e5; }

header.site-header {
  position: relative;
  z-index: 10; }
  header.site-header .title-bar, header.site-header .top-bar {
    background: #2569b3; }
    header.site-header .title-bar a, header.site-header .top-bar a {
      color: #fff; }
      header.site-header .title-bar a:hover, header.site-header .top-bar a:hover {
        background: #003f66; }
  header.site-header .site-title-bar a.brand img {
    height: 50px; }
  header.site-header .top-bar {
    padding: 0; }
  header.site-header .centered-menu a.brand {
    background-color: transparent;
    background-size: cover;
    background-origin: content-box;
    position: relative;
    z-index: 1;
    float: none;
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 250px;
    padding: 28px 15px;
    height: 101px;
    margin-bottom: -101px;
    border-left: 3px solid #fff;
    border-right: 3px solid #fff; }
    header.site-header .centered-menu a.brand:hover {
      background-color: #003f66 !important;
      -webkit-transition: background 0.3s ease;
      -ms-transition: background 0.3s ease;
      -moz-transition: background 0.3s ease;
      -o-transition: background 0.3s ease;
      transition: background 0.3s ease; }
  header.site-header .centered-menu ul.menu {
    float: none;
    margin: 0 auto; }
    header.site-header .centered-menu ul.menu > li {
      width: calc((100% - 250px) / 4);
      display: table;
      position: static;
      float: left;
      text-align: center;
      height: 101px; }
      header.site-header .centered-menu ul.menu > li:nth-child(3) {
        margin-left: calc(250px); }
      header.site-header .centered-menu ul.menu > li > a {
        transition: all .5s;
        text-decoration: none;
        position: relative;
        display: table-cell;
        padding: 0 10px;
        line-height: 15px;
        vertical-align: middle;
        border-left: 1px solid #fff;
        border-right: 1px solid #fff; }
        header.site-header .centered-menu ul.menu > li > a:hover {
          background-color: #003f66;
          -webkit-transition: background 0.3s ease;
          -ms-transition: background 0.3s ease;
          -moz-transition: background 0.3s ease;
          -o-transition: background 0.3s ease;
          transition: background 0.3s ease; }
      header.site-header .centered-menu ul.menu > li:first-child a {
        border-left-width: 3px;
        border-right: 0; }
      header.site-header .centered-menu ul.menu > li:last-child a {
        border-right-width: 3px;
        border-left: 0; }

#hero-header {
  padding: 5rem 0;
  background-size: cover;
  background-position: center center; }
  #hero-header .row {
    padding-top: 1.5rem;
    padding-bottom: 1rem; }
  #hero-header .title-container {
    background-image: linear-gradient(135deg, #fff 8.33%, rgba(255, 255, 255, 0) 8.33%, rgba(255, 255, 255, 0) 50%, #fff 50%, #fff 58.33%, rgba(255, 255, 255, 0) 58.33%, rgba(255, 255, 255, 0) 100%);
    background-size: 16.97px 16.97px;
    width: calc((100% / 2) + (250px / 2));
    padding: 2rem;
    float: right; }
    #hero-header .title-container .page-title {
      color: #fff;
      text-transform: uppercase;
      line-height: 2rem;
      margin: 0;
      padding: 0;
      text-shadow: 2px 4px 8px rgba(0, 0, 0, 0.5); }
      #hero-header .title-container .page-title:before {
        content: "";
        width: 5px;
        height: 150%;
        display: block;
        position: relative;
        left: 0;
        top: -100px; }
    #hero-header .title-container .subheadline {
      color: #2569b3;
      font-size: 1.2em;
      letter-spacing: .02em;
      line-height: 1.4em; }
    #hero-header .title-container .description {
      color: #003f66;
      font-size: 1em;
      line-height: 1.2em; }
    #hero-header .title-container .title-support {
      margin: 0;
      padding: 1rem;
      background: #fff;
      box-shadow: 2px 4px 8px rgba(0, 0, 0, 0.5);
      position: relative;
      z-index: 5; }
      #hero-header .title-container .title-support div, #hero-header .title-container .title-support p {
        padding: 0;
        margin: 0; }
    #hero-header .title-container:before, #hero-header .title-container:after {
      content: "";
      display: block;
      position: absolute;
      background: #fff; }
    #hero-header .title-container:before {
      width: 75%;
      height: 5px;
      margin-top: -2rem;
      margin-left: -16%; }
    #hero-header .title-container:after {
      width: 3px;
      height: 14rem;
      margin: -10rem 0 0 -2rem; }

body.home .main-wrap {
  margin: 0;
  padding: 0; }
  body.home .main-wrap * {
    margin: 0;
    padding: 0; }
body.home #home-feature {
  min-height: 63vh;
  border-top: 5px solid #fff;
  border-bottom: 5px solid #fff; }
  body.home #home-feature #feature-left, body.home #home-feature #feature-right {
    padding-left: 0;
    padding-right: 0; }
    body.home #home-feature #feature-left .description, body.home #home-feature #feature-right .description {
      padding: 0;
      margin: 1rem 0; }
  body.home #home-feature #feature-left {
    text-align: center; }
    body.home #home-feature #feature-left .intro-wrapper {
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 100%;
      border-right: 2px solid #fff; }
      body.home #home-feature #feature-left .intro-wrapper .intro {
        padding: 2rem 2rem 2rem 1.5rem;
        text-align: left;
        align-content: flex-start;
        background-image: linear-gradient(135deg, #fff 8.33%, rgba(255, 255, 255, 0) 8.33%, rgba(255, 255, 255, 0) 50%, #fff 50%, #fff 58.33%, rgba(255, 255, 255, 0) 58.33%, rgba(255, 255, 255, 0) 100%);
        background-size: 16.97px 16.97px; }
        body.home #home-feature #feature-left .intro-wrapper .intro .content {
          background: #2569b3;
          padding: 1.5rem;
          border-left: 5px solid #fff; }
      body.home #home-feature #feature-left .intro-wrapper h2 {
        /*mixin for page titles?*/
        color: #fff;
        text-transform: uppercase;
        line-height: 2rem;
        margin: 0;
        padding: 0;
        text-shadow: 2px 4px 8px rgba(0, 0, 0, 0.5);
        /*end mixin for page titles?*/ }
        body.home #home-feature #feature-left .intro-wrapper h2:before {
          content: "";
          width: 5px;
          height: 150%;
          display: block;
          position: relative;
          left: 0;
          top: -100px; }
        body.home #home-feature #feature-left .intro-wrapper h2 span {
          text-transform: capitalize;
          font-size: 1em;
          line-height: 1.2em;
          margin: 0; }
        @media screen and (min-width: 40em) {
          body.home #home-feature #feature-left .intro-wrapper h2 span {
            display: block;
            clear: both;
            width: 100%; } }
  body.home #home-feature #feature-right .cell {
    padding: 4rem; }
    body.home #home-feature #feature-right .cell:first-child {
      border-bottom: 0; }
    body.home #home-feature #feature-right .cell:last-child {
      border-top: 0; }
    body.home #home-feature #feature-right .cell .cell-content {
      text-align: center;
      padding: 1.2rem;
      background: rgba(255, 255, 255, 0.6);
      border: 1px solid #fff; }
      body.home #home-feature #feature-right .cell .cell-content h3 {
        margin-bottom: 0; }
      body.home #home-feature #feature-right .cell .cell-content .button {
        border: 2px solid #fff;
        padding: .75rem 1rem;
        text-transform: uppercase;
        background: transparent;
        margin: 0; }
        body.home #home-feature #feature-right .cell .cell-content .button:hover {
          background: rgba(0, 0, 0, 0.5);
          box-shadow: 0 0 25px rgba(0, 0, 0, 0.5); }
    body.home #home-feature #feature-right .cell.cell-1 {
      background-image: linear-gradient(135deg, #fff 8.33%, rgba(255, 255, 255, 0) 8.33%, rgba(255, 255, 255, 0) 50%, #fff 50%, #fff 58.33%, rgba(255, 255, 255, 0) 58.33%, rgba(255, 255, 255, 0) 100%);
      background-size: 16.97px 16.97px; }
      body.home #home-feature #feature-right .cell.cell-1 .cell-content {
        background: #fff; }
    body.home #home-feature #feature-right .cell.cell-2 .cell-content {
      background: #2569b3; }
  @media screen and (min-width: 40em) {
    body.home #home-feature #feature-left {
      width: calc(50% + 125px); }
    body.home #home-feature #feature-right {
      width: calc( 100% - (50% + 125px)); } }

.cta-area {
  background: #2569b3;
  padding: 1.5rem 0; }
  .cta-area .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-image: linear-gradient(135deg, #fff 8.33%, rgba(255, 255, 255, 0) 8.33%, rgba(255, 255, 255, 0) 50%, #fff 50%, #fff 58.33%, rgba(255, 255, 255, 0) 58.33%, rgba(255, 255, 255, 0) 100%);
    background-size: 16.97px 16.97px; }
  .cta-area .columns#message-wrapper {
    padding: 1.5rem; }
  .cta-area .columns * {
    color: #fff; }
  .cta-area .columns .message {
    background: #fff;
    padding: 1.5rem;
    color: #003f66;
    font-size: 1.25rem;
    line-height: 1.4rem; }
  .cta-area .columns .button {
    border: 2px solid #fff;
    padding: .75rem 1rem;
    text-transform: uppercase;
    background: transparent;
    margin: 0;
    background: #003f66;
    font-size: 1.25rem;
    line-height: 1.4rem;
    font-weight: bold; }
    .cta-area .columns .button:hover {
      background: rgba(0, 0, 0, 0.5);
      box-shadow: 0 0 25px rgba(0, 0, 0, 0.5); }
    .cta-area .columns .button:hover {
      opacity: 1;
      background: #fff;
      color: #2569b3;
      border-color: #2569b3; }

#services {
  background: #2569b3 url("../images/services-background.jpg") center bottom no-repeat;
  background-size: cover;
  background-attachment: fixed;
  padding: 4rem 0; }
  #services #services-intro {
    margin-bottom: 1.5rem; }
    #services #services-intro header * {
      color: #fff;
      text-shadow: 0 0 0.25rem rgba(0, 0, 0, 0.2); }

.services-wrapper .service-item {
  text-align: center;
  background: rgba(0, 0, 0, 0.5);
  margin-bottom: 0;
  border: none; }
  .services-wrapper .service-item .card-image {
    border-bottom: 0;
    padding: 1rem; }
    .services-wrapper .service-item .card-image img {
      border: 3px solid #fff; }
  .services-wrapper .service-item .card-divider {
    background: rgba(255, 255, 255, 0.85);
    background-image: linear-gradient(135deg, #fff 8.33%, rgba(255, 255, 255, 0) 8.33%, rgba(255, 255, 255, 0) 50%, #fff 50%, #fff 58.33%, rgba(255, 255, 255, 0) 58.33%, rgba(255, 255, 255, 0) 100%);
    background-size: 16.97px 16.97px; }
    .services-wrapper .service-item .card-divider h4 {
      color: #2569b3; }
  .services-wrapper .service-item .description {
    padding-bottom: 1.5rem;
    color: #fff; }
    .services-wrapper .service-item .description * {
      color: #fff; }

.card-box .info h3, .card-box .info p {
  padding-left: .5rem;
  padding-right: .5rem; }
.card-box .info h3 {
  border-bottom: 1px solid #ddd;
  background: #fff;
  padding-top: .85rem;
  padding-bottom: .5rem; }
.card-box .info p {
  background: #fff;
  color: #666;
  padding: .5rem; }

#about-tabs-area {
  background: #003f66; }
  #about-tabs-area .row {
    min-height: 20rem; }
  #about-tabs-area #hover-tab-nav, #about-tabs-area #hover-tab-content {
    display: flex;
    flex-direction: column;
    align-content: center;
    min-height: 20rem;
    max-height: calc($tab-height + 1px); }
  #about-tabs-area #hover-tab-nav {
    justify-content: center;
    position: relative; }
    #about-tabs-area #hover-tab-nav button.tablinks {
      color: #ffcc33;
      min-height: 60px; }
      #about-tabs-area #hover-tab-nav button.tablinks:after {
        content: "";
        border-bottom: 40px solid transparent;
        border-top: 40px solid transparent;
        height: 0;
        left: 100%;
        margin: -30px 0 0 -10px;
        position: absolute;
        left: 100%;
        width: 0;
        z-index: 5; }
      #about-tabs-area #hover-tab-nav button.tablinks.active:after {
        border-left: 40px solid #003f66; }
  #about-tabs-area #hover-tab-content {
    justify-content: space-around;
    background: #2569b3;
    border: 5px solid #fff;
    border-top: none;
    border-bottom: none; }
    #about-tabs-area #hover-tab-content .tabcontent {
      max-width: 80%;
      margin: 0 auto;
      padding: 1.5rem;
      background: #fff;
      display: none; }
      #about-tabs-area #hover-tab-content .tabcontent p br {
        margin-bottom: 1rem; }
      #about-tabs-area #hover-tab-content .tabcontent p:last-child {
        margin-bottom: 0; }

#feature-project {
  background: #D8D8D8 url("../images/featuredproject-background.jpg") right bottom no-repeat fixed;
  padding-top: 5rem;
  padding-bottom: 3rem; }
  #feature-project .row {
    position: relative; }
  #feature-project .project-image {
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    border-bottom: 10px solid #fff; }
    #feature-project .project-image img {
      width: 100%;
      max-width: 100%; }
  #feature-project .project-info {
    background: #fff;
    padding: 2rem;
    max-width: 80%;
    margin: 0 auto;
    position: absolute;
    bottom: 0;
    left: calc(50%);
    margin-left: calc(-80% / 2); }
    #feature-project .project-info .clearfix {
      margin: .5rem 0; }
    #feature-project .project-info .button {
      margin: 0; }
      #feature-project .project-info .button#view-all {
        float: left; }
      #feature-project .project-info .button#view-this {
        float: right; }

.project {
  margin: 1.5rem 0; }
  @media screen and (min-width: 40em) {
    .project .img-col, .project .content-col {
      min-height: 15rem; } }

body.contact-page #map iframe {
  width: 100% !important;
  height: 300px; }

.footer-container {
  background: #2569b3;
  color: #fff;
  border-top: 5px solid #fff; }
  .footer-container .footer {
    padding: 0; }
  .footer-container #footer-bottom {
    background: rgba(0, 0, 0, 0.5);
    padding: 2rem 0;
    color: #fff;
    font-size: .8em;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.02em; }
    .footer-container #footer-bottom span.bar {
      margin: 0 5px; }
      .footer-container #footer-bottom span.bar:after {
        content: "/";
        color: #fff;
        display: inline; }
