@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800;900&display=swap');

body {
    margin: 0;
    padding: 0;
    font-family: 'Poppins', Arial, sans-serif;
}  
  .iconbar{
      width: 30px;
      height: 4px;
      background-color: black;
      margin: 5px 0;

    }

    .icon-sidebar{
      width: 23px;
      height: 20px;
      margin-right: 16px;
    }

    .nav-link{
      /*margin: 0px 30px 5px 10px;*/
    }

    /*.capsule-input {
    
    border-radius: 50px;     
    padding: 12px 20px;
    border: 1px solid #ccc;
    outline: none;
    background-color: #e9e9e9;
    width: 98%;
    height: 35px;
    box-sizing: border-box;
  }*/

  /*1331*/
  @media (min-width: 1331px){
    .capsule-input 
    {
      /*margin-right: 24.5rem!important;*/
      margin-right: 10.5rem!important;
      border-radius: 50px;     
      padding: 12px 20px;
      border: 1px solid #ccc;
      outline: none;
      background-color: #e9e9e9;
      width: 98%;
      height: 35px;
      box-sizing: border-box;

    }
  }

  @media (max-width: 1331px){
      .capsule-input {
      margin-right: 10.5rem!important;

      border-radius: 50px;     
      padding: 12px 20px;
      border: 1px solid #ccc;
      outline: none;
      background-color: #e9e9e9;
      width: 98%;
      height: 35px;
      box-sizing: border-box;

    }
  }

  @media (max-width: 1200px){
      .capsule-input {
      margin-right: 0.5rem!important;

      border-radius: 50px;     
      padding: 12px 20px;
      border: 1px solid #ccc;
      outline: none;
      background-color: #e9e9e9;
      width: 98%;
      height: 35px;
      box-sizing: border-box;

    }
  }

  @media (max-width: 1060px){
      .capsule-input {
      margin-right: 0.5rem!important;

      border-radius: 50px;     
      padding: 12px 20px;
      border: 1px solid #ccc;
      outline: none;
      background-color: #e9e9e9;
      width: 98%;
      height: 35px;
      box-sizing: border-box;

    }
    .register-btn 
    {
      width: auto;
      font-size: 12px;
      
    }
  }
  
  @media (max-width: 1000px){
      .capsule-input {
      margin-right: 3.5rem!important;

      border-radius: 50px;     
      padding: 12px 20px;
      border: 1px solid #ccc;
      outline: none;
      background-color: #e9e9e9;
      width: 98%;
      height: 35px;
      box-sizing: border-box;

    }
    .register-btn 
    {
      width: auto;
      font-size: 12px;
      
    }
  }

  @media (max-width: 992px){
      .capsule-input {
      margin-right: 3.5rem!important;

      border-radius: 50px;     
      padding: 12px 20px;
      border: 1px solid #ccc;
      outline: none;
      background-color: #e9e9e9;
      width: 98%;
      height: 35px;
      box-sizing: border-box;

    }
  }

  .capsule-input:focus {
    border-color: #007bff;
    box-shadow: 0 0 5px rgba(0,123,255,0.5);
  }

  .delivery-toggle {
      display: inline-flex;
      background: #f2f2f2;
      border-radius: 999px;
      padding: 4px;
    }

    .tab {
      float: left;
      width: 100%;
      position: sticky;
      top: 76px;
      /*z-index: 1020;*/
      background: white;
      /*max-height: calc(100vh - 76px);*/
      overflow-y: auto;
      /*scrollbar-width: thin;*/
    }

    .tab button {
      display: block;
      background-color: inherit;
      color: black;
      padding: 12px 16px;
      width: 100%;
      border: none;
      outline: none;
      text-align: left;
      cursor: pointer;
      transition: 0.3s;
      font-size: 14px;
    }
    .tab button:hover {
      /*background-color: #2159AF;*/
    }
    .tab button.active {
      background-color: #2159AF;
      color: white;
    }

    .tabcontent {
      float: left;
      padding: 0px 12px;
      width: 100%;
      border-left: none;
    }
    
    .filter-pill {
      background: #f3f3f3;
      border: none;
      border-radius: 999px;
      padding: 8px 16px;
      font-weight: 500;
      cursor: pointer;
      white-space: nowrap;
    }

    .filter-pill:hover {
      background: #e9e9e9;
    }

    /* Fixed Filter Bar */
    .filter-bar-fixed {
      position: sticky;
      /*top: 56px;*/
      z-index: 1015;
      /*background-color: #2159AF;*/
      width: 100%;
      /*box-shadow: 0 2px 10px rgba(0,0,0,0.1);*/
      /*margin-bottom: 15px;*/
    }

    /*rating filler dropdowns*/
    .rating-dropdown {
      position: absolute;
      top: 48px;
      width: 340px;
      background: #fff;
      border-radius: 16px;
      padding: 20px;
      box-shadow: 0 10px 30px rgba(0,0,0,0.15);
      z-index: 1000;
    }

    .home-icon-badge {
      height: 16px;
      margin-right: 10px;
    }

    .icon-slider-wrapper {
      overflow: hidden;
    }

    .icon-slider {
      display: flex;
      gap: 28px;
      scroll-behavior: smooth;
    }

    .home-icons{
      width: 70px;
      height: 50px;
      margin-right: 16px;
    }

    .icon-item {
      flex-shrink: 0;
      text-align: center;
      cursor: pointer;
    }

    .icon-item img {
      width: 56px;
      height: 56px;
      object-fit: contain;
      margin-bottom: 6px;
    }

    .icon-item span {
      font-size: 14px;
      font-weight: 500;
      color: #000;
    }

    /* Right arrow */
    .icon-arrow {
      position: absolute;
      top: 22px;
      right: -10px;
      width: 36px;
      height: 36px;
      border-radius: 50%;
      border: none;
      background: #f2f2f2;
      font-size: 18px;
      cursor: pointer;
      box-shadow: 0 2px 6px rgba(0,0,0,0.15);
    }

    .icon-arrow:hover {
      background: #e5e5e5;
    }

    .promo-img {
      /*width: 160px;*/
      border-radius: 14px;
    }

    /* Arrow buttons */
    .slider-arrow {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      background: white;
      border: none;
      width: 40px;
      height: 40px;
      border-radius: 50%;
      font-size: 22px;
      box-shadow: 0 4px 10px rgba(0,0,0,0.15);
      cursor: pointer;
      z-index: 10;
    }

    .slider-arrow.left {
      left: -20px;
    }

    .slider-arrow.right {
      right: -20px;
    }

    /* Mobile scroll improvements */
    @media(max-width:768px){
      .category-scroll{
        padding:10px 20px;
        gap:20px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
      }

      .scroll-btn{
        display:none;
      }
      
      .promo-slider {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
      }
      
      .promo-card {
        scroll-snap-align: start;
      }
      
      .slider-arrow {
        display: none;
      }
      
      .row.g-4 {
        overflow-x: auto;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 15px;
      }
      
      .row.g-4 > [class*="col-"] {
        flex: 0 0 80%;
        max-width: 80%;
      }
      
      .row.text-center {
        overflow-x: auto;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 15px;
      }
      
      .row.text-center > [class*="col-"] {
        flex: 0 0 50%;
        max-width: 50%;
      }
      
      .filter-bar-fixed .d-flex {
        overflow-x: auto;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 5px;
      }
      
      .filter-bar-fixed .filter-pill {
        flex-shrink: 0;
      }
    }


