:root {
    --brand: #ff7a00;
}

.grid-categories {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

@media (min-width: 768px) {
    .grid-categories {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 22px;
    }
}

.cat-card {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 18px rgba(0, 0, 0, 0.08);
}

.cat-card img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    display: block;
}

.cat-card .shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0) 30%,
        rgba(0, 0, 0, 0.55) 100%
    );
}

.cat-card .meta {
    position: absolute;

    padding: 12px 14px;
    color: #fff;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

.cat-card .meta h3 {
    margin: 0;
    font-weight: 800;
    font-size: 16px;
}

.cat-card .meta .count {
    font-size: 12px;
    opacity: 0.95;
    margin-top: 2px;
    text-align: right;
}

.grid-products {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

@media (min-width: 992px) {
    .grid-products {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 20px;
    }
}

#sub-nav {
    position: sticky;
    z-index: 1;
    background: #fff;
    border-bottom: 1px solid #f1f5f9;
    overflow: hidden;
    max-width: 100%;
}

@media (max-width: 768px) {
  #chips::-webkit-scrollbar {
    display: none;
  }
}

#sub-nav::before,
#sub-nav::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 36px;
    pointer-events: none;
}
[dir="ltr"] #sub-nav::before {
    left: 0;
    background: linear-gradient(to right, #fff, transparent);
}
[dir="ltr"] #sub-nav::after {
    right: 0;
    background: linear-gradient(to left, #fff, transparent);
}
[dir="rtl"] #sub-nav::before {
    right: 0;
    background: linear-gradient(to left, #fff, transparent);
}
[dir="rtl"] #sub-nav::after {
    left: 0;
    background: linear-gradient(to right, #fff, transparent);
}

html,
body {
    overflow-x: hidden;
}

.glow-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
}

@media (min-width: 992px) {
    .glow-layout {
        grid-template-columns: minmax(0, 1fr) 360px;
    }
}

.glow-cart {
    position: sticky;
    top: 100px;
    height: fit-content;
}

.mobile-cart-fab {
    position: fixed;
    right: 16px;
    bottom: 16px;
    width: 54px;
    height: 54px;
    border-radius: 9999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--brand);
    color: #fff;
    font-size: 24px;
    box-shadow: 0 10px 20px rgba(255, 122, 0, 0.35);
}

@media (min-width: 992px) {
    .mobile-cart-fab {
        display: none;
    }
}
:root {
    --brand: #ff7a00;
    /* Orange */
    --brand-600: #ff7a00;
    --brand-700: #f97316;
    --muted: #6b7280;
    --card-shadow: 0 10px 18px rgba(0, 0, 0, 0.08);
}

.new-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 0.3rem;
}

.sticky-top {
    position: sticky;
    top: 0;
    z-index: 40;
}

#new-headerbar {
    background: #fff;
    border-bottom: 1px solid #f1f5f9;
}

#new-headerbar .btn-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 9999px;
    border: 1px solid #e5e7eb;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

#new-headerbar .brand-logo {
    height: 36px;
    width: auto;
}

#search-overlay {
    position: fixed;
    inset: 0;
    background: rgba(255, 255, 255, 0.98);
    z-index: 50;
    display: none;
}

#search-overlay.active {
    display: block;
}

#search-overlay input[type="search"] {
    width: 100%;
    padding: 16px 18px;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    font-size: 16px;
}

.grid-categories {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

@media (min-width: 768px) {
    .grid-categories {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 22px;
    }
}

.cat-card {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: var(--card-shadow);
    cursor: pointer;
}

.cat-card img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    display: block;
    transition: transform 0.35s ease;
}

.cat-card:hover img {
    transform: scale(1.03);
}

.cat-card .shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0) 30%,
        rgba(0, 0, 0, 0.55) 100%
    );
}

.cat-card .meta {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 14px 14px 12px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    color: #fff;
}

.cat-card .meta h3 {
    font-weight: 900;
    font-size: 18px;
    line-height: 1.4;
    margin: 0;
}

.cat-card .meta .count {
    font-size: 13px;
    opacity: 0.95;
    margin-top: 2px;
}

.cat-card .meta .iconbox {
    background: #fff;
    border-radius: 12px;
    padding: 10px;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
}

