/**
 * Astra Child Ra — scoped storefront shell v1.9.1
 *
 * Ownership rule:
 * - Shop PRODUCT CARDS are owned by Sharif SMS Suite (.sbs-shop-display).
 * - Archive shell/filter bar lives in shop-filter-bar.css.
 * - This file owns homepage UAEL sliders and shared visual tokens.
 * - No broad .woocommerce ul.products card overrides live here.
 */

:root {
    --sharif-accent: #64a39a;
    --sharif-accent-dark: #4f8b84;
    --sharif-accent-deep: #3f756f;
    --sharif-accent-soft: #eef7f5;
    --sharif-text: #172033;
    --sharif-muted: #667085;
    --sharif-border: rgba(23, 32, 51, .10);
    --sharif-surface: #ffffff;
    --sharif-surface-soft: #f8fafb;
    --sharif-shadow-sm: 0 4px 16px rgba(23, 32, 51, .045);
    --sharif-shadow-md: 0 12px 30px rgba(23, 32, 51, .075);
}

/* =========================================================
 * Shop archive shell + sidebar only
 * ======================================================= */
body.sbs-shop-display #content > .ast-container,
body.post-type-archive-product:not(.sbs-shop-display) #content > .ast-container,
body.tax-product_cat:not(.sbs-shop-display) #content > .ast-container,
body.tax-product_tag:not(.sbs-shop-display) #content > .ast-container,
body.tax-product_brand:not(.sbs-shop-display) #content > .ast-container {
    display: flex;
    align-items: flex-start;
    gap: 34px;
    direction: ltr;
    width: 100%;
    max-width: 1520px;
    margin-inline: auto;
    padding-inline: 24px;
    box-sizing: border-box;
}

body.sbs-shop-display #primary,
body.post-type-archive-product:not(.sbs-shop-display) #primary,
body.tax-product_cat:not(.sbs-shop-display) #primary,
body.tax-product_tag:not(.sbs-shop-display) #primary,
body.tax-product_brand:not(.sbs-shop-display) #primary {
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    margin-block: 40px 56px;
    padding: 0;
    direction: rtl;
}

body.sbs-shop-display #secondary,
body.post-type-archive-product:not(.sbs-shop-display) #secondary,
body.tax-product_cat:not(.sbs-shop-display) #secondary,
body.tax-product_tag:not(.sbs-shop-display) #secondary,
body.tax-product_brand:not(.sbs-shop-display) #secondary {
    flex: 0 0 320px;
    width: 320px;
    min-width: 320px;
    margin-block: 40px 56px;
    padding: 0;
    direction: rtl;
}

/* Sidebar visual system — scoped only to product archives. */
body.sbs-shop-display #secondary .widget,
body.post-type-archive-product #secondary .widget,
body.tax-product_cat #secondary .widget,
body.tax-product_tag #secondary .widget,
body.tax-product_brand #secondary .widget {
    margin: 0 0 18px;
    padding: 20px 20px 18px;
    border: 1px solid var(--sharif-border);
    border-radius: 14px;
    background: var(--sharif-surface);
    box-shadow: var(--sharif-shadow-sm);
    color: var(--sharif-text);
}

body.sbs-shop-display #secondary .widget-title,
body.post-type-archive-product #secondary .widget-title,
body.tax-product_cat #secondary .widget-title,
body.tax-product_tag #secondary .widget-title,
body.tax-product_brand #secondary .widget-title {
    margin: 0 0 16px;
    padding: 0 0 13px;
    border-bottom: 1px solid rgba(23, 32, 51, .09);
    color: var(--sharif-text);
    font-family: var(--sharif-font, 'Vazir', Tahoma, sans-serif);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.75;
}

body.sbs-shop-display #secondary ul,
body.post-type-archive-product #secondary ul,
body.tax-product_cat #secondary ul,
body.tax-product_tag #secondary ul,
body.tax-product_brand #secondary ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

