/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* ==========================================================================
   ELITE TECH-INSPIRED VERTICAL MENU RE-DESIGN (Toda La Tienda)
   ========================================================================== */

/* Main Dropdown Container - Drawer Accordion style */
.wd-dropdown-cats,
.wd-header-cats .wd-dropdown-menu {
    background: rgba(18, 18, 18, 0.97) !important;
    backdrop-filter: blur(25px) !important;
    -webkit-backdrop-filter: blur(25px) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-top: 3px solid #D62432 !important; /* Premium brand red top border */
    border-radius: 0 0 12px 12px !important;
    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.85) !important;
    padding: 10px 0 !important;
    width: 320px !important;
    max-height: calc(100vh - 180px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

/* Thin red custom scrollbar */
.wd-dropdown-cats::-webkit-scrollbar,
.wd-header-cats .wd-dropdown-menu::-webkit-scrollbar {
    width: 5px !important;
}
.wd-dropdown-cats::-webkit-scrollbar-track,
.wd-header-cats .wd-dropdown-menu::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.02) !important;
}
.wd-dropdown-cats::-webkit-scrollbar-thumb,
.wd-header-cats .wd-dropdown-menu::-webkit-scrollbar-thumb {
    background: rgba(214, 36, 50, 0.4) !important;
    border-radius: 10px !important;
}
.wd-dropdown-cats::-webkit-scrollbar-thumb:hover,
.wd-header-cats .wd-dropdown-menu::-webkit-scrollbar-thumb:hover {
    background: rgba(214, 36, 50, 0.8) !important;
}

/* Custom Categories Menu Hierarchy Styles */
.custom-categories-menu-wrapper {
    width: 100% !important;
    padding: 0 !important;
}

.custom-categories-menu,
.custom-menu-submenu {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

/* Hidden by default nested submenus */
.custom-menu-submenu {
    display: none;
    background: rgba(0, 0, 0, 0.15) !important;
}

/* Deeper nested submenu has darker background */
.custom-menu-submenu .custom-menu-submenu {
    background: rgba(0, 0, 0, 0.3) !important;
}

/* Menu Items wrapper */
.custom-menu-item {
    position: relative !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.03) !important;
    width: 100% !important;
}

.custom-menu-item:last-child {
    border-bottom: none !important;
}

/* Top-level list item row */
.custom-menu-item-link-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    position: relative !important;
    min-height: 54px !important;
    width: 100% !important;
    transition: background-color 0.25s ease !important;
}

.custom-menu-item-link-row:hover {
    background: rgba(214, 36, 50, 0.08) !important;
}

/* Link Element styling */
.custom-menu-item-link {
    display: flex !important;
    align-items: center !important;
    flex-grow: 1 !important;
    padding: 8px 15px 8px 20px !important;
    min-height: 54px !important;
    color: #cccccc !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border-left: 3px solid transparent !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.custom-menu-item-link-row:hover .custom-menu-item-link {
    color: #ffffff !important;
    border-left: 3px solid #D62432 !important;
    padding-left: 24px !important;
}

/* Category Icons */
.custom-cat-icon {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    margin-right: 12px !important;
    flex: 0 0 40px !important;
    opacity: 0.85 !important;
    transition: all 0.25s ease !important;
}

.custom-menu-item-link-row:hover .custom-cat-icon {
    transform: scale(1.05) !important;
    opacity: 1 !important;
}

/* Toggle Accordion Span Button */
.custom-menu-item-toggle {
    width: 45px !important;
    height: 54px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
    position: relative !important;
    opacity: 0.6 !important;
    transition: opacity 0.25s ease !important;
}

.custom-menu-item-toggle:hover {
    opacity: 1 !important;
}

/* Chevron Down Arrow Icon inside the toggle */
.custom-menu-item-toggle::after {
    content: "\f113" !important;
    font-family: "woodmart-font" !important;
    font-size: 10px !important;
    color: #aaaaaa !important;
    transition: transform 0.25s ease, color 0.25s ease !important;
    display: inline-block !important;
}

.custom-menu-item-link-row:hover .custom-menu-item-toggle::after {
    color: #D62432 !important;
}

/* Opened state arrow rotation */
.custom-opened > .custom-menu-item-link-row .custom-menu-item-toggle::after {
    transform: rotate(180deg) !important;
}

/* Indentations for Submenus (Level 2) */
.custom-menu-submenu .custom-menu-item-link-row {
    min-height: 48px !important;
}

.custom-menu-submenu .custom-menu-item-link {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #aaaaaa !important;
    padding-left: 35px !important;
    min-height: 48px !important;
}

.custom-menu-submenu .custom-menu-item-link-row:hover .custom-menu-item-link {
    padding-left: 39px !important;
}

.custom-menu-submenu .custom-cat-icon {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    flex: 0 0 32px !important;
}

/* Indentations for Sub-submenus (Level 3) */
.custom-menu-submenu .custom-menu-submenu .custom-menu-item-link {
    font-size: 12.5px !important;
    color: #888888 !important;
    padding-left: 55px !important;
}

.custom-menu-submenu .custom-menu-submenu .custom-menu-item-link-row:hover .custom-menu-item-link {
    padding-left: 59px !important;
}

