.bg_cart {
    background-color: #f5f5f5;
}

.cartbuy {
    margin: 1.5rem 0 3rem 0;
}
@media screen and (max-width: 1200px) {
    .cartbuy {
        margin: 1.5rem 0 3rem 0;
    }
}
@media screen and (max-width: 700px) {
    .cartbuy {
        margin: 1.5rem 0 3rem 0;
    }
}
@media screen and (max-width: 500px) {
    .cartbuy {
        margin: 1rem 0 3rem 0;
    }
}

.cartbuy-title-center {
    text-align: center;
}

.cartbuy-body-center {
    justify-content: center;
}

.cartbuy-body {
    margin-bottom: 0;
}

.cartbuy-list {
    border-radius: 0.8rem;
    background-color: #FFF;
    box-shadow: 0 0.2rem 0.2rem 0 rgba(0,0,0,.05);
    padding: 1.2rem;
    margin-bottom: 0.6rem;
    gap: 0;
}

.cartbuy-list-title {
    border-radius: 0.8rem 0.8rem 0 0;
    border-bottom: 0.3rem solid #8a1538;
    margin-bottom: 1rem;
}

.cartbuy-body-title {
    font-size: 1.6rem;
    color: #211F20;
    font-weight: 700;
}

@media screen and (max-width: 700px) {
    .cartbuy-list {
        padding: 1rem;
    }
}

.cartbuy-body-main .cartbuy-col {
    margin-bottom: 0;
}

@media screen and (max-width: 700px) {
    .cartbuy-body-main .cartbuy-col {
        margin-bottom: 1.2rem;
    }

    .cartbuy-body-main .cartbuy-col-1 {
        width: 100%;
    }

    .cartbuy-body-main .cartbuy-col-2 {
        width: 14.1rem;
        margin-bottom: 0;
    }

    .cartbuy-body-main .cartbuy-col-2 .cartbuy-nb-number {
        justify-content: center;
    }

    .cartbuy-body-main .cartbuy-col-3 {
        width: calc(100% - 14.1rem);
        margin-left: 0;
        margin-bottom: 0;
    }

    .cartbuy-body-main .cartbuy-col-3 .cartbuy-nb-price {
        justify-content: center;
    }
}

@media screen and (max-width: 370px) {
    .cartbuy-body-main .cartbuy-col-2 {
        width: 50%;
        margin-bottom: 0;
    }

    .cartbuy-body-main .cartbuy-col-2 .cartbuy-nb-number {
        justify-content: center;
    }

    .cartbuy-body-main .cartbuy-col-3 {
        width: 50%;
        margin-left: 0;
        margin-bottom: 0;
    }

    .cartbuy-body-main .cartbuy-col-3 .cartbuy-nb-price {
        justify-content: center;
    }
}

.blc-des .description {
    display: grid;
    gap: 0.1rem;
    align-items: center;
    font-size: 1.4rem;
}

@media screen and (max-width: 900px) {
    .blc-des .description {
        font-size: 1.2rem;
    }
}

.cartbuy-nb-price .cartbuy-number {
    color: #8A1538;
}

.cartbuy-total {
    padding: 1rem 2rem;
    justify-content: flex-end;
    background-color: #8A1538;
    border: 0.2rem solid #8A1538;
    border-radius: 0 0 0.8rem 0.8rem;
}

.cartbuy-total .cartbuy-total-body {
    font-size: 1.8rem;
    color: #F4C000;
    font-weight: bold;
}

.cartbuy-empty {
    text-align: center;
    color: #8A1538;
    width: 100%;
    display: block;
}

.cartbuy-empty b {
    font-weight: 600;
}

.cartbuy-del a {
    position: relative;
    z-index: 10;
    cursor: pointer;
}

.payif-wrapper {
    margin: 0 0 3rem;
}
@media screen and (max-width: 1000px) {
    .payif-wrapper {
        margin: 0 0 3rem;
    }
}
@media screen and (max-width: 700px) {
    .payif-wrapper {
        margin: 0 0 3rem;
    }
}

