/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 5,700+ five-star reviews! It's ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It's fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.9.0.1744163991
Updated: 2025-04-09 01:59:51

*/

*, *::before, *::after {
	 --primary-color: #54b435;
	 --secondary-color: #379237;
}

.ast-builder-menu-1 .menu-item > .menu-link {
    padding-left: 10px;
}

.woocommerce form .show-password-input, .woocommerce-page form .show-password-input {
	  top: .2em;
	  height: 40px;
}

.ast-hfb-header .site-header {
    margin-bottom: 0px;
}

/* Logged in & out conditions */

.logged-in-condition .hide-logged-in {
	display: none!important;
}

.logged-out-condition .hide-logged-out {
	display: none!important;
} 

.vendor-in-condition .hide-vendor-in {
	display: none!important;
}

.vendor-out-condition .hide-vendor-out {
	display: none!important;
} 

.elementor-2040 .elementor-element.elementor-element-526a23a > .elementor-widget-container:hover {
    background-color: #ea4335;
    padding: 25px 25px 25px 25px;
    border-radius: 10px 10px 10px 10px;
    box-shadow: 0px 6px 10px 0px rgba(0,0,0,0.5);
}

.elementor-2040 .elementor-element.elementor-element-5966a21 > .elementor-widget-container:hover {
    background-color: #ea4335;
    padding: 25px 25px 25px 25px;
    border-radius: 10px 10px 10px 10px;
    box-shadow: 0px 6px 10px 0px rgba(0,0,0,0.5);
}

.elementor-2040 .elementor-element.elementor-element-391ad26 > .elementor-widget-container:hover {
    background-color: #ea4335;
    padding: 25px 25px 25px 25px;
    border-radius: 10px 10px 10px 10px;
    box-shadow: 0px 6px 10px 0px rgba(0,0,0,0.5);
}

.elementor-2040 .elementor-element.elementor-element-fa3c773 > .elementor-widget-container:hover {
    background-color: #ea4335;
    padding: 25px 25px 25px 25px;
    border-radius: 10px 10px 10px 10px;
    box-shadow: 0px 6px 10px 0px rgba(0,0,0,0.5);
}

.elementor-2040 .elementor-element.elementor-element-f852547 > .elementor-widget-container:hover {
    background-color: #ea4335;
    padding: 25px 25px 25px 25px;
    border-radius: 10px 10px 10px 10px;
    box-shadow: 0px 6px 10px 0px rgba(0,0,0,0.5);
}

.elementor-2040 .elementor-element.elementor-element-f6f29de > .elementor-widget-container:hover {
    background-color: #ea4335;
    padding: 25px 25px 25px 25px;
    border-radius: 10px 10px 10px 10px;
    box-shadow: 0px 6px 10px 0px rgba(0,0,0,0.5);
}

body{
    background-color: white !important;
}

.product-height{
height: 90% !important;
}

.button-bottom{
    margin-top: auto !important;
}

.elementor-widget-container .elementor-loop-container .e-loop-item[data-elementor-type="loop-item"] {
   
}

.title-shorten {
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    max-width: 45ch !important;
	margin-left: auto;
	margin-right: auto;
}

.title-shorten2 {
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 1 !important;
    -webkit-box-orient: vertical !important;
    max-width: 45ch !important;
}

.jet-smart-filters-search .jet-search-filter__input {
    padding: .3em;
}

.elementor-2500 .elementor-element.elementor-element-0833e65 .jet-ajax-search__categories .chosen-drop{
    width: 15em;
}

.low-width{
    width: 10%;
	margin-left: auto;
}

body:not(.rtl) .jet-ajax-search .jet-ajax-search__categories .chosen-container-single .chosen-single span, body:not(.rtl) .jet-ajax-search-block .jet-ajax-search .jet-ajax-search__categories .chosen-container-single .chosen-single span, body:not(.rtl) .jet-ajax-search .jet-ajax-search-block .jet-ajax-search__categories .chosen-container-single .chosen-single span, body:not(.rtl) .jet-ajax-search-block .jet-ajax-search .jet-ajax-search-block .jet-ajax-search__categories .chosen-container-single .chosen-single span{
    display: none;
}

