.product-icons-list {
    width: 100%;
    color: var(--product-icons-color, rgb(var(--color-text)));
}

.product-icons-list--with-panel {
    padding: var(--product-icons-panel-padding, 20px);
    background: var(--product-icons-background, rgb(var(--color-text) / 0.025));
    border: var(--product-icons-border-width, 0) solid var(--product-icons-border-color, rgb(var(--color-text) / 0.12));
    border-radius: var(--product-icons-border-radius, 0);
}

.product-icons-list__heading {
    margin: 0 0 16px;
}

.product-icons-list__items {
    display: grid;
    grid-template-columns: repeat(var(--product-icons-mobile-columns, 1), minmax(0, 1fr));
    gap: var(--product-icons-row-gap, 16px) var(--product-icons-column-gap, 16px);
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.product-icons-list--carousel .product-icons-list__items {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

.product-icons-list--carousel .product-icons-list__items::-webkit-scrollbar {
    display: none;
}

.product-icons-list--carousel .product-icons-list__item {
    flex: 0 0 calc((100% - (var(--product-icons-mobile-columns, 1) - 1) * var(--product-icons-column-gap, 16px)) / var(--product-icons-mobile-columns, 1));
    scroll-snap-align: start;
}

.product-icons-list__item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-width: 0;
    padding: 0.5rem 1rem;
    border-radius: 10px;
    background-color: rgb(var(--color-background));
}

.product-icons-list__item strong {
    font-weight: 500;
}

.product-icons-list__icon {
    display: block;
    flex: 0 0 var(--product-icons-icon-width, 32px);
    width: var(--product-icons-icon-width, 32px);
    margin: 0;
}

.product-icons-list__icon :is(img, svg) {
    display: block;
    width: 100%;
    height: auto;
}

.product-icons-list__content {
    min-width: 0;
}

.product-icons-list__title,
.product-icons-list__description {
    display: block;
    margin: 0;
}

.product-icons-list__description {
    margin-top: 2px;
    color: currentColor;
    opacity: 0.7;
}

.product-icons-list--card .product-icons-list__item {
    gap: 8px;

    border-inline-start: 1px solid #f0f0f0;
    border-radius: 0;
}

.product-icons-list--card .product-icons-list__item:first-child {
    border-inline-start: none;
}

@media (min-width: 960px) {
    .product-icons-list__items {
        grid-template-columns: repeat(var(--product-icons-columns, 2), minmax(0, 1fr));
    }

    .product-icons-list--carousel .product-icons-list__item {
        flex-basis: calc((100% - (var(--product-icons-columns, 2) - 1) * var(--product-icons-column-gap, 16px)) / var(--product-icons-columns, 2));
    }
}