/*
Theme Name: OceanWP Child - Volleyball Drill Shop
Theme URI: https://volleyballdrillshop.com
Description: Child theme for Volleyball Drill Shop with Stitch design system
Author: Doug Anton
Author URI: https://volleyballdrillshop.com
Template: oceanwp
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: oceanwp-child-vds
*/

/* ===== STITCH DESIGN SYSTEM - DESIGN TOKENS=*** */
/* Primary colors */
:root {
    --vds-primary: #002045;
    --vds-primary-container: #1a365d;
    --vds-surface: #f9f9fd;
    --vds-surface-container-low: #f3f3f7;
    --vds-cards: #ffffff;
    --vds-secondary: #7c5730; /* hardwood */
    --vds-accent: #f4a58a;
}

/* Typography */
:root {
    --vds-font-heading: 'Manrope', sans-serif;
    --vds-font-body: 'Inter', sans-serif;
}

/* Border radius */
:root {
    --vds-border-radius-button: 8px;
    --vds-border-radius-card: 12px;
}

/* ===== ELEMENTOR KIT GLOBAL VARIABLES ===== */
/* From _elementor_css meta (kit ID 10) - ensures global colors/fonts work in Elementor widgets */
.elementor-kit-10 {
    --e-global-color-primary: #002045;
    --e-global-color-secondary: #7c5730;
    --e-global-color-text: #191c1e;
    --e-global-color-accent: #f4a58a;
    --e-global-color-primary-container: #1a365d;
    --e-global-color-surface: #f9f9fd;
    --e-global-color-surface-low: #f3f3f7;
    --e-global-color-cards: #ffffff;
    --e-global-typography-primary-font-family: "Manrope";
    --e-global-typography-primary-font-weight: 700;
    --e-global-typography-secondary-font-family: "Manrope";
    --e-global-typography-secondary-font-weight: 500;
    --e-global-typography-text-font-family: "Inter";
    --e-global-typography-text-font-weight: 400;
    --e-global-typography-accent-font-family: "Inter";
    --e-global-typography-accent-font-weight: 500;
    font-family: "Inter", Sans-serif;
}

/* Hashed variable mappings (used by Elementor 4.x generated CSS) */
/* 051dedc = Accent color (used by btn_ai button in post-17.css) */
:root {
    --e-global-color-051dedc: #f4a58a;
}

/* ===== BUTTON OVERRIDES (AI button etc) ===== */
/* AI button specific overrides */
.elementor-widget[data-id="btn_ai"] .elementor-button {
    color: #002045 !important;
    border: 2px solid #f6c800 !important;
    background: #002045 !important;
    background-color: #002045 !important;
    box-shadow: 0 4px 12px rgba(0, 32, 69, 0.2) !important;
    border-radius: 8px !important;
}
.elementor-widget[data-id="btn_ai"] .elementor-button:hover {
    background: #f6c800 !important;
    background-color: #f6c800 !important;
    color: #002045 !important;
    border-color: #f6c800 !important;
    box-shadow: 0 6px 20px rgba(246, 200, 0, 0.4) !important;
    transform: translateY(-2px) !important;
    text-decoration: none !important;
}

/* ===== RESPONSIVE ADJUSTMENTS ===== */
@media (max-width: 768px) {
    #site-logo,
    #site-header.minimal-header #site-logo,
    body #site-logo,
    body #site-header.minimal-header #site-logo {
        margin-left: 0 !important;
        justify-content: center !important;
    }
    .site-logo-text,
    #site-header.minimal-header .site-logo-text,
    body .site-logo-text,
    body #site-header.minimal-header .site-logo-text {
        font-size: 24px !important;
    }
    .site-domain-text,
    #site-header.minimal-header .site-domain-text,
    body .site-domain-text,
    body #site-header.minimal-header .site-domain-text {
        font-size: 14px !important;
    }

    /* Adjust header height on mobile */
    #site-header,
    #site-header.minimal-header,
    body #site-header,
    body #site-header.minimal-header {
        min-height: 60px !important;
    }
}

/* ===== STITCH FOOTER ===== */
#footer {
    background: var(--vds-surface-container-low) !important; /* #f3f3f7 */
    border-top: 1px solid var(--vds-on-surface) !important;
    opacity: 1 !important;
}