.cat-card .meta .iconbox i {
    font-size: 22px;
    color: white;
}

#products-view {
    display: none;
    padding-top: 0.3rem;
}

@media (min-width: 992px) {
    .grid-products {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 20px;
    }
}

#chips {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    margin: 10px 0 18px;
    padding-bottom: 6px;
}

#chips .chip {
    white-space: nowrap;
    border: 2px solid #ffa800;
    border-radius: 16px;
    padding: 7px 12px;
    color: black;
    background: #ff9b0017;
    font-size: 16px;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

#chips .chip.active {
    border-color: var(--brand);
    color: #000000;
    box-shadow: 0 8px 16px rgba(255, 124, 2, 0.349);
}

#theCartBottomButton {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 48;
}

[dir="rtl"] .product-card .plus {
    right: auto;
    left: 10px;
}
.categoryname {
    color: #fff;
}
.categoryinfo {
    backdrop-filter: blur(5px);
    display: flex;
    padding: 15px;

    width: 100%;
}
.meta {
    background-color: rgb(235 133 25 / 74%);
}
#products-view {
    display: block;
    overflow-x: hidden; 
    max-width: 100vw;
}
.grid-products {
    display: grid;
    grid-template-columns: repeat(2, calc((97% - 27px) / 2));
    gap: 23px;
    padding-inline: 6px;
    box-sizing: border-box;
    max-width: 100%;
}
@media (min-width: 992px) {
    .grid-products {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 20px;
        padding-inline: 0;
    }
}

.grid-products > * {
    min-width: 0;
}

.product-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 18px rgba(0, 0, 0, 0.08);
}
.product-card .photo {
    position: relative;
    height: clamp(150px, 28vw, 200px);
}
.product-card .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.product-card .plus {
    position: absolute;
    right: 10px;
    bottom: -18px;
    width: 44px;
    height: 44px;
    border-radius: 9999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--brand, #ff7a00);
    color: #fff;
    font-weight: 800;
    font-size: 26px;
    border: 3px solid #fff;
    box-shadow: 0 6px 16px rgba(255, 122, 0, 0.45);
}
[dir="rtl"] .product-card .plus {
    right: auto;
    left: 10px;
}

