.homepage-slider{
    width:100%;
    margin-bottom:0!important;
    background:#111;
}
.homepage-slider a{
    display:block;
    width:100%;
    height:100%;
}
.homepage-video{
    width:100%;
    margin-bottom:0!important;
    background:#111;
}
.homepage-video a{
    display:block;
    width:100%;
    height:100%;
}
.homepage-slider .slick-list{
    width:100%;
}
.homepage-slider .slick-slide{
    flex-wrap: wrap;
    position: relative;
    align-items: center;
    justify-content: center;
    height: 100vh;
    opacity:1!important;
    transition:all 300ms;
}
.homepage-video .video-container{
    flex-wrap: wrap;
    position: relative;
    align-items: center;
    justify-content: center;
    height: 100vh;
    opacity:1!important;
    transition:all 300ms;
}
.homepage-video .homepage-video-container {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.homepage-video .homepage-video-wrap {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.homepage-slider .slick-slide.slick-active{
}
.homepage-slider .img-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
}
.homepage-slider .img-wrap img{
    min-height:999px;
    height:100%;
    width:auto;
}
.homepage-video .video-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
}
.homepage-slider .slide-caption-wrap{
    background:url(/wp-content/uploads/hero-inner-shadow.png) left top repeat-x;
    position:absolute;
    width:100%;
    height:100%;
    display:flex;
    z-index:3;
    justify-content:center;
    align-items:center;
    flex-direction:column;
    opacity:0;
    -webkit-transition:all 300ms;
    transition:all 300ms;
}
.homepage-video .video-caption-wrap{
    background:url(/wp-content/uploads/hero-inner-shadow.png) left top repeat-x;
    position:absolute;
    width:100%;
    height:100%;
    display:flex;
    z-index:3;
    justify-content:center;
    align-items:center;
    flex-direction:column;
    -webkit-transition:all 300ms;
    transition:all 300ms;
}
.homepage-slider .slick-active .slide-caption-wrap{
    opacity:1;
}
.homepage-slider .slide-caption-wrap .primary, .homepage-slider .slide-caption-wrap .secondary{
    font-family: AutoradiographicRegular;
    font-weight:400;
    text-transform:uppercase;
    font-size:94px;
    line-height:.875;
    margin:0;
    text-shadow: 0 0 20px rgb(0 0 0 / 0.5);
    min-width: 1500px;
    margin: 0 auto;
    padding: 0 100px;
}
.homepage-slider .slide-caption-wrap .primary{
    color:#fff;
}
.homepage-slider .slide-caption-wrap .secondary{
    color:#e71f27;
}
.homepage-video .video-caption-wrap .primary, .homepage-video .video-caption-wrap .secondary{
    font-family: AutoradiographicRegular;
    font-weight:400;
    text-transform:uppercase;
    font-size:94px;
    line-height:.875;
    margin:0;
    text-shadow: 0 0 20px rgb(0 0 0 / 0.5);
    min-width: 1500px;
    margin: 0 auto;
    padding: 0 100px;
}
.homepage-video .video-caption-wrap .primary, .homepage-video .video-caption-wrap .secondary{
    color:#fff;
}
.homepage-video .video-caption-wrap .primary span, .homepage-video .video-caption-wrap .secondary span{
/*     color:#e71f27; */
}
.homepage-slider .slick-dots{
    bottom:100px;
}
.homepage-slider .slick-dots li button:before{
    font-size:16px;
    color:#fff;
    opacity:0.5;
    -webkit-transition:all 300ms;
    transition:all 300ms;
}
.homepage-slider .slick-dots li.slick-active button:before, .homepage-slider .slick-dots li:hover button:before{
    color:#cd3632;
    opacity:1;
}
#top-content{
    z-index:9;
    position:relative;
}
h1{
    margin-bottom:34px;
    font-size: 50px;
}
#home-services div{
    background-size:cover!important;
    width:calc(25% - 10px);
    float:left;
    margin-right:20px;
    margin-bottom:20px;
}
#home-services div.financing{
    float:right;
    margin-right:0;
}
#home-services div.installation{
    width:calc(50% - 20px);
}
#home-services div.financing a, #home-services div.installation a{
    height:365px;
}
#home-services div.design a{
    height: 632px;
}
#home-services div.rebate{
    width:calc(75% - 10px);
    float:right;
    margin-right:0;
}
#home-services div a{
    font-weight:normal;
    padding:30px 30px 60px 30px;
    display:block;
    width:100%;
    height:100%;
    background:linear-gradient(to right, rgba(255,255,255,.8), rgba(255,255,255,.4));
    color:#fff;
    text-decoration:none;
    position:relative;
}
#home-services div a, #home-services div a h3, #home-services div a span{
    -webkit-transition:all 400ms;
    transition:all 400ms;
}
#home-services div a h3{
    color:#fff;
    margin-bottom:6px;
    line-height:1;
}
#home-services div a h3 svg {
    font-size: 22px;
    display: inline-block;
    margin-bottom: 5px;
    margin-right: 3px;
   /* width: 22px;
    */
    height: 22px;
    position: relative;
    top: 2px;
}
#home-services div a span{
    display:block;
    font-weight:bold;
    position:absolute;
    bottom:30px;
    left:30px;
}
#home-services div a span svg{
    margin-left:5px;
    display:inline-block;
    margin-bottom:-2px;
}
/* #home-services div a:hover{
    background: linear-gradient(to right, rgba(255,255,255,.8), rgba(255,255,255,.4));
}
*/
#home-services > div p {
    transition: all 300ms;
    font-family:'proximanova-normal', sans-serif;
    margin-bottom:0;
}
#home-services div a:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #a0302d;
    transition: all 300ms;
}
#home-services div a * {
    position: relative;
}
#home-services div a:hover:before {
    opacity: 0;
}
#home-services div a:hover h3, #home-services div a:hover span{
    color:#a12f2d;
}
#home-services div a:hover p{
    color:#333;
}
#home-services:after{
    content:'';
    display:block;
    clear:both;
}
.home h2 {
    text-align: center;
    color: #A0302D;
    text-transform: none;
}
.home .content-box .content-has-img h2 {
    text-align: left;
    color: #224188;
}
#program-cards{
    display:flex;
}
#program-cards > div{
    flex-basis:calc(50% - 10px);
    margin-right:20px;
    margin-bottom:20px;
    background-size:cover;
    text-align:center;
}
#program-cards > div > div{
    padding:100px 40px 90px 40px;
    background:rgba(21,45,67,0.75);
    color:#fff;
    height:100%;
}
#program-cards > div:only-child {
    flex-basis: 100%;
}
#program-cards > div:nth-child(2), #program-cards > div:last-child{
    margin-right:0;
}
#program-cards a.primary-btn{
    margin-bottom:0;
}
#program-cards h2{
    color:#fff;
    margin-bottom:4px;
}
#program-cards h2, #program-cards p{
    text-shadow: 0 0 12px black;
    line-height:1.25 
}
#program-cards p{
    font-family: 'Bebas Neue', sans-serif;
    font-size:24px;
    margin-bottom:16px;
}
.is-mobile .site-inner {
    margin-top: 20px;
}

