/* HTML 5 Reset - Provided by: https://github.com/murtaugh/HTML5-Reset */

a, hr {
    padding: 0
}

a, button, input, select, textarea {
    margin: 0
}

article, aside, details, figure, footer, header, hr, nav, section, summary {
    display: block
}

abbr, address, article, aside, audio, b, blockquote, body, body div, caption, cite, code, dd, del, details, dfn, dl, dt, em, fieldset, figure, footer, form, h1, h2, h3, h4, h5, h6, header, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, samp, section, small, span, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font-weight: 400;
    vertical-align: baseline;
    background: 0 0
}

input[type=checkbox], th {
    vertical-align: bottom
}

strong, th {
    font-weight: 700
}

html {
    box-sizing: border-box;
    overflow-y: scroll
}

*, :after, :before {
    box-sizing: inherit
}

embed, img, object {
    max-width: 100%
}

ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

    blockquote:after, blockquote:before, q:after, q:before {
        content: '';
        content: none
    }

a {
    font-size: 100%;
    vertical-align: baseline;
    background: 0 0
}

del {
    text-decoration: line-through
}

abbr[title], dfn[title] {
    border-bottom: 1px dotted #000;
    cursor: help
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    font: 100%
}

td {
    font-weight: 400;
    vertical-align: top
}

hr {
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0
}

input, select {
    vertical-align: middle
}

pre {
    white-space: pre;
    white-space: pre-wrap;
    white-space: pre-line;
    word-wrap: break-word
}

input[type=radio] {
    vertical-align: text-bottom
}

.ie7 input[type=checkbox] {
    vertical-align: baseline
}

.ie6 input {
    vertical-align: text-bottom
}

input, select, textarea {
    font: 99% sans-serif
}

small {
    font-size: 85%
}

td, td img {
    vertical-align: top
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative
}

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

code, kbd, pre, samp {
    font-family: monospace,sans-serif
}

.clickable, button, input[type=button], input[type=file], input[type=submit], label {
    cursor: pointer
}

button, input[type=button] {
    width: auto;
    overflow: visible
}

.ie7 img {
    -ms-interpolation-mode: bicubic
}

.clearfix:after, .clearfix:before {
    content: "\0020";
    display: block;
    height: 0;
    overflow: hidden
}

.clearfix:after {
    clear: both
}

.clearfix {
    zoom: 1
}


body {
    /*font-family: arial;*/
    font-size: 1rem;
    color: #404041;
}

@media only screen and (min-width : 900px) {
    body {
        font-size: 0.8rem;
    }
}

.checkout_tips_call a {
    color: #404041;
    cursor: text;
}

h1 {
    font-size: 2rem;
}

h2 {
    font-size: 1.4rem;
}

a {
    text-decoration: none;
}

.center {
    text-align: center;
}

.float_right {
    float: right;
}

section {
    clear: both;
    margin-bottom: 40px;
}

main {
    padding: 1rem;
    /*max-width: 660px;*/
    margin: 0 auto;
    overflow: hidden;
}

.main_inner {
    max-width: 660px;
    margin: 0 auto;
}

@media only screen and (min-width : 900px) {

    #sbs_main_outer {
        display: flex;
        flex-wrap: nowrap;
    }
    
    main {
        order: 1;
        margin-top: 50px;
        width: 100%;
    }
}

/*@media only screen and (min-width : 1150px) {
    main {
        float: right;
        margin-right: 48%;
        margin-top: 80px;
    }
}

@media only screen and (min-width : 1250px) {
    main {
        margin-right: 44%;
        margin-top: 90px;
    }
}*/
/*
@media only screen and (min-width : 1350px) {
    main {
        margin-right: 40%;
        margin-top: 100px;
    }
}

@media only screen and (min-width : 1550px) {
    main {
        margin-right: 36%;
        margin-top: 110px;
    }
}*/

/* ========================= */
/* Input =================== */
/* ========================= */

.input_container {
    position: relative;
    padding: 2px;
}

.input_container2 {
    overflow: hidden;
}

.input_container3 {
    overflow: hidden;
}

input, select, textarea {
    border: 1px solid #cacaca;
    border-radius: 4px;
    width: 100%;
    padding: 22px 20px 7px 20px;
    margin-top: 5px;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    -webkit-appearance: none;
    appearance: none;
    -moz-appearance: none;
}

