body#order-opc div#cube_page.sticky header#header .container.container-header > div {
    justify-content: center !important;
}
body#order-opc div#cube_page.sticky header#header .container.container-header > div > * {
    display: none !important;
}
body#order-opc div#cube_page.sticky header#header .container.container-header > div > a {
    display: block !important;
    position: static !important;
    margin-top: 15px;
}
body#order-opc .account_trigger_wrapper {
    display: none;
}
body#order-opc div#page {
    background: #fff !important;
    padding-top: 0px;
}

#order-opc div#columns {
    max-width: 100% !important;
    padding: 20px 0;
}

#order-opc #center_column {
    max-width: 90%;
    margin: 0 auto;
}

/*One page checkout*/
#order-opc #shipping-payment-block .inner-table {
    display: grid;
    grid-template-columns: 50% 50%;
}

#shipping-payment-block .inner-table>* {
    width: 100% !important;
    max-width: 100% !important;
}

#order-opc #shipping-payment-block .inner-table div#cart_section {
    grid-row: 1 / span 2;
    grid-column: 2;
    position: relative;
    background: #fff;
}

#opc_checkout #cart_summary tr td {
    border-right: 0;
    border-top: 0;
}

#opc_checkout #cart_summary {
    border: 0;
}

#opc_checkout .product-name {
    font-size: 14px;
    line-height: 16px;
    color: var(--text) !important;
}

#opc_checkout #cart_summary .price,
#opc_checkout #cart_summary .old-price {
    @media screen and (min-width: 1000px) {
        text-align: right;
    }
}

#opc_checkout form.std h3,
#opc_checkout #new_account_form.std h3,
#opc_checkout #carriers_section h3,
#opc_checkout #payments_section h3,
#opc_checkout #cart_section h3 {
    font-family: Nunito Sans !important;
    font-weight: 700;
    font-size: 20px !important;
    line-height: 100%;
    vertical-align: middle;
    color: #2B0D2E !important;
    align-items: center;
    display: flex;
    text-transform: none;
}

#carrierTable, #paymentMethodsTable {
    border: none !important;
}
#opc_checkout #cart_section h3 {
    background: none !important;
    color: #fff !important;
    -webkit-text-fill-color: #2b0d2e;
}

#opc_checkout .image-number {
    margin: 0 5px 0 0;
    padding: 0px;
    border: none !important;
    /* border-image-source: linear-gradient(270deg, #5BCBCC 0%, #132D91 100%) !important; */
    /* border-width: 1px !important; */
    /* border-image-slice: 1 !important; */
}

#opc_checkout .image-number .image-number-container .image-number-actual {
    background: url('https://magipa.dk/themes/shoptech/img/checkout_number_bg.svg') no-repeat;
    background-size: 100% 100%;
    border-radius: 0;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: bold;
    padding: 0 0 0 7px;
    -webkit-text-fill-color: #fff !important;
    height: 33px;
    width: 33px;
    text-align: center;
    display: flex;
    justify-content: start;
    align-items: center;
    font-family: sans-serif !important;
}

#opc_checkout #cart_summary .cart_quantity_input,
#opc_checkout #cart_summary .book_cart_quantity_input {
    border: 0;
    font-weight: 500;
}
#order-opc #login_form_content {
    display: flex;
    grid-template-columns: repeat(3, calc(33.33% - 7px));
    gap: 10px;
    align-items: center;
    width: 100%;
}
#order-opc #login_form_content > * {
    width: 100% !important;
}
#order-opc #login_form_content > h4 {
    font-size: 16px;
    text-transform: none;
    margin: 0;
    font-family: Nunito Sans;
    font-weight: 700;
    line-height: 100%;
    vertical-align: middle;
    width: 144px !important;
    flex: 0 0 144px;
}
#opc_checkout .inner-table>div {
    border: 0 !important;
    padding-top: 110px;
}

#opc_checkout .price-percent-reduction {
    background: var(--sale) !important;
}

#opc_checkout #new_account_form fieldset {
    border: 0;
}

#opc_checkout .address-type-header {
    color: var(--blue);
}

#opc_checkout #cart_summary .cart_total {
    width: 40px;
}

#opc_checkout input.confirm_button,
#opc_checkout #free_order_confirm {
    background: #fff;
    color: #555;
    font-weight: 500;
}

#opc_checkout div.confirm_button_div {
    background: linear-gradient(270deg, #CF9646 0%, #D19A4C 100%) !important;
    background: linear-gradient(270deg, #CF9646 0%, #D19A4C 100%) !important;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25) !important;
}

#opc_checkout tr:hover {
    background: #fff !important;
}

#opc_checkout .ajax_block_product .product-container {
    border: 0 !important;
    background: #f7f7f7;
}

#opc_checkout #carrierTable {
    border: 0;
}

