/* ========== Woocommerce ========== */
.woocommerce-form-row label,
.woocommerce-form-row span,
.woocommerce-form-row input {
  width: 100%;
}

.woocommerce div.product div.images .flex-control-thumbs {
  margin-left: -15px;
  margin-right: -15px;
}

.woocommerce div.product div.images .flex-control-thumbs li {
  padding: 15px;
}

.woocommerce a.added_to_cart {
  display: block;
  position: absolute;
  width: 100%;
}

.cart-count {
  position: relative;
}

.cart-count .count {
  border-radius: 50%;
  background-color: var(--global-color-1);
  color: var(--global-white);
  width: 12.5px;
  height: 12.5px;
  position: absolute;
  right: 8px;
  top: 9px;
  font-size: 10px;
  text-align: center;
  line-height: 12px;
  transition: background-color .2s ease;
}

.cart-count:hover .count {
  background-color: var(--global-black);
}

.mark, mark {
  background-color: transparent;
}

.woocommerce .term-description {
  margin-bottom: 45px;
}

.woocommerce .woocommerce-result-count {
  font-weight: 600;
  margin-bottom: 45px;
  padding: 10px 0;
}

.woocommerce .woocommerce-ordering {
  margin-bottom: 45px;
}

.products .product-category h2 {
  text-align: center;
}

.woocommerce-tabs {
  padding: 45px 0;
}

.up-sells.upsells.products,
.related.products {
  float: left;
  width: 100%;
}

.related.products h2 {
  text-align: center;
}

.variations .label,
.variations .value {
  display: block;
  width: 100%;
}

.woocommerce .woocommerce-ordering select,
.woocommerce div.product form.cart .variations select {
  width: 100%;
  padding: 10px 15px;
}

.woocommerce .quantity .qty {
  min-width: 75px;
  padding: 9px 10px;
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
/* .woocommerce ul.products li.product .button, */
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  border: 0 solid var(--global-color-1);
  background-color: var(--global-color-1);
  color: var(--global-white);
  padding: 15px 30px;
  border-radius: 0;
  transition: border-color .2s ease, background-color .2s ease, color .2s ease;
}

.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce ul.products li.product .button:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  border-color: var(--global-color-2);
  background-color: var(--global-color-2);
  color: var(--global-white);
}

.woocommerce #respond input#submit:active,
.woocommerce a.button:active,
.woocommerce button.button:active,
.woocommerce input.button:active,
.woocommerce ul.products li.product .button:active,
.woocommerce #respond input#submit.alt:active,
.woocommerce a.button.alt:active,
.woocommerce button.button.alt:active,
.woocommerce input.button.alt:active {
  border-color: var(--global-black);
  background-color: var(--global-black);
  color: var(--global-white);
}

.woocommerce #respond input#submit.alt.disabled,
.woocommerce #respond input#submit.alt.disabled:hover,
.woocommerce #respond input#submit.alt:disabled,
.woocommerce #respond input#submit.alt:disabled:hover,
.woocommerce #respond input#submit.alt:disabled[disabled],
.woocommerce #respond input#submit.alt:disabled[disabled]:hover,
.woocommerce a.button.alt.disabled,
.woocommerce a.button.alt.disabled:hover,
.woocommerce a.button.alt:disabled,
.woocommerce a.button.alt:disabled:hover,
.woocommerce a.button.alt:disabled[disabled],
.woocommerce a.button.alt:disabled[disabled]:hover,
.woocommerce button.button.alt.disabled,
.woocommerce button.button.alt.disabled:hover,
.woocommerce button.button.alt:disabled,
.woocommerce button.button.alt:disabled:hover,
.woocommerce button.button.alt:disabled[disabled],
.woocommerce button.button.alt:disabled[disabled]:hover,
.woocommerce input.button.alt.disabled,
.woocommerce input.button.alt.disabled:hover,
.woocommerce input.button.alt:disabled, .woocommerce input.button.alt:disabled:hover,
.woocommerce input.button.alt:disabled[disabled],
.woocommerce input.button.alt:disabled[disabled]:hover {
  background-color: var(--global-grey);
}

.woocommerce ul.products li.product.product-category,
.woocommerce-page ul.products li.product.product-category {
  border: 1.5px solid var(--global-grey);
  transition: border-color .2s ease;
}