/*select {
    padding: 22px 20px 7px 15px;
}*/

.select_no_label {
    padding: 13px 20px 13px 15px;
}

.select_down_arrow {
    position: absolute;
    top: 20px;
    right: 15px;
    font-size: 1.2rem !important;
    pointer-events: none;
}

textarea {
    height: 100px;
    padding: 10px 10px 10px 10px;
}

    input:focus, select:focus, textarea:focus {
        outline: none;
    }

select::-ms-expand {
    display: none;
}

.address_form_input_container{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#shipping_telephony_container, #billing_telephony_container{
    display: inline-flex;
}

#shipping_wo_states.address_form_input_container_item,
#shipping_w_states.address_form_input_container_item,
#billing_w_states.address_form_input_container_item,
#billing_wo_states.address_form_input_container_item,
#shipping_telephony_container.address_form_input_container_item,
#billing_telephony_container.address_form_input_container_item{
    flex-wrap: wrap;
    justify-content: space-between;
}

#shipping_postcode_container,
#shipping_mobile_container,
#shipping_telephone_container,
#billing_postcode_container,
#billing_mobile_container,
#billing_telephone_container,
#billing_zipcode_container{
    flex-wrap: wrap;
}

.address_form_input_container .address_form_input_container_item{
    width: 100%;
}

.address_form_input_container_item input{
    max-height: 45px;
}


@media only screen and (min-width : 1000px) {

    .address_form_input_container .address_form_input_container_item{
        width: 49%;
    }

    .address_form_input_container .address_form_input_container_item.input_container_full_width{
        width: 100%;
    }

    /*.input_container2 .input_container {
        display: inline-block;
        width: 49%;
        margin-left: 2%;
        float: left;
    }

    .input_container2 .input_container:nth-of-type(2n+1) {
        margin-left: 0% !important;
    }*/
}


/* ========================= */
/* Labels ================== */
/* ========================= */

label {
    -webkit-transition: all 0.25s ease;
    -moz-transition: all 0.25s ease;
    -ms-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all 0.25s ease;
    position: absolute;
    top: 22px;
    left: 20px;
    color: #909090;
}

.label_select {
    top: 11px;
    font-size: 0.7rem;
    text-indent: 2px;
}

.label_move {
    top: 11px;
    font-size: 0.7rem;
    text-indent: 2px;
}



/* ========================= */
/* Buttons ================= */
/* ========================= */


button, input[type="button"], .button {
    height: 50px;
    line-height: 50px;
    padding: 0px 20px;
    border: none;
    border-radius: 4px;
    margin-top: 20px;
    float: right;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    position: relative;
    -webkit-appearance: none;
    width: 100%;
}

.button_container {
    position: relative;
    display: block;
    width: 100%;
}

@media only screen and (min-width : 900px) {
    button, input[type="button"], .button {
        width: auto;
    }

    .button_container {
        width: auto;
        display: inherit;
    }
}

.button_container_payment input {
    float: none;
}

.spinner {
    width: 15px;
    height: 15px;
    position: relative;
    display: none;
    position: absolute;
    right: 0;
    margin-top: 22px;
    margin-right: 2px;
    z-index: 4;
}

.double-bounce1, .double-bounce2 {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #fff;
    opacity: 0.6;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
    animation: sk-bounce 2.0s infinite ease-in-out;
}

.double-bounce2 {
    -webkit-animation-delay: -1.0s;
    animation-delay: -1.0s;
}

@-webkit-keyframes sk-bounce {
    0%, 100% {
        -webkit-transform: scale(0.0)
    }

    50% {
        -webkit-transform: scale(1.0)
    }
}

@keyframes sk-bounce {
    0%, 100% {
        transform: scale(0.0);
        -webkit-transform: scale(0.0);
    }

    50% {
        transform: scale(1.0);
        -webkit-transform: scale(1.0);
    }
}

.load_start .spinner {
    display: inline-block !important;
}


/* ========================= */
/* Breadcrumbs ============= */
/* ========================= */

.breadcrumbs {
    margin-bottom: 2rem;
}

.breadcrumbs ul {
    display: flex;
    flex-wrap: nowrap;
}


.breadcrumbs ul li::after {
    content: "•";
    margin: 0px 10px;
    color: #ccc;
}

.breadcrumbs ul li:last-child::after {
    content: none;
}

