﻿html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
}

th {
    font-weight:normal;
}

body {
    padding-top: 70px;
    padding-bottom: 100px;
    background: #f5f5f5;
}

.mobile {
    display: none;
}

.noMobile {
    display: table-cell;
}

.sitelogo {
    width:100%;
}

.pagebanner {
    width: 100%
}

/* Override the default bootstrap behavior where horizontal description lists 
   will truncate terms that are too long to fit in the left column 
*/

.dl-horizontal dt {
    white-space: normal;
}

/* Set width on the form input elements since they're 100% wide by default */

input,
select,
textarea {
    max-width: 280px;
}

#PromoHex {
    background-image: url('/Images/promoHex1.png');
}

    #PromoHex:hover {
        background-image: url('/Images/blankHex.png')
    }

#TradeInHex {
    background-image: url('/Images/tradeHex1.png');
}

    #TradeInHex:hover {
        background-image: url('/Images/blankHex.png')
    }

#SearchHex {
    background-image: url('/Images/searchHex.png');
}

    #SearchHex:hover {
        background-image: url('/Images/blankHex.png')
    }

.HomePagePromoCell {
    background-color: #ffffff;
}

    .HomePagePromoCell:hover {
        background-color: cornflowerblue;
        cursor: pointer;
    }

.btn-wizard-current {
    color: #ffffff;
    background-color: forestgreen;
    border-color: #357ebd;
}

.btn-wizard-default {
    color: #ffffff;
    background-color: #418BCA;
    border-color: #357ebd;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open .dropdown-toggle.btn-primary {
    color: #ffffff;
    background-color: #3276b1;
    border-color: #285e8e;
}

.btn-primary:active,
.btn-primary.active,
.open .dropdown-toggle.btn-primary {
    background-image: none;
}

.btn-primary.disabled,
.btn-primary[disabled],
fieldset[disabled] .btn-primary,
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled:active,
.btn-primary[disabled]:active,
fieldset[disabled] .btn-primary:active,
.btn-primary.disabled.active,
.btn-primary[disabled].active,
fieldset[disabled] .btn-primary.active {
    background-color: #428bca;
    border-color: #357ebd;
}

/*WEB ACCESSIBILITY AUDIT*/
a.skip-main {
    left: -999px;
    position: absolute;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    z-index: -999;
}

    a.skip-main:focus, a.skip-main:active {
        color: #fff;
        background-color: #000;
        left: auto;
        top: auto;
        width: 30%;
        height: auto;
        overflow: auto;
        margin: 10px 35%;
        padding: 5px;
        border-radius: 15px;
        border: 4px solid yellow;
        text-align: center;
        font-size: 1.2em;
        z-index: 999;
    }


/* ERRORS */
.input-validation-error {
    border: 1px solid red !important;
}



/* LOAD SPINNER */
.loader {
    border: 10px solid #f3f3f3;
    border-radius: 50%;
    border-top: 10px solid #3498db;
    border-bottom: 10px solid #3498db;
    width: 75px;
    height: 75px;
    -webkit-animation: spin 2s linear infinite;
    animation: spin 1.5s linear infinite;
    background: rgba(0,0,0,0.2);
    margin: 0 auto;
}

    .loader > div {
        position: absolute;
        top: 18px;
        left: 20px;
        color: #468cba;
    }

/* Safari */
@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
    }
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}




/* WIDGETS */
.widgets {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    background: #000E;
    padding: 10px;
    text-align: center;
    position: fixed;
    left: 0;
    bottom: 30px;
    width: 100%;
    line-height: 25px;
    background-color: #111;
    color: white;
    box-shadow: -3px -3px 7px rgb(0 0 0);
    border-top: 1px solid #111;
    max-height: 300px;
    opacity: 0.9;
}


    .widgets .widget {
        display: inline-block;
        width: 31%;
        vertical-align: top;
        padding: 1%;
    }

    .widgets h4 {
        text-align: left;
        color: white;
        font-size: 1.3em;
        padding: 2%;
    }

    .widgets .widget_body {
        vertical-align: top;
        color: gray;
        font-size: 1.1em;
        padding: 2%;
        text-align: left;
    }



