/* =========================================================
   AESPL SINGLE PRODUCT - PRODUCT SUMMARY
========================================================= */


/* =========================================================
   SINGLE PRODUCT PAGE
========================================================= */

.aespl-single-product {
    width: 100%;
    background: #fff;
    color: #183b34;
}

.aespl-product-container {
    width: calc(100% - 90px);
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}


/* =========================================================
   BREADCRUMB
========================================================= */

.aespl-product-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 12px 0 16px;
    font-size: 12px;
    color: #7b8581;
}

.aespl-product-breadcrumb a {
    color: #6d7873;
    text-decoration: none;
}

.aespl-product-breadcrumb a:hover {
    color: #0d5c4e;
}

.aespl-breadcrumb-current {
    color: #8c938f;
}


/* =========================================================
   MAIN LAYOUT
========================================================= */

.aespl-product-section {
    padding: 4px 0 70px;
}

.aespl-product-layout {
    display: grid;

    grid-template-columns:
        minmax(0, 1.06fr)
        minmax(420px, 0.94fr);

    gap: 58px;

    align-items: start;
}


/* =========================================================
   PRODUCT SUMMARY
========================================================= */

.aespl-product-summary {
    min-width: 0;

    padding-top: 2px;
}


/* =========================================================
   CATEGORY + STOCK
========================================================= */

.aespl-summary-top {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    margin-bottom: 6px;
}

.aespl-product-category {
    color: #927047;

    font-size: 12px;

    line-height: 1.4;

    font-weight: 700;

    letter-spacing: 0.09em;

    text-transform: uppercase;
}

.aespl-stock-in,
.aespl-stock-out {
    display: flex;

    align-items: center;

    gap: 6px;

    white-space: nowrap;

    font-size: 11px;

    font-weight: 700;
}

.aespl-stock-in {
    color: #1f7a42;
}

.aespl-stock-out {
    color: #a13737;
}

.aespl-stock-dot {
    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: currentColor;
}


/* =========================================================
   PRODUCT TITLE
========================================================= */

.aespl-product-title {
    margin: 0 0 8px;

    color: #183d35;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(30px, 3vw, 43px);

    line-height: 1.08;

    font-weight: 600;

    letter-spacing: -0.025em;
}


/* =========================================================
   RATING
========================================================= */

.aespl-product-rating {
    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 6px;

    margin-bottom: 14px;

    color: #68736e;

    font-size: 12px;
}

.aespl-product-rating strong {
    color: #394943;

    font-weight: 700;
}

.aespl-stars {
    display: flex;

    gap: 1px;
}

.aespl-stars .star {
    color: #d8d8d0;

    font-size: 14px;
}

.aespl-stars .star.filled,
.aespl-stars .star.half {
    color: #d59b21;
}

.aespl-product-rating a {
    margin-left: 8px;

    color: #174f43;

    text-decoration: underline;

    text-underline-offset: 2px;

    font-weight: 600;
}


/* =========================================================
   SHORT DESCRIPTION
========================================================= */

.aespl-product-short-description {
    color: #68736e;

    font-size: 13px;

    line-height: 1.65;

    max-width: 620px;
}

.aespl-product-short-description p {
    margin: 0 0 7px;
}


/* =========================================================
   BENEFITS
========================================================= */

.aespl-product-benefits {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 12px;

    margin: 19px 0 21px;

    padding: 0 0 18px;

    border-bottom: 1px solid #e7ebe8;
}

.aespl-benefit {
    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 7px;

    text-align: center;

    color: #4f625b;

    font-size: 10px;

    line-height: 1.3;

    font-weight: 600;
}

.aespl-benefit-icon {
    width: 40px;
    height: 40px;

    border: 1px solid #cddbd5;

    border-radius: 50%;

    display: flex;

    align-items: center;
    justify-content: center;

    color: #246c5c;

    font-size: 20px;
}

.aespl-benefit-icon span {
    line-height: 1;
}


/* =========================================================
   PRICE
========================================================= */

.aespl-product-price-area {
    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 12px;

    margin-bottom: 15px;
}

.aespl-product-price {
    color: #164f43;

    font-size: 28px;

    line-height: 1;

    font-weight: 800;
}

