/* Your existing styles */
        .loading {
            text-align: center;
            padding: 50px;
        }
        .no-results {
            text-align: center;
            padding: 60px 20px;
            background: #f8f9fa;
            border-radius: 10px;
        }
        .heart {
            cursor: pointer;
            font-size: 20px;
            transition: color 0.3s ease;
        }
        .heart:hover {
            color: red;
        }
        .heart-filled {
            color: red;
        }
        
        /* Category highlighting styles */
        .category-item {
            cursor: pointer;
            transition: all 0.3s ease;
            position: relative;
        }
        .category-item.active {
            transform: scale(1.05);
        }
        .category-item.active p {
            color: #2159AF;
            font-weight: bold;
        }
        .category-item.active img {
            border: 2px solid #2159AF;
            border-radius: 50%;
            padding: 2px;
        }

        /* Results counter and reset button styles */
        .results-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            /*margin-bottom: 20px;*/
            /*padding-bottom: 10px;*/
            /*border-bottom: 1px solid #e0e0e0;*/
        }
        .results-count {
            font-size: 18px;
            color: #000;
        }
        .results-count strong {
            color: #000;
            font-size: 18px;
        }
        .reset-btn {
            background: #F3F3F3;
            border: 1px solid #F3F3F3;
            color: #000;
            padding: 5px 15px;
            border-radius: 20px;
            cursor: pointer;
            transition: all 0.3s ease;
            font-size: 16px;
        }
        .reset-btn:hover {
            background: #BBBBBB;
            color: black;
        }

        /* Section styles */
        .section-header {
            margin-bottom: 20px;
        }
        .delivery-badge {
            background-color: #4caf50;
            color: white;
            padding: 2px 8px;
            border-radius: 12px;
            font-size: 12px;
            display: inline-block;
        }
        .delivery-fee-badge {
            background-color: #ff9800;
            color: white;
            padding: 2px 8px;
            border-radius: 12px;
            font-size: 12px;
            display: inline-block;
        }
        .shop-type-badge {
            background-color: #2196f3;
            color: white;
            padding: 2px 8px;
            border-radius: 12px;
            font-size: 12px;
            display: inline-block;
        }

        /* Hide scrollbar for category scroll */
        .category-scroll 
        {
            overflow-x: auto;
            scrollbar-width: none;  /* Firefox */
            -ms-overflow-style: none;  /* IE and Edge */
        }
        .category-scroll::-webkit-scrollbar
        {
            display: none;
        }
        .filters-row 
        {
            overflow-x: auto;
            scrollbar-width: none;
            -ms-overflow-style: none;
        }

        .filters-row::-webkit-scrollbar
        {
            display: none;
        }
        .carousel-inner
        {
            overflow-x: auto;
            scrollbar-width: none;
            -ms-overflow-style: none;
        }

        .carousel-inner::-webkit-scrollbar
        {
            display: none;
        }
        .carousel-inner 
        {
            overflow-x: auto;
            scrollbar-width: none;  /* Firefox */
            -ms-overflow-style: none;  /* IE and Edge */
        }

        .carousel-inner::-webkit-scrollbar
        {
            display: none;
            width: 0;
            height: 0;
        }
        .carousel-inner .row {
            flex-wrap: nowrap;
            overflow-x: auto;
            scrollbar-width: none;
            -ms-overflow-style: none;
        }

        .carousel-inner .row::-webkit-scrollbar
         {
            display: none;
        }
        .cart-bottom-sheet.open ~ .mobile-cart-bar,
        body:has(.cart-bottom-sheet.open) .mobile-cart-bar
        {
            display: none !important;
        }
        .cart-bottom-sheet-overlay.show ~ .mobile-cart-bar
        {
            display: none !important;
        }

