﻿body, form, img, ul, table {
    padding: 0;
    margin: 0;
    font-family: 'Roboto', sans-serif;
    /*       
font-family: 'Roboto Slab', serif;
font-family: 'Roboto Condensed', sans-serif;
   */
}

.radio-cols {
    width: 100%;
}

table {
    border-collapse: collapse;
}

    .table td, table th {
        padding: 4px;
    }

.table.wide {
    width: 100%;
}

.table.returns td {
    font-size: 12px;
}

.table.vm td {
    vertical-align: inherit;
}

.table.no-break td {
    white-space: nowrap;
}

.delivery-address {
    padding-top: 30px;
}

    .delivery-address .table {
        margin-right: 30px;
    }

a, .ui-widget-content a {
    text-decoration: none;
    color: #ea2429;
}

    .ui-widget-content a:hover, .table a:hover {
        text-decoration: underline;
    }

.table a {
    font-weight: bold;
}

.ui-front {
    z-index: 200;
}

.ui-autocomplete {
    overflow-y: auto;
    max-height: 300px;
    padding-bottom: 10px;
    width: 362px !important;
}

    .ui-autocomplete li {
        white-space: nowrap;
        z-index: 10;
    }

.red {
    color: #ea2429 !important;
}

.white {
    background-color: #fff;
    font-weight: bold;
}

.whitetext {
    color: #fff;
}

.centerbold {
    text-align: center;
    font-weight: bold;
}

.rednormal {
    font-weight: 300 !important;
    color: #ea2429;
}

.small {
    font-size: 14px;
}

.smallbold {
    font-size: 14px;
    font-weight: bold;
}

.bordered {
    background-color: #fff;
    margin-bottom: 10px;
}

    .bordered .heading {
        background-color: #F7FF99;
        font-weight: bold;
        border-right: 1px solid;
        border-bottom: 1px solid;
        padding: 4px;
    }

.noborder, .noborder td {
    border: none !important;
}

.clear {
    clear: both;
}

.darkred {
    color: #ea2429;
    font-weight: 700;
}

.ca {
    width: 100%;
    text-align: center;
    font-weight: bold;
    padding-bottom: 20px;
    color: #ea2429;
    cursor: pointer;
}

h1 {
    font: 700 27px 'Roboto', sans-serif;
    padding: 0;
    max-width: 100%;
    margin: 0 calc(-26vw + 1%);
    text-transform: uppercase;
    border-left: 4px solid #ea2429;
    border-left-width: 24.5vw;
    padding-left: 23px;
    line-height: 27px;
}

    h1.about {
        color: #fff;
        border: none;
        padding: 0;
        font-size: 4em;
        line-height: 1em;
        float: none;
        margin: 0;
    }

h2.about {
    color: #fff;
    padding: 0;
    font-size: 2em;
}

div.about {
    background-color: #f0f0f0;
}

h3 {
    font: 700 13px 'Roboto', sans-serif;
    color: #fff;
    padding: 0;
    margin: 0;
    padding-bottom: 17px;
}

header {
    width: 100%;
    clear: both;
    background-color: #000;
}

.container {
    margin: 0 auto;
}

.wrapper {
    max-width: 1170px;
    margin: 0 auto;
    clear: both;
}

.alert {
    font-weight: bold;
    color: #ea2429;
    padding: 5px 50px 5px 5px;
    border: 1px solid #000;
    margin-bottom: 10px;
    width: calc(100% - 57px);
    clear: both;
    max-width: inherit;
    cursor: pointer;
    background: url(../img/close.png) no-repeat right 10px center;
    background-color: #fff;
}

div.about .full:first-of-type {
    padding: 150px 0 200px;
}

.full.subheader {
    background-color: #343640;
    text-align: center;
    padding: 60px 0;
}

    .full.subheader .title {
        font-size: 3em;
        color: #fff;
        font-weight: bold;
        display: inline-block;
        padding-bottom: 5px;
        position: relative;
    }

        .full.subheader .title:before {
            content: "";
            position: absolute;
            width: 50%;
            height: 3px;
            bottom: 0;
            left: 25%;
            border-bottom: 3px solid red;
        }

.content {
    padding: 50px 0 10px;
    width: 100%;
    clear: both;
    float: left;
    background-color: #fff;
}

.content {
    background-image: url('../img/bricks.png');
}

    .content .col {
        width: 300px;
        float: left;
        padding-right: 20px;
    }

#rightcol {
    float: left;
}

.content .col:last-of-type {
    padding-right: 0px;
}

.about-content {
    font-size: 1em;
    max-width: 900px;
    margin: 0 auto;
}

    .about-content h4 {
        text-transform: uppercase;
        color: red;
        font-size: 1.5em;
        padding-bottom: 10px;
        margin: 0;
    }

    .about-content img {
        width: 150px;
    }

    .about-content tr {
        padding-bottom: 40px;
    }

    .about-content td:first-of-type {
        text-align: right;
    }

    .about-content td:last-of-type {
        text-align: left;
        font-size: 18px;
        line-height: 30px;
        padding: 0 0 100px 60px;
    }

.about .col {
    float: left;
    width: 46%;
    padding-right: 4%;
}

    .about .col:last-of-type {
        padding-right: 0;
    }

.about .headline {
    margin: 40px auto;
    max-width: 1024px;
    width: 100%;
}


#bm {
    display: none;
}

#logo {
    position: absolute;
    top: 0;
    left: -120px;
    z-index: 50;
}