.custom-menu-submenu .custom-menu-submenu .custom-cat-icon {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    flex: 0 0 24px !important;
}

/* ==========================================================================
   MODERN & ELEGANT SIDEBAR FILTER STYLING
   ========================================================================== */

/* Widget Card Container */
.widget-area .widget {
    background: rgba(255, 255, 255, 0.95) !important;
    border: 1px solid rgba(241, 242, 246, 0.9) !important;
    border-radius: 16px !important;
    padding: 20px !important; /* Space-optimized padding */
    margin-bottom: 20px !important;
    box-shadow: 0 8px 32px rgba(31, 38, 135, 0.04) !important;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}
.widget-area .widget:hover {
    background: rgba(255, 255, 255, 1) !important;
    box-shadow: 0 12px 40px rgba(31, 38, 135, 0.08) !important;
    border-color: rgba(231, 77, 61, 0.25) !important; /* Brand red accent border on hover */
    transform: translateY(-2px) !important;
}

/* Widget Header Titles */
.widget-area .widget-title,
.widget-area .widgettitle {
    font-size: 14.5px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
    color: #1b2631 !important;
    margin-bottom: 16px !important;
    position: relative !important;
    padding-bottom: 8px !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
}
.widget-area .widget-title::after,
.widget-area .widgettitle::after {
    content: '' !important;
    position: absolute !important;
    bottom: -1px !important;
    left: 0 !important;
    width: 40px !important;
    height: 3px !important;
    background: linear-gradient(90deg, #e74d3d, #c0392b) !important; /* Premium brand red gradient */
    border-radius: 2px !important;
    transition: width 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}
.widget-area .widget:hover .widget-title::after,
.widget-area .widget:hover .widgettitle::after {
    width: 60px !important;
}

/* Categories List Styling */
.widget_product_categories ul.product-categories,
.widget_product_categories ul.product-categories ul.children {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.widget_product_categories ul.product-categories li.cat-item {
    border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    position: relative !important;
    transition: all 0.3s ease !important;
}
.widget_product_categories ul.product-categories li.cat-item:last-child {
    border-bottom: none !important;
}

/* Remove default bullets or lists styling completely */
.widget_product_categories ul.product-categories li::before,
.widget_product_categories ul.product-categories li::after,
.widget_product_categories ul.product-categories a::before,
.widget_product_categories ul.product-categories a::after {
    display: none !important;
    content: none !important;
}

/* Category Link Style (Locked First Row Height for Perfect Alignment) */
.widget_product_categories ul.product-categories li.cat-item > a {
    color: #2c3e50 !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    padding: 0 4px !important;
    height: 38px !important; /* Compact row height */
    display: inline-flex !important;
    align-items: center !important;
    flex-grow: 1 !important;
    text-decoration: none !important;
    max-width: calc(100% - 36px) !important; /* Prevent overlapping with the chevron */
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    box-sizing: border-box !important;
}
.widget_product_categories ul.product-categories li.cat-item a:hover {
    color: #e74d3d !important;
    padding-left: 8px !important;
}

/* Active Category Style */
.widget_product_categories ul.product-categories li.cat-item.wd-active > a {
    color: #e74d3d !important;
    font-weight: 700 !important;
    background: rgba(231, 77, 61, 0.04) !important;
    border-left: 3px solid #e74d3d !important;
    padding-left: 8px !important;
}

/* Hide Category Count Badges completely with maximum specificity */
.widget_product_categories ul.product-categories li.cat-item .count,
.widget_product_categories ul.product-categories li.cat-item > .count,
.widget_product_categories ul.product-categories .count,
.widget_product_categories ul.product-categories .count {
    display: none !important;
}

/* Toggle Arrow Button (.wd-cats-toggle) - Locked Vertically to Row Centering */
.widget_product_categories ul.product-categories li.cat-item > .wd-cats-toggle {
    position: absolute !important;
    right: 8px !important;
    top: 19px !important; /* Exactly half of the 38px link height to avoid drifting on expansion */
    transform: translateY(-50%) !important;
    width: 24px !important;
    height: 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    margin: 0 !important;
    z-index: 10 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}
.widget_product_categories ul.product-categories li.cat-item > .wd-cats-toggle:after {
    content: "\f129" !important; /* Woodmart down chevron */
    font-family: "woodmart-font" !important;
    font-size: 11px !important;
    font-weight: bold !important;
    color: #7f8c8d !important; /* Soft gray, zero chillon */
    transition: all 0.25s ease !important;
}
.widget_product_categories ul.product-categories li.cat-item > .wd-cats-toggle.toggle-active {
    transform: translateY(-50%) rotate(180deg) !important;
}
.widget_product_categories ul.product-categories li.cat-item > .wd-cats-toggle.toggle-active:after {
    color: #2c3e50 !important; /* Charcoal when active */
}
.widget_product_categories ul.product-categories li.cat-item > .wd-cats-toggle:hover:after {
    color: #e74d3d !important;
}

/* Nested Subcategories List (ul.children) - Clean, Bullets Removed, Compact Space */
.widget_product_categories ul.product-categories ul.children {
    display: none; /* Hide by default to prevent loading flicker */
    padding: 4px 0 4px 12px !important;
    background: transparent !important;
    border-left: 1px dashed rgba(44, 62, 80, 0.1) !important;
    width: 100% !important;
}
/* Show children if they are part of active hierarchy or have been toggled open */
.widget_product_categories ul.product-categories li.current-cat-parent > ul.children,
.widget_product_categories ul.product-categories li.current-cat-ancestor > ul.children,
.widget_product_categories ul.product-categories ul.children.list-shown {
    display: block !important;
}
.widget_product_categories ul.product-categories ul.children li.cat-item {
    border-bottom: none !important;
}
.widget_product_categories ul.product-categories ul.children li.cat-item > a {
    font-size: 13px !important;
    font-weight: 500 !important;
    height: 32px !important; /* Compact sub category row */
    padding: 0 4px !important;
    max-width: calc(100% - 36px) !important;
}
.widget_product_categories ul.product-categories ul.children li.cat-item > a:hover {
    color: #e74d3d !important;
    padding-left: 8px !important;
}
.widget_product_categories ul.product-categories ul.children li.cat-item.wd-active > a {
    color: #e74d3d !important;
    font-weight: 700 !important;
    border-left: 2px solid #e74d3d !important;
    padding-left: 8px !important;
    background: transparent !important;
}
.widget_product_categories ul.product-categories ul.children li.cat-item > .wd-cats-toggle {
    top: 16px !important; /* Centered relative to 32px sub link height */
}

/* Custom styles for third-level list nested deeper */
.widget_product_categories ul.product-categories ul.children ul.children {
    padding-left: 12px !important;
}
.widget_product_categories ul.product-categories ul.children ul.children li.cat-item > a {
    height: 28px !important;
    max-width: calc(100% - 36px) !important;
    font-size: 12.5px !important;
}

/* Price Range Filter Slider (Solid Filled Dragger Rings) */
.widget_price_filter form {
    padding-top: 20px !important;
}
.widget_price_filter .price_slider_wrapper {
    margin-top: 15px !important;
}
.widget_price_filter .ui-slider {
    background-color: #e2e8f0 !important;
    height: 5px !important;
    border-radius: 3px !important;
    border: none !important;
    margin-bottom: 24px !important;
    margin-top: 15px !important; /* Breathing room from title */
    margin-left: 12px !important;  /* Exactly matches handle radius to align with outer edges */
    margin-right: 12px !important; /* Exactly matches handle radius to align with outer edges */
}
.widget_price_filter .ui-slider .ui-slider-range {
    background: linear-gradient(90deg, #e74d3d, #c0392b) !important;
    border-radius: 3px !important;
}
.widget_price_filter .ui-slider .ui-slider-handle {
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    background: #e74d3d !important; /* Solid red fill */
    border: 3px solid #ffffff !important; /* Pure white ring outline */
    top: -7px !important;
    margin-left: -12px !important; /* Center precisely over track end points */
    margin-inline-start: -12px !important;
    transform: none !important;
    cursor: pointer !important;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15) !important;
    transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), background 0.2s ease !important;
}
/* Hide any internal line/tick drawn via pseudo elements inside handle */
.widget_price_filter .ui-slider .ui-slider-handle::before,
.widget_price_filter .ui-slider .ui-slider-handle::after {
    display: none !important;
    content: none !important;
}
.widget_price_filter .ui-slider .ui-slider-handle:hover,
.widget_price_filter .ui-slider .ui-slider-handle:focus {
    transform: scale(1.2) !important;
    background: #c0392b !important;
    outline: none !important;
}
.widget_price_filter .price_slider_amount {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-direction: row-reverse !important;
    margin-top: 16px !important;
}
.widget_price_filter .price_slider_amount .price_label {
    font-size: 13.5px !important;
    color: #2c3e50 !important;
    font-weight: 700 !important;
}
.widget_price_filter .price_slider_amount button.button {
    background: linear-gradient(135deg, #2c3e50, #1b2631) !important; /* Slate charcoal button */
    color: #ffffff !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    padding: 8px 18px !important;
    border-radius: 8px !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 4px 12px rgba(44, 62, 80, 0.15) !important;
    transition: all 0.3s ease !important;
    height: auto !important;
    line-height: normal !important;
}
.widget_price_filter .price_slider_amount button.button:hover {
    background: linear-gradient(135deg, #1b2631, #0f171e) !important;
    box-shadow: 0 6px 16px rgba(44, 62, 80, 0.25) !important;
    transform: translateY(-1px) !important;
}

/* Attributes & Brands (Layered Nav Filters) - Rendered Open by Default with Scroll */
.woodmart-woocommerce-layered-nav.wd-widget-collapse > .widget-title ~ * {
    display: block !important; /* Force open the collapse box */
}
.woodmart-woocommerce-layered-nav.wd-widget-collapse .widget-title::after {
    display: none !important; /* Hide collapse chevron on widget header */
}
.woodmart-woocommerce-layered-nav .wd-scroll-content,
.widget_layered_nav .wd-scroll-content {
    max-height: 280px !important; /* Approx 8-10 items space before scroll */
    overflow-y: auto !important;
    padding-right: 8px !important;
}

/* Premium Thin Scrollbar */
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) .wd-scroll-content::-webkit-scrollbar {
    width: 5px !important;
}
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) .wd-scroll-content::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.02) !important;
    border-radius: 10px !important;
}
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) .wd-scroll-content::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.15) !important;
    border-radius: 10px !important;
}
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) .wd-scroll-content::-webkit-scrollbar-thumb:hover {
    background: #e74d3d !important;
}