/* Ensure mobile cart bar stays hidden when sheet is open */
body.cart-open .mobile-cart-bar {
    display: none !important;
}

    
        /* Promo offer carousel - updated to match reference design */
        .foodiego-promo-wrap {
            margin: 16px 0 28px;
            overflow: visible;
        }

        .foodiego-promo-slider {
            display: flex;
            gap: 14px;
            overflow-x: auto;
            scroll-behavior: smooth;
            scrollbar-width: none;
            -ms-overflow-style: none;
            padding: 0;
        }

        .foodiego-promo-slider::-webkit-scrollbar {
            display: none;
        }

        .foodiego-promo-item {
            flex: 0 0 calc(33.333% - 10px);
            min-width: calc(33.333% - 10px);
            display: flex;
        }

        .foodiego-promo-card {
            border-radius: 14px;
            min-height: 200px;
            /*height: 100%;*/
            height: 200px;
            width: 100%;
            overflow: hidden;
            position: relative;
            display: flex;
            flex-direction: column;
        }

        .foodiego-promo-card.promo-blue {
            background: #2159AF;
            color: #ffffff;
        }

        .foodiego-promo-card.promo-yellow {
            background: #FFBB32;
            color: #000000;
        }

        .foodiego-promo-card.promo-coral {
            background: #FF886D;
            color: #000000;
        }

        .foodiego-promo-image {
            width: calc(100% - 20px);
            height: 76px;
            object-fit: cover;
            display: block;
            margin: 10px 10px 0;
            border-radius: 10px;
        }

        .foodiego-promo-body {
            padding: 18px 18px 16px;
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            gap: 12px;
            flex: 1;
        }

        .foodiego-promo-copy {
            min-width: 0;
            flex: 1 1 auto;
        }

        .foodiego-promo-title {
            font-size: 13px;
            line-height: 1.22;
            font-weight: 700;
            margin: 0 0 8px;
            letter-spacing: -0.2px;
        }

        .foodiego-promo-title.long-title {
            font-size: 13px;
            line-height: 1.15;
            letter-spacing: -0.25px;
        }

        .foodiego-promo-text {
            font-size: 12px;
            font-weight: 400;
            line-height: 1.2;
            margin: 0;
        }

        .foodiego-promo-btn {
            border: 0;
            border-radius: 999px;
            background: #ffffff;
            color: #111111;
            font-size: 13px;
            font-weight: 700;
            line-height: 1;
            padding: 9px 15px;
            text-decoration: none;
            white-space: nowrap;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex: 0 0 auto;
        }

        .foodiego-promo-btn:hover {
            color: #111111;
            background: #f2f2f2;
        }

        .foodiego-promo-arrow {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 38px;
            height: 38px;
            border: 0;
            border-radius: 50%;
            background: #ffffff;
            box-shadow: 0 2px 12px rgba(0,0,0,0.15);
            z-index: 5;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 0;
        }

        .foodiego-promo-arrow.left {
            left: -18px;
        }

        .foodiego-promo-arrow.right {
            right: -18px;
        }

        .foodiego-promo-arrow img {
            width: 18px;
            height: 18px;
            object-fit: contain;
        }

        @media (max-width: 991.98px) {
            .foodiego-promo-item {
                flex-basis: 78%;
                min-width: 78%;
            }

            .foodiego-promo-card {
                min-height: 168px;
            }

            .foodiego-promo-arrow {
                display: none;
            }
        }

        @media (max-width: 575.98px) {
            .foodiego-promo-slider {
                gap: 12px;
                padding-right: 12px;
                align-items: stretch;
            }

            .foodiego-promo-item {
                flex-basis: 88%;
                min-width: 88%;
                display: flex;
            }

            .foodiego-promo-card {
                min-height: 186px;
                height: 186px;
            }

            .foodiego-promo-image {
                height: 70px;
            }

            .foodiego-promo-body {
                padding: 14px 14px 13px;
                gap: 8px;
                align-items: flex-end;
            }

            .foodiego-promo-title {
                font-size: 11px;
            }

            .foodiego-promo-title.long-title {
                font-size: 11px;
                line-height: 1.08;
                margin-bottom: 5px;
                max-width: 100%;
            }

            .foodiego-promo-text {
                font-size: 13px;
            }

            .foodiego-promo-btn {
                font-size: 12px;
                padding: 8px 12px;
            }
        }