.woocommerce-page .checkout-step-3 #shipping_method li input:checked+label:after, .woocommerce-page .checkout-step-3 #shipping_method li input[type="hidden"]+label:after {
    position: absolute;
    left: 5px;
    top: 5px;
    margin-top: 0;
    content: '';
    width: 11px;
    height: 11px;
    display: inline-block;
    vertical-align: sub;
    background: #666;
    background-size: contain;
}

.woocommerce-checkout h3, .woocommerce-checkout h4 {
    font-size: 21px;
    padding: 0;
    margin: 0;
    font-weight: bold;
    text-transform: uppercase;
}

.woocommerce-checkout .content {
    max-width: 100%;
    margin: 0 auto 50px auto;
}

.checkout-wrapper {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin: 0 0 40px 0;
}

.checkout-wrapper .required {
    display: none;
}

.checkout-wrapper .checkout-left {
    width: calc(50% - 10px);
    margin-right: 20px;
    background: #fff;
    padding: 25px;
}

.checkout-wrapper .checkout-right {
    width: calc(50% - 10px);
    background: #fff;
    padding: 25px 45px;
}

.checkout-right h4, .checkout-right>p {
    text-align: center;
    margin-top: 0;
}

.checkout-right>p {
    line-height: 1.3;
    margin-top: 5px;
}

.checkout-right h4 {
    text-transform: uppercase;
    color: #1D1D1B;
}

.checkout-wrapper .actions>a.button {
    background: #8dc63f;
    border-color: #8dc63f;
    font-family: "Oswald", sans-serif;
}

.button.white {
    background: #4a4a4a !important;
    border-color: #4a4a4a !important;
    color: #fff !important;
    font-family: "Oswald", sans-serif;
}

/* Notices */

.checkout-wrapper .woocommerce-NoticeGroup-checkout {
    position: absolute;
    width: 100%;
}

/* End Notices */

/* Coupon form */

.sidebar-coupon {
    position: relative;
    left: -30px;
    width: calc(100% + 40px);
    padding: 30px;
    border-top: 1px solid #e2e2e2;
    border-bottom: 1px solid #e2e2e2;
}

.sidebar-coupon .woocommerce-message {
    position: absolute;
    bottom: 5px;
    font-size: 10px;
}

.checkout_coupon {
    display: flex !important;
    align-items: center;
    zoom: 1 !important;
    overflow: visible !important;
    height: auto !important;
    justify-content: space-between;
}

.woocommerce-checkout .checkout_coupon .coupon-row {
    padding-top: 0;
    width: 68%;
}

.woocommerce-checkout .checkout_coupon .coupon-row:active, .woocommerce-checkout .checkout_coupon .coupon-row:focus, .woocommerce-checkout .checkout_coupon .coupon-row:focus-within {
    background: #fff;
}

.checkout_coupon button {
    height: 45px;
    line-height: 45px;
    padding: 0 50px;
    width: 30%;
}

.checkout_coupon .clear {
    display: none;
}

.checkout_coupon input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]) {
    padding: 0;
}

/* End coupon form */

/* Sidebar totals */

.sidebar-totals {
    position: relative;
    left: -20px;
    width: calc(100% + 40px);
}

.sidebar-totals .total-row {
    display: flex;
    border-top: 2px solid #f2f2f2;
    justify-content: space-between;
    padding: 20px;
    line-height: 1;
    font-weight: 600;
}

.sidebar-totals .total-row span.woocommerce-Price-amount.amount {
    font-weight: 600;
}

.sidebar-totals .total-row .label {
    text-transform: none;
}

.sidebar-totals .xoo-wsc-content {
    text-transform: none;
}

.sidebar-totals .xoo-wsc-content .xoo-wsc-img-col {
    max-width: 75px;
}

.sidebar-totals .xoo-wsc-product .size-woocommerce_thumbnail {
    display: block;
}

.sidebar-totals .xoo-wsc-content .xoo-wsc-product {
    padding: 20px;
    margin: 0;
}

.sidebar-totals .total-row .value {
    position: relative;
}

.sidebar-totals .woocommerce-remove-coupon {
    font-size: 0;
    text-decoration: none;
    right: -15px;
    top: 2px;
    position: absolute;
}

