/* Product catalog: natural page flow, with a separately scrollable selector. */
html:has(.product-catalog), body:has(.product-catalog) { height: auto !important; min-height: 100%; overflow-x: clip !important; overflow-y: visible !important; }
.wrapper.product-catalog { height: auto !important; min-height: 100vh; overflow: clip !important; }
.product-catalog #main-content {
  display: grid !important;
  grid-template-columns: 280px minmax(0, 1fr);
  align-items: stretch !important;
  gap: 28px !important;
  width: 100% !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 180px 40px 56px !important;
  overflow: visible !important;
}
#main-content::before, #main-content::after { content: none !important; }
#main-content > .lcol, #main-content > .rcol {
  width: auto !important;
  max-width: none !important;
  min-width: 0;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
}
#main-content .product-list-scroll, #main-content .product-scroll {
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  border: 1px solid #ffffff24 !important;
  border-radius: 20px !important;
  background: rgba(24, 23, 21, .52) !important;
  -webkit-backdrop-filter: blur(6px) !important;
  backdrop-filter: blur(6px) !important;
  box-shadow: none !important;
}
#main-content .product-list-scroll {
  display: block !important;
  max-height: 680px !important;
  padding: 16px 10px !important;
  overflow-y: auto !important;
  scrollbar-width: thin;
  scrollbar-color: #8c8179 transparent;
}
#main-content .catalog-heading {
  margin: 4px 12px 16px;
  color: #c9c1b9;
  font-size: 16px;
  font-weight: normal;
}
#main-content .product-list { display: block !important; width: 100% !important; margin: 0 !important; }
#main-content .product-list li {
  display: block !important;
  position: static !important;
  width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  margin: 2px 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  box-shadow: none !important;
}
#main-content .product-list li::before, #main-content .product-list li::after { content: none !important; }
#main-content .product-list button {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 58px;
  padding: 8px 10px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #eee8e2;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: background .18s ease;
}
#main-content .product-list button:hover { background: #ffffff0d; }
#main-content .product-list .active button { background: #a92927 !important; color: white; }
#main-content .product-list button:focus-visible { outline: 2px solid #ffb7a4; outline-offset: -2px; }
#main-content .product-list li img {
  display: block !important;
  position: static !important;
  width: 42px !important;
  height: 42px !important;
  flex: 0 0 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  border: 0 !important;
  border-radius: 6px !important;
  background: transparent !important;
}
#main-content .product-list li span {
  position: static !important;
  display: block !important;
  color: inherit !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
  font-weight: normal !important;
  white-space: normal !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  opacity: 1 !important;
}
#main-content .product-scroll { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; align-items: center; padding: 36px !important; overflow: visible !important; }
#main-content .products-list { width: 100% !important; max-width: none !important; min-height: 0 !important; }
#main-content .product-card { display: none !important; }
#main-content .product-card.active {
  display: grid !important;
  grid-template-columns: minmax(180px, .8fr) minmax(0, 1.2fr) !important;
  gap: 32px !important;
  align-items: center !important;
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
}
#main-content .product-card::before, #main-content .product-card::after,
#main-content .product-card .l_col::before { content: none !important; }
#main-content .product-card .l_col, #main-content .product-card .r_col {
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
}
#main-content .product-card .l_col { align-items: center !important; justify-content: center !important; }
#main-content .product-card .l_col img { width: 100% !important; max-width: 360px !important; height: auto !important; margin: auto !important; object-fit: contain; }
#main-content .product-card h1 { font-size: clamp(30px, 2.8vw, 42px) !important; line-height: 1.08 !important; text-transform: none !important; letter-spacing: -.025em !important; margin: 0 0 18px !important; text-wrap: balance; }
#main-content .product-card p { max-width: none !important; font-size: 17px !important; line-height: 1.6 !important; color: #d3ccc5; opacity: 1 !important; margin: 0 0 28px !important; }
#main-content .product-card h2 { font-size: 17px !important; line-height: 1.4 !important; text-transform: none !important; letter-spacing: 0 !important; opacity: 1 !important; padding: 0 !important; border: 0 !important; margin: 24px 0 12px !important; }
#main-content .properties-list { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 10px !important; margin: 0 !important; }
#main-content .fact-tile { min-width: 0; padding: 12px 10px !important; border: 0 !important; border-radius: 10px !important; background: #ffffff08 !important; }
#main-content .fact-tile dt { display: none !important; }
#main-content .fact-tile span { overflow-wrap: anywhere; }
#main-content .properties-list dd { padding: 0 !important; margin: 0 !important; }
#main-content .properties-list strong { display: block !important; font-size: 22px !important; line-height: 1.35 !important; white-space: normal !important; font-variant-numeric: tabular-nums; }
#main-content .properties-list span { display: block !important; font-size: 14px !important; line-height: 1.4 !important; color: #d3ccc5 !important; opacity: 1 !important; text-transform: none !important; letter-spacing: 0 !important; }
#main-content .properties-list:last-of-type { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr) !important; gap: 20px !important; background: none !important; border: 0 !important; border-top: 1px solid #ffffff24 !important; border-radius: 0 !important; padding: 16px 0 0 !important; }
#main-content .properties-list:last-of-type > dt { display: none !important; }
#main-content .properties-list:last-of-type > dd { display: flex !important; flex-direction: column !important; gap: 5px !important; grid-column: auto !important; grid-row: auto !important; border: 0 !important; }
#main-content .properties-list:last-of-type strong { font-size: 18px !important; }
@media (max-width: 1199px) {
  .product-catalog #main-content { padding: 160px 24px 40px !important; grid-template-columns: 250px minmax(0, 1fr); gap: 20px !important; }
  #main-content .product-scroll { padding: 28px !important; }
  #main-content .product-card.active { grid-template-columns: 1fr !important; gap: 20px !important; }
  #main-content .product-card .l_col, #main-content .product-card .r_col { grid-column: 1 !important; grid-row: auto !important; }
  #main-content .product-card .l_col img { max-width: 220px !important; max-height: 220px; }
}
@media (max-width: 767px) {
  .product-catalog #main-content { display: grid !important; grid-template-columns: 1fr; padding: 112px 16px 32px !important; gap: 16px !important; }
  #main-content .product-list-scroll { max-height: 210px !important; }
  #main-content .product-scroll { padding: 24px 18px !important; }
  #main-content .product-card h1 { font-size: 32px !important; }
  #main-content .properties-list strong { font-size: 19px !important; }
  #main-content .properties-list span { font-size: 13px !important; }
}