/* BUTTONS */

.td_btn {
    cursor:pointer;
    vertical-align:middle !important;
}

.td_btn:hover {
    background:#468cba !important;
    color:white !important;
}



/*FONT AWESOME*/
.awesomeclose {
    color: red;
    font-size: 1.5em;
    float: right;
    background: radial-gradient(white 50%, red 50%);
    cursor: pointer;
}

    .awesomeclose:hover {
        color: darkred;
    }

.social-media-wrap {
    height: 30px;
    width: 30px;
    background: #468cba;
    border-radius: 5px;
}

.awesomefacebook {
    color: white;
    font-size: 1.4em;
    cursor: pointer;
    margin: 5px 5px 5px 9px;
}



/*PADDING*/
.p10 {
    padding:10px;
}

/*MARGIN*/
.mb10 {
    margin-bottom:10px;
}

/*BACKGROUND*/
.bgWhite {
    background:white;
}

/*COLORS*/

.tx-white {
    color:white;
}

/*SCROLLS*/
.scrollx {
    overflow-x:scroll;
}


/*SHADOW*/
.shadIn5px {
    box-shadow:inset 5px 5px 5px rgba(0,0,0,0.5);
}

.navbar_container {
    background: #111;
    color: white;
    box-shadow: 4px 4px 10px rgba(0,0,0,1);
}

.product_list_container {
    background: white;
    border-radius: 5px;
    padding: 20px;
    margin-bottom: 100px;
    box-shadow: 4px 4px 10px rgba(0,0,0,0.3);
}

.reseller_list_container {
    background: white;
    border-top-left-radius: 7px;
    border-top-right-radius: 7px;
    padding: 20px;
    box-shadow: 4px 4px 10px rgba(0,0,0,0.3);
}

.shoppingcart_container {
    background: white;
    border-radius: 5px;
    padding: 20px;
    margin-bottom: 100px;
    box-shadow: 4px 4px 10px rgba(0,0,0,0.3);
}

/* FOOTER */
.footer {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    line-height: 25px;
    background-color: #111;
    color: white;
    padding: 5px 10px;
    box-shadow: 0px -3px 7px rgba(0,0,0,0.5);
    border-top: 1px solid #111;
}

.footer a {
    color: #ccc;
    text-decoration: none;
}

.footer a:hover {
    color: #fff;
    text-decoration: none;
}

#centerpoint {
    top: 50%;
    left: 50%;
    position: relative;
}


.order_summary_container {
    background: white;
    border-radius: 7px;
    box-shadow: 3px 3px 10px rgba(0,0,0,0.2);
    margin-bottom: 50px;
}

.order_summary_title {
    color: white;
    background: #468cba;
    font-size: 1.4em;
    padding: 5px 10px;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
    box-shadow: 3px 3px 7px rgba(0,0,0,0.5);
    text-align: center;
    text-shadow: 1px 1px 2px black;
}

.order_summary, .subtitle {
    font-size: 1.5em;
    padding-left: 10px;
}

.order_summary_body {
    padding: 20px;
}

.order_summary, .message {
    font-size: 1.1em;
    padding-left: 10px;
}

.order_summary, .table {
    font-size: 1.1em;
}


.payment_details_container {
    background: white;
    border-radius: 7px;
    box-shadow: 3px 3px 10px rgba(0,0,0,0.2);
    margin-bottom: 50px;
}

.payment_details_title {
    color: white;
    background: #468cba;
    font-size: 1.4em;
    padding: 5px 10px;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
    box-shadow: 3px 3px 7px rgba(0,0,0,0.5);
    text-align: center;
    text-shadow: 1px 1px 2px black;
}

.payment_details_body {
    padding: 20px;
}

.login_register_container, .login_container {
    margin: 0 auto 100px;
    text-align: center !important;
    padding: 10px;
    background: white;
    border-radius: 5px;
    box-shadow: 5px 5px 7px rgba(0,0,0,0.3);
    max-width: 450px;
}

