/* Helpers */
.mt-2 {
  margin-top: 2rem !important;
}

.mb-2 {
  margin-bottom: 2rem !important;
}

/* Header */
.elementor-menu-cart__toggle .elementor-button:focus {
  background-color: none;
}

.elementor-menu-cart__wrapper,
.elementor-menu-cart__toggle {
  display: flex;
}

.genxus-header-icons {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 14px;
}

.genxus-header-icons .genxus-header-icon {
  display: inline-flex;
  position: relative;
}

.genxus-header-icons .genxus-header-icon svg {
    width: 24px;
    height: 24px;
    color: var( --e-global-color-61fc373 );
}

.genxus-header-icons .genxus-header-icon .genxus-cart-count {
  position: absolute;
  top: -6px;
  right: -8px;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  border-radius: 999px;
  background: var( --e-global-color-687b95f );
  color: var( --e-global-color-d4d11c0 );
  font-weight: 600;
  font-size: 11px;
  line-height: 18px;
  text-align: center;
}

.genxus-search {
  flex: 0 1 600px;
  max-width: 600px;
}

.genxus-search form {
  height: 38px;
  display: flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  border: 1px solid var( --e-global-color-bb593ab );
  border-radius: 12px;
  padding: 2px 8px 2px 12px;
  width: 100%;
}

.genxus-search input[type="search"] {
  flex: 1;
  outline: none;
  min-width: 0;
  background: transparent !important;
  padding: 0 !important;
  border: 0 !important;
}

.genxus-search svg {
    width: 17px;
    height: 17px;
    color: var( --e-global-color-61fc373 );
}

.genxus-search button {
  width: 30px;
  height: 30px;
  border: 0;
  padding: 0 !important;
  background: transparent;
  border-radius: 999px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.genxus-search button:hover {
  background: transparent !important;
}

/* Product Archive and Loop */

.woocommerce .woocommerce-breadcrumb {
	margin: 0;
}

.loop-product-title .product_title a {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Cart */
.woocommerce-error:focus-visible, 
.woocommerce-info:focus-visible, 
.woocommerce-message:focus-visible {
  outline: none;
}

/* My Account */
.woocommerce-MyAccount-content-wrapper {
  padding: 20px;
  background-color: #fff;
  border-color: #d5d8dc;
  border-radius: 10px;
  border-style: solid;
  border-width: 1px
}

.woocommerce-MyAccount-content-wrapper .elementor-button {
  color: var(--forms-buttons-normal-text-color,#fff) !important;
}


/* Single Product */

.woocommerce div.product .woocommerce-tabs ul.tabs li {
  border-left: 0;
  border-right: 0;
  border-bottom: 1px solid;
  border-top: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  padding: 1.2em 2em;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a:focus-visible {
  outline: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
  color: var( --e-global-color-61fc373 );
}

.woocommerce div.product.elementor .woocommerce-tabs .panel {
  padding-left: 0;
  padding-right: 0;
}

.woocommerce-Tabs-panel.entry-content ol,
.woocommerce-Tabs-panel.entry-content ul {
  margin: 0 0 18px 0 !important;
  padding-left: 24px !important;
  padding-inline-start: 24px !important;
  list-style-position: outside !important;
}

.woocommerce-Tabs-panel.entry-content ul {
  padding-left: 16px !important;
  padding-inline-start: 16px !important;
}

.woocommerce-Tabs-panel.entry-content li {
  margin: 0 !important;
  line-height: 1.6;
}

.woocommerce-Tabs-panel.entry-content ol {
  list-style-type: decimal;
}

.woocommerce-Tabs-panel.entry-content ul {
  list-style-type: disc;
}

.woocommerce-Tabs-panel.entry-content p + ol,
.woocommerce-Tabs-panel.entry-content p + ul {
  margin-top: 8px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
  text-align: center;
}

/* Mobile */
@media (max-width: 767px) {
  .woocommerce-Tabs-panel.entry-content ul,
  .woocommerce-Tabs-panel.entry-content ol {
    margin-left: 18px;
    padding-left: 16px;
  }

  .woocommerce-Tabs-panel.entry-content li {
    font-size: 14px;
    line-height: 1.55;
  }
}

/* Facet WP */

.facet-wrap h6 {
  margin-top: 0;
}

.facet-wrap .facetwp-counter {
  display: none;
}

.facet-wrap .facetwp-facet {
  margin-bottom: 25px;
}

.facet-wrap .facetwp-slider-wrap .noUi-target {
  border: 0;
  background: var( --e-global-color-61fc373 );
}

.facet-wrap .facetwp-slider-wrap .noUi-horizontal {
  height: 4px;
}

.facet-wrap .facetwp-slider-wrap .noUi-connect {
  background: var( --e-global-color-61fc373 );
}

.facet-wrap .facetwp-slider-wrap .noUi-handle {
  border-radius: 999px;
  border: 3px solid var( --e-global-color-61fc373 );
}

.facet-wrap .facetwp-slider-wrap .noUi-horizontal .noUi-handle {
  width: 16px;
  height: 16px;
  top: -6px;
  right: -8px;
}

.facet-wrap .facetwp-type-slider .facetwp-slider-reset,
.facet-wrap .facetwp-type-slider .facetwp-slider-reset:hover {
  color: var(--e-global-color-61fc373);
  padding: 0;
  background: 0;
  box-shadow: none;
  margin-top: 10px;
}

/* FacetWP checkbox - remove default image */
.facet-wrap .facetwp-checkbox {
  position: relative;
  background: none !important;
  padding-left: 24px;
  margin-bottom: 7px;
  cursor: pointer;
  line-height: 22px;
  font-size: 16px;
  color: #374151;
}

/* Box unchecked */
.facet-wrap .facetwp-checkbox::before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  width: 16px;
  height: 16px;
  border: 2px solid var( --e-global-color-bb593ab );
  border-radius: 4px;
  background: #ffffff;
  box-sizing: border-box;
}

/* Checked box */
.facet-wrap .facetwp-checkbox.checked::before {
  border-color: var( --e-global-color-61fc373 );
  background: var( --e-global-color-61fc373 );
}

/* Check icon */
.facet-wrap .facetwp-checkbox.checked::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 5px;
  width: 4px;
  height: 8px;
  border: solid #ffffff;
  border-width: 0 1px 1px 0;
  transform: rotate(45deg);
}

/* Disabled / ghost item */
.facet-wrap .facetwp-checkbox.disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

/* Counter spacing */
.facet-wrap .facetwp-display-value {
  font-size: 15px;
  padding-right: 0;
}

/* Login, Regiter and Lost Password Form Page */
.woocommerce-form-login,
.woocommerce-ResetPassword,
.woocommerce-account.user-logged-out .woocommerce-notices-wrapper,
.woocommerce-lost-password.user-logged-out .elementor-widget-woocommerce-my-account .woocommerce {
  max-width: 600px;
  margin: 0 auto !important;
}

.woocommerce-form-login .form-action {
  display: flex;
  align-content: center;
  justify-content: start;
}

.woocommerce-form-login .form-action .woocommerce-form__label {
  margin: 0;
  display: flex;
  justify-content: center;
  align-content: center;
  align-items: center;
  gap: 5px;
} 