/* //////////////////////////////SALE PAGE COMMON STYLES :: edit with caution  \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ */
/* \\\\\\\\\\\\\\\\\\\\\\\ Please sort attributes alphabetically for ease of reference //////////////////////// */

/* ----------------------------------------------------------------------------- GLOBAL ATTRIBUTES ------------ */
a {
    color: #4D4D4D;
    text-decoration: none;
    -webkit-text-decoration-line: none;
    text-decoration-line: none;
}

a:hover {
    color: #333;
}

.row.no-gutters {
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
}

div[class^=col-],
div[class*=col-] {
    padding-right: 4px;
    padding-left: 4px;
}

#sales-component .sp-page-content {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: avenir !important;
    font-size: 14px;
    padding-left: 0px;
    padding-right: 0px;

}

.sp-page-content.container-fluid {
    /* !!! DO NOT change. Modifies CMS 
    template for responsive layout !!! */
    margin: 0;
    max-width: 1200px;
    min-width: 320px;
    width: 100%;
}

.sp-page-content i.fa {
    font-size: 0.7em;
    margin-left: 4px;
}

sup.fa {
    font-size: 0.6em;
    margin-left: -1px
}

.sp-img-border {
    border: #dedede 1px solid !important;
}

.hot {
    color: #bf0c26;
    font-size: 1.1em;
}

.stamp {
    background: #bf0c26;
    display: block;
    font-weight: bold;
    margin: 0 auto;
    padding: 10px;
    width: 340px;
}

.coupon {
    border: #4D4D4D 4px dashed;
    margin: 20px;
}

.midrule {
    letter-spacing: -2px;
    position: relative;
    top: -2px;
}

.strike {
    text-decoration: line-through;
}

.contrast {
    text-shadow: rgba(0, 0, 0, 0.3) 0 0 3px;
}

.underline,
a .underline,
a:hover .underline {
    text-decoration: underline !important;
}

.disclaimer-block {
    color: #7c7c7c;
    font-family: avenir;
    text-align: center;
}

.disclaimer-block p {
    padding: auto 15px;
}

/* ----------------------------------------------------------------------------- BUTTONS ---------------------- */

