.cartsum_text p, .cart_sum_total p {
    margin: revert;
    margin-bottom: 0px !important;
}

.row .col-lg-4.col-md-6.mb-4 {
    position: relative;
    width: 100%;
    display: flex;
}

.lim-prod-container {
    width: 223px;
    margin-right: 18px;
    position: relative;
}

.limit-icon {
    position: absolute;
    top: 0px;
    left: 18px;
    background-color: red;
    color: white;
    padding: 3px;
    border-radius: 13px;
    margin-top: 5px;
    font-family: "FontAwesome";
}

.lim_prod_img {
    background: url("/static/img/limit-background.f7ba20f8.jpg");
    background-size: cover;
}

.lim_prod_name {
    padding: 10px 15px 10px 15px;
    background-color: #f7f2f2;
}

@media (max-width: 767px) {
    .row .col-lg-4.col-md-6.mb-4 {
        width: 100%;
        display: revert;
    }

    .lim-prod-container {
        float: left;
        width: 100%;
    }

    .prod-amount-left {
        margin: auto;
    }

    .cart_img.mb-4.mb-md-0.align-items-center {
        margin: auto;
    }

    .cart_cont {
        text-align: center !important;
        width: 100%;
        margin: 20px;
    }

    .stepper .stepper span {
        font-size: 25px;
    }

    .stepper .stepper input {
        font-size: 20px;
    }

    .cart_price {
        text-align: center;
        margin: auto;
        min-width: 55px;
    }

    .stepper input[type="number"] {
        padding: 11px 15px;
    }
}

.cart_cont {
    text-align: left;
}

.prod-amount-left {
    font-size: 13px;
    color: #f9f9f9;
    font-weight: 600;
    background-color: #f34423;
    width: fit-content;
}

@media only screen
and (min-device-width: 320px)
and (max-device-width: 390px)
and (-webkit-min-device-pixel-ratio: 2) {
    .cart_price {
        margin: 10px !important;
    }
}

.messages {
    color: #f8f9fa;
    background-color: #ff0000;
    font-size: 15px;
    border-color: #ffecb5;
}

label, input {
    cursor: pointer;
}

.top-text-wrapper {
    margin: 20px 0 30px 0;
}

.top-text-wrapper h4 {
    font-size: 24px;
    margin-bottom: 10px;
}

