@font-face {
font-family: 'DIN';
src: url('../fonts/DIN/dinbold-webfont.eot');
src: url('../fonts/DIN/dinbold-webfont.ttf') format('truetype'),
     url('../fonts/DIN/dinbold-webfont.woff') format('woff'),
     url('../fonts/DIN/dinbold-webfont.eot?#iefix') format('embedded-opentype'),
     url('../fonts/DIN/dinbold-webfont.svg#QuadrantaBold') format('svg');
font-weight: 700;
font-style: normal;
}

/*generic styles*/
body{
    font-family: 'Questrial', sans-serif !important;
    overflow-x: hidden;
}

.modal-on{
    width: 100%;
}

h2{
    letter-spacing: 2px;
}

/*reusable styles*/
.mar-bot-10{
    margin-bottom: 10px;
}

.mar-bot-20{
    margin-bottom: 20px;
}

.mar-bot-30{
    margin-bottom: 30px;
}

h3{
    line-height: 30px;
}

.uppercase{
    text-transform: uppercase;
}

@keyframes fadeOut {
  to {
    opacity: 0;
  }
}

.fadeout {
  animation: fadeOut .3s ease-in 1 forwards;
}

.spinner {
  width: 40px;
  height: 40px;

  position: relative;
  margin: 100px auto;
}

.loading{
    background: #ffffff;
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.loading .table{
    display: table;
    margin: 0;
    padding: 0;
    table-layout: fixed;
    width: 100%;
    height: 100%;
}

.loading .table .cell{
    display: table-cell;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    vertical-align: middle;
}

.loading .spinner{
    display: inline-block;
}

.double-bounce1, .double-bounce2 {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #999999;
  /*opacity: 0.6;*/
  position: absolute;
  top: 0;
  left: 0;
  
  -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
  animation: sk-bounce 2.0s infinite ease-in-out;
}

.double-bounce2{
    background-color: #ca1d39;
}

.double-bounce2 {
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s;
}

@-webkit-keyframes sk-bounce {
  0%, 100% { -webkit-transform: scale(0.0) }
  50% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bounce {
  0%, 100% { 
    transform: scale(0.0);
    -webkit-transform: scale(0.0);
  } 50% { 
    transform: scale(1.0);
    -webkit-transform: scale(1.0);
  }
}

/*form elements*/

textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
.uneditable-input,
button{   
    border-top: 0;
    border-right: 0;
    border-left: 0;

    -webkit-box-shadow: none;
    box-shadow: none;
    border-radius: 0;

    padding-left: 0;
    margin-left: 0;

    padding-bottom: 0px;
}

.form-group{
    margin-bottom: 26px;
}

.form-control:focus,
textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus,
button:focus{   
    border-color: white;
    box-shadow: none;
    -webkit-box-shadow: none;
    outline: 0 none;

    border-top: 0;
    border-right: 0;
    border-left: 0;

    -webkit-box-shadow: none;
    box-shadow: none;
}

textarea.form-control{
    border-radius: 0;
}

.houzz-button{
    position: fixed;
    right: 0;
    top: 37%;
    bottom: 50%;
    z-index: 200;
    width: 48px;
    height: 181px;
    /*border: 1px solid white;*/
    border-right: none;
}

#houzz-modal {
    width: 300px;
    height: 435px;
    margin: auto auto;
    position: relative;
}

#houzz-modal .mfp-close{
    color: white;
}

textarea.form-control.gray:focus{
    border: 1px solid black;
    border-color: black;
}

input,
form-control{
    border-top: 0;
    border-left: 0;
    border-right: 0;
    background-color: transparent;

    padding-left: 0;
    margin-left: 0;
    color: white;
    font-weight:
    normal;
    letter-spacing: 1.1px;
}


input.input-white, textarea.input-white {
    border: 0;   
    border-bottom: 1px solid white;
    width: 100%;
    padding-bottom: 5px;
    background-color: transparent;
    color: white !important;
    font-size: 16px !important;
    padding-left: 0;
}

input.input-red{
    border-bottom: 1px solid #ca1d39;
    width: 100%;
    padding-bottom: 5px;
    color: #ca1d39;
    font-weight: bold;
    font-size: 16px;
}

input.input-red:focus{
    border-color: inherit;
}