.button,
a.button {
    cursor: pointer !important;
    display: block;
    padding: 8px 15px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.yellow-border,
a.yellow-border {
    border: rgba(248, 232, 4, 1) 2px solid;
    color: rgba(248, 232, 4, 1);
}

.yellow-border:hover,
.yellow-border:active,
a.yellow-border:hover,
a.yellow-border:active {
    border: rgba(248, 232, 4, 0.5) 2px solid;
     !important;
    color: rgba(248, 232, 4, 0.5) !important;
}

.gray-border,
a.gray-border {
    border: #4D4D4D 2px solid;
    color: #4D4D4D;
}

.gray-border:hover,
.gray-border:active,
a.gray-border:hover,
a.gray-border:active {
    border-color: #9a9a9a !important;
    color: #9a9a9a !important;
}

.black-border,
a.black-border {
    border: #000 2px solid;
    color: #000;
}

.black-border:hover,
.black-border:active,
a.black-border:hover,
a.black-border:active {
    border-color: #4D4D4D !important;
    color: #4D4D4D !important;
}

.white-border,
a.white-border {
    border: #fff 2px solid;
    color: #fff;
}

.white-border:hover,
.white-border:active,
a.white-border:hover,
a.white-border:active {
    border: #eee 2px solid !important;
    color: #eee !important;
}

.contrast .white-border,
.contrast .white-border:hover,
.contrast .white-border:active,
a.contrast .white-border,
a.contrast .white-border:hover,
a.contrast .white-border:active {
    text-shadow: rgba(0, 0, 0, 0.4) 0 0 3px !important;
    -webkit-box-shadow: rgba(0, 0, 0, 0.4) 0 0 3px inset !important;
    box-shadow: rgba(0, 0, 0, 0.4) 0 0 3px inset !important;
}

.yellow-bg,
a.yellow-bg {
    background-color: rgba(248, 232, 4, 1);
    border: none;
    color: #000;
}

.yellow-bg:hover,
.yellow-bg:active,
a.yellow-bg:hover,
a.yellow-bg:active {
    background-color: rgba(248, 232, 4, 0.5) !important;
}

.black-bg,
a.black-bg {
    background: rgba(0, 0, 0, 1);
    border: none;
    color: #f8e804;
}

.black-bg:hover,
.black-bg:active,
a.black-bg:hover,
a.black-bg:active {
    background: rgba(0, 0, 0, 0.7) !important;
    color: #f8e804 !important;
    text-decoration: none !important;
}

.white-bg,
a.white-bg {
    background: rgba(255, 255, 255, 1);
    border: none;
    color: #000;
}

.white-bg:hover,
.white-bg:active,
a.white-bg:hover,
a.white-bg:active {
    background: #c1c1c1 !important;
    color: #000 !important;
    text-decoration: none !important;
}

/* ----------------------------------------------------------------------------- SPECIFIC ATTRIBUTES ---------- */
/* ----------------------------------------------------------------------------- EVENT HERO ------------------- */

.sale-hero-banner {
    cursor: default;
}

/* ----------------------------------------------------------------------------- TAB NAVIGATION --------------- */

.sp-nav {
    color: #4D4D4D;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    line-height: 0.9em;
    list-style: none;
    width: 100%;
}

.sp-nav li {
    padding: 0 15px;
    text-align: center;
}

.sp-nav .paren {
    display: inline-block;
    font-size: 0.5em;
}

.sp-nav a,
.sp-nav strong,
.sp-nav span {
    color: #4D4D4D;
    display: block;
    font-size: 1.5em;
    line-height: 1em;
    padding: 5px 5px;
    text-decoration: none;
    vertical-align: middle;
}

.sp-nav a:hover {
    color: #111;
    text-shadow: rgba(131, 130, 34, 0.9) 0 0 3px;
}

.sp-nav strong {
    width: 100%;
}

.sp-nav-target {
    height: 20px;
}


a.jump-back,
.jump-back {
    color: #8d8d8d;
    float: none;
    margin-left: 5px;
    position: static;
    right: auto;
    text-decoration: none;
    top: auto;
}

.jump-back .fa {
    bottom: 2px;
    position: relative;
}

.jump-back:hover {
    color: #000;
}

.jump-back:hover .fa {
    color: #000;
}

.jump-back:hover .fa {
    -webkit-transform: scale(2px);
    transform: scale(2px);
}

.jump-space {
    height: 25px;
}

section {
    padding-top: 10px;
}

.sp-cat-footer {
    margin-bottom: 10px;
}

/* ----------------------------------------------------------------------------- CAT HEADINGS ----------------- */

.sp-cat-header {
    overflow: hidden;
    padding: 0 0 10px 0;
    position: relative;
    text-align: center;
    text-transform: uppercase;
}

.sp-cat-header h2,
.sp-cat-product-header h2 {
    color: #4D4D4D;
    font-size: 2em;
    text-transform: uppercase;
}

.sp-cat-product-header {
    text-align: center;
}

.sp-cat-product-header h2 {
    margin: 0;
}

.sp-cat-product-header .color {
    color: #bf0c26;
}

/* ----------------------------------------------------------------------------- CAT HERO --------------------- */

.sp-cat-hero {
    background-position: bottom center;
    background-size: cover;
    color: #fff;
    margin-bottom: 4px;
    text-align: center;
}

.sp-cat-hero .sp-cat-hero {
    color: #222;
    display: block;
    height: 380px;
    position: relative;
    padding-top: 170px;
    text-decoration: none;
    width: 100%;
}

.sp-cat-hero-headline {
    color: #fff;
    font-size: 2em;
    line-height: 1.2em;
    margin: 0 0 20px 0;
    text-align: center;
    width: 100%;
}

.sp-cat-hero-headline .color {
    color: #f8e804;
    font-weight: bold;
}

.sp-cat-hero .hero-button {
    text-align: center;
    text-transform: uppercase;
    width: 100%;
}

.sp-cat-hero .hero-button .button {
    font-size: 1.1em;
    margin: 0 auto 0 auto;
    padding: 10px 15px;
    width: 200px
}

.sp-cat-hero .hero-floor-label {
    bottom: 9px;
    color: #fff;
    font-size: 1.2em;
    position: absolute;
    text-align: right;
    text-transform: capitalize;
    width: 96.9%;
}

/* !!to compensate for the subtracted third on the rest!! */
.accessories-section a.sp-cat-hero {
    padding-top: 230px;
}

/* ----------------------------------------------------------------------------- CAT HERO STORY --------------- */

a.sp-hero-story,
a.sp-hero-story:hover {
    background: #d3d3d3;
    display: block;
    height: 380px;
    padding: 117px 15px 0 10px;
    text-decoration: none;
}

.sp-hero-story h3 {
    font-size: 2.2em;
    font-weight: normal;
    margin: 0 !important;
}

.sp-hero-story p {
    font-size: 1.5em;
    padding: 15px;
    text-transform: capitalize;
}

/* ----------------------------------------------------------------------------- CAT/SUBCAT ------------------- */

.sp-cat-subcat {
    height: 178px;
    margin-bottom: 10px;
}

.accessories .sp-cat-subcat {
    height: 271px;
}

.sp-cat-sc-img {
    height: 204px;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.sp-cat-sc-img img {
    bottom: 0;
    height: auto;
    position: absolute;
    width: 100%;
}

.sp-cat-sc-img.add-border img {
    border: #bcbcbc 1px solid;
}

.sp-cat-subcat a {
    text-decoration: none;
}

.sp-cat-subcat a:hover {
    color: #888;
}

.sp-cat-subcat .subcat-link {
    color: #444;
    display: block;
    font-size: 1.3em;
    padding: 25px 0 25px 0;
    text-align: center;
    width: 100%;
}

.sp-cat-subcat .subcat-link:hover {
    color: #888;
}

/* ----------------------------------------------------------------------------- CAT ON SALE ITEMS ------------ */

.sp-cat-products .sp-cat-header h2 {
    font-size: 1.7em;
    text-transform: uppercase;
}

.sp-cat-products .sp-cat-header h2 .color {
    color: #bf0c26;
}

.sp-cat-products > .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.sp-cat-product {
    overflow: hidden;
    height: 375px;
    text-align: center;
}

.sp-cat-product .button {
    display: block;
    margin: 0 auto;
    width: 140px;
}

.sp-cat-product img {
    height: 190px;
    margin-bottom: 20px;
    width: 190px;
}

.sp-cat-product.add-border img {
    border: #bcbcbc 1px solid;
}

.sp-cat-product-text .fa {
    display: none;
}

.sp-cat-product-text.add-trade .fa.fa-trademark {
    display: inline;
}

.sp-cat-product-text.add-reg .fa.fa-registered {
    display: inline;
}

.sp-cat-product-text {
    color: #4D4D4D;
    font-size: 1em;
    height: 120px;
    line-height: 1.3em;
    margin: 0;
    padding: 0 10px;
    text-align: center;
}

.sp-cat-product-text .color {
    color: #bf0c26;
    font-weight: bold;
}

/* ----------------------------------------------------------------------------- CAT/SUBCAT FOOTER ------------ */

.sp-cat-footer {
    margin-bottom: 30px;
    margin-top: 25px;
    padding: 20px 0 20px 0;
    text-align: center;
}

.sp-cat-footer a {
    font-size: 1.3em;
    font-weight: bold;
    line-height: 1.5em;
    text-decoration: none;
    text-transform: uppercase;
}

.sp-cat-footer a:hover {
    color: #888;
}

.sp-cat-footer a i.fa {
    font-size: 0.8em;
}

.accessories .sp-cat-footer {
    margin-bottom: 30px;
    margin-top: 0;
    padding: 10px 0 20px 0;
    text-align: center;
}

/* ----------------------------------------------------------------------------- OWL CAROUSEL OVERRIDES ------- */

.owl-item a {
    font-weight: normal !important;
}

.owl-nav {
    height: 400px;
    position: absolute;
    width: 100%;
}

.owl-nav .prev {
    position: absolute;
    width: 20px;
}

.customNavigation {
    height: 390px;
    position: absolute;
    margin-left: 10px;
    overflow: hidden;
    width: 100%;
}

.customNavigation > i.fa {
    margin-left: 0;
}

.caro-prev,
.caro-next {
    color: rgba(0, 0, 0, 0.4);
    cursor: pointer;
    display: block;
    font-size: 35px;
    height: 390px;
    position: absolute;
    text-align: center;
    width: 40px;
    z-index: 999;
}

.caro-prev:hover,
.caro-next:hover {
    color: rgba(0, 0, 0, 0.8);
    text-decoration: none;
}

.caro-prev i,
.caro-next i {
    margin-top: 90px;
}

.caro-prev {
    left: 0;
}

.caro-next {
    right: 10px;
}

.caro-prev i.fa,
.caro-next i.fa {
    margin-left: 0;
    margin-right: 8px;
}

/* -*-------------------------------------- RESPONSIVE BREAKPOINTS -----------------------------------------*- */
/* ---------------------------------------------- BP DESKTOP ------------------------------------------------- */
@media screen and (max-width: 1025px) {

    /* ----------------------------------------------------------------------------- TAB NAVIGATION (desk) --- */

    .sp-nav {
        margin: 0 auto 20px auto;
        padding-left: 0px;
        width: 860px;
    }
}

/* ------------------------------------------------ BP TABLET ------------------------------------------------ */
@media screen and (max-width: 767px) {

    /* ------------------------------------------------------------------------- PAGE COMMON STYLES (tab)----- */

    .hide-md {
        display: none !important;
    }

    /* ------------------------------------------------------------------------- EVENT HERO (tab) ------------ */

    a.sp-hero-story,
    a.sp-hero-story:hover {
        height: auto;
        padding-top: 17px;
        padding-bottom: 25px;
    }

    a.sp-hero-story,
    a.sp-hero-story:hover {
        padding-top: 25px;
        padding-bottom: 5px;
    }

    .sp-hero-story h3 {
        font-size: 1.5em;
    }

    .sp-hero-story p {
        font-size: 1.1em;
    }

    /* ------------------------------------------------------------------------- TAB NAVIGATION (tab) -------- */

    .sp-nav {
        margin: 0 0 30px 0;
        padding: 10px 0 10px 0;
        width: 100%;
    }

    .sp-nav .nav-label {
        width: 0;
    }

    .sp-nav {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        font-size: 1.4em;
        margin: 0 0 30px 0;
        padding: 10px 0 10px 0;
    }

    .sp-nav .nav-label {
        width: 100%;
    }

    .sp-nav li {
        margin-bottom: 10px;
    }

    /* ------------------------------------------------------------------------- FINANCING BANNER (tab) ------ */

    .financing-banner .ban-line2,
    .financing-banner .ban-line3 {
        padding: 0 10px;
    }

    /* ------------------------------------------------------------------------- CAT/SUBCAT (tab) ------------ */

    .sp-nav {
        margin: 0 0 30px 0;
        padding: 10px 0 10px 0;
        width: 100%;
    }

    .sp-nav .nav-label {
        width: 0;
    }

    .sp-cat-product-text {
        font-size: 1.2em;
        height: 150px;
        padding: 0 0;
    }

    .sp-cat-product.item {
        height: 415px;
    }

    .sc-cat-footer {
        margin-bottom: 80px;
    }

    .sc-cat-footer div {
        margin-bottom: 40px;
        padding-left: 20px;
        padding-right: 20px;
    }

    /* ---------------------------------------------- BP MOBILE -------------------------------------------------- */
    @media screen and (min-width:577px) {

        /* ------------------------------------------------------------------------- PAGE COMMON STYLES (mob) ---- */

        .banner-mob {
            display: none;
        }

    }

    /* ---------------------------------------------- BP MOB SM -------------------------------------------------- */
    @media screen and (max-width: 576px) {

        .hide-xs {
            display: none !important;
        }

        #sales-component .sp-page-content {
            padding-right: 18px;
        }

        /* ------------------------------------------------------------------------- CAT HERO (mob) -------------- */

        .sp-cat-hero-headline {
            font-size: 1.4em;
            text-transform: uppercase;
        }

        .sp-cat-hero .hero-floor-label {
            font-size: 1em;
            text-align: center;
            width: 100%;
        }

        .sp-cat-product-text {
            font-size: 1.2em;
        }

        /* ------------------------------------------------------------------------- TAB NAVIGATION (mob) -------- */

        .sp-nav {
            border-bottom: #ddd 1px solid;
            border-top: #ddd 1px solid;
            font-size: 1.6em;
            display: block;
            margin: 10px 0 15px 0;
            max-width: 576px;
            padding: 10px 0 10px 0;
            width: auto;
        }

        .sp-nav li {
            padding: 5px 0;
        }
    }

    /* ------------------------------------------------ BP MOB XS ------------------------------------------------- */
    @media screen and (min-width:320px) {

        /* ------------------------------------------------------------------------ OWL CAROUSEL OVERRIDES (mob) -- */

        .owl-item a {
            font-weight: normal !important;
        }
    }
