

/* border left / right on header menu */
.mk-main-navigation {
    padding-left:20px;
    padding-right:20px;
}

a {
    transition:0.3s all;
}


/* desktop logo hq */
img.mk-desktop-logo {
    width:180px !important;
    height:53px !important;
}

/* mobile logo hq */
img.mk-resposnive-logo {
    width:45px !important;
    max-width:45px !important;

}

/* move header phone to top right on desktop*/

@media handheld, only screen and (min-width: 780px) {
    .mk-header-toolbar {
        position: absolute !important;
        top: 30px;
        width: 250px !important;
        right:60px;
    }
}

@media handheld, only screen and (min-width: 1140px) {
    .mk-header-toolbar {
        right: 0px !important;
    }
}


/* show and position header phone number on mobiles */

@media handheld, only screen and (max-width: 780px) {
    .mk-header-toolbar {
        display: block !important;
        position: absolute !important;
        top: 23px;
        width: auto !important;
        right: 60px;
        background:none !important;
    }

    .header-toolbar-contact span{
        display: none;
    }

    .mk-toolbar-holder {
        padding:0;
    }

    /* make sure hamburger is on top */
    .mk-nav-responsive-link {
        z-index: 99;
    }

    .mk-toolbar-resposnive-icon {
        display: none !important;
    }

    .header-toolbar-contact {
        display: inline-block !important;
        width:20px !important;
    }

    .mk-header-toolbar i {
        font-size:30px !important;
    }

}




/* header phone link */
.mk-toolbar-holder a {

    color:#5b6063 !important;
    font-family: "Libre Baskerville";
}

.mk-toolbar-holder i {
    color:#bee7f9;
    position: relative;
    margin-top:-10px;
    font-size:20px;
}

.header-toolbar-contact i:before {
    content: "\63" !important;
}

.header-toolbar-location {
    display: inline-block;
    margin-right:10px;
}

@media screen and (min-width: 767px) {
    .header-toolbar-location {
        display: none;
    }
}



.header-toolbar-contact span {
    font-size:15px;
}

/* stick nav corrections */
.header-style-1.a-sticky .main-navigation-ul > li {

}



/* theme is putting too much padding (136px) to acommodate the sticky nav (100px), probably because i've absoltue position the top header */
.header-style-1 .mk-header-padding-wrapper {
    padding-top:100px !important;
}


/* center header main nav*/
.header-style-1.header-align-left .mk-header-nav-container {
    text-align:center !important;
    padding-right:10px;
}



/* banner styles */

.full-width-2 {
    min-height: 108px !important;
}

@media screen and (min-width: 768px) {
    .full-width-2 {
        min-height: 278px !important;
    }
}

#page-section-2 .background-layer-holder .background-layer {
    background-size: cover;

}








/* homepage 4x CTA below banner fixes */

.home-4-cols {
    vertical-align: top;
}


/* force a min-height for iPad portrait, removed in the 1140 query below */
@media screen and (min-width: 767px) {
    .home-4-cols .wpb_wrapper {
        min-height: 290px;

    }

}

/* on desktop use flex to even up the box heights */
@media screen and (min-width: 1140px) {

    .home-4-cols {
        display: flex;
        flex-wrap: wrap;
        vertical-align:top;

    }

    .home-4-cols .wpb_wrapper {
        min-height: 0;
    }
}

.home-4-cols .mk-custom-box {
    margin-bottom:0px !important;
}

.home-4-cols .mk-image {
    height:42px;
    margin-bottom:15px !important;
}

.home-4-cols .vc_column_container {
    overflow: hidden;
    margin-bottom: 20px;
    display: inline-flex;

}

.home-4-cols .wpb_wrapper {
    position: relative;
}




/* even up the column heights with an overflowed 1000px cover */
.home-4-cols .wpb_wrapper:after {
    display: block;
    content:"";
    background:white;
    height:1000px;
    width:100%;
    position: absolute;
    top:0;
    left:0;
}







/* homepage 3x CTA above footer fixes */

.home-cta {
    overflow: hidden;
}

.home-cta .box-holder {
    min-height: 290px !important;
}

.home-cta .mk-text-block {
    width:100%;
    max-width: 200px;
}

@media only screen and (max-width: 767px) {
    .home-cta .mk-text-block {
        max-width: none;
    }
}

.home-cta .mk-custom-box.hover-effect-image {
    overflow:visible; !important;
}

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

    .home-cta .box-holder {
        position: relative;

    }

    .home-cta .mk-custom-box.hover-effect-image {
        overflow:hidden !important;
    }

    .home-cta .box-holder .mk-text-block {
        text-align: center !important;
    }

    .home-cta .box-holder::before {
        display: block;
        content:"";
        width:100%;
        height:500px;
        z-index: 2;
        position: absolute;
        top: 0;
        left: 0;
        background:linear-gradient(to right, #ffffff 40%,rgba(255,255,255,0.7) 100%);
    }
}



.home-cta .box-holder::after {
    background-size:cover !important;
    height:110% !important;
}

..home-cta .column_container {
    overflow: hidden;
}






/* select solid backgrounds */

