/* LG CSS Library v0.5.6 */

/* Button black text */
/* Alert buttons - black text */
.button.alert,
.button.alert span {
    color: #000 !important;
}

/* Keep black text on hover */
.button.alert:hover,
.button.alert:hover span {
    color: #000 !important;
}

/* PRODUCT CATEGORY SIDEBAR */
/* =========================================================
   MY MOGUL - DARK PRODUCT CATEGORY SIDEBAR
   Based on 20 August 2026 version
   ========================================================= */


/* =========================================================
   SIDEBAR
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper) {
    background: #0e1b23 !important;

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;

    padding: 22px;

    box-shadow:
        0 6px 18px rgba(0, 0, 0, 0.12),
        0 16px 35px rgba(0, 0, 0, 0.10);

    color: #ffffff;
}


/* =========================================================
   HEADING
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper) .wp-block-heading,
:is(#shop-sidebar, .sidebar-wrapper) .widget-title {

    position: relative;

    margin: 0 0 18px 0;
    padding: 0 0 14px 0;

    color: #ffffff !important;

    font-size: 20px;
    font-weight: 700;
    line-height: 1.25;

    border: 0 !important;
}


/* Yellow heading underline */

:is(#shop-sidebar, .sidebar-wrapper) .wp-block-heading::after,
:is(#shop-sidebar, .sidebar-wrapper) .widget-title::after {

    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 48px;
    height: 3px;

    background: #fdcc1a;

    border-radius: 99px;
}


/* =========================================================
   CATEGORY LIST
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list {

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}


/* =========================================================
   MAIN CATEGORY CARD
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-0
> .wc-block-product-categories-list-item {

    position: relative;

    display: flex;
    flex-wrap: wrap;
    align-items: center;

    width: 100%;

    margin: 0 0 8px 0 !important;
    padding: 0 !important;

    background: rgba(255, 255, 255, 0.055);

    border: 1px solid rgba(255, 255, 255, 0.09);

    border-radius: 10px;

    overflow: hidden;

    transition:
        background .2s ease,
        border-color .2s ease,
        transform .2s ease,
        box-shadow .2s ease;
}


/* =========================================================
   MAIN CATEGORY LINK
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-0
> .wc-block-product-categories-list-item
> a {

    flex: 1 1 auto;

    display: flex;
    align-items: center;

    min-width: 0;

    padding: 11px 8px 11px 12px;

    color: #ffffff !important;

    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;

    text-decoration: none !important;

    opacity: 1 !important;

    transition:
        color .2s ease,
        padding-left .2s ease;
}


/* =========================================================
   YELLOW ARROW
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-0
> .wc-block-product-categories-list-item
> a::before {

    content: "›";

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 25px;

    width: 25px;
    height: 25px;

    margin-right: 9px;

    color: #fdcc1a;

    font-size: 23px;
    font-weight: 700;
    line-height: 1;

    transition:
        color .2s ease,
        transform .2s ease;
}


/* =========================================================
   PRODUCT COUNT
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list-item-count {

    flex: 0 0 auto;

    min-width: 29px;

    margin-right: 9px;
    padding: 3px 8px;

    background: rgba(255, 255, 255, 0.10);

    border: 1px solid rgba(255, 255, 255, 0.08);

    border-radius: 99px;

    color: rgba(255, 255, 255, 0.75);

    font-size: 11px;
    font-weight: 600;
    line-height: 1.4;

    text-align: center;

    transition:
        background .2s ease,
        color .2s ease,
        border-color .2s ease;
}


/* =========================================================
   MAIN CATEGORY HOVER
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-0
> .wc-block-product-categories-list-item:hover {

    background: #fdcc1a;

    border-color: #fdcc1a;

    transform: translateX(3px);

    box-shadow:
        0 5px 15px rgba(0, 0, 0, 0.18);
}


/* Text becomes dark */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-0
> .wc-block-product-categories-list-item:hover
> a {

    color: #0e1b23 !important;
}


/* Arrow becomes dark */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-0
> .wc-block-product-categories-list-item:hover
> a::before {

    color: #0e1b23;

    transform: translateX(2px);
}


/* Count on hover */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-0
> .wc-block-product-categories-list-item:hover
> .wc-block-product-categories-list-item-count {

    background: #0e1b23;

    border-color: #0e1b23;

    color: #ffffff;
}


/* =========================================================
   SUBCATEGORY CONTAINER
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-1 {

    flex: 0 0 100%;

    width: 100%;

    margin: 0 !important;

    padding:
        4px
        8px
        9px
        34px !important;

    list-style: none !important;
}


/* =========================================================
   SUBCATEGORY ROW
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-1
> .wc-block-product-categories-list-item {

    display: flex;
    flex-wrap: nowrap;
    align-items: center;

    width: 100%;

    margin: 1px 0 !important;
    padding: 0 !important;

    background: transparent;

    border: 0;
    border-radius: 6px;

    transition: background .2s ease;
}


/* =========================================================
   SUBCATEGORY LINK
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-1
> .wc-block-product-categories-list-item
> a {

    flex: 1 1 auto;

    display: flex;
    align-items: center;

    min-width: 0;

    padding: 6px 6px;

    color: rgba(255, 255, 255, 0.74) !important;

    font-size: 13px;
    font-weight: 400;
    line-height: 1.3;

    text-decoration: none !important;

    opacity: 1 !important;

    transition:
        color .2s ease,
        padding-left .2s ease;
}


/* Small subcategory arrow */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-1
> .wc-block-product-categories-list-item
> a::before {

    content: "›";

    flex: 0 0 auto;

    margin-right: 7px;

    color: #fdcc1a;

    font-size: 17px;
    font-weight: 700;
    line-height: 1;

    transition: transform .2s ease;
}


/* =========================================================
   SUBCATEGORY COUNT
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-1
> .wc-block-product-categories-list-item
> .wc-block-product-categories-list-item-count {

    min-width: 24px;

    margin-right: 3px;
    padding: 2px 6px;

    background: rgba(255, 255, 255, 0.08);

    color: rgba(255, 255, 255, 0.65);

    border: 0;

    font-size: 10px;
}


/* =========================================================
   SUBCATEGORY HOVER
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-1
> .wc-block-product-categories-list-item:hover {

    background: rgba(253, 204, 26, 0.10);
}


:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-1
> .wc-block-product-categories-list-item:hover
> a {

    color: #ffffff !important;

    padding-left: 9px;
}


:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-1
> .wc-block-product-categories-list-item:hover
> a::before {

    transform: translateX(2px);
}


/* =========================================================
   ACTIVE CATEGORY
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list-item.current-cat {

    background: #fdcc1a !important;

    border-color: #fdcc1a !important;
}


/* Active category text */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list-item.current-cat
> a {

    color: #0e1b23 !important;

    font-weight: 700;
}


/* Active arrow */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list-item.current-cat
> a::before {

    color: #0e1b23 !important;
}


/* Active count */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list-item.current-cat
> .wc-block-product-categories-list-item-count {

    background: #0e1b23 !important;

    border-color: #0e1b23 !important;

    color: #ffffff !important;
}


/* =========================================================
   CURRENT CATEGORY PARENT
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list-item.current-cat-parent {

    border-color: rgba(253, 204, 26, 0.55);
}


/* Parent category title */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list-item.current-cat-parent
> a {

    color: #fdcc1a !important;
}


/* =========================================================
   LEGACY FLATSOME / WOOCOMMERCE CATEGORY WIDGET
   Supports ul.product-categories
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
ul.product-categories {

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}


:is(#shop-sidebar, .sidebar-wrapper)
ul.product-categories
> li.cat-item {

    position: relative;

    margin: 0 0 8px !important;
    padding: 0 !important;

    background: rgba(255, 255, 255, 0.055);

    border: 1px solid rgba(255, 255, 255, 0.09);

    border-radius: 10px;

    overflow: hidden;

    transition:
        background .2s ease,
        border-color .2s ease,
        transform .2s ease;
}


:is(#shop-sidebar, .sidebar-wrapper)
ul.product-categories
> li.cat-item
> a {

    display: block;

    padding: 11px 12px;

    color: #ffffff !important;

    font-size: 14px;
    font-weight: 600;

    opacity: 1 !important;

    text-decoration: none !important;
}


/* Legacy arrow */

:is(#shop-sidebar, .sidebar-wrapper)
ul.product-categories
> li.cat-item
> a::before {

    content: "›";

    margin-right: 9px;

    color: #fdcc1a;

    font-size: 20px;
    font-weight: 700;
}


/* Legacy hover */

:is(#shop-sidebar, .sidebar-wrapper)
ul.product-categories
> li.cat-item:hover {

    background: #fdcc1a;

    border-color: #fdcc1a;

    transform: translateX(3px);
}


:is(#shop-sidebar, .sidebar-wrapper)
ul.product-categories
> li.cat-item:hover
> a {

    color: #0e1b23 !important;
}


:is(#shop-sidebar, .sidebar-wrapper)
ul.product-categories
> li.cat-item:hover
> a::before {

    color: #0e1b23;
}


/* Legacy active category */

:is(#shop-sidebar, .sidebar-wrapper)
ul.product-categories
> li.current-cat {

    background: #fdcc1a !important;

    border-color: #fdcc1a !important;
}


:is(#shop-sidebar, .sidebar-wrapper)
ul.product-categories
> li.current-cat
> a {

    color: #0e1b23 !important;

    font-weight: 700;
}


/* =========================================================
   REMOVE DEFAULT MARKERS / DIVIDERS
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list-item::before,

:is(#shop-sidebar, .sidebar-wrapper)
ul.product-categories
li.cat-item::before {

    display: none !important;

    content: none !important;
}


:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list-item,

:is(#shop-sidebar, .sidebar-wrapper)
ul.product-categories
li.cat-item {

    border-bottom-style: solid;
}


/* =========================================================
   LAST ITEM
   ========================================================= */

:is(#shop-sidebar, .sidebar-wrapper)
.wc-block-product-categories-list--depth-0
> .wc-block-product-categories-list-item:last-child,

:is(#shop-sidebar, .sidebar-wrapper)
ul.product-categories
> li.cat-item:last-child {

    margin-bottom: 0 !important;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 849px) {

    :is(#shop-sidebar, .sidebar-wrapper) {

        padding: 17px;

        border-radius: 13px;
    }


    :is(#shop-sidebar, .sidebar-wrapper)
    .wp-block-heading,

    :is(#shop-sidebar, .sidebar-wrapper)
    .widget-title {

        font-size: 18px;

        margin-bottom: 15px;
    }


    :is(#shop-sidebar, .sidebar-wrapper)
    .wc-block-product-categories-list--depth-0
    > .wc-block-product-categories-list-item
    > a {

        padding-top: 12px;
        padding-bottom: 12px;
    }
}

/* icon table alignment */
/* =========================================================
   ICON + TEXT FEATURE ROWS
   Works after Flatsome UX Builder regenerates row/column IDs
   ========================================================= */

/* Tables containing our inline SVG icons */
.col-inner table:has(.sbtl-inline-icon) {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    border: 0 !important;
    border-collapse: collapse !important;
    table-layout: auto !important;
}

/* Turn each table row into a properly aligned flex row */
.col-inner table:has(.sbtl-inline-icon) tr {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    min-height: 38px;
}

/* Reset both cells */
.col-inner table:has(.sbtl-inline-icon) td {
    border: 0 !important;
    padding: 0 !important;
    height: auto !important;
    vertical-align: middle !important;
}

/* Icon cell */
.col-inner table:has(.sbtl-inline-icon) td:first-child {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    flex: 0 0 32px !important;
    width: 32px !important;
    min-width: 32px !important;
    max-width: 32px !important;

    line-height: 1 !important;
}

/* Remove spacing caused by nested spans and &nbsp; */
.col-inner table:has(.sbtl-inline-icon) td:first-child > span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 32px !important;
    height: 32px !important;

    line-height: 1 !important;
}

/* Actual icon wrapper */
.col-inner table:has(.sbtl-inline-icon) .sbtl-inline-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 26px !important;
    height: 26px !important;

    font-size: 26px !important;
    line-height: 1 !important;
    vertical-align: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
}

/* Force every SVG onto exactly the same box */
.col-inner table:has(.sbtl-inline-icon) .sbtl-inline-icon svg {
    display: block !important;

    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    min-height: 26px !important;

    margin: 0 !important;
    padding: 0 !important;

    position: static !important;
    transform: none !important;

    vertical-align: middle !important;
}

/* Text cell */
.col-inner table:has(.sbtl-inline-icon) td:last-child {
    display: flex !important;
    align-items: center !important;

    flex: 1 1 auto !important;
    width: auto !important;

    min-height: 32px !important;
    line-height: 1.3 !important;
}

/* Remove the empty paragraph below these tables */
.col-inner table:has(.sbtl-inline-icon) + p {
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    line-height: 0 !important;
}

/* Mobile */
@media (max-width: 549px) {

    .col-inner table:has(.sbtl-inline-icon) tr {
        gap: 8px !important;
    }

    .col-inner table:has(.sbtl-inline-icon) td:first-child {
        flex-basis: 28px !important;
        width: 28px !important;
        min-width: 28px !important;
        max-width: 28px !important;
    }

    .col-inner table:has(.sbtl-inline-icon) .sbtl-inline-icon,
    .col-inner table:has(.sbtl-inline-icon) .sbtl-inline-icon svg {
        width: 24px !important;
        height: 24px !important;
        min-width: 24px !important;
        min-height: 24px !important;
    }
}

/* Button Outline */
/* Flatsome outline buttons - 1px border with 90% opacity */
.button.outline,
.button.is-outline {
    border-width: 1px !important;
    border-color: color-mix(in srgb, currentColor 90%, transparent) !important;
}

/* Button Arrow */
.icon-angle-right::before {
    content: "→" !important;
    font-family: Arial, sans-serif !important;
    font-style: normal !important;
    font-weight: 400 !important;
    font-size: 1.5em;
    position: relative;
    top: -2px;
}

/* Menu Bounce */
/* Header Menu - Uppercase + Subtle Bounce */
.header-nav-main .nav-top-link {
    text-transform: uppercase !important;
    transition: transform 0.22s ease;
    transform: translateY(0);
}

.header-nav-main .nav-top-link:hover {
    animation: menuPush 0.32s ease;
}

@keyframes menuPush {
    0% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(3px);
    }
    70% {
        transform: translateY(-1px);
    }
    100% {
        transform: translateY(0);
    }
}

/* cart fix */
/* Custom Header Cart - force even icon spacing */
.header-nav-main {
    display: flex !important;
    align-items: center !important;
}

/* Search */
.header-nav-main > li:has(.chc-search-link) {
    margin: 0 0px !important;
}

/* Account */
.header-nav-main > li.account-item {
    margin: 0 7px !important;
    transform: translateX(20px) !important;
}

/* Cart */
.header-nav-main > li.cart-item {
    margin: 0 15px !important;
}

/* Cart link needs to anchor the quantity badge */
.header-nav-main .chc-cart-link {
    position: relative !important;
}

/* Cart quantity badge */
.header-nav-main .chc-cart-count {
    position: absolute !important;
    top: -8px !important;
    right: -10px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-width: 17px !important;
    height: 17px !important;
    padding: 0 4px !important;

    border-radius: 99px !important;
    background: #fdcc1a !important;
    color: #111 !important;

    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1 !important;

    z-index: 10 !important;
}

/* menu line */
.header-nav-main.nav-line-bottom > li > a:before,
.header-nav-main.nav-line-grow > li > a:before,
.header-nav-main.nav-line > li > a:before {
    height: 1px !important;
}

/* Top header line */
/* Top header: 1px white bottom outline at 40% opacity */
#top-bar {
    border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
}

/* Follow icons */
/* Follow/social icons - 15px */
#top-bar .social-icons.follow-icons .icon i {
    font-size: 18px !important;
}

/* PRODUCT CATEGORY + VIEW ALL GRID */
/* ==========================================
   PRODUCT CATEGORY GRID
   ========================================== */

/* Category cards */
.product-category .col-inner {
    height: 100%;
    border-radius: 8px !important;
    overflow: hidden;
}

/* Complete category box */
.product-category .box-category {
    height: 100%;
    border-radius: 8px !important;
    overflow: hidden;
    background: #eff4f8;
}

/* Category image container */
.product-category .box-image {
    display: block !important;
    width: 100% !important;
    border-radius: 8px 8px 0 0 !important;
    overflow: hidden !important;
}

/* Preserve Flatsome 1:1 image ratio */
.product-category .box-image .image-cover {
    display: block !important;
    width: 100% !important;
    position: relative !important;
    overflow: hidden !important;
}

/* Category images */
.product-category .box-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* Category title section */
.product-category .box-text {
    border-radius: 0 0 8px 8px !important;
}

/* Category titles */
.product-category .header-title {
    text-transform: none !important;
    font-weight: 700 !important;
}


/* ==========================================
   DESKTOP CATEGORY + VIEW ALL LAYOUT
   ========================================== */

@media (min-width: 850px) {

    /* Full-width outer row */
    .row.row-full-width:has(.product-category):has(.icon-box) {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
    }


    /* ======================================
       PRODUCT CATEGORY AREA
       ====================================== */

    .row.row-full-width:has(.product-category):has(.icon-box)
    > .col:first-child {

        flex: 0 0 calc(85.714285% + 7px) !important;
        width: calc(85.714285% + 7px) !important;
        max-width: calc(85.714285% + 7px) !important;

        display: flex !important;
        align-items: stretch !important;
    }


    /* ======================================
       VIEW ALL AREA
       ====================================== */

    .row.row-full-width:has(.product-category):has(.icon-box)
    > .col:last-child {

        flex: 0 0 calc(14.285715% - 7px) !important;
        width: calc(14.285715% - 7px) !important;
        max-width: calc(14.285715% - 7px) !important;

        display: flex !important;
        align-items: stretch !important;
    }


    /* Both main column inners */
    .row.row-full-width:has(.product-category):has(.icon-box)
    > .col > .col-inner {

        width: 100% !important;
        height: 100% !important;
    }


    /*
     * View All horizontal alignment.
     * Pull 15px left to match category-card spacing.
     */
    .row.row-full-width:has(.product-category):has(.icon-box)
    > .col:last-child > .col-inner {

        margin-left: -15px !important;
        margin-right: 0 !important;

        /*
         * Match the 34px spacer above the
         * product category grid.
         */
        margin-top: 34px !important;

        /*
         * 34px top offset + 20px Flatsome
         * bottom gutter.
         */
        height: calc(100% - 54px) !important;

        min-height: 0 !important;
    }
}


/* ==========================================
   VIEW ALL PRODUCTS CARD
   ========================================== */

.row.row-full-width:has(.product-category):has(.icon-box)
> .col:last-child > .col-inner {

    width: 100% !important;

    display: flex !important;
    align-items: stretch !important;

    border-radius: 8px !important;
    overflow: hidden !important;
}


/* Make link fill complete card */
.row.row-full-width:has(.product-category):has(.icon-box)
> .col:last-child > .col-inner > a.plain {

    display: flex !important;

    width: 100% !important;
    height: 100% !important;

    align-items: center !important;
    justify-content: center !important;
}


/* ==========================================
   VIEW ALL ICON BOX
   ========================================== */

.row.row-full-width:has(.product-category):has(.icon-box)
> .col:last-child .icon-box {

    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;

    display: flex !important;
    flex-direction: column !important;

    align-items: center !important;
    justify-content: center !important;

    text-align: center !important;
}


/* Icon container */
.row.row-full-width:has(.product-category):has(.icon-box)
> .col:last-child .icon-box-img {

    float: none !important;

    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 12px !important;
}


/* Actual icon */
.row.row-full-width:has(.product-category):has(.icon-box)
> .col:last-child .icon-box-img .icon {

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}


/* Icon image */
.row.row-full-width:has(.product-category):has(.icon-box)
> .col:last-child .icon-box-img img {

    display: block !important;
    margin: 0 auto !important;
}


/* ==========================================
   VIEW ALL TEXT
   ========================================== */

.row.row-full-width:has(.product-category):has(.icon-box)
> .col:last-child .icon-box-text {

    width: 100% !important;
    text-align: center !important;
}


/* Remove paragraph spacing */
.row.row-full-width:has(.product-category):has(.icon-box)
> .col:last-child .icon-box-text p {

    margin: 0 !important;
    padding: 0 !important;

    text-align: center !important;
}


/* ==========================================
   TABLET / MOBILE
   ========================================== */

@media (max-width: 849px) {

    /*
     * Return View All to normal Flatsome
     * positioning when columns stack.
     */
    .row.row-full-width:has(.product-category):has(.icon-box)
    > .col:last-child {

        display: block !important;
    }


    /*
     * IMPORTANT:
     * Remove desktop -15px horizontal offset
     * and 34px vertical offset.
     */
    .row.row-full-width:has(.product-category):has(.icon-box)
    > .col:last-child > .col-inner {

        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: 0 !important;

        width: 100% !important;
        height: auto !important;

        min-height: 160px !important;
    }


    /* View All link */
    .row.row-full-width:has(.product-category):has(.icon-box)
    > .col:last-child > .col-inner > a.plain {

        width: 100% !important;
        min-height: 160px !important;
    }


    /* View All content */
    .row.row-full-width:has(.product-category):has(.icon-box)
    > .col:last-child .icon-box {

        width: 100% !important;
        height: auto !important;

        min-height: 160px !important;
    }
}

/* Rounded hero banners */
/* Flatsome banner - 12px rounded corners */
.banner.rounded {
    border-radius: 12px !important;
    overflow: hidden !important;
}

/* Ensure background image and overlays follow radius */
.banner.rounded .banner-inner,
.banner.rounded .banner-bg,
.banner.rounded .banner-bg img,
.banner.rounded .overlay {
    border-radius: 12px !important;
}

/* AI Assisted */
/* AI DESIGN STUDIO - CHECKMARK LIST */

.ai .design-check-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ai .design-check-list li {
    position: relative;
    list-style: none !important;
    padding-left: 46px !important;
    margin: 0 0 16px 0 !important;
    min-height: 34px;
}

/* Yellow circle */
.ai .design-check-list li::before {
    content: "e00a";
    font-family: "fl-icons" !important;

    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);

    width: 32px;
    height: 32px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #ffcc00;
    color: #0c1b22;

    border-radius: 50%;

    font-size: 16px;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
}

/* Main list heading */
.ai .design-check-list li strong {
    color: #fff;
    font-weight: 700;
}

/* Remove Flatsome's normal list marker */
.ai .design-check-list li::marker {
    content: "";
}

/* Remove divider lines */
.ai .design-check-list li {
    border: none !important;
    border-bottom: none !important;

    /* Tighter spacing between list items */
    margin-bottom: 10px !important;

    /* Tighter text line spacing */
    line-height: 1.25 !important;
}

.ai .design-check-list li div {
    line-height: 1.25 !important;
}

/* Keep heading close to description */
.ai .design-check-list li strong {
    display: inline-block;
    line-height: 1.15 !important;
    margin-bottom: 2px;
}

/* Remove any Flatsome pseudo divider */
.ai .design-check-list li::after {
    display: none !important;
    content: none !important;
}

/* Little icon button move */
.button .sbtl-inline-icon {
    position: relative;
    left: -4px;
    top: 2px;
    margin-left: 2px;
}

/* Row alignment */
/* ==========================================
   ICON ROW
   5 EQUAL COLLAPSED COLUMNS ON DESKTOP
   FULL WIDTH STACKED COLUMNS ON MOBILE
   ========================================== */


/* ==========================================
   DESKTOP / TABLET
   ========================================== */

@media (min-width: 850px) {

    /*
     * Align with the visible edges of .ai.
     * Flatsome applies 15px padding around
     * the full-width AI column.
     */
    .icons {
        width: calc(100% - 30px) !important;
        max-width: calc(100% - 30px) !important;

        margin-left: 15px !important;
        margin-right: 15px !important;

        border-radius: 12px !important;
        overflow: hidden !important;
    }

    /*
     * Keep row-collapse behaviour.
     */
    .icons.row-collapse > .col {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /*
     * 5 equal columns.
     */
    .icons > .col {
        flex: 0 0 20% !important;
        width: 20% !important;
        max-width: 20% !important;
    }

    .icons > .col > .col-inner {
        width: 100% !important;
        height: 100% !important;
    }
}


/* ==========================================
   MOBILE
   ========================================== */

@media (max-width: 849px) {

    /*
     * No 15px desktop alignment calculation.
     * Use the normal available row width.
     */
    .icons {
        width: 100% !important;
        max-width: 100% !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        border-radius: 12px !important;
        overflow: hidden !important;
    }

    /*
     * Keep the row collapsed.
     */
    .icons.row-collapse > .col {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /*
     * Override Flatsome small-11.
     * Each icon column becomes full width.
     */
    .icons > .col {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /*
     * Make the grey background fill the
     * complete width of every row.
     */
    .icons > .col > .col-inner {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
    }
}

/* Product page */
/* =========================================================
   WOOCOMMERCE IMAGE STYLING
   CLEAN VERSION
   ========================================================= */


/* =========================================================
   1. SINGLE PRODUCT - MAIN GALLERY
   14PX RADIUS + DARKENING
   ========================================================= */

.single-product .product-gallery-slider,
.single-product .product-gallery-slider .flickity-viewport,
.single-product .woocommerce-product-gallery__image {
    border-radius: 14px !important;
    overflow: hidden !important;
}

/* Do NOT round nested image/link separately */
.single-product .woocommerce-product-gallery__image a,
.single-product .woocommerce-product-gallery__image img {
    border-radius: 0 !important;
}

.single-product .woocommerce-product-gallery__image img {
    display: block !important;
    width: 100% !important;
    filter: brightness(94.2%) !important;
}


/* =========================================================
   2. SINGLE PRODUCT - MINI GALLERY
   8PX RADIUS
   ========================================================= */

.single-product .product-thumbnails .col-inner {
    border-radius: 8px !important;
    overflow: hidden !important;
}

.single-product .product-thumbnails a,
.single-product .product-thumbnails img {
    border-radius: 0 !important;
}

.single-product .product-thumbnails img {
    display: block !important;
    width: 100% !important;
    filter: brightness(94.2%) !important;
}


/* =========================================================
   3. PRODUCT CARDS
   SHOP / CATEGORY / TAG / ARCHIVE / SEARCH
   RELATED / UPSELLS / SHORTCODES
   ========================================================= */

/*
 * ONLY the outer image container gets the radius.
 * This prevents the white corner/notch artefacts.
 */

.products .product-small .box-image,
.product-small .box-image {
    border-radius: 13px 13px 0 0 !important;
    overflow: hidden !important;
}


/*
 * Remove radius from every nested image layer.
 */

.products .product-small .box-image > div,
.product-small .box-image > div,

.products .product-small .box-image .image-zoom,
.product-small .box-image .image-zoom,

.products .product-small .box-image a,
.product-small .box-image a,

.products .product-small .box-image img,
.product-small .box-image img {
    border-radius: 0 !important;
}


/*
 * Image darkening.
 * No pseudo-elements.
 * No positioning changes.
 */

.products .product-small .box-image img,
.product-small .box-image img {
    filter: brightness(94.2%) !important;
}


/*
 * Preserve your existing LG plugin zoom.
 * Do not define transform here.
 */

.products .product-small:hover .box-image img,
.product-small:hover .box-image img {
    filter: brightness(94.2%) !important;
}


/* =========================================================
   4. PRODUCT CATEGORY TILES
   ========================================================= */

.product-category .box-image {
    border-radius: 8px 8px 0 0 !important;
    overflow: hidden !important;
}

.product-category .box-image > div,
.product-category .box-image a,
.product-category .box-image img {
    border-radius: 0 !important;
}

.product-category .box-image img {
    filter: brightness(94.2%) !important;
}


/* =========================================================
   5. WOOCOMMERCE BLOCK PRODUCT GRID
   ========================================================= */

.wc-block-grid__product-image {
    border-radius: 13px 13px 0 0 !important;
    overflow: hidden !important;
}

.wc-block-grid__product-image a,
.wc-block-grid__product-image img {
    border-radius: 0 !important;
}

.wc-block-grid__product-image img {
    filter: brightness(94.2%) !important;
}


/* =========================================================
   6. CART / MINI CART / PRODUCT WIDGET IMAGES
   ========================================================= */

.woocommerce-cart .product-thumbnail img,
.widget_shopping_cart img,
.woocommerce-mini-cart img,
.product_list_widget img {
    border-radius: 8px !important;
    filter: brightness(94.2%) !important;
}


/* =========================================================
   7. DO NOT ALTER FLATSOME IMAGE TOOLS
   ========================================================= */

.product-small .image-tools,
.product-small .badge-container,
.single-product .product-gallery .image-tools,
.single-product .product-gallery .badge-container {
    filter: none !important;
    opacity: 1 !important;
}

/* Block Quote */
blockquote {
    border-left-color: var(--fs-color-secondary) !important;
}