.elementor-2500 .elementor-element.elementor-element-936ae4b .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-2500 .elementor-element.elementor-element-936ae4b .elementor-nav-menu__container.elementor-nav-menu--dropdown{
    margin-left: 60px !important;
    border: 1px solid #2F3B407D;
}

.elementor-widget-n-menu .e-n-menu-title-container.e-link:hover{
    text-decoration: underline !important;
}

.menu-css{
	width: 16em;
	height: 25em;
	overflow-x: hidden;
	overflow-y: scroll;	
}

[data-elementor-type="loop-item"] {
	padding: 0px;
}

.elementor-2740 .elementor-element.elementor-element-f553e15{
    border: none !important;
}

.elementor-element.e-con[data-element_type="container"]{
    padding: 0px !important;
}

.elementor-2740 .elementor-element.elementor-element-d0b2662 .jet-woo-product-price{
    margin-top: -10px !important;
    margin-bottom: -20px !important;
	text-align: left !important;
}

ul.products li.product .elementor-widget-jet-woo-builder-archive-product-thumbnail a img{
        margin: -20 0 -15 0 !important;
}

.woocommerce ul.products, .woocommerce-page ul.products{
    gap: 10px !important;
}

h6.jet-woo-builder-archive-product-title {
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    max-width: 45ch !important;
}

.elementor-2740 .elementor-element.elementor-element-b08c9b6 .jet-woo-builder-archive-add-to-cart{
	text-align: left !important;
}

.woocommerce ul.products li.product.desktop-align-left, .woocommerce-page ul.products li.product.desktop-align-left{
	width: 12em;
}

.elementor-element.my_padding[data-id="99e14c8"] {
    padding-bottom: 10px !important;
    padding-top: 10px !important;
}

.products.columns-3 {
    max-width: fit-content;
	grid-template-columns: repeat(4, 1fr) !important;
}

/* Cart count badge styles */
.cart-count-badge {
    position: absolute !important;
    top: -8px !important;
    right: -8px !important;
    background: #ff0000 !important;
    color: white !important;
    border-radius: 50% !important;
    width: 20px !important;
    height: 20px !important;
    font-size: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: bold !important;
    z-index: 10 !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2) !important;
}

/* Ensure cart icon container has relative positioning */
.astra-icon[data-cart-total] {
    position: relative !important;
}

/* Loading state for add to cart buttons */
.product_type_simple.loading,
.single_add_to_cart_button.loading {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Cart notification styles */
.cart-notification {
    position: fixed;
    top: 20px;
    right: 20px;
    padding: 15px 20px;
    color: white;
    border-radius: 5px;
    z-index: 9999;
    font-family: Arial, sans-serif;
    font-size: 14px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    max-width: 300px;
    word-wrap: break-word;
}

.cart-notification-success {
    background: #4CAF50;
}

.cart-notification-error {
    background: #f44336;
}

/* Animation for button state changes */
.product_type_simple,
.single_add_to_cart_button {
    transition: all 0.3s ease;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .cart-notification {
        top: 10px;
        right: 10px;
        left: 10px;
        max-width: none;
    }
    
    .cart-count-badge {
        width: 18px !important;
        height: 18px !important;
        font-size: 11px !important;
        top: -6px !important;
        right: -6px !important;
    }
}

/* Alternative cart count display (if you prefer inside the icon) */
.ast-site-header-cart .cart-count-inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #333;
    font-size: 10px;
    font-weight: bold;
    pointer-events: none;
}

/* Hide default Astra cart count badge */
.astra-icon[data-cart-total]:before,
.astra-icon[data-cart-total]:after,
.ast-icon-shopping-basket:before,
.ast-icon-shopping-basket:after {
    display: none !important;
    content: none !important;
}