#banner {
    width: 100%; /* Changed from 100% to 75% */
    /* background-color: #ea2429; */
    background-image: linear-gradient(to right, white, #ea2429 30%, #ea2429);
    height: Auto;
    min-height: fit-content;
    padding: 2px 0;
    position: relative; /* Add position relative */
    float: right; /* Align to right side */
    display: flow-root;
    z-index: 100;
}

#banner ul, #nav ul {
    list-style-image: none;
    float: right;
}

#banner ul li, #nav ul {
    display: inline-block;
    padding: 0 10px;
}

#banner ul li:nth-of-type(2), #banner ul li:nth-of-type(3) {
    border-left: 2px solid #000;
}

#banner ul li a {
    color: #000;
    font-weight: bold;
}

.cart-sm {
    position: absolute;
    color: #fff;
    border: 1px solid #666;
    right: 10px;
    top: 30px;
    width: 200px;
    font-size: 12px;
    padding: 5px;
    text-align: center;
}

    .cart-sm span {
        margin-left: 10px;
    }

#nav {
    height: auto;
    min-height: 95px;
    background-color: #000;
    width: 100%;
    padding-top: 40px;
}

    #nav ul li {
        display: inline-block;
        padding-left: 20px;
    }

.call-us-today {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 700;
    font-size: 25px;
    color: #ea2429;
}

.search-box {
    font-size: 12px;
    padding: 5px !important;
    color: #808080;
    width: 255px;
    float: left;
    margin-right: 5px;
    margin-top: 1px;
}

select.search-box {
    width: 90px;
}

#nav ul.nav {
    padding-top: 20px;
    z-index: 99;
    position: relative;
}

    #nav ul.nav li {
        padding: 0 16px;
        border-right: 2px solid #fff;
    }

        #nav ul.nav li:last-of-type {
            border: none;
        }

        #nav ul.nav li a {
            color: #fff;
            font-family: 'Roboto Slab', serif;
            font-weight: 700;
            font-size: 17px;
        }

            #nav ul.nav li a:hover, #nav ul.nav li a:active {
                color: #ea2429;
            }

#deals {
    display: none;
    width: 100%;
    background-color: #ea2429;
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
    padding: 25px 0;
}

    #deals span {
        display: inline-block;
    }

.customer-td {
    text-decoration: none;
    font-weight: normal;
    font-style: normal;
    font-size: Smaller;
    font-family: Arial;
    border-width: 1px;
    border-style: Solid;
    border-color: Black;
    background-color: #DDDDDD;
    padding: 10px;
}

.specials {
    min-height: 154px;
    background-color: #fff;
    margin-left: 20px;
    padding: 10px 0;
}

    .specials div {
        position: relative;
        float: left;
        width: 295px;
        height: 100%;
        padding: 0 10px;
        border-right: 1px solid #afafaf;
    }

        .specials div:last-of-type {
            border-right: none;
        }

        .specials div span.desc {
            float: left;
            width: 180px;
        }

        .specials div b {
            font-size: 20px;
        }

    .specials i {
        text-transform: capitalize;
    }

    .specials div img {
        float: right;
        max-width: 120px;
        max-height: 115px;
    }

    .specials div .price {
        color: #ea2429;
        font-size: 29px;
        font-weight: bold;
    }

#shop {
    background-image: url('../img/bricks.png');
    padding: 35px 0 25px;
}

.categories {
    width: 100%;
    padding-bottom: 20px;
}

#shop .categories {
    padding-top: 20px;
}

.categories.sub {
    float: right;
    max-width: 930px;
    clear: right;
}

.cat {
    float: left;
    width: 150px;
    background-color: #dde0e2;
    text-align: center;
    position: relative;
    margin-bottom: 20px;
    margin-right: 15px;
}

    .cat .ci {
        height: 150px;
        position: relative;
    }

        .cat .ci .vc {
            margin: 0;
            position: absolute;
            top: 50%;
            left: 50%;
            -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
        }

    .cat span {
        color: #000;
        font-size: 18px;
        font-family: Roboto;
        font-weight: 400;
        height: 60px;
        display: block;
        position: relative;
        bottom: 0;
    }

.home_specials {
    background-color: #343640;
    padding: 40px 0 60px;
    width: 100%;
    clear: both
}

    .home_specials h2 {
        color: #fff;
        font-size: 42px;
        font-weight: bold;
        text-align: center;
        margin-top: 0;
    }

#specials_slider li {
    width: 200px;
    height: 370px;
    position: relative;
    background-color: #fff;
    margin-right: 35px;
    overflow: hidden;
}

    #specials_slider li img {
        max-width: 190px;
        max-height: 170px;
        margin: 0 auto;
    }

img:focus {
    outline: none;
}

#specials_slider .c {
    color: #fff;
    font-size: 14px;
    font-family: "Roboto Condensed", Roboto;
    font-weight: bold;
    background-color: #000;
    padding: 5px 5px 5px 10px;
    width: calc(100% - 10px);
    display: block;
}

#specials_slider .d {
    color: #ea2429;
    font-size: 15px;
    text-transform: uppercase;
    font-family: "Roboto Condensed", Roboto;
    padding: 5px 5px 0 10px;
    padding-bottom: 0px;
    clear: both;
    float: left;
}

#specials_slider .mf {
    color: #000;
    font-family: "Roboto Condensed", Roboto;
    font-style: italic;
    font-weight: bold;
    text-transform: uppercase;
    padding-left: 10px;
    font-size: 11px;
    float: left;
    clear: both;
}

.avail {
    width: calc(100% - 10px);
    background-color: #000;
    color: #fff;
    display: block;
    line-height: 24px;
    position: absolute;
    bottom: 85px;
    padding-left: 10px;
    font-size: 10px;
}