/*NEW APPROACH CSS*/

.row-promo-mg{
  margin-bottom: -4%;
}
.row-category-mg{
  margin-bottom: -5%;
}

.home-cat-icons-mg{
  margin-bottom: -3%;
  margin-left: -2%;
  /*margin-top: -2%;*/
  margin-top: -1%;
}

.card-img-top{
    /*height:180px;*/
    object-fit:cover;
    border-radius:15px;
}
.card-img-top_dummy{
    /*height:250px;*/
    width: 100%;
    object-fit:cover;
    border-radius:15px;
}

        .offer-badge{
            position:absolute;
            top:10px;
            left:10px;
            background:red;
            color:#fff;
            padding:5px 10px;
            font-size:13px;
            border-radius:6px;
        }

        .heart{
            cursor:pointer;
            font-size: 1.5rem;
            /*color:#aaa;*/
            transition: color 0.3s ease;
        }

        .heart.active{
            color:red;
        }
        .heart:hover {
            color: red;
        }
        .heart-filled {
            color: red;
        }

        .carousel-control-prev,
        .carousel-control-next{
            width:40px;
            height:40px;
            background:#e9e9e9;
            border-radius:50%;
            top:-60px;
        }

        .carousel-control-prev-icon,
        .carousel-control-next-icon{
            filter: invert(1);
        }

        .carousel-control-prev{
            right:60px;
            left:auto;
        }

        .carousel-control-next{
            right:10px;
        }

        .carousel-control-prev.disabled,
        .carousel-control-next.disabled{
            opacity:0.3;
            pointer-events:none;
        }


      .store-img{
          /*width:140px;
          height:140px;*/
          width:190px;
          height:190px;
          object-fit:cover;
          border-radius:50%;
          border:4px solid #f1f1f1;
          transition:0.3s;
      }

      .store-img:hover{
          /*transform:scale(1.05);*/
          transform:scale(1.01);
      }

      @media (max-width:576px){
          .store-img{
              /*width:100px;*/
              /*height:100px;*/
          }
      }



      .category-section{
          /*background:#f3f3f3;*/
      }

      .category-scroll{
          overflow-x:auto;
          scroll-behavior:smooth;
          /*gap:30px;*/
          /*padding:10px 60px;*/
      }

      .category-scroll::-webkit-scrollbar{
          display:none;
      }

      .category-item{
          /*min-width:90px;*/
          min-width:75px;
          text-align:center;
          cursor:pointer;
          flex-shrink:0;
          margin-top: 5px;
      }

      .category-item img{
          width:60px;
          height:60px;
          object-fit:contain;
      }

      .category-item p{
          margin-top:8px;
          font-size:14px;
          font-weight:500;
      }

      .scroll-btn{
          position:absolute;
          top:50%;
          transform:translateY(-50%);
          width:40px;
          height:40px;
          border-radius:50%;
          border:none;
          background:white;
          box-shadow:0 2px 8px rgba(0,0,0,0.2);
          z-index:10;
      }

      .left-btn{
          left:10px;
      }

      .right-btn{
          right:10px;
      }

      .see-all-mg{
        /*margin-right: 120px;*/
      }

      @media (max-width:768px){
          .see-all-mg{
            margin-right: 15px;
          }

          .carousel-control-prev{
            display: none;
          }
          .carousel-control-next{
            display: none;
          }
      }

      .py-5-custom{
        padding-top: 48px;
        padding-bottom: 48px;
      }

      @media(max-width:768px){
          .category-scroll{
              padding:0px 0px;
              gap:0px;
          }

          .scroll-btn{
              display:none;
          }

          .home-icons-mg{
            margin: 7px 0px 7px 0px;
          }

          .py-5-custom{
            padding-top: 0px;
            padding-bottom: 0px;
          }
          
      }
      
      /* Tablets including iPad Mini (768px to 1024px) */
        @media (min-width: 768px) and (max-width: 1024px) {
            .home-cat-icons-mg {
                margin-left: -3% !important;
            }
        }

        /* Mobile devices below tablet size */
        @media (max-width: 767px) {
            .home-cat-icons-mg {
                margin-bottom: -3%;
                margin-left: -10%;
                margin-top: -1%;
            }
        }

      @media(max-width:768px){
          .category-scroll{
              padding:0px 0px;
              gap:0px;
          }

          .scroll-btn{
              display:none;
          }

          .home-icons-mg{
            margin: 7px 0px 7px 0px;
          }
      }