#main-content .catalog-controls { display: none; }
#main-content .halal-ext::before, #main-content .halal-ext::after { content: none !important; }
#main-content .halal-ext .img_wrapper { width: 100% !important; max-width: 340px !important; margin: auto !important; }
#main-content .halal-ext .product_slide { background-size: contain; background-repeat: no-repeat; background-position: center; }
.halal-page #main-content .product-scroll { min-height: 620px; }
.halal-page #main-content .product-list-scroll { flex: 0 0 auto; }
.halal-page #main-content .product-list li { display: flex !important; align-items: center; gap: 12px; padding: 10px !important; box-sizing: border-box; color: #eee8e2; }
@media (max-width: 1199px) {
  #main-content .halal-ext .img_wrapper { max-width: 200px !important; }
}
@media (max-width: 767px) {
  #main-content .catalog-controls {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) 48px;
    gap: 10px;
    padding: 14px;
    border: 1px solid #ffffff24;
    border-radius: 16px;
    background: rgba(24, 23, 21, .52);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
  }
  #main-content .catalog-controls label { grid-column: 1 / 3; font-size: 14px; color: #d3ccc5; }
  #main-content .catalog-position { justify-self: end; font-size: 14px; color: #d3ccc5; font-variant-numeric: tabular-nums; }
  #main-content .catalog-controls button, #main-content .catalog-controls select {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    height: 48px;
    padding: 0 8px;
    border: 1px solid #ffffff30;
    border-radius: 10px;
    background: #302b28;
    color: white;
    font: 16px var(--font-regular);
    cursor: pointer;
    color-scheme: dark;
  }
  #main-content .catalog-controls button { font-size: 24px; }
  #main-content .catalog-controls button:active { background: #a92927; }
  #main-content .catalog-controls :focus-visible { outline: 2px solid #ffb7a4; outline-offset: 2px; }
  #main-content .catalog-controls + .product-list-scroll { display: none !important; }
  .halal-page #main-content .product-scroll { min-height: 0; }
  #main-content .halal-ext .img_wrapper { max-width: 170px !important; }
}