.top-text-wrapper code {
    font-size: .85em;
    background: linear-gradient(90deg, #fce3ec, #ffe8cc);
    color: #ff2200;
    padding: .1rem .3rem .2rem;
    border-radius: .2rem;
}

.tab-section-wrapper {
    padding: 30px 0;
}

.grid-wrapper {
    display: grid;
    grid-gap: 30px;
    place-items: center;
    place-content: center;
}

.grid-col-auto {
    grid-template-columns: repeat(auto-fill, minmax(280px, .1fr));
    grid-template-rows: auto;
}

.grid-col-1 {
    grid-template-columns: repeat(1, auto);
    grid-template-rows: repeat(1, auto);
}

.grid-col-2 {
    grid-template-columns: repeat(2, auto);
    grid-template-rows: repeat(1, auto);
}

.grid-col-3 {
    grid-template-columns: repeat(4, auto);
    grid-template-rows: repeat(1, auto);
}

.grid-col-4 {
    grid-template-columns: repeat(4, auto);
    grid-template-rows: repeat(1, auto);
}


/* ******************* Selection Radio Item */
.selected-content {
    text-align: center;
    border-radius: 3px;
    box-shadow: 0 2px 4px 0 rgba(219, 215, 215, 0);
    border: solid 2px transparent;
    background: #fff;
    max-width: 280px;
    height: 330px;
    padding: 15px;
    display: grid;
    grid-gap: 15px;
    place-content: center;
    transition: .3s ease-in-out all;
}

.selected-content img {
    /*width: 230px;*/
    margin: 0 auto;
}

.selected-content h4 {
    font-size: 16px;
    letter-spacing: -0.24px;
    text-align: center;
    color: #1f2949;
}

.selected-content h5 {
    font-size: 14px;
    line-height: 1.4;
    text-align: center;
    color: #686d73;
}

.selected-label {
    position: relative;
}

.selected-label input {
    display: none;
}

.selected-label .icon {
    width: 20px;
    height: 20px;
    border: solid 2px #e3e3e3;
    border-radius: 50%;
    position: absolute;
    top: 15px;
    left: 15px;
    transition: .3s ease-in-out all;
    transform: scale(1);
    z-index: 1;
}

.selected-label .icon:before {
    content: "\f00c";
    position: absolute;
    width: 100%;
    height: 100%;
    font-family: "FontAwesome";
    font-weight: 900;
    font-size: 12px;
    color: #000;
    text-align: center;
    opacity: 0;
    transition: .2s ease-in-out all;
    transform: scale(2);
}

.selected-label input:checked + .icon {
    background: #3057d5;
    border-color: #3057d5;
    transform: scale(1.2);
}

.selected-label input:checked + .icon:before {
    color: #fff;
    opacity: 1;
    transform: scale(.8);
}

.selected-label input:checked ~ .selected-content {
    box-shadow: 0 2px 4px 0 rgba(219, 215, 215, 0.5);
    border: solid 4px #3057d5;
}

/*ORDER SUCCESS FAIL*/
.thankyou-page ._header {
    background: #FFC600;
    padding: 80px 30px;
    text-align: center;
}

.thankyou-page ._header_failed {
    background: #CC2e24;
    padding: 80px 30px;
    text-align: center;
}

.thankyou-page ._header h1 {
    font-size: 40px;
    font-weight: 600;
    color: white;
    margin: 0;
}

.thankyou-page ._header_failed h1 {
    font-size: 40px;
    font-weight: 600;
    color: white;
    margin: 0;
}

.thankyou-page ._body {
    margin: -70px 0 30px;
}

.thankyou-page ._body ._box {
    margin: auto;
    max-width: 90%;
    padding: 20px;
    background: white;
    border-radius: 3px;
    box-shadow: 0 0 35px rgba(10, 10, 10, 0.12);
    -moz-box-shadow: 0 0 35px rgba(10, 10, 10, 0.12);
    -webkit-box-shadow: 0 0 35px rgba(10, 10, 10, 0.12);
}

.thankyou-page ._body ._box h2 {
    font-size: 32px;
    font-weight: 600;
    color: #4ab74a;
}

/* CHECKOUT PAGE */
.select2-results {
    overflow-y: scroll;
    max-height: 500px;
}

.delivery-container {
    margin-left: 12px;
}

.delivery-name {
    font-size: 20px;
    letter-spacing: -0.24px;
    text-align: center;
    color: #1f2949;
    margin-top: 21px;
}

.delivery-wrapper {
    box-shadow: 0 2px 4px 0 rgb(138 77 206 / 50%);
    border: solid 2px #3057d5 !important;
    -webkit-box-shadow: 0 2px 4px 0 rgb(138 77 206 / 50%);
}

#payment_text_id, #addresses_id {
    margin: 30px 0 30px 0;
}

.plus-button {
    width: auto;
    margin-top: 30px;
}

.user-address1 {
    font-size: 14px;
    font-weight: 600;
    color: #1b1717;
    text-align: right;
}

.selected-content img {
    width: 160px;
}

.address-user-name {
    padding: 10px;
    text-align: right;
}

.address-user p {
    margin: auto !important;
    font-size: 14px;
}

.next-btn {
    margin: 35px;
    border-radius: 3px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    transition: .33s;
}

#smart-points-block {
    padding: 45px;
    margin: auto;
}

#s2id_smartpoint {
    box-shadow: 0 2px 4px 0 rgb(219 215 215 / 50%);
    border: solid 2px #7fd02c;
    padding: 10px;
    width: 72%;
    margin: 0 auto;
}

@media (max-width: 767px) {
    #smart-points-block {
        padding: 20px;
        margin-top: 35px;
    }

    .grid-wrapper {
        grid-gap: 0px;
    }

    .selected-content {
        max-height: 100%;
        max-width: 100%;
    }

    #s2id_smartpoint {
        width: 100%;
    }

    #login-form {
        margin-top: 15px;
    }
}

.selected-content {
    max-height: 100%;
    border: 1px solid #dae0de;
}

.address-user-name {
    border: 1px solid #dae0de;
    display: flex;
    align-items: center;
}

.single_shop_cart {
    margin: 0 0 10px 0;
}

.cart_sum_pros button, .cart_sum_coupon button {
    color: #ffffff;
    background-color: #7fd02c;
    border-color: #7fd02c;
}

.cart_sum_pros button:hover, .cart_sum_coupon button:hover {
    color: white;
    background-color: #e52029;
    border-color: #e52029;
}

.errorlist {
    color: #e25555;
    text-transform: uppercase;
    font-weight: 600;
    margin: 25px;
}

.modal-content {
    padding: 13px;
}