input::-webkit-input-placeholder { font-weight: bold; margin-bottom: 5px; font-size: 16px; color: #ca1d39; }  /* WebKit, Blink, Edge */
input:-moz-placeholder { font-weight: bold; margin-bottom: 5px; font-size: 16px; color: #ca1d39; }  /* Mozilla Firefox 4 to 18 */
input::-moz-placeholder { font-weight: bold; margin-bottom: 5px; font-size: 16px; color: #ca1d39;}  /* Mozilla Firefox 19+ */
input:-ms-input-placeholder { font-weight: bold; margin-bottom: 5px; font-size: 16px; color: #ca1d39;}  /* Internet Explorer 10-11 */
input::-ms-input-placeholder { font-weight: bold; margin-bottom: 5px; font-size: 16px; color: #ca1d39; }  /* Microsoft Edge */

.form-control::-webkit-input-placeholder { color: rgba(253, 253, 253, 0.5) !important; padding-left: 0; margin-left: 0; font-weight: normal; letter-spacing: 1.1px; }  /* WebKit, Blink, Edge */
.form-control:-moz-placeholder { color: rgba(253, 253, 253, 0.5) !important; padding-left: 0; margin-left: 0; font-weight: normal; letter-spacing: 1.1px; }  /* Mozilla Firefox 4 to 18 */
.form-control::-moz-placeholder { color: rgba(253, 253, 253, 0.5) !important; padding-left: 0; margin-left: 0; font-weight: normal; letter-spacing: 1.1px; }  /* Mozilla Firefox 19+ */
.form-control:-ms-input-placeholder { color: rgba(253, 253, 253, 0.5) !important; padding-left: 0; margin-left: 0; font-weight: normal; letter-spacing: 1.1px; }  /* Internet Explorer 10-11 */
.form-control::-ms-input-placeholder { color: rgba(253, 253, 253, 0.5) !important; padding-left: 0; margin-left: 0; font-weight: normal; letter-spacing: 1.1px; }  /* Microsoft Edge */

.form-control.gray::-webkit-input-placeholder { color: #b2b2b2 !important; }  /* WebKit, Blink, Edge */
.form-control.gray:-moz-placeholder { color: #b2b2b2 !important; }  /* Mozilla Firefox 4 to 18 */
.form-control.gray::-moz-placeholder { color: #b2b2b2 !important; }  /* Mozilla Firefox 19+ */
.form-control.gray:-ms-input-placeholder { color: #b2b2b2 !important; }  /* Internet Explorer 10-11 */
.form-control.gray::-ms-input-placeholder { color: #b2b2b2 !important; }  /* Microsoft Edge */

.form-control{
    font-size: 16px;
}
.form-control.gray:focus{
    border-color: black;
}

button{
    background-color: rgba(0, 0, 0, 0.0);
    border-radius: 17px;
    padding: 8px 30px;
    text-transform: uppercase;
    /*color: #ca1d39;*/
    letter-spacing: 1.5px;
    transition: background-color 0.3s, border 0.1s;    
}

button.button-default a{
    transition: color 0.3s;
}

button.button-red{
    border: 1px solid #ca1d39;
}

button.button-default{
    border: 1px solid black;
}

button.button-default:hover{
    background-color: black;
    color: white;
}

button.button-default:hover a{
    color: white;
}

button.button-medium{
    padding: 5px 25px;
    font-size: 12px;
}

.button-bold{
    border-width: 2px;
}

button.button-inverted{
    border: 1px solid white;
    background-color: rgba(0, 0, 0, 0.0);
    color: white;
}

button.button-inverted a{
    color: white;
}

button.button-inverted:hover{
    background-color: white;
}

button.button-inverted:hover a{
    color: black;
}

.call-to-action-button,
.call-to-action-button a{
    color: white !important;
}

.call-to-action-button:hover{
    color: #ca1d39;
    /*font-weight: bold;*/
    background-color: white !important;
}

.call-to-action-button:hover,
.call-to-action-button:hover a{
    color: #ca1d39 !important;
}

button.button-red,
button.button-red a{
    color: #ca1d39;
}

button.button-red:hover{
    background-color: #ca1d39;
}

button.button-red:hover,
button.button-red:hover a{
    color: white;
}

/*end form elements*/

a{
    color: black;
}

a:hover{
    text-decoration: none;
    color: #ca1d39;
}

a:focus{
    outline: none;
}

.nav-bar-cont{
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 9;
    text-align: center;
}

.nav-bar-inner{
    height: 100px;
    width: 92%;
    margin: auto;
    border-bottom: 1px solid rgba(255, 255, 255, 0.33);
}

.nav-bar-cont .logo{
    position: absolute;
    top: 25px;
    left: 50px;
}

.nav-bar-cont .logo .small-logo{
    display: none;
    width: 85px !important;
}

.nav-bar-cont .logo .normal-logo,
.footer-cont .normal-logo{
    width: 261px;
    height: 56px;
}

.nav-bar-cont .nav-links{
    position: absolute;
    top: 40px;
    right: 35px;
}

.hamburger{
    padding: 0 !important;
    position: absolute;
    right: 75px;
    top: 40px;
    width: 5px;
    display: none;
    z-index: 2000;
}

.hamburger-box{
    width: 28px;
}

.hamburger:hover{
    opacity: 1;
}

.hamburger-inner,
.hamburger-inner:after,
.hamburger-inner:before{
    width: 28px;
    background-color: white;
    height: 2px;
}

.hamburger-inner:hover,
.hamburger-inner:hover:after,
.hamburger-inner:hover:before{
    color: red;
}

.nav-links ul li{
    display: inline-block;
}

.nav-links ul li a{
    text-transform: uppercase;
    padding: 0 15px;
    font-family: 'Questrial', sans-serif;
    color: white;
    letter-spacing: 1.5px;
    font-size: 14px;
    transition: all .3s ease-in-out;
}

.nav-links ul li a.current,
.nav-links ul li a:hover{
    color: #ca1d39;
    font-weight: bolder;
}

.banner-slider-cont{
    position: relative;
    height: 100vh;
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-6px);
    }
    60% {
        transform: translateY(-2px);
    }
}

.banner-slider-cont .arrow a{
    position: absolute;
    bottom: 72px;
    left: 50%;
    z-index: 100;
    color: #fff;
    animation: bounce 2s infinite;
    font-size: 10.3px;
}

.banner-slides{
    height: 100vh;    
    position: relative;
}

.banner{
    position: relative;
    height: 100vh;
    min-height: 350px;
    background-size: cover;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 2;
}

.banner-inner{
    height: 75vh;
}

.thank-you-page .banner-inner {
    max-height: 612px;
}

.casestudy-banner .number-overlay{
    z-index: 100;
    position: absolute;
    right: 15%;
    top: 55%;
}

.casestudy-banner .number-overlay img{
    width: 250px;
}

.casestudy-banner .banner-content .banner-copy{
    letter-spacing: 2px;
}

.casestudy-banner .banner-content .banner-copy.red{
    color: #cb1f3b;
}

.casestudy-banner .banner-content .banner-copy{
    font-size: 18px;
}

.banner-content{
    padding: 50px;
    z-index: 100;
    color: white;
    position: absolute;
    bottom: 5%;
    left: 12%;
    width: 600px;
}

.banner-content .banner-headline{
    text-transform: uppercase;
}

.banner-slide{
    /*position: absolute;*/
    z-index: -100;
    height: 100vh;
    width: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.banner-slider-cont .top-overlay{
    height: 160px;
    color: white;
    position: absolute;
    top: 50%;
    z-index: 100;
    left: 15%;
    width: 33%;
    width: 40%;
}

.banner-slider-cont .top-overlay h3{
    text-transform: uppercase;
    letter-spacing: 2px;
}

.dot-nav-slide{
    position: absolute;
    right: 20px;
    top: 0;
    height: 180px;
    width: 300px;    
    z-index: 1000;
    overflow: hidden;
    margin: auto;
    /*transition: top 0.5s;  */
}

.dot-nav-slide.active{
    position: fixed !important;
    top: 25% !important;
}

.dot-nav-slide .slide-wrapper{
    transition: transform .5s ease-in-out;
    float: right;
}

.dot-nav-slide div.active{
    font-weight: bold;
}

.dot-nav-slide .slick-current{
    background-color: white !important;
    color: white;
    border: 1px solid black;
}

.dot-nav-slide .numbers{
    padding: 10px 0;
    position: relative;
}

.dot-nav-slide .numbers span{
    cursor: pointer;
    background: #e5e5e5;
    width: 20px;
    height: 20px;
    border-radius: 100%;
    text-align: center;
    transition: background-color .1s ease;
    color: white;
    display: block;
}

.dot-nav-slide .numbers .text{
    visibility: hidden;
    opacity: 0 ;
    position: absolute;
    right: 25px;
    top: 11px;
    text-align: right;
    padding: 0 10px;
    transition: visibility .3s, opacity .3s ease-in-out;
    text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.2); 
    font-weight: bold;
    background-color: rgba(255, 255, 255, .7);
    white-space: nowrap;
    border-radius: 3px;
}

.dot-nav-slide .numbers:hover .text,
.dot-nav-slide .numbers.active .text{
    visibility: visible;
    font-weight: bold;
    opacity: 1;
}

.dot-nav-slide .numbers.active span{
    background: black;
    color: black;
    border: 1px solid black;
}

.dot-nav-slide .slick-current{
    font-weight: bold;
    background: black;
}

.slick-slide {
    outline: none !important;
}

.case-study-nav-wrapper{
    position: fixed;
    top: 30%;
    transition: top 0.5s;
    right: 15px;
    background-color: rgba( 0, 0, 0, 0.5 );
    border-radius: 20px;
    /*height: 265px;*/
    overflow: hidden;
    width: 500px;
}

.case-study-nav-wrapper ul{
    width: 50px;
    margin: 0;
    padding: 0;
    padding: 1px;
    background-color: rgba( 0, 0, 0, 0.5 );
    border-radius: 20px;
}

.case-study-nav-wrapper ul li{
    display: block;
    width: 14px;
    height: 13px;
    margin: 15px 7px;
    position: relative;
}

.case-study-nav-wrapper li a{
    display: block;
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    cursor: pointer;
    text-decoration: none;
    color: white;
}

.case-study-nav-wrapper li a span{
    height: 16px;
    width: 16px;
    margin: -6px 0 0 -8px;
    border-radius: 100%;
    background: white;

    border-radius: 50%;
    position: absolute;
    z-index: 1;    
    border: 0;
    background: white;
    left: 50%;
    top: 50%;
    -webkit-transition: all .1s ease-in-out;
    -moz-transition: all .1s ease-in-out;
    -o-transition: all .1s ease-in-out;
    transition: all .1s ease-in-out;
}

.case-study-nav-wrapper li a span{   
    background: black;
}

.slick-current a span{
    background-color: white !important;
}

.case-study-nav-wrapper.active{
    /*position: fixed !important;*/
    /*top: 25% !important;*/
}

.slick-dots li button:before{
    content: '&rsquo;';
}

.slick-arrow{
    position: absolute;
    top: 100px;
    z-index: 100;
    background-color: white;
}

ul.slick-dots{
    padding-left: 0;
    list-style-type: none;
}

.testimonials-list .slick-dots li button{
    border-radius: 100%;
    border: 2px solid black;
    width: 2px;
    height: 2px;
}

.testimonials-list ul.slick-dots{
    margin-top: 25px;
}

.testimonials-list .slick-dots li.slick-active button{
    border: 2px solid #ca1d39;
}

.testimonials-list .slick-dots li button:before{
    content: none !important;
}

.testimonials-list .slick-dots li{
    margin: 0 3px;
}

.slick-dots li:first-child{
    margin-left: 0;
}

.slick-dots li.slick-active button:before {
     opacity: 1; 
     color: white;
}

.testimonials-list .slick-dots li.slick-active button:before {
     opacity: 1; 
     color: white;
}

.slick-dots li{
    position: relative;
    display: inline-block;
    width: 14px;
    height: 20px;
    /*margin: 0 5px;*/
    padding: 0;
    cursor: pointer;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 20px;
    height: 20px;
    padding: 3px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:before {
    font-family: 'slick';
    font-size: 40px;
    line-height: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    content: '•';
    text-align: left;
    color: #575c61;
    -webkit-font-smoothing: antialiased;
}

.bg-overlay {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(6, 6, 6, 0.62);
}

.bg{
    background-color: rgba(6, 6, 6, 0.62) !important;
}

.no-border{
    border: none !important;
}

.no-top-offset{
    top: 0 !important;
}




.lavalamp {
            position: relative;
            overflow: hidden;
        }
                .lavalamp li {
                    float: left;
                    list-style: none;
                }
                    .lavalamp li.back {
                        border-bottom: 2px solid #cb1f3b;
                        width: 9px;
                        height: 52px;
                        z-index: 8;
                        position: absolute;
                        height: 2px;
                        bottom: 0;
                        padding: 0;
                    }







.breadcrumbs-cont{
    padding: 30px 0;
}

.breadcrumbs-cont ul{
    list-style-type: none;
}

.breadcrumbs-cont ul li{
    padding: 20px;
    display: inline-block;
    float: left;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding-bottom: 10px;
    border-bottom: 2px solid #e6e6e6;
}

.breadcrumbs-cont ul li a{
    font-weight: bold;
    color: #e6e6e6;
    transition: all 250ms;
}

.breadcrumbs-cont ul li.active a{
    color: #cb1f3b;
}
.breadcrumbs-cont ul:hover li.active a {
    color: #e6e6e6;
}
.breadcrumbs-cont ul li:hover a {
    color: #cb1f3b!important;
}

.footer-cont{
    padding-top: 100px;
}

.about-us-wrapper{
    background: url(../img/about-us-main-bg.png);
    background-size: contain;
    background-position: bottom;
    background-repeat: no-repeat;
}

.bg-wave{
    background: url(../img/bg_testimonials.png);
    background-size: 100% auto;
    background-position: top;
    background-repeat: no-repeat;
}

.quote-wrapper .quote-cont{
    text-align: center;
    padding: 100px 180px;
}

.quote-wrapper .quote-cont h2{
    font-size: 25px;
    line-height: 40px;
}

.thank-you-page .quote-wrapper .quote-cont h2{
    font-size: 32px;
    margin-bottom: 34px;
}
.thank-you-page .quote-wrapper {
    font-size: 18px;
    background: transparent;
    background-color: #f8f7f7;
    line-height: 30px;
}
.thank-you-page .quote-wrapper .quote-cont{
    padding-top: 165px;
    padding-bottom: 200px;
}

.our-process-wrapper{   
    position: relative;
    background: url(../img/bg_our_process.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.our-process-wrapper .bg-overlay{
    position: absolute;
    z-index: -999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.95);
}

.call-to-action-wrapper{   
    position: relative;
    /*background: url(../img/bg_call_to_action.png);*/
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    /*opacity: 0.25;*/
}

.call-to-action-wrapper .image-overlay{
    position: absolute;
    z-index: -999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/bg_call_to_action.png);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0.75;
}

.call-to-action-wrapper .bg-overlay{
    position: absolute;
    z-index: -999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(191, 0, 30, 0.85);
}

.call-to-action-wrapper .call-to-action-cont{
    text-align: center;
    padding: 85px 0px;
    z-index: 5;
}

.call-to-action-cont{
    color: white;
}

.call-to-action-cont h2.call-header{
    position: relative;
    text-transform: uppercase;
    letter-spacing: 5px;
}

.call-to-action-cont h2.call-header img{
    width: 33px;
    /*height: 33px;*/
    vertical-align: top;
}

.call-to-action-cont h2.call-header:before{
    /*width: 37px;
    height: 33px;
    background-image: url( ../img/icon_exclamation.png );
    content: " ";
    position: absolute;
    left: 0;
    top: 0;*/
}

.call-to-action-cont p{
    line-height: 26px;
}

.call-to-action-cont .column{
    width: 49%;
    display: inline-block;
    vertical-align: top;
    padding: 50px 50px;
    /*padding-right: 55px;*/
}

.call-to-action-cont .column-left{
    text-align: left;
}

.call-to-action-cont .column-left h2{
    margin-top: 0;
    /*padding-left: 55px;*/
}

.call-to-action-cont .column-right{
    text-align: left;
    padding-left: 89px;
}

.our-process-wrapper .our-process-cont{
    text-align: center;
    padding: 100px 180px;
    z-index: 5;
}

.our-process-wrapper .our-process-cont h3{
    margin-top: 0 !important;
    color: white;
    text-transform: uppercase;
    letter-spacing: 6px;
    font-size: 20px;
    margin-bottom: 26px;
}

.our-process-wrapper .our-process-cont p{
    font-size: 18px;
    line-height: 28px;
    color: white;
    margin-bottom: 31px;
}

footer{
    background: url(../img/footer_bg.png);
    background-size: contain;
    background-position: bottom;
    background-repeat: no-repeat;
}

/* Begin icon wrapper*/
.icons-wrapper .columns .column{
    display: inline-block;
    vertical-align: top;
}

.icons-wrapper .columns .column{
    width: 33%;
    padding: 80px 45px;
}

.icons-wrapper .column .heading,
.icons-wrapper .column .button{
    text-transform: uppercase;
}

.icons-wrapper .column .image,
.icons-wrapper .column .heading,
.icons-wrapper .column .body,
.icons-wrapper .column .button-wrap{
    text-align: center;
    margin-bottom: 30px;    
}

.icons-wrapper .column .button-wrap{
    margin-bottom: 0 !important;
}

.icons-wrapper .column .image{
    height: 65px;
}

.icons-wrapper .column .body{
    height: 65px;
}
/*End icon wrapper*/

.video-wrapper{    
    /*background: url(../img/bg_video.png);*/
    /*background-size: cover;*/
    /*background-position: center;*/
    /*background-repeat: no-repeat;*/
}

.video-wrapper .embed-container{
    position: relative;
    padding-bottom: 47%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
}
.video-wrapper .embed-container iframe,
.video-wrapper .embed-container object,
.video-wrapper .embed-container embed{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.video-wrapper .parallax-window{
    position: relative;
    height: 500px;
    width: 100%;
    /*min-height: 66vh;*/
    background-color: transparent;
    background: transparent;
}

.video-wrapper .content{
    top: 50%;
    transform: translateY(-20%);
    text-align: center;
    width: 90%;
    color: white;
    position: relative;
    z-index: 100;
    margin: auto;
}

.video-wrapper .content .headline{
    text-transform: uppercase;
    letter-spacing: 3px;
}

.video-wrapper .play img{
    width: 50px;
    margin-top: 20px;
}

footer .columns .column{
    display: inline-block;
    vertical-align: top;
}

footer .columns .column.logo{
    width: 30%;
}

footer .columns .column.address{
    font-size: 14px;
    width: 29%;
    font-weight: bold;
}

footer .columns .column.newsletter{
    width: 30%;
    width: auto;
    font-size: 14px;
}

footer .columns .column.nav{
    width: 10%;
    font-size: 14px;
}

footer .columns .column.nav ul{
    list-style: none;
    padding-left: 0;
}

footer .columns .column{
    width: 20%;
    display: inline-block;
    vertical-align: top;
}

footer .social-cont{
    padding-top: 30px;
    padding-bottom: 30px;
}

footer .social-links a{
    color: #999999;
    margin-right: 25px;   
}

footer .social-cont .follow-us{
    margin-bottom: 10px;
    font-weight: bold;
}

footer .footer-cont{
    /*border-bottom: 1px solid #bbbbbb;*/
}

footer ul.copyright-links{
    list-style-type: none;
    margin-top: 0;
    margin-bottom: 0;
    /*padding: 15px 0;*/
    padding-left: 0;
}

footer .copyright-links li{
    display: inline-block;
    margin-right: 25px;
}

footer .copyright-links .column-right{
    text-align: right;
    padding: 15px 0;
}

footer li.privacy,
footer li.separator{
    margin-right: 15px;
}

footer .copyright-cont{
    padding: 15px 0;
    border-bottom: 1px solid #bbbbbb;
    border-top: 1px solid #bbbbbb;
    margin-bottom: 50px;
}

footer .copyright-cont .column-left,
footer .copyright-cont .column-left{
    float: left;
}

footer .copyright-cont .column-left{
    width: 60%;    
}

footer .copyright-cont .column-middle{
    width: 20%;
}

footer  .copyright-cont .column-right{
    width: 40%;
    float: left;
    padding-right: 0px;
}

footer .website-by{
    vertical-align: middle;
    float: left;
    width: 50%;
    padding-right: 10px;
    text-align: right;
}

footer .freeform-logo{
    float: left;
    width: 50%;
    /*padding: 3px 0;*/
    text-align: right;
}

#fullpage .section.footer-section {
    letter-spacing: 0;
}
#fullpage .section.footer-section .container {
    color: inherit;
    padding: 15px;
}
#fullpage .section.footer-section .footer-cont {
    padding-top: 100px;
}
#fullpage .section.footer-section .social-cont {
    padding-top: 30px;
    padding-bottom: 30px;
}
#fullpage .section.footer-section .copyright-cont {
    padding: 15px 0;
}
#fullpage .section.footer-section .columns .column.logo {
    width: 30%;
}
#fullpage .section.footer-section .columns .column {
    width: 20%;
    display: inline-block;
    float: none;
}
#fullpage .section.footer-section .columns .column.address {
    width: 29%;
}
#fullpage .section.footer-section .columns .column.nav {
    width: 10%;
}
#fullpage .section.footer-section .columns .column.newsletter {
    width: auto;
}
#fullpage .section.footer-section .column-right img {
    width: auto;
    padding: 0;
}
#fullpage .section.footer-section .copyright-cont .column-right {
    padding-left: 0;
}
#fullpage .section .number {
    font-family: 'DIN';
    font-weight: 700;
    font-size: 219px;
    -webkit-text-stroke: 1px #fff;
    color: transparent;
    /*margin-left: 40px;*/
}