/* Brand/Attribute Swatches and Lists */
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) ul li {
    border-bottom: 1px solid rgba(0, 0, 0, 0.03) !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    position: relative !important;
}
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) ul li:last-child {
    border-bottom: none !important;
}
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) ul li a {
    color: #2c3e50 !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    padding: 10px 6px !important;
    flex-grow: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
}
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) ul li a:hover {
    color: #e74d3d !important;
    padding-left: 12px !important;
}
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) ul li.chosen a {
    color: #e74d3d !important;
    font-weight: 700 !important;
    border-left: 3px solid #e74d3d !important;
    padding-left: 12px !important;
}
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) ul li .count {
    background: #f1f2f6 !important;
    color: #57606f !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    padding: 2px 7px !important;
    border-radius: 20px !important;
    margin-left: 8px !important;
    min-width: 26px !important;
    height: 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
}
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) ul li a:hover + .count,
:is(.woodmart-woocommerce-layered-nav, .widget_layered_nav) ul li.chosen > .count {
    background: linear-gradient(135deg, #e74d3d, #c0392b) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 10px rgba(231, 77, 61, 0.25) !important;
}

/* ==========================================================================
   MODERN & ELEGANT MOBILE MENU STYLING
   ========================================================================== */

/* Drawer background & Blur */
.mobile-nav,
.wd-mobile-nav {
    background: rgba(18, 18, 18, 0.96) !important;
    backdrop-filter: blur(25px) !important;
    -webkit-backdrop-filter: blur(25px) !important;
    color: #ffffff !important;
}

/* Tabs Header */
.wd-nav-mob-tab {
    background: rgba(18, 18, 18, 0.98) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding: 0 !important;
}

.wd-nav-mob-tab li a {
    color: #888888 !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    font-size: 14px !important;
    padding: 15px 0 !important;
    border-bottom: 2px solid transparent !important;
    transition: all 0.25s ease !important;
}

.wd-nav-mob-tab li.wd-active a {
    color: #ffffff !important;
    border-bottom: 2px solid #D62432 !important; /* Tech red indicator line */
}

/* Navigation Links */
.wd-nav-mobile li a,
.mobile-pages-menu li a {
    color: #cccccc !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    min-height: 54px !important;
    padding: 8px 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    display: flex !important;
    align-items: center !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    width: 100% !important;
}

/* Hover, active states and click indicators */
.wd-nav-mobile li:hover > a,
.wd-nav-mobile li.wd-active > a,
.mobile-pages-menu li:hover > a {
    color: #ffffff !important;
    background: rgba(214, 36, 50, 0.08) !important;
    border-left: 3px solid #D62432 !important;
    padding-left: 24px !important;
}

/* Mobile Icon Containers & SVG constraints */
.wd-nav-mobile .wd-nav-img,
.wd-nav-mobile .category-icon,
.mobile-pages-menu .wd-nav-img {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    max-width: none !important;
    max-height: none !important;
    flex: 0 0 36px !important;
    margin-right: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.wd-nav-mobile .wd-nav-img img,
.wd-nav-mobile .wd-nav-img svg,
.wd-nav-mobile .category-icon img,
.wd-nav-mobile .category-icon svg,
.mobile-pages-menu .wd-nav-img img,
.mobile-pages-menu .wd-nav-img svg {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    opacity: 0.85 !important;
    transition: all 0.25s ease !important;
}

/* Hover scales for icons */
.wd-nav-mobile li:hover .wd-nav-img img,
.wd-nav-mobile li:hover .wd-nav-img svg,
.wd-nav-mobile li:hover .category-icon img,
.wd-nav-mobile li:hover .category-icon svg {
    transform: scale(1.05) !important;
    opacity: 1 !important;
}

/* Mobile submenu list depth indent */
.wd-nav-mobile ul.wd-sub-menu,
.wd-nav-mobile ul.sub-menu {
    background: rgba(0, 0, 0, 0.25) !important;
    padding-left: 15px !important;
}

/* Expand chevron openers styling */
.wd-nav-mobile li .wd-nav-opener {
    color: #888888 !important;
    border-left: 1px solid rgba(255, 255, 255, 0.05) !important;
    min-height: 54px !important;
    width: 50px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    transition: all 0.25s ease !important;
}

.wd-nav-mobile li:hover > .wd-nav-opener,
.wd-nav-mobile li .wd-nav-opener:hover {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.02) !important;
}

.wd-nav-mobile li.wd-active > .wd-nav-opener {
    color: #D62432 !important;
}

/* Close/drawer search inputs and general aesthetics inside mobile menu */
.wd-mobile-nav .searchform {
    padding: 15px 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    background: rgba(0, 0, 0, 0.15) !important;
}

.wd-mobile-nav .searchform input[type="text"] {
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: #ffffff !important;
    border-radius: 8px !important;
}

.wd-mobile-nav .wd-close-button {
    color: #ffffff !important;
    opacity: 0.8 !important;
}

.wd-mobile-nav .wd-close-button:hover {
    opacity: 1 !important;
    color: #D62432 !important;
}

/* ==========================================================================
   COHESIVE CHECKOUT STEPS & PAGE TITLE RE-DESIGN (Todo Digital Style)
   ========================================================================== */

/* Cart and Checkout Page Title/Progress Bar Card */
/* Cart and Checkout Page Title/Progress Bar Card - Elegant Light Style */
.woocommerce-cart .wd-page-title,
.woocommerce-checkout .wd-page-title {
    background-color: #ffffff !important; /* Elegant Light Background */
    background-image: none !important;
    border-radius: 12px !important;
    border: 1px solid #e5e5e5 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
    padding: 35px 20px !important;
    margin-bottom: 30px !important;
}

/* Hide default theme background images/gradients on Cart & Checkout titles */
.woocommerce-cart .wd-page-title-bg,
.woocommerce-checkout .wd-page-title-bg {
    opacity: 0 !important;
    display: none !important;
}

/* Font and basic color styling for checkout steps text - Light Mode */
.wd-checkout-steps li a,
.wd-checkout-steps li span {
    color: #333333 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    letter-spacing: 1.2px !important;
    transition: all 0.25s ease !important;
}

/* Inactive checkout steps styling - Light Mode */
.wd-checkout-steps li.step-inactive > :is(a, span) {
    color: rgba(0, 0, 0, 0.4) !important;
    opacity: 0.75 !important;
}

/* Hover effect on inactive links - Light Mode */
.wd-checkout-steps li.step-inactive a:hover {
    color: #000000 !important;
    opacity: 1 !important;
}

/* Active checkout step styling (Todo Digital Crimson Red Accent line) - Light Mode */
.wd-checkout-steps li.step-active > :is(a, span) {
    color: #D62432 !important;
    opacity: 1 !important;
    font-weight: 700 !important;
    text-decoration: underline 3px solid #D62432 !important;
    text-underline-offset: 8px !important;
}

/* Arrow/Delimiter formatting between steps - Light Mode */
.wd-checkout-steps li:not(:last-child):after {
    color: rgba(0, 0, 0, 0.2) !important;
    opacity: 0.8 !important;
}

/* ==========================================================================
   TODO DIGITAL CUSTOM THEME OVERRIDES (Elegant Light & Crimson Red)
   ========================================================================== */

/* Free shipping progress bar customization */
.wd-free-progress-bar .progress-bar {
    background-color: #D62432 !important; /* Crimson Red */
}
.wd-free-progress-bar .progress-area {
    background-color: rgba(0, 0, 0, 0.08) !important; /* Soft grey track for light theme */
    border-radius: 4px !important;
}
.wd-shipping-progress-bar {
    background-color: #f7f7f7 !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 8px !important;
    padding: 20px !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
}
.wd-shipping-progress-bar .progress-msg {
    color: #333333 !important;
    font-weight: 500 !important;
}

/* WooCommerce buttons color corrections */
.woocommerce-cart .checkout-button,
.woocommerce-checkout #place_order {
    background-color: #D62432 !important;
    color: #ffffff !important;
}
.woocommerce-cart .checkout-button:hover,
.woocommerce-checkout #place_order:hover {
    background-color: #b01c27 !important;
    color: #ffffff !important;
}

