

/* --- COMMON VALUES ----------------------------------------------

THEME COLORS ------------
    action (blue) = #0076ba
                            #0079bf (old)
        action focus variant = #0468a2

NEUTRAL COLORS ------------
    darkest = #000
    darker = #3d4e5a
    dark = #4b616f
    light = #ccc
    lighter = #f4f4f4
    lightest = #fff

*/





/*--- COMMON ----------------------------------------------------------*/
body {min-width:30rem;font-family:sans-serif;color:#000}

    @media (min-width:1600px) {
        body {overflow-x:hidden}
    }


    /*--- page container ---*/
    .container {width:auto;max-width:1600px;padding:0 clamp(1rem, 2vw, 2rem)}
        /*.main-content-wrapper*/ main {padding:2rem 0}
            .breadcrumb {margin:0 0 2rem}


    /*--- links ---*/
    a {color:#0076ba}
        a:hover, a:focus {color:#0468a2;text-decoration:none}
        p a {font-weight:bold}


    /*--- images ---*/
    img {max-width:100%;height:auto}


    /*--- headings ---*/
    h1, h2, h3, h4 {line-height:1.1;font-weight:bold;margin:0 0 4rem}
        h1 span, h2 span {display:inline-block}
    h1 {font-size:3rem}
        h2, h3 {text-transform:uppercase;text-align:center}
            h2 {font-size:2.5rem}
            h3 {font-size:1.6rem}
        h4 {font-size:1.4rem}





/*--- FORMS ------------------------------------------------------------*/
.form-control {height:auto;padding:.5em;border-radius:0;box-shadow:none}
    .form-control:focus {box-shadow:none;outline:revert}
input, textarea, select {padding:.5em;border:1px solid #ccc;border-radius:0}
label {font-size:.875em;font-weight:bold}
.checkbox-label, .form-text a {font-weight:bold}



/*--- buttons --------------*/
button, input[type="button"], .btn {padding:.5em 1em;background-color:#efefef;border:1px solid #ccc;border-radius:0;font-weight:bold;color:#444}
    button:hover, button:focus, input[type="button"]:hover, input[type="button"]:focus, .btn:hover, .btn:focus {background-color:#fff;border-color:#000;color:#000}

    /*--- default ---*/
    .btn-default {}

    /*--- primary ---*/
    .btn-primary {background-color:#0076ba;border-color:#0076ba;box-shadow:none;color:#fff}
        .btn-primary:hover, .btn-primary:focus {background-color:#0468a2;border-color:#0468a2;color:#fff}

    /*--- success (checkout) ---*/
    .btn-success {color:#fff;background-color:#49a749;border-color:#49a749}
            .btn-success:hover, .btn-success:focus {color:#fff;background-color:#409540;border-color:#409540}






/*--- paypal --------------------------*/
.paypal-payment-methods {}
    .paypal-payment-methods img {display:block;width:20rem;margin:0}








/*--- HEADER ------------------------------------------------------------*/

    /*--- top group --------------------*/
    .header-row {display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 clamp(1rem, 5vw, 2rem);margin:0}
        .header-row::before, .header-row::after {display:none}

        /*--- logo ---*/
        .logo-wrap {width:auto;padding:.5rem 0}
            .logo-wrap a {display:block;transition:opacity .2s}
                .logo-wrap a:hover, .logo-wrap a:focus {opacity:.9}
                .logo-wrap img {display:block;width:20rem}

        /*--- phone link ---*/
        .header-row .header-tel {font-size:1em;line-height:1;font-weight:bold;margin:0 auto}
            .header-row .header-tel a {vertical-align:middle;display:inline-block;padding:.2em .25em;font-size:1.2em}
                    .header-row .header-tel span {font-size:.8em}

            @media (min-width:768px) {
                .header-row .header-tel {text-align:center}
                    .header-row .header-tel span {display:block}
            }


        /*--- search ---*/
        .header-row .search-wrap {flex:1 0 25rem;max-width:40rem;padding:0;margin:.5rem auto}
                .header-row .search-wrap label {position:absolute;clip:rect(0,0,0,0);clip-path:inset(50%)}
                .header-row .search-wrap input.search-box {max-width:none;height:auto;padding:.5em .5em;outline:revert}
                    .header-row .search-wrap input.search-box:focus {box-shadow:none}
                .header-row .search-wrap .search-go {padding:.8em 1em;line-height:1;margin:0}

            /*--- tSearch results ---*/
            #tsearch_results {border-radius:0;top:100%;margin:0}


        /*--- utility links ---*/
        .header-cart {display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1rem;width:auto;padding:0}
            .header-cart .user-links {display:flex;flex-wrap:wrap;justify-content:center;margin:0}
                .header-cart .user-links li {margin:0}
                    .header-cart .user-links a {display:block;font-weight:bold}


    /*--- nav bar --------------------*/
    .navbar-default {min-height:0;background-color:#4b616f;border:0;border-radius:0;box-shadow:-20vw 0 #4b616f, -40vw 0 #4b616f, -60vw 0 #4b616f, 20vw 0 #4b616f, 40vw 0 #4b616f, 60vw 0 #4b616f;margin:0 !important}

        /*--- header ---*/
        .navbar-header {}
            .navbar-header a {display:none !important}

            /*--- toggle button ---*/
            .navbar-default .navbar-toggle {background-color:transparent;border:0;border-radius:0;color:#fff;margin-right:0;outline:revert;transition:background-color .2s}
                .navbar-default .navbar-toggle .icon-bar {background-color:#fff}
                .navbar-default .navbar-toggle:hover, .navbar-toggle:focus {background-color:rgba(0,0,0,.3) !important}


        /*--- links ---*/
        .navbar-default .navbar-collapse {padding:0;border:0 !important;box-shadow:none}
            .navbar-default .navbar-nav {margin:0}
                .navbar-default .navbar-nav > li {}
                    .navbar-default .navbar-nav > li > a {min-height:100%;padding:1em 1em;font-size:1.4rem;text-shadow:none;color:#fff;text-transform:uppercase;transition:background-color .2s, color .2s}
                        .navbar-default .navbar-nav > li > a .caret {}
                        .navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {background-color:rgba(0,0,0,.3);color:#fff;outline:revert}


             /*--- open state ---*/
            .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {background-color:rgba(0,0,0,.3);color:#fff}


        @media (min-width:768px) {
            .navbar-default .navbar-nav {display:flex;flex-wrap:wrap;justify-content:center;width:100%}
                .navbar-default .navbar-nav::before, .navbar-default .navbar-nav::after {display:none}
        }


            /*--- submenus ---*/
            .navbar-nav > li > .dropdown-menu {border:1px solid #ccc;border-radius:0}
                .navbar-default .navbar-nav .dropdown-menu > li > a {padding:.75em 1.5em;text-transform:uppercase;font-size:1.4rem;line-height:1.2;font-weight:bold;white-space:normal}
                .navbar-nav > li > .dropdown-menu .hasSubCats {}
                    .navbar-nav > li > .dropdown-menu .subList .subList {}
                    .dropdown-menu .divider {display:none}

                    /*--- more ---*/
                    .navbar-default .navbar-nav .dropdown-menu > li.menu-item-more > a {background-color:#f4f4f4;color:#3d4e5a !important;text-align:center}
                        .navbar-default .navbar-nav .dropdown-menu > li.menu-item-more > a:hover, .navbar-default .navbar-nav .dropdown-menu > li.menu-item-more > a:focus {background-color:#fff !important;color:#000}


                @media (max-width:767px) {
                        .navbar-default .navbar-nav .open .dropdown-menu > li > a {color:#fff}
                            .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {background-color:rgba(0,0,0,.3);color:#fff}
                }

                @media (min-width:768px) {
                    /*.navbar-default .navbar-collapse {position:relative}
                        .navbar-default .navbar-nav > li {position:static}*/
                            .navbar-nav .open .dropdown-menu {width:35rem}

                        /*--- more ---*/
                        .navbar-default .navbar-nav .dropdown-menu > li.menu-item-more {}
                            .navbar-default .navbar-nav .dropdown-menu > li.menu-item-more > a {width:fit-content;color:#000 !important;margin-left:auto}
                                .navbar-default .navbar-nav .dropdown-menu > li.menu-item-more > a:hover, .navbar-default .navbar-nav .dropdown-menu > li.menu-item-more > a:focus {background-color:#ccc !important}
                }

                @media (min-width:1050px) {
                    .navbar-nav .open .dropdown-menu {width:70rem}

                    /*--- submenus ---*/
                    .navbar-nav > li > .dropdown-menu {padding:2rem 1rem;columns:2 auto;gap:0}
                        .navbar-nav > li > .dropdown-menu > li {break-inside:avoid-column}
}






/*--- FOOTER ------------------------------------------------------------*/
.footer-wrapper {}

    /*--- link groups ---*/
    .paypal-payment-methods {}
        .paypal-payment-methods img {display:block}


    /*--- link groups ---*/
    .footer-heading {padding:0;text-align:left;font-size:1.4rem;letter-spacing:0;text-shadow:none;margin:0 0 2rem}
        div.footer-list {}
            .footer-list a {display:block;padding:.25em 0;font-size:1.3rem;font-weight:bold}

    /*--- notes ---*/
    .copyright-row {font-size:1.2rem;font-weight:bold}
        .copyright {}
            .copyright a {}








/*--- HOME ROTATOR --------------------------------*/
.main-banner-bg {padding:0;background-color:#000;/*background-image:linear-gradient(45deg, #0076ba, #004b76)*/;box-shadow:inset 0 2px 2px rgba(0,0,0,.2), inset 0 -2px 2px rgba(0,0,0,.2);margin:-2rem calc(clamp(1rem, 2vw, 2rem) * -1) 4rem}
    .main-banner-bg img {display:block;width:2000px;margin:0 auto}
    .carousel-control {background-image:none !important}

    @media (min-width:1600px) {
        .main-banner-bg {margin-left:calc(((-100vw + 1600px)/2) - clamp(1rem, 2vw, 2rem));margin-right: calc(((-100vw + 1600px)/2) - clamp(1rem, 2vw, 2rem))}
    }





/*--- WELCOME --------------------------------*/
.welcome {max-width:100rem;margin:4rem auto 6rem}
    .welcome img {display:block;width:30rem;margin:0 auto 2rem}
    .welcome h1 {text-align:center;margin:0 0 2rem}

    /*@media (min-width:60em) {
        .welcome {display:grid;grid-template-columns:1fr clamp(20rem, 30vw, 40rem);gap:0 4rem}
            .welcome img {grid-column:2;grid-row:1/3;align-self:center}
            .welcome p:not(:first-of-type) {grid-column:1/-1}
    }*/

    @media (min-width:60em) {
            .welcome img {float:right;margin:0 0 2rem 6em}
    }






/*--- SHIPPING CALLOUT --------------------------------*/
.shipping-callout {display:grid;gap:4rem;padding:5rem clamp(1rem, 2vw, 2rem);background-color:#0076ba;background-image:linear-gradient(45deg, #0076ba, #004b76);box-shadow:inset 0 2px 2px rgba(0,0,0,.2), inset 0 -2px 2px rgba(0,0,0,.2);font-size:clamp(2.2rem, 5vw, 4rem);line-height:1;text-transform:uppercase;text-align:center;color:#fff;text-shadow:0 0 .3em rgba(0,0,0,.2);position:relative;margin:0 calc(clamp(1rem, 2vw, 2rem) * -1) 4rem;overflow:hidden;transition:background-image .5s}
    .shipping-callout span {background-color:rgba(255,255,225,.05);border:1px solid rgba(255,255,225,.3) !important;text-transform:none;margin:0 auto;transition:scale .2s}
    .shipping-callout img {display:block;position:absolute;top:50%;left:0;transform:translate(-40%, -50%);opacity:.05}
    .shipping-callout:hover, .shipping-callout:focus {color:#fff}
    .shipping-callout:hover span, .shipping-callout:focus span {scale:1.1}

    @media (min-width:1600px) {
        .shipping-callout {padding-left:calc(((100vw - 1600px)/2) - 0em);padding-right: calc(((100vw - 1600px)/2) - 0em);margin-left:calc(((-100vw + 1600px)/2) - clamp(1rem, 2vw, 2rem));margin-right: calc(((-100vw + 1600px)/2) - clamp(1rem, 2vw, 2rem))}
    }





/*--- SALE CALLOUT - GRID ------------------------------*/
.sale-callout-grid {list-style:none;display:grid;justify-items:center;/*grid-template-columns:repeat(auto-fill, minmax(max(20em, min(100%/3)), 1fr))*/;grid-template-columns:repeat(auto-fill, minmax(max(min(32rem, 100%), min(100%/3)), 1fr));padding:0;margin:0 0 4rem}
    .sale-callout-grid li {}
        .sale-callout-grid a {display:block}









/*--- SALE CALLOUT - BANNER --------------------------------*/
.sale-callout-banner {list-style:none;display:grid;justify-content:center;gap:1rem;padding:0;margin:0 0 4rem}
    .sale-callout-banner li {}
        .sale-callout-banner a {display:block}








/*--- CATEGORY LISTING --------------------------------*/
.category-listing {list-style:none;display:grid;grid-template-columns:repeat(auto-fill, minmax(min(100%/3, max(20rem)), 1fr));gap:clamp(1rem, 2vw, 2rem);padding:0;margin:0 0 4rem}
    .category-listing > li, .category-listing > div {}
        .category-listing a {display:block;min-height:100%;padding:.5rem;border:1px solid #ccc}
            .category-listing a:not(:hover):not(:focus) {color:#000}
        .category-listing img {display:block;margin:0 auto 1rem}
        .category-listing h2, .category-listing h3 {font-size:1.4rem;margin:0}








/*--- PRODUCT LISTING --------------------------------*/
.product-listing {list-style:none;display:grid;grid-template-columns:repeat(auto-fill, minmax(min(100%/3, max(19rem)), 1fr));gap:2rem clamp(1rem, 2vw, 4rem);padding:0;margin:0 0 4rem}
    .product-listing > li, .product-listing > div {}
        .product-listing a {display:block;text-align:center}
            .product-listing a:not(:hover):not(:focus) {color:#000}
        .product-listing img {display:block;margin:0 auto 1rem}
        .product-listing h2, .product-listing h3 {font-size:1.6rem;text-transform:none;font-weight:normal;margin:0 0 2rem}

        /*--- price ---*/
        .product-listing .featuredPriceWrap {font-size:1.4rem;color:#000;font-weight:normal !important}
            .product-listing .regular-price {font-size:1.4rem;font-weight:bold;text-decoration:line-through;color:#757575;margin:0}
                .product-listing .price-wrap {}
                .product-listing .price-wrap span {display:none}






    /*--- SLICK CAROUSEL VERSIONS -----------*/
    .category-listing.slick-slider, .product-listing.slick-slider {display:block}
        .category-listing .slick-slide, .product-listing .slick-slide {padding:0 .5rem}

        /*--- nav ---*/
         .category-listing.slick-slider .slick-prev, .category-listing.slick-slider .slick-next, .product-listing.slick-slider .slick-prev, .product-listing.slick-slider .slick-next {width:3rem;height:8rem;color:#000;z-index:1;outline:revert}
            .category-listing.slick-slider .slick-prev, .product-listing.slick-slider .slick-prev {left:clamp(-2rem, -2vw, -1rem)}
            .category-listing.slick-slider .slick-next, .product-listing.slick-slider .slick-next {right:clamp(-2rem, -2vw, -1rem)}
            .category-listing .slick-prev::before, .category-listing .slick-next::before, .product-listing .slick-prev::before, .product-listing .slick-next::before {display:block;width:1em;height:1em;border:.5em solid #0076ba;border-width:0 0 .2em .2em;font-size:1.5rem;color:#000;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;rotate:45deg;opacity:1;content:""}
                .category-listing .slick-next::before, .product-listing .slick-next::before {rotate:225deg}
            .category-listing.slick-slider .slick-prev:hover::before, .category-listing.slick-slider .slick-next:hover::before, .category-listing.slick-slider .slick-prev:focus::before, .category-listing.slick-slider .slick-next:focus::before, .product-listing.slick-slider .slick-prev:hover::before, .product-listing.slick-slider .slick-next:hover::before, .product-listing.slick-slider .slick-prev:focus::before, .product-listing.slick-slider .slick-next:focus::before {border-color:#0468a2}









/*--- ISEARCH ------------------------------------------------------------*/
#ISearch3FilterForm {columns:4 18rem;padding:0 !important;background-color:transparent !important}

    /*--- filter groups -----------------*/
    .filtercontainer {break-inside:avoid-column;background-color:transparent !important;margin-bottom:2rem !important}

        /*--- group title ---*/
        .filtertitlecontainer {}
            .filtercontainer .filtertitle {font-size:1.4rem !important;font-weight:bold !important}

        /*--- items ---*/
        .filtercontainer .filterlist {white-space:normal !important}
            .filtercontainer .singlefilter {font-weight:bold;color:#000 !important}
            .filtercontainer .entitychecklink:not(:hover):not(:focus) {color:#000}



    /*--- sorting ---*/
    div#pagecontrols {display:flex;flex-wrap:wrap;align-items:center;background-color:transparent !important;margin:0 0 4rem !important}
        div#pagecontrols > div {display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}
        .pagebrake {border:none}








/*--- PRODUCT PAGE ------------------------------------------------------------*/
.product-page-top {background-color:transparent}

.email-a-friend-wrap {width:auto}








/*--- CHECKOUT ------------------------------------------------------------*/
.order-details, .shipping-estimator {background-color:#fafafa}

.checkout-block {margin-bottom:4rem}
    .checkout-header, .order-header {text-align:left;margin:2rem 0 1rem}