body.sbs-shop-display #secondary li,
body.post-type-archive-product #secondary li,
body.tax-product_cat #secondary li,
body.tax-product_tag #secondary li,
body.tax-product_brand #secondary li {
    margin: 0;
    border-bottom: 1px dashed rgba(23, 32, 51, .08);
}

body.sbs-shop-display #secondary li:last-child,
body.post-type-archive-product #secondary li:last-child,
body.tax-product_cat #secondary li:last-child,
body.tax-product_tag #secondary li:last-child,
body.tax-product_brand #secondary li:last-child {
    border-bottom: 0;
}

body.sbs-shop-display #secondary li > a,
body.post-type-archive-product #secondary li > a,
body.tax-product_cat #secondary li > a,
body.tax-product_tag #secondary li > a,
body.tax-product_brand #secondary li > a {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding-block: 8px;
    color: #425166;
    font-family: var(--sharif-font, 'Vazir', Tahoma, sans-serif);
    font-size: 13.5px;
    font-weight: 500;
    line-height: 1.75;
    text-decoration: none;
    transition: color .16s ease, transform .16s ease;
}

body.sbs-shop-display #secondary li > a:hover,
body.post-type-archive-product #secondary li > a:hover,
body.tax-product_cat #secondary li > a:hover,
body.tax-product_tag #secondary li > a:hover,
body.tax-product_brand #secondary li > a:hover {
    color: var(--sharif-accent-dark);
    transform: translateX(-2px);
}

body.sbs-shop-display #secondary .count,
body.post-type-archive-product #secondary .count,
body.tax-product_cat #secondary .count,
body.tax-product_tag #secondary .count,
body.tax-product_brand #secondary .count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    height: 24px;
    margin-inline-start: 7px;
    padding-inline: 6px;
    border-radius: 999px;
    background: var(--sharif-accent-soft);
    color: var(--sharif-accent-dark);
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}

body.sbs-shop-display #secondary .children,
body.post-type-archive-product #secondary .children,
body.tax-product_cat #secondary .children,
body.tax-product_tag #secondary .children,
body.tax-product_brand #secondary .children {
    margin: 0 12px 6px 0;
    padding-right: 13px;
    border-right: 2px solid rgba(100, 163, 154, .17);
}

/* Search widget */
body.sbs-shop-display #secondary .woocommerce-product-search,
body.post-type-archive-product #secondary .woocommerce-product-search,
body.tax-product_cat #secondary .woocommerce-product-search,
body.tax-product_tag #secondary .woocommerce-product-search,
body.tax-product_brand #secondary .woocommerce-product-search {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: stretch;
}

body.sbs-shop-display #secondary .search-field,
body.post-type-archive-product #secondary .search-field,
body.tax-product_cat #secondary .search-field,
body.tax-product_tag #secondary .search-field,
body.tax-product_brand #secondary .search-field {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 8px 12px;
    border: 1px solid rgba(23, 32, 51, .12);
    border-radius: 10px;
    background: #fff;
    color: var(--sharif-text);
    font-family: var(--sharif-font, 'Vazir', Tahoma, sans-serif);
    font-size: 13px;
    box-shadow: inset 0 1px 2px rgba(23, 32, 51, .025);
}

body.sbs-shop-display #secondary .woocommerce-product-search button,
body.post-type-archive-product #secondary .woocommerce-product-search button,
body.tax-product_cat #secondary .woocommerce-product-search button,
body.tax-product_tag #secondary .woocommerce-product-search button,
body.tax-product_brand #secondary .woocommerce-product-search button,
body.sbs-shop-display #secondary .price_slider_wrapper .button,
body.post-type-archive-product #secondary .price_slider_wrapper .button,
body.tax-product_cat #secondary .price_slider_wrapper .button,
body.tax-product_tag #secondary .price_slider_wrapper .button,
body.tax-product_brand #secondary .price_slider_wrapper .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    margin: 0;
    padding: 8px 16px;
    border: 1px solid var(--sharif-accent);
    border-radius: 10px;
    background: linear-gradient(180deg, #6eaea5 0%, var(--sharif-accent) 100%);
    color: #fff;
    font-family: var(--sharif-font, 'Vazir', Tahoma, sans-serif);
    font-size: 12.5px;
    font-weight: 700;
    line-height: 1.45;
    box-shadow: 0 5px 12px rgba(79, 139, 132, .16);
    transition: transform .14s ease, box-shadow .16s ease, background .16s ease;
}