.team-member-single.odd{
    background-color: #f8f7f7;
}

.team-wrapper .profile-align-left .team-member-photo{
    float: left;
}

.team-wrapper .profile-align-left .team-member-info{
    float: right;
    padding-left: 150px;
}

.team-wrapper .profile-align-right .team-member-info{
    float: left;
    padding-right: 150px;
}

.team-wrapper .profile-align-right .team-member-photo{
    float: right;
    text-align: right;
}

.team-member-position{
    color: #cb1f3b;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 1.5px;
}

.team-member-cont .team-member-photo img{
    width: 300px;
    border-radius: 100%;
}

.team-member-cont{
    padding: 50px;
}

.team-member-cont .team-member-photo{
    width: 35%;
}

.team-member-cont .team-member-info{
    width: 65%;
}

.team-member-cont .team-member-name h2{
    margin-bottom: 0;
}

.team-member-cont .team-member-bio{
    margin-top: 15px;
}

.team-member-cont .left-align{
    float: left;
}

.team-member-cont .right-align{
    float: right;
}

.testimonials-wrapper{
    text-align: center;
    padding: 50px 25px 0px 25px;
}

.testimonial-single .testimonial-header h3{
    margin: 0;
    font-weight: bold;
}

.testimonials-wrapper .testimonial-header span{
    margin-top: 0;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 2px;
}