@media screen and (max-width: 900px) {
    .payif-left {
        width: 100%;
        margin-bottom: 0;
    }
}

.payif .form-row {
    padding: 0 var(--pad) !important;
    margin: 0 0 2rem;
}

.payif .form-row:last-child {
    margin-bottom: 0;
}

.payif-left-frm .list {
    margin-bottom: 0;
}
.payif .payif-wrapper .payif-row {
    margin-bottom: 0;
}

.payif .form-row label {
    line-height: 2rem;
}

.payif .form-row .required {
    color: #a00;
    font-weight: 700;
    border: 0;
    text-decoration: none;
}

.payif .form-row input.input-text,
.payif .form-row textarea.textarea-text {
    margin: 0;
    width: 100%;
    height: 4rem;
    font-size: 1.4rem;
    padding: 0.7rem 1rem;
    line-height: 2rem;
    background: #FFF;
    box-sizing: border-box;
    border: solid 0.12rem #e1e1e1;
    outline: 0;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.payif .form-row .payif-input:focus {
    border: 0.16rem solid #7C7C7C;
}

.payif .form-row textarea.textarea-text {
    height: 8em;
    line-height: 2rem;
    display: block;
    box-shadow: none;
    box-sizing: border-box;
}

.payif .item .select2-container {
    padding: 0.7rem 1rem;
    background: #FFF;
    border: 0.16rem solid #ECECEC;
}

.payif .item .select2-container .select2-selection--single .select2-selection__rendered {
    font-size: 1.6rem;
    color: #3C393A;
}

.payif .form-row.item-error .payif-lb {
    color: #a00;
}

.payif .form-row.item-error input.input-text {
    border: 0.12rem solid #a00;
}

.payif .form-row.item-error .select2-container {
    border: 0.12rem solid #a00;
}

.payif-type-list {
    width: inherit;
}

.payif-type-list .item {
    background-color: #d3d3d3;
    border: 0.2rem solid #d3d3d3;
}

.payif-type-list .item.active,
.payif-type-list .item:hover{
    background-color: #8A1538;
    border: 0.2rem solid #8A1538;
}

.payif-radio {
    padding: 0.8rem 2rem 0.8rem 1rem;
    display: block;
    cursor: pointer;
}

.payif-radio-elem {
    background-color: #FFF;
}

.payif-radio-elem:before {
    background-color: #ed143d;
}

.payif-radio-label {
    padding-left: 0.3rem;
    font-size: 1.4rem;
    line-height: 2.2rem;
}

.payif-type-list .item_description {
    padding-top: 0.8rem;
    padding-left: 2rem;
    width: 100%;
    font-size: 1.3rem;
    line-height: 2.2rem;
}

.payif-type-list .item .payif-delivery-cost {
    color: #8A1538;
}

.payif-type-list .item.active .payif-delivery-cost,
.payif-type-list .item:hover .payif-delivery-cost {
    color: #F4C000;
}

.payif-title {
    width: fit-content;
    border-bottom: 0.3rem solid #8a1538;
    margin-bottom: 2rem;
}

.payif-payment-main {
    margin-top: 3rem;
}

.cartbuy-bot-wrapper {
    padding: 3rem 8rem;
}
@media screen and (max-width: 1200px) {
    .cartbuy-bot-wrapper {
        padding: 3rem 6rem;
    }
}
@media screen and (max-width: 700px) {
    .cartbuy-bot-wrapper {
        padding: 3rem 4rem;
    }
}
@media screen and (max-width: 500px) {
    .cartbuy-bot-wrapper {
        padding: 3rem 3rem;
    }
}

.cartbuy-bot-wrapper .line {
    margin: 2rem 0;
}

.cartbuy-bot-wrapper .item.item-discount {
    align-items: center !important;
}

.cartbuy-bot-wrapper .global-input {
    min-width: 40rem;
    width: 35vw;
}
@media screen and (max-width: 700px) {
    .cartbuy-bot-wrapper .global-input {
        min-width: 30rem;
        font-size: 1.3rem;
    }
}
@media screen and (max-width: 600px) {
    .cartbuy-bot-wrapper .global-input {
        width: 35vw;
    }
}
@media screen and (max-width: 520px) {
    .cartbuy-bot-wrapper .global-input {
        min-width: 25rem;
    }
    .cartbuy-bot-wrapper .global-input .input {
        padding: 0.8rem 0.6rem 0.8rem 0.8rem;
    }
    .cartbuy-bot-wrapper .global-input .global-input-btn {
        padding: 0.7rem 1.2rem;
    }
}
@media screen and (max-width: 450px) {
    .cartbuy-bot-wrapper .global-input {
        min-width: 20rem;
    }
    .cartbuy-bot-wrapper .global-input .input {
        padding: 0.6rem 0.6rem 0.6rem 0.8rem;
    }
    .cartbuy-bot-wrapper .global-input .global-input-btn {
        padding: 0.5rem 1rem;
    }
}
@media screen and (max-width: 390px) {
    .cartbuy-bot-wrapper .global-input {
        min-width: 17rem;
    }
}
@media screen and (max-width: 360px) {
    .cartbuy-bot-wrapper .global-input {
        min-width: 15rem;
    }
}

.cartbuy-bot-wrapper .item {
    justify-content: flex-end;
}

.cartbuy-bot-wrapper .item .text-1 {
    margin-right: auto;
}

.cartsummary-wrapper {
    margin-bottom: 5rem;
}

.cartbuy-bot-wrapper .right {
    justify-content: flex-end;
}

.cartmessage-wrapper .cart-message:first-child{
    margin-top: 2rem;
}

.cartmessage-wrapper .cart-message:last-child{
    margin-bottom: 2rem;
}

.cart-message {
    padding: 0.5em 1em 0.5em 2em;
    margin: 0 0 0.5em;
    background-color: #ebe8e8;
    border: 1px solid #999999;
    color: #3C393A;
    position: relative;
    width: auto;
    line-height: 2.2rem;
}

.cart-message-success::before,
.cart-message-info::before,
.cart-message-error::before {
    content: "\e032";
    font-family: WooCommerce;
    display: inline-block;
    position: absolute;
    top: calc(50% - 1rem);
    left: 0.6em;
}

.cart-message-info {
    border-color: #1e85be;
    background-color: #f0f8ff;
}

.cart-message-info::before {
    content: "\e016";
    color: #1e85be;
}

.cart-message-success {
    border-color: #8fae1b;
    background-color: #f0fff0;
}

.cart-message-success::before {
    content: "\e015";
    color: #8fae1b;
}

.cart-message-error {
    border-color: #a00;
    background-color: #ffe4e1;
}

.cart-message-error::before {
    content: "\e029";
    color: #b81c23;
}

.cart-message svg.close-btn {
    position: absolute;
    top: calc(50% - 8px);
    right: 0.8rem;
    width:16px;
    fill:#8d8d8d;
    z-index:98;
    cursor:pointer;
}

.orderif-wrapper {
    margin: 1.5rem 0 0 0;
}

.orderif-des .list {
    margin: 0 0;
}

.orderif-des .item.item-full {
    width: 100%;
}

.orderif-des .text-1 {
    width: 100%;
}

.orderif-des .item .text-red {
    color: #8A1538;
}

.orderif-message .cart-message {
    font-weight: bold;
    color: #8A1538;
}

@media screen and (max-width: 550px) {
    .payment-two-col {
        width: 100%;
        padding: 2rem 0 0 0;
    }

    .payment-two-col:first-child {
        padding: 0 0 0 0;
    }
}