.login_container input {
    margin: 10px auto
}


.register_container {
    margin: 0 auto 100px;
    text-align: center;
    padding: 10px;
    background: white;
    border-radius: 5px;
    box-shadow: 5px 5px 7px rgba(0,0,0,0.3);
    max-width:600px;
}

.register_warning {
    box-shadow: 3px 3px 5px rgba(0,0,0,0.3);
    padding: 5px;
    margin: 5px;
    max-width: 300px;
}


.curved_top_container {
    border-radius: 7px 7px 0 0;
    color: white;
    background: #444;
    box-shadow: 3px 0px 5px rgba(0,0,0,0.3);
    text-shadow: 1px 1px 2px black;
}

.curve_top_btn {
    font-size: 1em;
    float: right;
    cursor: pointer;
    margin-top: -5px;
}

.curved_bottom_container {
    border-radius: 0 0 7px 7px;
    box-shadow: 3px 3px 5px rgba(0,0,0,0.3);
    margin-bottom: 10px;
    background: white;
    width: 100%;
    margin-bottom:50px;
}

.bottom_container {
    border-radius: 0 0 7px 7px;
    padding: 10px;
    margin-bottom: 10px;
    background: white;
    width: 100%;
    border: 1px solid #ddd;
}


/* BACKGROUNDS */
.bgGray50 {
    background: #bbb;
    border-top-color: #eee;
    border-right-color: #888;
    border-bottom-color: #666;
    border-left-color: #ddd;
}

.bgGray10 {
    background: rgb(90%,90%,90%) !important;
}

.bgGray20 {
    background: rgb(80%,80%,80%) !important;
}

.bgGray30 {
    background: rgb(70%,70%,70%) !important;
}

.bgGray40 {
    background: rgb(60%,60%,60%) !important;
}

.bgWhite {
    background: white !important;
}

.bgDragOver {
    background: #eee;
}


