.header .navbar-cart .cart-items .shopping-item .shopping-list li .cart-img img {
  display: block;
  width: 100%;
  height: auto;
}

.woo--orderby {
  display: inline-block;
}

.woo--orderby.woocommerce-ordering {
  float: none;
}

.pagination-list li span.current {
  font-weight: 500;
  font-size: 14px;
  border-radius: 4px;
  padding: 6px 18px;
  text-align: center;
  border: 1px solid #eee;
  background: #0167f3;
  color: #fff;
  border-color: transparent;
}

.site-main.ajax-filtering {
  position: relative;
}

.site-main.ajax-filtering:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #fff;
  opacity: 0.8;
  z-index: 2;
}

.site-main.ajax-filtering:after {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  border: 2px solid #000;
  border-radius: 50%;
  border-right-color: transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -8px;
  margin-left: -8px;
  z-index: 3;
  animation: ajaxing 1s infinite linear;
}

@keyframes ajaxing {
  to {
    transform: rotate(360deg);
  }
}

/* esto daña las preferencias de las Opciones de moneda de wooocommerce */
/* .item-details .woocommerce-Price-currencySymbol {
    float: left;
} */

.item-details .product-info .price span {
  margin: 0;
  text-decoration: none;
}

.woocommerce-variation-price {
  padding-top: 10px;
}

.product-images {
  position: relative;
}

.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce form .form-row input:not([type="checkbox"]) {
  width: 100%;
  height: 46px;
  padding: 0 20px;
  border-radius: 4px;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  border: 1px solid #e6e6e6;
}

span.woocommerce-input-wrapper {
  width: 100%;
}

.woocommerce form .form-row textarea {
  padding-top: 10px;
  height: 160px;
  resize: none;
}

.woocommerce .checkout-sidebar-price-table table.shop_table {
  border: none;
}

.woocommerce .checkout-sidebar-price-table table.shop_table th,
.woocommerce .checkout-sidebar-price-table table.shop_table td {
  padding: 8px 0;
}

.woocommerce .checkout-sidebar-price-table table.shop_table th:nth-child(2),
.woocommerce .checkout-sidebar-price-table table.shop_table td:nth-child(2) {
  text-align: right;
}

.woocommerce .checkout-steps-form-content .form-row {
  margin-top: 16px;
  margin-bottom: 0;
}

/* .woocommerce-order-received .page-wrapper {
    background: #fff;
} */

.woocommerce-variation-add-to-cart {
  display: flex;
  align-items: flex-end;
}

.woocommerce-variation-add-to-cart .form-group.quantity {
  margin-right: 20px;
}

.woocommerce-variation-add-to-cart .bottom-content {
  width: 100%;
}

section.item-details.section .row.product {
  margin-top: 0;
}

.header-actions {
  gap: 20px;
}

.header .navbar-cart .account-items {
  margin-right: 12px;
}

.header .navbar-cart .cart-items .shopping-item {
  top: 48px;
}

.header .navbar-cart .account-items .account-dropdown-links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}

.header .navbar-cart .account-items .shopping-item {
  top: 48px;
  width: auto;
  min-width: 200px;
}

.header .navbar-cart .account-items .account-dropdown-links a {
  display: block;
  width: 100%;
}

.header .navbar-cart .header-search-trigger {
  margin-right: 12px;
}

.header .navbar-cart .header-search-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid #fff;
  background: transparent;
  color: #fff;
  font-size: 18px;
  padding: 0;
  cursor: pointer;
  transition: all 0.3s ease;
}

.header .navbar-cart .header-search-button:hover,
.header .navbar-cart .header-search-button:focus-visible {
  background-color: #9f9f31;
  border-color: #fff;
  color: #fff;
  outline: none;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.25);
}

.header .navbar-cart .wishlist a,
.header .navbar-cart .cart-items .main-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid #fff;
  background: transparent;
  color: #fff;
  font-size: 18px;
  padding: 0;
  transition: all 0.3s ease;
}

.header .navbar-cart .wishlist a:hover,
.header .navbar-cart .wishlist a:focus-visible,
.header .navbar-cart .cart-items:hover .main-btn,
.header .navbar-cart .cart-items .main-btn:focus-visible {
  background-color: #9f9f31;
  border-color: #fff;
  color: #fff;
  outline: none;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.25);
}

.header .navbar-cart .header-search-button i {
  line-height: 1;
}

.header-search-modal {
  position: fixed;
  inset: 0;
  display: none;
  align-items: flex-start;
  justify-content: center;
  padding: 20vh 20px 20px;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  z-index: 1100;
  overflow-y: auto;
}

.header-search-modal.is-active {
  display: flex;
}

.header-search-modal__panel {
  width: 100%;
  max-width: 640px;
}

