/* WooCommerce shop-specific overrides */
.dpg-shop-main { padding-bottom: 4rem; }
.dpg-shop-sidebar .widget { margin-bottom: 1.5rem; }
.dpg-shop-sidebar .widget-title { font-family: var(--dpg-font-display); color: var(--dpg-navy); font-size: 1.05rem; margin-bottom: .85rem; }
.dpg-cat-list a {
    display: flex; justify-content: space-between; align-items: center;
    padding: .45rem 0; color: var(--dpg-ink); text-decoration: none;
    border-bottom: 1px solid #F2F4F8;
}
.dpg-cat-list a:hover { color: var(--dpg-green); }
.dpg-cat-list__item.is-active a { color: var(--dpg-green); font-weight: 600; }
.dpg-widget-cta {
    padding: 1.25rem;
    background: linear-gradient(135deg, var(--dpg-navy), var(--dpg-navy-soft));
    border-radius: var(--dpg-radius);
}
.dpg-shop-toolbar select.orderby,
.woocommerce-ordering select {
    border: 1px solid #E6EAF2; padding: .5rem .85rem; border-radius: 10px;
    background-color: #fff; font-size: .9rem;
}
.woocommerce-pagination { margin-top: 2rem; }
.woocommerce-pagination ul.page-numbers { list-style: none; display: flex; flex-wrap: wrap; gap: .3rem; padding: 0; }
.woocommerce-pagination .page-numbers {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 38px; height: 38px; padding: 0 .65rem;
    border: 1px solid #E6EAF2; border-radius: 10px;
    color: var(--dpg-navy); text-decoration: none; font-weight: 600;
}
.woocommerce-pagination .page-numbers.current,
.woocommerce-pagination .page-numbers:hover {
    background: var(--dpg-green); color: #fff; border-color: var(--dpg-green);
}

/* Single product enhancements */
.dpg-single-product-page .product { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; }
@media (max-width: 767.98px) { .dpg-single-product-page .product { grid-template-columns: 1fr; gap: 1.5rem; } }
.dpg-single-product-page .product .product_title { font-family: var(--dpg-font-display); color: var(--dpg-navy); font-size: clamp(1.5rem, 2.5vw, 2.2rem); }
.dpg-single-product-page .product .price { color: var(--dpg-green); font-size: 1.5rem; font-weight: 700; }
.dpg-single-product-page .product .price del { color: var(--dpg-muted); font-weight: 400; font-size: 1.1rem; margin-right: .5rem; }
.dpg-single-product-page .product form.cart .button {
    background: var(--dpg-navy); color: #fff; padding: .75rem 1.5rem;
    border-radius: 100px; font-weight: 600; border: none;
}
.dpg-single-product-page .product form.cart .button:hover { background: var(--dpg-green); }

.dpg-single-product-bc { padding-top: 1.5rem; }