.bgChecker {
    background: repeating-conic-gradient(#eee 0% 25%, transparent 0% 50%) 50% / 20px 20px !important;
}

.bgSmChecker {
    background: #eee !important;
}


.bgSage {
    border: 1px solid #b9d661 !important;
    background-image: linear-gradient(to bottom, #b6d068, #91a25b) !important;
}

.bgPrimary {
    border: 1px solid #496e8f !important;
    background-image: linear-gradient(to bottom, #85b0d6, #428bca) !important;
}

.bgPrimary.active {
    background: #428bca !important;
    text-shadow: 1px 1px black;
}


.bgDanger {
    border: 1px solid #496e8f !important;
    background-image: linear-gradient(to bottom, #CF2323, #841414) !important;
}

.bgWarning {
    border: 1px solid #496e8f !important;
    background-image: linear-gradient(to bottom, #cf9a23, #846714) !important;
}

.bgPostit {
    background: #FCF3CF;
}



/* AWESOMEFONTS AND GLYPHICONS*/
.glyphiconplus {
    background: #428bca;
    color: white;
    padding: 5px 6px 8px 8px;
    border-radius: 5px;
    font-size: 0.8em;
}

.glyphiconremove {
    float: right;
    background: red;
    padding: 3px 4px 5px;
    border-radius: 4px;
    cursor: pointer;
}

.awesometrash {
    cursor: pointer;
    color: red;
    font-size: 1.5em;
    margin-left: 10px;
}

.awesomeunlock {
    cursor: pointer;
    color: darkgreen;
    font-size: 1.5em;
    margin-left: 10px;
}

.awesomelock {
    cursor: pointer;
    color: darkred;
    font-size: 1.5em;
    margin-left: 10px;
}

.awesomepencil {
    cursor: pointer;
    color: darkorange;
    font-size: 1.5em;
    margin-left: 10px;
}

.awesomeinfo, .awesomeeye {
    color: dodgerblue;
    font-size: 1.6em;
    vertical-align: middle;
    margin-left: 10px;
    cursor: pointer;
    background: white;
    border-radius: 12px;
}

.awesomeplus {
    font-size: 1.8em;
    margin: 10px;
    color: white;
    background: dodgerblue;
    vertical-align: middle;
    margin-left: 10px;
    cursor: pointer;
    padding: 5px;
    border-radius: 5px;
    width: 27px !important;
}

.awesomeclose {
    float: right;
    margin-right: 5px;
    cursor: pointer;
    color: red;
    font-size: 1.4em;
    background: white;
    height: 22px;
    border-radius: 3px;
}

.awesomeban {
    margin-right: 5px;
    cursor: pointer;
    color: red;
    font-size: 1.4em;
    background: white;
    height: 22px;
    border-radius: 3px;
    vertical-align: middle;
}

.awesomecheckcircle {
    margin-right: 5px;
    cursor: pointer;
    color: darkgreen;
    font-size: 1.4em;
    background: white;
    height: 22px;
    border-radius: 3px;
    vertical-align: middle;
}



/* INLINE BLOCKS SIZES */
.block40px {
    display: inline-block;
    width: 40px;
}

.blockm40px {
    display: inline-block;
    min-width: 40px;
}

.block50px {
    display: inline-block;
    width: 50px;
}

.blockm50px {
    display: inline-block;
    min-width: 50px;
}

.block60px {
    display: inline-block;
    width: 60px;
}

.block75px {
    display: inline-block;
    width: 75px;
}

.blockm75px {
    display: inline-block;
    min-width: 75px;
}

.block160px {
    display: inline-block;
    width: 160px;
}

.blockm175px {
    display: inline-block;
    min-width: 175px;
}

.block100px {
    display: inline-block;
    width: 100px;
}

.blockm100px {
    display: inline-block;
    min-width: 100px;
}

.block200px {
    display: inline-block;
    width: 200px;
}

.blockm200px {
    display: inline-block;
    min-width: 200px;
}

.block300px {
    display: inline-block;
    width: 300px;
}

.blockm300px {
    display: inline-block;
    min-width: 300px;
}

.block350px {
    display: inline-block;
    width: 350px;
}

.blockm350px {
    display: inline-block;
    min-width: 350px;
}

.blockh400px {
    display: inline-block;
    height: 400px;
}

.block400px {
    display: inline-block;
    width: 400px;
}

.blockm400px {
    display: inline-block;
    min-width: 400px;
}

.block600px {
    display: inline-block;
    width: 600px;
}

.blockm600px {
    display: inline-block;
    min-width: 600px;
}

/*This is for datepicker*/
.block282px {
    display: inline-block;
    width: 282px;
}



/* MARGIN SIZE CLASSES */
.ms5 {
    margin: 5px;
}

.ms10 {
    margin: 10px;
}

.msl5 {
    margin-left: 5px;
}

.msl10, .mls10 {
    margin-left: 10px;
}

.mbs10 {
    margin-bottom: 10px;
}

.mbs5 {
    margin-bottom: 5px;
}

.mts10 {
    margin-top: 10px;
}

.mts5 {
    margin-top: 5px;
}


/*RADIUS*/
.rad5px {
    border-radius : 5px;
}


/* PADDING SIZE CLASSES */

.ps5 {
    padding: 5px;
}

.ps10 {
    padding: 10px;
}

.pts5 {
    padding-top: 5px;
}

.pts10 {
    padding-top: 10px;
}

.pls5 {
    padding-left: 5px;
}

.pls10 {
    padding-left: 10px;
}



/* ALIGN ELEMENTS */
.aligntop {
    vertical-align: top;
}

.alignbottom {
    vertical-align: bottom;
}

.alignmid {
    vertical-align: middle;
}



/* HOVER CLASSES */


.hover_fade:hover {
    opacity: 0.9;
}


/* INLINE BLOCKS*/

.inline {
    display: inline-block;
}




/* COLORS */

.primary_text {
    color: #428bca !important;
}

.warning_text {
    color: orange !important;
}

.white_text {
    color: white;
}

.dark_text {
    color: black;
}

/* FONT SIZE */
.fs12 {
    font-size: 1.2em;
}

.fs13 {
    font-size: 1.3em;
}

.fs14 {
    font-size: 1.4em;
}

.fs15 {
    font-size: 1.5em;
}

.fs16 {
    font-size: 1.6em;
}

.fs18 {
    font-size: 1.8em;
}


/* HEADER CLASSES */
.gray_header {
    background: gray !important;
    color: white;
    padding: 5px;
    text-align: center;
}

.darkgray_header {
    background: #444;
    color: white;
    padding: 5px;
    text-align: center;
}

.primary_header {
    color: #ffffff;
    background: #428bca !important;
    border-color: #357ebd;
    padding: 5px;
    text-align: center;
}

.block_header {
    font-size: 1.2em;
    background: #555;
    color: white;
    text-align: center;
    font-weight: normal;
}

.frame_header {
    border: 1px solid gray;
    text-align: center;
    font-weight: normal;
}

/*SHADOWS*/

.shad5px {
    box-shadow: 5px 5px 5px rgba(0,0,0,.3);
}

/*CURSOR*/

.pointer {
    cursor:pointer;
}


/* BOOTSTRAP OVERRIDE */


.navbar-nav > li > a {
    color: white;
}


.nav > li > a:hover,
.nav > li > a:focus {
    text-decoration: none;
    background: #111;
    color: #aaa;
}


.table-striped > tbody > tr:nth-child(odd) > td, .table-striped > tbody > tr:nth-child(odd) > th {
    background-color: #ebeff1;
}

.shadow {
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15) !important;
}

.rounded {
    border-radius: 5px;
}

.p-1 {
    padding: 10px;
}


.dropdown-menu {
    box-shadow: 3px 3px 10px rgba(0,0,0,0.5);
    background: rgba(255,255,255,.8);
}

    .dropdown-menu > li > a:hover {
        background: #428bca !important;
        color: white !important;
    }

    .dropdown-menu > li > a {
        color: black !important;
    }


.search_popup_shadow {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.7);
    z-index: 998;
}

.search_popup {
    position: absolute;
    width: 400px;
    height: 300px;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    margin-top: auto;
    margin-bottom: auto;
    top: 0;
    bottom: 0;
    padding: 40px 20px;
    text-align: center;
    z-index: 999;
}



/* IPHONE 6/7/8 PLUS */
@media (max-width: 414px) {
    .widgets {
        line-height: 17px;
        font-size : 0.7em;
    }

    .container {
        padding-right: 0;
        padding-left: 0;
    }

        .container > .navbar-header, .container > .navbar-collapse {
            margin-right: 0;
            margin-left: 0;
        }

    input, select, textarea {
        max-width: 350px;
    }

    .find_your_gun_title {
        font-size: 15pt;
    }

    .block400px {
        width: 350px;
    }

    .noMobile {
        display:none;
    }
    .mobile {
        display:block;
    }

    .sitelogo {
        width:250px;
    }

    .pagebanner {
        height:125px;
        image-rendering:optimizeQuality;
    }

    body {
        padding-top: 50px;
        padding-bottom: 50px;
        background: #f5f5f5;
    }

    td {
        font-size:1rem;
    }
    
    th {
        font-size: 1rem;
    }

    .subtitle {
        font-size:1.2em;
    }
}



/* IPHONE 6/7/8 */
@media (max-width: 375px) {


    input, select, textarea {
        max-width: 300px;
    }

    .block400px {
        width: 320px;
    }
}



/* GALAXY S5 */
@media (max-width: 360px) {

    .block400px {
        width: 300px;
    }
}



/* IPHONE 4/5 */
@media (max-width: 320px) {
    .container > .navbar-header, .container > .navbar-collapse {
        margin-right: -5px;
    }

    input, select, textarea {
        max-width: 270px;
    }

    .block400px {
        width: 260px;
    }

    .max320fs09em {
        font-size: 0.9em;
    }
}