/* Hide any default cart count elements that might exist */
.astra-icon .cart-count,
.astra-icon .ast-cart-count,
.ast-icon-shopping-basket .cart-count,
.ast-icon-shopping-basket .ast-cart-count {
    display: none !important;
}

/* Ensure only your custom red badge shows */
.cart-count-badge {
    position: absolute !important;
    top: -8px !important;
    right: -8px !important;
    background: #ff0000 !important;
    color: white !important;
    border-radius: 50% !important;
    width: 20px !important;
    height: 20px !important;
    font-size: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: bold !important;
    z-index: 999 !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2) !important;
}

/* Hide any pseudo-elements that might be showing the white badge */
.astra-icon[data-cart-total] *:before,
.astra-icon[data-cart-total] *:after {
    display: none !important;
}

/* Prevent button shrinking by setting minimum dimensions */
.product_type_simple,
.single_add_to_cart_button,
.button.product_type_simple {
    min-width: 146.22px !important;
    min-height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    transition: all 0.3s ease !important;
}

/* Maintain size during loading state */
.product_type_simple.loading,
.single_add_to_cart_button.loading {
    min-width: 146.22px !important;
    min-height: 40px !important;
    opacity: 0.7;
    cursor: not-allowed;
}

/* Ensure SVG icons don't shrink */
.product_type_simple svg,
.single_add_to_cart_button svg {
    flex-shrink: 0 !important;
    width: 24px !important;
    height: 24px !important;
    margin-right: 6px !important;
}

/* Specific targeting for your WooCommerce buttons */
.jet-woo-builder-archive-add-to-cart .button {
    min-width: 146.22px !important;
    min-height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .product_type_simple,
    .single_add_to_cart_button,
    .button.product_type_simple {
        min-width: 110px !important;
        min-height: 36px !important;
        font-size: 14px !important;
    }
}

/* ===== YOUTUBE-STYLE LOADING ANIMATION ===== */

/* Main loading bar container */
.youtube-loading-bar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: transparent;
    z-index: 999999;
    pointer-events: none;
    opacity: 1;
    visibility: visible;
}

/* Make overlay visible during initial load */
body.initial-loading .youtube-loading-overlay {
    opacity: 1 !important;
    visibility: visible !important;
    background: rgba(255, 255, 255, 0.95);
}

/* Show spinner during initial load */
body.initial-loading .youtube-spinner {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Hide actual content during initial load */
body.initial-loading .site-content,
body.initial-loading .site-header,
body.initial-loading .site-footer,
body.initial-loading .ast-container,
body.initial-loading .elementor {
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Show skeleton during initial load */
body.initial-loading .skeleton-container {
    display: block !important;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999997;
    padding: 20px;
    box-sizing: border-box;
}

/* Smooth transition when loaded */
body.loaded .site-content,
body.loaded .site-header,
body.loaded .site-footer,
body.loaded .ast-container,
body.loaded .elementor {
    opacity: 1 !important;
    visibility: visible !important;
    transition: opacity 0.5s ease, visibility 0.5s ease;
}

/* Hide skeleton when loaded */
body.loaded .skeleton-container {
    display: none !important;
}

/* Loading bar progress */
.youtube-loading-progress {
    height: 100%;
    background:  var(--primary-color) !important;
    width: 0%;
    transition: width 0.3s ease;
    box-shadow: 0 0 10px rgba(255, 0, 0, 0.5);
    position: relative;
}

/* Add a glow effect to the progress bar */
.youtube-loading-progress::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.6), transparent);
    animation: loading-glow 1s infinite;
}

@keyframes loading-glow {
    0% { transform: translateX(-100px); }
    100% { transform: translateX(100px); }
}

/* Prevent layout shift */
html {
    overflow-y: scroll;
}

/* Critical: Fix z-index stacking */
.youtube-loading-bar {
    z-index: 2147483647 !important;
}

.youtube-loading-overlay {
    z-index: 2147483646 !important;
}

.youtube-spinner {
    z-index: 2147483647 !important;
}

/* Loading overlay */
.youtube-loading-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.8);
    z-index: 999998;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    pointer-events: none;
}