.header-search-modal__form .navbar-search {
  display: flex;
  align-items: stretch;
  background: #fff;
  padding: 24px;
  border-radius: 6px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
}

.header-search-modal__form .search-input {
  flex: 1;
}

.header-search-modal__form .search-input input {
  width: 100%;
  height: 45px;
  border: 1px solid #e2e2e2;
  background-color: #fff;
  color: #000;
  border-radius: 4px 0 0 4px;
  padding: 0 15px;
  transition: all 0.3s linear;
  font-size: 14px;
}

.header-search-modal__form .search-btn button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  padding: 0;
  border: 0;
  border-radius: 0 4px 4px 0;
  background-color: #9f9f31;
  color: #fff;
  font-size: 18px;
  transition: all 0.3s ease;
}

.header-search-modal__form .search-btn button:hover,
.header-search-modal__form .search-btn button:focus {
  background-color: #696923;
  color: #fff;
  outline: none;
  box-shadow: 0 0 0 2px rgba(105, 105, 35, 0.25);
}

body.header-search-open {
  overflow: hidden;
}

/* Preserve hero slider rounding across breakpoints */
.hero-area .slider-head .tns-outer,
.hero-area .slider-head .tns-ovh,
.hero-area .slider-head .tns-inner,
.hero-area .slider-head .hero-slider {
  border-radius: inherit;
  overflow: hidden;
}

.hero-area .slider-head .single-slider {
  border-radius: inherit;
}

.woocommerce-cart-form__cart-item td.product-remove .remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #f2483f;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.2s ease;
}

.woocommerce-cart-form__cart-item td.product-remove .remove:hover,
.woocommerce-cart-form__cart-item td.product-remove .remove:focus-visible {
  background: #c53732;
  color: #fff;
  outline: none;
}

@media (max-width: 768px) {
  .woocommerce-cart-form table.shop_table {
    table-layout: auto;
    border-collapse: separate;
    border-radius: 0.5rem;
    overflow: hidden;
  }

  .woocommerce-cart-form table.shop_table tbody {
    border-radius: inherit;
    overflow: hidden;
  }

  .woocommerce-cart-form__cart-item td {
    padding: 12px 16px;
    background-color: #fff;
  }

  .woocommerce-cart-form__cart-item td.product-thumbnail {
    width: 100%;
    display: flex !important;
    justify-content: center;
    align-items: center;
    padding: 24px 16px;
    text-align: center;
    gap: 12px;
  }

  .woocommerce-cart-form__cart-item td.product-thumbnail::before {
    content: none !important;
  }

  .woocommerce-cart-form__cart-item td.product-thumbnail a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    max-width: 320px;
    border-radius: 8px;
    overflow: hidden;
  }

  .woocommerce-cart-form__cart-item td.product-thumbnail img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100px;
    object-fit: contain;
  }

  .woocommerce-cart-form__cart-item td.product-name {
    width: 100%;
    font-weight: 500;
  }

  .woocommerce-cart-form__cart-item td.product-price,
  .woocommerce-cart-form__cart-item td.product-quantity,
  .woocommerce-cart-form__cart-item td.product-subtotal,
  .woocommerce-cart-form__cart-item td.product-remove {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: left;
    gap: 16px;
  }

  .woocommerce-cart-form__cart-item td.product-quantity .form-group,
  .woocommerce-cart-form__cart-item td.product-quantity .qty {
    margin-left: auto;
  }

  .woocommerce-cart-form__cart-item td.product-remove {
    justify-content: flex-start;
  }

  .woocommerce-cart-form__cart-item td.product-remove .remove {
    margin-left: auto;
  }
}

/* Contact Modal Styles */
.contact-modal {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  z-index: 1100;
  overflow-y: auto;
}

.contact-modal.is-active {
  display: flex;
}

.contact-modal__panel {
  width: 100%;
  max-width: 640px;
  background: #fff;
  padding: 30px;
  border-radius: 6px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
  position: relative;
}

.contact-modal .btn-close {
    position: absolute;
    top: 15px;
    right: 15px;
}

/* Contact Modal Styles */
.contact-modal {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  z-index: 1100;
  overflow-y: auto;
}

.contact-modal.is-active {
  display: flex;
}

.contact-modal__panel {
  width: 100%;
  max-width: 640px;
  background: #fff;
  padding: 30px;
  border-radius: 6px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
  position: relative;
}

.contact-modal .btn-close {
    position: absolute;
    top: 15px;
    right: 15px;
}

/* Contact Modal Styles */
.contact-modal {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  z-index: 1100;
  overflow-y: auto;
}

.contact-modal.is-active {
  display: flex;
}

.contact-modal__panel {
  width: 100%;
  max-width: 640px;
  background: #fff;
  padding: 30px;
  border-radius: 6px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
  position: relative;
}

.contact-modal .btn-close {
    position: absolute;
    top: 15px;
    right: 15px;
}