@media (max-width: 577px) {
    .grid-col-3 {
        grid-template-columns: repeat(1, auto);
        grid-template-rows: repeat(1, auto);
    }

    .selection-wrapper {
        margin: 0px 0px 30px 0px;
    }

    .selected-content {
        width: calc(100vw - 100px) !important;
    }

    #addresses-block {
        grid-template-columns: repeat(1, auto);
        grid-template-rows: repeat(1, auto);
    }

    .address-user-name {
        margin-bottom: auto !important;
    }

    .plus-button {
        margin-top: auto !important;
    }

    .next-btn {
        margin: auto !important;
    }

    /* checkout shipping container */
    .single_feature.d-flex.flex-column.flex-sm-row {
        padding: 10px;
    }

    .cart_price {
        margin: auto !important;
    }

    /*///////////////////////////// */
}

.modal-body .form-group {
    text-align: left;
    color: #0e0e0e;
}

input:checked ~ .address-user-name {
    box-shadow: 0 2px 4px 0 rgb(138 77 206 / 50%);
    border: solid 4px #7fd02c !important;
    -webkit-box-shadow: 0 2px 4px 0 rgb(138 77 206 / 50%);
}

input:checked ~ .selected-content {
    box-shadow: 0 2px 4px 0 rgb(138 77 206 / 50%);
    border: solid 4px #7fd02c !important;
    -webkit-box-shadow: 0 2px 4px 0 rgb(138 77 206 / 50%);
}

.not-auth {
    text-align: center;
}

.selected-content {
    width: 200px;
}

@media (min-width: 767px) {
    .not-auth-button {
        margin-bottom: 8px !important;
        margin-top: 46px !important;
    }

    .not-auth-policy {
        margin-bottom: 8px !important;
        margin-top: 30px !important;
    }

    #login-form {
        margin: 15px 15px 0px 15px;
    }
}

@media (max-width: 767px) {
    .not-auth-button {
        margin: 10px;
    }

    .not-auth-policy {
        margin: 10px;
    }

    .address-user-name {
        margin-bottom: 10px;
    }

    #pre-submit-modal {
        height: auto;
        z-index: 1998;
        top: 18%;
    }
}

@media (min-width: 1400px) {
    #smart-points-block {
        width: 80%;
    }

}

.address-user {
    display: flex;
}

.box-icon-creative-icon.fl-bigmug-line-big104 {
    margin-right: 88px;
}

@media (max-width: 900px) and (min-width: 578px) {
    #payment_id {
        grid-template-columns: repeat(3, auto);
        grid-template-rows: repeat(1, auto);
    }
}

.address-user span {
    margin-left: 9px;
}

.modal-title {
    font-size: 23px;
    font-weight: 600;
}

.modal-buttons {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}

.button-guest, .button-sign-up, .button-sign-in {
    width: 100%;
}

.modal-body div a {
    width: 90%;
    margin: 4px 0px 4px 0px;
}

.button-guest a i, .button-sign-in a i, .button-sign-up a i {
    margin-left: 10px
}

.col .card.h-100 {
    border: none;
}

#submit {
    width: 200px;
    background: #16882b;
    font-size: 22px;
    font-weight: 600;
}

.fa {
    font-style: normal;
}