.testimonial-single .testimonial-title{
    font-size: 25px;
    font-weight: bold;
    letter-spacing: 2px;
}

.testimonial-single .testimonial-text{
    width: 55%;
    margin: 0 auto;
    font-size: 12px;
    padding-top: 35px;
    font-size: 12px;
    font-style: italic;
}

.testimonial-single .testimonial-subtitle{
    font-size: 14px;
    font-weight: bold;
    color: #c7102d;
    letter-spacing: 1.5px;
}

.testimonial-single .testimonial-thumb{
    width: 125px;
    margin: auto;
}

.testimonial-single .testimonial-thumb img{
    border-radius: 100%;
    width: 125px;
    margin: 35px 10px;
    -webkit-box-shadow: 2px 43px 58px -8px rgba(0, 0, 0, 0.19);
    -moz-box-shadow: 2px 43px 58px -8px rgba(0, 0, 0, 0.19);
    box-shadow: 2px 43px 58px -8px rgba(0, 0, 0, 0.19);
}

.services-container{
    margin-bottom: 50px;
}

.service-item{
    text-align: center;
    width: 33%;
    float: left;
    padding: 40px 20px 20px 20px;
}

.service-item .service-thumb{
    height: 100px;
}

.service-item .service-title,
.service-internal .service-title{
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 2px;
    margin: 5px auto;
    width: 68%;
    height: 47px;
}