/* Coupon apply button and cart update */
.woocommerce-cart button[name="apply_coupon"],
.woocommerce-cart button[name="update_cart"] {
    background-color: #f7f7f7 !important;
    color: #333333 !important;
    border: 1px solid #dcdcdc !important;
}
.woocommerce-cart button[name="apply_coupon"]:hover,
.woocommerce-cart button[name="update_cart"]:hover {
    background-color: #D62432 !important;
    border-color: #D62432 !important;
    color: #ffffff !important;
}

/* Cart Totals sidebar card customization - Elegant Light Style */
.cart-totals-inner,
.wd-cart-totals {
    background-color: #ffffff !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 12px !important;
    padding: 25px !important;
    color: #333333 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
}
.cart-totals-inner table th,
.cart-totals-inner table td {
    color: #333333 !important;
    border-color: #eeeeee !important;
}
.cart-totals-inner .amount {
    color: #D62432 !important; /* Make prices pop with crimson red */
    font-weight: 700 !important;
}

/* Checkout payment methods box customization */
.woocommerce-checkout #payment {
    background-color: #ffffff !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
}
.woocommerce-checkout #payment ul.payment_methods {
    border-bottom: 1px solid #eeeeee !important;
}
.woocommerce-checkout #payment div.payment_box {
    background-color: #f7f7f7 !important;
    color: #555555 !important;
    border: 1px solid #eeeeee !important;
    border-radius: 6px !important;
}
.woocommerce-checkout #payment div.payment_box::before {
    border-bottom-color: #f7f7f7 !important;
}
.woocommerce-checkout #payment ul.payment_methods li {
    padding: 15px 20px !important;
}
.woocommerce-checkout #payment .place-order {
    padding: 20px !important;
}