.youtube-loading-overlay.show {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}

/* Page content fade effect */
.page-loading {
    opacity: 0.7;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

/* Loading spinner for AJAX operations */
.youtube-spinner {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 999999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.youtube-spinner.show {
    opacity: 1;
    visibility: visible;
}

.youtube-spinner-circle {
    width: 40px;
    height: 40px;
    border: 3px solid #f3f3f3;
    border-top: 3px solid var(--primary-color) !important;
    border-radius: 50%;
    animation: youtube-spin 1s linear infinite;
}

@keyframes youtube-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}


/* Skeleton loading for content areas */
.youtube-skeleton {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: youtube-skeleton-loading 1.5s infinite;
}

@keyframes youtube-skeleton-loading {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* Hide content during initial load */
.initial-loading .site-content,
.initial-loading .site-header,
.initial-loading .site-footer {
    opacity: 0;
    transition: opacity 0.5s ease;
}

.loaded .site-content,
.loaded .site-header,
.loaded .site-footer {
    opacity: 1;
}

/* Button loading state enhancement */
.loading-button {
    position: relative;
    pointer-events: none;
}

.loading-button::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 16px;
    height: 16px;
    border: 2px solid transparent;
    border-top: 2px solid currentColor;
    border-radius: 50%;
    animation: youtube-spin 1s linear infinite;
}

/* Progress bar animations */
.youtube-loading-progress.indeterminate {
    width: 30% !important;
    animation: youtube-indeterminate 2s infinite;
}

@keyframes youtube-indeterminate {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(400%);
    }
}

/* Mobile optimizations */
@media (max-width: 768px) {
    .youtube-loading-bar {
        height: 2px;
    }
    
    .youtube-spinner-circle {
        width: 32px;
        height: 32px;
        border-width: 2px;
    }
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    .youtube-loading-overlay {
        background: rgba(33, 33, 33, 0.8);
    }
    
    .youtube-skeleton {
        background: linear-gradient(90deg, #2a2a2a 25%, #3a3a3a 50%, #2a2a2a 75%);
        background-size: 200% 100%;
    }
}

/* Integration with existing cart notifications */
.cart-notification {
    z-index: 1000000 !important;
}

/* Loading states for existing elements */
.loading-element {
    position: relative;
}

.loading-element.updating::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.8);
    z-index: 10;
}

.loading-element.updating::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    border: 2px solid #f3f3f3;
    border-top: 2px solid #ff0000;
    border-radius: 50%;
    animation: youtube-spin 1s linear infinite;
    z-index: 11;
}











/* ===== BEAUTIFUL JETSMARTFILTERS CHECKBOX STYLING ===== */

/* Main container styling */
.jet-smart-filters-checkboxes {
    background: #ffffff;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid #f0f0f0;
}

.jet-filter-label {
    font-size: 18px;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--primary-color);
    position: relative;
}

.jet-filter-label::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 40px;
    height: 2px;
    background: var(--secondary-color);
    border-radius: 1px;
}

.jet-checkboxes-list-wrapper {
    border: none;
    padding: 0;
    margin: 0;
}

.jet-checkboxes-list-wrapper legend {
    display: none !important;
}

/* Hide the default checkbox */
.jet-checkboxes-list__input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
    margin: 0;
}

/* Row styling */
.jet-checkboxes-list__row {
    margin-bottom: 8px;
    transition: all 0.3s ease;
}

.jet-checkboxes-list__row:last-child {
    margin-bottom: 0;
}

/* Main checkbox container */
.jet-checkboxes-list__item {
    display: flex;
    align-items: center;
    cursor: pointer;
    padding: 12px 16px;
    border-radius: 8px;
    background: #fafafa;
    border: 1px solid #e8e8e8;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    margin: 0;
}

/* Hover effect */
.jet-checkboxes-list__item:hover {
    background: #f8fff8;
    border-color: var(--primary-color);
    box-shadow: 0 4px 15px rgba(84, 180, 53, 0.15);
    transform: translateY(-1px);
}