/*END NEW APPROACH CSS*/

    /* Slider wrapper */
    .promo-slider {
      display: flex;
      gap: 16px;
      overflow-x: hidden;
      scroll-behavior: smooth;
    }

    /* Cards */
    .promo-card {
      /*min-width: 350px;*/
      height: 150px;
      border-radius: 20px;
      /*padding: 24px;*/
      display: flex;
      /*justify-content: space-between;
      align-items: center;*/
      flex-shrink: 0;
    }

    /* Sidebar menu (from top nav) */
    .sidenav-menu {
      height: 100%;
      width: 0;
      position: fixed;
      z-index: 2000;
      top: 0;
      left: 0;
      background-color: white;
      overflow-x: hidden;
      transition: 0.4s;
      padding-top: 2%;
      box-shadow: 2px 0 5px rgba(0,0,0,0.1);
    }

    .sidenav-menu a {
      padding: 6px 15px;
      text-decoration: none;
      font-size: 16px;
      color: black;
      display: block;
      transition: 0.2s;
      /*border-bottom: 1px solid #eee;*/
    }

    .sidenav-menu a:hover {
      /*background-color: #f1f1f1;*/
    }

    .sidenav-menu .closebtn {
      position: absolute;
      top: 10px;
      right: 25px;
      font-size: 36px;
      color: #333;
      border: none;
      background: none;
    }

    /* Overlay when sidebar menu is open */
    .overlay {
      display: none;
      position: fixed;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      background-color: rgba(0,0,0,0.5);
      z-index: 1999;
      transition: 0.3s;
    }

    .sidebar-btns{
      width: 100%;
      height: 55px;
    }

    .toggle-btn {
      border: none;
      background: transparent;
      padding: 3px 10px;
      border-radius: 999px;
      font-weight: 500;
      cursor: pointer;
    }

    .toggle-btn.active {
      background: #2159AF;
      color: #fff;
    }

    /* Hide side tabs on small screens */
    @media (max-width: 992px) {
      .tab {
        display: none;
      }
      .col-md-10 {
        width: 100%;
      }

      /* Make filter bar responsive on mobile */
      .filter-bar-fixed .container {
        padding-left: 5px;
        padding-right: 5px;
      }
    }

    /* Main layout adjustment for sticky sidebar */
    .main-content {
      min-height: 100vh;
    }
    
    /* Ensure proper spacing for fixed elements */
    body {
      padding-top: 0;
      overflow-x: hidden;
    }
    
    /*.sticky-top {
      z-index: 1025;
    }*/


    .theme-clr-bg{
      background-color: #2159AF;
    }

    .no-marker {
    list-style-type: none;
  }

  .cart-icon-mg{
    margin-right: auto;
  }

@media (min-width: 1400px){
    .logo_width{
      width: 40%;
    }
  }

  @media (max-width: 1400px){
    .logo_width{
      width: 40%;
    }
  }

  @media (max-width: 992px){
    .logo_width{
      width: 40%;
    }
  }

  @media (max-width: 850px){
    .logo_width{
      width: 50%;
    }
  }
  @media (max-width: 500px){
    .logo_width{
      width: 60%;
    }
  }

  @media (max-width: 320px){
    .logo_width{
      width: 75%;

    }
    .signup-btn{
      width: max-content;
    }
  }

  



  .modal-address-field{
    width: 100%; 
    padding: 16px 16px 16px 48px; 
    border: 1.5px solid #e8e8e8; 
    border-radius: 16px; 
    /*font-family: Arial, Poppins;*/
    font-size: 16px;
    font-weight: 400;
    color: #1a1a1a;
    outline: none;
    transition: all 0.2s ease;
    background-color: #ffffff;
    box-sizing: border-box;
  }


  /* Modal suggestions dropdown */
.modal-suggestions {
    position: relative;
    /*top: calc(100% + 8px);*/
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #e8e8e8;
    border-radius: 16px;
    max-height: 280px;
    overflow-y: auto;
    z-index: 1060;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    margin-top: 0;
}