.aespl-product-price del {
    margin-right: 8px;

    color: #999;

    font-size: 14px;

    font-weight: 500;
}

.aespl-product-price ins {
    color: #164f43;

    text-decoration: none;
}

.aespl-discount-badge {
    padding: 5px 10px;

    border-radius: 20px;

    background: #ead7aa;

    color: #76551f;

    font-size: 10px;

    font-weight: 800;
}


/* =========================================================
   WOOCOMMERCE ADD TO CART
========================================================= */

.aespl-cart-area {
    width: 100%;
}

.aespl-cart-area form.cart {
    display: flex;

    align-items: stretch;

    gap: 9px;

    margin: 0;

    padding: 0;
}


/* =========================================================
   QUANTITY
========================================================= */

.aespl-cart-area .quantity {
    position: relative;

    display: flex;

    align-items: center;

    flex: 0 0 82px;

    height: 46px;

    margin: 0 !important;

    border: 1px solid #d8dfdc;

    border-radius: 4px;

    background: #fff;
}

.aespl-cart-area .quantity .qty {
    width: 100%;
    height: 100%;

    padding: 0 24px;

    border: 0 !important;

    outline: none !important;

    background: transparent;

    color: #24453d;

    text-align: center;

    font-size: 13px;

    box-shadow: none !important;

    appearance: textfield;
}

.aespl-cart-area .quantity .qty::-webkit-inner-spin-button,
.aespl-cart-area .quantity .qty::-webkit-outer-spin-button {
    appearance: none;

    margin: 0;
}


/* =========================================================
   CUSTOM QUANTITY BUTTONS
========================================================= */

.aespl-quantity-minus,
.aespl-quantity-plus {
    position: absolute;

    top: 0;

    width: 26px;
    height: 100%;

    border: 0;

    background: transparent;

    color: #6b7872;

    cursor: pointer;

    font-size: 17px;

    line-height: 1;

    z-index: 2;
}

.aespl-quantity-minus {
    left: 0;
}

.aespl-quantity-plus {
    right: 0;
}


/* =========================================================
   ADD TO CART BUTTON
========================================================= */

.aespl-cart-area .single_add_to_cart_button {
    flex: 1;

    min-width: 0;

    height: 46px;

    margin: 0 !important;

    padding: 0 25px !important;

    border: none !important;

    border-radius: 25px !important;

    background: #075a4a !important;

    color: #fff !important;

    font-size: 12px !important;

    font-weight: 800 !important;

    letter-spacing: 0.04em;

    text-transform: uppercase;

    cursor: pointer;

    transition:
        background 0.2s ease,
        transform 0.2s ease;
}

.aespl-cart-area .single_add_to_cart_button:hover {
    background: #06483d !important;

    transform: translateY(-1px);
}


/* =========================================================
   VARIABLE PRODUCT
========================================================= */


/* ---------------------------------------------------------
   VARIABLE PRODUCT FORM
--------------------------------------------------------- */

.aespl-cart-area form.cart.variations_form {
    display: block !important;

    width: 100%;

    margin: 0 !important;

    padding: 0 !important;
}


/* ---------------------------------------------------------
   VARIATION TABLE
--------------------------------------------------------- */

.aespl-cart-area form.cart.variations_form
.variations {
    display: block !important;

    width: 100% !important;

    margin: 0 0 12px !important;

    padding: 0 !important;

    border: 0 !important;

    border-collapse: collapse !important;
}

.aespl-cart-area form.cart.variations_form
.variations tbody {
    display: block;

    width: 100%;
}

.aespl-cart-area form.cart.variations_form
.variations tr {
    display: block !important;

    width: 100%;

    margin: 0 0 8px !important;

    padding: 0 !important;
}

.aespl-cart-area form.cart.variations_form
.variations th,
.aespl-cart-area form.cart.variations_form
.variations td {
    display: block !important;

    width: 100% !important;

    padding: 0 !important;

    margin: 0 !important;

    border: 0 !important;

    text-align: left !important;
}


/* ---------------------------------------------------------
   VARIATION LABEL
--------------------------------------------------------- */

.aespl-cart-area form.cart.variations_form
.variations th label,
.aespl-cart-area form.cart.variations_form
.variations td label {

    display: block;

    margin: 0 0 7px;

    color: #30483f;

    font-size: 12px;

    line-height: 1.4;

    font-weight: 700;
}