.service-item .service-desc,
.service-internal .service-desc{
    margin: 20px auto;
    width: 75%;
    height: 120px;
}

.service-internal .services-single{
    padding-left: 40px;
    padding-bottom: 30px;
}

.service-internal .columns .column{
    float: left;
}

.service-internal .columns .column-left{
    width: 20%;
    padding-right: 20px;
}

.service-internal .columns .column-right{
    width: 80%;
}

.service-internal .service-thumb img{
    width: 50px;
}

.service-internal .service-title{
    margin: 15px 0;
    height: auto;
}

.service-internal .service-desc{
    padding-right: 10px;
    margin: 0;
}

.service-internal .service-desc-full{
    padding-left: 10px;
}

.prev-next-cont{
    padding: 40px 40px 80px 40px;
}

.prev-next-cont .columns .column{
    float: left;
}

.prev-next-cont .arrow-left{
    float: left;
    width: 50%;
    text-align: left;
}
.prev-next-cont .arrow-left .arrow-label {
    margin-left: 12px;
}
.prev-next-cont .arrow-right .arrow-label {
    margin-right: 12px;
}

.prev-next-cont .arrow-label{
    font-size: 11px;
}

.prev-next-cont .arrow-right{
    float: right;
    width: 50%;
    text-align: right;
}