#opc_checkout #cart_summary a.cart_quantity_up,
#opc_checkout #cart_summary a.cart_quantity_down,
#opc_checkout #cart_summary a.book_cart_quantity_up,
#opc_checkout #cart_summary a.book_cart_quantity_down {
    background: transparent !important;
    text-align: center;
    text-decoration: none;
}

#opc_checkout #cart_summary a.cart_quantity_up:before,
#opc_checkout #cart_summary a.book_cart_quantity_up:before {
    content: "\f077";
    font-family: 'FontAwesome';
    font-size: 30px;
    color: #2b0d2e !important;
}

#opc_checkout #cart_summary a.cart_quantity_down:before,
#opc_checkout #cart_summary a.book_cart_quantity_down:before {
    content: "\f078";
    font-family: 'FontAwesome';
    font-size: 30px;
    color: #2b0d2e !important;
}

#opc_checkout #cart_summary a.cart_quantity_delete,
#opc_checkout #cart_summary a.book_cart_quantity_delete {
    background: transparent;
    color: #2b0d2e !important;
}

#opc_checkout #cart_summary a.cart_quantity_delete:before,
#opc_checkout #cart_summary a.book_cart_quantity_delete:before {
    content: "\f014";
    font-family: 'FontAwesome';
    font-size: 20px;
    color: #2b0d2e !important;
}

#opc_checkout #cart_summary tr {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #BAA372;
}

#opc_checkout #cart_summary td {
    padding-left: 0 !important;
    border-bottom: 0 !important;
}

#opc_checkout #cart_summary td.cart_description {
    width: 100% !important;
}

#opc_checkout #uniform-cgv~label {
    background: transparent;
}

#opc_checkout input.confirm_button:hover {
    background: #fff !important;
}

#opc_checkout #crossselling h3 {
    border-bottom: 0;
    color: #555 !important;
    text-align: center;
    font-weight: bold;
}

#opc_checkout #HOOK_SHOPPING_CART {
    padding-top: 65px;
}

#crossselling>div {
    box-sizing: border-box;
    background: linear-gradient(#fff, #fff), linear-gradient(to bottom, #58C5CA, #fff);
    border: 1px solid transparent !important;
    background-repeat: no-repeat;
    background-origin: padding-box, border-box;
}

#opc_checkout #loyalty {
    font-size: 14px;
    line-height: 22px;
}

#opc_checkout .account_fields .submit>input {
    color: #ffffff !important;
    background: #2b0d2e !important;
    border: 2px solid #FFFFFF !important;
    box-sizing: border-box;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    border-radius: 8px;
}

#opc_checkout #cart_summary tr.alternate_item {
    background: transparent !important;
}

#opc_checkout #login_form {
    display: flex;
    align-items: start;
}

#opc_checkout #login_form .image-number {
    margin: 0 !important;
    float: none;
}

#opc_checkout #login_form>fieldset {
    border: none !important;
    margin: 0 0;
}

#opc_checkout #voucher_toggle_wrap {
    margin-bottom: 20px;
    /* display: none; */
}
#opc_checkout #voucher_toggle_wrap table {
    display: block !important;
}
#opc_checkout #opc_account_form>.image-number {
    margin-top: -3px;
}

#opc_checkout #openLoginFormBlock{
    background: #2b0d2e !important;
    color: #ffffff !important;
    border: 2px solid #FFFFFF !important;
    box-sizing: border-box;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    border-radius: 8px;
    padding: 5px 15px;
    font-size: 14px;
    text-decoration: none;
    -webkit-text-fill-color: #fff;
}

#opc_checkout #voucher input[type="submit"] {
    background: #2b0d2e !important;
    color: #ffffff !important;
    box-sizing: border-box;
    padding: 5px 15px;
    font-size: 14px;
    text-decoration: none;
    -webkit-text-fill-color: #fff;
    margin: 0 !important;
    border: none !important;
    text-align: center;
    box-shadow: none;
}

#opc_checkout #voucher h4 {
    font-size: 14px;
}

#opc_checkout #voucher {
    width: 100%;
}
#opc_checkout #voucher>fieldset {
    display: grid;
    grid-template-columns: 80% 20%;
    max-width: 385px;
    margin: 0 auto;
}