/* ---------------------------------------------------------
   VARIATION SELECT
--------------------------------------------------------- */

.aespl-cart-area form.cart.variations_form
.variations select {

    display: block;

    width: 100% !important;

    min-width: 0;

    height: 44px;

    min-height: 44px;

    padding: 0 38px 0 13px;

    margin: 0 !important;

    border: 1px solid #d6dfdb !important;

    border-radius: 5px;

    background-color: #fff;

    color: #30483f;

    font-size: 13px;

    line-height: 44px;

    outline: none;

    box-sizing: border-box;

    cursor: pointer;
}

.aespl-cart-area form.cart.variations_form
.variations select:focus {

    border-color: #0c604f !important;

    box-shadow:
        0 0 0 1px rgba(12, 96, 79, 0.08);
}


/* ---------------------------------------------------------
   CLEAR / RESET VARIATIONS
--------------------------------------------------------- */

.aespl-cart-area form.cart.variations_form
.reset_variations {

    display: inline-block;

    margin-top: 6px;

    color: #477269;

    font-size: 10px;

    line-height: 1.4;

    text-decoration: none;
}

.aespl-cart-area form.cart.variations_form
.reset_variations:hover {

    color: #075a4a;

    text-decoration: underline;
}


/* =========================================================
   SELECTED VARIATION AREA
========================================================= */

.aespl-cart-area
form.cart.variations_form
.single_variation_wrap {

    display: block !important;

    width: 100%;

    margin: 0;

    padding: 0;
}


/* ---------------------------------------------------------
   VARIATION PRICE
--------------------------------------------------------- */

.aespl-cart-area
form.cart.variations_form
.single_variation {

    display: block !important;

    width: 100%;

    margin: 0 0 13px;

    padding: 0;

    border: 0;

    background: transparent;
}

.aespl-cart-area
form.cart.variations_form
.single_variation
.woocommerce-variation-price {

    display: block;

    width: 100%;

    margin: 0 0 12px;
}

.aespl-cart-area
form.cart.variations_form
.single_variation
.price {

    display: block;

    margin: 0;

    color: #164f43;

    font-size: 27px;

    line-height: 1.1;

    font-weight: 800;
}

.aespl-cart-area
form.cart.variations_form
.single_variation
.price del {

    margin-right: 8px;

    color: #999;

    font-size: 13px;

    font-weight: 500;
}

.aespl-cart-area
form.cart.variations_form
.single_variation
.price ins {

    color: #164f43;

    text-decoration: none;
}


/* ---------------------------------------------------------
   VARIATION DESCRIPTION
--------------------------------------------------------- */

.aespl-cart-area
form.cart.variations_form
.woocommerce-variation-description {

    width: 100%;

    margin: 0 0 10px;

    color: #68736e;

    font-size: 12px;

    line-height: 1.6;
}

.aespl-cart-area
form.cart.variations_form
.woocommerce-variation-description p {

    margin: 0 0 6px;
}


/* ---------------------------------------------------------
   VARIATION AVAILABILITY / STOCK
--------------------------------------------------------- */

.aespl-cart-area
form.cart.variations_form
.woocommerce-variation-availability {

    display: block;

    width: 100%;

    margin: 0 0 13px;

    color: #24453d;

    font-size: 12px;

    line-height: 1.5;
}

.aespl-cart-area
form.cart.variations_form
.woocommerce-variation-availability
p {

    margin: 0;

    color: #24453d;

    font-size: 12px;
}

.aespl-cart-area
form.cart.variations_form
.woocommerce-variation-availability
.in-stock {

    color: #24453d;
}


/* =========================================================
   VARIABLE ADD TO CART AREA
========================================================= */

.aespl-cart-area
form.cart.variations_form
.woocommerce-variation-add-to-cart {

    display: flex !important;

    align-items: stretch;

    width: 100%;

    gap: 9px;

    margin: 0 !important;

    padding: 0 !important;
}


/* ---------------------------------------------------------
   VARIABLE QUANTITY
--------------------------------------------------------- */