#footer .footer-widgets-inner {
    max-width: 1400px !important;
}

#footer .footer-box {
    padding: 0 1.5rem !important;
}

#footer .widget-title {
    font-family: var(--vds-font-heading) !important;
    font-weight: 700 !important;
    font-size: 0.75rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    color: var(--vds-primary) !important; /* #002045 */
    margin-bottom: 1.5rem !important;
}

#footer .widget_text p,
#footer .widget_nav_menu a {
    font-family: var(--vds-font-body) !important;
    font-size: 0.875rem !important;
    color: var(--vds-on-surface-variant) !important; /* #43474e */
    line-height: 1.7 !important;
    transition: color 0.2s !important;
}

#footer .widget_nav_menu a:hover {
    color: var(--vds-primary) !important;
}

#footer .widget_text .court-craft-logo {
    font-family: var(--vds-font-heading) !important;
    font-weight: 800 !important;
    font-size: 1.5rem !important;
    color: var(--vds-primary) !important;
    letter-spacing: -0.02em !important;
    display: block !important;
    margin-bottom: 1rem !important;
}

#footer .widget_text .mission-statement {
    font-size: 0.875rem !important;
    line-height: 1.6 !important;
    max-width: 20rem !important;
}

#footer .widget_text .copyright-text {
    font-size: 0.75rem !important;
    color: var(--vds-outline) !important; /* #74777f */
    margin-top: 1.5rem !important;
}

/* Bottom bar */
#footer-bottom {
    background: transparent !important;
    border-top: 1px solid var(--vds-on-surface) !important;
    opacity: 1 !important;
    padding-top: 2rem !important;
    margin-top: 2rem !important;
}

#footer-bottom-inner {
    max-width: 1400px !important;
}

#copyright {
    font-size: 0.75rem !important;
    color: var(--vds-outline) !important;
}

/* Social icons */
#footer-bottom .social-links a {
    width: 2.5rem !important;
    height: 2.5rem !important;
    border-radius: 50% !important;
    background: var(--vds-surface-container-high) !important; /* #e7e8eb */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--vds-primary) !important;
    transition: all 0.2s !important;
    margin-right: 0.5rem !important;
}

#footer-bottom .social-links a:hover {
    background: var(--vds-primary) !important;
    color: var(--vds-on-primary) !important; /* white */
}

.status-pill {
    background: var(--vds-surface-container-high) !important;
    padding: 0.4rem 1rem !important;
    border-radius: 9999px !important;
    font-size: 0.7rem !important;
    font-family: var(--vds-font-heading) !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: var(--vds-on-surface-variant) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

.status-pill::before {
    content: '';
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    background: #10b981; /* emerald-500 */
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

/* Column widths for 4/12, 2/12, 3/12, 3/12 layout */
#footer-widgets .col-1 { width: 33.333% !important; }  /* 4/12 */
#footer-widgets .col-2 { width: 16.667% !important; } /* 2/12 */
#footer-widgets .col-3 { width: 25% !important; }     /* 3/12 */
#footer-widgets .col-4 { width: 25% !important; }     /* 3/12 */

/* Responsive */
@media (max-width: 768px) {
    #footer .footer-box {
        padding-bottom: 2rem !important;
    }
    #footer-widgets .col-1,
    #footer-widgets .col-2,
    #footer-widgets .col-3,
    #footer-widgets .col-4 {
        width: 100% !important;
    }
}

/* ===== FOOTER FONT SIZE + HOVER FIX ===== */
#footer-widgets .widget_nav_menu a,
#footer-widgets .widget_text p,
#footer .widget_nav_menu a,
#footer .widget_text p {
    font-size: 16px !important;
    line-height: 1.7 !important;
    color: var(--vds-primary) !important;
}
#footer-widgets .widget_nav_menu a:hover,
#footer-widgets .widget_text p a:hover,
#footer .widget_nav_menu a:hover,
#footer .widget_text p a:hover {
    color: var(--vds-secondary) !important;
}

/* ===== FOOTER WIDGET TITLES + TIGHTER SPACING ===== */
#footer-widgets .widget-title,
#footer .widget-title {
    font-size: 14px !important;
    line-height: 1.0 !important;
    margin-bottom: 0.75rem !important;
}
#footer-widgets .widget_nav_menu li,
#footer .widget_nav_menu li {
    margin-bottom: 1px !important;
}
#footer-widgets .widget_nav_menu a,
#footer-widgets .widget_text p,
#footer .widget_nav_menu a,
#footer .widget_text p {
    font-size: 14px !important;
    line-height: 1.0 !important;
}