#specials_slider .p {
    background-color: #ea252b;
    height: 80px;
    width: 100%;
    padding-top: 5px;
    bottom: 0;
    position: absolute;
    text-align: center;
}

.lbl.whitetext {
    font-size: 12px;
}

#specials_slider .p .s {
    color: #000;
    font-size: 20px;
    line-height: 22px;
    letter-spacing: 1px;
    font-weight: 700;
    font-family: "Roboto Condensed", Roboto;
}

#specials_slider .p .price {
    color: #fff;
    font-size: 34px;
    font-weight: bold;
    line-height: 32px;
}

.categories.none {
    display: none;
}

.categories ul {
    list-style-type: none;
}

.categories li {
    float: left;
    padding-right: 30px;
    padding-bottom: 20px;
    display: table;
    min-height: 135px;
}

    .categories li img {
        width: 370px;
        height: 135px;
    }

.about-home div {
    display: table-cell;
}

    .about-home div:last-of-type {
        background-color: #fff;
        padding: 20px 30px;
        vertical-align: middle;
    }

    .about-home div span {
        font-size: 48px;
        font-family: Roboto;
        font-weight: 700;
        line-height: 50px;
    }

    .about-home div p {
        line-height: 20px;
        letter-spacing: 1px;
    }

    .about-home div .roundred {
        background-color: #ea252b;
        padding: 5px 25px;
        color: #fff;
        font-weight: bold;
        font-size: 24px;
        margin-top: 10px;
        border-radius: 25px;
    }

.about-bottom {
    margin-top: 30px;
    text-align: center;
    width: 100%;
    float: left;
}

    .about-bottom h2 {
        font-size: 40px;
        line-height: 55px;
        letter-spacing: 1px;
    }

        .about-bottom h2 .red {
            color: #ea252b
        }

.rbl label {
    padding-right: 10px;
}

.rbl input {
    margin-bottom: 5px;
}

.cbl label {
    margin-left: 20px;
    display: block;
    margin-top: -18px;
}

.cbl input {
}

a.go span {
    width: 270px;
    height: 110px;
    padding: 0 10px;
    display: table-cell;
    vertical-align: middle;
    background-color: #bbb;
    font-weight: bold;
    text-align: center;
    color: #fff;
    text-transform: uppercase;
    font-size: 24px;
}

    a.go span:hover {
        color: #eb2328;
    }

.categories li:nth-of-type(3n) {
    padding-right: 0px;
}

.clearfix:after {
    content: " "; /* Older browser do not support empty content */
    visibility: hidden;
    display: block;
    height: 0;
    clear: both;
}

#icon-bar {
    width: 100%;
    background-color: #fff;
    margin: 75px 0;
}

    #icon-bar ul {
        list-style-type: none;
    }

        #icon-bar ul li {
            display: inline-block;
            text-align: center;
            width: 288px;
            height: 290px;
            border-left: 1px solid #000;
        }

            #icon-bar ul li a {
                font: bold 25px 'Roboto', sans-serif;
                color: #000;
                text-decoration: none;
            }

                #icon-bar ul li a:hover {
                    color: #ea2429;
                }

            #icon-bar ul li img {
                padding-top: 40px;
            }

            #icon-bar ul li:last-of-type {
                border-right: 1px solid #000;
            }

#social {
    background-color: #ea2429;
    color: #fff;
}

    #social ul {
        list-style-type: none;
        float: right;
    }

        #social ul li {
            display: inline-block;
        }

    #social span {
        padding-top: 22px;
        float: left;
    }

#footer {
    background-color: #272727;
    width: 100%;
    color: #afafaf;
    padding: 30px 0;
}

    #footer .col {
        float: left;
        width: 270px;
        margin-right: 30px;
    }

        #footer .col:last-of-type {
            margin-right: 0;
        }

    #footer ul {
        list-style-type: none;
    }

        #footer ul li {
            border-bottom: 1px solid #363636;
        }

    #footer a {
        color: #afafaf;
        line-height: 34px;
        font-size: 13px;
    }

    #footer h3 a {
        color: #fff;
        line-height: 15px;
    }

    #footer a:hover {
        color: #ea2429;
    }

#copyright {
    background-color: #1e1e1e;
    width: 100%;
    color: #969696;
    font-size: 11px;
    padding: 18px 0;
}

.spacer {
    width: 270px;
    height: 2px;
    float: left;
    background: url('../img/spacer.png') no-repeat;
    padding-bottom: 30px;
}

#scanner {
    display: none;
    position: absolute;
    top: 100px;
    width: calc(100% - 60px);
    background-color: #fff;
    z-index: 1000;
    padding: 30px;
}

    #scanner .button {
        border: 1px solid #ea2429;
        padding: 2px 5px;
        margin-bottom: 2px;
        float: left;
    }

    #scanner #resetButton {
        float: right;
    }

    #scanner #sourceSelectPanel {
        margin-bottom: 10px;
    }

table td {
    padding: 0;
    vertical-align: top;
}

.table td, .table th {
    padding: 4px;
}

.table.space {
    margin-top: 20px;
}

.table.glc {
    background-color: #fff;
}

.bordered td {
    border-right: 1px solid #333;
    border-bottom: 1px solid #333;
    padding: 4px;
}

table.bordered {
    border-top: 1px solid #333;
    border-left: 1px solid #333;
    border-spacing: 0;
    width: 100%;
}

table.centered td {
    text-align: center;
}

.yellow {
    background-color: #F7FF99;
    vertical-align: middle;
}

.c-errors {
    font-weight: bold;
    width: 98.2%;
    color: #ea2429;
    padding: 10px;
    border: 1px solid #ea2429;
    margin-bottom: 10px;
}