/* Blue focus line on input click */
.delivery-address-input:focus {
    border-color: #2159AF;
    /*box-shadow: 0 0 0 3px rgba(4, 201, 255, 0.1);*/
}

/* Clear button hover */
.delivery-clear-btn:hover {
    background-color: #f0f9ff;
    color: #03b0df !important;
}

/* Suggestion items */
.modal-suggestion-item {
    padding: 14px 16px;
    cursor: pointer;
    border-bottom: 1px solid #f0f0f0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: background-color 0.15s ease;
}

.modal-suggestion-item:last-child {
    border-bottom: none;
}

.modal-suggestion-item:hover {
    background-color: #fafafa;
}

.modal-suggestion-address {
    /*font-family: Arial, Poppins;*/
    font-size: 14px;
    font-weight: 500;
    color: #1a1a1a;
    line-height: 1.4;
}

.modal-suggestion-detail {
    /*font-family: Arial, Poppins;*/
    font-size: 12px;
    color: #888;
    margin-top: 4px;
}

.modal-suggestion-clear {
    /*font-family: Arial, Poppins;*/
    font-size: 13px;
    color: #2159AF;
    cursor: pointer;
    padding: 6px 12px;
    border-radius: 8px;
    transition: all 0.2s ease;
    font-weight: 500;
}

.modal-suggestion-clear:hover {
    color: #2159AF;
    background-color: #f5f5f5;
}

.modal-suggestion-item strong {
    color: #2159AF;
    font-weight: 600;
}

/* Scrollbar styling */
.modal-suggestions::-webkit-scrollbar {
    width: 6px;
}

.modal-suggestions::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.modal-suggestions::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
}
.modal-suggestions::-webkit-scrollbar-thumb:hover {
    background: #aaa;
}

/* Delivery search wrapper - important for positioning */
.delivery-search-wrapper {
    position: relative;
    width: 100%;
}

/* Search input styling */
.delivery-address-input {
    width: 100%;
    padding: 16px 16px 16px 48px;
    border: 1.5px solid #e8e8e8;
    border-radius: 16px;
    /*font-family: Arial, Poppins;*/
    font-size: 16px;
    font-weight: 400;
    color: #1a1a1a;
    outline: none;
    transition: all 0.2s ease;
    background-color: #ffffff;
    box-sizing: border-box;
}

.delivery-address-input:focus {
    border-color: #2159AF;
    box-shadow: 0 0 0 3px rgba(4, 201, 255, 0.1);
}

/* Clear button inside search field */
.delivery-clear-btn {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    /*font-family: Arial, Poppins;*/
    font-size: 14px;
    color: #2159AF;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 8px;
    display: none;
    font-weight: 500;
}

.delivery-clear-btn:hover {
    background-color: #f0f9ff;
    color: #03b0df;
}

/* Search icon */
.search-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}

/* Mobile responsive */
@media (max-width: 576px) {
    .modal-suggestions {
        max-height: 200px;
    }
    
    .modal-suggestion-item {
        padding: 12px 14px;
    }
    
    .modal-suggestion-address {
        font-size: 13px;
    }
    
    .modal-suggestion-detail {
        font-size: 11px;
    }
    
    .delivery-address-input {
        padding: 14px 14px 14px 44px;
        font-size: 15px;
    }
    
    .search-icon {
        width: 18px;
        height: 18px;
        left: 14px;
    }
}

/* Clear button as text inside search field - matching suggestion box style */
.search-input-clear {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    font-size: 12px;
    color: #999;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    display: none;
    z-index: 10;
    font-weight: normal;
    font-family: inherit;
}
.search-input-clear:hover {
    color: #2159AF;
    background-color: #f5f5f5;
}

/* Show clear button when input has text */
.search-input-wrapper.has-value .search-input-clear {
    display: block;
}

/* Mobile responsive */
@media (max-width: 576px) {
    .modal-dialog {
        margin: 16px;
    }
    
    .modal-body {
        padding: 20px 16px 24px 16px !important;
    }
    
    h2 {
        font-size: 24px !important;
    }
    
    .modal-suggestions {
        max-height: 200px;
    }
    
    .delivery-address-input {
        padding: 14px 14px 14px 44px !important;
        font-size: 15px !important;
    }
    
    .search-icon {
        width: 18px;
        height: 18px;
        left: 14px !important;
    }
}

/* Change button hover */
#openAddressModalBtn:hover {
    background-color: #03b0df !important;
}

/* Back button styling */
#backToModal1Btn {
    cursor: pointer;
}

/* =========================================================
   FoodieGo navbar alignment refresh - Uber Eats style
   Scope: navbar styling only. Cart JS/PHP functionality is untouched.
   ========================================================= */
.foodiego-navbar.navbar{
  min-height: 72px;
  padding: 0 !important;
  font-family: 'Poppins', Arial, sans-serif;
  background: #fff !important;
  border-bottom: 1px solid #eeeeee;
  box-shadow: none;
  z-index: 1030;
}

.foodiego-navbar,
.foodiego-navbar button,
.foodiego-navbar input{
  font-family: 'Poppins', Arial, sans-serif !important;
}

.foodiego-navbar-container{
  min-height: 72px;
  padding: 0 28px !important;
  display: flex;
  align-items: center;
}

.foodiego-desktop-navbar{
  width: 100%;
  min-width: 0;
  align-items: center !important;
  justify-content: space-between;
  gap: 22px;
}