.woocommerce ul.products li.product.product-category:hover,
.woocommerce-page ul.products li.product.product-category:hover {
  border-color: var(--global-color-2);
}

.woocommerce ul.products li.product.product-category:active,
.woocommerce-page ul.products li.product.product-category:active {
  border-color: var(--global-color-1);
}

.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins,
.woocommerce ul.products li.product .price ins {
  text-decoration: none;
}

.woocommerce span.onsale {
  background-color: var(--global-color-1);
}

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--global-color-1);
}

.woocommerce ul.products li.product .woocommerce-loop-category__title {}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h3 {
  text-align: left;
  color: var(--global-black);
}

.woocommerce ul.products li.product .button {
  background-color: var(--global-color-1);
  width: 100%;
  padding: 15px 30px;
  text-align: center;
  border-radius: 0;
}

/* .woocommerce-error { border-top-color: var(--global-color-1); }
.woocommerce-info { border-top-color: var(--global-color-1); }
.woocommerce-message { border-top-color: var(--global-color-1); }
.woocommerce-error::before { color: var(--global-color-1); }
.woocommerce-info::before { color: var(--global-color-1); }
.woocommerce-message::before { color: var(--global-color-1); } */
/* Woocommerce bootstrap 3 -> 4 */
.woocommerce .col2-set, .woocommerce-page .col2-set {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
  padding-bottom: 45px;
}

.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1 {
  float: none;
  width: 100%;
  flex: 50%;
  max-width: 50%;
}

.woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2 {
  float: none;
  width: 100%;
  flex: 50%;
  max-width: 50%;
}

/* woocommerce inputs */
.woocommerce-input-wrapper {
  width: 100%;
}

.woocommerce-form label {
  display: block;
  width: 100%;
}

.woocommerce-form .password-input {
  width: 100%;
}

.woocommerce-form input.input-text {
  width: 100%;
  padding: 10px 15px;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
  border: 1px solid var(--global-grey);
  width: 100%;
  padding: 10px 15px;
  border-radius: 0;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
  color: var(--global-black);
  background-color: var(--global-white);
  border-color: var(--global-color-1);
  outline: 0;
  box-shadow: 0;
}

.woocommerce #respond input#submit.disabled,
.woocommerce #respond input#submit:disabled,
.woocommerce #respond input#submit:disabled[disabled],
.woocommerce a.button.disabled,
.woocommerce a.button:disabled,
.woocommerce a.button:disabled[disabled],
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button.disabled,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled] {
  background-color: var(--global-grey);
  color: var(--global-black);
}

/* Woocommerce bootstrap 3 -> 4 (mobile) */
@media only screen and (max-width: 768px) {
  .woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1 {
    flex: 100%;
    max-width: 100%;
  }

  .woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2 {
    flex: 100%;
    max-width: 100%;
  }
}

@media only screen and (max-width: 480px) {
  .woocommerce .woocommerce-result-count {
    margin-bottom: 25px;
  }

  .woocommerce .woocommerce-ordering {
    width: 100%;
  }
}

/* Variations loading animation - only in product details */
.product_single__details .variations {
  position: relative;
  overflow: hidden;
  pointer-events: none;
}

.product_single__details .variations::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.7);
  animation: slideRight 1.5s ease-in-out infinite;
  z-index: 10;
}

@keyframes slideRight {
  0% {
    left: -100%;
  }
  100% {
    left: 100%;
  }
}

/* Disable loading animation when JS is loaded */
.product_single__details .variations.variations-loaded {
  pointer-events: auto;
}

.product_single__details .variations.variations-loaded::before {
  display: none;
  animation: none;
}

/* Custom variations wrapper with scrolling */
.custom-variations-wrapper {
  max-height: 50vh;
  overflow-y: scroll;
  margin-bottom: 20px;
}
.product_single__details .custom-variations-wrapper {
    max-height: 80vh;
}

/* Ensure single variation wrap (add to cart) stays at bottom */
.single_variation_wrap {
  position: relative;
  z-index: 1;
}

/* Hide add to basket button in plan details popup when opened from product card popup */
#variation-details-popup.from-product-card .variation-details-popup__actions {
  display: none;
}