#theme-page select {
    background:#fafafa url('/wp-content/themes/jupiter/assets/images/selectbox-arrow.png') right center no-repeat;
}

#theme-page select:focus,
#theme-page select:active {
    background-color:white;
}




/* customize the side menu on service pages */

#menu-services {
    background:#f7f7f7;
}

.widget_nav_menu ul.menu {
    border:none !important;
}

.widget_nav_menu ul li:first-child {
    border-top: 1px solid #ebebeb;
}

.widget_nav_menu ul li:last-child {
    border-bottom: 1px solid #ebebeb !important;
}

 .widget_nav_menu ul li a {
    background:#f7f7f7;
    color:#282828;
    padding:15px;
 }

 .widget_nav_menu ul li a:before {
    display: none;
 }

 .widget_nav_menu ul li a:hover {
    background:#ededed;
 }

.widget_nav_menu ul li.current_page_item a {
    background:#f7f7f7;
    font-weight: normal !important;
    color:#3da6d5;
}


/* customise services landing page */
.page-id-59 .page-section-content .wpb_row  {
    display: flex;
    flex-wrap: wrap;
    vertical-align:top;

}

.page-id-59 .page-section-content .wpb_row  .mk-button {
    min-height: 132px;
    padding:28px 24px !important;
    background: #ebebeb!important;
}

.page-id-59 .page-section-content .wpb_row  .mk-button--text {
    color:#5b6063;
    font-family: "Libre Baskerville";
    font-size: 18px;
    line-height: 28px;

}


.page-id-59 .page-section-content .wpb_row .mk-button-container {
    margin-bottom:0px !important;
}

@media handheld, only screen and (max-width: 767px) {


    .page-id-59 .page-section-content .wpb_row .mk-button-container {
        margin-top:20px !important;
    }


    .vc_inner.vc_custom_1462266713868,
    .vc_inner.vc_custom_1462162703849,
    .vc_inner.vc_custom_1462178244521   {
        margin-top:0px !important;
        margin-bottom:0px !important;
    }

}


/* underline "Online Today" in baseline */
.footer-cta a {
    display: inline-block;
    position: relative;
}

.footer-cta a:hover {
    color:#3da6d5;
}

.footer-cta a:after {
    display: block;
    position: absolute;
    height:4px;
    background:#c8ebfa;
    width:100%;
    bottom:-5px;
    content:"";
    transition:0.3s all;
}

.footer-cta a:hover:after {
    background-color:#3da6d5;
}


/* contact page phone icon positioning */
.page-id-21 .theme-page-wrapper .mk-icon-phone {
    position: relative;
    top:-2px;
}


/* contact page Get Directions / View Larger links */

.map-utility {

    position: absolute;
    bottom:-10px;
    width:230px;
    left:50%;
    margin-left:-115px;
    background:#ffffff;
    text-align:center;
    padding:10px 5px;
}



/* contact form submit button */
.gform_wrapper .gform_footer {
    text-align: center !important;
}

.gform_wrapper .gform_footer input[type=submit] {
    color:#252525 !important;
    font-size:14px !important;
    letter-spacing: 2px;
    font-weight: bold;
    padding: 15px 30px !important;
}

.gform_wrapper .gform_footer input[type=submit]:hover {
    background-color:#252525 !important;
    color:#c8ebfa !important;
}




/* about page padding on main text */
.vc_custom_1462170870643 {
    padding-right:40px;
}





/* footer logos */
.footer-logos img:last-child {
    margin-left:40px;
}



/* footer */
#mk-footer-navigation {
    float:none;
}

#mk-footer-navigation ul li a {
    color:white;
    text-transform: uppercase;
    margin:0 12px;
}

#mk-footer .footer-wrapper {
    padding-top:0 !important;
    padding-bottom:0 !important;
    text-align: center;
}

#mk-footer .widget_contact_info li i {
    display: inline-block;
    position: relative;
    margin-right:10px;
}

#mk-footer .widget_contact_info li a {
    margin-bottom: 0px;
}



@media screen and (min-width: 768px) {

    #mk-footer .footer-wrapper .mk-padding-wrapper {
        border-top:1px solid #676767;
        padding-top:50px;
    }

    #mk-footer .footer-wrapper {
        text-align:left;
    }

}

#sub-footer {
    padding-bottom:60px;
}

#sub-footer .mk-grid {
    position: relative;
}


#mk-footer [class*='mk-col-'] {
    padding-left:0 !important;
    padding-right:0 !important;
}

/* hide sticky email link */
.mk-quick-contact-wrapper {
    display: none !important;
}




/* desktop by Juicebox */
@media screen and (min-width: 768px) {
    .mk-footer-copyright {
        float:none;
        position: absolute;
        right:20px;
        padding:0;
    }
}

/* footer on mobiles */
@media screen and (max-width: 767px) {

    ul#menu-footer {
        width:100%;

    }

    ul#menu-footer li {
        display: inline-block;

    }

    .footer-logos {
        width:100%;
        text-align: center;

    }

}

.jb {
    color:white;
}


.flex-row {
    display: flex;
    flex-wrap: wrap;
    vertical-align:top;
    //justify-content: center;
}



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

.flex-row .inline-flex {
    display: inline-flex;
}
