﻿:root {
    --color-1: #d1d1d1; /* Header */
    --color-2: #8c8c8c; /* Text 1 */
    --color-3: #333333; /* Text 2 */
    --color-4: #e8e8e8; /* Accent/misc. */
    --color-5: #cccccc; /* Footer */
    --error-color: #ff0000;
}
h1, h2, h3, h4, h5, strong {
    color: var(--color-2);
}
p, li, span
{
    color: var(--color-3);
}

img
{
    display: block;
    max-width: 100%;
}
.status, .error
{
    color: var(--error-color);
    font-size:13px;
    font-weight:bold;
    display: block;
}
.foot-bottom ul li:nth-child(n+2):before
{
    content: "|";
    position: relative;
    left: -10px;
    color: var(--color-1);
}
.header-right div.cart
{
    position: relative;
}
.header .budget
{
    display: none;
}
.cart-count
{
    position: absolute;
    display: none;
    top: -5px;
    left: 23px;
    background-color: #000000;
    color: #ffffff;
    height: 20px;
    width: 20px;
    border-radius: 10px;
    text-align: center;
    line-height: 20px;
    right: -6px;
    font-size: 12px;
}
.mainmenu {
    background-color: var(--color-4);
    clear: both;
    padding-bottom: 2px;
    padding-top: 2px;
    text-align: center;
}
.mainmenu ul.navigation
{
    list-style: none;
    margin: 0px;
    padding: 0px;
    display: grid;
    height: 30px;
    grid-auto-columns: 1fr;
    grid-auto-flow: column;
}
ul.navigation > li
{
    height: 30px;
}
.mainmenu li {
    display: inline-block;
    position: relative;
}
.mainmenu li a
{
    display: block;
    line-height: 30px;
}
.mainmenu li ul.subnav
{
    display: none;
    position: absolute;
    width: 100%;
    background-color: var(--color-5);
    border: 2px solid var(--color-4);
    border-top: 0px;
    z-index: 500;
    top: calc(100%);
}
.mainmenu li:hover ul.subnav
{
    display: block;
}
.mainmenu ul.subnav li 
{
    display: block;
}
.mainmenu ul.subnav li a{
    display: block;
    padding-top: 5px;
    padding-bottom: 5px;
    text-decoration: none;
}
.leftnav
{padding-top: 25px;}
.leftnav  > ul
{margin-left: 35px;}
.leftnav a
{text-decoration: none;}
.leftnav li
{margin-bottom: 20px;}
.leftnav .has-subs > a
{font-weight: bold; margin-bottom: 20px; display:inline-block;}

div.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    display: none;
    background-color: var(--color-4);
    opacity: 0.6;
}
div.overlay.show {
    display: block;
}
div.overlay.show {
    display: block;
}
.content-page
{
    padding-top: 20px;
    padding-bottom: 20px;
}
div.cartoverlay {
    left: 50%;
    position: fixed;
    top: 50%;
    background-color: #ffffff;
    border: 3px solid var(--color-1);
    z-index: 1200;
    text-align: center;
    padding-bottom: 20px;
    padding-top: 40px;
    max-width: 100%;
    max-height: 100%;
    overflow: auto;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    display: none;
}
div.cartoverlay img
{
    margin-left: auto;
    margin-right: auto;
}
.cartoverlay-content{
    padding-left: 15px;
    padding-right: 10px;
}
div.cartoverlay .image {
    text-align: left;
    padding-top: 0px;
}
div.cartoverlay .copy {
    text-align: left;
    padding-top: 40px;
}
div.cartoverlay p{
    font-size: 17px;
    line-height: 22px;
    margin-bottom: 20px;
    margin-right: 25px;
}
div.cartoverlay a.close.top {
    font-size: 30px;
    text-decoration: none;
    margin-bottom: 25px;
    cursor: pointer;
    position: absolute;
    top: 20px;
    right: 15px;
    color: var(--color-2);
}
div.cartoverlay a.button
{
    max-width: 225px;
    display: block;
}

