﻿/* General Stuff */

body {
    margin: 0 0;
    padding: 0 0;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 18px;
    line-height: 30px;
    color: #FFFFFF;
    background-color: #242424;
}

#frmMaster {
    display: block;
}

/* Mobile Header */

.header-mobile {
    color: #FFFFFF;
    background-color: #242424;
    -webkit-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.33);
    -moz-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.33);
    box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.33);
}

.header-mobile .logo-mobile {
    padding-top: 20px;
    padding-bottom: 20px;
}

.header-mobile .header-contact {
    padding-bottom: 20px;
    font-size: 24px;
    line-height: 150%;
}

.header-mobile .header-contact a,
.header-mobile .header-contact a:visited {
    color: #FFFFFF;
}

.header-mobile .header-contact a:hover {
    color: #FFFFFF;
    text-decoration: none;
}

    .header-mobile .menu {
        z-index: 99990;
        padding-top: 8px;
        padding-bottom: 8px;
        background-color: #51504D;
    }

/* Desktop Header */

.header-desktop {
    position: relative;
    height: 135px;
    z-index: 9999;
    color: #FFFFFF;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#6b6967+0,000000+100 */
    background: linear-gradient(to bottom, rgba(107,105,103,1) 0%,rgba(0,0,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    background-color: rgba(107,105,103,1);
    -webkit-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.33);
    -moz-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.33);
    box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.33);
}

.header-desktop .header-contact {
    margin: 0 0;
    padding: 8px 0;
    color: #FFFFFF;
    font-weight: bold;
    background-color: #000000;
}

.header-desktop .header-contact a,
.header-desktop .header-contact a:visited {
    color: #FFFFFF;
    text-decoration: none;
}

.header-desktop .header-contact a:hover {
    color: #e0a443;
    text-decoration: none;
}

.header-desktop .logo-desktop {
    position: absolute;
    z-index: 99990;
    top: 5px;
    left: 50%;
    margin: 0 0 0 -145px;
    z-index: 100;
}

/* Desktop Menu */

.header-desktop .menu {
    position: relative;
    z-index: 9999;
    height: 89px;
    display: flex;
    align-items: center;
    font-size: 16px;
}

.header-desktop .menu .menu-left {
    padding-right: 165px;
}

.header-desktop .menu .menu-right {
    padding-left: 165px;
}

@media(max-width: 1199px){
    .header-desktop .menu .menu-right {
        padding-left: 148px;
    }

    .header-desktop .menu .menu-left {
        padding-right: 148px;
    }

}

/* Footer */

.footer {
    padding: 30px 0 30px 0;
    font-size: 16px;
    color: #F6F6F6;
    line-height: 150%;
    background-color: #000000;
}

.footer h2 {
    margin-bottom: 4px;
    font-size: 150%;
    font-weight: bold;
    color: #FFFFFF;
}

.footer hr {
    margin-top: 0;
    margin-bottom: 0.75rem;
    border-color: #FFFFFF;
}

.footer a,
.footer a:visited {
    color: #F6F6F6;
}

.footer a:hover {
    color: #e0a443;
    text-decoration: none;
}

/* Big Picture */

.big-picture {
    width: 100%;
    height: auto;
    border-bottom: 1px solid rgba(0,0,0,.125);
}

.big-picture .container,
.big-picture .container-fluid {
    padding-left: 0;
    padding-right: 0;
}

.big-picture picture,
.big-picture .img-fluid {
    min-width: 100%;
}

/* Wide Photo */

.wide-photo {
    width: 100%;
    height: auto;
    border-top: 1px solid rgba(0,0,0,.125);
    border-bottom: 1px solid rgba(0,0,0,.125);
}

.wide-photo .container-fluid {
    padding-left: 0;
    padding-right: 0;
}

.wide-photo img {
    width: 100%;
    max-width: 100%;
}

/* Swiper */

.swiper-container {
    width: 100%;
    height: auto;
    border-bottom: 1px solid rgba(0,0,0,.125);
}

.swiper-slide {
    text-align: center;
}

    .swiper-slide .img-fluid {
        width: 100%;
        height: auto;
    }

    .swiper-slide .slide-title {
        position: absolute;
        bottom: 60px;
        left: 0;
        right: 0;
        display: flex;
        justify-content: center;
        flex-direction: column;
        font-size: 200%;
        font-weight: bold;
        color: #FFFFFF;
        line-height: 150%;
        text-align: center;
    }

        .swiper-slide .slide-title .slide-title-text {
            align-self: center;
            padding: 1rem 2rem;
            background-color: rgba(0, 0, 0, 0.66);
            -webkit-border-radius: 8px;
            -moz-border-radius: 8px;
            border-radius: 8px;
        }

.swiper-pagination-bullet {
    width: 16px;
    height: 16px;
    background-color: #000000;
    opacity: 0.5;
}

