/* ========================================
   Moulya's Kitchen — Homepage
   Desktop-first base; mobile overrides in mobile.css
   ======================================== */

   .home-page .hero-section,
   .home-page .mk-hero {
     background-image: url('../images/herosection_bg2.png');
     background-size: cover;
     background-position: center;
     background-repeat: no-repeat;
   }
   
   .mk-hero__title {
     color: #0a2e00;
     font-family: 'Great Vibes', cursive;
     font-weight: 400;
     font-size: clamp(2.35rem, 4.4vw, 3.75rem);
     line-height: 1.08;
     letter-spacing: 0.01em;
     max-width: none;
     margin-bottom: 0.65rem !important;
     text-shadow: 0 1px 0 rgba(255, 255, 255, 0.55);
   }

   .mk-hero__title-line {
     display: block;
     white-space: nowrap;
   }

   .mk-hero__title-line--accent,
   .mk-hero__title .text-primary-mk {
     color: #d97706 !important;
   }

   .mk-hero__copy {
     max-width: 34rem;
   }
   
   .mk-hero__subtitle {
     color: #374151;
   }

   .mk-hero__points {
     list-style: none;
     margin: 0.15rem 0 0;
     padding: 0;
     font-family: Inter, system-ui, -apple-system, sans-serif;
     font-size: 0.78rem;
     font-weight: 500;
     line-height: 1.35;
     color: #4b5563;
     letter-spacing: 0.01em;
   }

   .mk-hero__points li {
     margin: 0 0 0.12rem;
     padding: 0;
     display: flex;
     align-items: center;
     gap: 0.35rem;
   }

   .mk-hero__points li::before {
     content: '';
     width: 0.28rem;
     height: 0.28rem;
     border-radius: 50%;
     background: var(--mk-orange, #d97706);
     flex-shrink: 0;
   }

   /* Desktop hero — larger title, vertically centered in the left text zone */
   @media (min-width: 992px) {
     .mk-hero-slide--default {
       min-height: 520px;
     }

     .mk-hero-slide--default .hero-content.mk-home-shell {
       min-height: 520px;
       display: flex;
       align-items: center;
       padding-top: 1.5rem;
       padding-bottom: 1.5rem;
       padding-left: clamp(1.5rem, 4vw, 3.5rem);
       padding-right: 1.5rem;
     }

     .mk-hero-slide--default .hero-content .row {
       width: 100%;
       align-items: center;
     }

     .mk-hero-slide--default .mk-hero__copy {
       max-width: 42rem;
       padding-top: 0.25rem;
     }

     .mk-hero-slide--default .mk-hero__title {
       font-size: clamp(3.4rem, 4.2vw, 4.75rem);
       line-height: 1.05;
       margin-bottom: 1rem !important;
     }

     .mk-hero-slide--default .mk-hero__points {
       font-size: 0.88rem;
       line-height: 1.45;
       margin-top: 0.35rem;
     }

     .mk-hero-slide--default .mk-hero__points li {
       margin-bottom: 0.28rem;
       gap: 0.45rem;
     }

     .mk-hero-slide--default .mk-hero__points li::before {
       width: 0.32rem;
       height: 0.32rem;
     }
   }

   @media (min-width: 1400px) {
     .mk-hero-slide--default,
     .mk-hero-slide--default .hero-content.mk-home-shell {
       min-height: 560px;
     }

     .mk-hero-slide--default .mk-hero__title {
       font-size: 5rem;
     }

     .mk-hero-slide--default .mk-hero__copy {
       max-width: 46rem;
     }
   }
   
   .home-page {
     --mk-green: #3d5229;
     --mk-green-soft: #4a6b2f;
     --mk-orange: #d97706;
     --mk-cream: #fdf8f0;
     --mk-card-radius: 1.25rem;
     --mk-pill-radius: 9999px;
     --mk-shadow-soft: 0 4px 24px rgba(10, 46, 0, 0.08);
     --mk-shadow-card: 0 8px 32px rgba(10, 46, 0, 0.1);
   }
   
   /* Fixed/sticky header — stays pinned to the top while scrolling */
   .mk-home-header {
     position: sticky;
     top: 0;
     z-index: 1030;
   }
   
   /* Announcement bar sticks below header on home */
   .home-page .mk-site-announcement-host:not([hidden]) {
     position: sticky;
     top: var(--mk-header-offset, 4.5rem);
     z-index: 1025;
   }
   
   /* Header scroll state (mobile enhanced in mobile.css) */
   .mk-home-header.is-scrolled {
     box-shadow: 0 4px 20px rgba(10, 46, 0, 0.08);
   }
   
   .mk-home-header__bar {
     width: 100%;
   }
   
   /* Hero — uses website banner background; no extra mobile blocks */
   .mk-hero__trust {
     display: flex;
   }
   
   /* Weekly specials / unified menu hub */
   .mk-weekly-specials,
   .mk-home-menu-hub {
     position: relative;
   }
   
   .mk-home-menu-tabs {
     display: flex;
     align-items: stretch;
     gap: 0.35rem;
     padding: 0.35rem;
     margin: 0 auto 1.25rem;
     max-width: 42rem;
     border-radius: var(--mk-pill-radius, 9999px);
     background: rgba(255, 255, 255, 0.92);
     border: 1px solid rgba(61, 82, 41, 0.12);
     box-shadow: var(--mk-shadow-soft, 0 4px 24px rgba(10, 46, 0, 0.08));
     overflow-x: auto;
     scrollbar-width: none;
   }
   
   .mk-home-menu-tabs::-webkit-scrollbar {
     display: none;
   }
   
   .mk-home-menu-tab {
     flex: 1 1 0;
     min-width: 7.5rem;
     min-height: 44px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     gap: 0.4rem;
     border: none;
     border-radius: var(--mk-pill-radius, 9999px);
     background: transparent;
     color: #4b5563;
     font-size: 0.8125rem;
     font-weight: 600;
     line-height: 1.2;
     padding: 0.55rem 0.85rem;
     white-space: nowrap;
     cursor: pointer;
     transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
   }
   
   .mk-home-menu-tab i {
     font-size: 0.95rem;
   }
   
   .mk-home-menu-tab.is-active {
     background: var(--mk-green, #3d5229);
     color: #fff;
     box-shadow: 0 4px 14px rgba(61, 82, 41, 0.22);
   }
   
   .mk-home-menu-tab:not(.is-active):hover {
     background: rgba(61, 82, 41, 0.08);
     color: #1f2937;
   }
   
   .mk-home-category-tabs .category-btn {
     min-height: 40px;
   }
   
   .mk-home-menu-hub .mk-weekly-picker__week,
   .mk-home-menu-hub #homeWeeklyWeekTabs,
   .mk-home-menu-hub #homeWeeklyWeekSelect {
     display: none !important;
   }
   
   .mk-home-menu-hub .mk-weekly-picker__days {
     margin-bottom: 0.75rem;
   }
   
   /* Date row — week prev/next + Mon–Fri day chips */
   .mk-day-picker-row {
     display: flex;
     align-items: center;
     gap: 0.5rem;
     margin-bottom: 1rem;
   }
   
   .mk-day-picker-row__days {
     flex: 1 1 auto;
     min-width: 0;
   }
   
   .mk-home-menu-hub .mk-day-picker-row .mk-day-scroll,
   .mk-home-menu-hub .mk-day-picker-row #homeWeeklyDayScroll {
     display: flex !important;
     flex-wrap: nowrap;
     justify-content: space-between;
     gap: 0.45rem;
     overflow-x: hidden;
     overflow-y: visible;
     padding: 0.15rem 0 0.35rem;
     margin-bottom: 0;
     min-height: 4.5rem;
     scroll-snap-type: none;
   }
   
   .mk-home-menu-hub .mk-day-picker-row .mk-day-scroll__btn {
     flex: 1 1 0;
     min-width: 0;
     max-width: none;
     padding: 0.45rem 0.35rem 0.55rem;
     border-radius: 0.85rem;
   }
   
   .mk-day-picker-nav {
     flex-shrink: 0;
     width: 2.25rem;
     height: 2.25rem;
     border: 1px solid rgba(61, 82, 41, 0.12);
     border-radius: 50%;
     background: #fff;
     color: #1f2937;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     box-shadow: 0 2px 8px rgba(10, 46, 0, 0.06);
     cursor: pointer;
     transition: background-color 0.15s ease, border-color 0.15s ease, opacity 0.15s ease;
   }
   
   .mk-day-picker-nav:hover:not(:disabled) {
     background: rgba(61, 82, 41, 0.06);
     border-color: rgba(61, 82, 41, 0.22);
   }
   
   .mk-day-picker-nav:disabled {
     opacity: 0.35;
     cursor: not-allowed;
   }
   
   /* Menu cards — 2 cards visible, swipe + page dots */
   .mk-home-cards-carousel {
     position: relative;
     margin-top: 0.25rem;
   }
   
   .mk-home-cards-carousel__row {
     position: relative;
   }
   
  .mk-home-cards-carousel__nav {
    position: absolute;
    top: 42%;
    z-index: 4;
    box-shadow: 0 2px 10px rgba(10, 46, 0, 0.14);
    -webkit-tap-highlight-color: transparent;
  }

  .mk-home-cards-carousel__nav--prev {
    left: 0.2rem;
    transform: translate(-35%, -50%);
  }
   
   .mk-home-cards-carousel__nav:hover:not(:disabled),
   .mk-home-cards-carousel__nav:active:not(:disabled),
   .mk-home-cards-carousel__nav:focus,
   .mk-home-cards-carousel__nav:focus-visible {
     background: #fff;
     color: #1f2937;
     border-color: rgba(61, 82, 41, 0.12);
   }
   
   .mk-home-cards-carousel__nav:focus-visible {
     outline: 2px solid rgba(61, 82, 41, 0.3);
     outline-offset: 2px;
   }
   
   .mk-home-cards-carousel__nav--prev {
     left: 0.2rem;
     --mk-carousel-nav-x: -35%;
     transform: translate(var(--mk-carousel-nav-x), -50%);
   }
   
  .mk-home-cards-carousel__nav--next {
    right: 0.2rem;
    --mk-carousel-nav-x: 35%;
    transform: translate(var(--mk-carousel-nav-x), -50%);
  }

  .mk-home-cards-carousel__nav--prev.is-hint-active,
  .mk-home-cards-carousel__nav--next.is-hint-active {
    background: var(--mk-orange, #d97706);
    border-color: var(--mk-orange, #d97706);
    color: #fff;
    animation: mk-carousel-nav-hint 1.35s ease-in-out infinite;
  }

  .mk-home-cards-carousel__nav--prev.is-hint-active:hover:not(:disabled),
  .mk-home-cards-carousel__nav--prev.is-hint-active:active:not(:disabled),
  .mk-home-cards-carousel__nav--prev.is-hint-active:focus,
  .mk-home-cards-carousel__nav--prev.is-hint-active:focus-visible,
  .mk-home-cards-carousel__nav--next.is-hint-active:hover:not(:disabled),
  .mk-home-cards-carousel__nav--next.is-hint-active:active:not(:disabled),
  .mk-home-cards-carousel__nav--next.is-hint-active:focus,
  .mk-home-cards-carousel__nav--next.is-hint-active:focus-visible {
    background: var(--mk-orange, #d97706);
    border-color: var(--mk-orange, #d97706);
    color: #fff;
  }

  .mk-home-cards-carousel__nav--prev.is-hint-active::after,
  .mk-home-cards-carousel__nav--next.is-hint-active::after {
    content: '';
    position: absolute;
    inset: -5px;
    border-radius: 50%;
    border: 2px solid rgba(217, 119, 6, 0.55);
    animation: mk-carousel-nav-ring 1.35s ease-out infinite;
    pointer-events: none;
  }

  @keyframes mk-carousel-nav-hint {
    0%, 100% {
      transform: translate(var(--mk-carousel-nav-x), -50%) scale(1);
      box-shadow: 0 2px 10px rgba(217, 119, 6, 0.28);
    }
    50% {
      transform: translate(var(--mk-carousel-nav-x), -50%) scale(1.14);
      box-shadow: 0 4px 18px rgba(217, 119, 6, 0.48);
    }
  }

  @keyframes mk-carousel-nav-ring {
    0% {
      transform: scale(0.92);
      opacity: 0.85;
    }
    100% {
      transform: scale(1.5);
      opacity: 0;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .mk-home-cards-carousel__nav--prev.is-hint-active,
    .mk-home-cards-carousel__nav--next.is-hint-active {
      animation: none;
      background: var(--mk-orange, #d97706);
      border-color: var(--mk-orange, #d97706);
      color: #fff;
      box-shadow: 0 0 0 3px rgba(217, 119, 6, 0.28);
    }

    .mk-home-cards-carousel__nav--prev.is-hint-active::after,
    .mk-home-cards-carousel__nav--next.is-hint-active::after {
      animation: none;
      display: none;
    }
  }
   
   .mk-home-cards-carousel__nav[hidden] {
     display: none !important;
   }
   
   .mk-home-cards-carousel__viewport {
     width: 100%;
     overflow: hidden;
   }
   
   .mk-home-cards-carousel__track {
     display: flex !important;
     flex-wrap: nowrap !important;
     overflow-x: auto;
     overflow-y: hidden;
     scroll-snap-type: x mandatory;
     scroll-behavior: smooth;
     -webkit-overflow-scrolling: touch;
     gap: 0.65rem;
     margin: 0 !important;
     padding: 0.2rem 0 0.5rem;
     scrollbar-width: none;
   }
   
   .mk-home-cards-carousel__track::-webkit-scrollbar {
     display: none;
   }
   
   .mk-home-cards-carousel__track > [class*="col-"] {
     flex: 0 0 clamp(12rem, 42%, 13.25rem);
     max-width: clamp(12rem, 42%, 13.25rem);
     width: clamp(12rem, 42%, 13.25rem);
     padding: 0 !important;
     scroll-snap-align: start;
   }
   
   .mk-home-cards-carousel__track > .col-12 {
     flex: 0 0 100%;
     max-width: 100%;
     width: 100%;
   }
   
   .mk-home-cards-carousel__dots {
     display: flex;
     justify-content: center;
     align-items: center;
     gap: 0.45rem;
     min-height: 1.1rem;
     padding-top: 0.35rem;
   }
   
   .mk-home-cards-carousel__dot {
     width: 0.5rem;
     height: 0.5rem;
     padding: 0;
     border: none;
     border-radius: 50%;
     background: rgba(61, 82, 41, 0.18);
     cursor: pointer;
     transition: transform 0.15s ease, background-color 0.15s ease;
   }
   
   .mk-home-cards-carousel__dot.is-active {
     background: var(--mk-green, #3d5229);
     transform: scale(1.1);
   }
   
   .mk-home-cards-carousel.is-empty .mk-home-cards-carousel__dots {
     display: none;
   }
   
   .mk-home-menu-hub .mk-home-cards-carousel.is-empty .mk-home-cards-carousel__track {
     overflow: visible;
     padding-bottom: 0.25rem;
   }
   
   .mk-home-menu-hub .mk-home-cards-carousel.is-empty .mk-home-cards-carousel__track > .col-12 {
     flex: 0 0 100%;
     max-width: 100%;
     width: 100%;
     padding: 0 !important;
   }
   
   .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card {
     height: 100%;
   }
   
   .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card__media {
     width: 100%;
     flex-shrink: 0;
     position: relative;
     overflow: hidden;
     aspect-ratio: 4 / 3;
     height: auto;
     max-height: none;
     min-height: 0;
     background-color: var(--muted);
     border-radius: 0.75rem 0.75rem 0 0;
   }
   
   .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card__image,
   .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card .card-img-top {
     position: absolute;
     inset: 0;
     width: 100%;
     height: 100%;
     max-height: none;
     aspect-ratio: unset;
     object-fit: cover;
     object-position: center;
     display: block;
     border-radius: 0;
   }
   
   .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card__body {
     padding: 0.45rem 0.5rem 0.5rem !important;
   }
   
   .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card__title {
     font-size: 0.8125rem;
     line-height: 1.2;
     margin-bottom: 0.15rem !important;
     -webkit-line-clamp: 1;
     display: -webkit-box;
     -webkit-box-orient: vertical;
     overflow: hidden;
   }
   
   .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card__desc {
     display: none;
   }
   
   .mk-home-menu-hub .mk-home-cards-carousel .mk-membership-tag {
     font-size: 0.55rem;
     padding: 0.15rem 0.35rem;
     margin-bottom: 0.15rem !important;
   }
   
   .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card__delivery {
     font-size: 0.68rem;
     margin-bottom: 0.25rem;
   }
   
   .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card__slot-chip {
     font-size: 0.65rem;
     padding: 0.2rem 0.45rem;
   }
   
   .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card__countdown {
     font-size: 0.65rem;
     margin-bottom: 0.2rem;
   }
   
   .mk-home-cards-carousel__track .mk-home-card {
     overflow: hidden;
     box-sizing: border-box;
   }
   
   .mk-home-cards-carousel__track .mk-home-card__body {
     width: 100%;
     min-width: 0;
     overflow: hidden;
   }
   
   .mk-home-cards-carousel__track .mk-home-card__slot,
   .mk-home-cards-carousel__track .mk-home-card select.form-select {
     width: 100%;
     max-width: 100%;
     min-width: 0;
     box-sizing: border-box;
   }
   
   .mk-home-cards-carousel__track .mk-home-card__footer {
     display: grid;
     grid-template-columns: auto minmax(0, 1fr);
     grid-template-areas:
       "price price"
       "wishlist actions";
     gap: 0.35rem 0.35rem;
     width: 100%;
     align-items: center;
     min-width: 0;
   }
   
   .mk-home-cards-carousel__track .mk-home-card__price {
     grid-area: price;
     flex: none;
     width: 100%;
     min-width: 0;
     overflow: visible;
   }
   
   .mk-home-cards-carousel__track .mk-home-card__wishlist {
     grid-area: wishlist;
     flex-shrink: 0;
   }
   
   .mk-home-cards-carousel__track .mk-weekly-card__cart-wrap {
     grid-area: actions;
     margin-left: 0;
     justify-self: end;
     display: inline-flex;
     align-items: center;
     justify-content: flex-end;
     gap: 0.25rem;
     min-width: 0;
     max-width: 100%;
   }
   
   .mk-home-cards-carousel__track .mk-weekly-qty {
     min-width: 0;
     width: auto;
     flex: 0 1 auto;
     max-width: 4.85rem;
     height: 1.75rem;
     padding: 0 0.08rem;
   }
   
   .mk-home-cards-carousel__track .mk-weekly-qty__btn {
     width: 1.45rem;
     font-size: 0.9rem;
   }
   
   .mk-home-cards-carousel__track .mk-weekly-qty__value {
     min-width: 0.75rem;
     font-size: 0.8rem;
   }
   
   .mk-home-cards-carousel__track .mk-home-card__cart,
   .mk-home-cards-carousel__track .weekly-add-cart-btn,
   .mk-home-cards-carousel__track .add-cart-btn {
     flex-shrink: 0;
   }
   
   /* Membership chip — status under day picker */
   .mk-home-membership-chip {
     margin-bottom: 0.55rem;
     border-radius: 0.85rem;
     background: #fff;
     border: 1px solid rgba(61, 82, 41, 0.14);
     box-shadow: 0 2px 10px rgba(61, 82, 41, 0.06);
     overflow: hidden;
   }
   
   .mk-home-membership-chip__link-wrap {
     display: block;
     color: inherit;
     text-decoration: none;
   }
   
   .mk-home-membership-chip__link-wrap:hover {
     color: inherit;
     background: rgba(61, 82, 41, 0.03);
   }
   
   .mk-home-membership-chip__main {
     display: flex;
     align-items: center;
     gap: 0.65rem;
     padding: 0.7rem 0.8rem;
   }
   
   .mk-home-membership-chip__icon {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 2.15rem;
     height: 2.15rem;
     border-radius: 0.7rem;
     background: linear-gradient(145deg, #3d5229, #4a6b2f);
     color: #fff;
     font-size: 1rem;
     flex-shrink: 0;
     box-shadow: 0 3px 8px rgba(61, 82, 41, 0.22);
   }
   
   .mk-home-membership-chip__content {
     flex: 1 1 auto;
     min-width: 0;
   }
   
   .mk-home-membership-chip__label-row {
     display: flex;
     align-items: center;
     flex-wrap: wrap;
     gap: 0.35rem 0.5rem;
     margin-bottom: 0.2rem;
   }
   
   .mk-home-membership-chip__label {
     font-size: 0.72rem;
     font-weight: 700;
     letter-spacing: 0.05em;
     text-transform: uppercase;
     color: #6b7280;
   }
   
   .mk-home-membership-chip__plan {
     display: inline-flex;
     align-items: center;
     padding: 0.12rem 0.55rem;
     border-radius: 999px;
     font-size: 0.78rem;
     font-weight: 700;
     line-height: 1.2;
   }
   
   .mk-home-membership-chip__plan--basic {
     background: rgba(107, 114, 128, 0.12);
     color: #374151;
     border: 1px solid rgba(107, 114, 128, 0.18);
   }
   
   .mk-home-membership-chip__plan--saver {
     background: rgba(61, 82, 41, 0.12);
     color: var(--mk-green, #3d5229);
     border: 1px solid rgba(61, 82, 41, 0.2);
   }
   
   .mk-home-membership-chip__plan--plus {
     background: rgba(217, 119, 6, 0.12);
     color: #b45309;
     border: 1px solid rgba(217, 119, 6, 0.2);
   }
   
   .mk-home-membership-chip__summary {
     margin: 0;
     font-size: 0.78rem;
     font-weight: 500;
     line-height: 1.35;
     color: #4b5563;
   }
   
   .mk-home-membership-chip__extra {
     display: inline-flex;
     align-items: center;
     gap: 0.25rem;
     margin-top: 0.25rem;
     font-size: 0.68rem;
     font-weight: 600;
     color: var(--mk-green, #3d5229);
   }
   
   .mk-home-membership-chip__chevron {
     flex-shrink: 0;
     font-size: 0.95rem;
     color: #9ca3af;
   }
   
   .mk-home-membership-chip__head {
     display: flex;
     align-items: center;
     flex-wrap: wrap;
     gap: 0.3rem 0.4rem;
     margin-bottom: 0.2rem;
   }
   
   .mk-home-membership-chip__scope {
     font-size: 0.65rem;
     font-weight: 600;
     text-transform: uppercase;
     letter-spacing: 0.04em;
     color: #6b7280;
   }
   
   .mk-home-membership-chip__tags {
     display: flex;
     align-items: center;
     flex-wrap: wrap;
     gap: 0.25rem;
   }
   
   .mk-home-membership-chip__tag {
     display: inline-flex;
     align-items: center;
     gap: 0.2rem;
     padding: 0.1rem 0.35rem;
     border-radius: 999px;
     background: rgba(255, 255, 255, 0.85);
     border: 1px solid rgba(61, 82, 41, 0.1);
     font-size: 0.62rem;
     font-weight: 500;
     color: #4b5563;
     line-height: 1.2;
     white-space: nowrap;
   }
   
   .mk-home-membership-chip__tag i {
     font-size: 0.58rem;
     color: var(--mk-green, #3d5229);
     opacity: 0.85;
   }
   
   .mk-home-membership-chip__tag--curd {
     background: rgba(61, 82, 41, 0.08);
     border-color: rgba(61, 82, 41, 0.18);
     color: var(--mk-green, #3d5229);
     font-weight: 600;
   }
   
   .mk-home-membership-chip__link {
     display: inline-flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;
     gap: 0.05rem;
     min-width: 2.75rem;
     padding: 0.35rem 0.45rem;
     border-left: 1px solid rgba(61, 82, 41, 0.1);
     background: rgba(255, 255, 255, 0.55);
     color: var(--mk-green, #3d5229);
     font-size: 0.62rem;
     font-weight: 700;
     text-decoration: none;
     text-transform: uppercase;
     letter-spacing: 0.03em;
     transition: background-color 0.15s ease, color 0.15s ease;
   }
   
   .mk-home-membership-chip__link:hover {
     background: rgba(61, 82, 41, 0.08);
     color: #2a3a1c;
   }
   
   .mk-home-membership-chip__link i {
     font-size: 0.72rem;
     line-height: 1;
   }
   
   @media (min-width: 768px) {
     .mk-home-cards-carousel__track > [class*="col-"]:not(.col-12) {
       flex: 0 0 clamp(12rem, 30%, 13.25rem);
       max-width: clamp(12rem, 30%, 13.25rem);
       width: clamp(12rem, 30%, 13.25rem);
     }
   }
   
   @media (min-width: 992px) {
     .mk-home-cards-carousel__track {
       gap: 0.75rem;
       padding: 0.25rem 0 0.5rem;
     }
   
     .mk-home-cards-carousel__track > [class*="col-"]:not(.col-12) {
       flex: 0 0 clamp(12rem, calc((100% - 2.25rem) / 4), 13.5rem);
       max-width: clamp(12rem, calc((100% - 2.25rem) / 4), 13.5rem);
       width: clamp(12rem, calc((100% - 2.25rem) / 4), 13.5rem);
     }
   
     .mk-home-cards-carousel__track .mk-home-card__footer {
       display: grid !important;
       grid-template-columns: auto minmax(0, 1fr);
       grid-template-areas:
         "price price"
         "wishlist actions";
     }
   
     .mk-home-cards-carousel__track .mk-home-card__wishlist {
       width: 1.85rem !important;
       height: 1.85rem !important;
       min-width: 30px !important;
       min-height: 30px !important;
       border: 1.5px solid var(--border) !important;
       border-radius: 50% !important;
       background: #fff !important;
       display: inline-flex !important;
       align-items: center;
       justify-content: center;
     }
   
     .mk-home-cards-carousel__track .mk-home-card__footer .mk-home-card__cart.mk-home-card__cart--fab {
       width: 1.85rem !important;
       height: 1.85rem !important;
       min-width: 30px !important;
       min-height: 30px !important;
       border-radius: 50% !important;
       box-shadow: 0 4px 14px rgba(217, 119, 6, 0.4);
     }
   
     .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card__body {
       padding: 0.4rem 0.45rem 0.45rem !important;
     }
   
     .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card__desc {
       display: -webkit-box;
       font-size: 0.72rem;
       -webkit-line-clamp: 1;
       margin-bottom: 0.15rem;
     }
   
     .mk-home-menu-hub .mk-home-cards-carousel .mk-home-card__title {
       font-size: 0.78rem;
     }
   
     .mk-home-menu-hub .mk-day-picker-row .mk-day-scroll,
     .mk-home-menu-hub .mk-day-picker-row #homeWeeklyDayScroll {
       min-height: 3.65rem;
       gap: 0.35rem;
     }
   
     .mk-home-menu-hub .mk-day-picker-row .mk-day-scroll__btn {
       min-height: 3.5rem;
       padding: 0.35rem 0.25rem 0.4rem;
       border-radius: 0.75rem;
     }
   
     .mk-home-menu-hub .mk-day-picker-row .mk-day-scroll__btn-date {
       font-size: 0.78rem;
     }
   
     .mk-day-picker-nav {
       width: 2.25rem;
       height: 2.25rem;
     }
   
     .mk-home-membership-chip__main {
       padding: 0.5rem 0.65rem;
     }
   
     .mk-home-membership-chip__plan {
       font-size: 0.78rem;
     }
   
     .mk-home-membership-chip__tag {
       font-size: 0.68rem;
     }
   
     .mk-home-membership-chip__link {
       min-width: 3rem;
       font-size: 0.65rem;
     }
   }
   
   /* Legacy day tab buttons — replaced by day scroll cards */
   #homeWeeklyDayTabs {
     display: none !important;
   }
   
   .mk-weekly-picker {
     display: block;
     visibility: visible;
     max-width: none;
     margin: 0 auto 1.5rem;
   }
   
   .home-page .mk-home-shell {
     width: 100%;
     max-width: none;
     margin-left: auto;
     margin-right: auto;
     padding-left: clamp(1rem, 3vw, 3rem);
     padding-right: clamp(1rem, 3vw, 3rem);
   }
   
   .home-page .mk-weekly-specials,
   .home-page section.py-4,
   .home-page section.py-5 {
     width: 100%;
   }
   
   .mk-weekly-picker__label {
     display: block;
     margin: 0 0 0.5rem;
     font-size: 0.75rem;
     font-weight: 600;
     letter-spacing: 0.04em;
     text-transform: uppercase;
     color: #6b7280;
     text-align: center;
   }
   
   .mk-weekly-picker__week,
   .mk-weekly-picker__days {
     margin-bottom: 1rem;
   }
   
   #homeWeeklyWeekTabs {
     display: none;
     flex-wrap: nowrap;
     justify-content: stretch;
     gap: 0.75rem;
     margin-bottom: 1rem;
   }
   
   .mk-week-chip {
     border: 1.5px solid var(--border, rgba(0, 0, 0, 0.12));
     border-radius: 9999px;
     background: #fff;
     color: var(--foreground, #1f2937);
     font-size: 0.8125rem;
     font-weight: 600;
     line-height: 1.2;
     padding: 0.55rem 1rem;
     min-height: 44px;
     cursor: pointer;
     flex: 1 1 0;
     text-align: center;
     transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
   }
   
   .mk-week-chip.is-active,
   .mk-week-chip[aria-current='true'] {
     background: var(--mk-green, #3d5229);
     border-color: var(--mk-green, #3d5229);
     color: #fff;
     box-shadow: 0 4px 12px rgba(10, 46, 0, 0.18);
   }
   
   .mk-week-chip--static {
     cursor: default;
   }
   
   .mk-week-select {
     display: block;
     visibility: visible;
     width: 100%;
     max-width: 100%;
     margin: 0 auto 1rem;
     min-height: 44px;
     border-radius: var(--mk-pill-radius, 9999px);
     border: 1px solid var(--border, rgba(0, 0, 0, 0.12));
     padding: 0.5rem 2.5rem 0.5rem 2.75rem;
     font-size: 0.875rem;
     font-weight: 500;
     background-color: #fff;
     background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%230a2e00' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z'/%3E%3C/svg%3E");
     background-repeat: no-repeat;
     background-position: 1rem center;
     background-size: 1rem;
     box-shadow: var(--mk-shadow-soft, 0 4px 24px rgba(10, 46, 0, 0.08));
     -webkit-appearance: none;
     appearance: none;
     cursor: pointer;
   }
   
   .mk-week-select.is-hidden {
     display: none !important;
   }
   
   .mk-day-scroll,
   #homeWeeklyDayScroll {
     display: flex !important;
     visibility: visible;
     gap: 0.5rem;
     overflow-x: auto;
     scroll-snap-type: x mandatory;
     -webkit-overflow-scrolling: touch;
     padding: 0.25rem 0 1rem;
     margin-bottom: 0.5rem;
     scrollbar-width: none;
     min-height: 4.75rem;
   }
   
   .mk-day-scroll::-webkit-scrollbar {
     display: none;
   }
   
   .mk-day-scroll__btn {
     flex: 0 0 auto;
     scroll-snap-align: center;
     min-width: 4.5rem;
     min-height: 44px;
     padding: 0.5rem 0.65rem;
     border: 1.5px solid var(--border, rgba(0, 0, 0, 0.12));
     border-radius: 0.875rem;
     background: #fff;
     color: var(--foreground, #1f2937);
     font-size: 0.75rem;
     font-weight: 600;
     text-align: center;
     line-height: 1.2;
     transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
     cursor: pointer;
   }
   
   .mk-day-scroll__btn:disabled {
     opacity: 0.45;
     cursor: not-allowed;
   }
   
   .mk-day-scroll__btn.is-active {
     background: var(--mk-green, #3d5229);
     border-color: var(--mk-green, #3d5229);
     color: #fff;
     box-shadow: 0 4px 12px rgba(10, 46, 0, 0.2);
   }
   
   .mk-day-scroll__btn-day {
     display: block;
     font-size: 0.6875rem;
     text-transform: uppercase;
     letter-spacing: 0.02em;
     opacity: 0.85;
   }
   
   .mk-day-scroll__btn-date {
     display: block;
     font-size: 0.8125rem;
     font-weight: 700;
   }
   
   .mk-day-scroll__badge {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     min-width: 1.125rem;
     height: 1.125rem;
     padding: 0 0.25rem;
     margin-top: 0.2rem;
     border-radius: 9999px;
     font-size: 0.625rem;
     font-weight: 700;
     background: rgba(61, 82, 41, 0.12);
     color: var(--mk-green, #3d5229);
   }
   
   .mk-day-scroll__badge--empty {
     opacity: 0.55;
   }
   
   .mk-day-scroll__btn.is-active .mk-day-scroll__badge {
     background: rgba(255, 255, 255, 0.25);
     color: #fff;
   }
   
   /* Product card BEM — desktop inherits card-mk */
   .mk-home-card {
     position: relative;
   }
   
   .mk-home-card__media {
     position: relative;
     overflow: hidden;
     background-color: var(--muted);
   }
   
   .mk-home-card__image {
     width: 100%;
     display: block;
     object-fit: cover;
   }
   
   .mk-home-card__badge {
     position: absolute;
     top: 0.75rem;
     left: 0.75rem;
     z-index: 2;
   }
   
   .mk-home-card__body {
     padding: 1rem;
   }
   
   .mk-home-card__title {
     font-family: 'Playfair Display', serif;
     font-weight: 700;
     font-size: 1.05rem;
     margin-bottom: 0.35rem;
     color: var(--foreground);
   }
   
   .mk-home-card__desc {
     color: var(--muted-foreground);
     font-size: 0.8125rem;
     margin-bottom: 0.5rem;
     display: -webkit-box;
     -webkit-line-clamp: 2;
     -webkit-box-orient: vertical;
     overflow: hidden;
   }
   
   .mk-home-card__delivery {
     font-size: 0.8125rem;
     font-weight: 600;
     color: var(--mk-green-soft);
     margin-bottom: 0.5rem;
   }
   
   .mk-home-card__delivery i {
     margin-right: 0.25rem;
   }
   
   .mk-home-card__slot {
     margin-bottom: 0.5rem;
   }
   
   .mk-home-card__slot.mk-slot-required,
   .mk-home-card__slot-picker.mk-slot-required {
     animation: mk-form-shake-keyframes 0.45s ease;
     border-color: #fd7e14 !important;
     box-shadow: 0 0 0 3px rgba(253, 126, 20, 0.22);
   }
   
   .mk-home-card__slot-picker.mk-slot-required .mk-home-card__slot-chip {
     border-color: #fd7e14;
   }
   
   .mk-home-card__countdown {
     font-size: 0.8125rem;
     margin-bottom: 0.75rem;
   }
   
   .mk-home-card__countdown--urgent {
     color: var(--mk-orange);
     font-weight: 600;
   }
   
   .mk-home-card__countdown--closed {
     color: var(--destructive);
     font-weight: 600;
   }
   
   .mk-home-card__footer {
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 0.5rem;
   }
   
   .mk-home-card__price {
     flex: 1;
     min-width: 0;
   }
   
   .mk-home-card__wishlist,
   .mk-home-card .favorite-btn {
     flex-shrink: 0;
     border: none !important;
     border-radius: 0 !important;
     background: transparent !important;
     box-shadow: none !important;
     padding: 0.15rem;
     min-width: 0;
     min-height: 0;
     width: auto;
     height: auto;
     color: #9f1239;
   }
   
   .mk-home-card__wishlist.active,
   .mk-home-card .favorite-btn.active {
     color: #e11d48;
     background: transparent !important;
   }
   
   .mk-home-card__cart {
     flex-shrink: 0;
   }
   
   .mk-weekly-card__cart-wrap {
     flex-shrink: 0;
     display: inline-flex;
     align-items: center;
     justify-content: flex-end;
     gap: 0.45rem;
   }
   
   .mk-weekly-qty {
     display: inline-flex;
     align-items: center;
     justify-content: space-between;
     gap: 0.15rem;
     min-width: 5.5rem;
     height: 2.125rem;
     padding: 0 0.2rem;
     border: 1.5px solid var(--secondary-mk, #3d5229);
     border-radius: 999px;
     background: #fff;
   }
   
   .mk-weekly-qty__btn {
     flex: 0 0 auto;
     width: 1.85rem;
     height: 100%;
     border: 0;
     background: transparent;
     color: var(--secondary-mk, #3d5229);
     font-size: 1.05rem;
     font-weight: 700;
     line-height: 1;
     cursor: pointer;
     padding: 0;
   }
   
   .mk-weekly-qty__btn[data-weekly-qty-action="decrease"] {
     color: #9ca3af;
     font-weight: 500;
   }
   
   .mk-weekly-qty__btn:hover {
     color: var(--secondary-mk, #3d5229);
   }
   
   .mk-weekly-qty__value {
     flex: 1 1 auto;
     min-width: 1.25rem;
     text-align: center;
     font-weight: 700;
     font-size: 0.95rem;
     color: #1f2937;
   }
   
   .mk-home-card .weekly-add-cart-btn.is-has-qty,
   .mk-home-card .add-cart-btn.is-has-qty {
     background: var(--secondary-mk, #3d5229) !important;
   }
   
   /* ---------- Add On's (Optional) section ---------- */
   .mk-addon-section {
     margin: 1.5rem auto 0;
     max-width: none;
     width: 100%;
     padding: 1rem 1.1rem 1.15rem;
     background: var(--mk-cream, #fbf7ef);
     border: 1px solid rgba(61, 82, 41, 0.12);
     border-radius: 1.1rem;
   }
   
   .mk-addon-section__header {
     display: flex;
     align-items: center;
     gap: 0.75rem;
     margin-bottom: 0.9rem;
   }
   
   .mk-addon-section__icon {
     flex: 0 0 auto;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 2.5rem;
     height: 2.5rem;
     border-radius: 0.75rem;
     background: rgba(61, 82, 41, 0.1);
     color: var(--mk-green, #3d5229);
     font-size: 1.15rem;
   }
   
   .mk-addon-section__heading {
     flex: 1 1 auto;
     min-width: 0;
   }
   
   .mk-addon-section__title {
     font-weight: 700;
     font-size: 1rem;
     color: var(--mk-green, #3d5229);
     line-height: 1.2;
   }
   
   .mk-addon-section__optional {
     color: #d97706;
     font-weight: 600;
     font-size: 0.85rem;
   }
   
   .mk-addon-section__subtitle {
     font-size: 0.8rem;
     color: var(--muted-foreground, #6b7280);
   }
   
   /* Membership inclusion tags (shared by item cards + add-on section) */
   .mk-membership-tag {
     display: inline-flex;
     align-items: center;
     gap: 0.25rem;
     font-size: 0.62rem;
     font-weight: 600;
     line-height: 1;
     padding: 0.22rem 0.45rem;
     border-radius: 999px;
     white-space: nowrap;
   }
   
   .mk-membership-tag i {
     font-size: 0.72rem;
   }
   
   .mk-membership-tag--included {
     background: rgba(61, 82, 41, 0.1);
     color: var(--mk-green, #3d5229);
   }
   
   .mk-membership-tag--excluded {
     background: rgba(217, 119, 6, 0.12);
     color: #b45309;
   }
   
   .mk-addon-section__members {
     margin-top: 0.25rem;
   }
   
   .mk-addon-section__view-all {
     flex: 0 0 auto;
     display: inline-flex;
     align-items: center;
     gap: 0.15rem;
     font-size: 0.85rem;
     font-weight: 600;
     color: var(--mk-green, #3d5229);
     text-decoration: none;
     white-space: nowrap;
   }
   
   .mk-addon-section__view-all:hover,
   .mk-addon-section__view-all:focus {
     color: #d97706;
   }
   
   .mk-addon-section__track {
     display: flex;
     gap: 0.5rem;
     overflow-x: auto;
     scroll-snap-type: x mandatory;
     -webkit-overflow-scrolling: touch;
     padding-bottom: 0.35rem;
   }
   
   .mk-addon-section__card,
   .mk-addon-section__more {
     flex: 0 0 5.75rem;
     scroll-snap-align: start;
     display: flex;
     flex-direction: column;
     align-items: center;
     text-align: center;
     background: #fff;
     border: 1px solid rgba(61, 82, 41, 0.12);
     border-radius: 0.75rem;
     padding: 0.45rem 0.35rem 0.5rem;
   }
   
   .mk-addon-section__image {
     width: 2.75rem;
     height: 2.75rem;
     object-fit: cover;
     border-radius: 0.6rem;
     margin-bottom: 0.35rem;
   }
   
   .mk-addon-section__name {
     font-size: 0.7rem;
     font-weight: 600;
     color: #1f2937;
     line-height: 1.15;
     display: -webkit-box;
     -webkit-line-clamp: 2;
     -webkit-box-orient: vertical;
     overflow: hidden;
     min-height: 1.6rem;
   }
   
   .mk-addon-section__price {
     font-size: 0.75rem;
     font-weight: 700;
     color: #d97706;
     margin: 0.15rem 0 0.4rem;
   }
   
   .mk-addon-section__add {
     width: 100%;
     border: 1px solid var(--mk-green, #3d5229);
     color: var(--mk-green, #3d5229);
     background: #fff;
     font-weight: 600;
     font-size: 0.7rem;
     border-radius: 9999px;
     padding: 0.2rem 0.35rem;
     min-height: 30px;
   }
   
   .mk-addon-section__add:hover,
   .mk-addon-section__add:focus,
   .mk-addon-section__add.is-success {
     background: var(--mk-green, #3d5229);
     color: #fff;
   }
   
   .mk-addon-section__more {
     justify-content: center;
     gap: 0.4rem;
   }
   
   .mk-addon-section__more-title {
     font-size: 0.7rem;
     font-weight: 700;
     color: #1f2937;
     line-height: 1.15;
   }
   
   .mk-addon-section__more-plus {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 2rem;
     height: 2rem;
     border-radius: 50%;
     background: var(--mk-green, #3d5229);
     color: #fff;
     font-size: 1rem;
     text-decoration: none;
   }
   
   .mk-addon-section__more-plus:hover,
   .mk-addon-section__more-plus:focus {
     background: #2f4020;
     color: #fff;
   }
   
   .mk-addon-section__more-btn {
     width: 100%;
     border: 1px solid var(--mk-green, #3d5229);
     color: var(--mk-green, #3d5229);
     background: #fff;
     font-weight: 600;
     font-size: 0.7rem;
     border-radius: 9999px;
     padding: 0.2rem 0.35rem;
     min-height: 30px;
   }
   
   .mk-addon-section__more-btn:hover,
   .mk-addon-section__more-btn:focus {
     background: var(--mk-green, #3d5229);
     color: #fff;
   }
   
   /* Desktop: grid-style add-on cards (mobile keeps horizontal scroll in mobile.css) */
   @media (min-width: 992px) {
     .mk-addon-section {
       max-width: 100%;
       margin-top: 1.75rem;
       padding: 1.35rem 1.5rem 1.5rem;
     }
   
     .mk-addon-section__header {
       align-items: flex-start;
       margin-bottom: 1.15rem;
       padding-bottom: 1rem;
       border-bottom: 1px solid rgba(61, 82, 41, 0.1);
     }
   
     .mk-addon-section__icon {
       width: 3rem;
       height: 3rem;
       font-size: 1.35rem;
     }
   
     .mk-addon-section__title {
       font-size: 1.125rem;
     }
   
     .mk-addon-section__subtitle {
       font-size: 0.875rem;
       margin-top: 0.15rem;
     }
   
     .mk-addon-section__members {
       margin-top: 0.4rem;
     }
   
     .mk-addon-section__view-all {
       align-self: center;
       font-size: 0.9rem;
     }
   
     .mk-addon-section__track {
       display: flex;
       flex-wrap: wrap;
       gap: 1rem;
       overflow: visible;
       scroll-snap-type: none;
       padding-bottom: 0;
     }
   
     .mk-addon-section__card,
     .mk-addon-section__more {
       flex: 0 0 auto;
       width: 11rem;
       scroll-snap-align: unset;
       padding: 1rem 0.85rem 1.05rem;
       border-radius: 0.95rem;
     }
   
     .mk-addon-section__image {
       width: 4.25rem;
       height: 4.25rem;
       border-radius: 0.75rem;
       margin-bottom: 0.55rem;
     }
   
     .mk-addon-section__name {
       font-size: 0.875rem;
       line-height: 1.25;
       min-height: 2.15rem;
     }
   
     .mk-addon-section__price {
       font-size: 0.95rem;
       margin: 0.2rem 0 0.6rem;
     }
   
     .mk-addon-section__add {
       font-size: 0.8125rem;
       min-height: 36px;
       padding: 0.35rem 0.65rem;
     }
   
     /* One add-on: compact horizontal card instead of a tiny tile */
     .mk-addon-section__track:has(> .mk-addon-section__card:only-child) .mk-addon-section__card {
       display: grid;
       grid-template-columns: auto 1fr auto;
       grid-template-rows: auto auto;
       column-gap: 1rem;
       row-gap: 0.15rem;
       align-items: center;
       width: 100%;
       max-width: 26rem;
       padding: 1rem 1.15rem;
       text-align: left;
     }
   
     .mk-addon-section__track:has(> .mk-addon-section__card:only-child) .mk-addon-section__image {
       grid-row: 1 / span 2;
       width: 4.75rem;
       height: 4.75rem;
       margin-bottom: 0;
     }
   
     .mk-addon-section__track:has(> .mk-addon-section__card:only-child) .mk-addon-section__name {
       grid-column: 2;
       grid-row: 1;
       min-height: 0;
       -webkit-line-clamp: 1;
     }
   
     .mk-addon-section__track:has(> .mk-addon-section__card:only-child) .mk-addon-section__price {
       grid-column: 2;
       grid-row: 2;
       margin: 0;
     }
   
     .mk-addon-section__track:has(> .mk-addon-section__card:only-child) .mk-addon-section__add {
       grid-column: 3;
       grid-row: 1 / span 2;
       width: auto;
       min-width: 6.5rem;
     }
   }
   
   /* View full menu CTA */
   .mk-view-menu-btn {
     transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
   }
   
   /* Mobile dock — hidden on desktop only (shown via mobile.css below 992px) */
   @media (min-width: 992px) {
     .mk-mobile-dock,
     .mk-bottom-nav {
       display: none !important;
     }
   }
   
   /* Animations */
   @keyframes mk-fade-in {
     from {
       opacity: 0;
       transform: translateY(12px);
     }
     to {
       opacity: 1;
       transform: translateY(0);
     }
   }
   
   @keyframes mk-ripple {
     to {
       transform: scale(2.5);
       opacity: 0;
     }
   }
   
   @keyframes mk-heart-pop {
     0% { transform: scale(1); }
     40% { transform: scale(1.35); }
     100% { transform: scale(1); }
   }
   
   .mk-animate-in {
     animation: mk-fade-in 0.45s ease forwards;
   }
   
   .mk-ripple-host {
     position: relative;
     overflow: hidden;
   }
   
   .mk-ripple {
     position: absolute;
     border-radius: 50%;
     background: rgba(255, 255, 255, 0.45);
     transform: scale(0);
     animation: mk-ripple 0.55s ease-out;
     pointer-events: none;
   }
   
   .mk-home-card__wishlist.is-animating i {
     animation: mk-heart-pop 0.35s ease;
   }
   
   .mk-home-card__cart.is-success {
     background-color: #16a34a !important;
   }
   
   /* Desktop: preserve existing layouts */
   @media (min-width: 992px) {
     .mk-explore-more .promo-card {
       display: flex;
       flex-direction: row;
       align-items: center;
       text-decoration: none;
       color: inherit;
     }
   
     .mk-explore-more .promo-card__mobile-icon,
     .mk-explore-more .promo-card__go {
       display: none !important;
     }
   
     .mk-explore-more .promo-card__head-row {
       display: flex;
       align-items: center;
       gap: 0.5rem;
       margin-bottom: 0.5rem;
     }
   
     .mk-explore-more .promo-card__head-icon {
       display: inline-block;
     }
   
     .mk-explore-more .promo-card__title {
       margin-bottom: 0 !important;
     }
   
     .mk-home-header__bar {
       display: contents;
     }
   
     .mk-home-header__icons {
       display: none !important;
     }
   
     .mk-weekly-picker {
       max-width: none;
       margin-bottom: 1.75rem;
     }
   
     #homeWeeklyWeekTabs {
       display: flex !important;
       width: 100%;
     }
   
     .mk-week-select,
     #homeWeeklyWeekSelect {
       max-width: none;
       width: 100%;
       min-height: 48px;
       font-size: 0.9375rem;
       margin-bottom: 1.25rem;
     }
   
     .mk-week-select.is-hidden,
     #homeWeeklyWeekSelect.is-hidden {
       display: none !important;
     }
   
     #homeWeeklyDayScroll,
     .mk-day-scroll {
       display: flex !important;
       justify-content: stretch;
       flex-wrap: nowrap;
       gap: 0.75rem;
       overflow-x: visible;
       scroll-snap-type: none;
       padding: 0.35rem 0 1.5rem;
       width: 100%;
     }
   
     .mk-home-menu-hub #homeWeeklyDayScroll,
     .mk-home-menu-hub .mk-day-scroll {
       padding-bottom: 0.85rem;
     }
   
     .mk-day-scroll__btn {
       flex: 1 1 0;
       min-width: 0;
       max-width: none;
       min-height: 5.25rem;
       padding: 0.65rem 0.5rem;
       border-radius: 1rem;
     }
   
     .mk-home-menu-hub .mk-day-scroll__btn {
       min-height: 3.5rem;
       padding: 0.35rem 0.3rem 0.4rem;
     }
   
     .mk-day-scroll__btn-day {
       font-size: 0.75rem;
     }
   
     .mk-day-scroll__btn-date {
       font-size: 0.875rem;
     }
   
     .mk-day-scroll__badge {
       min-width: 1.25rem;
       height: 1.25rem;
       font-size: 0.6875rem;
       margin-top: 0.35rem;
     }
   
     .mk-home-card__body {
       padding: 0.75rem;
     }
   
     #menuGrid .mk-home-card__footer .mk-home-card__cart.mk-home-card__cart--fab,
     #homeGeneralMenuGrid .mk-home-card__footer .mk-home-card__cart.mk-home-card__cart--fab,
     #homeOffersGrid .mk-home-card__footer .mk-home-card__cart.mk-home-card__cart--fab {
       width: auto;
       height: auto;
       border-radius: 0.375rem;
       position: static;
       box-shadow: none;
     }
   
     #menuGrid .mk-home-card__wishlist,
     #homeGeneralMenuGrid .mk-home-card__wishlist,
     #homeOffersGrid .mk-home-card__wishlist {
       position: static;
       width: auto;
       height: auto;
       border: none;
       background: transparent;
     }
   
     #menuGrid .mk-home-card__footer,
     #homeGeneralMenuGrid .mk-home-card__footer,
     #homeOffersGrid .mk-home-card__footer {
       padding-right: 0;
       min-height: 0;
       align-items: center;
     }
   }
   
   /* Menu empty state */
   .mk-menu-empty {
     display: flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;
     text-align: center;
     padding: 2.5rem 1.25rem 2.75rem;
     margin: 0.5rem auto 1rem;
     max-width: 28rem;
     border-radius: var(--mk-card-radius, 1.25rem);
     background: linear-gradient(165deg, rgba(255, 255, 255, 0.98) 0%, rgba(253, 248, 240, 0.95) 100%);
     border: 1px solid rgba(61, 82, 41, 0.1);
     box-shadow: var(--mk-shadow-soft, 0 4px 24px rgba(10, 46, 0, 0.08));
   }
   
   .mk-menu-empty--plain {
     padding: 1.75rem 1rem;
     background: transparent;
     border: none;
     box-shadow: none;
   }
   
   .mk-menu-empty__visual {
     position: relative;
     width: 4.5rem;
     height: 4.5rem;
     margin-bottom: 1rem;
     display: grid;
     place-items: center;
   }
   
   .mk-menu-empty__ring {
     position: absolute;
     inset: 0;
     border-radius: 50%;
     background: radial-gradient(circle at 30% 30%, rgba(217, 119, 6, 0.18), rgba(61, 82, 41, 0.12));
     animation: mk-menu-empty-pulse 2.4s ease-in-out infinite;
   }
   
   .mk-menu-empty__icon {
     position: relative;
     font-size: 1.85rem;
     color: var(--mk-green, #3d5229);
   }
   
   .mk-menu-empty__title {
     margin: 0 0 0.5rem;
     font-size: 1.2rem;
     font-weight: 700;
     color: #1a2e12;
     letter-spacing: -0.01em;
   }
   
   .mk-menu-empty__copy {
     display: contents;
   }
   
   .mk-menu-empty__text {
     margin: 0;
     font-size: 0.92rem;
     line-height: 1.55;
     color: rgba(26, 46, 18, 0.72);
     max-width: 22rem;
   }
   
   @keyframes mk-menu-empty-pulse {
     0%, 100% { transform: scale(1); opacity: 1; }
     50% { transform: scale(1.06); opacity: 0.88; }
   }
   
   /* Card tap affordance */
   .mk-home-card__media,
   .mk-home-card__body {
     cursor: pointer;
   }
   
   .mk-home-card__footer,
   .mk-home-card__slot,
   .mk-home-card__slot-picker,
   .mk-home-card__slot-msg {
     cursor: default;
   }
   
   /* Product detail popup — full blur; navbar + announcement stay fixed on top */
   body.mk-product-detail-open {
     overflow: hidden;
   }
   
   body.mk-product-detail-open .mk-home-header,
   body.mk-product-detail-open .navbar-mk {
     position: fixed !important;
     top: 0;
     left: 0;
     right: 0;
     width: 100%;
     z-index: 1045;
   }
   
   body.mk-product-detail-open .mk-site-announcement-host:not([hidden]) {
     position: fixed !important;
     top: var(--mk-product-detail-header-h, var(--mk-header-offset, 4.5rem));
     left: 0;
     right: 0;
     width: 100%;
     z-index: 1044;
   }
   
   .mk-product-detail {
     --mk-product-detail-chrome-top: var(--mk-header-offset, 4.5rem);
     --mk-product-detail-chrome-bottom: 0px;
     position: fixed;
     inset: 0;
     z-index: 1020;
     display: flex;
     align-items: center;
     justify-content: center;
     padding:
       calc(var(--mk-product-detail-chrome-top) + 0.5rem)
       0.85rem
       calc(var(--mk-product-detail-chrome-bottom) + 0.85rem);
     pointer-events: none;
     box-sizing: border-box;
   }
   
   .mk-product-detail[hidden] {
     display: none !important;
   }
   
   .mk-product-detail__backdrop {
     position: absolute;
     inset: 0;
     background: rgba(253, 248, 240, 0.2);
     backdrop-filter: blur(14px) saturate(1.05);
     -webkit-backdrop-filter: blur(14px) saturate(1.05);
     pointer-events: auto;
   }
   
   .mk-product-detail__sheet {
     position: relative;
     z-index: 1;
     width: min(100%, 20rem);
     max-height: calc(
       100dvh
       - var(--mk-product-detail-chrome-top)
       - var(--mk-product-detail-chrome-bottom)
       - 1.35rem
     );
     background: #fffdf9;
     display: flex;
     flex-direction: column;
     border-radius: 1.15rem;
     overflow: hidden;
     box-shadow: 0 20px 48px rgba(10, 46, 0, 0.22);
     animation: mk-product-detail-in 0.26s ease;
     pointer-events: auto;
     flex-shrink: 1;
     min-height: 0;
   }
   
   .mk-product-detail__close {
     position: absolute;
     top: 0.75rem;
     right: 0.75rem;
     z-index: 3;
     width: 2.35rem;
     height: 2.35rem;
     border: none;
     border-radius: 50%;
     background: rgba(255, 255, 255, 0.96);
     color: #1a2e12;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     box-shadow: 0 4px 14px rgba(0, 0, 0, 0.14);
   }
   
   .mk-product-detail__scroll {
     overflow-y: auto;
     -webkit-overflow-scrolling: touch;
     flex: 1 1 auto;
     min-height: 0;
   }
   
   .mk-product-detail__media {
     position: relative;
     width: 100%;
     aspect-ratio: 4 / 3;
     flex-shrink: 0;
     background: #f3efe6;
     overflow: hidden;
     border-radius: 1.15rem 1.15rem 0 0;
   }
   
   .mk-product-detail__media-badges {
     position: absolute;
     top: 0.75rem;
     left: 0.75rem;
     z-index: 3;
     display: flex;
     flex-wrap: wrap;
     gap: 0.35rem;
   }
   
   .mk-product-detail__media-badges .badge-veg,
   .mk-product-detail__media-badges .mk-home-card__badge {
     position: static;
     margin: 0;
   }
   
   .mk-product-detail__offer-wrap {
     position: absolute;
     inset: 0;
     z-index: 2;
     pointer-events: none;
     overflow: hidden;
   }
   
   .mk-product-detail__offer-wrap .special-ribbon {
     top: 14px;
     left: -42px;
     width: min(220px, 140%);
     font-size: clamp(0.6rem, 2.5vw, 0.72rem);
     z-index: 2;
   }
   
   .mk-product-detail__offer-wrap .offer-label-badge {
     top: 0.5rem;
     right: 3.25rem;
     left: auto;
     max-width: calc(100% - 4.5rem);
     z-index: 2;
   }
   
   .mk-product-detail__image {
     position: absolute;
     inset: 0;
     width: 100%;
     height: 100%;
     object-fit: cover;
     object-position: center;
     display: block;
   }
   
   .mk-product-detail__body {
     padding: 0.85rem 0.95rem 1rem;
   }
   
   .mk-product-detail__head {
     display: flex;
     align-items: flex-start;
     gap: 0.5rem;
     margin-bottom: 0.35rem;
   }
   
   .mk-product-detail__title {
     flex: 1;
     margin: 0;
     font-size: 1.25rem;
     line-height: 1.2;
     font-weight: 700;
     color: #111827;
     font-family: Georgia, "Times New Roman", serif;
   }
   
   .mk-product-detail__fav {
     flex-shrink: 0;
     width: 2rem;
     height: 2rem;
     margin-top: 0.15rem;
     border: none;
     background: transparent;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     color: #374151;
     font-size: 1.2rem;
     padding: 0;
   }
   
   .mk-product-detail__fav.active {
     color: #dc3545;
   }
   
   .mk-product-detail__desc {
     margin: 0 0 0.65rem;
     color: rgba(55, 65, 81, 0.82);
     line-height: 1.5;
     font-size: 0.9rem;
   }
   
   .mk-product-detail__meta {
     display: grid;
     gap: 0.4rem;
     margin-bottom: 0.65rem;
   }
   
   .mk-product-detail__meta .mk-home-card__delivery {
     margin: 0;
     font-size: 0.88rem;
     color: var(--mk-green, #3d5229);
     font-weight: 500;
   }
   
   .mk-product-detail__meta .mk-membership-tag {
     margin: 0;
   }
   
   .mk-product-detail__slot {
     margin-bottom: 0.65rem;
   }
   
   .mk-product-detail__slot .mk-home-card__slot-picker {
     display: flex;
     flex-wrap: wrap;
     gap: 0.4rem;
   }
   
   .mk-product-detail__slot .mk-home-card__slot-option {
     display: inline-block;
     margin: 0;
     cursor: pointer;
   }
   
   .mk-product-detail__slot .mk-home-card__slot-chip {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     padding: 0.35rem 0.85rem;
     border-radius: 9999px;
     background: #fff;
     color: var(--foreground, #1a2e12);
     font-size: 0.82rem;
     font-weight: 600;
     border: 1px solid var(--border, rgba(10, 46, 0, 0.14));
   }
   
   .mk-product-detail__slot .mk-home-card__slot-option input:checked + .mk-home-card__slot-chip,
   .mk-product-detail__slot .mk-home-card__slot-input:checked + .mk-home-card__slot-chip {
     background: var(--mk-green, #3d5229);
     border-color: var(--mk-green, #3d5229);
     color: #fff;
   }
   
   .mk-product-detail__countdown {
     margin-bottom: 0.65rem;
   }
   
   .mk-product-detail__price-row {
     margin-bottom: 0.85rem;
   }
   
   .mk-product-detail__price-row .text-primary-mk,
   .mk-product-detail__price-row .price-current,
   .mk-product-detail__price-row .price-single {
     font-size: 1.2rem;
     font-weight: 700;
     color: var(--mk-orange, #d97706) !important;
   }
   
   .mk-product-detail__actions {
     display: flex;
     flex-direction: column;
     align-items: stretch;
     gap: 0.75rem;
   }
   
   .mk-product-detail__qty-row {
     display: flex;
     justify-content: center;
   }
   
   .mk-product-detail__qty {
     min-width: 6.5rem;
     height: 2.35rem;
   }
   
   .mk-product-detail__add {
     width: 100%;
     min-height: 2.75rem;
     border-radius: 9999px;
     font-weight: 700;
     font-size: 0.95rem;
     background: var(--mk-orange, #d97706);
     border-color: var(--mk-orange, #d97706);
   }
   
   .mk-product-detail__add:hover:not(:disabled),
   .mk-product-detail__add:focus-visible:not(:disabled) {
     background: #c56d05;
     border-color: #c56d05;
   }
   
   @keyframes mk-product-detail-in {
     from {
       opacity: 0;
       transform: translateY(10px) scale(0.98);
     }
     to {
       opacity: 1;
       transform: translateY(0) scale(1);
     }
   }
   
   @media (min-width: 768px) {
     .mk-product-detail {
       padding: 1rem;
     }
   
     .mk-product-detail__sheet {
       width: min(100%, 22rem);
     }
   
     .mk-product-detail__media {
       border-radius: 1.15rem 1.15rem 0 0;
     }
   }
   