.sidebar-totals .woocommerce-remove-coupon:before {
    content: '(x)';
    font-size: 10px;
}

/* End sidebar totals */

/* Form fields */

.woocommerce-billing-fields input[placeholder], [placeholder], *[placeholder] {
    color: #1D1D1B !important;
}

.woocommerce-checkout .woocommerce {
    transition: opacity .2s ease;
    opacity: 0;
}

.woocommerce-page .form-row label {
    width: 100%;
    position: absolute;
    left: 0;
    display: block;
    padding: 0 8px;
    line-height: 13px;
    height: 18px;
    font-size: 10px;
    bottom: 22px;
    font-weight: normal;
}

form.woocommerce-ResetPassword.lost_reset_password p.form-row:nth-child(4) {
    border: none;
    padding: 0;
}

.woocommerce-page .form-row {
    position: relative;
    display: block;
    padding: 8px;
    margin: 10px 0px;
    width: 100%;
    border: 2px solid #f2f2f2;
    align-items: center;
    position: relative;
    z-index: 0;
    background: transparent;
    font-size: 14px;
    clear: both;
}

.woocommerce-form-register p.woocommerce-FormRow.form-row {
    padding: 0;
    border: 0;
}

.woocommerce-form-login p.form-row:nth-child(3) {
    border: none;
    padding: 0;
}

.woocommerce-page .form-row input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]) {
    border: 0;
    padding: 0;
    font-size: 13px;
    padding-top: 14px;
    line-height: 30px;
    height: 32px;
    width: 100%;
}

select:-webkit-autofill, select:-webkit-autofill:hover, select:-webkit-autofill:focus, select:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px white inset !important;
}

.woocommerce-page .form-row.not-valid, .woocommerce-page .form-row.not-valid label, .woocommerce-page .form-row.not-valid select {
    color: red;
    border-color: red;
}

.woocommerce-page .form-row.empty label {
    bottom: 12px;
    font-size: 12px;
    font-style: italic;
    color: #999;
}

.woocommerce-page .form-row#billing_country_field select, .woocommerce-page .form-row#billing_state_field select, .woocommerce-page .form-row#shipping_country_field select, .woocommerce-page .form-row#shipping_state_field select {
    padding: 0;
    padding-top: 14px;
    width: 100%;
    height: 32px;
    background: transparent url(../images/select-expand.svg) no-repeat right bottom 3px;
    background-size: 12px;
    font-size: 13px;
    font-weight: normal;
}

.woocommerce-page .form-row-first {
    width: calc(50% - 10px);
    float: left;
    clear: left;
}

.woocommerce-page .form-row-last {
    width: calc(50% - 10px);
    float: right;
    clear: right;
}

#billing_password_field {
    margin-bottom: 10px;
}

.address-field strong {
    cursor: not-allowed;
    font-weight: normal;
    font-size: 13px;
    padding-top: 8px;
    line-height: 30px;
    height: 32px;
    display: block;
}

#billing_password_field:after {
    content: 'Skal bestå af mindst 8 tegn';
    display: block;
    font-size: 10px;
    right: 0;
    bottom: -17px;
    font-style: italic;
    color: #999;
    position: absolute;
}

.woocommerce-account-fields {
    display: none;
}

/* End Form fields */

/* Mailchimp signup field */

.woocommerce-page .woocommerce-mailchimp-opt-in {
    border: 0;
    padding: 20px 0 0 0;
}

.woocommerce-page .woocommerce-mailchimp-opt-in label {
    display: flex;
    position: static;
    font-size: 13px;
    pointer-events: auto;
    cursor: pointer;
}

.woocommerce-page .woocommerce-mailchimp-opt-in label input {
    height: auto;
    width: auto;
    margin: 0 5px 0 0;
    display: none;
}

.woocommerce-page .woocommerce-mailchimp-opt-in label span {
    width: 100%;
    padding: 0 0 0 20px;
}

.woocommerce-page .woocommerce-mailchimp-opt-in label span:before {
    position: absolute;
    left: 0;
    top: 50%;
    content: '';
    width: 17px;
    height: 17px;
    display: inline-block;
    vertical-align: sub;
    background: #fff;
    border: 1px solid #000;
}