.radio-cols label {
    margin-left: 11%;
}

.radio-cols a {
    text-decoration: underline;
}

.radio-detail {
    display: none;
    width: 300px;
    background-color: #ccc;
    border: 1px solid #000;
    color: #000;
    padding: 10px;
    position: absolute;
}

#allow {
    left: 45%;
}

#cancel {
    left: 65%;
}

.table.totals td {
    text-align: right;
}

.colOne {
    width: 125px;
}

.colTwo {
    width: auto;
}

#tabs {
    min-height: 506px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.item-desc {
    clear: both;
    float: left;
    width: 100%;
    padding-top: 20px;
}

.upload {
    float: left;
    width: 100%;
}

    .upload div {
        margin-bottom: 20px;
        float: left;
        clear: both;
    }

.mailinglist {
    height: 20px;
    padding: 5px;
}

#quickorder {
    background-color: #fff;
    border: 2px solid #ea2429;
    cursor: pointer;
    width: 100%;
    clear: both;
}

.quotetype label {
    padding-right: 10px;
}

#quickorder input {
    border: 1px solid #000;
    padding: 4px;
    margin: 4px;
}

.tri {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 17.5px 18px 17.5px;
    border-color: transparent transparent #ea242a transparent;
    position: absolute;
    top: -18px;
    left: 65px;
}

input[type=text], input[type=password], select, input[type=date] {
    padding: 3px;
    font-family: 'Roboto', sans-serif !important;
}

    input[type=text].small {
        width: 100px;
    }

.btn, .buttons, .redbutton {
    background-color: #ea2429;
    color: #fff !important;
    padding: 5px 15px;
    font-size: 13px !important;
    font-family: 'Roboto', sans-serif !important;
    border: none;
    cursor: pointer;
    font-weight: bold;
    text-transform: uppercase;
}

.redbutton {
    text-transform: none;
}

input[type="file"] {
    padding: 2px;
}

#quickorder th {
    text-align: center;
    text-transform: uppercase;
    font-size: 10px;
    border-bottom: 1px solid #ea2429;
}

#quickorder input[type=text] {
    background-color: #fff;
    font-weight: bold;
}

    #quickorder input[type=text].center {
        text-align: center;
    }

#quickorder .btn {
    font-weight: bold;
    background-color: #ea2429;
    color: #fff;
}

.slider-header {
    background-color: #F7FF99;
    text-align: center;
    border: 1px solid #1c1c1c;
    padding: 5px;
    border-bottom: none;
}

.quickadd {
    background-color: #fff;
    border: 1px solid;
    margin-bottom: 15px;
    padding: 5px;
}

.qqadd {
    max-width: 900px;
    float: right;
}

.quickadd table {
    width: 100%;
}

    .quickadd table td {
        vertical-align: middle;
    }

        .quickadd table td:nth-of-type(3) {
            padding-right: 10px;
        }

        .quickadd table td .quantity {
            width: 30px;
            text-align: center;
            font-size: 12px;
            padding: 1px;
        }

#itemSlider {
    margin-bottom: 30px;
    background-color: #fff;
}

    #itemSlider li {
        font-size: 14px;
        margin-left: 11px !important;
        margin-right: 0 !important;
    }

.cart-icon {
    float: right;
    display: inline-block;
    padding-right: 10px;
    position: relative;
}

.sm-field {
    text-align: center;
    width: 50px;
}

.hide {
    display: none;
}

#banner-menu {
    display: none;
}

.timeline {
    padding-top: 40px;
    float: left;
    margin-top: 35px;
    border-top: 1px solid #000;
}

#join {
    width: 100%;
    clear: both;
    background: url(../img/join-background.jpg) no-repeat;
    min-height: 470px;
    padding: 70px 0;
}

#login {
    float: left;
    padding: 10px;
    background-color: #fff;
}

    #login .row {
        clear: both;
        float: left;
        padding-bottom: 10px;
    }

        #login .row:last-of-type {
            padding-bottom: 0;
        }

        #login .row div {
            float: left;
            padding-right: 10px;
            width: 95%;
        }

#join #login {
    width: 455px;
}

#join .form {
    float: left;
    margin-top: 20px;
    width: 100%;
}

    #join .form .row {
        clear: both;
        margin-bottom: 20px;
        padding: 20px 0;
        width: 100%;
        background-color: #fff;
    }

        #join .form .row .col {
            float: left;
            width: 48%;
            margin-right: 2%;
        }

            #join .form .row .col div {
                margin: 0 20px 20px 10px;
            }

    #join .form input[type=text], #join .form textarea {
        color: #000;
        font-family: 'Roboto', sans-serif;
        width: 100%;
    }

        #join .form input[type=text]::-webkit-input-placeholder, #join .form textarea::-webkit-input-placeholder {
            color: #000;
        }

    #join .form textarea {
        height: 66px;
    }

    #join .form input.half {
        float: left;
        width: 47%;
    }

        #join .form input.half:last-of-type {
            float: right;
        }

.form-row {
    width: 100%;
    clear: both;
    font-size: 14px;
    margin-bottom: 20px;
}

    .form-row .form-col {
        float: left;
        display: inline-block;
        margin-right: 20px;
    }

        .form-row .form-col .form-col-inline {
            display: inline-block;
            clear: both;
            float: left;
            margin-bottom: 5px;
        }

.hugered {
    font-size: 138px;
    line-height: 138px;
    color: #ea2429;
    font-weight: bold;
    font-family: 'Roboto Condensed', sans-serif;
    float: right;
}