.aespl-cart-area
form.cart.variations_form
.woocommerce-variation-add-to-cart
.quantity {

    position: relative;

    display: flex;

    align-items: center;

    flex: 0 0 82px;

    width: 82px;

    height: 46px;

    margin: 0 !important;

    border: 1px solid #d8dfdc;

    border-radius: 4px;

    background: #fff;

    box-sizing: border-box;
}


/* ---------------------------------------------------------
   VARIABLE QUANTITY INPUT
--------------------------------------------------------- */

.aespl-cart-area
form.cart.variations_form
.woocommerce-variation-add-to-cart
.quantity
.qty {

    width: 100%;

    height: 100%;

    padding: 0 24px;

    border: 0 !important;

    outline: none !important;

    background: transparent;

    color: #24453d;

    text-align: center;

    font-size: 13px;

    box-shadow: none !important;

    appearance: textfield;
}

.aespl-cart-area
form.cart.variations_form
.woocommerce-variation-add-to-cart
.quantity
.qty::-webkit-inner-spin-button,
.aespl-cart-area
form.cart.variations_form
.woocommerce-variation-add-to-cart
.quantity
.qty::-webkit-outer-spin-button {

    appearance: none;

    margin: 0;
}


/* ---------------------------------------------------------
   VARIABLE ADD TO CART BUTTON
--------------------------------------------------------- */

.aespl-cart-area
form.cart.variations_form
.woocommerce-variation-add-to-cart
.single_add_to_cart_button {

    display: flex !important;

    align-items: center;

    justify-content: center;

    flex: 1;

    min-width: 0;

    width: auto;

    height: 46px;

    margin: 0 !important;

    padding: 0 25px !important;

    border: none !important;

    border-radius: 25px !important;

    background: #075a4a !important;

    color: #fff !important;

    font-size: 12px !important;

    line-height: 1;

    font-weight: 800 !important;

    letter-spacing: 0.04em;

    text-transform: uppercase;

    cursor: pointer;

    box-sizing: border-box;

    transition:
        background 0.2s ease,
        transform 0.2s ease;
}

.aespl-cart-area
form.cart.variations_form
.woocommerce-variation-add-to-cart
.single_add_to_cart_button:hover {

    background: #06483d !important;

    transform: translateY(-1px);
}


/* =========================================================
   WOOCOMMERCE VARIATIONS BUTTON WRAPPER
========================================================= */

.aespl-cart-area
form.cart.variations_form
.variations_button {

    width: 100%;

    margin: 0;

    padding: 0;
}


/* =========================================================
   GROUPED PRODUCT
========================================================= */

.aespl-cart-area .group_table {
    width: 100%;

    margin: 0 0 14px;

    border-collapse: collapse;
}

.aespl-cart-area .group_table td {
    padding: 7px 5px;

    border-bottom: 1px solid #edf0ee;
}

.aespl-cart-area .group_table .quantity {
    width: 75px;
}


/* =========================================================
   EXTERNAL / AFFILIATE PRODUCT
========================================================= */

.aespl-cart-area .single_add_to_cart_button.product_type_external {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    text-decoration: none;
}


/* =========================================================
   OUT OF STOCK
========================================================= */

.aespl-out-of-stock-message {
    padding: 14px;

    border: 1px solid #ead6d6;

    border-radius: 5px;

    color: #a04444;

    background: #fff8f8;

    font-size: 13px;
}


/* =========================================================
   PRODUCT META
========================================================= */

.aespl-product-meta {
    margin-top: 18px;

    padding-top: 13px;

    border-top: 1px solid #e7ebe8;
}

.aespl-meta-row {
    display: grid;

    grid-template-columns:
        75px
        minmax(0, 1fr);

    gap: 8px;

    margin-bottom: 6px;

    color: #76807c;

    font-size: 10px;

    line-height: 1.5;
}

.aespl-meta-row span {
    color: #394c45;

    font-weight: 700;
}

.aespl-meta-row strong {
    color: #77827d;

    font-weight: 500;
}


/* =========================================================
   TABLET - SUMMARY
========================================================= */

@media (max-width: 1024px) {

    .aespl-product-container {
        width: min(100% - 30px, 960px);
    }

    .aespl-product-layout {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(340px, 0.9fr);

        gap: 32px;
    }

    .aespl-product-title {
        font-size: 34px;
    }

    .aespl-product-benefits {
        gap: 6px;
    }

    .aespl-benefit {
        font-size: 9px;
    }

}


