.minimal-products-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 20px 0;
    padding: 0;
    overflow: hidden;
}

.minimal-product {
    display: flex;
    flex-direction: column;
    text-align: center;
}

@media (min-width: 300px) {
    .minimal-product { width: calc(50% - 10px); }
}

@media (min-width: 768px) {
    .minimal-product { width: calc(33% - 10px); }
}

@media (min-width: 1024px) {
    .minimal-product { width: calc(25% - 15px); }
}

.minimal-product a {
    text-decoration: none;
    color: inherit;
}

.minimal-product img {
    width: 100%;
    max-width: 250px !important;
    object-fit: contain;
    margin-bottom: 10px;
    transition: transform .2s;
}

.minimal-product:hover img { transform: scale(1.03); }

@media (prefers-reduced-motion: reduce) {
    .minimal-product img { transition: none; }
    .minimal-product:hover img { transform: none; }
}

.minimal-product .product-title {
    font-size: 1.1em;
    font-weight: 600;
    margin: 0;
}

.minimal-show-all-wrap {
    text-align: center;
    margin-top: 18px;
}

/* El contenedor del botón ocupa una fila completa de la cuadrícula flex. */
.minimal-products-grid > .elementor-element.elementor-widget.elementor-widget-button {
    flex-basis: 100%;
    display: flex;
    justify-content: center;
    margin-top: 18px;
}

.minimal-grid-image-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

/* Antes era un estilo en línea en el enlace. !important mantiene esa fuerza frente a los estilos de enlace del tema. */
.minimal-products-grid .minimal-product a.minimal-grid-image-wrap,
.minimal-products-grid .minimal-product a.minimal-grid-image-wrap:hover,
.minimal-products-grid .minimal-product a.minimal-grid-image-wrap:focus,
.minimal-products-grid .minimal-product a.minimal-grid-image-wrap .product-title {
    text-decoration: none !important;
}