body.no-scroll {
    position: fixed;
    overflow-y: scroll;
    width: 100%;
}
@media (min-width: 1400px) {
.custom-container {
      padding-left: 140px;
      padding-right: 140px;
   }
.sm-push-description{
  margin-right: 14px;
}
.description-prod{
  font-size: 1.2rem; color: rgb(107, 107, 107);
}

}
@media (max-width: 1400px) {

  .sm-push-description{
    margin-left: 2px;
    font-size: 12px;
  }
  .description-prod{
  font-size: 1rem; color: rgb(107, 107, 107);
}
}

@media (max-width: 800px) {
  .small_device{
  font-size: 12px !important;
}
}

.main-content .category-list {
  display: flex;
  overflow-x: auto;
  gap: 8px;
  padding: 0px 0 0px;
  /* show scroller */
  /* scrollbar-width: none; */
  scrollbar-width: thin;
  scrollbar-color: #E5E4E2 transparent;
}

.category-list .category-button {
  border: none;
  cursor: pointer;
  font-weight: 400;
  font-size: 14px;
  border-radius: 8px;
  white-space: nowrap;
  color: black;
  height: 40px;
  width: 120px;
  padding: 6px 12px;
  margin: 6px 0;
  background: white;
}

.category-list .category-button.active {
  color: #E5E4E2;
  /* background: black; */
  pointer-events: none;
}

.category-list .category-button:not(.active):hover {
  background: #E5E4E2;
}
/* Toast Notifications */
.toast{
  position: fixed !important;
  /* Ensure top/bottom/left/right are set */
  bottom: 70px;
  right: 20px;
  z-index: 1111;
  box-shadow: 0 4px 12px rgba(4, 86, 207, 0.15);
  border-radius: 8px;
  opacity: .9;
}

.warning{
  background-color: #b7ab04;
}
.success{
  background-color: #28a745;
}
.error{
  background-color: #cf0e0e;
}
/* js button */        
.success-inserted{
  background-color: #1c900c;
  color: #ffffff;
  font-size: 3em;
  box-shadow: 0 4px 12px rgba(4, 86, 207, 0.15);
  border-radius: 8px; 
  z-index: 1111;
  /* width: 60px; */
}
.hidediv{
  visibility: hidden !important;
  }

  .cart-prod-title{
  font-size: 14px;
  font-weight: 600;
  }

.pagination {
  display: flex;
  justify-content: center;
  list-style: none; /* remove list bullets */
  padding: 0px;
}

.pagination li a {
  display: block; /* let links fill the list item */
  padding: 8px 12px;
  text-decoration: none;
  border: 1px solid #a3a6a9;
  color: #595a59;
  margin: 0 4px;
  border-radius: 5px; /* add rounded borders */
}
.page-item.active .page-link {
  background-color: #f5bb50 !important;
  color:#292929
}
.pagination li a:hover:not(.active) {
  background-color: #e4e4e4;
}


/*--------------------------------------------------------------
# Preloader
--------------------------------------------------------------*/
#preloader {
  position: fixed;
  inset: 0;
  z-index: 999999;
  overflow: hidden;
  background: #424242;
  transition: all 0.6s ease-out;
  opacity: .9;
}

#preloader:before {
  content: "";
  position: fixed;
  top: calc(50% - 30px);
  left: calc(50% - 30px);
  border: 6px solid #ffffff;
  border-color: #f5bb50;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  animation: animate-preloader 1.5s linear infinite;
}

@keyframes animate-preloader {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/*--------------------------------------------------------------
# Scroll Top Button
--------------------------------------------------------------*/
.scroll-top {
  position: fixed;
  visibility: hidden;
  opacity: 0;
  right: 20px;
  bottom: 80px;
  z-index: 99999;
  background-color: #f5bb50;
  width: 40px;
  height: 40px;
  border-radius: 4px;
  transition: all 0.4s;
}

.scroll-top i {
  font-size: 20px;
  color: var(--contrast-color);
  line-height: 0;
}

.scroll-top:hover {
  background-color: color-mix(in srgb,#f5bb50, transparent 20%);
  color: var(--contrast-color);
}

.scroll-top.active {
  visibility: visible;
  opacity: 1;
}

.modal-footer{
  font-size: 20px;
  background-color: color-mix(in srgb,#ffdd1c, transparent 20%);
  color: var(--contrast-color);
  line-height: 0;
}
.modal-footer:hover {
  background-color: color-mix(in srgb,#f5bb50, transparent 20%);
  color: var(--contrast-color);
}

.warning-text{
    color: #ff5730;
}
.success-text{
    color: #069625;
}

/* A simple CSS loading spinner (hidden by default) */
#loading-spinner {
    display: none;
    font-style: italic;
    color: #ce0d0d;
    font-size:20px;
}
#result-box {
    margin-top: 10px;
    font-weight: bold;
}
/* Zoom product image */
p:has(.ruler) {
  background: red;
}

.ruler {
  background: orange;
  color: white;
  width: 500px;
  display: inline-block;
}


.img-zoom {
  transition: transform 0.3s ease-in-out;
  cursor: zoom-in;
}
.img-zoom.zoomed {
  cursor: zoom-out;
  /* Optional: keeps the image centered over its original spot when scaled */
  transform-origin: center center; 
  position: relative;
  z-index: 1000;
}
/* buttom custom */
.motion.btn.btn-danger {
	background: #c0392b;
	border: 1px solid #c0392b;
	transition: .3s;
	position: relative;
	z-index: 1;
	text-transform: capitalize;
	font-weight: 400;
	overflow: hidden;
	padding: 5px 10px;
}
.motion.btn.btn-danger::before {
	position: absolute;
	content: '';
	background: #e74c3c;
	width: 100%;
	height: 100%;
	left: -100%;
	top: 100%;
	transition: .3s;
	z-index: -1;
}
.motion.btn.btn-danger:hover:before{
    top: 0;
    left: 0;
}

.motion.btn.btn-success {
	background: #0da526;
	border: 1px solid #0da526;
	transition: .3s;
	position: relative;
	z-index: 1;
	text-transform: capitalize;
	font-weight: 400;
	overflow: hidden;
	padding: 5px 10px;
}
.motion.btn.btn-success::before {
	position: absolute;
	content: '';
	background: #2ed44a;
	width: 100%;
	height: 100%;
	left: -100%;
	top: 100%;
	transition: .3s;
	z-index: -1;
}
.motion.btn.btn-success:hover:before{
    top: 0;
    left: 0;
}