[data-block-name="woocommerce/single-product"] {
    form.cart .product-featured-icons {
        display: inline-flex;
        gap: 6px;
        position: relative;

        .product-loop-button {
            .ecomus-svg-icon {
                &.ecomus-svg-icon--shopping-bag {
                    font-size: 16px;
                    font-size: 1rem;
                }

                &.ecomus-svg-icon--heart {
                    font-size: 18px;
                    font-size: 1.125rem;

                    svg {
                        vertical-align: middle;
                    }
                }

                &.ecomus-svg-icon--trash {
                    font-size: 16px;
                    font-size: 1rem;
                }

                &.ecomus-svg-icon--trash-mt {
                    font-size: 20px;
                    font-size: 1.25rem;
                }

                &.ecomus-svg-icon--cross-arrow {
                    font-size: 16px;
                    font-size: 1rem;
                }

                &.ecomus-svg-icon--check {
                    font-size: 18px;
                    font-size: 1.125rem;
                }

                &.ecomus-svg-icon--eye {
                    font-size: 19px;
                    font-size: 1.1875rem;
                }
            }
        }

        & > * {
            margin: 0;

            &.em-loading-spin {
                --em-animation-state: paused;

                &::before {
                    opacity: 0;
                }
            }

            &.loading {
                --em-animation-state: running;
                position: relative;
                color: transparent;
                --em-animation-state: running;

                &::before {
                    display: inline-block;
                    content: "";
                    width: 18px;
                    height: 18px;
                    border-radius: 100%;
                    border: solid 2px var(--em-loading-color);
                    border-top-color: transparent;
                    position: absolute;
                    top: 0;
                    bottom: 0;
                    left: 0;
                    right: 0;
                    margin: auto;
                    animation: spin 0.6s linear infinite var(--em-animation-state);
                }

                & > * {
                    opacity: 0;
                }

                &::before {
                    opacity: 1;
                }
            }

            &.em-button-icon {
                --em-button-font-size: 16px;

                .wcboost-wishlist-button__text,
                .wcboost-products-compare-button__text {
                    display: none;
                }
            }

            &.em-button-light {
                --em-button-color: #000000;
                --em-button-color-hover: #ffffff;
                --em-button-bg-color: transparent;
                --em-button-bg-color-hover: #000000;
                --em-button-border-color: #ebebeb;
                --em-button-border-color-hover: var(--em-button-bg-color-hover);
                --em-button-eff-bg-color-hover: rgba(255, 255, 255, 0.25);
                border: 1px solid var(--em-button-border-color);
            }

            &.em-hide-icon > span:first-child {
                display: none;
            }

            &.em-hide-icon > span:last-child {
                margin-left: 0;
            }

            &.wcboost-wishlist-button,
            &.wcboost-products-compare-button {
                .ecomus-svg-icon {
                    font-size: inherit;
                    margin: 0;
                }
            }
        }

        .wcboost-wishlist-button {
            --em-button-border-color: #ebebeb;
            border: 1px solid var(--em-button-border-color);

            &:hover {
                --em-button-border-color: #000000;
            }
        }

        .wcboost-wishlist-button__icon,
        .wcboost-products-compare-button__icon {
            margin: 0;
        }
    }

    .single_variation_wrap {
        .woocommerce-variation-add-to-cart {
            display: flex;
            flex-wrap: wrap;
            align-items: flex-end;
            gap: 7px;

            .single_add_to_cart_button {
                flex-grow: 1;
            }
        }
    }

    .wc-block-components-product-price,
    .woocommerce-variation-price {
        margin: 0 0 2rem;

        bdi {
            font-size: 1.75rem;
            color: var(--em-color__dark);
            margin: 0;
            gap: 7px;
            line-height: 1;
        }
    }

    .em-product-item__data {
        display: none;
    }

    h2.wp-block-post-title {
        font-size: clamp(1.75rem, 3.5vw, 3rem);
    }

    table.variations {
        th, td.value {
            display: block;
            border-bottom-width: 0;
        }

        .reset_variations {
            display: none !important;
        }
    }

    [data-block-name="woocommerce/product-meta"] {
        position: relative;
        display: block;
        margin-top: 1rem;

        .wp-block-group {
            display: flex;
            flex-direction: column;
            align-items: flex-start;

            div {
                display: flex;
                flex-direction: row;
                gap: 8px;

                span {
                    line-height: 1.2em;
                    display: block;
                    font-weight: 600;
                    margin-bottom: 4px;
                }

                a {
                    line-height: 1.2em;
                    margin-bottom: 4px;
                }
            }
        }
    }

    @media (min-width: 1200px) {
        form.cart .product-featured-icons {
            & > * {
                --em-button-width: 49px;
                --em-button-height: 49px;
            }
        }
    }

    @media (max-width: 767px) {
        form.cart .product-featured-icons {
            & > *:not(.loading)::before,
            & > *:not(.loading)::after {
                display: none;
            }
        }
    }
}