.breadcrumbs span {
    cursor: pointer;
}

.breadcrumbs ul li p {
    display: none;
}

@media only screen and (min-width : 900px) {
    .breadcrumbs ul li:not(:first-child) i {
        display: none !important;
    }

    .breadcrumbs ul li p {
        display: inline-block;
    }
}

/* ========================= */
/* Alerts ================== */
/* ========================= */

.alert {
    margin-top: 5px;
    color: #C53333;
    display: none;
}

.alert_focus {
    box-shadow: 0px 0px 0px 1px #C53333;
    border-color: #C53333;
    outline: none;
}


.vat_number_alert {
    clear: both;
}


/* ========================= */
/* Misc or Hidden ========== */
/* ========================= */

.section_float_left {
    float: left;
}

.shipping_usa, #shipping_information, #account_guest_active, #billing_address, #shipping_options, #payment {
    display: none;
}

#shipping_options_wait {
    display: none;
    width: 100%;
    text-align: center;
}

.county-hidden {
    float: right !important;
}

/* =========================================================================== */
/* Start of Header CSS ======================================================= */
/* =========================================================================== */

/* ========================= */
/* Header ================== */
/* ========================= */

header {
    height: 50px;
    line-height: 50px;
    background-color: #404041;
    color: #FFF;
    width: 100%;
}

.header_container {
    width: 95%;
    margin: 0 auto;
}

.store_name {
    float: left;
    max-width: 50%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1rem;
}

    .store_name a {
        color: #FFF;
    }



.your_cart_button {
    float: right;
    font-size: 1.8rem;
    cursor: pointer;
    max-width: 45%;
    height: 50px;
    line-height: 50px;
}

    .your_cart_button i {
        float: right;
        height: 50px;
        line-height: 50px;
    }

    .your_cart_button span {
        font-size: 0.8rem;
        float: right;
        margin-right: 5px;
        height: 50px;
        line-height: 50px;
    }

.your_cart_button_chev {
    margin-left: 5px;
    font-size: 0.8rem !important;
}

@media only screen and (min-width : 900px) {

    .your_cart_button {
        display: none;
    }


    .store_name {
        font-size: 2rem;
    }

    header {
        z-index: 9998;
    }
}





/* =========================================================================== */
/* Start of Cart CSS ======================================================= */
/* =========================================================================== */

/* ========================= */
/* Your Cart =============== */
/* ========================= */

.your_cart {
    background-color: #F5F5F5;
    display: none;
}

.your_cart_items {
    padding: 1rem;
    border-bottom: 1px solid #eaeaea;
    position: relative;
}

.your_cart_edit_button {
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    z-index: 999;
}

.your_cart_item {
    overflow: hidden;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    margin-bottom: 10px;
    position: relative;
    align-items: center;
}

.your_cart_item:last-child {
    margin-bottom: 0px;
}

.your_cart_item_left {
    width: 70%;
}

.your_cart_item_right {
    width: 28%;
    text-align: right;
    align-items: center;
    font-size: 1rem;
}

.your_cart_image_container {
    float: left;
    margin-right: 2%;
    max-width: 75px;
    max-height: 75px;
    border-radius: 4px;
    width: 20%;
}

.your_cart_image {
    border-radius: 4px;
    border: 1px solid #ccc;
    width: 100%;
}

.your_cart_item_text {
    float: left;
    width: 78%;
}

.your_cart_item_quantity {
    padding: 2px 5px;
    display: inline-block;
    border-radius: 4px;
    margin-bottom: 5px;
    font-size: 0.6rem;
    opacity: 0.7;
}

.your_cart_item_name {
    font-size: 0.8rem;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    letter-spacing: 0.5px;
    line-height: 18px;
}

/* Your Cart Button */

.your_cart_desktop_button {
    display: none;
}


@media only screen and (min-width : 600px) {
    .your_cart_item_quantity {
        padding: 3px 5px;
        font-size: 0.7rem;
    }

    
}

@media only screen and (min-width : 900px) {

    .your_cart_desktop_button {
        height: 50px;
        line-height: 50px;
        background-color: #FFF;
        display: block;
        padding: 0px 1rem;
        border-bottom: 1px solid #eaeaea;
        position: relative;
        cursor: pointer;
        font-size: 1rem;
    }

    .your_cart_desktop_button i {
        position: absolute;
        right: 1rem;
        line-height: 50px;
    }

    .your_cart_button {
        display: none;
    }

    .your_cart {
        width: 100%;
        display: inline !important;
        max-width: 540px;
        border-left: 1px solid #eaeaea;
        border-bottom: none;
        overflow-y: auto;
        padding-bottom: 50px;
        order: 2;
        min-height: calc(100vh - 50px);
    }

    .your_cart_items {
        display: block;
        background-color: #FFF;
    }
}