/* Responsive adjustments for vertical navigation on smaller screen heights */
@media (max-height: 820px) {
    .wd-nav-vertical > li > a {
        min-height: 44px !important;
        font-size: 14px !important;
        padding-top: 6px !important;
        padding-bottom: 6px !important;
    }
    
    .wd-nav-vertical .wd-nav-img,
    .wd-nav-vertical .category-icon,
    .wd-header-cats .wd-nav-vertical .wd-nav-img,
    .wd-dropdown-cats .wd-nav-img {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        min-height: 32px !important;
        flex: 0 0 32px !important;
    }
    
    .wd-nav-vertical .wd-nav-img svg,
    .wd-nav-vertical .category-icon svg,
    .wd-nav-vertical .wd-nav-img img,
    .wd-nav-vertical .category-icon img,
    .wd-header-cats .wd-nav-vertical img,
    .wd-header-cats .wd-nav-vertical svg,
    .wd-dropdown-cats .wd-nav-img img,
    .wd-dropdown-cats .wd-nav-img svg {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
        min-height: 30px !important;
    }
    
    .wd-nav-vertical .wd-sub-menu li > a {
        min-height: 44px !important;
        font-size: 13.5px !important;
        padding-top: 6px !important;
        padding-bottom: 6px !important;
    }
    
    .wd-nav-vertical .wd-sub-menu .wd-nav-img,
    .wd-nav-vertical .wd-sub-menu .category-icon {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        min-height: 32px !important;
        flex: 0 0 32px !important;
    }
    
    .wd-nav-vertical .wd-sub-menu .wd-nav-img svg,
    .wd-nav-vertical .wd-sub-menu .category-icon svg,
    .wd-nav-vertical .wd-sub-menu .wd-nav-img img,
    .wd-nav-vertical .wd-sub-menu .category-icon img {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
        min-height: 30px !important;
    }
}