/* Button container */
.jet-checkboxes-list__button {
    display: flex;
    align-items: center;
    width: 100%;
    position: relative;
    z-index: 2;
}

/* Custom checkbox decorator */
.jet-checkboxes-list__decorator {
    position: relative;
    width: 20px;
    height: 20px;
    border: 2px solid #d1d5db;
    border-radius: 4px;
    margin-right: 12px;
    background: #ffffff;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Hide the original SVG icon */
.jet-checkboxes-list__checked-icon {
    display: none !important;
}

/* Custom checkmark */
.jet-checkboxes-list__decorator::after {
    content: '';
    position: absolute;
    width: 6px;
    height: 10px;
    border: solid #ffffff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg) scale(0);
    transition: all 0.2s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    top: 2px;
    left: 6px;
}

/* Label styling */
.jet-checkboxes-list__label {
    font-size: 14px;
    font-weight: 500;
    color: #4a5568;
    transition: all 0.3s ease;
    line-height: 1.4;
    user-select: none;
}

/* Checked state */
.jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__decorator {
    background: var(--primary-color);
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px rgba(84, 180, 53, 0.2);
}

.jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__decorator::after {
    transform: rotate(45deg) scale(1);
}

.jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__label {
    color: var(--secondary-color);
    font-weight: 600;
}

.jet-checkboxes-list__input:checked ~ .jet-checkboxes-list__item,
.jet-checkboxes-list__input:checked + .jet-checkboxes-list__button {
    background: linear-gradient(135deg, rgba(84, 180, 53, 0.08) 0%, rgba(55, 146, 55, 0.08) 100%);
    border-color: var(--primary-color);
}

/* Active/focus state for accessibility */
.jet-checkboxes-list__input:focus + .jet-checkboxes-list__button .jet-checkboxes-list__decorator {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
}

/* Hover effect on decorator */
.jet-checkboxes-list__item:hover .jet-checkboxes-list__decorator {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px rgba(84, 180, 53, 0.1);
}

.jet-checkboxes-list__item:hover .jet-checkboxes-list__label {
    color: var(--secondary-color);
}

/* Active press effect */
.jet-checkboxes-list__item:active {
    transform: translateY(0);
    box-shadow: 0 2px 8px rgba(84, 180, 53, 0.2);
}

/* Ripple effect on click */
.jet-checkboxes-list__item::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: radial-gradient(circle, rgba(84, 180, 53, 0.3) 0%, transparent 70%);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: width 0.4s ease, height 0.4s ease;
    z-index: 1;
    pointer-events: none;
}

.jet-checkboxes-list__item:active::before {
    width: 300px;
    height: 300px;
}

/* Smooth scrollbar for the container if needed */
.jet-checkboxes-list::-webkit-scrollbar {
    width: 6px;
}

.jet-checkboxes-list::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}

.jet-checkboxes-list::-webkit-scrollbar-thumb {
    background: var(--primary-color);
    border-radius: 3px;
}

.jet-checkboxes-list::-webkit-scrollbar-thumb:hover {
    background: var(--secondary-color);
}

/* Alternative design - uncomment if you prefer a more modern card-like approach */
/*
.jet-checkboxes-list__item {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.jet-checkboxes-list__item:hover {
    box-shadow: 0 4px 20px rgba(84, 180, 53, 0.15);
    border-color: var(--primary-color);
}
*/

/* Responsive design */
@media (max-width: 768px) {
    .jet-smart-filters-checkboxes {
        padding: 16px;
        border-radius: 8px;
    }
    
    .jet-checkboxes-list__item {
        padding: 10px 12px;
    }
    
    .jet-checkboxes-list__decorator {
        width: 18px;
        height: 18px;
        margin-right: 10px;
    }
    
    .jet-checkboxes-list__decorator::after {
        width: 5px;
        height: 8px;
        left: 5px;
        top: 2px;
    }
    
    .jet-checkboxes-list__label {
        font-size: 13px;
    }
}