.woocommerce-page .woocommerce-mailchimp-opt-in label input:checked+span:after {
    position: absolute;
    left: 4px;
    top: 50%;
    margin-top: 3px;
    content: '';
    width: 10px;
    height: 10px;
    display: inline-block;
    vertical-align: sub;
    background: url(../images/checkbox-filled.svg) no-repeat;
    background-size: contain;
    border: 1px solid #fff;
}

/* End Mailchimp signup field */

/* Checkout buttons */

.checkout-wrapper .actions {
    display: flex;
    margin-top: 40px;
    justify-content: space-between;
}

.checkout-wrapper .actions>a {
    width: calc(50% - 10px);
    text-align: center;
    padding: 0;
    height: 52px;
    line-height: 52px;
}

/* Checkout buttons */

/* Progress bar */

.checkout-progress-bar {
    list-style: none;
    margin: 80px auto 40px auto;
    padding: 0;
    display: flex;
    max-width: 680px;
    width: 100%;
    justify-content: space-between;
    text-transform: none;
    font-weight: bold;
    font-size: 15px;
    border-top: 1px solid #000;
}

.checkout-progress-bar li {
    position: relative;
    counter-increment: progress-bar;
}

.checkout-progress-bar li a {
    text-decoration: none;
    font-weight: bold;
    font-family: "Oswald", sans-serif;
    text-transform: uppercase;
    color: #121212;
}

.checkout-progress-bar li.inactive a {
    color: #b4b4b4;
}

.checkout-progress-bar li:first-child a:after, .checkout-progress-bar li:last-child a:after {
    content: '';
    display: block;
    background: #f8f6f6;
    position: absolute;
    width: 50%;
    height: 2px;
    top: -2px;
    z-index: 1;
}

.checkout-progress-bar li:last-child a:after {
    right: 0;
}

.checkout-progress-bar li a:before {
    display: block;
    position: relative;
    content: counter(progress-bar);
    text-align: center;
    background: #1D1D1B;
    color: #fff;
    border-radius: 100%;
    font-size: 14px;
    width: 22px;
    height: 22px;
    line-height: 22px;
    margin: -10px auto 10px auto;
    font-weight: bold;
    z-index: 2;
}

.checkout-progress-bar li.inactive a:before {
    background: #b4b4b4;
}

/* End Progress bar */

/* Shipping */

.woocommerce-page .checkout-step-3 #shipping_method {
    margin: 0;
    padding: 0;
}

.woocommerce-page .checkout-step-3 #shipping_method li {
    list-style: none;
    margin: 10px 0;
    padding: 0;
}

.woocommerce-page .checkout-step-3 #shipping_method li.picked {
    border: none;
}

.woocommerce-page .checkout-step-3 #shipping_method h3, .woocommerce-page .checkout-step-3 #shipping_method .amount {
    font-size: 14px;
    text-transform: none;
    font-weight: normal;
    letter-spacing: 0;
}

.woocommerce-page .checkout-step-3 #shipping_method .amount:not(.woocommerce-Price-amount) {
    display: none;
}

.woocommerce-page .checkout-step-3 #shipping_method .amount:before {
    content: ' ';
}

.woocommerce-page .checkout-step-3 #shipping_method .label-wrap {
    display: inline-block;
}

.woocommerce-page .checkout-step-3 #shipping_method li input[type="radio"] {
    display: none;
}

.woocommerce-page .checkout-step-3 #shipping_method li input+label {
    position: relative;
    display: block;
    padding: 0 0 0 30px;
    cursor: pointer;
}

.woocommerce-page .checkout-step-3 #shipping_method li input+label:before {
    content: '';
    position: absolute;
    width: 17px;
    height: 17px;
    display: inline-block;
    background: #fff;
    border: 2px solid #999;
    left: 0;
}

.woocommerce-page .checkout-step-3 #shipping_method li input:checked+label:after {
    position: absolute;
    left: 4px;
    top: 4px;
    margin-top: 0;
    content: '';
    width: 11px;
    height: 11px;
    display: inline-block;
    vertical-align: sub;
    background: url(../images/checkbox-filled.svg) no-repeat !important;
    background-size: contain;
    border: 1px solid #fff;
}