.foodiego-navbar-left{
  flex: 1 1 auto;
  min-width: 0;
  margin-right: 0 !important;
  display: flex;
  align-items: center !important;
  gap: 20px;
  flex-wrap: nowrap;
}

.foodiego-menu-trigger{
  flex: 0 0 auto;
  display: inline-block !important;
  cursor: pointer;
}

.foodiego-menu-trigger:hover{
  background: transparent;
}

/* Keep the hamburger bars exactly like the original navbarG.php/mainStyle.css. */
.foodiego-navbar .iconbar{
  width: 30px;
  height: 4px;
  background-color: black;
  margin: 5px 0;
  border-radius: 0;
}

.foodiego-logo-item{
  margin-left: 4px !important;
  flex: 0 0 auto;
}

.foodiego-logo-link.nav-link{
  padding: 0 !important;
  display: inline-flex;
  align-items: center;
}

.foodiego-logo{
  height: 39px !important;
  width: auto;
  display: block;
  object-fit: contain;
}

.foodiego-address-item{
  width: auto !important;
  flex: 0 1 185px;
  min-width: 116px;
  max-width: 210px;
}

.foodiego-address-link.nav-link{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  padding: 0 !important;
  color: #111 !important;
  font-size: 16px;
  line-height: 20px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer;
}

.foodiego-address-link b{
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 600;
}

.foodiego-search-item{
  flex: 1 1 520px;
  min-width: 260px;
  max-width: 620px;
}

.foodiego-navbar .capsule-input{
  width: 100% !important;
  height: 46px !important;
  margin: 0 !important;
  padding: 0 20px !important;
  border: 0 !important;
  border-radius: 999px !important;
  outline: none !important;
  box-sizing: border-box;
  background: #f3f3f3 !important;
  color: #111;
  font-size: 15px;
  font-weight: 400;
  box-shadow: none !important;
}

.foodiego-navbar .capsule-input::placeholder{
  color: #555;
}

.foodiego-navbar .capsule-input:focus{
  background: #eeeeee !important;
  box-shadow: inset 0 0 0 2px #2159AF !important;
}

.foodiego-toggle-item{
  flex: 0 0 auto;
}

.foodiego-navbar .delivery-toggle{
  height: 44px;
  margin-left: 0 !important;
  padding: 3px;
  display: inline-flex;
  align-items: center;
  gap: 2px;
  background: #f3f3f3;
  border-radius: 999px;
  white-space: nowrap;
}

.foodiego-navbar .toggle-btn{
  height: 38px;
  min-width: 78px;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #111;
  font-size: 15px;
  font-weight: 600;
  line-height: 38px;
}

.foodiego-navbar .toggle-btn.active{
  background: #2159AF;
  color: #fff;
}

.foodiego-cart-wrap{
  margin: 0 !important;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
}

.foodiego-cart-wrap .nav-item{
  margin-left: 0 !important;
}

.foodiego-cart-wrap #cartToggleBtn{
  width: 42px;
  height: 42px;
  padding: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #111;
}

.foodiego-cart-wrap #cartToggleBtn:hover{
  background: #f3f3f3;
}

.foodiego-cart-wrap #cartToggleBtn img{
  width: 22px !important;
  height: 22px;
  object-fit: contain;
}

.foodiego-navbar .cart-badge{
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #2159AF;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  line-height: 18px;
  top: 0 !important;
  left: 75% !important;
  right: auto !important;
  transform: translate(-50%, -36%) !important;
}

.foodiego-partner-wrap{
  margin-top: 0 !important;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
}

.foodiego-partner-wrap a,
.foodiego-mobile-partner a{
  margin-right: 0 !important;
  text-decoration: none;
}

.foodiego-navbar .btn-dark-custom,
.foodiego-navbar .top-btns{
  min-height: 42px;
  padding: 0 22px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0 !important;
  background: #2159AF !important;
  color: #fff !important;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  box-shadow: none !important;
}

.foodiego-navbar .btn-dark-custom:hover,
.foodiego-navbar .top-btns:hover{
  background: #184b98 !important;
  background: #FFBB32 !important;
}

/* Desktop squeeze: keep all items on one line without hard-coded input margins. */
@media (max-width: 1240px) and (min-width: 992px){
  .foodiego-navbar-container{ padding: 0 18px !important; }
  .foodiego-desktop-navbar{ gap: 14px; }
  .foodiego-navbar-left{ gap: 14px; }
  .foodiego-logo{ height: 35px !important; }
  .foodiego-address-item{ flex-basis: 145px; max-width: 160px; }
  .foodiego-search-item{ min-width: 220px; flex-basis: 420px; }
  .foodiego-navbar .toggle-btn{ min-width: 68px; padding: 0 13px; }
  .foodiego-navbar .top-btns{ padding: 0 16px !important; font-size: 13px; }
}

@media (max-width: 1080px) and (min-width: 992px){
  .foodiego-navbar-left{ gap: 10px; }
  .foodiego-address-item{ flex-basis: 118px; max-width: 132px; }
  .foodiego-search-item{ min-width: 190px; }
  .foodiego-navbar .capsule-input{ height: 42px !important; font-size: 14px; }
  .foodiego-navbar .delivery-toggle{ height: 40px; }
  .foodiego-navbar .toggle-btn{ height: 34px; min-width: 62px; padding: 0 10px; font-size: 12px; line-height: 34px; }
  .foodiego-navbar .top-btns{ min-height: 40px; padding: 0 13px !important; font-size: 12px; }
}