body.sbs-shop-display #secondary .woocommerce-product-search button:hover,
body.post-type-archive-product #secondary .woocommerce-product-search button:hover,
body.tax-product_cat #secondary .woocommerce-product-search button:hover,
body.tax-product_tag #secondary .woocommerce-product-search button:hover,
body.tax-product_brand #secondary .woocommerce-product-search button:hover,
body.sbs-shop-display #secondary .price_slider_wrapper .button:hover,
body.post-type-archive-product #secondary .price_slider_wrapper .button:hover,
body.tax-product_cat #secondary .price_slider_wrapper .button:hover,
body.tax-product_tag #secondary .price_slider_wrapper .button:hover,
body.tax-product_brand #secondary .price_slider_wrapper .button:hover {
    background: var(--sharif-accent-dark);
    box-shadow: 0 7px 16px rgba(79, 139, 132, .22);
    transform: translateY(-1px);
}

body.sbs-shop-display #secondary .price_slider_wrapper,
body.post-type-archive-product #secondary .price_slider_wrapper,
body.tax-product_cat #secondary .price_slider_wrapper,
body.tax-product_tag #secondary .price_slider_wrapper,
body.tax-product_brand #secondary .price_slider_wrapper {
    color: #4f5d70;
    font-family: var(--sharif-font, 'Vazir', Tahoma, sans-serif);
    font-size: 13px;
    line-height: 1.9;
}

body.sbs-shop-display #secondary .ui-slider .ui-slider-range,
body.post-type-archive-product #secondary .ui-slider .ui-slider-range,
body.tax-product_cat #secondary .ui-slider .ui-slider-range,
body.tax-product_tag #secondary .ui-slider .ui-slider-range,
body.tax-product_brand #secondary .ui-slider .ui-slider-range,
body.sbs-shop-display #secondary .ui-slider .ui-slider-handle,
body.post-type-archive-product #secondary .ui-slider .ui-slider-handle,
body.tax-product_cat #secondary .ui-slider .ui-slider-handle,
body.tax-product_tag #secondary .ui-slider .ui-slider-handle,
body.tax-product_brand #secondary .ui-slider .ui-slider-handle {
    background-color: var(--sharif-accent);
}

/* Toolbar breathing room; actual controls remain owned by SBS shop CSS. */
body.sbs-shop-display .woocommerce .woocommerce-result-count,
body.sbs-shop-display .woocommerce .woocommerce-ordering {
    margin-top: 4px;
}

/* =========================================================
 * Homepage UAEL Woo product sliders only
 * ======================================================= */
/* Lock the 3% + 94% + 3% Elementor row so Slick never measures an
 * intrinsic-width widget while UAEL is rebuilding its wrappers. */
body.home .elementor-element-f87fc56 > .elementor-widget-wrap {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
}

body.home .elementor-element-a551b08,
body.home .elementor-element-f32e8e1 {
    flex: 0 0 3% !important;
    width: 3% !important;
    max-width: 3% !important;
    min-width: 0 !important;
}

body.home .elementor-element-5cdeca0 {
    flex: 0 0 94% !important;
    width: 94% !important;
    max-width: 94% !important;
    min-width: 0 !important;
}

body.home .elementor-element-5cdeca0 > .elementor-widget-container,
body.home .elementor-element-5cdeca0 .uael-woocommerce,
body.home .elementor-element-5cdeca0 .uael-woo-products-inner,
body.home .elementor-element-5cdeca0 .slick-list {
    width: 100% !important;
    min-width: 0 !important;
}

/* Before Slick starts, present the first viewport as a stable horizontal
 * product grid instead of briefly stacking every product vertically. */