/* End Shipping */

/* Payment */

.woocommerce-page .checkout-step-4 .form-row label {
    width: 100%;
    position: static;
    display: inline-block;
    padding: 0;
    line-height: 13px;
    height: auto;
    font-size: 13px;
    font-weight: normal;
    pointer-events: auto;
}

.woocommerce-page .checkout-step-4 .form-row {
    position: relative;
    display: block;
    padding: 0;
    margin: 0;
    width: 100%;
    padding-top: 0;
    border: none;
    border-bottom: none;
    margin-top: 0;
    position: relative;
    z-index: 0;
    background: transparent;
    font-size: 13px;
    clear: both;
}

.woocommerce-page .checkout-step-4 .wc_payment_methods li>input[type="radio"]:checked+label {
    border: none;
}

.woocommerce-page .checkout-step-4 .wc_payment_methods li>input[type="radio"]:checked+label .payment_method_stripe {
    display: block !important;
    cursor: default;
    position: relative;
    left: -30px;
    width: calc(100% + 30px);
}

.woocommerce-page .wc-credit-card-form {
    margin: 20px 0px 0 0;
    background: #f6f6f6 !important;
    padding: 30px 20px;
    width: 100% !important;
    border: 0;
}

.stripe-source-errors+br {
    display: none;
}

.wc-credit-card-form>label {
    display: none;
}

.wc_payment_methods {
    padding: 0;
    margin: 20px 0;
}

.wc_payment_methods li {
    padding: 0;
    margin: 0;
    border-top: 1px solid #e2e2e2;
    list-style: none;
}

.wc_payment_methods li:last-child {
    border-bottom: 1px solid #e2e2e2;
}

.wc_payment_methods .payment_box {
    display: none !important;
}

.woocommerce-page .checkout-step-4 .wc_payment_methods li>input {
    display: none;
}

.woocommerce-page .checkout-step-4 .wc_payment_methods li>input+label {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0 10px 30px;
    cursor: pointer;
    min-height: 58px;
}

.woocommerce-page .checkout-step-4 .wc_payment_methods li>input+label:before {
    content: '';
    position: absolute;
    width: 17px;
    height: 17px;
    display: inline-block;
    background: #fff;
    border: 1px solid #000;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.woocommerce-page .checkout-step-4 .wc_payment_methods li input:checked+label:after {
    position: absolute;
    left: 3px;
    top: 50%;
    transform: translateY(-50%);
    margin-top: 1px;
    content: '';
    width: 11px;
    height: 11px;
    display: inline-block;
    vertical-align: sub;
    border: 1px solid #fff;
}

.woocommerce-page .checkout-step-4 .wc_payment_methods li h3 {
    font-size: 13px;
    line-height: 1;
    text-transform: none;
    font-weight: normal;
    letter-spacing: 0;
}

.woocommerce-page .checkout-step-4 .wc_payment_methods .payment_icons img {
    display: inline-flex;
    width: 100%;
}

input#terms {
    width: auto;
    height: auto;
}

#place_order {
    display: none !important;
}

.express-checkout-actions .paypal-express {
    display: inline-block;
    width: 150px;
    height: 45px;
    border: 1px solid #e2e2e2;
    background: #fff url(/wp-content/uploads/2019/08/paypal-express.png) no-repeat center;
    background-size: 60%;
    text-indent: -9999px;
    overflow: hidden;
}

.express-checkout-actions #wc-stripe-payment-request-wrapper {
    display: inline-block;
    width: 150px;
    height: 45px;
    overflow: hidden;
    padding: 0 !important;
    margin-left: 10px;
}

.express-checkout-actions h3 {
    margin-bottom: 15px;
}

.express-checkout-actions {
    margin-bottom: 40px;
}

#wc-stripe-payment-request-button-separator {
    display: none !important;
}

#stripe-payment-data>p {
    display: none !important;
}

.woocommerce-page .checkout-step-4 .wc_payment_methods li.payment_method_stripe>input[name="payment_method"]:checked+label {
    padding: 23px 0 23px 30px;
}

.woocommerce-page .checkout-step-4 .wc_payment_methods li.payment_method_stripe>input[name="payment_method"]:checked+label .payment_icons {
    position: absolute;
    top: 10px;
    right: 0;
}

