[data-template="product"],
[data-template="product.bathtub"],
[data-template="product.customization"],
[data-template="product.vanity"] {
    media-gallery {
        padding: 0;

        @media screen and (min-width: 990px) {
            max-height: 655px;
        }

        .product-media-container {
            --gallery-aspect-ratio: 384/422;

            @media screen and (min-width: 750px) and (max-width: 989px) {
                --gallery-aspect-ratio: 753/660;
            }

            @media screen and (min-width: 990px) {
                --gallery-aspect-ratio: 594/655;
            }
        }

        slideshow-arrows {
            bottom: 23px;
            gap: 12px;

            &[position='center'] {
                justify-content: center;
                align-items: flex-end;
            }

            .slideshow-control {
                width: 64px;
                height: 40px;
                border-radius: 32px;
                border: 1px solid var(--black-10);
                background: var(--second-light);
                transition: background-color .3s ease;
                display: flex;
                align-items: center;
                justify-content: center;

                @media screen and (min-height: 990px) {
                    @media (hover: hover) {
                        border: 1px solid var(--black-10);
                        background-color: var(--black);

                        svg path {
                            fill: var(--white);
                        }
                    }
                }

                .svg-wrapper {
                    display: flex;
                    align-items: center;
                    justify-content: center;
                }
            }
        }
    }

    .product-information__media {
        @media screen and (min-width: 750px) {
            padding-right: 0 !important;
        }
    }

    .product-media {
        background: var(--second-light);
        max-height: 655px;
    }


    .product-back-to-collection-block {
        @media screen and (min-width: 750px) {
            min-height: 25px;
        }
    }


    .product-details {
        margin-top: 8px;

        @media screen and (min-width: 750px) {
            padding-left: 0 !important;
        }

        @media screen and (min-width: 990px) {
            margin-top: 0;
            flex: 0 0 448px;
        }

        .accordion-row-custom__summary {
            transition: padding .5s ease;

            @media screen and (min-width: 990px) {
                padding: 32px 0;
            }
        }

        .details[open] .accordion-row-custom__summary {
            @media screen and (min-width: 990px) {
                padding-bottom: 16px;
            }
        }

        .accordion-row-custom__content {
            @media screen and (min-width: 990px) {
                padding-bottom: 32px;
            }
        }

        .add-to-cart-text {
            @media screen and (min-width: 990px) {
                top: -2px;
                position: relative;
            }
        }

        accordion-custom {
            .details-content.accordion-row-custom__content {
                overflow: hidden;
                will-change: block-size, opacity;
            }
        }
    }

    .product-info-top {
        padding: 16px;
        background: var(--second-light);

        @media screen and (min-width: 990px) {
            padding: 24px;
        }

        @media screen and (min-width: 1400px) {
            justify-content: flex-start;
        }
    }

    .media-fit-contain :is(img, .deferred-media__poster-image) {
        background: var(--second-light);
    }

    .product-title {
        margin-bottom: 16px;
        height: min-content;

        h2 {
            font-size: 24px;
            line-height: normal;
            text-transform: uppercase;
            margin-top: -3px;
            text-wrap: auto;

            @media screen and (min-width: 990px) {
                font-size: 28px;
            }
        }
    }


    .product-actions-row .add-to-cart-button {
        min-height: 41px;
        height: 41px;
        border: 1px solid var(--black-10);
        background: var(--black);
        text-transform: none;
        transition: background-color var(--animation-speed) var(--animation-easing), color var(--animation-speed) var(--animation-easing);

        @media (hover: hover) {
            &:hover {
                background-color: var(--second-light);
                color: var(--black);
            }
        }
    }

    .variant-picker {
        margin-top: -4px;
    }

    .group-block:has(>.product-actions-row) {
        margin-top: 32px;
        
        @media screen and (min-width: 750px) {
            margin-top: 48px;
        }
    }



    .accordion {
        .details__header {
            @media (hover:hover) {
                &:hover {
                    .title-according:after {
                        width: 100%;
                    }
                }
            }

            .title-according {
                font-family: var(--font-body-family-custom);
                font-weight: 500;
                font-size: 18px;
                line-height: 1;
                letter-spacing: 0;
                min-height: 22px;

                &:after {
                    content: "";
                    position: absolute;
                    bottom: 0;
                    left: 0;
                    width: 0;
                    height: 1px;
                    background: var(--black);
                    transition: width .3s ease;
                }
            }
        }

        details>summary .icon-animated.accordion-row-custom__icon>svg {
            transition: transform .3s ease;
        }

        details[open]>summary .icon-animated.accordion-row-custom__icon>svg {
            transform: rotate(180deg);
        }


        details[open] {}
    }

    .featured-products-product {
        .section-resource-list__header {
            h2 {
                text-align: center;
            }
        }
    }

    .faqs-section__item {
        padding: 33px 0;
    }

    .faqs-section__item-heading {
        padding-left: 48px;
        width: 100%;
    }

    .product-information__grid:not(:has(.product-information__media:empty)).product-information--media-left {
        @media screen and (min-width: 750px) {
            grid-template-columns: 1fr;
        }

        @media screen and (min-width: 990px) {
            --sidebar-width: 448px;
            grid-template-columns: 1fr min(50vw, var(--sidebar-width));
        }
    }
}

.page-width-narrow,
.page-width-content {

    &:has([data-template="product"],
        [data-template="product.bathtub"],
        [data-template="product.customization"]),
        [data-template="product.vanity"] {
        --page-content-width: 1392px;
    }
}