@charset "UTF-8";
/* Add Animation */
@-webkit-keyframes animatetop { from { top: -300px;
    opacity: 0; }
  to { top: 50%;
    opacity: 1; } }

@keyframes animatetop { from { top: -300px;
    opacity: 0; }
  to { top: 50%;
    opacity: 1; } }

@-webkit-keyframes animatefrombottom { from { bottom: -100px;
    opacity: 0; }
  to { bottom: 0;
    opacity: 1; } }

@keyframes animatefrombottom { from { bottom: -100px;
    opacity: 0; }
  to { bottom: 0;
    opacity: 1; } }

section.checkout .layout, section.payment .layout { position: relative; }

@media (min-width: 800px) { section.checkout .layout, section.payment .layout { display: flex; flex-flow: row nowrap; align-items: stretch; justify-content: space-between; } section.checkout .layout > .cart, section.payment .layout > .cart { width: 300px; flex: 0 0 auto; order: 2; } section.checkout .layout > .form, section.checkout .layout > .payment, section.payment .layout > .form, section.payment .layout > .payment { padding: 10px 10px 0 0; max-width: 550px; } section.checkout .layout > .form, section.payment .layout > .form { max-width: 550px; } section.checkout .layout > .payment, section.payment .layout > .payment { padding-top: 10px; flex-grow: 1; min-width: 300px; } }