/* Fix header search input text color so it is visible (not white on white background) */
.searchform input[type="text"],
.searchform input[type="search"],
.wd-search-form input[type="text"],
.wd-search-form input[type="search"],
.woodmart-search-form input[type="text"],
.woodmart-search-form input[type="search"],
input.s {
}

/* ==========================================================================
   BRANDS MEGA MENU OPTIMIZATION (Compact Layout & Internal Scrollbar)
   ========================================================================== */

#td-mega-menu-content {
    padding: 20px 30px !important; /* Compacting padding */
    max-height: calc(100vh - 160px) !important; /* Safety margin for sticky header */
    overflow-y: auto !important; /* Enable scrollbar if content overflows viewport */
}

/* Custom scrollbar for Brands Mega Menu */
#td-mega-menu-content::-webkit-scrollbar {
    width: 6px !important;
}
#td-mega-menu-content::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.03) !important;
    border-radius: 10px !important;
}
#td-mega-menu-content::-webkit-scrollbar-thumb {
    background: rgba(214, 36, 50, 0.5) !important; /* Sleek red scrollbar */
    border-radius: 10px !important;
}
#td-mega-menu-content::-webkit-scrollbar-thumb:hover {
    background: #D62432 !important;
}

/* Compact the column elements */
#td-mega-menu-content > div:nth-child(2) > div > span {
    margin-top: 10px !important; /* Reduce vertical spacing before letter groups */
    margin-bottom: 3px !important;
    font-size: 11px !important;
}

#td-mega-menu-content .td-brand-link {
    padding: 2px 0 !important; /* Compact link line-height/padding */
    font-size: 12.5px !important;
}




/* ==========================================================================
   FLUENTCRM SUBSCRIPTION FORM FOOTER FIXED ALIGNMENT
   ========================================================================== */

/* Align input and button side-by-side using Flexbox with no load shifts */
form.fc_public_form,
form.fluentcrm_public_pref_form,
form#fc_pref_form {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    flex-wrap: nowrap !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Ensure the email field wrapper scales and removes default bottom spacing */
form.fc_public_form .fc_field,
form.fluentcrm_public_pref_form .fc_field,
form#fc_pref_form .fc_field {
    margin-bottom: 0 !important;
    flex-grow: 1 !important;
    width: auto !important;
}

/* Style the email field */
form.fc_public_form .fc_input_control,
form.fluentcrm_public_pref_form .fc_input_control,
form#fc_pref_form .fc_input_control {
    height: 42px !important;
    line-height: 42px !important;
    padding: 8px 15px !important;
    font-size: 14px !important;
    background: #ffffff !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    margin: 0 !important;
    width: 100% !important;
}

/* Enforce the submit button alignment and size */
#fluentcrm_preferences_submit,
#fluentcrm_unsubscribe_submit {
    height: 42px !important;
    line-height: 42px !important;
    padding: 0 25px !important;
    margin: 0 !important; /* Eliminate default top margin that misaligns it */
    background-color: #D62432 !important; /* Premium brand red */
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    border-radius: 4px !important;
    border: none !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: background-color 0.2s ease !important;
    flex-shrink: 0 !important;
}

#fluentcrm_preferences_submit:hover,
#fluentcrm_unsubscribe_submit:hover {
    background-color: #b51c27 !important;
    color: #ffffff !important;
}

/* Stack inputs and button on small mobile screens */
@media (max-width: 576px) {
    form.fc_public_form,
    form.fluentcrm_public_pref_form,
    form#fc_pref_form {
        flex-direction: column !important;
        align-items: stretch !important;
    }
    form.fc_public_form .fc_field,
    form.fluentcrm_public_pref_form .fc_field,
    form#fc_pref_form .fc_field {
        width: 100% !important;
    }
    #fluentcrm_preferences_submit,
    #fluentcrm_unsubscribe_submit {
        width: 100% !important;
    }
}