/* Checkout Total */

.checkout_total {
    padding: 1rem;
    overflow: hidden;
}

.checkout_total_item {
    height: 30px;
    line-height: 30px;
    overflow: hidden;
    border-bottom: 1px solid #eaeaea;
}

.checkout_total_item_total {
    border-bottom: none;
    height: auto;
    line-height: inherit;
}

.checkout_total_item_left {
    float: left;
    display: inline-block;
}

.checkout_total_item_right {
    float: right;
    display: inline-block;
    font-size: 1rem;
}

.checkout_total_item:last-child .checkout_total_item_right {
    font-weight: bold;
}

.checkout_total_total {
    font-weight: bold;
    font-size: 1.8rem;
}

.checkout_total_item_total .checkout_total_item_left {
    line-height: 40px;
    height: 40px;
}









/* =========================================================================== */
/* Start of Account2 CSS ======================================================= */
/* =========================================================================== */


.check {
    cursor: pointer;
    height: 40px;
    line-height: 40px;
    padding: 0px 5px;
    border-radius: 4px;
    margin: 5px 2px 0px 2px;
    display: block;
    clear: both;
    border: 1px solid #ddd;
}

.checkbox {
    border-radius: 4px;
    height: 15px;
    width: 15px;
    background-color: #ddd;
    position: relative;
    float: left;
    margin-right: 10px;
    margin-top: 12px;
}

@media only screen and (min-width : 900px) {
    .check {
        border: none !important;
        float: none;
        padding: 0px;
        margin: 0px;
        margin-top: 5px;
        border-radius: inherit;
        height: inherit;
        line-height: inherit;
    }

    .checkbox {
        margin-top: 0px;
    }
}

.check:hover .checkbox {
    background-color: #CCC;
}

.checkbox_selected::after {
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 1px;
    background-color: #FFF;
    content: '';
    top: 5px;
    left: 5px;
}

.account_options {
    overflow: hidden;
}

.account_login_forgotten {
    float: left;
    display: inline-block;
    margin-top: 5px;
}

.account_register_prompt {
    margin-top: 5px;
    border-radius: 4px;
    padding: 10px;
}

.account_login, .account_register {
    display: none;
}

.welcome_message_guest, .welcome_message_logged_in{
    display: none;
    margin-bottom: 20px;
    line-height: 20px;
    border: 1px solid #eaeaea;
    background-color: #f5f5f7;
    border-radius: 4px;
    padding: 10px;
}

.welcome_message_guest_top span, .welcome_message_logged_in_top span{
    font-weight: bold;
}

.welcome_message_guest a, .welcome_message_logged_in a{
    cursor: pointer;
}




/* =========================================================================== */
/* Start of Shipping CSS ======================================================= */
/* =========================================================================== */


/* Billing Address */
#billing_address {
    margin-bottom: 0px;
}

.billing_address_check {
    float: left;
    margin-top: 20px;
    margin-bottom: 20px;
    cursor: pointer;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 10px;
    width: 100%;
}

@media only screen and (min-width : 900px) {
    .billing_address_check {
        border: none !important;
        padding: 0px;
        width: auto;
    }
}

.billing_address_checkbox {
    border-radius: 4px;
    height: 15px;
    width: 15px;
    background-color: #ddd;
    position: relative;
    float: left;
    margin-right: 10px;
}

.billing_address_check:hover .billing_address_checkbox {
    background-color: #CCC;
}

.billing_address_checkbox_selected::after {
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 1px;
    background-color: #FFF;
    content: '';
    top: 5px;
    left: 5px;
}



/* =========================================================================== */
/* Start of Shipping Options CSS ============================================= */
/* =========================================================================== */

/* Shipping Saved Addresses */

.saved_address {
    margin-top: 30px;
    overflow: hidden;
    display: none;
}

.saved_address h4 {
    line-height: 30px;
    border-radius: 4px;
    padding: 0px 10px;
}