.woocommerce-page .checkout-step-4 .wc_payment_methods li.payment_method_stripe .payment_text {
    width: 100%;
}

.woocommerce-page .checkout-step-4 .wc_payment_methods li.payment_method_stripe input:checked+label:before {
    transform: none;
    top: 19px;
}

.woocommerce-page .checkout-step-4 .wc_payment_methods li.payment_method_stripe input:checked+label:after {
    transform: none;
    top: 21px;
}

/* End Payment */

/* Checkout alerts */

.checkout-wrapper>.woocommerce-message {
    display: none;
}

/* End Checkout alerts */

/* Checkout summary */

.checkout-summary {
    margin-top: 16px;
    margin-bottom: 40px;
}

.checkout-summary .checkout-summary-row {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #e2e2e2;
    padding-bottom: 25px;
    margin-bottom: 25px;
}

.checkout-summary .checkout-summary-row.open {
    border: 0;
    margin-bottom: 0;
}

.checkout-summary .checkout-summary-row .title {
    display: flex;
}

.checkout-summary .checkout-summary-row .action {
    margin-left: 20px;
}

.checkout-summary .checkout-summary-row .action a {
    text-decoration: none;
    font-size: 10px;
    color: #999;
    font-style: italic;
}

.checkout-summary .checkout-summary-row .action a:hover {
    text-decoration: underline;
}

.checkout-summary .checkout-summary-row .title>span:first-child {
    display: inline-block;
    width: 100px;
}

.checkout-summary .shipping_method .label-wrap {
    display: inline;
}

.checkout-summary .shipping_method .woocommerce-Price-amount:before {
    content: ' ';
}

.checkout-summary .shipping_method .amount:not(.woocommerce-Price-amount) {
    display: none;
}

.checkout-summary .shipping_method h3 {
    font-size: inherit;
    font-weight: inherit;
    display: inline;
    text-transform: none;
    letter-spacing: 0;
}

.shipping_address {
    margin-bottom: 40px;
}

#ship-to-different-address {
    display: none;
}

.woocommerce-terms-and-conditions {
    background: #f8f8f8;
    padding: 15px;
    margin-bottom: 10px;
}

/* End Checkout summary */

/* Smartphones */

@media screen and (max-width: 979px) {
    p#billing_postcode_field, p#billing_country_field, p#billing_first_name_field, p#billing_last_name_field {
        width: 100%;
    }
    p#billing_last_name_field {
        margin-top: 0;
    }
    p#billing_country_field {
        margin: 0;
    }
    .checkout-wrapper {
        display: block;
    }
    .checkout-wrapper .checkout-left {
        width: 100%;
        margin-right: 0;
        margin-bottom: 25px;
        padding: 15px;
    }
    .checkout-wrapper .checkout-right {
        width: 100%;
        padding: 15px;
    }
    .checkout-progress-bar {
        font-size: 11px;
        margin-top: 45px;
        margin-bottom: 45px;
    }
    .checkout-wrapper .actions {
        display: block;
    }
    .checkout-step a.button.white {
        width: 100%;
        display: block;
        margin-bottom: 15px;
    }
    .checkout-step a.button {
        width: 100%;
        display: block;
    }
    .checkout_coupon {
        display: block !important;
    }
    .woocommerce-checkout .checkout_coupon .coupon-row {
        width: 100%;
        margin-bottom: 15px;
    }
    .checkout_coupon button {
        width: 100%;
    }
    .xoo-wsc-sum-col .variation {
        margin: 0 !important;
    }
    .checkout-summary .checkout-summary-row .title>span:first-child {
        display: block;
        width: auto;
        font-weight: bold;
    }
    .checkout-summary .checkout-summary-row .title {
        display: block;
    }
    .place-order .woocommerce-terms-and-conditions h1 {
        font-size: 18px;
    }
    .place-order .woocommerce-terms-and-conditions h1 {
        font-size: 14px;
    }
    .woocommerce-cart .content .woocommerce-cart-form__contents {
        width: 100% !important;
        left: 0 !important;
        right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .woocommerce-page .wc-credit-card-form {
        padding: 15px;
    }
}