@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}


.ales-checkout .e-checkout__order_review {
    font-family: 'JOST';
    position:relative;
    overflow: hidden;
}

.ales-checkout h3#order_review_heading,  div#billing_pickup_location_notice{
    display:none;
}

.ales-checkout .woocommerce-checkout-payment {
    padding: 0 !important;
    margin-bottom: 0 !important;
}
.ales-checkout.elementor-widget-woocommerce-checkout-page .woocommerce .wc_payment_method label {
    display: inline-flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
}
.ales-checkout .woocommerce-checkout #payment ul.payment_methods li input {
    margin-right: 0;
}
.ales-checkout.elementor-widget-woocommerce-checkout-page .woocommerce-checkout #payment .payment_methods li {
    margin-bottom: 8px;
}

p#billing_postcode_field {
    width: calc(50%  - 10px) !important;
    float: left;
    margin-right:10px !important;
}
p#billing_city_field {
    width: calc(50%  - 10px);
    float: right;
    clear: initial !important;
    margin-left:10px !important;
}
.ales-checkout .woocommerce form .form-row .required {
    color: #ff7979;
}
.ales-checkout .woocommerce-checkout-payment {
    padding: 0 20px 20px 20px !important;
    border-bottom: 1px solid #eeeeee69 !important;
}
.ales-checkout  h3#order_payment_heading{
    padding: 20px 20px 5px 20px;
}

.ales-checkout.loading div#order_review::before {
    content: "";
    background-color: #5151514f;
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.ales-checkout.loading div#order_review::after {
    content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    z-index: 2;
    top: calc(50% - 15px);
    left: calc(50% - 15px);
    border-radius: 20px;
    border: 5px solid #ffffff;
    border-left-color: #ffffff30;
    animation: spin 0.5s linear infinite;
}

table.shop_table.woocommerce-checkout-review-order-table{
    display:none;
}
.ales-checkout-products {
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 20px;
}
.ales-checkout-products .single-product {
    display: flex;
    flex-direction: row;
    border-radius: 9px;
    gap: 10px;
    position: relative;
    align-items: center;
    transition: all 0.3s ease-in-out;
}
.ales-checkout-products .single-product:hover {
    background-color: #f2f2f2;
}
.ales-checkout-products .single-product .left {
    display: flex;
    align-items: center;
    min-width: 45px;
}
.ales-checkout-products .single-product .right {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    flex-grow: 1;
    align-items: center;
}
.ales-checkout-products .single-product span.price {
    font-weight: 600;
    font-size: 15px;
    color: #444;
    min-width: 85px;
    text-align: right;
}
.ales-checkout-products .single-product span.ren-label {
    font-size: 13px;
    color: #969aa9;
    width:100%;
}
.ales-checkout-products .single-product .left img {
    background-color: #f2f2f2;
    padding: 5px;
    border-radius: 6px;
    width: 45px;
}
.ales-checkout-products h4 {
    font-size: 14px;
    color: #444;
}
.ales-checkout-products h3, .ales-checkout-products h4{
    margin: unset !important;
}

.ales-checkout-products .products {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.ales-checkout-products .single-product:hover .actions{
    width:80px;
}
.ales-checkout-products .single-product .actions a {
    padding: 10px;
    display: flex;
    cursor: pointer;
}
.ales-checkout-products .single-product .actions {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0;
    height: 100%;
    background: linear-gradient(271deg, #f2f2f2 50%, transparent 80%);
    border-radius: 0 10px 10px 0;
    display: flex;
    align-items: center;
    width: 0px;
    justify-content: flex-end;
    transition: all 0.3s ease-in-out;
}
.ales-checkout #place_order {
    width: 100%;
    padding: 15px;
    border-radius: 10px;
    background-color: #ff536f;
    color:#fff;
    font-weight:600;
}
.ales-checkout-products .totals {
    border-top: 1px solid #eeeeee69;
    padding-top: 10px;
}
.ales-checkout-products  .single-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.ales-checkout-products  .single-item  span.tprice {
    font-weight: 600;
    font-size: 15px;
    color: #444;
}
.ales-checkout-products .fees-notice p {
    margin: 0;
    font-size: 13px;
    background-color: #e9f8ff;
    text-align: center;
    padding: 5px;
    border-radius: 3px;
    color: #080808;
    border: 1px solid #c8e7ff;
}