.saved_address h4:last-child {
    margin-top: 5px;
}

.saved_address_item {
    border: 1px solid #eaeaea;
    padding: 10px;
    font-style: italic;
    line-height: 18px;
    border-radius: 4px;
    margin-bottom: 10px;
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

.saved_address_item:hover {
    box-shadow: 0px 0px 3px 2px #f5f5f5;
}

.saved_address_item:hover::after {
    opacity: 0.5;
}

.saved_address_item::after {
    content: '';
    position: absolute;
    bottom: -1px;
    right: 0;
    left: 0;
    border-top: 400px solid rgba(0, 255, 0, 0);
    -moz-transform: scale(.9999);
    z-index: 3;
    opacity: 0.2;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

.saved_address_item_select {
    position: absolute;
    z-index: 10;
    height: 25px;
    line-height: 25px;
    padding: 0px 10px;
    border-radius: 4px;
    bottom: 10px;
    right: 10px;
}

.saved_address_add_new {
    width: 100%;
    text-align: center;
    margin: 20px 0px;
    clear: both;
    position: relative;
}

.saved_address_add_new::before {
    position: absolute;
    top: 5px;
    height: 2px;
    width: 100%;
    background-color: #ddd;
    content: '';
    left: 0;
    z-index: 1;
}

.saved_address_add_new span {
    background-color: white;
    padding: 0px 10px;
    z-index: 2;
    position: relative;
    position: relative;
}

.saved_address_item_selected {
    box-shadow: 0px 0px 3px 2px #f5f5f5 !important;
}

.saved_address_item_selected::after {
    opacity: 0.8 !important;
}

.saved_address_item p {
    position: relative;
    z-index: 4;
}

.saved_address_item p::after {
    content: ','
}

.saved_address_item p:last-child::after {
    content: none;
}

.saved_address_item_more {
    text-align: center;
    cursor: pointer;
    border-radius: 4px;
    height: 30px;
    line-height: 30px;
}

.add_new_address {
    border-radius: 4px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
    height: 30px;
    line-height: 30px;
    font-size: 0.8rem;
    clear: both;
    cursor: pointer;
    margin-bottom: 10px;
}

@media only screen and (min-width : 1000px) {
    .saved_address_item_more {
        display: none;
    }

    #saved_address_list{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .saved_address_item {
        width: 48%;
        min-height: 205px;
    }

    .saved_address_item p {
        overflow: hidden;
        height: 18px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .saved_address_item:nth-of-type(2n+1) {
        margin-left: 0%;
    }

    .add_new_address {
        width: 30%;
        display: block;
    }
}



.shipping_billing {
    overflow: hidden;
    margin-bottom: 20px;
}

/* Shipping Selected Address */


.selected_shipping_address {
    background-color: #f5f5f5;
    padding: 10px;
    border-radius: 4px;
    border: 1px solid #eaeaea;
    margin-bottom: 10px;
    position: relative;
    line-height: 18px;
}

.selected_shipping_address h2 {
    margin-bottom: 5px;
    line-height: initial;
}

.selected_shipping_address_edit_icon {
    cursor: pointer;
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: 1.2rem;
    width: 40px;
    height: 40px;
    text-align: center;
    line-height: 40px;
}

.selected_shipping_address p {
    display: inline;
}

.selected_shipping_address span:empty {
    display: none !important;
}

.selected_shipping_address span {
    display: block !important;
    font-style: italic;
}


.selected_shipping_address span::after, .selected_billing_address span::after {
    content: ','
}

.selected_shipping_address span:last-child::after, .selected_billing_address span:last-child::after {
    content: none;
}




/* Billing Selected Address */

.selected_billing_address {
    background-color: #f5f5f5;
    padding: 10px;
    border-radius: 4px;
    border: 1px solid #eaeaea;
    margin-bottom: 20px;
    display: none;
    width: 100%;
    float: left;
    clear: none;
    position: relative;
    line-height: 18px;
}

.selected_billing_address h2 {
    margin-bottom: 5px;
    line-height: initial;
}

.selected_billing_address_edit {
    cursor: pointer;
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: 1.2rem;
    width: 40px;
    height: 40px;
    text-align: center;
    line-height: 40px;
}

.selected_billing_address p {
    display: inline;
}

.selected_billing_address span:empty {
    display: none !important;
}

.selected_billing_address span {
    display: block !important;
    font-style: italic;
}

/* Billing */

#billing_address {
    margin-bottom: 30px;
}

.billing_address_container h2 {
    display: none;
}

@media only screen and (min-width : 1250px) {
    .selected_shipping_address {
        width: 48%;
        display: inline-block;
        float: left;
        margin-bottom: 30px;
    }

    .billing_address_container {
        width: 48%;
        display: inline-block;
        float: left;
        margin-bottom: 30px;
        margin-left: 4%;
    }

        .billing_address_container h2 {
            display: block;
        }
}

/* Shipping Options */

.shipping_options h2 {
    margin-bottom: 5px;
}

.shipping_options_item {
    display: block;
    padding: 0px 10px;
    margin-bottom: 10px;
    cursor: pointer;
    background-color: #FFF;
    min-height: 40px;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.shipping_option_item_circle, .shipping_option_item_name, .shipping_option_item_price {
    display: inline-block;
}

.shipping_option_item_name {
    max-width: 60%;
    line-height: 25px;
}

@media only screen and (min-width : 650px) {
    .shipping_option_item_name {
        max-width: 80%;
    }
}

.shipping_option_item_image {
    max-height: 22px;
    position: relative;
    margin-right: 10px;
    top: 5px;
    display: none;
}


@media only screen and (min-width : 1250px) {
    .shipping_option_item_image {
        display: inline-block;
    }
}

.shipping_option_item_circle {
    border-radius: 4px;
    height: 15px;
    width: 15px;
    background-color: #ddd;
    margin-right: 10px;
    margin-top: 10px;
    position: relative;
    top: 3px;
}

.shipping_option_item_price {
    float: right;
    font-weight: bold;
    margin-top: 10px;
}

.shipping_options_item:hover .shipping_option_item_circle {
    background-color: #CCC;
}

.shipping_options_item_selected::after {
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 1px;
    background-color: #FFF;
    content: '';
    top: 5px;
    left: 5px;
}

.shipping_options_item:hover .shipping_options_item_selected {
    background-color: #1ea1ca;
}




/* =========================================================================== */
/* Start of Payments CSS ===================================================== */
/* =========================================================================== */


.checkbox_alert {
    background-color: #C53333 !important;
}

/* Additional Instructions */

#additional_instructions {
    margin-bottom: 30px;
}

.additional_instruction_container {
    display: none;
}

.payment_terms {
    margin: 25px 0;
    overflow: hidden;
}

.payment_terms_text {
    width: 80%;
    float: left;
}

.payment_terms_check, .payment_instructions_check {
    margin-top: 5px;
    cursor: pointer;
}

.payment_terms_check {
    border: 1px solid #ccc;
    overflow: hidden;
    padding: 10px;
    border-radius: 4px;
}

.payment_terms_checkbox, .payment_instructions_checkbox {
    border-radius: 4px;
    height: 15px;
    width: 15px;
    background-color: #ddd;
    position: relative;
    float: left;
    margin-right: 10px;
}

.payment_terms_check:hover .payment_terms_checkbox, .payment_instructions_check:hover .payment_instructions_checkbox {
    background-color: #CCC;
}

.payment_terms_checkbox_selected::after, .payment_instructions_checkbox_selected::after {
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 1px;
    background-color: #FFF;
    content: '';
    top: 5px;
    left: 5px;
}

.payment_hear, .payment_vat {
    margin-top: 30px;
    overflow: hidden;
}

    .payment_hear select {
        width: inherit;
    }


.payment_options {
    margin-top: 10px;
}

/* VAT */
.valid_vat {
    padding: 10px;
    overflow: hidden;
    border-radius: 4px;
    display: none;
    clear: both;
}

.valid_vat_text {
    display: inline-block;
    float: left;
    line-height: 20px;
}

.remove_vat {
    height: 20px;
    line-height: 20px;
    width: 20px;
    background-color: #C53333;
    color: #FFF;
    text-align: center;
    float: right;
    display: inline-block;
    cursor: pointer;
    border-radius: 4px;
}


/* =============================== */
/* VAT Number button next to input */
/* =============================== */

.input_container_joint {
    position: relative;
}

.button_container_joint {
    position: absolute;
    top: 0;
    right: 0;
}

    .button_container_joint input {
        margin-top: 6px;
        height: 50px;
        line-height: 50px;
        border-top-left-radius: 0px;
        border-bottom-left-radius: 0px;
    }

@media only screen and (min-width : 900px) {
    .button_container_joint input {
        height: 45px;
        line-height: 45px;
    }
}



/* Payment Items */

.payment_item {
    border-left: 3px solid #eaeaea;
    border-right: 3px solid #eaeaea;
    border-bottom: 1px solid #eaeaea;
    background-color: #F5F5F5;
    overflow: hidden;
    cursor: pointer;
    position: relative;
}

.payment_item:first-child {
    border-top: 3px solid #eaeaea;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.payment_item:last-child {
    border-bottom: 3px solid #eaeaea;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

.payment_item_top, .payment_item_content {
    padding: 1rem;
    overflow: hidden;
}

/* Toggle */

.payment_item_toggle_container {
    width: 10%;
    display: inline-block;
    float: left;
}

.payment_item_toggle {
    border-radius: 4px;
    height: 15px;
    width: 15px;
    background-color: #ddd;
    position: relative;
    margin-top: 10px;
    margin-bottom: 10px;
}

@media only screen and (min-width : 900px) {
    .payment_item_toggle {
        margin-top: 20px;
        margin-bottom: 0px;
    }
}

.payment_item:hover .payment_item_toggle {
    background-color: #CCC;
}

/* Info */

.payment_item_info {
    width: 90%;
    display: inline-block;
    float: left;
    line-height: 15px;
    margin-top: 10px;
}

    .payment_item_info p {
        display: none;
    }


@media only screen and (min-width : 900px) {
    .payment_item_info {
        width: 80%;
        margin-top: 0px;
    }

        .payment_item_info p {
            display: block;
        }
}

@media only screen and (min-width : 1000px) {
    .payment_item_info {
        width: 70%;
    }
}

@media only screen and (min-width : 1100px) {
    .payment_item_info {
        width: 60%;
    }
}

/* Images */

.payment_item_images {
    position: absolute;
    top: 5px;
    right: 5px;
}

    .payment_item_images img {
        max-height: 20px;
    }

.payment_item_images_notselected {
    -webkit-filter: grayscale(1);
    -webkit-filter: grayscale(100%);
    filter: gray;
    filter: grayscale(100%);
}

@media only screen and (min-width : 1000px) {
    .payment_item_images {
        position: inherit;
        top: 0;
        right: 0;
        display: inline-block;
        float: left;
        margin-top: 15px;
        width: 20%;
        text-align: right;
    }

        .payment_item_images img {
            max-height: none;
            width: 90%;
            max-width: 120px;
        }
}

@media only screen and (min-width : 1100px) {
    .payment_item_images {
        width: 30%;
    }
}


/* Card Details */

.payment_item_content {
    clear: both;
    border-top: 1px solid #eaeaea;
    display: none;
}

.payment_item_content_selected {
    display: block;
}

.payment_card_cvc_post {
    overflow: hidden;
    margin-bottom: 10px;
}

.payment_card_input3 {
    overflow: hidden;
}

.payment_card_month, .payment_card_cvc {
    width: 42.5%;
    display: inline-block;
    float: left;
    margin-left: 5%;
}

.payment_card_month {
    width: 52.5%;
}

.payment_card_month {
    margin-left: 0% !important;
}

input[type='number'] {
    -moz-appearance: textfield;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

@media only screen and (min-width : 1000px) {
    .payment_card_month {
        width: 140px;
    }

    .payment_card_cvc {
        width: 90px;
        margin-left: 2%;
    }

    .payment_card_input3 {
        float: left;
        width: 55%;
    }

    .payment_card_postcode {
        float: right;
        width: 45%;
    }
}

/* Payment Redirect */

.payment_item_redirect {
    text-align: center;
}

    .payment_item_redirect button {
        float: none;
    }

/* Payment Item Selected */

.payment_item_selected {
    background-color: #FFF;
}

.payment_item_toggle_selected::after {
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 1px;
    background-color: #FFF;
    content: '';
    top: 5px;
    left: 5px;
}



/* Initial Error State */

#initial_error {
    margin-bottom: 10px;
    display: none;
}

.initial_error {
    background-color: #C53333;
    color: #FFF;
    border-radius: 4px;
    padding: 10px;
    text-align: left;
    margin-bottom: 10px;
}

#initial_error .button {
    float: none;
    display: inline-block;
}



/* Discount Codes */

.coupon_code_add {
    font-size: 0.7rem;
    float: right;
    cursor: pointer;
}

.checkout_coupon_all {
    display: none;
    width: 100%;
    clear: both;
}

.checkout_coupon {
    margin-top: 30px;
    overflow: hidden;
}

    .checkout_coupon button {
        margin-bottom: 10px;
    }

#coupon_list {
    clear: both;
    margin-top: 20px;
}

    #coupon_list > div {
        clear: both;
        border: 1px solid #ddd;
        background-color: #FFF;
    }