/* ===== EVEN TIGHTER FOOTER ITEM SPACING ===== */
#footer-widgets .widget_nav_menu li,
#footer .widget_nav_menu li {
    margin-bottom: 1px !important;
    padding: 1px 0 !important;
}
#footer-widgets .widget_nav_menu a,
#footer .widget_nav_menu a {
    padding: 1px 0 !important;
    display: block !important;
}

/* ===== DRILL VAULT SIDEBAR ALIGNMENT ===== */
/* Top-align the categories sidebar with the product grid */
.elementor-67 .elementor-element-dv_content_right {
    align-self: flex-start !important;
}
.elementor-67 .elementor-element-dv_content_right .elementor-widget-wrap {
    padding-top: 0 !important;
}
/* Ensure categories heading matches product grid top alignment */
.elementor-67 .elementor-element-dv_sidebar_heading {
    margin-top: 0 !important;
    margin-bottom: 12px !important;
}
/* Style the product categories list in sidebar — force clean list, no grid */
.elementor-67 .elementor-element-dv_sidebar_categories .woocommerce.columns-1 ul.products,
.elementor-67 .elementor-element-dv_sidebar_categories .product-categories {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
}
.elementor-67 .elementor-element-dv_sidebar_categories .product-categories li,
.elementor-67 .elementor-element-dv_sidebar_categories ul.products li.product-category {
    display: block !important;
    width: 100% !important;
    float: none !important;
    margin-bottom: 6px !important;
    padding: 0 !important;
    text-align: left !important;
}
.elementor-67 .elementor-element-dv_sidebar_categories .product-categories li a,
.elementor-67 .elementor-element-dv_sidebar_categories ul.products li.product-category a {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    color: #4a5568 !important;
    text-decoration: none !important;
    display: block !important;
    padding: 2px 0 !important;
}
.elementor-67 .elementor-element-dv_sidebar_categories .product-categories li a:hover,
.elementor-67 .elementor-element-dv_sidebar_categories ul.products li.product-category a:hover {
    color: #002045 !important;
}
/* Hide category images in sidebar */
.elementor-67 .elementor-element-dv_sidebar_categories .woo-entry-image,
.elementor-67 .elementor-element-dv_sidebar_categories .product-inner .woo-entry-image {
    display: none !important;
}
/* Hide the count markers */
.elementor-67 .elementor-element-dv_sidebar_categories .count {
    display: none !important;
}

/* ===== REMOVE WIDGET TITLE LEFT BORDER ===== */
#footer-widgets .widget-title,
#footer .widget-title {
    border-left: none !important;
    padding-left: 0 !important;
}

/* ===== DRILL VAULT NATIVE TEMPLATE ===== */

/* Filter pills */
.dv-pill {
    display: inline-block;
    padding: 8px 20px;
    font-family: Manrope, sans-serif;
    font-size: 13px;
    font-weight: 600;
    border-radius: 20px;
    text-decoration: none;
    transition: all 0.25s ease;
    background: #f3f3f7;
    color: #4a5568 !important;
    border: 2px solid #f3f3f7;
}
.dv-pill:hover {
    background: #e7e8eb;
    color: #002045 !important;
}
.dv-pill-active {
    background: #002045;
    color: #ffffff !important;
    border-color: #002045;
}
.dv-pill-active:hover {
    background: #1a365d;
    color: #ffffff !important;
    border-color: #1a365d;
}

/* Product card hover */
.dv-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 32, 69, 0.12);
}

/* View Drill button */
.dv-view-drill {
    display: inline-block;
    padding: 8px 20px;
    background: #f3f3f7;
    color: #002045;
    font-family: Manrope, sans-serif;
    font-size: 13px;
    font-weight: 600;
    border-radius: 20px;
    text-decoration: none;
    transition: all 0.25s;
    border: 2px solid #f3f3f7;
}
.dv-view-drill:hover {
    background: #002045;
    color: #ffffff;
    border-color: #002045;
}