/* ----------------------------------------------------
 * Mobile Navigation Menu Enhancements (Todo Digital Styler)
 * ---------------------------------------------------- */

/* Dynamic brand submenu items */
.wd-nav-mobile li.custom-brand-mobile-item a {
    font-size: 13px !important;
    font-weight: 500 !important;
    min-height: 44px !important;
    padding: 6px 30px !important;
    color: #999999 !important;
    background: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.02) !important;
    border-left: none !important;
    text-transform: none !important;
}

.wd-nav-mobile li.custom-brand-mobile-item:hover > a,
.wd-nav-mobile li.custom-brand-mobile-item.wd-active > a {
    color: #ffffff !important;
    background: rgba(214, 36, 50, 0.05) !important;
    padding-left: 32px !important;
    border-left: 2px solid #D62432 !important;
}

/* Limit Brands submenu max height to prevent infinite scroll */
.wd-nav-mobile li#menu-item-34295 > ul.wd-sub-menu {
    max-height: 380px !important;
    overflow-y: auto !important;
    border-left: 2px solid rgba(214, 36, 50, 0.15) !important;
    margin-left: 10px !important;
}

/* Extra Bottom Links (Ver carro & Contacto) */
.wd-nav-mobile li.mobile-extra-cart-item > a,
.wd-nav-mobile li.mobile-extra-contact-item > a {
    font-weight: 700 !important;
    text-transform: none !important;
    letter-spacing: 0.5px !important;
    font-size: 14px !important;
}

.wd-nav-mobile li.mobile-extra-cart-item > a {
    color: #ffffff !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    background: rgba(214, 36, 50, 0.04) !important;
}

.wd-nav-mobile li.mobile-extra-cart-item:hover > a {
    background: rgba(214, 36, 50, 0.12) !important;
    border-left: 3px solid #D62432 !important;
}

.wd-nav-mobile li.mobile-extra-contact-item > a {
    color: #cccccc !important;
    border-bottom: 2px solid rgba(255, 255, 255, 0.05) !important;
}

.wd-nav-mobile li.mobile-extra-contact-item:hover > a {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border-left: 3px solid #ffffff !important;
}

/* Beautiful Socials container at the bottom of the drawer panel */
.custom-mobile-socials-container {
    padding: 24px 20px !important;
    background: rgba(0, 0, 0, 0.25) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
    text-align: center !important;
    margin-top: auto !important;
}

.custom-socials-title {
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    color: #888888 !important;
    letter-spacing: 1.5px !important;
    margin-bottom: 12px !important;
}

.custom-socials-icons {
    display: flex !important;
    justify-content: center !important;
    gap: 12px !important;
    align-items: center !important;
}

.custom-social-btn {
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #cccccc !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    text-decoration: none !important;
}

.custom-social-btn svg {
    width: 16px !important;
    height: 16px !important;
    transition: transform 0.25s ease !important;
}

.custom-social-btn:hover svg {
    transform: scale(1.15) !important;
}

/* Hover effects matching Todo Digital aesthetics */
.custom-social-btn.instagram:hover {
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%) !important;
    color: #ffffff !important;
    box-shadow: 0 0 10px rgba(214, 36, 159, 0.4) !important;
    border-color: transparent !important;
}

.custom-social-btn.youtube:hover {
    background: #ff0000 !important;
    color: #ffffff !important;
    box-shadow: 0 0 10px rgba(255, 0, 0, 0.4) !important;
    border-color: transparent !important;
}

.custom-social-btn.whatsapp:hover {
    background: #25D366 !important;
    color: #ffffff !important;
    box-shadow: 0 0 10px rgba(37, 211, 102, 0.4) !important;
    border-color: transparent;
}

/* ----------------------------------------------------
 * Desktop Sticky Sidebar Layout Config
 * ---------------------------------------------------- */
@media (min-width: 1025px) {
    .sidebar-container,
    .widget-area {
        position: -webkit-sticky !important;
        position: sticky !important;
        top: 130px !important; /* Positions the sidebar beautifully below the header */
        max-height: calc(100vh - 150px) !important; /* Limit its height to fit the screen */
        overflow-y: auto !important; /* Allow internal scrolling if content exceeds height */
        align-self: flex-start !important;
        z-index: 100 !important;
    }

    /* Custom scrollbar for sidebar container to keep it ultra sleek */
    .sidebar-container::-webkit-scrollbar,
    .widget-area::-webkit-scrollbar {
        width: 5px !important;
    }
    .sidebar-container::-webkit-scrollbar-track,
    .widget-area::-webkit-scrollbar-track {
        background: rgba(0, 0, 0, 0.02) !important;
    }
    .sidebar-container::-webkit-scrollbar-thumb,
    .widget-area::-webkit-scrollbar-thumb {
        background: rgba(0, 0, 0, 0.12) !important;
        border-radius: 10px !important;
    }
    .sidebar-container::-webkit-scrollbar-thumb:hover,
    .widget-area::-webkit-scrollbar-thumb:hover {
        background: #D62432 !important; /* Tech red indicator color on hover */
    }
}