.contact-cont{
    padding: 20px 40px;
}

.contact-cont .columns .column{
    float: left;
}

.contact-cont .columns .column-left,
.contact-cont .columns .column-right{
    width: 50%;
}

.contact-cont .columns .column-left{
    padding-right: 50px;
}

.contact-cont .columns .column-right{
    padding-left: 50px;
}

.contact-social-links{
    margin-top: 25px;
}

.contact-social-links a:hover{
    color: #cb1f3b;
}

.contact-social-links a{
    margin-right: 10px;
    color: #999999;
    margin-right: 25px;
}

.thirdsplit{
    position: relative;
}

.thirdsplit .column{
    float: left;
}

.thirdsplit .split-row{
    display: flex;
}

.thirdsplit .split-row .column-image{
    background-size: cover;
    background-position: center;
    width: 40%;
    /*height: 450px;*/
}

.thirdsplit .split-row.even{
    flex-direction: row-reverse;
}

.thirdsplit .split-row .column-text{
    width: 60%;
    padding: 100px;
}

.thirdsplit .split-row.blog .column-text{
    padding: 60px 120px;
}

.thirdsplit .split-row .column-text .copy-text{
    margin-top: 25px;
}

.thirdsplit .split-row.even{
    background-color: #fbfafa;
}

.thirdsplit .split-row.odd .column-image{   
    float:left;
}

.thirdsplit .split-row.odd .column-text{   
    float:left;
}

.thirdsplit .split-row.even .column-image{   
    float:right;
}

.thirdsplit .split-row.even .column-text{   
    float:left;
}

.thirdsplit .author-info{
    margin-bottom: 40px;
}

.thirdsplit .author-info .column{
    float: left;
}

.thirdsplit .author-info .column-left{
    width: 25%;
}

.thirdsplit .author-info .column-middle{
    width: 40%;
}

.thirdsplit .author-info .faded,
.blog-internal .faded{
    color: #c1bdbd;
    font-size: 14px;
}

.thirdsplit .author-info{
    letter-spacing: .75px;
}

.thirdsplit .author-info .post-author,
.thirdsplit .author-info .post-date{
    font-size: 16px;
    font-weight: bold;

}

.thirdsplit .author-info .column-left img{
    width: 80px;
    border-radius: 100%;
}

.thirdsplit .author-info .column-middle,
.thirdsplit .author-info .column-right{
    padding: 20px 0;
}

.thirdsplit .author-info .column-right{
    width: 35%;
}

.thirdsplit .read-link{
    margin-top: 50px;
}

.blog-internal .inner{
    padding: 50px 200px;
}

.blog-internal .columns .column{
    float: left;
}

.blog-internal .post-meta{
    margin-bottom: 50px;
}

.blog-internal .author-image,
.blog-internal .author-info{
    margin-left: 30px;
}

.blog-internal .author-name,
.blog-internal .post-date{
    font-weight: bold;
}

.blog-internal .post-date-label{
    margin-left: 50px;
}

.blog-internal .post-date{
    margin-left: 15px;
}

.blog-internal .author-image img{
    width: 50px;
    border-radius: 100%;
}


.blog-internal .post-featured-image img{
    width: 100%;
    margin-bottom: 50px;
}

.post-actions{
    padding: 39px 40px 80px 40px
}

.post-actions .tag-links ul{
    list-style-type: none;
    padding-left: 0
;}

.post-actions .tag-links li{
    display: inline-block;
}

.post-actions .post-social{
    width: 50%;
}

.post-actions .post-tags{
    width: 50%;
}

.post-actions .columns > .column{
    float: left;
}

.post-actions .tag-links li.separator:last-child{
    display: none;
}

.post-actions .share-icons a{
    color: #999999;
    margin-right: 15px;
}

.social-links a:hover,
.post-actions .share-icons a:hover{
    color: #c7102d;
}

.post-actions .first-line{
    margin-bottom: 10px;
}

#fp-nav ul li a span, .fp-slidesNav ul li a span{
    background: white;
}

#fp-nav ul li {
    visibility:hidden;
    opacity:0;
    transition:visibility 0s 250ms,opacity 250ms;
}
#fp-nav ul li.displayed {
    visibility:visible;
    opacity:1;
    transition-delay:0s;
}
#fp-nav ul li.displayed.last {
    opacity:0.5;
}