.login-or {
    position: relative;
    color: #aaa;
    margin-top: 10px;
    margin-bottom: 10px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.span-or {
    display: block;
    position: absolute;
    left: 50%;
    top: -2px;
    margin-left: -25px;
    background-color: #fff;
    width: 50px;
    text-align: center;
}

.hr-or {
    height: 1px;
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}

/*custom radio group*/
.frb-group {
    margin: 15px 0;
    text-align: left;
}

.frb ~ .frb {
    margin-top: 10px;
}

.frb input[type="radio"]:empty,
.frb input[type="checkbox"]:empty {
    display: none;
}

.frb input[type="radio"] ~ label:before,
.frb input[type="checkbox"] ~ label:before {
    font-family: FontAwesome;
    content: "\f096";
    position: absolute;
    top: 15px;
    margin-top: -11px;
    right: 15px;
    font-size: 22px;
    color: #999;
}

.frb input[type="radio"]:checked ~ label:before,
.frb input[type="checkbox"]:checked ~ label:before {
    content: "\f046";
    color: #5cb85c;
}

.frb input[type="radio"] ~ label,
.frb input[type="checkbox"] ~ label {
    position: relative;
    cursor: pointer;
    width: 100%;
    border: 1px solid #ccc;
    /*border-radius: 5px;*/
    background-color: #fff;
}

.frb input[type="radio"] ~ label:focus,
.frb input[type="radio"] ~ label:hover,
.frb input[type="checkbox"] ~ label:focus,
.frb input[type="checkbox"] ~ label:hover {
    box-shadow: 0px 0px 3px #333;
}

.frb input[type="radio"]:checked ~ label,
.frb input[type="checkbox"]:checked ~ label {
    color: #fafafa;
}

.frb input[type="radio"]:checked ~ label,
.frb input[type="checkbox"]:checked ~ label {
    background-color: #f2f2f2;
}

.frb.frb-default input[type="radio"]:checked ~ label,
.frb.frb-default input[type="checkbox"]:checked ~ label {
    color: #333;
}

.frb.frb-primary input[type="radio"]:checked ~ label,
.frb.frb-primary input[type="checkbox"]:checked ~ label {
    background-color: #337ab7;
}

.frb.frb-success input[type="radio"]:checked ~ label,
.frb.frb-success input[type="checkbox"]:checked ~ label {
    border-color: #5cb85c;
}

.frb.frb-info input[type="radio"]:checked ~ label,
.frb.frb-info input[type="checkbox"]:checked ~ label {
    background-color: #5bc0de;
}

.frb.frb-warning input[type="radio"]:checked ~ label,
.frb.frb-warning input[type="checkbox"]:checked ~ label {
    background-color: #f0ad4e;
}

.frb.frb-danger input[type="radio"]:checked ~ label,
.frb.frb-danger input[type="checkbox"]:checked ~ label {
    background-color: #d9534f;
}

.frb input[type="radio"]:empty ~ label span,
.frb input[type="checkbox"]:empty ~ label span {
    display: inline-block;
}

.frb input[type="radio"]:empty ~ label span.frb-title,
.frb input[type="checkbox"]:empty ~ label span.frb-title {
    font-size: 16px;
    font-weight: 700;
    margin: 5px 5px 0px 10px;
    color: #000;
}

/*.frb input[type="radio"]:checked ~ label span.frb-title,*/
/*.frb input[type="checkbox"]:checked ~ label span.frb-title {*/
/*    color: #fff;*/
/*}*/

.frb input[type="radio"]:empty ~ label span.frb-description,
.frb input[type="checkbox"]:empty ~ label span.frb-description {
    font-weight: normal;
    /*font-style: italic;*/
    color: #999;
    margin: 5px 5px 5px 10px;
}

/*.frb input[type="radio"]:empty:checked ~ label span.frb-description,*/
/*.frb input[type="checkbox"]:empty:checked ~ label span.frb-description {*/
/*	color: #fafafa;*/
/*}*/

.frb.frb-default input[type="radio"]:empty:checked ~ label span.frb-description,
.frb.frb-default input[type="checkbox"]:empty:checked ~ label span.frb-description {
    color: #999;
}

/*custom radio group*/

/*custom radio group*/
.frb-group {
    margin: 15px 0;
    text-align: left;
}

.frb ~ .frb {
    margin-top: 10px;
}

.frb input[type="radio"]:empty,
.frb input[type="checkbox"]:empty {
    display: none;
}

.frb input[type="radio"] ~ label:before,
.frb input[type="checkbox"] ~ label:before {
    font-family: FontAwesome;
    content: "\f096";
    position: absolute;
    top: 15px;
    margin-top: -11px;
    right: 15px;
    font-size: 22px;
    color: #999;
}

.frb input[type="radio"]:checked ~ label:before,
.frb input[type="checkbox"]:checked ~ label:before {
    content: "\f046";
    color: #5cb85c;
}

.frb input[type="radio"] ~ label,
.frb input[type="checkbox"] ~ label {
    position: relative;
    cursor: pointer;
    width: 100%;
    border: 1px solid #ccc;
    /*border-radius: 5px;*/
    background-color: #fff;
}

.frb input[type="radio"] ~ label:focus,
.frb input[type="radio"] ~ label:hover,
.frb input[type="checkbox"] ~ label:focus,
.frb input[type="checkbox"] ~ label:hover {
    box-shadow: 0px 0px 3px #333;
}

.frb input[type="radio"]:checked ~ label,
.frb input[type="checkbox"]:checked ~ label {
    color: #fafafa;
}

.frb input[type="radio"]:checked ~ label,
.frb input[type="checkbox"]:checked ~ label {
    background-color: #f2f2f2;
}

.frb.frb-default input[type="radio"]:checked ~ label,
.frb.frb-default input[type="checkbox"]:checked ~ label {
    color: #333;
}

.frb.frb-primary input[type="radio"]:checked ~ label,
.frb.frb-primary input[type="checkbox"]:checked ~ label {
    background-color: #337ab7;
}

.frb.frb-success input[type="radio"]:checked ~ label,
.frb.frb-success input[type="checkbox"]:checked ~ label {
    border-color: #5cb85c;
}

.frb.frb-info input[type="radio"]:checked ~ label,
.frb.frb-info input[type="checkbox"]:checked ~ label {
    background-color: #5bc0de;
}

.frb.frb-warning input[type="radio"]:checked ~ label,
.frb.frb-warning input[type="checkbox"]:checked ~ label {
    background-color: #f0ad4e;
}

.frb.frb-danger input[type="radio"]:checked ~ label,
.frb.frb-danger input[type="checkbox"]:checked ~ label {
    background-color: #d9534f;
}

.frb input[type="radio"]:empty ~ label span,
.frb input[type="checkbox"]:empty ~ label span {
    display: inline-block;
}

.frb input[type="radio"]:empty ~ label span.frb-title,
.frb input[type="checkbox"]:empty ~ label span.frb-title {
    font-size: 16px;
    font-weight: 700;
    margin: 5px 5px 0px 10px;
    color: #000;
}

/*.frb input[type="radio"]:checked ~ label span.frb-title,*/
/*.frb input[type="checkbox"]:checked ~ label span.frb-title {*/
/*    color: #fff;*/
/*}*/

.frb input[type="radio"]:empty ~ label span.frb-description,
.frb input[type="checkbox"]:empty ~ label span.frb-description {
    font-weight: normal;
    /*font-style: italic;*/
    color: #999;
    margin: 5px 25px 5px 10px;
}

/*.frb input[type="radio"]:empty:checked ~ label span.frb-description,*/
/*.frb input[type="checkbox"]:empty:checked ~ label span.frb-description {*/
/*	color: #fafafa;*/
/*}*/

.frb.frb-default input[type="radio"]:empty:checked ~ label span.frb-description,
.frb.frb-default input[type="checkbox"]:empty:checked ~ label span.frb-description {
    color: #999;
}

/*custom radio group*/

/* payment design */
.payment_method_options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: stretch;
    flex-direction: initial;
    -ms-flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
}