.leftcol {
    width: 170px;
    float: left;
    margin: 25px 40px 40px 0;
}

.rightcol {
    float: right;
    max-width: 960px;
    width: 100%;
    margin-top: -30px;
}

.crumbs {
    width: 100%;
    clear: both;
    max-width: 635px; /* leave room for number of results */
    padding-bottom: 35px;
}

    .crumbs a:hover {
        text-decoration: underline;
    }

.itemdetail {
    width: 100%;
    clear: both;
    background-color: #fff;
    margin-bottom: 30px;
}

    .itemdetail table td {
        padding: 5px;
    }

    .itemdetail ul {
        margin-left: 25px;
    }

    .itemdetail .details td {
        padding: 5px;
    }

        .itemdetail .details td .btn {
            width: 100%;
            display: block;
            text-align: center;
        }

        .itemdetail .details td a.btn {
            width: 150px;
            color: #fff;
            padding: 5px 15px;
        }

.searchoptions {
    float: right;
    padding-bottom: 10px;
}

    .searchoptions div {
        padding: 0 5px;
        float: right;
        padding-bottom: 10px;
    }

.results, .pager {
    width: 100%;
    float: left;
    clear: both;
}

    .results .pager {
        padding-left: 30px;
        max-width: 930px;
    }

    .results .group {
        max-width: 960px;
        /*float: right;*/
    }

    .results .item {
        width: 290px;
        height: 480px;
        background-color: #fff;
        margin: 0 0 20px 30px;
        float: left;
    }

        .results .item:nth-of-type(3n) {
            margin-right: 0;
        }

        .results .item .img {
            text-align: center;
            padding: 10px;
            height: 230px;
        }

        .results .item img {
            max-height: 230px;
            max-width: 230px;
        }

        .results .item .desc {
            font-size: 14px;
            border-top: 1px solid #000;
            padding: 10px;
        }

        .results .item table {
            width: 100%;
            height: 480px;
        }

        .results .item .price, .results .item .qty, .results .item .no-price {
            background-color: #ea2429;
            text-align: center;
            padding: 10px;
            color: #fff;
            font-family: 'Roboto Condensed', sans-serif;
            font-size: 20px;
            font-weight: bold;
            width: 50%;
            height: 55px;
        }

        .results .item .no-price {
            width: 100%;
        }

        .results .item .qty input {
            padding: 5px;
            text-align: center;
            font-weight: bold;
        }

        .results .item .qty .add {
            color: #fff;
            font-size: 12px;
        }

        .results .item .price .lbl {
            font-weight: 400;
        }

        .results .item .price .amt {
            font-size: 31px;
        }

.account .btn {
    margin: 5px;
    float: left;
}

.account td {
    padding: 4px;
}

.left {
    float: left;
}

.right {
    float: right;
}

.showall {
    float: right;
    padding-bottom: 10px;
    margin-top: -42px;
}

.black-box {
    background-color: #000;
    padding: 20px;
    float: left;
    width: 210px;
    text-align: center;
    margin-bottom: 20px;
}

    .black-box span {
        color: #ea2429;
        font-size: 22px;
        font-weight: bold;
    }

#trselect2 td {
    text-align: center;
}

    #trselect2 td a {
        font-size: 9px;
        font-weight: bold;
    }

.options {
    width: 100%;
    clear: both;
    height: 100px;
}

    .options * {
        float: right;
    }

.bb {
    background-color: #000;
    text-align: center;
    width: 45%;
    margin-right: 50px;
    float: left;
    font-size: 24px;
    font-weight: bold;
    padding: 15px;
    margin-bottom: 20px;
}

.bbi {
    background-color: #000;
    text-align: center;
    width: 220px;
    float: left;
    font-size: 20px;
    font-weight: bold;
    padding: 15px 0;
    margin-bottom: 20px;
}

.bb.r {
    margin-right: 0px;
    float: right;
}

#cm {
}

    #cm div {
        /*display:inline-block;*/
    }

.filters {
    float: left;
    width: 200px;
}

    .filters span {
        clear: both;
        float: left;
        font-weight: bold;
        padding: 10px;
        width: 190px;
        border-bottom: 1px solid #e6e6e6;
        border-right: 1px solid #e6e6e6;
    }

    .filters #viewswitch {
        background-color: #F5F5F1;
        cursor: pointer;
    }

        .filters #viewswitch .on {
            color: #ea2429;
        }

    .filters .man, .filters .manswitch {
        background-color: #f5f5f9;
    }

    .filters .manswitch {
        color: #e92529;
        border-right: 3px solid #e92529;
        width: 187px;
    }

    .filters .man a, .filters .cats a {
        color: #000;
    }

        .filters .man a:hover, .filters .manswitch:hover, .filters .cats a:hover {
            color: #e92529;
        }

    .filters .catswitch {
        color: #e92529;
        background-color: #fff;
        border-right: 3px solid #e92529;
        width: 187px;
    }

    .filters .cats {
        background-color: #fff;
    }