#opc_checkout #opc_new_account p.text,
#opc_checkout #opc_new_account p.password,
#opc_checkout #opc_new_account p.textarea {
    border-radius: 10px;
    border: 1px solid #DFD4BA;
    background-origin: border-box;
    background-clip: content-box, border-box;
    padding: 0px 0px !important;
    display: flex;
    align-items: center;
    justify-content: center;
}
#opc_checkout #opc_new_account p#email_wrap_field {
    border: none;
    gap: 15px;
    border-radius: 0 !important;
    margin: 0;
}
#opc_checkout #opc_new_account p#email_wrap_field input#email {
    border-radius: 10px;
    border: 1px solid #DFD4BA !important;
    width: 100%;
}
#opc_checkout #opc_new_account p#email_wrap_field span#newsletter_wrap {
    width: 100%;
    display: flex;
    align-items: center;
    font-size: 14px;
}
#opc_checkout #opc_new_account p#email_wrap_field span#newsletter_wrap label {
    padding: 0;
    line-height: 1px;
}
#opc_checkout #opc_new_account p.text input,
#opc_checkout #opc_new_account p.password input,
#opc_checkout #opc_new_account p.select input,
#opc_checkout #opc_new_account p.textarea textarea,
#opc_checkout #opc_new_account p.select select {
    border: none !important;
    outline: none !important;
    border-radius: 10px !important;
    width: 100% !important;
    margin: 0 !important;
}

#opc_checkout .inner-table>div:nth-child(2) {
    padding-top: 10px;
    display: grid !important;
    grid-template-columns: 50% 50%;
    align-items: start;
}
#opc_checkout .inner-table>div:nth-child(2) > form {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    border: none !important;
}
#opc_checkout .inner-table>div:nth-child(2) > form h3 {
}
#order-opc #shipping-payment-block .inner-table div#cart_section .product-name {
    position: relative;
}
#order-opc #shipping-payment-block .inner-table div#cart_section .product-name a {
    color: #2B0D2E !important;
    text-decoration: none;
    font-size: 20px;
}
#order-opc #shipping-payment-block .inner-table div#cart_section .product-name a.add_more_book_size {
    position: absolute;
    bottom: 0;
    font-size: 12px;
    display: none;
}
#order-opc #opc_checkout #opc_new_account p.select {
    width: 47%;
    padding: 0 !important;
}
#order-opc #opc_checkout #opc_new_account p.select select {
    border-radius: 10px !important;
    border: 1px solid #DFD4BA !important;
    background-origin: border-box;
    background-clip: content-box, border-box;
    padding: 2px 2px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: none;
    width: 100% !important;
    color: #bbbbbb;
    font-weight: 400;
    text-shadow: none;
    font-family: 'Nunito Sans';
    font-size: 14px;
}

#opc_checkout #cart_summary tr img {
    max-height: 120px;
    object-fit: scale-down;
}

#order-opc #social-login-buttons button {
    background: none !important;
    padding: 0;
    box-shadow: none;
    border: none !important;
    font-family: Nunito Sans;
    font-weight: 700;
    font-size: 12px;
    line-height: 100%;
    vertical-align: middle;
    display: flex;
    align-items: center;
    gap: 10px;
    text-transform: none;
}
#order-opc #social-login-buttons button img {
    max-width: 15px !important;
}
@media screen and (max-width: 1000px) {
    #opc_checkout .image-number {
        margin: 0 5px 0 0;
        padding: 0px;
    }

    /* #opc_checkout .image-number .image-number-container .image-number-actual {
        padding: 4px 10px 7px;
        font-size: 18px !important;
        line-height: 1;
    } */

    #order-opc #shipping-payment-block .inner-table {
        grid-template-columns: 100%;
    }

    #opc_checkout form.std h3,
    #opc_checkout #new_account_form.std h3,
    #opc_checkout #carriers_section h3,
    #opc_checkout #payments_section h3,
    #opc_checkout #cart_section h3 {
        font-size: 16px;
        padding: 0;
        display: flex;
        align-items: center;
    }

    #order-opc #shipping-payment-block .inner-table div#cart_section {
        grid-row: 3;
        grid-column: 1;
        position: relative;
        background: #fff;
        padding: 0 !important;
    }

    /* #opc_checkout #cart_summary tr {
flex-direction: column;
align-items: flex-start;
} */
    #opc_checkout #cart_summary td.cart_description {
        width: 100% !important;
    }

    #order-opc #shipping-payment-block .inner-table div#cart_section .product-name a {
        color: #2B0D2E !important;
        text-decoration: none;
        font-size: 16px;

        @media screen and (max-width: 767px) {
            font-size: 13px;
            line-height: 1.5;
        }
    }
    #opc_checkout .inner-table>div:nth-child(2) > form {
        margin-top: 0 !important;
    }
}