/* Dark mode support (optional) */
@media (prefers-color-scheme: dark) {
    .jet-smart-filters-checkboxes {
        background: #1a1a1a;
        border-color: #333333;
    }
    
    .jet-filter-label {
        color: #ffffff;
    }
    
    .jet-checkboxes-list__item {
        background: #2d2d2d;
        border-color: #404040;
    }
    
    .jet-checkboxes-list__item:hover {
        background: #2a3f2a;
    }
    
    .jet-checkboxes-list__label {
        color: #e2e8f0;
    }
    
    .jet-checkboxes-list__decorator {
        background: #2d2d2d;
        border-color: #4a5568;
    }
}

/* Animation keyframes for enhanced effects */
@keyframes checkboxPop {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
    100% {
        transform: scale(1);
    }
}

.jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__decorator {
    animation: checkboxPop 0.3s ease;
}

/* Loading state (if needed for dynamic content) */
.jet-checkboxes-list.loading {
    opacity: 0.6;
    pointer-events: none;
}

.jet-checkboxes-list.loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    border: 2px solid #f3f3f3;
    border-top: 2px solid var(--primary-color);
    border-radius: 50%;
    animation: spin 1s linear infinite;
    transform: translate(-50%, -50%);
}

@keyframes spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}






/* ===== BEAUTIFUL RESULTS COUNT STYLING ===== */

.elementor-jet-woo-builder-products-result-count {
    background: linear-gradient(135deg, #ffffff 0%, #f8fff8 100%);
    border: 1px solid #e8f5e8;
    border-radius: 8px;
    padding: 12px 16px;
    margin-bottom: 20px;
    box-shadow: 0 2px 8px rgba(84, 180, 53, 0.08);
}

.woocommerce-result-count {
    color: var(--secondary-color) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    margin: 0 !important;
    text-align: center;
    letter-spacing: 0.3px;
    position: relative;
}

.woocommerce-result-count::before {
    content: '🔍';
    margin-right: 8px;
    font-size: 16px;
}



/* ===== BEAUTIFUL PRICE RANGE SLIDER STYLING ===== */

.jet-smart-filters-range {
    background: #ffffff;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid #f0f0f0;
    margin-bottom: 20px;
}

/* Range container */
.jet-range {
    position: relative;
}

/* Slider fieldset */
.jet-range__slider {
    border: none;
    padding: 0;
    margin: 0 0 20px 0;
    position: relative;
}

.jet-range__slider legend {
    display: none !important;
}

/* Track styling */
.jet-range__slider__track {
    position: relative;
    height: 8px;
    background: #e2e8f0;
    border-radius: 4px;
    margin: 20px 0;
    overflow: hidden;
}

/* Selected range styling */
.jet-range__slider__track__range {
    position: absolute;
    height: 100%;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    border-radius: 4px;
    left: var(--low);
    right: calc(100% - var(--high));
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(84, 180, 53, 0.3);
}

/* Range input styling */
.jet-range__slider__input {
    position: absolute;
    width: 100%;
    height: 8px;
    background: transparent;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    border: none;
    outline: none;
    margin: 20px 0;
    top: 0;
}

/* Webkit thumb styling */
.jet-range__slider__input::-webkit-slider-thumb {
    appearance: none;
    -webkit-appearance: none;
    width: 24px;
    height: 24px;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    border-radius: 50%;
    cursor: pointer;
    border: 3px solid #ffffff;
    box-shadow: 0 4px 12px rgba(84, 180, 53, 0.4);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    z-index: 22;
}

.jet-range__slider__input::-webkit-slider-thumb:hover {
    transform: scale(1.2);
    box-shadow: 0 6px 20px rgba(84, 180, 53, 0.6);
}

.jet-range__slider__input::-webkit-slider-thumb:active {
    transform: scale(1.1);
    box-shadow: 0 2px 8px rgba(84, 180, 53, 0.8);
}

/* Firefox thumb styling */
.jet-range__slider__input::-moz-range-thumb {
    width: 24px;
    height: 24px;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    border-radius: 50%;
    cursor: pointer;
    border: 3px solid #ffffff;
    box-shadow: 0 4px 12px rgba(84, 180, 53, 0.4);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.jet-range__slider__input::-moz-range-thumb:hover {
    transform: scale(1.2);
    box-shadow: 0 6px 20px rgba(84, 180, 53, 0.6);
}

/* Firefox track styling */
.jet-range__slider__input::-moz-range-track {
    background: transparent;
    border: none;
    outline: none;
}

/* Values display */
.jet-range__values {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 600;
    color: var(--secondary-color);
    background: linear-gradient(135deg, #f8fff8 0%, #f0f8f0 100%);
    padding: 12px 16px;
    border-radius: 8px;
    border: 1px solid rgba(84, 180, 53, 0.2);
    letter-spacing: 0.5px;
    position: relative;
    overflow: hidden;
}

.jet-range__values::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(84, 180, 53, 0.1), transparent);
    transition: left 0.5s ease;
}

.jet-range__values:hover::before {
    left: 100%;
}

/* Price prefix and suffix styling */
.jet-range__values-prefix,
.jet-range__values-suffix {
    color: var(--primary-color);
    font-weight: 700;
}

.jet-range__values-min,
.jet-range__values-max {
    color: var(--secondary-color);
    font-weight: 700;
    margin: 0 2px;
    position: relative;
}

/* Enhanced hover effects for the entire range container */
.jet-smart-filters-range:hover {
    box-shadow: 0 6px 25px rgba(84, 180, 53, 0.12);
    border-color: rgba(84, 180, 53, 0.3);
    transform: translateY(-1px);
    transition: all 0.3s ease;
}

/* Loading state */
.jet-smart-filters-range.loading {
    opacity: 0.6;
    pointer-events: none;
    position: relative;
}

.jet-smart-filters-range.loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    border: 2px solid #f3f3f3;
    border-top: 2px solid var(--primary-color);
    border-radius: 50%;
    animation: spin 1s linear infinite;
    transform: translate(-50%, -50%);
    z-index: 100;
}

