/* WALK & FLY — Grid v10 */

.highlighted-informations, .quick-view, [class*="quickview"], [class*="quick-view"] {
    display: none !important; visibility: hidden !important;
    width: 0 !important; height: 0 !important; overflow: hidden !important;
}
.wf-trust-bar, .wf-shipping-bar { display: none !important; }

body#category #wrapper, body#search #wrapper, body.category #wrapper {
    max-width: 100% !important; width: 100% !important; padding: 0 !important;
}
body#category #content-wrapper, body#search #content-wrapper, body.category #content-wrapper {
    padding: 0 !important;
}

div.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 0 !important;
    background: #fff !important;
    padding: 0 !important; margin: 0 !important;
}

div.products > .product-miniature {
    width: 100% !important; max-width: 100% !important;
    flex: none !important; padding: 0 !important; margin: 0 !important;
    border-radius: 0 !important; box-shadow: none !important;
    background: #fff !important; overflow: hidden;
    border-bottom: 1px solid #f0f0f0 !important;
}
div.products > .product-miniature:hover { transform: none !important; box-shadow: none !important; }
div.products .card-product { border: none !important; box-shadow: none !important; background: transparent !important; }

/* Image area — padding-bottom trick on the PARENT, not the child */
div.products .product__card-img,
div.products .card-img-top {
    position: relative !important;
    overflow: hidden !important;
    background: #fff !important;
    padding-bottom: 100% !important;
    height: 0 !important;
}

/* The .rc.ratio1_1 inside — just fill parent */
div.products .rc.ratio1_1,
div.products .product-thumbnail.rc.ratio1_1 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important;
    width: 100% !important; height: 100% !important;
}

div.products .product-thumbnail img,
div.products .product-thumbnail img.lazyload {
    position: absolute !important;
    top: 0 !important; left: 0 !important;
    width: 100% !important; height: 100% !important;
    object-fit: contain !important;
    padding: 0 !important;
    display: block !important;
    transition: opacity 0.3s ease !important;
}

    position: absolute !important;
    top: 0 !important; left: 0 !important;
    width: 100% !important; height: 100% !important;
    object-fit: contain !important;
    padding: 0 !important;
    opacity: 0; transition: opacity 0.3s ease; z-index: 2;
    background: #f8f8f6;
}

/* Info — name + price on one line like Gioseppo */
div.products .card-body {
    padding: 12px 16px 4px !important;
    background: #fff !important;
}
div.products .product-description {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: baseline !important;
    gap: 8px !important;
}
div.products .product-title {
    font-size: 12px !important; font-weight: 400 !important;
    line-height: 1.4 !important; margin-bottom: 0 !important;
    color: #1a1a1a !important; text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
    flex: 1 !important; min-width: 0 !important;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
div.products .product-price-and-shipping {
    flex-shrink: 0 !important; margin: 0 !important;
}
div.products .product-price-and-shipping .price {
    font-size: 13px !important; font-weight: 600 !important; color: #1a1a1a !important;
}

/* Color dots — small, left-aligned like Gioseppo */
.wf-color-dots {
    display: flex !important; gap: 4px !important;
    padding: 6px 16px 14px !important;
    align-items: center !important; width: 100% !important;
}
.wf-color-dot {
    width: 10px !important; height: 10px !important;
    border-radius: 50% !important;
    border: 1px solid rgba(0,0,0,0.1) !important;
    flex-shrink: 0 !important;
    transition: transform 0.15s ease !important;
}
.wf-color-dot:hover { transform: scale(1.4) !important; }

div.products .product-flags { position: absolute !important; top: 8px; left: 8px; z-index: 3; }

#js-product-list-top, nav.pagination, .block-category, .breadcrumb, #js-product-list-header {
    padding-left: 16px !important; padding-right: 16px !important;
}

@media (max-width: 1200px) { div.products { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 767px) {
    div.products { grid-template-columns: repeat(2, 1fr) !important; }
    div.products .card-body { padding: 8px 10px 4px !important; }
    div.products .product-title { font-size: 11px !important; }
    .wf-color-dots { padding: 4px 10px 8px !important; }
}

/* Fix: theme .rc has rgba(0,0,0,.05) gray background */
div.products .rc,
div.products .rc.ratio1_1,
div.products .rc.ratio1_1.rc--lazyload,
div.products .product-thumbnail,
div.products .product-thumbnail.rc {
    background: #fff !important;
}
    background: #fff !important;
}

/* Hide Marcas, Walk and Fly and W&F menu items permanently */
#category-4 .align-self-center:not(:first-child),
li#manufacturers { display: none !important; }
li.menu__item[id="category-4"] > .menu__item-header > p > span { }

/* Hide duplicate Marcas menu item + manufacturer sub-items */
#top-menu > li#category-4 ~ li#category-4,
#top-menu > li.manufacturers,
#top-menu > li[id="manufacturers"],
a[href*="/manufacturer"],
a[href*="_walk-and-fly"],
a[href*="_wf"] {
    display: none !important;
}