@media screen and (max-width: 550px) {
    #order-opc #opc_checkout #opc_new_account p.select {
        width: 100%;
        padding: 0 !important;
    }
    #order-opc #opc_checkout #opc_new_account p.select select {
        padding: 2px 8px !important;
    }
    #opc_checkout .inner-table>div#opc_new_account {
        padding: 9vh 0 0;
    }
    #opc_checkout #opc_new_account div.account_fields {
        padding: 10px 0 0;
    }
    #opc_checkout #opc_new_account p#email_wrap_field {
        flex-direction: column;
        padding: 0 !important;
    }
    #opc_checkout #opc_new_account p#email_wrap_field span#newsletter_wrap > input#newsletter {
        width: 20px !important;
    }
    #opc_checkout form.std h3, #opc_checkout #new_account_form.std h3, #opc_checkout #carriers_section h3, #opc_checkout #payments_section h3, #opc_checkout #cart_section h3 {
        font-size: 16px !important;
    }
    #order-opc #opc_checkout #login_form fieldset h3 {
        gap: 5px;
    }
    #opc_checkout #opc_new_account p.text, #opc_checkout #opc_new_account p.password, #opc_checkout #opc_new_account p.textarea {
        width: 100%;
        font-size: 14px;
    }
    #order-opc #login_form_content {
        flex-direction: column;
        gap: 0;
        margin-top: 16px !important;
    }
    #order-opc #login_form_content > h4 {
        flex: 0 0 100%;
        align-self: start;
    }
    div#social-login-buttons {
        flex-direction: column;
        justify-content: center;
        align-items: start;
        max-width: 185px;
        margin: 20px auto !important;
    }
    #order-opc #social-login-buttons button {
        justify-content: center;
        font-size: 14px;
        padding: 5px 0;
    }
    #opc_checkout .inner-table>div:nth-child(2) {
        grid-template-columns: 100%;
    }
    #opc_checkout .inner-table>div:nth-child(2) > form {
        height: auto !important;
    }
    #opc_checkout p.checkbox label {
        font-size: 12px;
    }
    a.iframe {
        font-size: 12px;
    }
    header .ajax_cart_quantity {
        position: static !important;
        top: 2px;
        right: 1px;
        background: transparent;
    }
}

#order-opc #opc_checkout #login_form fieldset {
    width: 100%;
    padding: 0 6px 2px 0 !important;
}

#order-opc #opc_checkout #login_form fieldset h3 {
    text-align: left;
    gap: 5px;
}

div#social-login-buttons {
    margin: 20px 10px 20px;
    display: flex;
    justify-content: center;
    gap: 10px;
}

#opc_checkout form.std h3 div#social-login-buttons>button {
    background: #2d0f30;
    color: #fff !important;
    -webkit-background-clip: unset !important;
    -webkit-text-fill-color: #fff !important;
    font-size: 15px;
    padding: 3px 20px;
    border: none;
}

.bookProductCart {
    p {
        margin: 0;

        a {
            font-size: 12px;
            color: #2b0d2e;
            font-weight: 500;
            text-decoration: none;
        }
    }
}
#carrierTable tr td, #paymentMethodsTable tr td {
    border-bottom: 1px solid #E7DFCB !important;
    padding: 10px 0 !important;
}
#order-opc #carrierTable tr td,#order-opc  #paymentMethodsTable tr td {
    border-top: 0 !important;
}
#carrierTable tr td label, #paymentMethodsTable tr td label {
    height: 40px !important;
    display: flex;
    align-items: center;
}
#carrierTable tr td img, #paymentMethodsTable tr td img {
    max-width: 25px;
}
table#opc_cart_totals, .cart_section_inner > p.checkbox, div#message_moved, .confirm_button_div {
    max-width: 392px !important;
    float: none !important;
    position: static !important;
    margin: 0 auto;
}
#order-opc .confirm_button_div input.confirm_button {
    float: none;
    width: 100%;
    background: #543259;
    color: #fff;
    font-family: Nunito Sans;
    font-weight: 700;
    font-size: 16px;
    line-height: 100%;
    text-align: center;
    vertical-align: middle;
    border: none !important;
}
#paymentMethodsTable .payment_description label {
    flex-direction: column;
    align-items: start;
    justify-content: center;
}

.gdpr_policy {
    display: flex;
    align-items: center;
    justify-content: start;
    margin: 15px auto 2px;
    gap: 15px;
    width: 100%;
    text-align: left;
    max-width: 392px !important;
    padding: 0px 5px;
}
.gdpr_policy label, .gdpr_policy label a {
    width: 100% !important;
    font-size: 12px;
    font-weight: 600 !important;
    line-height: 1;
    word-wrap: break-word;
    color: #494949;
}
.gdpr_policy .checker {
    margin: 0 !important;
}
.gdpr_policy .checker span {
    width: 15px;
    height: 15px;
    border-color: #2b0d2e !important;
}
#order-opc .confirm_button_div input.confirm_button.disabled {
    background-color: #a1a1a1;
    border: 1px solid #a1a1a1;
}
div#book_product_combination_window {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    background: #0000008c;
    z-index: 999999;
}
.parcelShop_div {
    max-height: 300px;
    overflow-y: scroll;
}
#voucher input.discount_name {
    box-shadow: none !important;
}
#voucher input.discount_name::placeholder {
    color: #2b0d2e;
}