.swiper-pagination-bullet-active {
    background-color: #FFFFFF;
    opacity: 0.9;
}

@media (max-width : 767px) {

    .swiper-container {
        border-bottom: 0px none;
        background-color: #FFFFFF;
    }

    .swiper-button-next,
    .swiper-button-prev {
        display: none;
    }

    .swiper-slide {
        display: flex;
        flex-direction: column-reverse;
    }

    .swiper-slide .slide-title {
        position: absolute;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.5);
    }

    .swiper-slide .slide-title .slide-title-text {
        margin-bottom: 0;
        padding: 12px 0;
        font-size: 14px;
        line-height: 25px;
        background-color: transparent;
        -webkit-border-radius: 0px;
        -moz-border-radius: 0px;
        border-radius: 0px;
    }

    .swiper-container .swiper-pagination {
        position: relative;
        top: 0;
        padding: 8px 0 0 0;
        background-color: #FFFFFF;
    }

    .swiper-pagination-bullet {
        width: 12px;
        height: 12px;
        background-color: #000000;
        opacity: 0.5;
    }

    .swiper-pagination-bullet-active {
        background-color: #000000;
        opacity: 0.9;
    }

}

/* Content */

.content {
    padding-top: 30px;
    padding-bottom: 30px;
    color: #000000;
    background-color: #FFFFFF;
}

    .content h1,
    .content h2,
    .content h3,
    .content h4,
    .content h5 {
        color: #6B6967;
    }

.content h1 {
    margin-top: 0;
    margin-bottom: 24px;
    font-size: 175%;
    line-height: 125%;
    font-weight: bold;
    color: #000000;
}

.content h2 {
    margin-top: 0;
    margin-bottom: 24px;
    font-size: 150%;
    font-weight: bold;
    line-height: 150%;
}

.content h3,
.content h4,
.content h5 {
    margin-bottom: 24px;
    font-size: 125%;
    font-weight: bold;
    line-height: 150%;
}

.content h5 {
    font-size: 110%;
    color: #000000 !important;
}

.content h1.text-uppercase,
.content h2.text-uppercase,
.content h3.text-uppercase,
.content h4.text-uppercase {
    line-height: 100%;
}

.content p {
    margin-bottom: 24px;
}

.content ul {
    margin-bottom: 24px;
}

.content a,
.content a:visited,
.content a:hover {
    text-decoration: none;
}

.content .card {
    border-color: rgba(0, 0, 0, 0.25);
}

.content .card .fa-ul {
    margin-left: 2.25rem;
}

@media (max-width : 767px) {

    .content.mobile-top {
        padding-top: 1rem;
    }

}

/* Logos */

.logo-wrapper {
    overflow: hidden;
    margin-bottom: 4px;
    padding: 20px 20px;
    background-color: #FFFFFF;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
    -moz-box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
    box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
}

    .logo-wrapper img {
        width: 100%;
    }

.logo-caption {
    display: block;
    text-align: center;
}

.content a .logo-caption,
.content a:visited .logo-caption {
    color: #FFFFFF;
    font-weight: normal;
    text-decoration: none;
}

.content a:hover .logo-wrapper {
    -webkit-box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.75);
    box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.75);
}

.content a:hover .logo-caption {
    color: #e0a443;
    text-decoration: none;
}

/* Color Sections */

.content.dark-green {
    color: #FFFFFF;
    background-color: #51504D;
}

.content.dark-green h1,
.content.dark-green h2,
.content.dark-green h3,
.content.dark-green h4,
.content.dark-green h5 {
    color: #FFFFFF;
}

    .content.dark-green .card {
        color: #000000;
        border: 1px solid #000000;
        -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.33);
        -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.33);
        box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.33);
    }

    .content.dark-green .card h2,
    .content.dark-green .card h3,
    .content.dark-green .card h4,
    .content.dark-green .card h5 {
        color: #51504D;
    }

/* Extra Dark Green */

.content.dark-green-x {
    color: #FFFFFF;
    background-color: #242424;
}

.content.dark-green-x h1,
.content.dark-green-x h2,
.content.dark-green-x h3,
.content.dark-green-x h4,
.content.dark-green-x h5 {
    color: #FFFFFF;
}

/* Product Logos */

.content.logo-bg {
    padding-top: 60px;
    padding-bottom: 60px;
    color: #FFFFFF;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-color: #000000;
    border-top: 1px solid rgba(0,0,0,0.75);
    -webkit-box-shadow: inset 0px 2px 8px 0px rgba(0,0,0,0.5);
    -moz-box-shadow: inset 0px 2px 8px 0px rgba(0,0,0,0.5);
    box-shadow: inset 0px 2px 8px 0px rgba(0,0,0,0.5);
}