/* Custom Mobile Navigation Icon Styling */
.wd-nav-mobile li a svg.custom-menu-icon {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    max-width: 18px !important;
    max-height: 18px !important;
    margin-right: 12px !important;
    display: inline-block !important;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    transition: all 0.25s ease !important;
}

.wd-nav-mobile li:hover > a svg.custom-menu-icon {
    transform: scale(1.08) !important;
}

/* ==========================================================================
   BRANDS MEGA MENU HOVER OPTIMIZATION (Prevent mouse trapping on the sides)
   ========================================================================== */
.wd-nav .menu-item-has-children .wd-dropdown-menu,
.wd-nav .menu-item-has-children .wd-dropdown {
    pointer-events: none !important;
}
.wd-nav .menu-item-has-children .wd-dropdown-menu > *,
.wd-nav .menu-item-has-children .wd-dropdown > * {
    pointer-events: auto !important;
}

/* Hide WooCommerce/Woodmart "No product categories exist" in nav bars */
.wd-nav-product-cat .cat-item-none {
    display: none !important;
}

/* Hide categories mobile trigger button and the navigation container completely if there are no subcategories */
.wd-page-title .container:has(.wd-nav-product-cat .cat-item-none) .wd-btn-show-cat,
.wd-page-title .container:has(.wd-nav-product-cat .cat-item-none) .wd-nav-product-cat,
.wd-nav-product-cat:has(.cat-item-none) {
    display: none !important;
}

/* Make sticky mobile sidebar button always visible and float on the left */
@media (max-width: 1024px) {
    .wd-sidebar-opener {
        left: 0px !important;
        right: auto !important;
        top: 22% !important; /* Positions it higher up, clear of the middle content */
        bottom: auto !important;
        z-index: 1000 !important;
    }
    .wd-sidebar-opener.wd-show-on-scroll {
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
    }
    /* Hide the redundant inline "Barra lateral" text button on mobile */
    .wd-show-sidebar-btn {
        display: none !important;
    }

    /* Position the double-arrow sorting button on the right side of the breadcrumbs */
    .shop-loop-head {
        position: relative !important;
        margin-bottom: 15px !important;
    }

    /* Hide the results count text to make space on the right */
    .woocommerce-result-count {
        display: none !important;
    }

    /* Remove the border and padding under the breadcrumbs on mobile */
    .wd-sidebar-hidden-sm .wd-shop-tools:not(:last-child) {
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }

    /* Collapse the second tools container so it doesn't take up vertical space */
    .wd-sidebar-hidden-sm .wd-shop-tools:last-child {
        height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        border: none !important;
    }

    /* Align mobile sorting double-arrow to the right of the breadcrumbs */
    .woocommerce-ordering.wd-ordering-mb-icon {
        position: absolute !important;
        right: 15px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        margin: 0 !important;
        z-index: 100 !important;
        width: 30px !important;
        height: 30px !important;
    }
}

/* Hide the sticky sidebar button when the off-canvas sidebar drawer is open */
body:has(.wd-close-side-opened) .wd-sidebar-opener,
body:has(.wd-sidebar.wd-opened) .wd-sidebar-opener,
body:has(.wd-opened) .wd-sidebar-opener,
.wd-sidebar-opener.wd-opened {
    display: none !important;
}










/* ==========================================================================
   FORCE CENTER ALIGNMENT FOR CATEGORY CAROUSEL TITLES AND ICONS
   ========================================================================== */
.cat-design-alt,
.cat-design-default,
.category-grid-item,
.wd-cat {
    text-align: center !important;
}

.cat-design-alt .wd-cat-inner,
.cat-design-alt .wd-cat-content,
.category-grid-item .wd-cat-content,
.wd-cat .wd-cat-content {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.cat-design-alt .wd-entities-title,
.cat-design-alt .category-title,
.category-grid-item .wd-entities-title,
.category-grid-item .category-title,
.wd-cat .wd-entities-title,
.wd-cat .category-title {
    text-align: center !important;
    width: 100% !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.cat-design-alt .wd-entities-title a,
.cat-design-alt .category-title a,
.category-grid-item .wd-entities-title a,
.category-grid-item .category-title a,
.wd-cat .wd-entities-title a,
.wd-cat .category-title a {
    text-align: center !important;
    display: inline-block !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.cat-design-alt .wd-cat-thumb,
.category-grid-item .wd-cat-thumb,
.wd-cat .wd-cat-thumb {
    margin-left: auto !important;
    margin-right: auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.cat-design-alt .wd-cat-thumb img,
.category-grid-item .wd-cat-thumb img,
.wd-cat .wd-cat-thumb img {
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
}




/* ==========================================================================
   RESTRICT BUTTON SVG ICON SIZES (AUDIO PROFESIONAL BUTTONS)
   ========================================================================== */
.wd-btn .wd-btn-icon img,
.wd-btn .wd-btn-icon svg,
.wd-button-wrapper img,
.wd-button-wrapper svg,
.elementor-button .elementor-button-icon img,
.elementor-button .elementor-button-icon svg,
.elementor-widget-button .elementor-button-icon img,
.elementor-widget-button .elementor-button-icon svg,
.wd-btn-icon img,
.wd-btn-icon svg {
    max-width: 35px !important;
    max-height: 35px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
}