/* Custom tooltip for values (optional enhancement) 
.jet-range__slider__input:hover::after {
    content: attr(value);
    position: absolute;
    background: var(--secondary-color);
    color: white;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    transform: translateX(-50%);
    white-space: nowrap;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
    top: -40px;
    left: 50%;
    z-index: 25;
}
*/
.jet-range__slider__input:hover::after {
    opacity: 1;
}

/* Responsive design */
@media (max-width: 768px) {
    .jet-smart-filters-range {
        padding: 16px;
        border-radius: 8px;
    }
    
    .elementor-jet-woo-builder-products-result-count {
        padding: 10px 14px;
        border-radius: 6px;
    }
    
    .woocommerce-result-count {
        font-size: 13px !important;
    }
    
    .jet-range__values {
        font-size: 14px;
        padding: 10px 12px;
    }
    
    .jet-range__slider__input::-webkit-slider-thumb {
        width: 20px;
        height: 20px;
    }
    
    .jet-range__slider__input::-moz-range-thumb {
        width: 20px;
        height: 20px;
    }
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    .jet-smart-filters-range,
    .elementor-jet-woo-builder-products-result-count {
        background: #1a1a1a;
        border-color: #333333;
    }
    
    .jet-range__slider__track {
        background: #404040;
    }
    
    .jet-range__values {
        background: linear-gradient(135deg, #2a2a2a 0%, #2d2d2d 100%);
        color: #e2e8f0;
    }
    
    .woocommerce-result-count {
        color: #e2e8f0 !important;
    }
}

/* Animation keyframes */
@keyframes spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.elementor-jet-woo-builder-products-result-count,
.jet-smart-filters-range {
    animation: slideIn 0.4s ease-out;
}

/* Enhanced focus states for accessibility */
.jet-range__slider__input:focus::-webkit-slider-thumb {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
}

.jet-range__slider__input:focus::-moz-range-thumb {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
}

/* Better visual feedback when dragging */
.jet-range__slider__input:active::-webkit-slider-thumb {
    cursor: grabbing;
    transform: scale(1.15);
}

.jet-range__slider__input:active::-moz-range-thumb {
    cursor: grabbing;
    transform: scale(1.15);
}


.elementor-jet-woo-builder-products-result-count.jet-woo-builder {
    height: 45px;
}
	
.elementor-element.elementor-element-3c2ccb0.elementor-widget.elementor-widget-jet-smart-filters-range {
    margin-bottom: 0px;
}

.jet-smart-filters-range.jet-filter {
    margin-bottom: 0px;
}

.elementor-2738 .elementor-element.elementor-element-7261519 .elementor-divider {
  
    padding-block-end: 15px !important;
}

.jet-smart-filters-checkboxes.jet-filter {
    height: 65%;
    overflow-x: hidden;
    overflow-y: scroll;
}



/*-------------------------------------RANDOM TO SHOP EDITS---------------------------------*/
span.woocommerce-Price-amount.amount {
    font-size: .8em;
}

.elementor-element.elementor-element-8772d80.elementor-widget-divider--view-line.elementor-widget.elementor-widget-divider {
    margin-bottom: 5px;
}

section.elementor-section.elementor-inner-section.elementor-element.elementor-element-7b0a408.elementor-section-boxed.elementor-section-height-default.elementor-section-height-default {
    margin-bottom: 38px;
}

span.ast-icon.icon-arrow {
/*
    position: relative;
    top: 35%;
*/
}


.elementor-element.elementor-element-99e14c8.e-con-full.my_padding.e-flex.e-con.e-child {
    padding-left: 1em !important;
}


.elementor-element.elementor-element-b08c9b6.elementor-widget.elementor-widget-jet-woo-builder-archive-add-to-cart {
    margin-top: -1em;
}

/*
.elementor-element.elementor-element-1936eaf.\.cart_amount.elementor-widget.elementor-widget-heading {
    position: relative;
    top: 1.5em;
    visibility: hidden;
}
*/

/* Hide by default */
.elementor-element.elementor-element-1936eaf.\.cart_amount.elementor-widget.elementor-widget-heading {
    position: relative;
    top: 1.5em;
    visibility: hidden;
    transition: all 0.3s ease;
}

/* Show when it has content */
.elementor-element.elementor-element-1936eaf.\.cart_amount.elementor-widget.elementor-widget-heading.has-quantity {
    visibility: visible;
}

/* Style the quantity display */
.cart_amount .elementor-heading-title {
    background: var(--primary-color);
    color: white;
    border-radius: 50%;
    width: 25px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: bold;
    margin: 0 auto;
}

div#fkcart-floating-toggler {
    bottom: 80px;
    right: 11px;
    width: calc(36 * 2 * 1px);
    height: calc(36 * 2 * 1px);
}


.my_divider{
    margin-top: -25px
}

.hide_it{
    display: none;
}



.ast-scroll-to-top-right{
	right: 30px;
    bottom: 60px;
}

div#fkcart-floating-toggler {
    bottom: 105px;
    right: 11px;
}

/*-------------------------------------RANDOM EDITS TO SHOP END---------------------------------*/


/*-------------------------------------RESPONSIVE STYLING FOR SHOP PAGE GRID--------------------*/


/* 3 columns for screens up to 1200px */

@media (max-width: 1200px) {
    /* .products.columns-3 {
        grid-template-columns: repeat(3, 1fr) !important;
    } */

 .woocommerce ul.products li.product.desktop-align-left, .woocommerce-page ul.products li.product.desktop-align-left{
	width: 11.5em; 
 }
    
div#fkcart-floating-toggler {
    bottom: 80px;
    right: 13px;
    width: calc(35 * 2 * 1px);
    height: calc(35 * 2 * 1px);
}

ul.products.columns-3{
    margin-left: 1em;
}

.ast-article-post{
    margin-bottom: 0px !important;
  
}




    
    
}




