@keyframes ontook-logo-spin { to { transform: rotate(360deg); } }
.ontook-loading-mark,
body .ontook-loading-button::after,
body.woocommerce-cart .blockUI.blockOverlay::before,
body.woocommerce-checkout .blockUI.blockOverlay::before,
.reebelo-checkout.checkout-initializing::before {
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  border: 0;
  border-radius: 50%;
  background: #fff url('images/reebelo-icon.svg') center / 90% 90% no-repeat;
  animation: ontook-logo-spin 1s linear infinite;
}
body .ontook-loading-button {
  position: relative;
  color: transparent !important;
  text-shadow: none !important;
  cursor: wait;
}
body .ontook-loading-button > * { visibility: hidden; }
body .ontook-loading-button::after {
  position: absolute;
  top: calc(50% - 16px);
  left: calc(50% - 16px);
  margin: 0;
}
.ontook-loading-region {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 160px;
  grid-column: 1 / -1;
}
.ontook-loading-page { min-height: 55vh; }
.ontook-loading-page .ontook-loading-mark { width: 48px; height: 48px; flex-basis: 48px; }
body.woocommerce-cart .blockUI.blockOverlay::before,
body.woocommerce-checkout .blockUI.blockOverlay::before {
  position: absolute;
  top: calc(50% - 16px);
  left: calc(50% - 16px);
  margin: 0;
}
.reebelo-checkout.checkout-initializing { position: relative; }
.reebelo-checkout.checkout-initializing::before {
  position: absolute;
  top: 100px;
  left: calc(33% - 16px);
}
@media (max-width: 767px) {
  .reebelo-checkout.checkout-initializing::before { left: calc(50% - 16px); }
}
@media (prefers-reduced-motion: reduce) {
  .ontook-loading-mark,
  body .ontook-loading-button::after,
  body.woocommerce-cart .blockUI.blockOverlay::before,
  body.woocommerce-checkout .blockUI.blockOverlay::before,
  .reebelo-checkout.checkout-initializing::before { animation: none; }
}