.sustainability-block {
    text-align: center;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    padding: 80px;
}
.sustainability-block h2, .sustainability-block p {
    flex-basis: 100%;
}

div#blog-posts h2 {
   text-align: left;
   color: #224188;
}

div#blog-posts .post-list {
   display: flex;
   justify-content: space-between;
}

#blog-posts .post-list a {
   width: calc(33% - 60px);
   text-decoration: none;
   display: flex;
   flex-direction: column;
/*    justify-content: space-between; */
}
.post-list a > div {
    margin-top: 12px;
}

#blog-posts .post-list a:hover p {
   color: #224188;
}

.post-list .post-date {
   font-family: 'AutoradiographicRegular';
   font-size: 18px;
   color: #224188;
}

.post-list .post-title {
   font-family: 'AutoradiographicRegular';
   font-size: 28px;
   color: #333;
   margin-bottom: 12px;
   margin-top: 5px;
   line-height: 29px;
}

.post-list .post-excerpt {
   color: #333;
   line-height: 29px;
   font-family: 'proximanova-normal', sans-serif;
}

.is-mobile .site-header {
   background: rgba(255,255,255,1);
   padding: 4px 60px;
   padding-bottom: 0;
   -webkit-box-shadow: 0 0 20px 0 rgba(0,0,0,0.5);
   box-shadow: 0 0 20px 0 rgba(0,0,0,0.5);
}

.is-mobile.wp-custom-logo .title-area img {
   opacity: 1;
/*    width: 180px;
   max-width: 180px; */
}

.is-mobile .nav-primary {
   padding-bottom: 0;
}
.home-services {
   border-bottom: solid 2px #eee;
   padding-bottom: 60px;
}


.homepage-video-wrap .video-wrap video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#blog-posts .post-list a:hover img {
    opacity: .7;
}

