.ppwix-wc-layout {
    display: flex;
    align-items: flex-start;
    gap: 40px;
}

/* Sidebar */
.ppwix-wc-sidebar {
    width: 260px;
    flex-shrink: 0;
}

/* Product area */
.ppwix-wc-products {
    flex: 1;
    min-width: 0;
}

/* Sidebar */
.ppwix-wc-sidebar {
    background: #f7f7f7;
    padding: 20px;
    border-radius: 6px;
}

/* Product list */
.ppwix-wc-products ul.products {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    flex-wrap: wrap !important;
    gap: 30px !important;
}

/* Product card */
.ppwix-wc-products ul.products li.product {
    float: none !important;
    margin: 0 !important;

    width: calc((100% - (var(--ppwix-cols) - 1) * 30px) / var(--ppwix-cols)) !important;
    max-width: 20%;

    background: #fff;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,.36);
    transition: transform .2s ease, box-shadow .2s ease;
    min-width:20%;
    padding:20px !important;
}

/* Hover effect */
.ppwix-wc-products ul.products li.product:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 40px rgba(0,0,0,.12);
}


/* Images */
.post_featured{
    min-height:200px !important;
    display: flex;
    align-items: center;      /* vertical center */
    justify-content: center;  /* horizontal center */
}

/* Product image wrapper */
.ppwix-wc-products ul.products li.product a img {
    max-height: 200px;
    width: auto;
    max-width: 100%;
    
    display: block;
    margin: 0 auto;
    object-fit: contain;
}

/* Titles */
.ppwix-wc-products li.product h2,
.ppwix-wc-products li.product h3 {
    font-size: 16px;
    margin: 12px 0 6px;
}

/* Price */
.ppwix-wc-products li.product .price {
    font-weight: 600;
    margin-bottom: 10px;
}

/* Buttons */
.ppwix-wc-products li.product .button {
    display:block;
    background-color:red;
    color:white;
    width: 100%;
    text-align: center;
}

a.button.product_type_simple{
     display:block;
    background-color:red;
    color:white;
    width: 50%;
    text-align: center;
    position:relative;
    z-index:999;
}




/* price */
bdi{
font-size:18px;
color:green;
}

.ppwix-wc-products .product-category.product {
    display: none !important;
}


/*----------------------------
 * Sidebar
 *--------------------------*/
 
 .ppwix-wc-cat-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.ppwix-wc-cat-list > li {
    margin-bottom: 12px;
}

.ppwix-wc-cat-list a {
    text-decoration: none;
    font-weight: 600;
    color: inherit;
}

.ppwix-wc-subcats {
    list-style: none;
    padding-left: 15px;
    margin-top: 6px;
}

.ppwix-wc-subcats li {
    margin: 6px 0;
}

.ppwix-wc-subcats a {
    font-weight: 400;
    font-size: 14px;
}

/* Force layout integrity */
.elementor-widget-ppwix_wc_all_products {
    overflow: visible !important;
}

/* Prevent wrapping */
.ppwix-wc-layout {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
}

/* Lock sidebar visibility */
.ppwix-wc-sidebar {
    display: block !important;
    width: 260px !important;
    min-width: 260px !important;
    max-width: 260px !important;
    flex: 0 0 260px !important;
}

/* ===============================
   FIX SIDEBAR VERTICAL JUMPING
   =============================== */

/* Force layout to align from the top */
.ppwix-wc-layout {
    align-items: flex-start !important;
}

/* Ensure sidebar never collapses or centers */
.ppwix-wc-sidebar {
    align-self: flex-start !important;
}

/* Ensure product area does not affect sidebar height */
.ppwix-wc-products {
    align-self: stretch;
    min-height: 600px; /* prevents layout collapse on small result sets */
}
/* ===============================
   PREVENT LAYOUT HEIGHT COLLAPSE
   =============================== */

/* Force layout to occupy full available height */
.ppwix-wc-layout {
    display: flex;
    align-items: flex-start;
    min-height: 100vh; /* KEY FIX */
}

/* Sidebar stays pinned */
.ppwix-wc-sidebar {
    align-self: flex-start;
}

/* Product area always has presence */
.ppwix-wc-products {
    flex: 1;
    min-height: 500px; /* prevents collapse on small result sets */
}
/* ===============================
   FORCE FULL-WIDTH WIDGET
   =============================== */

/* Elementor widget wrapper */
.elementor-widget-ppwix_wc_all_products {
    width: 100% !important;
}

/* Elementor widget container */
.elementor-widget-ppwix_wc_all_products > .elementor-widget-container {
    width: 100% !important;
}

/* Force layout to fill container */
.elementor-widget-ppwix_wc_all_products .ppwix-wc-layout {
    width: 100% !important;
    max-width: 100% !important;
    align-items: flex-start !important;
}

/* Sidebar locked */
.elementor-widget-ppwix_wc_all_products .ppwix-wc-sidebar {
    flex: 0 0 260px !important;
}

/* Product area must stretch */
.elementor-widget-ppwix_wc_all_products .ppwix-wc-products {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}


/* Ensure product area does not force wrap */
.ppwix-wc-products {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

/* Pagination wrapper */
.ppwix-wc-products .woocommerce-pagination {
    margin-top: 40px;
}

/* Remove list styling */
.ppwix-wc-products .woocommerce-pagination ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;

    display: flex;
    gap: 5px; /* spacing between squares */
}

/* Base pagination items */
.ppwix-wc-products .woocommerce-pagination li {
    list-style: none !important;
}

/* Pagination links + numbers */
.ppwix-wc-products .woocommerce-pagination a.page-numbers,
.ppwix-wc-products .woocommerce-pagination span.page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 38px;
    height: 38px;

    background: #c00000; /* red */
    color: #ffffff !important;
    text-decoration: none;
    font-weight: 600;
    border-radius: 0; /* square */
    transition: background .15s ease;
}

/* Hover state */
.ppwix-wc-products .woocommerce-pagination a.page-numbers:hover {
    background: #a00000;
}

/* Active page */
.ppwix-wc-products .woocommerce-pagination span.page-numbers.current {
    background: #000000;
    color: #ffffff;
    cursor: default;
}

/* Dots */
.ppwix-wc-products .woocommerce-pagination .dots {
    background: transparent !important;
    color: #000;
    width: auto;
    padding: 0 6px;
}

/* ===============================
   CATEGORY ACCORDION
   =============================== */

/* Parent item */
.ppwix-cat-parent {
    position: relative;
}

/* Parent links */
.ppwix-cat-parent > a {
    display: block;
    position: relative;
    padding-right: 18px;
    cursor: pointer;
}

/* Arrow indicator */
.ppwix-cat-parent > a::after {
    content: "▸";
    position: absolute;
    right: 0;
    top: 0;
    transition: transform 0.2s ease;
}

/* Rotate arrow when open */
.ppwix-cat-parent.is-open > a::after {
    transform: rotate(90deg);
}

/* Subcategory list (collapsed by default) */
.ppwix-cat-parent > .ppwix-wc-subcats {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    margin-left: 15px;
}

/* Expanded state */
.ppwix-cat-parent.is-open > .ppwix-wc-subcats {
    max-height: 1000px; /* safely larger than content */
}

/* Subcategory spacing */
.ppwix-wc-subcats li {
    margin: 6px 0;
}