.searchoptions select {
    -webkit-appearance: button;
    -webkit-border-radius: 2px;
    -webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
    -webkit-padding-end: 20px;
    -webkit-padding-start: 2px;
    -webkit-user-select: none;
    background-image: url(../img/select-arrow.png), -webkit-linear-gradient(#fbfaf8, #fbfaf8 40%, #fbfaf8);
    background-position: right center;
    background-repeat: no-repeat;
    border: 1px solid #AAA;
    color: #555;
    font-size: 12px;
    font-weight: bold;
    overflow: hidden;
    padding: 6px 10px;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 160px;
}

    .searchoptions select option {
        padding: 5px 10px;
    }

.m {
    display: none;
}

.d {
    display: block;
}

.nodes {
    padding-left: 30px;
}

.node {
    width: 200px;
    border: 1px solid #000;
    height: 230px;
    margin: 0 20px 20px 0;
    float: left;
    background-color: #fff;
}

    .node .header {
        background-color: #e92529;
        color: #fff;
        text-transform: uppercase;
        width: 100%;
        height: 30px;
        line-height: 30px;
        clear: both;
        float: left;
        text-align: center;
    }

        .node .header a {
            color: #fff;
        }

    .node .body {
        width: 100%;
        clear: both;
    }

        .node .body img {
            width: 100%;
        }

    .node:nth-child(4n) {
        margin-right: 0;
    }

    .node .header.green {
        background-color: green;
    }

.top_filter {
    width: 100%;
    border: 1px solid #000;
    float: left;
    margin-bottom: 20px;
}

    .top_filter .header {
        background-color: #e92529;
        color: #fff;
        width: 100%;
        height: 30px;
        line-height: 30px;
        clear: both;
        float: left;
        text-align: center;
    }

    .top_filter .body {
        width: 100%;
        clear: both;
        background-color: #fff;
        float: left;
        padding-bottom: 10px;
    }

        .top_filter .body .pad {
            padding: 5px 10px;
            font-size: 14px;
        }

        .top_filter .body span {
            color: #999;
            margin: 5px 0;
            float: left;
            width: 100%;
        }

        .top_filter .body a {
            color: #000;
            clear: both;
            float: left;
            padding: 5px 10px;
        }

    .top_filter.cats a {
        text-transform: capitalize;
    }

        .top_filter.cats a:first-of-type {
            padding-top: 10px;
        }

        .top_filter.cats a:hover {
            color: #e92529;
        }

.inline {
    width: 100%;
}

    .inline td {
        white-space: nowrap;
        width: 100%;
    }

    .inline input, img, select, span {
        display: inline-block;
        vertical-align: middle;
    }

.properties {
    max-height: 200px;
    overflow: auto;
}

.emplogin {
    border: solid 1px black;
    margin-bottom: 10px;
    float: right;
    clear: both;
}

textarea {
    padding: 5px;
    font-size: 12px;
    font-family: Roboto;
}

.reason {
    padding-top: 5px;
    font-size: 12px;
    font-weight: normal;
    float: left;
}

.emp-button {
    border: 1px solid #e92529;
    padding: 15px 10px 15px 60px;
    margin-bottom: 10px;
    width: 337px;
    float: right;
    clear: both;
    color: #000;
}

    .emp-button.outlook {
        background: url(../img/EMAIL_ICON.png) no-repeat left 10px center;
        background-color: #fff;
    }

    .emp-button.truck {
        background: url(../img/icon-truck.png) no-repeat left center;
        background-size: contain;
        background-color: #fff;
    }

    .emp-button.returns {
        background-color: #fff;
        width: 100px;
        padding-left: 15px;
        margin: 5px;
        text-align: center;
    }

    .emp-button:hover {
        text-decoration: underline;
    }
/* tabs */
.ui-widget-content, .ui-widget.ui-widget-content {
    border: 1px solid #666;
}

    .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover {
        border: 1px solid #808080;
        background: #cc0000;
        font-weight: normal;
        text-transform: uppercase;
        color: #ffffff;
    }

.ui-menu-item-wrapper {
    text-transform: none !important;
}

.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
    text-transform: uppercase;
}

.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr {
    border-top-right-radius: 0;
}

.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl {
    border-top-left-radius: 0;
}

.ui-tabs .ui-tabs-panel {
    min-height: 400px;
}

#item {
    max-width: 600px;
    float: left;
}

.itemadd {
    clear: both;
    float: right;
    width: 607px;
}

.item-icons {
}

    .item-icons a {
        float: left;
        margin: 40px 0 40px 40px;
    }

.itemright {
    padding: 40px 0 0 50px;
    float: left;
}

    .itemright .newquote {
        border: 1px solid #999;
        padding: 5px;
    }

.loader {
    position: fixed;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    z-index: 9999;
    background: url('../img/loader.gif') 50% 50% no-repeat rgb(249,249,249);
    opacity: .8;
}

.edit-gl {
    cursor: pointer;
}

.modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
}

.modal-content {
    background-color: #fff;
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #000;
    width: 30%;
}

.close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

    .close:hover,
    .close:focus {
        color: black;
        text-decoration: none;
        cursor: pointer;
    }

#scanner .close {
    margin-top: -25px;
    margin-right: -25px;
}

#scanner .caption {
    position: absolute;
    left: 43%;
}

@media (max-width:1250px) {
    .categories ul {
        padding-left: 20px;
    }

    .categories li:nth-of-type(3n) {
        padding-right: 30px;
    }

    #footer .col {
        margin: 0 0 30px 30px;
    }

    #icon-bar ul li {
        border: none !important;
    }

    .about .col {
        padding-left: 4%;
        padding-right: 0;
    }

    .about img {
        width: 100px;
    }

    .about-content {
        padding: 0 10px;
    }

    #social {
        width: 98%;
        padding-left: 2%;
    }

    .wrapper {
        position: relative;
        padding: 0 10px;
    }

        .wrapper:after {
            content: " ";
            display: table;
            clear: both;
        }

    .leftcol {
        margin-left: 10px;
        margin-right: 10px;
        box-sizing: border-box;
    }

    .rightcol {
        width: 75%;
        box-sizing: border-box;
    }

    .node:nth-child(4n) {
        margin-right: 20px;
    }

    .call-us-today {
        margin-left: 205px;
    }
}