#fullpage{
    height: 500px;
    position: relative;
    /*overflow: hidden;*/
}
#fullpage .swiper-wrapper{
    width: 100%;    
    /*display: flex;*/
    /*box-sizing: content-box;*/
    /*transition-property: transform,-webkit-transform;*/
    z-index: 1;

    /*flex-direction: column;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column*/
}

#fullpage .section{
    position: relative;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;

    /*transition-property: transform,-webkit-transform;*/
    /*flex-shrink: 0;*/
}

.fp-controlArrow{
    top: 87% !important;
    text-transform: uppercase;
    text-shadow: 2px 1px 1px black;
}

.fp-next{
    right: 15% !important;
    width: 200px !important;
    text-align: left;
}

.fp-prev{
    left: 17% !important;
    width: 50px !important;
}

.fp-prev, .fp-next {
    transition: all .3s ease-in-out;
    color: white;
    border: none;
    height: 50px !important;
}

.fp-prev:before, .fp-next:after {
    font-family: Font Awesome\ 5 Pro;
    color: inherit;
    font-size: 21px;
    position: relative;
    top: 3px;
}
.fp-prev:before {
    content: "\f053";
    left: 0px;
}
.fp-next:after {
    content: "\f054";
    right: -15px;
}
.fp-prev:hover, .fp-next:hover {
    color: #ca1d39;
}

#fullpage .slide{
    position: relative;
    /*height: 500px;*/
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 100%;
    background-color: black;

    /*transition-property: transform,-webkit-transform;*/
    /*flex-shrink: 0;*/
}

#fullpage .section .container{
    color: white;
    z-index: 5;
    position: relative;
    padding: 50px;
    transform: translate3d(0, 81px, 0px);
    opacity: 0;
}

#fullpage .section .container.active{
    transform: translate3d(0, 0px, 0px) !important;
    transition: all 0.7s ease-out;
    opacity: 1 !important;
}

#fullpage .section .column{
    float: left;
    width: 50%;
    display: block;
}

#fullpage .section .column-right{
    padding-left: 100px;
}

#fullpage .section{
    letter-spacing: 1px;
}

#fullpage .section .headline{
    text-transform: uppercase;
    letter-spacing: 1.3px;
}

#fullpage .section .column-right img{
    width: 320px;
    padding: 53px;
}


.mobile-menu{
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: rgba(6, 6, 6, 0.62);
    z-index: 1000;
}

header.nav-bar-cont.active{
    height: 100vh;
    z-index: 2000;
    background-color: rgb(6, 6, 6);
    position: fixed;
}

header.nav-bar-cont.active .nav-links{
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

header.nav-bar-cont.active .nav-links ul{
    list-style-type: none;
    width: 100%;
    padding-left: 0;
    text-align: center;
}

header.nav-bar-cont.active .nav-links li{
    display: list-item;
    padding: 14px;
    border-bottom: 1px solid;
}

header.nav-bar-cont.active .nav-links li a{
    font-size: 20px;
}

@media screen and (max-width: 1080px){
    
    .blog-internal .inner{
        padding: 50px 100px
    }

    header .nav-links{
        display: none;
    }

    .icons-wrapper .column .body{
        height: 100px;
    }

    header button.hamburger{
        display: block;
    }

    footer .columns .column{
        display: block;
        width: 100% !important;
        margin-bottom: 30px;
        text-align: center;
    }

    footer .columns .newsletter form{
        padding: 0 20%;
    }

    footer .columns .newsletter input{
        /*width: 250px;*/
    }

    footer .social-links,
    footer .columns .newsletter input{
        text-align: center;
    }

    footer .footer-cont{
        padding-top: 50px;
    }

    footer .social-cont{
        padding-top: 0;
    }

    footer .copyright-cont .column-left,
    footer .copyright-cont .column-right{
        width: 100%;
        float: none;
        text-align: center;
    }

    footer .copyright-cont .column-right{
        margin-top: 10px;
    }

    footer .website-by{
        text-align: right;
    }

    footer  .copyright-cont .column-right{
        padding-right: 0px;
    }

    footer .website-by{
        width: 40%;
    }

    footer .freeform-logo{
        text-align: left;
    }
}

@media screen and (max-width: 870px){

   .fp-controlArrow  {bottom:0px;top:auto !important;}
#fullpage .section .container {padding:20px 30px;}
#fullpage .section .column-right {margin-bottom:0px;}
#fullpage .section .number {font-size:60px;line-height:30px;}
#fullpage .section .column-left .headline {margin-bottom:0px;}
#fp-nav.right {right:0px;}
    .blog-internal .inner{
        padding: 50px 50px;
    }

    .breadcrumbs-cont ul{
        padding-left: 0;
    }

    #fullpage .section .columns{
        display: flex;
        flex-direction: column-reverse;
        text-align: center;
    }

    .breadcrumbs-cont ul{
        text-align: center;
    }

    .breadcrumbs-cont ul li{
        float: none;   
    }

    .banner-content{
        left: 0;
        width: auto;
    }

    #fullpage .section .column{
        float: none;
        width: 100%;
    }

    #fullpage .section .column-right {
        padding-left: 0px;
        text-align: center;
        margin-bottom: 15px;
    }

    #fullpage .section .column-right img{
        padding: 0;
        width: 150px;
    }

    .team-member-single .team-member-photo,
    .team-member-single .team-member-info{
        float: none !important;
        text-align: center !important;
        width: 100%;
    }

    .team-wrapper .team-member-info{
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .casestudy-banner .number-overlay img{
        width: 250px;
    }

    .thirdsplit .split-row.blog .column-text{
        padding: 60px !important;
    }
}

