.wd-add-btn-replace .add-to-cart-loop {
  overflow: hidden;
  padding: 0;
}
.wd-add-btn-replace .add-to-cart-loop span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: inherit;
  transition: transform 0.25s ease, opacity 0.15s ease;
}
.wd-add-btn-replace .add-to-cart-loop:before {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 400;
  font-size: 20px;
  transition: opacity 0.15s ease, transform 0.25s ease;
  transform: translateY(100%);
  content: '\f123';
  font-family: 'dctech-font';
}
.wd-add-btn-replace .add-to-cart-loop:after {
  position: absolute;
  top: calc(50% - 9px);
  inset-inline-start: calc(50% - 9px);
  opacity: 0;
  transition: opacity 0.2s ease;
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  border: 1px solid rgba(0, 0, 0, 0);
  border-left-color: currentColor;
  border-radius: 50%;
  vertical-align: middle;
  animation: wd-rotate 450ms infinite linear var(--wd-anim-state, paused);
}
.wd-add-btn-replace .add-to-cart-loop:hover:before {
  transform: translateY(0) translateZ(0);
}
.wd-add-btn-replace .add-to-cart-loop:hover span {
  transform: translateY(-100%) translateZ(0);
}
.wd-add-btn-replace .add-to-cart-loop.loading:before,
.wd-add-btn-replace .add-to-cart-loop.loading span {
  opacity: 0;
}
.wd-add-btn-replace .add-to-cart-loop.loading:after {
  opacity: 1;
  --wd-anim-state: running;
}
.wd-product.product-type-simple.outofstock
  .wd-add-btn-replace
  .add-to-cart-loop:before,
.wd-add-btn-replace .add-to-cart-loop.product_type_grouped:before {
  content: '\f11a';
  font-family: 'dctech-font';
}
.wd-add-btn-replace .add-to-cart-loop.product_type_external:before {
  content: '\f11c';
  font-family: 'dctech-font';
}