.checkout_coupon_added_item {
    border-bottom: 1px solid #ddd;
    padding: 10px;
}

    .checkout_coupon_added_item:last-child {
        border-bottom: none;
    }

.checkout_coupon_added_code strong {
    font-size: 1rem;
}

.checkout_coupon_added_code a {
    font-size: 0.7rem;
    float: right;
}

.checkout_coupon_added_description {
    margin-top: 5px;
}

/* Terms and Condition alert */

.text_alert {
    color: #C53333;
}

/* Payment Failed */

.payment_failed {
    background-color: #C53333;
    color: #FFF;
    border-radius: 4px;
    padding: 10px;
    margin-top: 10px;
    display: none;
}


/* Shipping Error State */


#shipping_error, #billing_shipping_error {
    margin-bottom: 10px;
    display: none;
}
    /*
.shipping_error{
    background-color: #C53333;
    color: #FFF;
    border-radius: 4px;
    padding: 10px;
    text-align: left;
    margin-bottom: 10px;
}*/

    #shipping_error .button {
        float: none;
        display: inline-block;
    }

/* Pay By Other */

.pay_by_other {
    display: none;
}




.button_left {
    float: left;
}

.payment_item_redirect button {
    float: none;
}

/* Forgotten Password */
.account_forgotten_password {
    clear: both;
    display: none;
}