/* Mobile navbar: stacked, aligned, and no horizontal overflow. */
.foodiego-mobile-navbar{
  padding: 12px 0 14px;
}

.foodiego-mobile-row{
  gap: 12px;
}

.foodiego-mobile-top{
  min-height: 44px;
}

.foodiego-logo-mobile{
  height: 44px !important;
  max-width: 174px;
}

.foodiego-mobile-auth .rounded-circle{
  width: 38px !important;
  height: 38px !important;
  flex: 0 0 38px;
  border: 0 !important;
  background: #f3f3f3 !important;
}

.foodiego-mobile-auth a{
  text-decoration: none;
}

.foodiego-mobile-auth .btn{
  height: 38px;
  padding: 0 16px !important;
  font-size: 14px;
  font-weight: 600;
}

.foodiego-mobile-address-row{
  min-height: 42px;
}

.foodiego-mobile-address{
  max-width: 58vw;
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  line-height: 18px;
  color: #111;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer;
}

.foodiego-mobile-delivery-btn{
  height: 38px;
  padding: 0 16px !important;
  background: #f3f3f3 !important;
  border: 0 !important;
  color: #111 !important;
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
}

.foodiego-mobile-partner{
  margin-top: 10px !important;
  text-align: left !important;
}

.foodiego-mobile-partner > .mt-2{
  margin-top: 0 !important;
}

.foodiego-mobile-partner .top-btns{
  width: 100%;
  min-height: 42px;
  padding: 0 18px !important;
  font-size: 14px;
}

.foodiego-mobile-search{
  margin-top: 12px !important;
}

.foodiego-mobile-search-group{
  height: 48px;
  flex-wrap: nowrap;
  border-radius: 999px;
  overflow: hidden;
  background: #f3f3f3;
}

.foodiego-mobile-search-group .input-group-text,
.foodiego-mobile-search-group .form-control{
  height: 48px;
  border: 0 !important;
  background: #f3f3f3 !important;
  box-shadow: none !important;
}

.foodiego-mobile-search-group .input-group-text{
  padding-left: 18px;
  padding-right: 8px;
  color: #111;
}

.foodiego-mobile-search-group .form-control{
  padding-left: 6px;
  padding-right: 18px;
  font-size: 15px;
}

.foodiego-mobile-search-group .form-control:focus{
  background: #eeeeee !important;
}

@media (max-width: 576px){
  .foodiego-navbar-container{
    padding: 0 16px !important;
    min-height: auto;
  }
  .foodiego-logo-mobile{
    height: 40px !important;
    max-width: 150px;
  }
  .foodiego-mobile-brand{
    gap: 10px !important;
    min-width: 0;
  }
  .foodiego-mobile-auth{
    gap: 8px !important;
    flex-shrink: 0;
  }
  .foodiego-mobile-auth .btn{
    height: 36px;
    padding: 0 13px !important;
    font-size: 13px;
  }
  .foodiego-mobile-address{
    max-width: 52vw;
    font-size: 13px;
  }
  .foodiego-mobile-delivery-btn{
    height: 36px;
    padding: 0 13px !important;
    font-size: 13px;
  }
}

@media (max-width: 360px){
  .foodiego-navbar-container{ padding: 0 12px !important; }
  .foodiego-logo-mobile{ max-width: 126px; height: 36px !important; }
  .foodiego-mobile-auth .rounded-circle{ display: none !important; }
  .foodiego-mobile-address{ max-width: 48vw; }
  .foodiego-mobile-partner .top-btns{ font-size: 12px; }
}

/* Final mobile partner button adjustment: keep natural width and right align. */
.foodiego-mobile-partner{
  text-align: right !important;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
}

.foodiego-mobile-partner > .mt-2{
  width: auto !important;
  display: inline-flex;
  justify-content: flex-end;
}

.foodiego-mobile-partner a{
  width: auto !important;
  display: inline-flex;
  justify-content: flex-end;
}

.foodiego-mobile-partner .top-btns{
  width: auto !important;
  max-width: 100%;
  display: inline-flex;
  padding-left: 18px !important;
  padding-right: 18px !important;
}