#blog-posts .post-list a img {
    transition: all 300ms;
}
@media only screen and (min-width:960px){
    header.site-header{
        position:fixed;
        width:100%;
   }
   .is-mobile .site-header .nav-primary .genesis-nav-menu a {
       color: #424242;
       outline: none!important;
   }
   .is-mobile.wp-custom-logo .title-area {
       background: none;
       padding-top: 10px !important;
       width: 180px;
       max-width: 180px;
       margin-top: 0;
   }
    li#menu-item-2634 > a, li#menu-item-2639 > a, li#menu-item-2497 > a, li#menu-item-2653 > a, li#menu-item-2656 > a, li#menu-item-2658 > a, li#menu-item-2663 > a, li#menu-item-2656 > a, li#menu-item-19508 > a {
        padding-bottom: 27px;
        padding-bottom:60px;
    }
}
@media only screen and (max-width:1700px){
    #home-services div a{
        font-size:16px;
        line-height:1.5;
   }
    #home-services div.design a{
       height:616px;
   }
    .homepage-slider .slide-caption-wrap .primary, .homepage-slider .slide-caption-wrap .secondary {
        max-width: 85%;
        min-width: 85%;
   }
}


@media only screen and (max-width:1598px){
    #home-services div.design a{
        height:640px;
   }
}
@media only screen and (min-width:1501px){
    #top-content{
        padding:80px 100px;
    }
}
@media only screen and (max-width: 1500px) {
   .is-mobile .site-header{
       /* padding: 24px 2.5% 0; */
       padding-left: 2.5%;
       padding-right: 2.5%;
       /* padding-top: 18px; */
   }
}
@media only screen and (max-width: 1440px){
    #home-services div{
        width: calc(50% - 10px)!important;
   }
    #home-services div.installation{
        margin-right:0;
   }
    #home-services div.rebate{
        margin-right:20px;
   }
    #home-services div a{
        height:380px!important;
   }
    #home-services div.rebate{
   }
}
@media only screen and (max-width:1410px){
}
@media only screen and (max-width:1362px){
}

@media only screen and (max-width:1300px){
    #home-services div a p{
        font-size:16px;
   }
    .home-services .services-list {
       grid-template-rows: 1fr 1fr;
       grid-template-columns: 1fr 1fr;
   }
    
}
@media only screen and (max-width:1250px){
    #program-cards h2{
        font-size:34px;
   }
    #program-cards > div > div{
        padding:60px 40px;
   }
}
@media only screen and (max-width:1200px){
    #home-services div, #home-services div.rebate, #home-services div.financing{
        width:100%!important;
        margin-right:0;
        float:none;
        height:auto!important;
        min-height:0!important;
   }
    #home-services div a{
        height:auto!important;
        min-height:0!important;
   }
    .homepage-slider .slide-caption-wrap .primary, .homepage-slider .slide-caption-wrap .secondary{
        padding: 0 60px;
   }
    .sustainability-block {
        padding: 60px;
    }
    div#blog-posts .post-list {
       flex-wrap: wrap;
   }
   #blog-posts .post-list a {
       width: calc(50% - 60px)
   }
   #blog-posts .post-list a:first-child {
       width: 100%;
       margin-bottom: 28px;
   }
    .homepage-video .video-caption-wrap .primary, .homepage-video .video-caption-wrap .secondary {
       font-size: 86px;
   }
    .is-mobile.wp-custom-logo .title-area img {
/*        width: 150px;
       max-width: 150px; */
   }
}
@media only screen and (max-width: 1024px) {
    .homepage-slider .slide-caption-wrap .primary, .homepage-slider .slide-caption-wrap .secondary {
        max-width: 95%;
        min-width: 95%;
   }
}
@media only screen and (max-width:959px){
    #home-services div a h3{
        font-size:30px;
   }
    #home-services div a h3 svg{
        font-size:18px;
        margin-bottom:5px;
   }
    #blog-posts .post-list a {
       width: calc(50% - 30px)
   }
    .home h1 {
        font-size: 44px;
    }
    .is-mobile.wp-custom-logo .title-area img {
/*         width:188px;
        max-width:188px; */
    }
}
@media only screen and (max-width: 860px) {
   .homepage-video .video-caption-wrap .primary, .homepage-video .video-caption-wrap .secondary {
       font-size: 76px;
   }
}
@media only screen and (max-width:767px){
    #program-cards{
        flex-wrap:wrap;
   }
    #program-cards > div{
        flex-basis:100%;
        margin-right:0;
   }
    
    #blog-posts .post-list a {
       width: 100%;
       margin-bottom: 28px;
   }
   #blog-posts .post-list a:last-child {
       margin-bottom: 0;
   }
}

@media only screen and (max-width:600px) {
    .is-mobile .site-inner {
        margin-top: 0px;
   }
    .homepage-slider .slide-caption-wrap .primary, .homepage-slider .slide-caption-wrap .secondary{
        padding: 0 5%;
   }
    .home-services .services-list {
       grid-template-rows: 1fr;
       grid-template-columns: 1fr;
   }
    .sustainability-block {
        padding: 40px 5%;
    }
    .homepage-video .video-caption-wrap .primary, .homepage-video .video-caption-wrap .secondary {
        font-size: 64px;
    }
}