.content.logo-bg h1,
.content.logo-bg h2,
.content.logo-bg h3,
.content.logo-bg h4,
.content.logo-bg h5 {
    color: #FFFFFF;
    font-weight: bold;
}

/* Hardwood Floor BG */

.content.hardwood-bg {
    background-image: url('/images/flooring/hardwood-bg.jpg');
}

/* Laminate Floor BG */

.content.laminate-bg {
    background-image: url('/images/flooring/laminate-bg.jpg');
}

/* Tile Floor BG */

.content.tile-bg {
    background-image: url('/images/flooring/tile-bg.jpg');
}

/* Carpet Floor BG */

.content.carpet-bg {
    background-image: url('/images/flooring/carpet-bg.jpg');
}

/* Carpet Floor BG */

.content.vinyl-bg {
    background-image: url('/images/flooring/sheet-vinyl-bg.jpg');
}

/* Countertops BG */

.content.countertops-bg {
    background-image: url('/images/kitchenandbath/countertops-bg.jpg');
}

/* Cabinets BG */

.content.cabinets-bg {
    background-image: url('/images/kitchenandbath/cabinets-bg.jpg');
}

/* Lumber BG */

.content.lumber-bg {
    background-image: url('/images/buildingsupplies/lumber-bg.jpg');
    background-position: left bottom;
}

/* Windows BG */

.content.windows-bg {
    background-image: url('/images/buildingsupplies/windows-bg.jpg');
}

/* Roofing BG */

.content.roofing-bg {
    background-image: url('/images/buildingsupplies/roofing-bg.jpg');
}

/* Misc BG */

.content.misc-bg {
    background-image: url('/images/buildingsupplies/misc-bg.jpg');
}

/* Plumbing BG */

.content.plumbing-bg {
    background-image: url('/images/plumbingandelectrical/plumbing-bg.jpg');
    background-position: left center;
}

/* Tools BG */

.content.tools-bg {
    background-image: url('/images/toolsandhardware/tools-bg.jpg');
}

/* Paint BG */

.content.paint-bg {
    background-image: url('/images/paintsupplies/paint-bg.jpg');
}

/* Lawn BG */

.content.lawn-bg {
    background-image: url('/images/lawnandgarden/lawn-bg.jpg');
}

/* Contact Page */

@media only screen and (max-width: 767px) {

    .email-directory a {
        font-size: 16px;
        line-height: 175%;
    }

}

/* Form Stuff */

label {
    margin-bottom: 5px;
    font-size: 16px;
    font-weight: bold;
    line-height: 125%;
}

textarea {
    resize: none;
}

.form-group {
    margin-bottom: 0.75rem;
}

/* Google Map */

.map .container-fluid {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.embed-google-map {
    padding-bottom: 33%;
    color: #000000;
    border-top: 1px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
}

@media only screen and (max-width: 1199px) {

    .embed-google-map {
        padding-bottom: 42%;
    }
}

@media only screen and (max-width: 992px) {

    .embed-google-map {
        padding-bottom: 56%;
    }
}

@media only screen and (max-width: 768px) {

    .embed-google-map {
        padding-bottom: 75%;
    }
}

/* Multi-Column Lists */

.two-col-list {
    columns: 2;
    -webkit-columns: 2;
    -moz-columns: 2;
}

.three-col-list {
    columns: 3;
    -webkit-columns: 3;
    -moz-columns: 3;
}

.four-col-list {
    columns: 4;
    -webkit-columns: 4;
    -moz-columns: 4;
}

@media (max-width : 767px) {

    .two-col-list,
    .three-col-list,
    .four-col-list {
        columns: initial;
        -webkit-columns: initial;
        -moz-columns: initial;
    }

}

@media (min-width : 768px) And (max-width : 991px) {

    .two-col-list {
        columns: initial;
        -webkit-columns: initial;
        -moz-columns: initial;
    }

    .three-col-list,
    .four-col-list {
        columns: 2;
        -webkit-columns: 2;
        -moz-columns: 2;
    }

}

/* Fixes for IE 11 */

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {

    .two-col-list,
    .three-col-list,
    .four-col-list {
        margin-left: 0;
    }

    .two-col-list .fa-li,
    .three-col-list .fa-li,
    .four-col-list .fa-li {
        position: relative;
        display: inline-block;
        left: 0;
    }

}

@media (max-width : 767px) and (-ms-high-contrast: none), (-ms-high-contrast: active) {

    .two-col-list,
    .three-col-list,
    .four-col-list {
        columns: 1;
        -webkit-columns: 1;
        -moz-columns: 1;
    }

}

/* Fixes for Edge */

@supports (-ms-ime-align: auto) {

    .two-col-list,
    .three-col-list,
    .four-col-list {
        margin-left: 0;
    }

    .two-col-list .fa-li,
    .three-col-list .fa-li,
    .four-col-list .fa-li {
        position: relative;
        display: inline-block;
        left: 0;
    }

}