body.home .uael-woocommerce.uael-woo-products-slider ul.products:not(.slick-initialized) {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 16px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    list-style: none !important;
}

body.home .uael-woocommerce.uael-woo-products-slider ul.products:not(.slick-initialized) > li.product {
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
}

body.home .uael-woocommerce.uael-woo-products-slider ul.products:not(.slick-initialized) > li.product:nth-child(n+5) {
    display: none !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .slick-track {
    display: flex !important;
    align-items: stretch !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .slick-slide {
    display: flex !important;
    float: none !important;
    height: auto !important;
    padding-inline: 8px !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .slick-slide > div,
body.home .uael-woocommerce.uael-woo-products-slider .slick-slide .uael-woo-product-wrapper {
    display: flex !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 100% !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .uael-woo-product-wrapper {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    overflow: hidden !important;
    border: 1px solid rgba(71, 85, 105, .15) !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: var(--sharif-shadow-sm) !important;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .uael-woo-product-wrapper:hover {
    border-color: rgba(100, 163, 154, .30) !important;
    box-shadow: var(--sharif-shadow-md) !important;
    transform: translateY(-2px) !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .uael-woo-products-thumbnail-wrap {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% - 16px) !important;
    height: 220px !important;
    min-height: 220px !important;
    margin: 8px 8px 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(100, 163, 154, .10) !important;
    border-radius: 11px !important;
    background: linear-gradient(180deg, #fbfdfd 0%, #f5f8f8 100%) !important;
    box-sizing: border-box !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .uael-woo-products-thumbnail-wrap > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .uael-woo-products-thumbnail-wrap img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    margin: 0 !important;
    object-fit: contain !important;
    object-position: center !important;
    color: transparent !important;
    transition: opacity .16s ease !important;
}

body.home img.zaman-media-pending,
body.home img.zaman-media-error {
    opacity: 0 !important;
    color: transparent !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .uael-woo-products-summary-wrap {
    display: grid !important;
    grid-template-rows: minmax(82px, auto) 42px 24px 46px !important;
    flex: 1 1 auto !important;
    gap: 6px !important;
    align-content: end !important;
    min-height: 218px !important;
    padding: 12px 12px 14px !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .woocommerce-loop-product__title {
    display: -webkit-box !important;
    align-self: start !important;
    min-height: 82px !important;
    max-height: 82px !important;
    margin: 0 !important;
    overflow: hidden !important;
    color: var(--sharif-text) !important;
    font-family: var(--sharif-font, 'Vazir', Tahoma, sans-serif) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.95 !important;
    text-align: center !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .price {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    max-height: 42px !important;
    margin: 0 !important;
    overflow: hidden !important;
    color: #24364c !important;
    font-family: var(--sharif-font, 'Vazir', Tahoma, sans-serif) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.6 !important;
    text-align: center !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .shfss-loop-cart-link {
    grid-row: 3 !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .button,
body.home .uael-woocommerce.uael-woo-products-slider a.button {
    grid-row: 4 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    max-height: 46px !important;
    margin: 0 !important;
    padding: 9px 11px !important;
    border: 1px solid var(--sharif-accent) !important;
    border-radius: 10px !important;
    background: linear-gradient(180deg, #6fafa6 0%, var(--sharif-accent) 100%) !important;
    color: #fff !important;
    font-family: var(--sharif-font, 'Vazir', Tahoma, sans-serif) !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: 0 5px 13px rgba(79, 139, 132, .16) !important;
    transition: transform .14s ease, box-shadow .18s ease, background .18s ease !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .button:hover,
body.home .uael-woocommerce.uael-woo-products-slider a.button:hover {
    border-color: var(--sharif-accent-dark) !important;
    background: linear-gradient(180deg, #5f9f96 0%, var(--sharif-accent-dark) 100%) !important;
    box-shadow: 0 8px 18px rgba(79, 139, 132, .23) !important;
    transform: translateY(-1px) !important;
}

body.home .uael-woocommerce.uael-woo-products-slider .button:active,
body.home .uael-woocommerce.uael-woo-products-slider a.button:active {
    transform: translateY(0) !important;
}

/* UAEL / theme badges on homepage stay inside the image area and stack. */
body.home .uael-woocommerce.uael-woo-products-slider .onsale,
body.home .uael-woocommerce.uael-woo-products-slider .uael-onsale,
body.home .uael-woocommerce.uael-woo-products-slider .ast-on-card-button {
    z-index: 7 !important;
}

/* =========================================================
 * Scroll-to-top: style Astra's own control only
 * ======================================================= */
#ast-scroll-top {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    border: 1px solid rgba(255, 255, 255, .88) !important;
    border-radius: 50% !important;
    background: var(--sharif-accent-dark) !important;
    color: #fff !important;
    box-shadow: 0 7px 20px rgba(23, 32, 51, .18) !important;
    transition: transform .16s ease, box-shadow .16s ease, background .16s ease !important;
}

#ast-scroll-top:hover {
    background: var(--sharif-accent-deep) !important;
    box-shadow: 0 9px 24px rgba(23, 32, 51, .24) !important;
    transform: translateY(-2px) !important;
}

/* =========================================================
 * Responsive shell
 * ======================================================= */
@media (max-width: 1199px) {
    body.sbs-shop-display #content > .ast-container,
    body.post-type-archive-product:not(.sbs-shop-display) #content > .ast-container,
    body.tax-product_cat:not(.sbs-shop-display) #content > .ast-container,
    body.tax-product_tag:not(.sbs-shop-display) #content > .ast-container,
    body.tax-product_brand:not(.sbs-shop-display) #content > .ast-container {
        gap: 24px;
        padding-inline: 18px;
    }

    body.sbs-shop-display #secondary,
    body.post-type-archive-product:not(.sbs-shop-display) #secondary,
    body.tax-product_cat:not(.sbs-shop-display) #secondary,
    body.tax-product_tag:not(.sbs-shop-display) #secondary,
    body.tax-product_brand:not(.sbs-shop-display) #secondary {
        flex-basis: 280px;
        width: 280px;
        min-width: 280px;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    body.home .uael-woocommerce.uael-woo-products-slider ul.products:not(.slick-initialized) {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    body.home .uael-woocommerce.uael-woo-products-slider ul.products:not(.slick-initialized) > li.product:nth-child(n+4) {
        display: none !important;
    }
}

@media (max-width: 921px) {
    body.sbs-shop-display #content > .ast-container,
    body.post-type-archive-product:not(.sbs-shop-display) #content > .ast-container,
    body.tax-product_cat:not(.sbs-shop-display) #content > .ast-container,
    body.tax-product_tag:not(.sbs-shop-display) #content > .ast-container,
    body.tax-product_brand:not(.sbs-shop-display) #content > .ast-container {
        display: block;
        direction: rtl;
        padding-inline: 14px;
    }

    body.sbs-shop-display #primary,
    body.sbs-shop-display #secondary,
    body.post-type-archive-product:not(.sbs-shop-display) #primary,
    body.post-type-archive-product:not(.sbs-shop-display) #secondary,
    body.tax-product_cat:not(.sbs-shop-display) #primary,
    body.tax-product_cat:not(.sbs-shop-display) #secondary,
    body.tax-product_tag:not(.sbs-shop-display) #primary,
    body.tax-product_tag:not(.sbs-shop-display) #secondary,
    body.tax-product_brand:not(.sbs-shop-display) #primary,
    body.tax-product_brand:not(.sbs-shop-display) #secondary {
        width: 100%;
        min-width: 0;
        margin-block: 26px;
    }

    body.sbs-shop-display #secondary,
    body.post-type-archive-product:not(.sbs-shop-display) #secondary,
    body.tax-product_cat:not(.sbs-shop-display) #secondary,
    body.tax-product_tag:not(.sbs-shop-display) #secondary,
    body.tax-product_brand:not(.sbs-shop-display) #secondary {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    body.sbs-shop-display #secondary .widget,
    body.post-type-archive-product #secondary .widget,
    body.tax-product_cat #secondary .widget,
    body.tax-product_tag #secondary .widget,
    body.tax-product_brand #secondary .widget {
        margin: 0;
    }
}

@media (max-width: 767px) {
    body.sbs-shop-display #content > .ast-container,
    body.post-type-archive-product:not(.sbs-shop-display) #content > .ast-container,
    body.tax-product_cat:not(.sbs-shop-display) #content > .ast-container,
    body.tax-product_tag:not(.sbs-shop-display) #content > .ast-container,
    body.tax-product_brand:not(.sbs-shop-display) #content > .ast-container {
        padding-inline: 10px;
    }

    body.sbs-shop-display #secondary,
    body.post-type-archive-product:not(.sbs-shop-display) #secondary,
    body.tax-product_cat:not(.sbs-shop-display) #secondary,
    body.tax-product_tag:not(.sbs-shop-display) #secondary,
    body.tax-product_brand:not(.sbs-shop-display) #secondary {
        grid-template-columns: 1fr;
    }

    body.home .uael-woocommerce.uael-woo-products-slider .slick-slide {
        padding-inline: 5px !important;
    }

    body.home .elementor-element-a551b08,
    body.home .elementor-element-f32e8e1 {
        flex-basis: 5% !important;
        width: 5% !important;
        max-width: 5% !important;
    }

    body.home .elementor-element-5cdeca0 {
        flex-basis: 90% !important;
        width: 90% !important;
        max-width: 90% !important;
    }

    body.home .uael-woocommerce.uael-woo-products-slider ul.products:not(.slick-initialized) {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 0 !important;
    }

    body.home .uael-woocommerce.uael-woo-products-slider ul.products:not(.slick-initialized) > li.product:nth-child(n+2) {
        display: none !important;
    }

    body.home .uael-woocommerce.uael-woo-products-slider .uael-woo-products-thumbnail-wrap {
        height: 180px !important;
        min-height: 180px !important;
    }

    body.home .uael-woocommerce.uael-woo-products-slider .uael-woo-products-summary-wrap {
        grid-template-rows: minmax(76px, auto) 40px 22px 44px !important;
        min-height: 202px !important;
        gap: 5px !important;
        padding: 10px 9px 11px !important;
    }

    body.home .uael-woocommerce.uael-woo-products-slider .woocommerce-loop-product__title {
        min-height: 76px !important;
        max-height: 76px !important;
        font-size: 12.5px !important;
        line-height: 1.95 !important;
    }

    body.home .uael-woocommerce.uael-woo-products-slider .price {
        min-height: 40px !important;
        max-height: 40px !important;
        font-size: 13px !important;
    }

    body.home .uael-woocommerce.uael-woo-products-slider .button,
    body.home .uael-woocommerce.uael-woo-products-slider a.button {
        min-height: 44px !important;
        max-height: 44px !important;
        font-size: 11.5px !important;
    }

    #ast-scroll-top {
        width: 40px !important;
        height: 40px !important;
        inset-inline-end: 14px !important;
        bottom: 16px !important;
    }
}

@media (hover: none) {
    body.home .uael-woocommerce.uael-woo-products-slider .uael-woo-product-wrapper:hover,
    body.home .uael-woocommerce.uael-woo-products-slider .button:hover {
        transform: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.home .uael-woocommerce.uael-woo-products-slider .uael-woo-product-wrapper,
    body.home .uael-woocommerce.uael-woo-products-slider .button,
    #ast-scroll-top {
        transition: none !important;
    }
}

/* =========================================================
 * Elementor home image carousels — stable first paint
 *
 * Elementor's legacy Swiper lazy markup can contain data-src without src.
 * Keep the fix strictly inside the affected carousel: reserve the media area,
 * hide filename/alt fallback text, and show a neutral local skeleton until the
 * real image has decoded.
 * ======================================================= */
body.home .zaman-stable-carousel {
    --zaman-carousel-cols: var(--zaman-carousel-cols-desktop, 1);
    width: 100%;
    min-width: 0;
    overflow: hidden;
}

/* Swiper applies its own track geometry once initialized. Until then, keep
 * every slide in one clipped row so images can never flash underneath each
 * other. The per-widget counts are injected into the server-rendered markup. */
body.home .zaman-stable-carousel:not(.swiper-initialized):not(.swiper-container-initialized) > .swiper-wrapper {
    display: flex !important;
    flex-flow: row nowrap !important;
    width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
}

body.home .zaman-stable-carousel:not(.swiper-initialized):not(.swiper-container-initialized) > .swiper-wrapper > .swiper-slide {
    flex: 0 0 calc(100% / var(--zaman-carousel-cols)) !important;
    width: calc(100% / var(--zaman-carousel-cols)) !important;
    min-width: 0 !important;
}

body.home .zaman-stable-carousel:not(.swiper-initialized):not(.swiper-container-initialized) img.swiper-lazy[data-src]:not([src]) {
    visibility: hidden !important;
    opacity: 0 !important;
    color: transparent !important;
    font-size: 0 !important;
}

@media (max-width: 1024px) {
    body.home .zaman-stable-carousel {
        --zaman-carousel-cols: var(--zaman-carousel-cols-tablet, 1);
    }
}

@media (max-width: 767px) {
    body.home .zaman-stable-carousel {
        --zaman-carousel-cols: var(--zaman-carousel-cols-mobile, 1);
    }
}

body.home .zaman-priority-carousel .swiper-slide-inner,
body.home .elementor-image-carousel-wrapper [data-elementor-lightbox-slideshow="279f67b"] .swiper-slide-inner {
    position: relative;
    overflow: hidden;
    background: linear-gradient(100deg, #f4f7f7 20%, #fbfcfc 38%, #f4f7f7 56%);
    background-size: 220% 100%;
    animation: zaman-carousel-skeleton 1.15s ease-in-out infinite;
}

body.home .zaman-priority-carousel .zaman-priority-carousel-image,
body.home .elementor-image-carousel-wrapper [data-elementor-lightbox-slideshow="279f67b"] img.swiper-lazy[data-src]:not([src]) {
    display: block;
    width: 100%;
    max-width: 100%;
    color: transparent;
    font-size: 0;
}

/* Old/cached Swiper markup is hidden from the very first CSS paint. */
body.home .elementor-image-carousel-wrapper [data-elementor-lightbox-slideshow="279f67b"] img.swiper-lazy[data-src]:not([src]) {
    visibility: hidden;
    opacity: 0;
}

body.home .zaman-priority-carousel .zaman-priority-carousel-image {
    height: auto;
    opacity: 1;
    visibility: visible;
    background: transparent;
    transition: opacity .18s ease;
}

body.home .zaman-priority-carousel .swiper-slide-inner.zaman-image-ready {
    animation: none;
    background: transparent;
}

body.home .zaman-priority-carousel .swiper-slide-inner.zaman-image-ready .zaman-priority-carousel-image {
    opacity: 1;
    visibility: visible;
}

body.home .zaman-priority-carousel .swiper-slide-inner.zaman-image-error {
    animation: none;
    background: #f6f8f8;
}

body.home .zaman-priority-carousel .swiper-slide-inner.zaman-image-error .zaman-priority-carousel-image {
    opacity: 0;
    visibility: hidden;
}

@keyframes zaman-carousel-skeleton {
    0%   { background-position: 100% 0; }
    100% { background-position: -100% 0; }
}

@media (prefers-reduced-motion: reduce) {
    body.home .zaman-priority-carousel .swiper-slide-inner,
    body.home .elementor-image-carousel-wrapper [data-elementor-lightbox-slideshow="279f67b"] .swiper-slide-inner {
        animation: none;
    }
}

/* Never show Elementor's old circular Swiper loader on this carousel. */
body.home .elementor-image-carousel-wrapper [data-elementor-lightbox-slideshow="279f67b"] .swiper-lazy-preloader,
body.home .zaman-priority-carousel .swiper-lazy-preloader {
    display: none !important;
}