/* =========================================================
   MOBILE - SUMMARY
========================================================= */

@media (max-width: 767px) {

    .aespl-product-container {
        width: calc(100% - 24px);
    }

    .aespl-product-section {
        padding-bottom: 45px;
    }


    /* -----------------------------------------
       Breadcrumb
    ----------------------------------------- */

    .aespl-product-breadcrumb {
        padding: 10px 0 13px;

        font-size: 10px;

        white-space: nowrap;

        overflow: hidden;
    }


    /* -----------------------------------------
       Main Layout
    ----------------------------------------- */

    .aespl-product-layout {
        display: flex;

        flex-direction: column;

        gap: 25px;
    }


    /* -----------------------------------------
       Summary
    ----------------------------------------- */

    .aespl-product-summary {
        width: 100%;
    }

    .aespl-summary-top {
        margin-bottom: 5px;
    }

    .aespl-product-category {
        font-size: 10px;
    }

    .aespl-stock-in,
    .aespl-stock-out {
        font-size: 10px;
    }

    .aespl-product-title {
        font-size: 29px;

        line-height: 1.1;

        margin-bottom: 8px;
    }

    .aespl-product-rating {
        font-size: 11px;

        margin-bottom: 12px;
    }

    .aespl-product-short-description {
        font-size: 12px;

        line-height: 1.6;
    }


    /* -----------------------------------------
       Benefits
    ----------------------------------------- */

    .aespl-product-benefits {
        margin: 17px 0;

        padding-bottom: 16px;

        grid-template-columns:
            repeat(4, 1fr);

        gap: 4px;
    }

    .aespl-benefit {
        font-size: 8px;
    }

    .aespl-benefit-icon {
        width: 36px;
        height: 36px;

        font-size: 17px;
    }


    /* -----------------------------------------
       Price
    ----------------------------------------- */

    .aespl-product-price {
        font-size: 25px;
    }

    .aespl-product-price del {
        font-size: 12px;
    }


    /* -----------------------------------------
       Cart
    ----------------------------------------- */

    .aespl-cart-area form.cart {
        gap: 7px;
    }

    .aespl-cart-area .quantity {
        flex: 0 0 78px;

        height: 44px;
    }

    .aespl-cart-area .single_add_to_cart_button {
        height: 44px;

        padding: 0 14px !important;

        font-size: 10px !important;
    }

    .aespl-product-meta {
        margin-top: 16px;
    }


    /* -----------------------------------------
       Variable Product
    ----------------------------------------- */

    .aespl-cart-area
    form.cart.variations_form
    .single_variation
    .price {

        font-size: 25px;
    }

    .aespl-cart-area
    form.cart.variations_form
    .woocommerce-variation-add-to-cart {

        gap: 7px;
    }

    .aespl-cart-area
    form.cart.variations_form
    .woocommerce-variation-add-to-cart
    .quantity {

        flex: 0 0 78px;

        width: 78px;

        height: 44px;
    }

    .aespl-cart-area
    form.cart.variations_form
    .woocommerce-variation-add-to-cart
    .single_add_to_cart_button {

        height: 44px;

        padding: 0 14px !important;

        font-size: 10px !important;
    }

    .aespl-cart-area
    form.cart.variations_form
    .variations select {

        height: 44px;

        min-height: 44px;

        font-size: 12px;
    }


    /* -----------------------------------------
       Cart Message
    ----------------------------------------- */

    .aespl-cart-message {

        margin-top: 9px;

        padding: 9px 11px;

        gap: 8px;

        font-size: 11px;
    }

    .aespl-cart-message-icon {

        width: 19px;
        height: 19px;

        flex-basis: 19px;

        font-size: 11px;
    }

    .aespl-cart-loading-text {
        font-size: 10px;
    }

    .aespl-cart-loader {

        width: 13px;
        height: 13px;

        flex-basis: 13px;

        border-width: 2px;
    }

}


/* =========================================================
   SMALL MOBILE - SUMMARY
========================================================= */