#account_forgotten_password_feedback, #forgotten_password_done {
    display: none;
}

/* Where did you hear */
#ddlWhereDidYouHear_input_container{
    max-width: 350px;
}
#ddlWhereDidYouHear {
    width: 100%;
}


@media only screen and (min-width : 1250px) {
    .selected_billing_address {
        width: 48%;
        margin-left: 4%;
    }
}




/* Checkout Tips */

.checkout_tips {
    border-bottom: 3px solid #f5f5f5;
    overflow: hidden;
    margin-bottom: 10px;
}

.checkout_tips_secure {
    display: inline-block;
    float: left;
}

.checkout_tips_call {
    display: inline-block;
    float: right;
}

    .checkout_tips_call span a i {
        margin-right: 5px;
    }

.checkout_tips span {
    line-height: 30px;
}




/* ==== Card Input Formatting ====*/

#stripe_cardname {
    text-transform: uppercase;
}

/* ==== Encrypted Image ====*/

.secure_image {
    display: none;
}

@media only screen and (min-width : 1250px) {
    .secure_image {
        max-width: 160px;
        opacity: 0.5;
        margin-top: 10px;
        display: inline-block;
    }
}


/* Accept Terms Failed */

.payment_failed input {
    border-radius: 4px;
    height: 15px;
    width: 15px;
    background-color: #fff;
    border: 1px solid #fff;
    position: relative;
    margin-right: 10px;
    padding: 0;
    cursor: pointer;
}

    .payment_failed input:hover {
        background-color: #ccc;
        border-color: #ccc;
    }

.payment_failed a {
    color: #FFF;
    text-decoration: underline;
}


/*  Stripe Card Image */
.stripe_cardimage {
    position: absolute;
    top: 14px;
    right: 10px;
    width: 50px;
    border: 1px solid #ddd;
    border-radius: 6px;
    display: none; /* starting point */
}

/* Footer links and copy */
.footer_information {
    clear: both;
    margin-top: 100px;
    width: 100%;
    display: inline-block;
    text-align: center;
}

    .footer_information span {
        margin-bottom: 5px;
        display: block;
    }

    .footer_information li {
        display: inline-block;
        margin: 0px 5px;
    }


.paypal-paylater-div {
    max-width: 380px;
    width: 100%;
    line-height: 35px;
}

.paypal-paylater-div1 {
    max-width: 380px;
    margin: 0 auto;
}

.paypal-paylater-container {
    display: flex;
    width: 100%;
}