/* Login Page */
table.login
{
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    margin-bottom: 35px;
}
.login-header
{
    font-size: 30px;
    margin-right: 25px;
    margin-left: 25px;
    margin-bottom: 20px;
}
table.login .bottom a
{
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 15px;
}

/* Category Page */
.catheader
{
    padding-top: 20px;
}
.catheader.on-image
{
    padding-top: 0px;
    position: relative;
}
.catheader.on-image .container
{
    position: absolute;
    margin-left: auto;
    margin-right: auto;
    transform: translate(-50%,-50%);
    top: 50%;
    left: 50%;
    text-align: left;
    z-index: 250;
}
.catheader h1
{
    font-size: 38px;
    line-height: 44px;
    margin-bottom: 20px;
}
.sortby
{
    float: right;
}
.sortby label
{
    display: inline-block;
    margin-right: 5px;
}
div.category.catpage
{
    padding-top: 15px;
    clear: both;
}
div.category div.product
{
    margin-bottom: 15px;
}
.category .product div.image img.image
{
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
div.category .product .details
{
    text-align: center;
}
div.category .product .details a
{
    text-decoration: none;
}
div.category .product .details a:hover
{
    text-decoration: underline;
}
div.category .product .price
{
    font-weight: bold;
}
div.category .product .price.original
{
    text-decoration: line-through;
}
div.category .subcategory
{
    clear: left;
    margin-bottom: 25px;
}
div.category:after { content: ""; clear: both; display: block; }


div.featured-grid div.product:first-child,
div.featured-grid div.catimage:first-child
{
    margin-left: 0;
    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    transition: all .5s;
}
div.featured-grid div.product:last-child,
div.featured-grid div.catimage:last-child
{
    margin-right: 0px;
}
div.featured-grid div.product,
div.featured-grid div.catimage
{
    display: inline-block;
    float: none;
    margin-left: 0px;
    margin-right: 0px;
}
div.featured-grid p.name {
    white-space: initial;
}
div.featured-grid a.arrow
{
    font-size: 40px;
    position: relative;
    z-index: 100;
    top: 50%;
    transform: translate(0,-50%);
    cursor: pointer;
}
#clock
{
    display: none;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 50%;
    z-index: 500;
    right: 10%;
    transform: translate(0,-50%);
    padding: 20px;
    background-color: rgba(0,0,0, 0.45);
}
.days-div,
.hours-div,
.mins-div {
    text-align: center;
    width: 80px;
}
.counter-days,
.counter-hours,
.counter-mins {
    background: white;
    color: #071d49;
    padding: 8px;
    font-size: 30px;
    display: inline-block;
}
.days-text,
.hours-text,
.mins-text {
    color: white;
    font-size: 20px;
    margin-top: 10px;
    display: block;
}

.content-page
{
    padding-top: 15px;
    padding-bottom: 15px;
}
.content-page ul
{
    list-style: disc;
    padding-left: 15px;
}
.homecustom
{
    display: none;
}



div.rotator .home-banner.visible {
    display: block;
}


div.rotator div.dots {
    display: none;
}
a.dot-click {
    display: block;
}

/*Hide by default*/
.range-wrapper {
    display: none;
    margin-bottom: 15px;
}

.range-wrapper .ui-slider .ui-slider-handle {
    cursor: pointer;
}


/* Cart Page */
.carttable .item input[type="text"]
{
    width: 50px;
    text-align: center;
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
    max-width: 100% !important;
}
.cartbuttons a
{
    float: right;
    clear: right;
    min-width: 125px;
}
.cartcenters {
    display: flex;
    justify-content: center;
}

.carthead
{
    text-align: center;
}
div.cartfooter.row
{
    margin-bottom: 20px;
}
div.carttable .row div:last-child
{
    text-align: left;
}
div.carttable div.carthead
{
    text-align: left;
}
div.carttable .remove
{
    float: right;
}
div.carttable .carthead,
div.carttable .item.row
{
    border-bottom: 2px solid var(--color-4);
    margin-bottom: 8px;
    padding-bottom: 8px;
}
div.carttable .item.row a
{
    text-decoration: none;
}
div.carttable .item.row a:hover
{
    text-decoration: underline;
}
div.cartfooter .labels
{
    text-align: right;
}
div.empty p
{
    text-align: center;
    margin-bottom: 25px;
}
div.carttable .cartbuttons
{
    clear: both;
}
.carttable .gifts
{
    float: left;
    width: 50%;
}

/* Product Page */
.prod-page
{
    padding-top: 15px;
}
.prod-page .breadcrumb
{
    text-align: left;
}
.prod-page .breadcrumb a
{
    text-decoration: none;
}
.prod-page .breadcrumb a:hover
{
    text-decoration: underline;
}
.prod-page .product
{
    padding-top: 25px;
}
.imagewrapper
{
    text-align: center;
}
.imagewrapper p
{
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 13px;
}
.gallery > div
{
    float: left;
    margin-right: 5px;
}
.gallery img
{
    cursor: pointer;
}
.productcontent h1
{
    font-size: 34px;
    line-height: 40px;
    margin-bottom: 20px;
}
.productcontent .sku
{
    font-size: 24px;
    line-height: 28px;
    margin-bottom: 15px;
    color: var(--color-2);
}
.productcontent .price
{
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 15px;
}
div.product div.description {
    line-height: 16px;
}
div.product div.description ul {
    list-style: disc;
    padding-left: 15px;
}
.details
{
    padding-bottom: 20px;
}
.prodopt
{
    margin-bottom: 15px;
}
.prodopt span
{
    margin-right: 10px;
    display: inline-block;
}
.quantities
{
    display: table;
    border-spacing: 0px 10px;
    max-width: 55rem;
    row-gap: 1em;
}
.quantities .qtyopt
{
    display: table-row;
}

.quantities span.option
{
    display: table-cell;
    padding-right: 10px;
}
.quantities input {
    width: fit-content;
    max-width: 7.5em;
    display: table-cell;
    border-radius: 0.35em;
}
.productorder
{
    margin-top: 25px;
}
.related h3
{
    font-size: 26px;
    line-height: 30px;
}
.product .gift .heading
{
    display: grid;
    grid-auto-flow: column;
    margin-bottom: 20px;
    grid-gap: 15px;
}
.product .gift .heading a
{
    text-decoration: none;
    padding-bottom: 6px;
    color: var(--color-2);
    border-bottom: 2px solid var(--color-2);
}
.product .gift .heading a.active
{
    font-weight: bold;
    color: var(--color-1);
    border-bottom: 2px solid var(--color-1);
}


/* Checkout */
div.continue
{
    padding-top: 20px;
}
div.address.ReadOnly label
{
    margin-left: 0px;
    margin-bottom: 0px;
}
div.address.ReadOnly span
{
    display: block;
}
div.address.ReadOnly .row
{
    padding-bottom: 15px;
}
.checkout h2
{
    text-align: center;
    font-size: 2.5rem;
}
.checkout div.addr,
.checkout div.date
{
    text-align: center;
    padding-bottom: 15px;
}
div.checkout table.shopts
{
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 25px;
}
div.checkout input[type="checkbox"],
div.checkout input[type="radio"],
div.checkout label
{
    display: inline-block;
}
.checkout .paymentbox
{
    text-align: center;
}
.checkout .paymentbox.certs
{
    margin-bottom: 15px;
}
.checkout .paymentbox.certs p
{
    display: block;
    clear: both;
}
.checkout .payment.row
{
    margin-bottom: 25px;
    clear: both;
    text-align: center;
}
.checkout table.cartTable
{
    width: 100%;
    margin-bottom: 25px;
}
.checkout table.cartTable .cartItem td,
.checkout table.cartTable .cartHeader th
{
    border-bottom: 2px solid var(--color-4);
    padding-top: 8px;
    padding-bottom: 8px;
}
.express-addr 
{
    padding-top: 20px;
}
.express-addr h5
{
    font-weight: bold;
}
.checkout table.cartTable .cartItem td:nth-child(n+2)
{
    text-align: center;
}
.confirm
{
    text-align: center;
    padding-bottom: 30px;
}
.confirm table
{
    margin-left: auto;
    margin-right: auto;
}
.info-splitter {
    background-color: black !important;
    /*height: 10px !important;
    color: black !important;
    border: 10px !important;
    border-color: black !important;
    border-top-color: rgb(34,34,34) !important;
    border-top-style: solid !important;
    border-top-width: 1px !important;
    display: block;
    font-weight: bold;*/
}
/* Contact/Custom forms */
.modal-window .contact-form,
.modal-window .custom-form
{
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 1100;
    width: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--color-4);
}
.modal-window .padder
{
    padding: 10px;
}
.modal-window a.close
{
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    font-size: 24px;
}
div.modal-form
{
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: 50% 50%;
    grid-gap: 10px;
    margin-bottom: 10px;
}
div.modal-form input
{
    display: block;
    margin-bottom: 10px;
}
div.modal-form textarea
{
    max-width: 100%;
    height: 100%;
    width: calc(100% - 20px);
}
div.modal-submit
{
    text-align: center;
    margin-bottom: 15px;
}
/* Order Approval */
a.more:hover {
    cursor: pointer;
}
div.lightbox {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #ffffff;
    z-index: 3000;
    padding: 30px;
}
div.lightbox.show {
    display: block;
}
div.lightbox a.close {
    position: absolute;
    right: 10px;
    top: 10px;
    color: #d7d7d7;
    margin-left: 5px;
    margin-top: 0px;
    line-height: 24px;
    font-size: 24px;
    cursor: pointer;
    text-decoration: none;
}
.lightbox.approval {
    padding-top: 40px;
}
.lightbox.approval textarea {
    width: 100%;
    margin-top: 15px;
}
.lightbox.approval .bool {
    display: none;
}
.lightbox.container h4 {
    font-size: 24px;
    line-height: 30px;
    margin-bottom: 0px;
    font-weight: bold;
}
div.form div.selection 
{
    padding: 10px 0px;
}
div.form div.selection div.radio 
{
    display: flex;
}
div.history 
{
    margin-top: 50px;
}
table.overview div.group {
    margin-top: 20px;
}
div.orderview {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #ffffff;
    z-index: 3000;
    padding: 30px;
}
div.orderview1 {
    margin-top: 10px;
}
a.showhide:hover,
a.close:hover {
    cursor: pointer;
}
div.overview p {
    margin-bottom: 5px;
}
div.overview a {
    cursor: pointer;
}
.lightbox table.overview {
    width: 100%;
}
.lightbox table.overview div.info {
    float: left;
    width: 30%;
    margin-right: 5%;
    margin-top: 10px;
}
.lightbox table.overview div.info:last-child {
    margin-right: 0px;
}
.radio label
{
    margin: 0px;
}
/*Cart Count*/
.lblCartWrap {
    display: none;
}

@media only screen and (max-width: 550px) {
    .header.wrapper.add-nav
    {
        position: relative;
        padding-left: 60px;
    }
    .header-right ul:before
    {
        content: '\f0c9';
        font-family: "Font Awesome 5 Pro";
        text-align: center;
        line-height: 40px;
        height: 40px;
        width: 40px;
        font-size: 28px;
        cursor: pointer;
        position: absolute;
        top: -50px;
        left: 10px;
        display: block;
    }
    .header-right ul.open:before
    {
        content: '\f00d';
    }
    div.header-right ul.navigation
    {
        position: absolute;
        width: 100%;
        top: 70px;
        left: 0px;
        margin: 0px;
        padding: 0px;
        height: 0px;
        display: block;
    }
    .header-right ul li
    {
        display: none;
    }
    .header-right ul.open li
    {
        display: block;
    }
    .header-right ul.navigation li
    {
        background-color: var(--color-5);
        width: 100%;
    }
    .header-right ul.navigation > li
    {
        height: 50px;
        line-height: 50px;
    }
}