body {
	margin:0;
	padding:0;
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-size: 16px;
	font-weight: 400;
	color: #000;
}

.body-fixed {
    font-weight: 400;
    width: var(--desktop-width, 980px);
    margin: 0 auto;
    padding: var(--ws-widget-padding, 10px) 0;
}
table th, table td {
    text-align: left;
}

a, a:active, a:focus, a:hover { color: #03a9f4; text-decoration: none; }
a:hover { text-decoration:underline; }

.clear { clear:both; }

.cart-wrapper { }

.cart-html { margin:10px 0; float:right; clear:both; font-size:13px; }

.message { border:1px solid #eee; background-color:#fefefe; padding:10px; font-size:13px; margin:10px 0; }

/** HEADER **/

.header h1 { padding-top: 20px; text-align:center; font-size: 2em; font-weight:normal; margin:0; }
.header h1 a { color:#000; }
.header h1 a:hover { text-decoration: none; }

.header-img img { width:100%; }
.header-img { overflow:hidden; max-width:1020px; margin:0 auto; }

/** LOGIN STUFF **/

.auth {}
/* .login { display: block; padding: 10px 0; color:#000; font-size: 1.10em; } */
/* .login:hover { color:#666; text-decoration: none } */


.name { }

.badge:before {
    content: '(';
}
.badge:after {
    content: ')';
}
.badge {
    background-color: transparent !important;
    border-radius: 0 !important;
    color: inherit !important;
    display: inline-block !important;
    font-size: 1em !important;
    font-weight: normal !important;
    min-width: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    vertical-align: initial !important;
}

.logged-in { padding: 10px 0; color:#000; font-size: 1.10em; }
.logout {  }
.auth .separator{ padding: 0 10px; font-size: 0.85em; vertical-align: top; }
/* .logout:hover { color:#666; text-decoration: none } */

/** MENU **/

.cart-menu { clear: both; margin: 0 auto; width: 960px; position: relative; padding: 20px 0; box-sizing: border-box; }
.cart-menu input, select { outline:none; }
.cart-menu input[type=submit] { cursor: pointer; margin-left: -5px; }

.category-div { display: inline-block; width: 150px; }
.category-div select { width: 100%; margin-bottom: 0; }

.search-div { display: inline-block; }
.search-div input { vertical-align: middle; }
.search-div input[type=text] { font-size: 1em; margin-left: 15px; width: 200px; }

.menu-nav { text-align: right; float: right; }
.menu-nav a { }
.menu-nav a:hover { text-decoration: none; }

.catalog-product-section { margin: 0 auto; }

.catalog-product { float:left; padding:5px; width:153px; height:185px; overflow:hidden; }

.catalog-product-text-link { float:left; display:block; line-height:1.5em; margin:5px 0 0 0; font-size:13px; color:#000; max-height:39px; overflow:hidden; }

.catalog-product-thumbnail { height:120px; overflow:hidden; display:block; float:left; text-align:center; width:153px; }
.catalog-product-thumbnail img { border:0; max-width:100%; max-height:100%; margin:0 auto; }

.catalog-viewing { text-align:center; margin:20px 0 10px; font-weight:normal; color:#000; }

.catalog-product-description { font-size:13px; line-height:1.2em; color:#000; display:none; }

.catalog-product-price { text-align:right; float:left; clear:both; color:#000; }

.menu-nav a,
input[type=submit],
.continue-button,
.display-product-sub input[type=submit],
.apply-button,
td input[type=submit] {
    display: inline-block;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
    appearance: none;
    transition: background-color .25s ease-out,color .25s ease-out;
    vertical-align: middle;
    border: 1px solid transparent;
    border-radius: 0px;
    padding: .85em 1em;
    font-size: 1em;
    background-color: #000;
    color: #fff;
	user-select: none;
	font-weight: 400;
}
.continue-button {
    min-width: 100px;
    width: 100%;
}

.body-fixed .continue-button,
input[type=submit] {
    width: 320px;
    height: 55px;
}

.body-fixed fieldset {
    border: initial;
    margin: initial;
    padding: initial;
}

.body-fixed .row {
    display: flex;
    gap: 15px;
    justify-content: space-between;
    margin: 10px 0;
}

.body-fixed .row input[type="radio"] {
    margin-right: 10px;
}

.body-fixed .coupon-container {
    display: flex;
    flex-flow: column;
    max-width: 320px;
    gap: 10px
}

.body-fixed .coupon-div .c-clear::before,
.body-fixed .coupon-div .c-clear::after {
    display: none;
}

.body-fixed .coupon-div .c-clear .sec1,
.body-fixed .coupon-div .c-clear .sec2 {
    width: auto;
    float: none;
    display: block;
}

.body-fixed .coupon-div .c-clear .sec1 input {
    margin-bottom: 0;
}

.body-fixed .apply-button {
    width: 320px;
    padding: 17px 0;
}

.body-fixed .contents p {
    margin-bottom: 20px;
}

.body-fixed .order-summary {
    padding: 0 20px 20px;
}

.body-fixed .order-section {
    margin-bottom: 20px;
    min-height: 350px;
}

.body-fixed .order-section:has(.no-items) {
    display: flex;
    justify-content: center;
    align-items: center;
}

.text-right {
    text-align: right;
}
.text-center {
    text-align: center;
}

/* .body-fixed .row .col-xs-9 {
    flex-basis: 75%;
}

.body-fixed .row .col-xs-3 {
    flex-basis: 25%;
} */

/** DISPLAY **/

.display-product-section { margin-bottom:100px; position:relative; }

.display-product-name { border-bottom:1px solid #ccc; margin:0 290px 10px 315px; position:relative; min-width:350px; }

.display-product-name h2 { font-size:20px; font-weight:100; color:#000; margin:20px 0 5px 0; }

.display-product-img { width:300px; height: 300px; position:absolute; text-align:center; }
.display-product-img img { max-width:100%; position:relative; }

.display-product-description { font-size:13px; margin:0 290px 0 315px; min-width:350px; position:absolute; }

.display-product-inventory { float:right; width:250px; margin-bottom:15px; text-align:center; border:1px solid #6DAEE1; background-color:#C0DBF2; border-radius:5px; padding:9px; }

.display-product-middle { margin-left:320px; margin-right:260px; min-width:500px; }

.display-product-sub { float:right; width:250px; clear:right; border: 1px solid #ededed; background-color: #fff; padding:9px; text-align:center; }

.display-product-sub select { margin: 8px 0; font-size:13px; }

#share-tools { margin-left: 43px; }

.catalog-content { position:relative; padding:20px; width: 960px; margin: 0 auto; box-sizing: border-box; }

.display-product-buy { position:absolute; top:0; right:0; background-color:#C0DBF2; border:1px solid #6DAEE1; border-radius:5px; padding:10px; width:200px; text-align:center; }

.display-product-buy select { font-size:12px; }

.display-product-price, .display-product-quantity { font-size:13px; color:#666; margin:5px 0; }

/** CATEGORIES SIDEBAR **/

.catalog-categories{ display: none; }

.catalog-content { padding:0 20px; border-top:1px solid transparent; }

/** CATEGORIES SIDEBAR **/

.catalog-categories ul { list-style-type: none; padding:0; margin:0; }
.catalog-categories li { padding:0; margin:0; }
.catalog-categories a { color:#555; font-size:13px; }

/** CART **/

.cart-section { clear:both; position:relative; width: 960px; margin: 0 auto 100px; }

.cart-section h3 { font-size:22px; color:#000; margin:20px 0; padding: 0 20px; }

.cart-using { margin:20px 0; font-size:13px; }

.cart-section table th,
.order-section table th,
.order-information th,
.thank-you-section table th,
.order-summary-table td { padding: 1em 0; font-size: 1em; margin: 1em 0; font-weight: 400; }
.cart-section table.thank-you-table, .cart-section form, .thank-you-section table { padding: 0 20px; }

table.order-table, table.cart-table, table.confirm-table, table.thank-you-table, table.order-summary-table { width:100%; border-spacing: 0; }

table.order-table tr td,
table.order-table tr:first-child th,
table.cart-table tr td,
table.cart-table tr:first-child th,
table.confirm-table tr td,
table.confirm-table tr:first-child th,
table.thank-you-table tr td,
table.thank-you-table tr:first-child th,
table.order-summary-table tr td{
    border-bottom: 1px solid #ededed;
}
table.order-table tr td,
table.cart-table tr td,
table.confirm-table tr td,
table.thank-you-table tr td,
table.order-summary-table tr td {
    padding-top: 10px;
    padding-bottom: 10px;
	font-size: .89em;
}

.cart-empty { margin:20px 0; padding: 0 20px; text-align:center; }
.cart-empty a { text-decoration:underline; }

.no-items { text-align:center; }
.no-items a { text-decoration:underline; }
#product-quantity input[type=text] { width:40px; text-align: center; line-height: 2em; height: 2em; padding: 0; }
span.checkout-note { font-size:11px; font-weight:normal; }

/** ORDER **/

.payment-wrapper { width:980px; margin:20px auto; }

.order-section { width:960px; margin:0 auto 100px auto; clear:left; position:relative; padding:0 20px; min-width:900px; }

.order-section h4 { font-size: 1.25em; color: #000; margin:20px 0; line-height: 1.5em; font-weight: normal; }

.order-update { font-size:12px; }

.order-div { width:300px; position:absolute; }

.captcha-instructions { font-size:13px; }
.ccv2-instructions { font-size:13px; }

#paypal_continue_info { margin:20px 0; }

.products-div { background-color:#e7efeb; padding:10px; }

.billing-comments { width:100%; }
.billing-comments textarea { width:100%; height:100px; }

/** THANK YOU **/

.thank-you-section { clear:left; position:relative; padding-bottom:20px; margin:0 auto; }

.thank-you-section h4 { font-size:27px; color:#000; margin:20px; font-weight: normal; }

.thank-you-html { margin:20px; }
.thank-you-message { margin:20px; line-height: 1.44; }

/** CONFIRM **/

.confirm-section { clear:left; position:relative; width:960px; margin:0 auto; }
.confirm-section form { padding:0 20px; }
.confirm-section h4 { font-size:18px; color:#000; margin:10px 0 20px 0; }
.confirm-info { width:300px; float:left; }

/** HOMEPAGE **/
.featured-banner { margin-bottom:10px; }
.featured_banner img { max-width:100%; }

.featured-section { clear:left; }

.featured-section-title { color:#313a44; font-size:18px; border-top:1px solid #ccc; font-weight:100; padding-top:10px; }

.billing-row input[type=text],
.billing-row input[type=email],
.billing-row input[type=phone],
.billing-row input[type=password],
.billing-row select,
.confirm-row input[type=text],
.confirm-row select,
.the-login-box input[type=text],
.the-login-box input[type=password],
.the-login-box select,
.the-signup-box input[type=text],
.the-signup-box input[type=password],
.the-signup-box select,
.login-section input[type=text],
.login-section input[type=password],
.login-section select {
    border: 1px solid #cacaca;
    background-color: #fefefe;
    padding: .5em;
    display: block;
    width: 100%;
    margin: 0 0 1em;
	appearance: none;
    line-height: 31px;
}

input[type=text],
input[type=number],
input[type=email],
input[type=tel],
textarea,
select {
    border: 1px solid #cacaca;
    background-color: #fefefe;
    padding: .5em;
    margin: 0 0 1em;
    
    box-sizing: border-box;
    color: rgba(0, 0, 0, 0.8);
}
select {
    /*height: 2.8em;*/
    padding: .5em;
    margin: 0 0 1em;
    font-size: 1em;
    color: #0a0a0a;
    border-radius: 0;
    appearance: none;
    /* background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="32" height="24" viewBox="0 0 32 24"><polygon points="0,0 32,0 16,24" style="fill: rgb%28138, 138, 138%29"></polygon></svg>');
    background-size: .5625em .375em; */
    background-image: url(https://cdn.secure.website/library/users/img/down-arrow.svg);
    background-size: 24px;
    background-position: right center;
    background-origin: content-box;
    background-repeat: no-repeat;
}

.card-js .card_number-wrapper label ~ *, .card-js .expiry-container label ~ *, .card-js .cvc-container label ~ * {
    
    box-sizing: border-box;
    width: 100%;
    display: block;
}
.card-js input.card_number, .card-js input.cvc, .card-js input.name {
    width: 100%;
}

.card-js input.card_number { padding-right: 48px; }
.card-js .card_number-wrapper .card-type-icon { right: 9px; }

.card-js .cvc-container, .card-js .expiry-container {
    width: 50%;
    display: inline-block;
}
.card-js .expiry-wrapper {
    margin-right: 10px;
}

.billing-row label,
.confirm-row label,
.card-js .card_number-wrapper label,
.card-js .expiry-container label,
.card-js .cvc-container label {
    font-weight: 0.85em;
    font-weight: normal;
    display: block;
    line-height: 1.8em;
    margin: 0;
	width: auto;
}

.order-inner {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.order-left, .confirm-left {  box-sizing: border-box; flex:1 }
.order-right, .confirm-right {  box-sizing: border-box; flex:1 }

/* reset */
.cart-wrapper{
	max-width: 980px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}
.top{
	width: auto;
}
.cart-menu{
	width: auto;
}
.order-section{
	width: auto;
	min-width: auto;
}
.order-section {
	padding: 0;
}
.order-summary{
	background-color: #F5F5F5;
    position: sticky;
    top: 10px;
    z-index: 2000;
}
.card-fields input[name="card_number"] {
    width: 60%;
}
.card-fields input[name="expiry"] {
    width: 20%;
}
.card-fields input[name="cvv2"] {
    width: 20%;
}
/* reset */

@media (max-width:767px){
    .order-section, .confirm-section, .thank-you-section, .cart-menu, .cart-section, .catalog-content {  box-sizing: border-box; min-width: 320px; width: 100%; padding: 10px 0; }
    .order-left, .confirm-left,
    .order-right, .confirm-right { width: 100%; float: none; display: block; padding: 0; }

    .cart-menu .menu-nav { position: static; right: initial; top: initial; text-align: center; float: none; }
    .cart-menu .menu-nav a { display: block; width: 100%; margin-top: 10px; box-sizing: border-box; }
    .cart-menu .menu-nav a:first-child { margin-top: 0; }

    .catalog-product { text-align: center; }
    .catalog-product-thumbnail { float: none; width: 100%; margin: 0 auto; }
    .catalog-product-price { float: none; text-align: center; }

    .display-product-name { margin: 0; text-align: center; min-width: initial; }
    .display-product-img { width: 100%; height: auto; position: static; }
    .display-product-description { position: static; min-width: initial; margin: 0; }
    .display-product-sub { float: none; width: 100%; box-sizing: border-box; margin-top: 30px; }
    #share-tools { margin: 0 auto; }
    #quantity { text-align: center; }
    .display-product-section .yellow-button { display: block; width: 100%; margin-top: 10px; }

    .payment-div { margin-top: 30px; }
    .continue-button { display: block; width: 100%; margin-top: 20px; }

    .catalog-product {
        float: none;
        width: 300px;
        height: 300px;
        padding: 0;
        margin: 0 auto;
    }

    .category-div,
    .search-div {
        display: block;
        width: 100%;
        margin-bottom: 10px;
    }
    .search-div {
        text-align: center;
    }

    .body-fixed {
        width: 100%;
        padding: 10px;
    }

    #d_u0c0_linkAd { min-width: initial !important; }
    #d_u0c0_linkAd * { font-size: 12px !important; }
    #d_u0c0_linkAd span { width: 165px; white-space: nowrap; text-overflow: clip; overflow: hidden; display: inline-block; }
    #d_u0c0_linkAd > table { width: 192px; left: 50% !important; margin-left: -96px; text-align: center; }
    #d_u0c0_innerlinkAd { display: none; }
}
/* Bootstrap */
.btn, .panel {
	border-radius: 0;
}
.btn-black, .btn-black:hover, .btn-black:active, .btn-black:focus {
	background-color: #000;
	color: #fff;
}
.panel-black {
	border-color: #aaa;
	box-shadow: none;
}
.panel-black .panel-body {
	border-top: 1px solid #aaa;
}
.arrow-down {
	color: #aaa;
}