section.checkout .cart, section.payment .cart { position: relative; padding: 20px; background: #f1f1f3; /* .product + .product { margin-top:20px; border-top:1px solid #ccc; }*/ }

section.checkout .cart h3, section.payment .cart h3 { margin-bottom: 10px; }

section.checkout .cart .product::after, section.payment .cart .product::after { content: ""; clear: both; display: table; }

section.checkout .cart .product .thumb, section.payment .cart .product .thumb { text-align: center; margin: 10px 0; }

section.checkout .cart .product .thumb img, section.payment .cart .product .thumb img { width: 200px; }

section.checkout .cart .product .quantity-container, section.payment .cart .product .quantity-container { align-items: center; }

section.checkout .cart .product .quantity-container .cnt button, section.checkout .cart .product .quantity-container .cnt input, section.payment .cart .product .quantity-container .cnt button, section.payment .cart .product .quantity-container .cnt input { margin: 0; padding: 6px 15px; vertical-align: top; border: 1px solid #808186; }

section.checkout .cart .product .quantity-container .cnt input, section.payment .cart .product .quantity-container .cnt input { text-align: right; width: 70px; margin: 0; border-left-width: 0; border-right-width: 0; }

section.checkout .cart div.price_row, section.payment .cart div.price_row { margin: 10px 0 0 0; display: flex; justify-content: space-between; }

section.checkout .cart div.price_row > span, section.payment .cart div.price_row > span { display: block; }

section.checkout .cart div.price_row .strike, section.payment .cart div.price_row .strike { text-decoration: line-through; }

section.checkout .cart div.price_row .lbl, section.payment .cart div.price_row .lbl { color: #9d9d9d; }

section.checkout .cart div.price_row .price, section.payment .cart div.price_row .price { white-space: nowrap; }

section.checkout .cart p.max-allowed, section.payment .cart p.max-allowed { margin: 10px 0 0 0; text-align: right; font-size: 0.8em; }

section.checkout .cart .hidden, section.checkout .cart div.price_row.hidden, section.payment .cart .hidden, section.payment .cart div.price_row.hidden { display: none; }

section.checkout .cart div.price_row.cart_total .lbl, section.checkout .cart div.price_row.total .lbl, section.payment .cart div.price_row.cart_total .lbl, section.payment .cart div.price_row.total .lbl { color: #2c2c2c; }

section.checkout .cart .discount_code_button, section.payment .cart .discount_code_button { text-align: center; margin-top: 10px; }

section.checkout .cart .discount_code_row span.lbl a, section.payment .cart .discount_code_row span.lbl a { margin-left: 5px; }

section.checkout hr, section.payment hr { height: 1px; border: none; background: #ea2127; margin: 20px 0; }

section.checkout .submit button, section.payment .submit button { margin: 10px 0; vertical-align: baseline; }

section.checkout .submit span, section.payment .submit span { display: none; }

@media (max-width: 800px) { section.checkout .submit, section.payment .submit { text-align: center; } }

section.checkout .submit button.loading ~ span, section.payment .submit button.loading ~ span { display: inline-block; vertical-align: baseline; margin-left: 10px; }

section.checkout .form h3 { margin: 10px 0; }

section.checkout .form div.row { margin-bottom: 10px; position: relative; }

section.checkout .form div.row > input[type~=text] { width: 100%; padding-top: 20px; height: 48px; }

section.checkout .form div.row input[type~=text] + label { box-sizing: border-box; position: absolute; width: 100%; height: 100%; top: 0; left: 0; color: #666; font-family: RaceBox-Regular; padding: 5px 16px 0 16px; font-size: 0.8em; height: auto; transition: height 0.1s, padding 0.1s, font-size 0.1s; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; user-select: none; }

section.checkout .form div.row > input[type~=email] { width: 100%; padding-top: 20px; height: 48px; }

section.checkout .form div.row input[type~=email] + label { box-sizing: border-box; position: absolute; width: 100%; height: 100%; top: 0; left: 0; color: #666; font-family: RaceBox-Regular; padding: 5px 16px 0 16px; font-size: 0.8em; height: auto; transition: height 0.1s, padding 0.1s, font-size 0.1s; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; user-select: none; }

section.checkout .form div.row > input[type~=number] { width: 100%; padding-top: 20px; height: 48px; }

section.checkout .form div.row input[type~=number] + label { box-sizing: border-box; position: absolute; width: 100%; height: 100%; top: 0; left: 0; color: #666; font-family: RaceBox-Regular; padding: 5px 16px 0 16px; font-size: 0.8em; height: auto; transition: height 0.1s, padding 0.1s, font-size 0.1s; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; user-select: none; }

section.checkout .form div.row > input[type~=tel] { width: 100%; padding-top: 20px; height: 48px; }

section.checkout .form div.row input[type~=tel] + label { box-sizing: border-box; position: absolute; width: 100%; height: 100%; top: 0; left: 0; color: #666; font-family: RaceBox-Regular; padding: 5px 16px 0 16px; font-size: 0.8em; height: auto; transition: height 0.1s, padding 0.1s, font-size 0.1s; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; user-select: none; }

section.checkout .form div.row input.full-placeholder + label { font-size: 1.2em; padding: 13px 15px 13px 15px; height: 48px; }

section.checkout .form div.row select { height: 48px; }

section.checkout .form div.row select + label { display: none; }

section.checkout .form div.row.subregion-select select, section.checkout .form div.row select.country-select { width: 100%; }

section.checkout .form div.row.invalid { border: 1px solid red; }

section.checkout .form div.row input[readonly], section.checkout .form div.row select[readonly] { background-color: #E0E0E0; }

section.checkout .form div.row input[readonly]:focus, section.checkout .form div.row select[readonly]:focus { border-color: #808186; box-shadow: none; }

section.checkout .form div.row input, section.checkout .form div.row select { margin: 0; }

section.checkout .form .country-specific { display: none; }

section.checkout .form input[type~=text]:required, section.checkout .form input[type~=text]:valid, section.checkout .form input[type~=email]:required, section.checkout .form input[type~=email]:valid, section.checkout .form input[type~=number]:required, section.checkout .form input[type~=number]:valid, section.checkout .form input[type~=tel]:required, section.checkout .form input[type~=tel]:valid { background-position: right 5px top 50%; background-repeat: no-repeat; padding-right: 20px; transition: background-image 0.2s ease-in-out; }

section.checkout .form input[type~=text]:required, section.checkout .form input[type~=email]:required, section.checkout .form input[type~=number]:required, section.checkout .form input[type~=tel]:required { background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="16"><text x="0" y="21" font-size="24px" font-family="sans-serif" fill="%23ea2127">*</text></svg>'); }

section.checkout .form input[type~=text]:required:valid, section.checkout .form input[type~=email]:required:valid, section.checkout .form input[type~=number]:required:valid, section.checkout .form input[type~=tel]:required:valid { background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><text x="0" y="16" font-size="24px" font-family="sans-serif" fill="green">✓</text></svg>'); }

section.checkout .form input, section.checkout .form select { margin: 0; }

section.checkout .form .phone-input { display: flex; }

section.checkout .form .phone-input input[type~=tel] { flex: 1 1; }

section.payment h3 { margin: 10px 0; }

section.payment #paypal-button-container { position: relative; z-index: 0; }

section.payment .cbcontainer.pm { margin: 20px 0; }

section.payment .pm-content { display: none; margin: 20px 0; }

section.payment #card-element { margin: 20px 0; border: 1px solid #808186; padding: 13px 15px; }

#discount-code-modal > div { width: 320px; }

#discount-code-modal > div input { width: 100%; margin: 0; }

#discount-code-modal > div form > div { margin: 10px 0; display: flex; justify-content: space-between; align-items: center; }

#discount-code-modal > div form > div button { margin: 0; vertical-align: baseline; }

#discount-code-modal > div form > div .status span { display: none; }

#discount-code-modal > div form > div .status.checking .checking, #discount-code-modal > div form > div .status.invalid .invalid, #discount-code-modal > div form > div .status.accepted .accepted { display: inline-block; }

.modal-container > div { max-width: 500px; }

#address-confirmation-modal a.back { font-size: 1.2em; font-family: RaceBox-Regular; vertical-align: bottom; box-sizing: border-box; color: #FFF; display: inline-block; padding: 6px 30px; box-sizing: border-box; height: 34px; line-height: 110%; border-radius: 18px; background: #ea2127; border: 1px solid #ea2127; }

#address-confirmation-modal a.back:hover { text-decoration: none; }

section.buy .distributors-container > div { display: flex; flex-flow: row wrap; align-items: stretch; justify-content: space-between; }

section.buy .distributors-container > div > a { display: grid; row-gap: 10px; column-gap: 20px; grid-template-rows: 26px auto; max-width: 400px; padding: 10px; }

section.buy .distributors-container > div > a:hover { text-decoration: none; background: #F0F0F0; }

section.buy .distributors-container > div > a img { grid-column: 1; grid-row: 1 / span 2; max-height: 150px; max-width: 150px; }

section.buy .distributors-container > div > a strong { grid-row: 1; grid-column: 2; display: block; color: #2c2c2c; }

section.buy .distributors-container > div > a em { grid-row: 2; grid-column: 2; display: block; }

section.buy .limited-time-offer { font-size: 120%; color: #ea2127; }

section.buy strong.holiday-delays { color: #ea2127; }

section.buy .price-note { font-style: oblique; }

section.buy .exclusive-distributor img { max-width: 100%; margin: 10px 0; }

section.buy #checkout-form { background: #f1f1f3; padding: 10px; }

section.buy #checkout-form .quantity-input-out { display: flex; flex-flow: row nowrap; justify-content: center; align-items: center; }

section.buy #checkout-form .quantity-input-out > span { margin: 0 5px; }

section.buy #checkout-form .quantity-input-out .quantity-input button, section.buy #checkout-form .quantity-input-out .quantity-input input { margin: 0; vertical-align: top; }

section.buy #checkout-form .quantity-input-out .quantity-input input { border-left: none; border-right: none; width: 70px; }

section.buy #checkout-form > div { text-align: center; }

section.buy #checkout-form > * { margin: 10px 0; }

section.buy #checkout-form .quantity-limit { margin: 0; padding: 0 10px; font-style: italic; }

@media (min-width: 800px) { #mini-cart { bottom: -200px; } }

#mini-cart .right { width: 33%; }

.secure-checkout { margin-top: 40px; text-align: center; }

/*# sourceMappingURL=store.css.map */