.product-card .body {
    padding: 24px 14px 16px;
}
.product-card .title {
    font-weight: 700;
    font-size: 19px;
    margin: 10px;
    color: var(--brand, #ff7a00);
    text-align: right;
}
.product-card .price {
    color: #444;
    font-size: 16px;
    font-weight: 300;
    text-align: right;
}
.blockcateg {
    background: linear-gradient(
        to right,
        var(--lux-soft-start, #fff5f0),
        #fff
    ) !important;
    border-bottom: 3px solid var(--lux-grad-start, #ff723b) !important;
    color: rgb(0, 0, 0);
}


.blockcateg .btn-back i {
    font-size: 32px; 
    line-height: 1;
}

    .blockcateg .btn-back i {
        font-size: 34px;
    }
}

[dir="rtl"] .blockcateg .btn-back i {
    transform: rotate(180deg);
}
.btn_reserve_fixed{
  position: fixed;
  left: 0;
  right: 0;
  bottom: calc(env(safe-area-inset-bottom) + 12px); 
  display: flex;
  justify-content: center;
  z-index: 1;    
  pointer-events: none;     
}

.btn_reserve_fixed .btn_1,
.btn_reserve_fixed .cta{
  pointer-events: auto;
  width: min(560px, calc(100% - 24px)); 
  display: block;
  text-align: center;
  padding: 14px 22px;
  border-radius: 9999px;   
  font-weight: 700;
  box-shadow: 0 8px 20px rgba(0,0,0,.18), 0 2px 6px rgba(0,0,0,.12);
}

@supports (padding: max(0px)) {
  main, body {
    padding-bottom: max(84px, env(safe-area-inset-bottom));
  }
}

@media (min-width: 1200px){
  .btn_reserve_fixed{
    position: static;      
    pointer-events: auto;
    margin-top: 12px;
  }
  .btn_reserve_fixed .btn_1,
  .btn_reserve_fixed .cta{
    width: 100%;
    border-radius: 14px;
  }
}
#cartButtonHolder,
#theCartBottomButton {
  opacity: 1 !important;
  filter: none !important;
}

.btn_1.gradient.cta {
  background-image: linear-gradient(90deg, #FF7A2F 0%, #dc9141 100%);
    background-color: #d98e3e;
  color: #fff;
  border: 0;
  border-radius: 12px;
  padding: 14px 22px;
  box-shadow: 0 8px 20px rgba(0,0,0,.18), 0 2px 6px rgba(0,0,0,.12);
  opacity: 1 !important;
}

@media (hover: hover){
  .btn_1.gradient.cta:hover { opacity: .95; }
}
@media (hover: none){
  .btn_1.gradient.cta:hover { opacity: 1; }
}
.ease-in-out{
    background-image: linear-gradient(90deg, #FF7A2F 0%, #dc9141 100%) !important;
}
#modalPrice {
color: #FF5722;
}
.text-center {
    color: var(--brand-1);
    font-size: 18px;
}
:root{
  --cat-info-height: 65px;
}

.cat-card .meta.categoryinfo{
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: var(--cat-info-height) !important;
  min-height: var(--cat-info-height) !important;
  max-height: var(--cat-info-height) !important;
  padding: 12px 14px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  background-color: rgba(235, 133, 25, 0.74); 
  overflow: hidden !important;
}

.cat-card .meta.categoryinfo > div{
  min-width: 0; 
}

.cat-card .meta.categoryinfo .categoryname{
  margin: 0;
  font-weight: 800;
  font-size: 14px;
  line-height: 1.25;
  display: -webkit-box;
  -webkit-line-clamp: 2;          
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cat-card .meta.categoryinfo .count{
  font-size: 12px;
  opacity: 0.95;
  margin-top: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cat-card .meta.categoryinfo .iconbox{
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  background: rgba(255,255,255,.2);
  border-radius: 10px;
}
:root{
  --cat-info-height: 65px;
}

.cat-card .meta.categoryinfo{
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: var(--cat-info-height);
  min-height: var(--cat-info-height);
  max-height: var(--cat-info-height);
  padding: 12px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  background-color: rgba(235, 133, 25, 0.74);
  overflow: hidden;
}

.cat-card .meta.categoryinfo > div{
  min-width: 0;
}

.cat-card .meta.categoryinfo .categoryname{
  margin: 0;
  font-weight: 800;
  font-size: 16px;
  line-height: 1.25;

  display: -webkit-box;
  -webkit-line-clamp: 2;          
  -webkit-box-orient: vertical;

  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;           
}

.cat-card .meta.categoryinfo .count{
  font-size: 12px;
  opacity: 0.95;
  margin-top: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cat-card .meta.categoryinfo .iconbox{
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  background: rgba(255,255,255,.2);
  border-radius: 10px;
}

.cat-card .meta.categoryinfo .categoryname [lang="en"],
.cat-card .meta.categoryinfo .categoryname .en{
  display: none !important;
}

.cat-card .meta.categoryinfo .categoryname br { display: none; }

.side-info{position:fixed;inset:0;display:none;background:rgba(0,0,0,.35);z-index:1050}
.side-info.open{display:block}

.side-info__panel{
  position:absolute;top:0;bottom:0;left:0;width:86vw;max-width:420px;
  background:#fff;border-radius:0 16px 16px 0;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  padding:22px 18px 28px;overflow:auto;
  transform:translateX(-100%);transition:transform .3s ease;
}
[dir="rtl"] .side-info__panel{
  left:auto;right:0;border-radius:16px 0 0 16px;transform:translateX(100%);
}
.side-info.open .side-info__panel{transform:translateX(0)}

.side-info__close{position:absolute;top:10px;inset-inline-end:10px}

.side-info__header{text-align:center;place-items:center;margin-top:14px}
.side-info__logo{width:88px;height:88px;border-radius:16px;object-fit:cover;box-shadow:var(--card-shadow,0 10px 18px rgba(0,0,0,.08))}

.side-info__name{font-size:20px;margin:10px 0 4px;color:#111827;font-weight:700}
.side-info__desc{font-size:14px;color:#6b7280;line-height:1.6}

.side-info__actions{display:flex;gap:10px;justify-content:center;margin:16px 0 10px;flex-wrap:wrap}
.side-info__btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 14px;border-radius:12px;border:1px solid #e5e7eb;
  text-decoration:none;font-weight:600
}
.side-info__btn--primary{background:var(--brand, #ff7a00);border-color:var(--brand, #ff7a00);color:#fff}
.side-info__btn--outline{background:#fff;color:#111827}
.side-info__btn i{font-size:18px}

.side-info__social{display:flex;gap:12px;justify-content:center;margin-top:6px}
.side-info__social a{
  width:40px;height:40px;border-radius:9999px;border:1px solid #e5e7eb;
  display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#111827
}
.side-info__social i{font-size:20px}
:root{
  --lux-grad-start: #ff723b;
  --lux-grad-end:   #e54750;
  --lux-grad-angle: to right;
  --brand: var(--lux-grad-start);
  --grad-start-rgb: 255, 114, 59;  
  --grad-end-rgb:   229, 71, 80;   
}

.proluxe-gradient,
.btn.proluxe-gradient,
button.proluxe-gradient{
  background-image: linear-gradient(var(--lux-grad-angle), var(--lux-grad-start), var(--lux-grad-end)) !important;
  background-color: transparent !important;
  color:#fff !important;
  border-color: transparent !important;
  transition: all .2s ease-in-out !important;
}
.proluxe-gradient:hover,
.proluxe-gradient:focus {
  background-image: linear-gradient(var(--lux-grad-angle), var(--lux-grad-end), var(--lux-grad-start)) !important;
  filter: brightness(1.02);
}

.cat-card .meta.categoryinfo{
  background-image: linear-gradient(
    var(--lux-grad-angle),
    rgba(var(--grad-start-rgb), .74),
    rgba(var(--grad-end-rgb), .74)
  ) !important;
  color:#fff;
}

#chips .chip{
  border: 2px solid var(--lux-grad-start) !important;
  background-image: linear-gradient(
    var(--lux-grad-angle),
    rgba(var(--grad-start-rgb), .08),
    rgba(var(--grad-end-rgb), .08)
  ) !important;
  color:#000;
}
#chips .chip.active{
  border-color: var(--lux-grad-end) !important;
  box-shadow: 0 8px 16px rgba(var(--grad-end-rgb), 0.35) !important;
}

.product-card .plus{
  background-image: linear-gradient(var(--lux-grad-angle), var(--lux-grad-start), var(--lux-grad-end)) !important;
  background-color: transparent !important;
  color:#fff !important;
  border: none !important;
}


.side-info__btn--primary{
  background-image: linear-gradient(var(--lux-grad-angle), var(--lux-grad-start), var(--lux-grad-end)) !important;
  background-color: transparent !important;
  border-color: var(--lux-grad-end) !important;
  color:#fff !important;
}

.btn_1.gradient.cta,
a.btn_1.gradient.cta,
button.btn_1.gradient.cta{
  background-image: linear-gradient(var(--lux-grad-angle), var(--lux-grad-start), var(--lux-grad-end)) !important;
  background-color: transparent !important;
  border-color: transparent !important;
  color:#fff !important;
}

.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.show>.btn-outline-primary.dropdown-toggle{
  background-image: linear-gradient(var(--lux-grad-angle), var(--lux-grad-start), var(--lux-grad-end)) !important;
  background-color: transparent !important;
  color:#fff !important;
  border-color: var(--lux-grad-end) !important;
}

.btn-group>.btn-group:not(:last-child)>.btn,
.btn-group>.btn:not(:last-child):not(.dropdown-toggle){
  border-color: var(--lux-grad-end) !important;
}

.bg-green-500{
  background-image: linear-gradient(var(--lux-grad-angle), var(--lux-grad-start), var(--lux-grad-end)) !important;
  background-color: transparent !important;
  color:#fff !important;
}
.hover\:bg-green-600:hover{
  background-image: linear-gradient(var(--lux-grad-angle), var(--lux-grad-end), var(--lux-grad-start)) !important;
  background-color: transparent !important;
}
.focus\:ring-green-500, .focus\:ring-green-500:focus{
  --tw-ring-color: var(--lux-grad-end) !important;
}

.ease-in-out{ transition-timing-function: ease-in-out !important; }