@media (max-width:1170px) {
    .call-us-today:first-of-type {
        display: none !important;
    }

    .about-home div {
        display: block;
        clear: both;
    }
}

@media (max-width:1000px) {
    /* this is where the nav breaks */
    #nav ul, #nm {
        z-index: 106;
        position: relative;
    }

    .rightcol {
        width: 57%;
        box-sizing: border-box;
    }

    .crumbs {
        font-size: 12px;
    }

    #bm, #nm {
        display: block;
        float: right;
        padding-right: 10px;
        cursor: pointer;
    }

    #nm {
        margin-top: 30px;
    }

    #banner ul {
        display: none;
        background-color: #fff;
        position: absolute;
        top: 26px;
        right: 2px;
        border: 2px solid #ea2429;
        z-index: 110;
    }

        #banner ul li {
            display: block;
            border-bottom: 2px solid #ea2429;
            padding: 10px;
            border-left: none !important;
        }

    #nm {
    }

    #nav ul li {
        display: block;
    }

    #nav ul.nav {
        display: none;
        position: absolute;
        z-index: 110;
        top: 90px;
        right: 2px;
        background: #000;
        padding: 0;
        border: 2px solid #fff;
    }

        #nav ul.nav li {
            display: block;
            padding: 10px;
            border-bottom: 2px solid #fff;
            border-right: none !important;
        }

    #slider img {
        width: 100%;
    }

    .about .col {
        clear: both;
        width: 90%;
    }

    #join .form .row .col {
        clear: both;
        width: 98%;
        margin-top: 20px;
    }

    .results .item {
        margin: 0 0 20px 20px;
    }

    .filters {
        padding: 0 20px;
    }

    .bb {
        width: 100%;
        margin-right: 0;
        text-align: center;
        padding: 15px 0;
    }

        .bb.r {
            float: left;
        }
}

@media (max-width:720px) {
    .call-us-today {
        -webkit-text-stroke-width: 1px;
        -webkit-text-stroke-color: black;
    }
}

@media (max-width:600px) {
    .m, .mb {
        display: block;
    }

    .d, .dt {
        display: none;
    }

    #banner {
        width: 100%; /* Full width on mobile for better usability */
        background-color: #fff;
    }

    .about-home img {
        width: 100%;
    }

    .cart-sm {
        display: none;
    }

    #nav {
        background-color: #fff;
        height: 37px;
        border-bottom: 30px solid #ea2429;
    }

        #nav ul {
            /*display: none;*/
        }

            #nav ul li.call-us-today {
                display: none;
            }

            #nav ul li .search-box {
                width: 150px;
            }

            #nav ul li select.search-box {
                width: 75px;
            }

    #nm {
        top: 60px;
    }

    #nav ul.nav {
        top: 150px;
    }

    #bm {
        position: absolute;
        right: 0px;
        top: 10px;
        z-index: 111;
    }

    #banner ul {
        top: 30px;
    }

    .cart-icon {
        position: absolute;
        right: 30px;
        top: 10px;
        z-index: 111;
    }
}
/* Quick Links - Clean Implementation */
.quick-links-wrapper {
    position: relative;
    display: inline-block;
}

.quick-links-trigger {
    color: #2f2f2f;
    font-size: 13px;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;
    transition: color 0.3s ease;
    cursor: pointer;
    white-space: nowrap;
}

.quick-links-trigger:hover {
    color: #eb2429;
}

.quick-links-trigger i {
    margin-left: 5px;
    font-size: 11px;
}

.quick-links-panel {
    position: absolute;
    top: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    background: white;
    border: 1px solid #ddd;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 9999;
    min-width: 320px;
    display: flex;
    gap: 20px;
    padding: 20px;
}

.quick-links-wrapper:hover .quick-links-panel {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

.quick-links-column {
    flex: 1;
}

.quick-links-column h5 {
    color: #2f2f2f;
    font-size: 12px;
    font-weight: 600;
    margin: 0 0 12px 0;
    padding-bottom: 8px;
    border-bottom: 1px solid #eee;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.quick-links-column a {
    display: block;
    color: #666;
    font-size: 13px;
    text-decoration: none;
    padding: 6px 0;
    transition: color 0.2s ease;
    text-transform: none;
}

.quick-links-column a:hover {
    color: #eb2429;
}

/* Add arrow pointer */
.quick-links-panel::before {
    content: '';
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid white;
}

.quick-links-panel::after {
    content: '';
    position: absolute;
    top: -9px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
    border-bottom: 9px solid #ddd;
}
.quick-links-panel.show {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateX(-50%) translateY(0) !important;
}

/* Top Header Mega Menu - Enhanced for Mouse Path */
.top-header-megamenu-item {
    position: relative;
    color: #2f2f2f;
    font-size: 13px;
    font-style: normal;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    overflow: visible; /* Changed from hidden to visible */
    transition: all 0.3s ease;
}

    .top-header-megamenu-item:hover {
        color: #eb2429;
    }

    .top-header-megamenu-item span {
        font-size: 11px;
        transition: transform 0.3s ease;
    }

    .top-header-megamenu-item:hover span {
        transform: rotate(180deg);
    }

.top-header-megamenu-wrapper {
    position: absolute;
    top: calc(100% + 5px); /* Reduced gap from 10px to 5px */
    left: 50%;
    transform: translateX(-50%) translateY(10px);
    width: 400px;
    background: #fff;
    color: #1d1d1d;
    opacity: 0;
    pointer-events: none;
    transition: all 0.2s ease; /* Faster transition */
    z-index: 1000;
    overflow: hidden;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
    border-radius: 4px;
    border: 1px solid #ddd;
}

/* Create an invisible bridge area to prevent dropdown from closing */
.top-header-megamenu-item::before {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    height: 15px; /* Bridge area height */
    background: transparent;
    z-index: 999;
}

.top-header-megamenu-item:hover .top-header-megamenu-wrapper,
.top-header-megamenu-wrapper:hover {
    opacity: 1;
    pointer-events: all;
    transform: translateX(-50%) translateY(0);
}

/* Keep dropdown open when hovering over the wrapper itself */
.top-header-megamenu-item:hover,
.top-header-megamenu-item:hover .top-header-megamenu-wrapper {
    /* This ensures the dropdown stays open when moving between trigger and content */
}

.top-header-megamenu-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    padding: 20px;
}