@media screen and (max-width: 500px){
    
    .fp-controlArrow{
        top: 95% !important;
    }

    footer div.logo img{
        width: 200px;
    }

    #fullpage .section .column-right img{
        width: 100px;
    }

    .nav-bar-cont .logo{
        left: 20px;
    }

    .hamburger{
        right: 50px;
    }

    header .logo img{
        width: 225px;
    }

    footer .columns .newsletter form{
        padding: 0 20px;
    }

    #fullpage .section .column-right img{
        padding: 0;
        width: 150px;
    }

    .thirdsplit .author-info .column{
        width: 100% !important;
        float: none !important;
    }

    .thirdsplit .split-row.blog .column-text{
        text-align: center;
    }

    .thirdsplit .author-info .column-left{
        padding-bottom: 20px;
    }

    header.nav-bar-cont.active .nav-links{
        width: 70%;
    }

    .nav-links ul li a{
        padding: 0 !important;
    }

    .houzz-button{
        display: none;
    }
}

@media screen and (max-width: 650px ){

    .bg-wave{
        background-size: 200% auto;
    }
   
   .banner-slider-cont .top-overlay{
        width: 70%;
    }

    .quote-wrapper .quote-cont,
    .our-process-wrapper .our-process-cont{
        padding: 50px;
    }

    .icons-wrapper .columns .column{
        width: 100%;
        float: none;
    }

    .icons-wrapper .column .body{
        height: auto;
    }

    .icons-wrapper .columns .column{
        padding: 45px;
    }

    .team-member-cont .team-member-photo img{
        width: 125px;
    }

    .casestudy-banner .number-overlay{
        left: 0;
        text-align: center;
        top: 35%;
        width: 100%;
    }

    .banner-inner .banner-content{
        text-align: center;
        width: 100% !important;
    }

    .casestudy-banner .number-overlay img{
        width: 150px;
    }

    .service-item{
        width: 100% !important;
        float: none !important;
    }

    .service-item .service-desc, .service-internal .service-desc,
    .service-item .service-title, .service-internal .service-title{
        height: auto;
    }

    .service-item:first-child{
        padding-top: 0 !important;
    }

    .services-container{
        margin-bottom: 0;
    }

    .service-internal .services-single{
        padding-left: 0;
    }

    .service-internal .columns .column{
        width: 100% !important;
        float: none;
        padding-left: 30px;
        padding-right: 30px;
        text-align: center;
    }

    .service-internal .columns .column-right{
        padding: 15px 30px 0 30px;
    }

    .service-internal .service-title{
        width: 100%;
    }

    .blog-internal .columns .column{
        float: none;
        width: 100%;
        margin-left: 0;
    }

    .blog-internal .author-image{
        margin-bottom: 15px;
    }

    .blog-internal .author-title{
        margin-bottom: 10px;
    } 

    .post-actions {
        padding: 50px;
        padding-top: 0;
    }

    .prev-next-cont {
        padding: 50px;
        padding-top: 0;
    }

    .blog-internal .inner{
        padding-top: 15px;
    }

    .contact-cont .column{
        width: 100% !important;
        float: none !important;
        padding-right: 0 !important;
       padding-left: 0 !important;
    }

    .contact-social-links,
    .contact-cont .columns .column-right{
        margin-top: 25px !important;
    }
}

@media screen and (max-width: 850px ){

    .call-to-action-cont .column{
        width: 100%;
        display: block;
        font-size: 16px;
        padding-right: 0;
    }

    .call-to-action-cont .column-left{
        padding-bottom: 0;
        padding-top: 0;
        text-align: center;
        padding-left: 0;
    }

    .call-to-action-cont .column-right{
        padding-left: 0;
        padding-top: 0;
        padding-bottom: 0;
        text-align: center;
    }

    .call-to-action-cont .column-right .form-group:last-child{
        margin-bottom: 0px;
    }

    .call-to-action-wrapper .call-to-action-cont{
        padding: 75px 50px;
    }

    .thirdsplit .split-row{
        display: block;
    }

    .thirdsplit .split-row .column-image{
        width: 100%;
        height: 350px;
        float: none !important;
    }

    .thirdsplit .split-row .column-text{
        float: none;
        width: 100%;
        padding: 60px;
    }

    .thirdsplit .split-row .column-text h3{
        margin-top: 0;
    }
}
@media screen and (max-width:768px ){
.banner-slider-cont .top-overlay {top:30%;}
}
@media screen and (max-width:768px ){
#fullpage .section .container {padding:20px;}
.banner-slider-cont .arrow a {bottom:30px;}
}

 @media only screen and (min-device-width: 375px) and (max-device-width: 812px) {
      .banner-slider-cont .top-overlay {top:30%;}	
}

@media screen and (max-width: 400px ){
  #fullpage .section .column-left .text {font-size:11px;line-height:14px;}   
   .nav-bar-cont .logo .small-logo{
        display: none;
    }

    .nav-bar-inner{
        height: 90px;
    }

    .nav-bar-cont .logo .normal-logo{
        display: block;
		width:200px;
    }

    .team-member-cont{
        padding: 25px;
    }

    .casestudy-banner .number-overlay{
        top: 36%;
    }

    .casestudy-banner .number-overlay img{
        /*width: 170px;*/
    }

    .fp-controlArrow.fp-prev{
        left: 25px!important;
    }
    .fp-controlArrow.fp-next{
        white-space: nowrap;
        font-size: 12px;
        right: 0!important;
    }

    #fullpage .section .column-right img{
        width: 100px;
    }

    #fullpage .section .column-left .text{
        font-size: 12px;
    }

    #fullpage .section .column-left .headline{
        font-size: 18px;
        margin-top: 0;
    }

    footer .website-by,
    footer .freeform-logo{
        float: none;
        width: 100%;
        text-align: center;
    }
}




/*@media screen and (max-width: 870px) {
    .fp-controlArrow {
        position: unset !important;
        float:right;
        
    }
    .fp-prev {
        float:left !important;
    }
}*/