@media (max-width: 360px){
  .foodiego-mobile-partner .top-btns{
    width: auto !important;
    max-width: 100%;
    font-size: 12px;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

/* =========================================================
   Large-screen navbar spacing refinement
   Goal: remove the empty visual gap between Delivery/Pickup and cart
   by allowing the search bar to absorb the available desktop space.
   ========================================================= */
@media (min-width: 1241px){
  .foodiego-desktop-navbar{
    gap: 12px;
  }

  .foodiego-navbar-left{
    gap: 16px;
  }

  .foodiego-search-item{
    flex: 1 1 auto;
    min-width: 360px;
    max-width: none;
  }

  .foodiego-toggle-item{
    margin-right: 0 !important;
  }

  .foodiego-cart-wrap{
    margin-left: 0 !important;
  }
}

@media (min-width: 1440px){
  .foodiego-search-item{
    min-width: 460px;
  }
}

@media (min-width: 1600px){
  .foodiego-navbar-container{
    padding-left: 30px !important;
    padding-right: 30px !important;
  }

  .foodiego-search-item{
    min-width: 560px;
  }
}

/* =========================================================
   Mobile Dining Options bottom sheet
   Uber Eats style interaction for Delivery / Pickup.
   ========================================================= */
.foodiego-mobile-delivery-btn{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
}

.dining-options-overlay{
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 10980;
  opacity: 0;
  transition: opacity 0.22s ease;
}

.dining-options-overlay.show{
  display: block;
  opacity: 1;
}

.dining-options-sheet{
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10990;
  width: 100%;
  max-height: 86vh;
  background: #ffffff;
  border-radius: 18px 18px 0 0;
  box-shadow: 0 -10px 30px rgba(0, 0, 0, 0.18);
  transform: translateY(110%);
  transition: transform 0.26s ease;
  font-family: 'Poppins', Arial, sans-serif;
  overflow: hidden;
}

.dining-options-sheet.open{
  transform: translateY(0);
}

.dining-options-handle{
  width: 42px;
  height: 4px;
  border-radius: 999px;
  background: #d9d9d9;
  margin: 10px auto 0;
}

.dining-options-header{
  padding: 10px 18px 18px;
  text-align: center;
  border-bottom: 1px solid #eeeeee;
}

.dining-options-header h3{
  margin: 0;
  color: #111111;
  font-size: 18px;
  font-weight: 600;
  line-height: 24px;
}

.dining-options-list{
  display: flex;
  flex-direction: column;
}

.dining-option-row{
  width: 100%;
  min-height: 68px;
  padding: 0 18px;
  display: flex;
  align-items: center;
  gap: 16px;
  background: #ffffff;
  border: 0;
  border-bottom: 1px solid #eeeeee;
  color: #111111;
  text-align: left;
  cursor: pointer;
  font-family: 'Poppins', Arial, sans-serif;
}

.dining-option-row:hover,
.dining-option-row:focus{
  background: #f7f7f7;
  outline: none;
}

.dining-option-icon{
  width: 26px;
  min-width: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #111111;
  font-size: 21px;
  line-height: 1;
}

.dining-option-label{
  flex: 1 1 auto;
  color: #111111;
  font-size: 16px;
  font-weight: 600;
  line-height: 22px;
}

.dining-option-check{
  width: 24px;
  min-width: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #0a8f39;
  font-size: 22px;
  line-height: 1;
  opacity: 0;
}

.dining-option-row.active .dining-option-check{
  opacity: 1;
}

.dining-options-actions{
  padding: 14px 14px 18px;
  background: #ffffff;
}

.dining-confirm-btn{
  width: 100%;
  min-height: 52px;
  border: 0;
  border-radius: 6px;
  background: #000000;
  color: #ffffff;
  font-family: 'Poppins', Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}

.dining-confirm-btn:hover,
.dining-confirm-btn:focus{
  background: #1f1f1f;
  outline: none;
}

@media (min-width: 768px){
  .dining-options-sheet{
    left: 50%;
    right: auto;
    width: 420px;
    max-width: calc(100vw - 32px);
    transform: translate(-50%, 110%);
    border-radius: 18px 18px 0 0;
  }

  .dining-options-sheet.open{
    transform: translate(-50%, 0);
  }
}

@media (max-width: 360px){
  .dining-options-header h3{
    font-size: 17px;
  }

  .dining-option-row{
    min-height: 64px;
    padding-left: 15px;
    padding-right: 15px;
  }

  .dining-confirm-btn{
    min-height: 50px;
    font-size: 15px;
  }
}


/* =========================================================
   Search field category panel - Uber Eats style
   Opens when the navbar search field is clicked.
   ========================================================= */
.foodiego-search-trigger,
.foodiego-navbar-search-input{
  cursor: pointer;
}

body.foodiego-search-open{
  overflow: hidden;
}

.foodiego-search-panel{
  display: none;
  position: fixed;
  inset: 0;
  z-index: 10970;
  background: rgba(0, 0, 0, 0.08);
  font-family: 'Poppins', Arial, sans-serif;
}

.foodiego-search-panel.open{
  display: block;
}

.foodiego-search-panel-inner{
  width: 100%;
  height: 100%;
  background: #ffffff;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.foodiego-search-panel-top{
  padding: 20px 18px 12px;
  background: #ffffff;
}

.foodiego-search-modal-input-wrap{
  position: relative;
  width: 100%;
  height: 46px;
  display: flex;
  align-items: center;
  background: #f3f3f3;
  border-radius: 999px;
  overflow: hidden;
}

.foodiego-search-modal-icon{
  position: absolute;
  left: 22px;
  top: 50%;
  transform: translateY(-50%);
  color: #111111;
  font-size: 18px;
  line-height: 1;
  pointer-events: none;
}

.foodiego-search-modal-input{
  width: 100%;
  height: 46px;
  padding: 0 54px 0 54px;
  border: 0;
  outline: none;
  background: transparent;
  color: #111111;
  font-family: 'Poppins', Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  box-shadow: none;
}

.foodiego-search-modal-input::placeholder{
  color: #333333;
}

.foodiego-search-close-btn{
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #111111;
  font-size: 28px;
  line-height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.foodiego-search-close-btn:hover,
.foodiego-search-close-btn:focus{
  background: #e8e8e8;
  outline: none;
}

.foodiego-search-tabs{
  display: flex;
  align-items: center;
  gap: 0;
  padding: 0 2px;
  background: #ffffff;
  border-bottom: 1px solid #eeeeee;
  overflow-x: auto;
  scrollbar-width: none;
}

.foodiego-search-tabs::-webkit-scrollbar{
  display: none;
}

.foodiego-search-tab{
  position: relative;
  min-height: 62px;
  padding: 0 22px;
  border: 0;
  background: transparent;
  color: #333333;
  font-family: 'Poppins', Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  white-space: nowrap;
  cursor: pointer;
}

.foodiego-search-tab.active{
  color: #000000;
  font-weight: 600;
}

.foodiego-search-tab.active::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 5px;
  background: #FFBB32;
}

.foodiego-search-results-area{
  padding: 26px 0 36px;
  background: #ffffff;
}

.foodiego-search-section-title{
  margin: 0 24px 14px;
  color: #666666;
  font-family: 'Poppins', Arial, sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 24px;
}

.foodiego-search-category-list{
  display: flex;
  flex-direction: column;
}

.foodiego-search-category-item{
  width: 100%;
  min-height: 80px;
  padding: 0 20px 0 24px;
  display: flex;
  align-items: center;
  gap: 26px;
  border: 0;
  background: #ffffff;
  color: #111111;
  text-align: left;
  font-family: 'Poppins', Arial, sans-serif;
  cursor: pointer;
}

.foodiego-search-category-item:hover,
.foodiego-search-category-item:focus{
  background: #f7f7f7;
  outline: none;
}

.foodiego-search-category-icon{
  width: 38px;
  min-width: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  line-height: 1;
}

.foodiego-search-category-name{
  flex: 1 1 auto;
  min-height: 80px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #eeeeee;
  color: #111111;
  font-size: 19px;
  font-weight: 500;
  line-height: 24px;
}

.foodiego-search-category-item:last-child .foodiego-search-category-name{
  border-bottom: 0;
}

@media (min-width: 992px){
  body.foodiego-search-open{
    overflow: auto;
  }

  .foodiego-search-panel{
    background: transparent;
    inset: 0;
    padding: 0;
    pointer-events: auto;
  }

  .foodiego-search-panel-inner{
    position: fixed;
    top: var(--search-panel-top, 82px);
    left: var(--search-panel-left, 50%);
    width: var(--search-panel-width, 520px);
    height: auto;
    max-height: min(620px, calc(100vh - var(--search-panel-top, 82px) - 18px));
    margin: 0;
    overflow-y: auto;
    border-radius: 0 0 16px 16px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.14);
    border: 1px solid #eeeeee;
    background: #ffffff;
  }

  .foodiego-search-panel-top{
    padding: 14px 14px 10px;
  }

  .foodiego-search-modal-input-wrap,
  .foodiego-search-modal-input{
    height: 44px;
  }

  .foodiego-search-modal-input{
    font-size: 15px;
  }

  .foodiego-search-tabs{
    padding-left: 0;
  }

  .foodiego-search-tab{
    min-height: 54px;
    padding: 0 20px;
    font-size: 15px;
  }

  .foodiego-search-results-area{
    padding: 22px 0 26px;
  }

  .foodiego-search-section-title{
    margin: 0 20px 12px;
    font-size: 16px;
  }

  .foodiego-search-category-item{
    min-height: 70px;
    padding-left: 20px;
    gap: 20px;
  }

  .foodiego-search-category-icon{
    width: 34px;
    min-width: 34px;
    font-size: 28px;
  }

  .foodiego-search-category-name{
    min-height: 70px;
    font-size: 17px;
  }
}

@media (max-width: 576px){
  .foodiego-search-panel-top{
    padding: 18px 16px 10px;
  }

  .foodiego-search-modal-input-wrap,
  .foodiego-search-modal-input{
    height: 44px;
  }

  .foodiego-search-modal-input{
    font-size: 16px;
    padding-left: 52px;
  }

  .foodiego-search-tabs{
    padding-left: 2px;
  }

  .foodiego-search-tab{
    min-height: 60px;
    padding: 0 22px;
    font-size: 16px;
  }

  .foodiego-search-results-area{
    padding-top: 26px;
  }

  .foodiego-search-section-title{
    margin-left: 24px;
    margin-right: 24px;
    font-size: 18px;
  }

  .foodiego-search-category-item{
    min-height: 80px;
    gap: 24px;
    padding-left: 24px;
  }

  .foodiego-search-category-name{
    min-height: 80px;
    font-size: 19px;
  }
}

@media (max-width: 360px){
  .foodiego-search-category-item{
    gap: 18px;
    padding-left: 18px;
  }

  .foodiego-search-category-icon{
    width: 34px;
    min-width: 34px;
    font-size: 28px;
  }

  .foodiego-search-category-name{
    font-size: 17px;
  }
}

/* =========================================================
   Desktop search dropdown refinement
   Keep only the navbar search field on desktop. The dropdown
   starts with tabs/categories and does not render a second input.
   Mobile keeps the full-screen search panel with its own input.
   ========================================================= */
@media (min-width: 992px){
  .foodiego-search-panel-top{
    display: none !important;
  }

  .foodiego-search-panel-inner{
    border-radius: 0 0 16px 16px;
  }

  .foodiego-search-tabs{
    border-top: 0;
  }
}

.category-icons-dm{
  height: 35px;
}