@media (max-width: 420px) {

    .aespl-product-container {
        width: calc(100% - 20px);
    }

    .aespl-product-title {
        font-size: 26px;
    }

    .aespl-product-rating a {
        width: 100%;

        margin-left: 0;
    }


    /* -----------------------------------------
       Variable Product
    ----------------------------------------- */

    .aespl-cart-area
    form.cart.variations_form
    .single_variation
    .price {

        font-size: 23px;
    }

    .aespl-cart-area
    form.cart.variations_form
    .woocommerce-variation-add-to-cart
    .quantity {

        flex: 0 0 72px;

        width: 72px;
    }

    .aespl-cart-area
    form.cart.variations_form
    .woocommerce-variation-add-to-cart
    .single_add_to_cart_button {

        padding: 0 10px !important;

        font-size: 9px !important;
    }


    /* -----------------------------------------
       Benefits
    ----------------------------------------- */

    .aespl-benefit {
        font-size: 7.5px;
    }

    .aespl-benefit-icon {
        width: 33px;
        height: 33px;
    }


    /* -----------------------------------------
       Cart Message
    ----------------------------------------- */

    .aespl-cart-message {

        font-size: 10px;

        padding: 8px 10px;
    }

}


/* =========================================================
   ADD TO CART SUCCESS / ERROR MESSAGE
========================================================= */

.aespl-cart-message {
    display: flex;

    align-items: center;

    gap: 9px;

    width: 100%;

    box-sizing: border-box;

    margin-top: 10px;

    padding: 10px 13px;

    border: 1px solid transparent;

    border-radius: 6px;

    font-size: 12px;

    line-height: 1.45;

    font-weight: 600;

    animation:
        aesplCartMessageIn
        0.25s ease;
}


/* ---------------------------------------------------------
   Success
--------------------------------------------------------- */

.aespl-cart-message-success {
    border-color: #c9dfd6;

    background: #f3faf7;

    color: #17634f;
}

.aespl-cart-message-success
.aespl-cart-message-icon {

    background: #176b56;

    color: #fff;
}


/* ---------------------------------------------------------
   Error
--------------------------------------------------------- */

.aespl-cart-message-error {
    border-color: #ead1d1;

    background: #fff7f7;

    color: #a33f3f;
}

.aespl-cart-message-error
.aespl-cart-message-icon {

    background: #a33f3f;

    color: #fff;
}


/* ---------------------------------------------------------
   Message Icon
--------------------------------------------------------- */

.aespl-cart-message-icon {
    flex: 0 0 20px;

    width: 20px;
    height: 20px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    font-size: 12px;

    line-height: 1;

    font-weight: 800;
}


/* ---------------------------------------------------------
   Message Text
--------------------------------------------------------- */

.aespl-cart-message-text {
    flex: 1;

    min-width: 0;
}


/* ---------------------------------------------------------
   Hidden State
--------------------------------------------------------- */

.aespl-cart-message[hidden] {
    display: none !important;
}


/* ---------------------------------------------------------
   Message Animation
--------------------------------------------------------- */

@keyframes aesplCartMessageIn {

    from {
        opacity: 0;

        transform:
            translateY(-4px);
    }

    to {
        opacity: 1;

        transform:
            translateY(0);
    }

}


/* =========================================================
   ADD TO CART LOADING STATE
========================================================= */

.aespl-cart-area
.single_add_to_cart_button.aespl-cart-loading {

    display: inline-flex !important;

    align-items: center;

    justify-content: center;

    gap: 8px;

    cursor: wait;

    opacity: 0.72;

    transform: none !important;
}


/* ---------------------------------------------------------
   Loader
--------------------------------------------------------- */

.aespl-cart-loader {

    width: 14px;
    height: 14px;

    flex: 0 0 14px;

    border: 2px solid rgba(255, 255, 255, 0.45);

    border-top-color: #fff;

    border-radius: 50%;

    animation:
        aesplCartSpin
        0.7s linear infinite;
}


/* ---------------------------------------------------------
   Loading Text
--------------------------------------------------------- */

.aespl-cart-loading-text {
    display: inline-block;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 0.04em;
}


/* ---------------------------------------------------------
   Loader Animation
--------------------------------------------------------- */

@keyframes aesplCartSpin {

    to {
        transform: rotate(360deg);
    }

}