.single_payment_method {
    width: 130px;
    /*height:        100px;*/
    border: 1px solid #E9E4E4;
    border-radius: 5px;
    /*margin-right: 20px;*/
    text-align: center;
    position: relative;
    margin: 5px;
    z-index: 1;
    cursor: pointer;
}

.sp_img {
    /*height: 80%;*/
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.sp_img img {
    height: 70px;
}

.single_payment_method .sp_text {
    font-size: 14px;
    color: #393838;
    font-weight: 700;
    margin-bottom: 10px;
}

.single_payment_method.active {
    border: 1px solid #74aa50;
}

.single_payment_method.active::after {
    content: "\f00c";
    position: absolute;
    right: -8px;
    top: -8px;
    font-family: "FontAwesome";
    font-weight: 900;
    color: #fff;
    font-size: 10px;
    z-index: 2;
    background: #74aa50;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
}

.payment_methods {
    padding: 15px 15px 15px;
    background: #FFFFFF;
    -webkit-box-shadow: 0px 0px 58px rgba(0, 0, 0, 0.04);
    box-shadow: 0px 0px 58px rgba(0, 0, 0, 0.04);
    border-radius: 5px;
    display: none;
}

.payment_methods.active {
    display: block;
}

.payment_method_title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.payment_method_title h4 {
    margin: 0;
    color: #393838;
    font-size: 16px;
    line-height: 1.5;
}

.payment_method_img img {
    margin-left: 15px;
    height: 30px;
}


.select2-container {
    font-size: 1rem !important;
    line-height: 1.5 !important;
    background-color: #fff !important;
    background-clip: padding-box !important;
    padding: .375rem .75rem !important;
}

.select2-results {
    overflow-y: scroll;
    max-height: 500px;
}

.remove-icon {
    padding-left: 8px;
    padding-top: 3px;
    color: #ef7c00;
}

.remove-icon span:hover {
    width: 20px;
    cursor: pointer
}

.miss-you-card {
    border-color: #833AB4FF;
}

.miss-you-header {
    background: rgb(131, 58, 180);
    background: linear-gradient(90deg, rgba(131, 58, 180, 1) 0%, rgba(253, 29, 29, 1) 50%, rgba(252, 176, 69, 1) 100%);
    color: white;
    font-weight: bolder;
}

.miss-you-body {
    background-image: url("/static/images/miss-you/gift-opacity.png");
}

.miss-you-body h5 {
    font-size: 20px;
    color: #fd3d57;
    font-weight: 700;
    text-shadow: 1px 1px #833AB4FF;
}