.top-header-left-content,
.top-header-right-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start; /* Add this line to left-align all flex items */
}

    .top-header-left-content h4,
    .top-header-right-content h4 {
        color: #2f2f2f;
        font-size: 14px;
        font-weight: 600;
        margin: 0 0 12px 0;
        padding-bottom: 8px;
        border-bottom: 1px solid rgba(47, 47, 47, 0.1);
        text-transform: uppercase;
        text-align: left; /* Add this line to left-align the headings */
        width: 100%; /* Ensure full width for the border-bottom */
    }

    .top-header-left-content ul,
    .top-header-right-content ul {
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex;
        flex-direction: column;
        gap: 8px;
        align-items: flex-start; /* Left-align the list items */
        width: 100%; /* Ensure full width */
    }

        .top-header-left-content ul li,
        .top-header-right-content ul li {
            margin: 0;
            padding: 0;
            line-height: normal;
            width: 100%;
        }

            .top-header-left-content ul li a,
            .top-header-right-content ul li a {
                color: #2f2f2f;
                font-size: 13px;
                font-style: normal;
                font-weight: 400;
                text-decoration: none;
                text-transform: uppercase;
                transition: all 0.2s ease;
                display: block;
                padding: 8px 12px; /* Increased padding for easier clicking */
                border-radius: 3px;
                margin: 2px 0;
                text-align: left; /* Added this line to left-justify the text */
                width: calc(100% - 24px); /* Account for padding */
                box-sizing: border-box; /* Include padding in width calculation */
            }

                .top-header-left-content ul li a:hover,
                .top-header-right-content ul li a:hover {
                    color: #eb2429;
                    background-color: rgba(235, 36, 41, 0.1); /* Light background on hover */
                }

/* Arrow pointer */
.top-header-megamenu-wrapper::before {
    content: '';
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid white;
    z-index: 1001;
}

.top-header-megamenu-wrapper::after {
    content: '';
    position: absolute;
    top: -9px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
    border-bottom: 9px solid #ddd;
}

/* Mobile hide */
@media screen and (max-width: 568px) {
    .top-header-megamenu-item {
        display: none;
    }
}

/* ========================================
   Legal Pages (Terms & Conditions, Privacy Policy)
   ======================================== */

.legal-page {
    max-width: 900px;
    margin: 0 auto;
    padding: 60px 20px 80px;
}

.legal-page__header {
    text-align: center;
    margin-bottom: 40px;
    padding-bottom: 20px;
    border-bottom: 3px solid #ea2429;
}

.legal-page__header h1 {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 2.4em;
    font-weight: 700;
    color: #2f2f2f;
    margin: 0;
}

.legal-page__content {
    font-size: 15px;
    line-height: 1.8;
    color: #333;
}

.legal-page__content h2 {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.5em;
    font-weight: 700;
    color: #2f2f2f;
    margin: 40px 0 12px;
    padding-bottom: 6px;
    border-bottom: 1px solid #e0e0e0;
}

.legal-page__content h3 {
    font-size: 1.15em;
    font-weight: 700;
    color: #444;
    margin: 24px 0 8px;
}

.legal-page__content h4 {
    font-size: 1em;
    font-weight: 700;
    color: #555;
    margin: 16px 0 6px;
}

.legal-page__content p {
    margin: 0 0 14px;
}

.legal-page__content ul {
    margin: 0 0 14px 20px;
    padding: 0;
}

.legal-page__content ul li {
    margin-bottom: 6px;
}

.legal-page__content a {
    color: #ea2429;
    text-decoration: none;
}

.legal-page__content a:hover {
    text-decoration: underline;
}

.legal-page__effective {
    text-align: center;
    font-style: italic;
    color: #777;
    margin-bottom: 30px;
}

.legal-page__caps {
    text-transform: none;
    font-size: 13px;
    line-height: 1.7;
    color: #555;
}

.legal-page__table {
    width: 100%;
    border-collapse: collapse;
    margin: 16px 0 24px;
    font-size: 14px;
}

.legal-page__table thead {
    background: #f0e8e3;
}

.legal-page__table th {
    text-align: left;
    padding: 12px 16px;
    font-weight: 700;
    color: #2f2f2f;
    border-bottom: 2px solid #ddd;
}

.legal-page__table td {
    padding: 12px 16px;
    border-bottom: 1px solid #e7ded9;
    vertical-align: top;
}

.legal-page__table tbody tr:hover {
    background: #faf7f5;
}

@media screen and (max-width: 768px) {
    .legal-page {
        padding: 40px 15px 60px;
    }

    .legal-page__header h1 {
        font-size: 1.8em;
    }

    .legal-page__content h2 {
        font-size: 1.3em;
    }

    .legal-page__table {
        font-size: 13px;
    }

    .legal-page__table th,
    .legal-page__table td {
        padding: 8px 10px;
    }
}