/* Category sidebar link hover */
.dv-cat-link:hover {
    background: #e7e8eb !important;
    color: #002045 !important;
}

/* Product grid category labels */
.dv-product-grid .dv-card > div > div:first-child span {
    font-family: Manrope, sans-serif;
    font-size: 11px;
    font-weight: 600;
    color: #7c5730;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* CTA buttons — matches About/Blog page bottom section style */
.dv-cta-btn {
    display: inline-block;
    padding: 10px 28px;
    font-family: Manrope, sans-serif;
    font-size: 15px;
    font-weight: 600;
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.25s;
    background: #002045;
    color: #ffffff;
    border: 1px solid #002045;
}
.dv-cta-btn:hover {
    background-color: transparent;
    background-image: linear-gradient(135deg, #7c5730 0%, #7c5730 100%);
    box-shadow: 1px 1px 8px 0px #f3f3f7;
    color: #ffffff;
    border-color: #7c5730;
}

/* Responsive: stack grid on tablet/mobile */
@media (max-width: 1024px) {
    .dv-product-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .dv-content > div {
        grid-template-columns: 1fr !important;
    }
    .dv-hero > div {
        grid-template-columns: 1fr !important;
        text-align: center;
    }
}
@media (max-width: 600px) {
    .dv-product-grid {
        grid-template-columns: 1fr !important;
    }
    .dv-hero {
        padding: 40px 20px !important;
    }
    .dv-hero h1 {
        font-size: 28px !important;
    }
    .dv-filters {
        padding: 30px 20px 10px !important;
    }
    .dv-content {
        padding: 0 20px 40px !important;
    }
    .dv-cta {
        padding: 40px 20px !important;
    }
    .dv-cta h2 {
        font-size: 24px !important;
    }
}

/* ===== DRILL VAULT SHORTCODE WIDGET STYLING ===== */
/* Style the [products] shortcode output to match Volley Blueprint design */
/* Targets OceanWP's custom markup structure */

/* Product grid container - override OceanWP grid */
.elementor-67 .elementor-element-dv_products_shortcode .woocommerce ul.products,
.elementor-67 .elementor-element-dv_products_shortcode ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Product card - OceanWP uses li.entry */
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.product {
    background: #ffffff !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
    transition: all 0.3s !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    float: none !important;
    text-align: left !important;
}
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry:hover,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.product:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 8px 24px rgba(0,32,69,0.12) !important;
}

/* Product image - OceanWP uses .woo-entry-image */
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .woo-entry-image img,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .image-wrap img,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.product a img {
    border-radius: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    height: 200px !important;
    object-fit: cover !important;
}

/* Hide the duplicate image-wrap (OceanWP shows both woo-entry-image and image-wrap) */
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .woo-entry-image {
    display: block !important;
}
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .image-wrap {
    display: none !important;
}

/* Product inner container */
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .product-inner {
    padding: 0 !important;
}

/* Category label - OceanWP uses li.category */
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .woo-entry-inner li.category,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry li.category,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li .category {
    padding: 16px 20px 4px !important;
    font-family: Inter, sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #7c5730 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    line-height: 1.4 !important;
}
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .woo-entry-inner li.category a,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry li.category a,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li .category a {
    color: #7c5730 !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Product title - OceanWP uses li.title h2 */
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .woo-entry-inner li.title h2,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry li.title h2 {
    font-family: Manrope, sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #002045 !important;
    padding: 4px 20px 8px !important;
    margin: 0 !important;
    line-height: 1.3 !important;
}
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .woo-entry-inner li.title h2 a,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry li.title h2 a {
    color: #002045 !important;
    text-decoration: none !important;
}

/* Price - OceanWP uses li.price-wrap */
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .woo-entry-inner li.price-wrap .price,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry li.price-wrap .price,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .price {
    font-family: Inter, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #7c5730 !important;
    padding: 0 20px 16px !important;
    margin: 0 !important;
}
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .price del {
    color: #a0aec0 !important;
}

/* Button - OceanWP uses li.btn-wrap */
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .woo-entry-inner li.btn-wrap,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry li.btn-wrap {
    padding: 0 20px 20px !important;
    margin: 0 !important;
}

.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .woo-entry-inner li.btn-wrap .button,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry li.btn-wrap .button,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry a.button {
    display: inline-block !important;
    padding: 8px 20px !important;
    background: #f3f3f7 !important;
    color: #002045 !important;
    font-family: Manrope, sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    border-radius: 20px !important;
    text-decoration: none !important;
    transition: all 0.25s !important;
    border: 2px solid #f3f3f7 !important;
    text-align: center !important;
}
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .woo-entry-inner li.btn-wrap .button:hover,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry a.button:hover {
    background: #002045 !important;
    color: #ffffff !important;
    border-color: #002045 !important;
}

/* Hide rating (no ratings on these products) */
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry .woo-entry-inner li.rating,
.elementor-67 .elementor-element-dv_products_shortcode ul.products li.entry li.rating {
    display: none !important;
}

/* Result count + sorting */
.elementor-67 .elementor-element-dv_products_shortcode .woocommerce-result-count,
.elementor-67 .elementor-element-dv_products_shortcode .woocommerce-ordering {
    font-family: Inter, sans-serif !important;
    font-size: 14px !important;
    color: #4a5568 !important;
}
.elementor-67 .elementor-element-dv_products_shortcode .woocommerce-result-count {
    margin: 0 0 16px !important;
}
.elementor-67 .elementor-element-dv_products_shortcode .woocommerce-ordering select {
    font-family: Inter, sans-serif !important;
    font-size: 14px !important;
    padding: 8px 12px !important;
    border: 1px solid #e7e8eb !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    color: #4a5568 !important;
}

/* Pagination */
.elementor-67 .elementor-element-dv_products_shortcode .woocommerce-pagination {
    margin-top: 32px !important;
}
.elementor-67 .elementor-element-dv_products_shortcode .woocommerce-pagination ul {
    border: none !important;
    margin: 0 !important;
}
.elementor-67 .elementor-element-dv_products_shortcode .woocommerce-pagination ul li {
    border: none !important;
    margin: 0 4px !important;
}
.elementor-67 .elementor-element-dv_products_shortcode .woocommerce-pagination ul li a,
.elementor-67 .elementor-element-dv_products_shortcode .woocommerce-pagination ul li span {
    font-family: Manrope, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #4a5568 !important;
    background: #f3f3f7 !important;
    border-radius: 8px !important;
    padding: 8px 14px !important;
    transition: all 0.2s !important;
}
.elementor-67 .elementor-element-dv_products_shortcode .woocommerce-pagination ul li a:hover,
.elementor-67 .elementor-element-dv_products_shortcode .woocommerce-pagination ul li span.current {
    background: #002045 !important;
    color: #ffffff !important;
}

/* ===== DRILL CATEGORIES SIDEBAR (OceanWP widget area) ===== */
.widget-area .widget_product_categories .widget-title {
    font-family: Manrope, sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #002045 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    margin: 0 0 16px !important;
}
.widget-area .widget_product_categories .product-categories {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.widget-area .widget_product_categories .product-categories li {
    margin-bottom: 8px !important;
}
.widget-area .widget_product_categories .product-categories li a {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 10px 12px !important;
    background: #f3f3f7 !important;
    border-radius: 8px !important;
    font-family: Manrope, sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #4a5568 !important;
    text-decoration: none !important;
    transition: all 0.2s !important;
}
.widget-area .widget_product_categories .product-categories li a:hover {
    background: #e7e8eb !important;
    color: #002045 !important;
}
.widget-area .widget_product_categories .product-categories .count {
    font-size: 12px !important;
    color: #a0aec0 !important;
}
/* Sidebar box styling */
.widget-area .widget_product_categories {
    background: #ffffff !important;
    border-radius: 16px !important;
    padding: 24px !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}

/* Responsive */
@media (max-width: 1024px) {
    .elementor-67 .elementor-element-dv_products_shortcode .woocommerce ul.products,
    .elementor-67 .elementor-element-dv_products_shortcode ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
@media (max-width: 600px) {
    .elementor-67 .elementor-element-dv_products_shortcode .woocommerce ul.products,
    .elementor-67 .elementor-element-dv_products_shortcode ul.products {
        grid-template-columns: 1fr !important;
    }
}

/* Echo KB: reduce search title font size (plugin hardcodes 48px) */
#epkb-ml__module-search .epkb-ml-search-title {
    font-size: 24px !important;
    font-weight: 600 !important;
}
