/*the large and small content setting variants are disabled within the hooks file: product_icons.hooks.php */
.component-product-icons {
    container-type: inline-size;
    container-name: product-icons;

    :where(.component-wrapper) {
        :where(.region) {
            :where(.content-wrap) {
                :where(.icons-container) {
                    display: grid;
                    justify-content: center;
                    grid-template-columns: 1fr 1fr 1fr;
                    gap: 2rem;
                    row-gap: 3rem;
                    margin-top: calc(var(--size-large) / 1.2);
                }

                :where(.product-name) {
                    display: flex;
                    justify-content: center;
                    font-size: var(--font-size-h3);
                    font-weight: var(--font-weight-h3);
                    line-height: var(--line-height);
                }

                :where(.centered-color) {
                    transition: all .2s ease-in-out;
                    background-color: #F0F0F0;
                    border-radius: var(--border-radius-common);
                }

                :where(.link) {
                    justify-content: center;
                    position: relative;
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                    justify-items: center;
                    padding-top: 1.5rem;
                    padding-bottom: 7rem;
                    transition: all .2s ease-in-out;
                    &:hover {
                        background-color: #F0F0F0;
                        border-radius: var(--border-radius-common);
                    }

                    .icon-item {
                        display: flex;
                        flex-direction: column;
                        justify-content: center;
                        align-items: center;
                        text-decoration: none;
                    }

                    .product-name {
                        font-size: var(--font-size-h5);
                        font-weight: 600;
                        margin-top: var(--size-x-small);
                        position: absolute;
                        top: 82%;
                        display: -webkit-box;
                        overflow: hidden;
                        -webkit-line-clamp: 2;
                        -webkit-box-orient: vertical;
                    }
                }
            }
        }
    }
}

@container product-icons (max-width: 100rem) {
    :where(.component-wrapper) {
        :where(.region) {
            :where(.content-wrap) {
                :where(.icons-container) {
                    grid-template-columns: 1fr 1fr !important;
                }
            }
        }
    }
}

@container product-icons (max-width: 70rem) {
    :where(.component-wrapper) {
        padding-inline: 4rem;
        :where(.region) {
            :where(.content-wrap) {
                :where(.icons-container) {
                    grid-template-columns: 1fr !important;
                    margin-inline: var(--size-small) !important;

                    :where(.icon-item) {
                        min-height: 30rem;
                    }
                }
            }
        }
    }
}
