/* Preserve product proportions inside horizontally scaled Showit Post Content. */
body.swth-style-layer .se-wpt-pc .swth-showit-product-proportions {
  width: var(--swth-showit-product-width, 100%) !important;
  transform: scaleX(var(--swth-showit-product-scale-x, 1));
  transform-origin: left top;
}
body.swth-style-layer
  :where(
    .shop-product-button,
    #sticky-cart-bar .sticky-btn,
    .swth-product-sort__submit,
    .swth-product-search__submit,
    .swth-sidebar-filter__submit
  ) {
  border-radius: var(--swth-style-radius) !important;
}
body.swth-style-layer
  :is(
    .shop-product-button,
    .single_add_to_cart_button,
    .woocommerce a.button,
    .woocommerce button.button,
    .woocommerce input.button,
    .woocommerce #respond input#submit,
    .woocommerce .checkout-button,
    .woocommerce .wc-forward,
    .woocommerce-page a.button,
    .woocommerce-page button.button,
    .woocommerce-page input.button,
    .woocommerce-page #respond input#submit,
    .woocommerce-page .checkout-button,
    .woocommerce-page .wc-forward,
    .wc-block-components-button,
    .wc-block-components-product-button__button,
    .wc-block-grid__product-add-to-cart a,
    .wc-block-grid__product-add-to-cart button,
    .wp-block-button.wc-block-components-product-button .wp-block-button__link
  ):not(.live-view-button):not(.sdsc-button):not(
    .swth-product-search__submit
  ):not(.swth-sidebar-filter__submit) {
  display: inline-flex !important;
  box-sizing: border-box !important;
  align-items: center !important;
  justify-content: var(--swth-price-button-content-justify) !important;
  gap: 0.45em !important;
  min-height: 40px;
  padding: 0 16px !important;
  border-style: solid !important;
  border-color: var(--swth-price-button-border) !important;
  border-width: var(--swth-price-button-border-widths) !important;
  border-radius: var(--swth-price-button-radius) !important;
  background: var(--swth-price-button-background) !important;
  color: var(--swth-price-button-filled-text) !important;
  text-align: var(--swth-price-button-text-align) !important;
  text-decoration: none !important;
  font-family: var(--swth-price-button-font-family) !important;
  font-size: var(--swth-price-button-font-size) !important;
  font-weight: var(--swth-price-button-font-weight) !important;
  letter-spacing: var(--swth-price-button-letter-spacing) !important;
  text-transform: var(--swth-price-button-text-transform) !important;
  line-height: 1.1 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease;
}
body.swth-price-button-has-width
  :is(
    .shop-product-button,
    .single_add_to_cart_button,
    .woocommerce a.button,
    .woocommerce button.button,
    .woocommerce input.button,
    .woocommerce #respond input#submit,
    .woocommerce .checkout-button,
    .woocommerce .wc-forward,
    .woocommerce-page a.button,
    .woocommerce-page button.button,
    .woocommerce-page input.button,
    .woocommerce-page #respond input#submit,
    .woocommerce-page .checkout-button,
    .woocommerce-page .wc-forward,
    .wc-block-components-button,
    .wc-block-components-product-button__button,
    .wc-block-grid__product-add-to-cart a,
    .wc-block-grid__product-add-to-cart button,
    .wp-block-button.wc-block-components-product-button .wp-block-button__link
  ):not(.live-view-button):not(.sdsc-button):not(
    .swth-product-search__submit
  ):not(.swth-sidebar-filter__submit),
body.swth-price-button-has-height
  :is(
    .shop-product-button,
    .single_add_to_cart_button,
    .woocommerce a.button,
    .woocommerce button.button,
    .woocommerce input.button,
    .woocommerce #respond input#submit,
    .woocommerce .checkout-button,
    .woocommerce .wc-forward,
    .woocommerce-page a.button,
    .woocommerce-page button.button,
    .woocommerce-page input.button,
    .woocommerce-page #respond input#submit,
    .woocommerce-page .checkout-button,
    .woocommerce-page .wc-forward,
    .wc-block-components-button,
    .wc-block-components-product-button__button,
    .wc-block-grid__product-add-to-cart a,
    .wc-block-grid__product-add-to-cart button,
    .wp-block-button.wc-block-components-product-button .wp-block-button__link
  ):not(.live-view-button):not(.sdsc-button):not(
    .swth-product-search__submit
  ):not(.swth-sidebar-filter__submit) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: var(--swth-price-button-content-justify) !important;
}
body.swth-price-button-has-width
  :is(
    .single_add_to_cart_button,
    .woocommerce a.button,
    .woocommerce button.button,
    .woocommerce input.button,
    .woocommerce #respond input#submit,
    .woocommerce .checkout-button,
    .woocommerce .wc-forward,
    .woocommerce-page a.button,
    .woocommerce-page button.button,
    .woocommerce-page input.button,
    .woocommerce-page #respond input#submit,
    .woocommerce-page .checkout-button,
    .woocommerce-page .wc-forward,
    .wc-block-components-button,
    .wc-block-components-product-button__button,
    .wc-block-grid__product-add-to-cart a,
    .wc-block-grid__product-add-to-cart button,
    .wp-block-button.wc-block-components-product-button .wp-block-button__link
  ):not(.live-view-button):not(.sdsc-button):not(
    .swth-product-search__submit
  ):not(.swth-sidebar-filter__submit) {
  width: var(--swth-price-button-width) !important;
}
body.swth-price-button-has-height
  :is(
    .shop-product-button,
    .single_add_to_cart_button,
    .woocommerce a.button,
    .woocommerce button.button,
    .woocommerce input.button,
    .woocommerce #respond input#submit,
    .woocommerce .checkout-button,
    .woocommerce .wc-forward,
    .woocommerce-page a.button,
    .woocommerce-page button.button,
    .woocommerce-page input.button,
    .woocommerce-page #respond input#submit,
    .woocommerce-page .checkout-button,
    .woocommerce-page .wc-forward,
    .wc-block-components-button,
    .wc-block-components-product-button__button,
    .wc-block-grid__product-add-to-cart a,
    .wc-block-grid__product-add-to-cart button,
    .wp-block-button.wc-block-components-product-button .wp-block-button__link
  ):not(.live-view-button):not(.sdsc-button):not(
    .swth-product-search__submit
  ):not(.swth-sidebar-filter__submit) {
  min-height: var(--swth-price-button-min-height) !important;
}
body.swth-style-layer .live-view-button {
  display: inline-flex;
  box-sizing: border-box !important;
  align-items: center;
  justify-content: var(--swth-live-preview-button-content-justify) !important;
  gap: 0.45em;
  min-height: 40px;
  margin: 0 !important;
  padding: 0 15px;
  border-style: solid !important;
  border-color: var(--swth-live-preview-button-border) !important;
  border-width: var(--swth-live-preview-button-border-widths) !important;
  border-radius: var(--swth-live-preview-button-radius) !important;
  background: var(--swth-live-preview-button-background) !important;
  color: var(--swth-live-preview-button-filled-text) !important;
  text-align: var(--swth-live-preview-button-text-align) !important;
  text-decoration: none !important;
  font-family: var(--swth-live-preview-button-font-family) !important;
  font-size: var(--swth-live-preview-button-font-size) !important;
  font-weight: var(--swth-live-preview-button-font-weight) !important;
  letter-spacing: var(--swth-live-preview-button-letter-spacing) !important;
  text-transform: var(--swth-live-preview-button-text-transform) !important;
  line-height: 1.1;
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease;
}
body.swth-style-layer .shop-button-price-label,
body.swth-style-layer .shop-product-button .shop-button-price-label *,
body.swth-style-layer
  .shop-product-button
  .shop-button-price-label
  .woocommerce-Price-amount,
body.swth-style-layer
  .shop-product-button
  .shop-button-price-label
  .woocommerce-Price-currencySymbol,
body.swth-style-layer .shop-product-button .shop-button-price-label bdi,
body.swth-style-layer .live-view-button > span,
body.swth-style-layer .live-view-button > span * {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  font-style: inherit !important;
  text-transform: inherit !important;
  font-feature-settings: inherit !important;
  font-variant: inherit !important;
}
body.swth-live-preview-button-has-width .live-view-button {
  width: var(--swth-live-preview-button-width) !important;
}
body.swth-live-preview-button-has-height .live-view-button {
  min-height: var(--swth-live-preview-button-min-height) !important;
}
body.swth-style-layer
  :is(.shop-product-button, .single_add_to_cart_button, .live-view-button)
  .swth-button-icon,
body.swth-style-layer
  :is(.shop-product-button, .single_add_to_cart_button, .live-view-button)
  > svg,
body.swth-style-layer .live-view-button svg {
  display: block;
  width: 1.32em;
  height: 1.32em;
  flex: 0 0 auto;
  align-self: center;
  fill: none;
  stroke: currentColor;
  stroke-width: var(--swth-price-button-icon-stroke-width, 1.8) !important;
  overflow: visible;
  shape-rendering: geometricPrecision;
  transform: none;
}
body.swth-style-layer
  :is(.shop-product-button, .single_add_to_cart_button)
  > .swth-button-icon {
  order: var(--swth-price-button-icon-order) !important;
}
body.swth-style-layer .live-view-button > .swth-button-icon {
  order: var(--swth-live-preview-button-icon-order) !important;
}
body.swth-style-layer .live-view-button :is(.swth-button-icon, svg) {
  stroke-width: var(--swth-live-preview-button-icon-stroke-width, 1.8) !important;
}
body.swth-style-layer
  :is(.shop-product-button, .single_add_to_cart_button, .live-view-button)
  .swth-button-icon--cart {
  transform: translateY(-0.08em);
}
body.swth-style-layer .swth-screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  white-space: nowrap !important;
}
body.swth-style-layer .sdsc-root {
  --cart-font: var(--swth-side-cart-font-family);
  --cart-heading: var(--swth-side-cart-title-font-family);
  --cart-title-size: var(--swth-side-cart-title-size);
  --cart-title-mobile-size: var(--swth-side-cart-title-mobile-size);
  --cart-title-weight: var(--swth-side-cart-title-weight);
  --cart-title-line-height: var(--swth-side-cart-title-line-height);
  --cart-title-letter-spacing: var(--swth-side-cart-title-letter-spacing);
  --cart-title-transform: var(--swth-side-cart-title-transform);
  --cart-product-font: var(--swth-side-cart-product-font-family);
  --cart-product-size: var(--swth-side-cart-product-size);
  --cart-product-weight: var(--swth-side-cart-product-weight);
  --cart-product-line-height: var(--swth-side-cart-product-line-height);
  --cart-product-letter-spacing: var(--swth-side-cart-product-letter-spacing);
  --cart-product-transform: var(--swth-side-cart-product-transform);
  --cart-meta-font: var(--swth-side-cart-meta-font-family);
  --cart-meta-size: var(--swth-side-cart-meta-size);
  --cart-meta-weight: var(--swth-side-cart-meta-weight);
  --cart-meta-line-height: var(--swth-side-cart-meta-line-height);
  --cart-meta-letter-spacing: var(--swth-side-cart-meta-letter-spacing);
  --cart-meta-transform: var(--swth-side-cart-meta-transform);
  --cart-price-font: var(--swth-side-cart-price-font-family);
  --cart-price-size: var(--swth-side-cart-price-size);
  --cart-price-weight: var(--swth-side-cart-price-weight);
  --cart-price-letter-spacing: var(--swth-side-cart-price-letter-spacing);
  --cart-subtotal-label-size: var(--swth-side-cart-subtotal-label-size);
  --cart-subtotal-label-weight: var(--swth-side-cart-subtotal-label-weight);
  --cart-subtotal-label-letter-spacing: var(
    --swth-side-cart-subtotal-label-letter-spacing
  );
  --cart-subtotal-label-transform: var(
    --swth-side-cart-subtotal-label-transform
  );
  --cart-total-size: var(--swth-side-cart-total-size);
  --cart-total-weight: var(--swth-side-cart-total-weight);
  --cart-total-letter-spacing: var(--swth-side-cart-total-letter-spacing);
  --cart-button-font: var(--swth-side-cart-button-font-family);
  --cart-button-size: var(--swth-side-cart-button-size);
  --cart-button-weight: var(--swth-side-cart-button-weight);
  --cart-button-line-height: var(--swth-side-cart-button-line-height);
  --cart-button-letter-spacing: var(--swth-side-cart-button-letter-spacing);
  --cart-button-transform: var(--swth-side-cart-button-transform);
  --cart-remove-font: var(--swth-side-cart-remove-font-family);
  --cart-remove-size: var(--swth-side-cart-remove-size);
  --cart-remove-weight: var(--swth-side-cart-remove-weight);
  --cart-remove-letter-spacing: var(--swth-side-cart-remove-letter-spacing);
  --cart-remove-transform: var(--swth-side-cart-remove-transform);
  --cart-link-font: var(--swth-side-cart-link-font-family);
  --cart-link-size: var(--swth-side-cart-link-size);
  --cart-link-weight: var(--swth-side-cart-link-weight);
  --cart-link-line-height: var(--swth-side-cart-link-line-height);
  --cart-link-letter-spacing: var(--swth-side-cart-link-letter-spacing);
  --cart-link-transform: var(--swth-side-cart-link-transform);
  --cart-dark: var(--swth-side-cart-text);
  --cart-body: var(--swth-side-cart-text);
  --cart-muted: var(--swth-side-cart-text);
  --cart-accent: var(--swth-side-cart-primary);
  --cart-hover: var(--swth-side-cart-secondary);
  --cart-line: var(--swth-side-cart-border);
  --cart-button-bg: var(--swth-side-cart-button-bg);
  --cart-button-text: var(--swth-side-cart-button-text);
  --cart-button-border: var(--swth-side-cart-button-border);
  --cart-button-hover-bg: var(--swth-side-cart-button-hover-bg);
  --cart-button-hover-text: var(--swth-side-cart-button-hover-text);
  --cart-button-hover-border: var(--swth-side-cart-button-hover-border);
  --cart-product-link: var(--swth-side-cart-product-link);
  --cart-link: var(--swth-side-cart-link);
  --cart-link-hover: var(--swth-side-cart-link-hover);
  --cart-bubble-bg: var(--swth-side-cart-bubble-bg);
  --cart-bubble-icon: var(--swth-side-cart-bubble-icon);
  --cart-bubble-border: var(--swth-side-cart-bubble-border);
  --cart-bubble-count-bg: var(--swth-side-cart-bubble-count-bg);
  --cart-bubble-count-text: var(--swth-side-cart-bubble-count-text);
  --cart-close-size: var(--swth-side-cart-close-size);
  --cart-close-icon-size: var(--swth-side-cart-close-icon-size);
  --cart-close-bg: var(--swth-side-cart-close-bg);
  --cart-close-icon: var(--swth-side-cart-close-icon);
  --cart-close-border: var(--swth-side-cart-close-border);
  --cart-close-border-width: var(--swth-side-cart-close-border-width);
  --cart-close-radius: var(--swth-side-cart-close-radius);
  --cart-close-hover-bg: var(--swth-side-cart-close-hover-bg);
  --cart-close-hover-icon: var(--swth-side-cart-close-hover-icon);
  --cart-close-hover-border: var(--swth-side-cart-close-hover-border);
  --cart-tax-note-font: var(--swth-side-cart-tax-note-font-family);
  --cart-tax-note-color: var(--swth-side-cart-tax-note-color);
  --cart-tax-note-size: var(--swth-side-cart-tax-note-size);
  --cart-tax-note-weight: var(--swth-side-cart-tax-note-weight);
  --cart-tax-note-line-height: var(--swth-side-cart-tax-note-line-height);
  --cart-tax-note-letter-spacing: var(--swth-side-cart-tax-note-letter-spacing);
  --cart-tax-note-transform: var(--swth-side-cart-tax-note-transform);
  --cart-tax-note-align: var(--swth-side-cart-tax-note-align);
}
body.swth-style-layer .sdsc-root {
  --cart-price-line-height: var(--swth-side-cart-price-line-height);
  --cart-price-transform: var(--swth-side-cart-price-transform);
  --cart-subtotal-label-font: var(--swth-side-cart-subtotal-label-font-family);
  --cart-subtotal-label-line-height: var(
    --swth-side-cart-subtotal-label-line-height
  );
  --cart-total-line-height: var(--swth-side-cart-total-line-height);
  --cart-total-transform: var(--swth-side-cart-total-transform);
  --cart-remove-line-height: var(--swth-side-cart-remove-line-height);
  --cart-empty-font: var(--swth-side-cart-empty-font-family);
  --cart-empty-size: var(--swth-side-cart-empty-size);
  --cart-empty-weight: var(--swth-side-cart-empty-weight);
  --cart-empty-line-height: var(--swth-side-cart-empty-line-height);
  --cart-empty-letter-spacing: var(--swth-side-cart-empty-letter-spacing);
  --cart-empty-transform: var(--swth-side-cart-empty-transform);
  --cart-notice-font: var(--swth-side-cart-notice-font-family);
  --cart-notice-size: var(--swth-side-cart-notice-size);
  --cart-notice-weight: var(--swth-side-cart-notice-weight);
  --cart-notice-line-height: var(--swth-side-cart-notice-line-height);
  --cart-notice-letter-spacing: var(--swth-side-cart-notice-letter-spacing);
  --cart-notice-transform: var(--swth-side-cart-notice-transform);
}
body.swth-style-layer .sdsc-root {
  --cart-variation-font: var(--swth-side-cart-variation-font-family);
  --cart-variation-size: var(--swth-side-cart-variation-font-size);
  --cart-variation-weight: var(--swth-side-cart-variation-font-weight);
  --cart-variation-label-weight: var(
    --swth-side-cart-variation-label-font-weight
  );
  --cart-variation-letter-spacing: var(
    --swth-side-cart-variation-letter-spacing
  );
  --cart-variation-label: var(--swth-side-cart-variation-label-color);
  --cart-variation-text: var(--swth-side-cart-variation-text-color);
  --cart-variation-bg: var(--swth-side-cart-variation-background);
  --cart-variation-border: var(--swth-side-cart-variation-border);
  --cart-variation-focus-border: var(--swth-side-cart-variation-focus-border);
  --cart-variation-arrow: var(--swth-side-cart-variation-arrow-color);
  --cart-variation-disabled-bg: var(
    --swth-side-cart-variation-disabled-background
  );
  --cart-variation-min-height: var(--swth-side-cart-variation-min-height);
  --cart-variation-border-width: var(--swth-side-cart-variation-border-width);
  --cart-variation-radius: var(--swth-side-cart-variation-radius);
}
body.swth-style-layer .sdsc-drawer {
  border-radius: var(--swth-side-cart-radius) 0 0 var(--swth-side-cart-radius) !important;
  overflow: hidden !important;
}
body.swth-style-layer .sdsc-button {
  border-radius: var(--swth-side-cart-radius) !important;
  font-family: var(--cart-button-font) !important;
}
body.swth-style-layer .sdsc-count {
  width: 22px !important;
  min-width: 22px !important;
  height: 22px !important;
  padding: 0 !important;
  border-radius: 999px !important;
}
body.swth-style-layer .sdsc-root {
  --cart-bubble-count-letter-spacing: var(
    --swth-side-cart-bubble-count-letter-spacing
  );
}
body.swth-style-layer #sticky-cart-bar {
  --sticky-bg: var(--swth-sticky-cart-bg) !important;
  --sticky-accent: var(--swth-sticky-cart-primary) !important;
  --sticky-accent-hover: var(--swth-sticky-cart-secondary) !important;
  --sticky-title-color: var(--swth-sticky-cart-title-color) !important;
  --sticky-title-size: var(--swth-sticky-cart-title-size) !important;
  --sticky-title-weight: var(--swth-sticky-cart-title-weight) !important;
  --sticky-primary-bg: var(
    --swth-sticky-cart-price-button-background
  ) !important;
  --sticky-primary-text: var(--swth-sticky-cart-price-button-text) !important;
  --sticky-primary-border: var(
    --swth-sticky-cart-price-button-border
  ) !important;
  --sticky-primary-hover-bg: var(
    --swth-sticky-cart-price-button-hover-background
  ) !important;
  --sticky-primary-hover-text: var(
    --swth-sticky-cart-price-button-hover-text
  ) !important;
  --sticky-primary-hover-border: var(
    --swth-sticky-cart-price-button-hover-border
  ) !important;
  --sticky-primary-font: var(
    --swth-sticky-cart-price-button-font-family
  ) !important;
  --sticky-primary-size: var(
    --swth-sticky-cart-price-button-font-size
  ) !important;
  --sticky-primary-weight: var(
    --swth-sticky-cart-price-button-font-weight
  ) !important;
  --sticky-primary-letter: var(
    --swth-sticky-cart-price-button-letter-spacing
  ) !important;
  --sticky-primary-transform: var(
    --swth-sticky-cart-price-button-text-transform
  ) !important;
  --sticky-primary-height: var(
    --swth-sticky-cart-price-button-min-height
  ) !important;
  --sticky-primary-padding: var(
    --swth-sticky-cart-price-button-padding
  ) !important;
  --sticky-primary-radius: var(
    --swth-sticky-cart-price-button-border-radius
  ) !important;
  --sticky-primary-justify: var(
    --swth-sticky-cart-price-button-content-justify
  ) !important;
  --sticky-primary-text-align: var(
    --swth-sticky-cart-price-button-text-align
  ) !important;
  --sticky-primary-icon-order: var(
    --swth-sticky-cart-price-button-icon-order
  ) !important;
  --sticky-primary-icon-stroke-width: var(
    --swth-sticky-cart-price-button-icon-stroke-width
  ) !important;
  --sticky-secondary-bg: var(
    --swth-sticky-cart-live-preview-button-background
  ) !important;
  --sticky-secondary-text: var(
    --swth-sticky-cart-live-preview-button-text
  ) !important;
  --sticky-secondary-border: var(
    --swth-sticky-cart-live-preview-button-border
  ) !important;
  --sticky-secondary-hover-bg: var(
    --swth-sticky-cart-live-preview-button-hover-background
  ) !important;
  --sticky-secondary-hover-text: var(
    --swth-sticky-cart-live-preview-button-hover-text
  ) !important;
  --sticky-secondary-hover-border: var(
    --swth-sticky-cart-live-preview-button-hover-border
  ) !important;
  --sticky-secondary-font: var(
    --swth-sticky-cart-live-preview-button-font-family
  ) !important;
  --sticky-secondary-size: var(
    --swth-sticky-cart-live-preview-button-font-size
  ) !important;
  --sticky-secondary-weight: var(
    --swth-sticky-cart-live-preview-button-font-weight
  ) !important;
  --sticky-secondary-letter: var(
    --swth-sticky-cart-live-preview-button-letter-spacing
  ) !important;
  --sticky-secondary-transform: var(
    --swth-sticky-cart-live-preview-button-text-transform
  ) !important;
  --sticky-secondary-height: var(
    --swth-sticky-cart-live-preview-button-min-height
  ) !important;
  --sticky-secondary-padding: var(
    --swth-sticky-cart-live-preview-button-padding
  ) !important;
  --sticky-secondary-radius: var(
    --swth-sticky-cart-live-preview-button-border-radius
  ) !important;
  --sticky-secondary-justify: var(
    --swth-sticky-cart-live-preview-button-content-justify
  ) !important;
  --sticky-secondary-text-align: var(
    --swth-sticky-cart-live-preview-button-text-align
  ) !important;
  --sticky-secondary-icon-order: var(
    --swth-sticky-cart-live-preview-button-icon-order
  ) !important;
  --sticky-secondary-icon-stroke-width: var(
    --swth-sticky-cart-live-preview-button-icon-stroke-width
  ) !important;
  color: var(--swth-sticky-cart-text) !important;
  border-top-color: var(--swth-sticky-cart-border) !important;
}
body.swth-style-layer #sticky-cart-bar {
  --sticky-primary-border-widths: var(
    --swth-sticky-cart-price-button-border-widths
  ) !important;
  --sticky-secondary-border-widths: var(
    --swth-sticky-cart-live-preview-button-border-widths
  ) !important;
}
body.swth-style-layer #sticky-cart-bar {
  --sticky-title-letter-spacing: var(
    --swth-sticky-cart-title-letter-spacing
  ) !important;
}
body.swth-style-layer #sticky-cart-bar .sticky-title {
  color: var(--swth-sticky-cart-title-color) !important;
  font-family: var(--swth-sticky-cart-title-font-family) !important;
  font-size: var(--swth-sticky-cart-title-size) !important;
  font-weight: var(--swth-sticky-cart-title-weight) !important;
  letter-spacing: var(--swth-sticky-cart-title-letter-spacing) !important;
}
body.swth-style-layer #sticky-cart-bar .sticky-info img {
  box-sizing: border-box !important;
  width: var(--swth-sticky-cart-thumbnail-size) !important;
  height: var(--swth-sticky-cart-thumbnail-size) !important;
  flex: 0 0 var(--swth-sticky-cart-thumbnail-size) !important;
  border-width: var(--swth-sticky-cart-thumbnail-border-width) !important;
  border-style: solid !important;
  border-color: var(--swth-sticky-cart-thumbnail-border-color) !important;
}
body.swth-style-layer #sticky-cart-bar .sticky-btn-primary {
  border-radius: var(--swth-sticky-cart-price-button-border-radius) !important;
}
body.swth-style-layer #sticky-cart-bar .sticky-btn-secondary {
  border-radius: var(
    --swth-sticky-cart-live-preview-button-border-radius
  ) !important;
}
/* On phones, use the product-card button tokens in the compact purchase bar.
 * The bar keeps its two-action layout; desktop and tablet sticky controls remain independent. */
@media (max-width: 767px) {
  body.swth-style-layer #sticky-cart-bar {
    --sticky-primary-bg: var(--swth-price-button-background) !important;
    --sticky-primary-text: var(--swth-price-button-filled-text) !important;
    --sticky-primary-border: var(--swth-price-button-border) !important;
    --sticky-primary-border-widths: var(--swth-price-button-border-widths) !important;
    --sticky-primary-hover-bg: var(--swth-price-button-hover-bg) !important;
    --sticky-primary-hover-text: var(--swth-price-button-hover-text) !important;
    --sticky-primary-hover-border: var(--swth-price-button-hover-border) !important;
    --sticky-primary-font: var(--swth-price-button-font-family) !important;
    --sticky-primary-size: var(--swth-price-button-font-size) !important;
    --sticky-primary-weight: var(--swth-price-button-font-weight) !important;
    --sticky-primary-letter: var(--swth-price-button-letter-spacing) !important;
    --sticky-primary-transform: var(--swth-price-button-text-transform) !important;
    --sticky-primary-height: 40px !important;
    --sticky-primary-padding: 0 16px !important;
    --sticky-primary-radius: var(--swth-price-button-radius) !important;
    --sticky-primary-justify: var(--swth-price-button-content-justify) !important;
    --sticky-primary-text-align: var(--swth-price-button-text-align) !important;
    --sticky-primary-icon-order: var(--swth-price-button-icon-order) !important;
    --sticky-primary-icon-stroke-width: var(--swth-price-button-icon-stroke-width) !important;
    --sticky-secondary-bg: var(--swth-live-preview-button-background) !important;
    --sticky-secondary-text: var(--swth-live-preview-button-filled-text) !important;
    --sticky-secondary-border: var(--swth-live-preview-button-border) !important;
    --sticky-secondary-border-widths: var(--swth-live-preview-button-border-widths) !important;
    --sticky-secondary-hover-bg: var(--swth-live-preview-button-hover-bg) !important;
    --sticky-secondary-hover-text: var(--swth-live-preview-button-hover-text) !important;
    --sticky-secondary-hover-border: var(--swth-live-preview-button-hover-border) !important;
    --sticky-secondary-font: var(--swth-live-preview-button-font-family) !important;
    --sticky-secondary-size: var(--swth-live-preview-button-font-size) !important;
    --sticky-secondary-weight: var(--swth-live-preview-button-font-weight) !important;
    --sticky-secondary-letter: var(--swth-live-preview-button-letter-spacing) !important;
    --sticky-secondary-transform: var(--swth-live-preview-button-text-transform) !important;
    --sticky-secondary-height: 40px !important;
    --sticky-secondary-padding: 0 12px !important;
    --sticky-secondary-radius: var(--swth-live-preview-button-radius) !important;
    --sticky-secondary-justify: var(--swth-live-preview-button-content-justify) !important;
    --sticky-secondary-text-align: var(--swth-live-preview-button-text-align) !important;
    --sticky-secondary-icon-order: var(--swth-live-preview-button-icon-order) !important;
    --sticky-secondary-icon-stroke-width: var(--swth-live-preview-button-icon-stroke-width) !important;
  }
  body.swth-style-layer #sticky-cart-bar .sticky-btn-primary {
    border-radius: var(--swth-price-button-radius) !important;
  }
  body.swth-style-layer #sticky-cart-bar .sticky-btn-secondary {
    border-radius: var(--swth-live-preview-button-radius) !important;
  }
  body.swth-style-layer.swth-price-button-has-height #sticky-cart-bar {
    --sticky-primary-height: var(--swth-price-button-min-height) !important;
  }
  body.swth-style-layer.swth-live-preview-button-has-height #sticky-cart-bar {
    --sticky-secondary-height: var(--swth-live-preview-button-min-height) !important;
  }
}
body.swth-style-layer .swth-product-label-badge {
  display: inline-flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  gap: 0.38em;
  min-height: var(--swth-badge-min-height);
  padding: 6px 10px;
  border: 1px solid var(--swth-badge-border);
  border-radius: var(--swth-badge-radius);
  background: var(--swth-badge-background);
  color: var(--swth-badge-foreground);
  font-family: var(--swth-badge-font-family);
  font-size: var(--swth-badge-font-size);
  font-weight: var(--swth-badge-font-weight);
  line-height: 1;
  letter-spacing: var(--swth-badge-letter-spacing, 0.08em);
  text-align: center;
  text-transform: uppercase;
}
body.swth-style-layer .swth-product-label-badge__text {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  text-align: center;
}
body.swth-style-layer .swth-badge-icon {
  display: block;
  width: 1.15em;
  height: 1.15em;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: var(--swth-badge-icon-stroke-width, 1.8) !important;
  overflow: visible;
  shape-rendering: geometricPrecision;
}
body.swth-style-layer .swth-badge-icon--cart {
  transform: translateY(-0.06em);
}
body.swth-style-layer .swth-product-label-badge--overlay {
  position: absolute;
  z-index: 5;
  top: 12px;
  left: 12px;
}
body.swth-style-layer .showit-product-badges {
  display: flex;
  flex-wrap: wrap;
  gap: var(--swth-benefit-badges-gap) !important;
}
body.swth-style-layer .showit-product-badges__item {
  display: inline-flex;
  align-items: center;
  gap: var(--swth-benefit-badges-item-gap) !important;
  box-sizing: border-box !important;
  padding: var(--swth-benefit-badges-padding-y)
    var(--swth-benefit-badges-padding-x) !important;
  border: var(--swth-benefit-badges-border-width) solid
    var(--swth-benefit-badges-border-color) !important;
  border-radius: var(--swth-benefit-badges-border-radius) !important;
  background: var(--swth-benefit-badges-bg) !important;
  color: var(--swth-benefit-badges-text) !important;
  font-family: var(--swth-benefit-badges-font-family) !important;
  font-size: var(--swth-benefit-badges-font-size) !important;
  font-weight: var(--swth-benefit-badges-font-weight) !important;
  line-height: 1.35 !important;
  letter-spacing: var(--swth-benefit-badges-letter-spacing) !important;
  text-transform: var(--swth-benefit-badges-text-transform) !important;
}
body.swth-style-layer .showit-product-badges__text {
  color: inherit !important;
  font: inherit !important;
  letter-spacing: inherit !important;
  text-transform: inherit !important;
}
body.swth-style-layer .showit-product-badges__icon {
  display: inline-flex;
  width: var(--swth-benefit-badges-icon-size) !important;
  height: var(--swth-benefit-badges-icon-size) !important;
  flex: 0 0 var(--swth-benefit-badges-icon-size) !important;
  color: inherit !important;
}
body.swth-style-layer .showit-product-badges__icon svg {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  color: inherit !important;
  stroke: currentColor !important;
  stroke-width: var(--swth-benefit-badges-icon-stroke-width, 1.8) !important;
}
body.swth-style-layer .showit-product-button-note {
  color: var(--swth-style-text);
  letter-spacing: var(--swth-product-button-note-letter-spacing, 0) !important;
}
body.swth-style-layer.single-product
  .woocommerce-product-details__short-description {
  margin-bottom: 0 !important;
  padding-bottom: 32px !important;
}
body.swth-style-layer.single-product
  .woocommerce-product-details__short-description
  p:last-child {
  margin-bottom: 0 !important;
}
body.swth-style-layer.single-product
  .woocommerce-product-details__short-description
  + .showit-product-badges {
  margin-top: 0 !important;
}
body.swth-style-layer.single-product .showit-product-badges {
  margin: 0 0 34px !important;
}
body.swth-style-layer.single-product .showit-product-badges + form.cart {
  margin-top: 0 !important;
}
@media (max-width: 767px) {
  body.swth-style-layer .showit-product-badges {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: var(--swth-benefit-badges-gap-mobile) !important;
  }
  body.swth-style-layer .showit-product-badges__item {
    min-width: 0;
    flex: 1 1 0;
    justify-content: center;
    gap: var(--swth-benefit-badges-item-gap-mobile) !important;
    padding-left: min(var(--swth-benefit-badges-padding-x), 6px) !important;
    padding-right: min(var(--swth-benefit-badges-padding-x), 6px) !important;
    font-size: var(--swth-benefit-badges-font-size-mobile) !important;
    text-align: center;
  }
  body.swth-style-layer .showit-product-badges__text {
    min-width: 0;
    overflow-wrap: break-word;
    word-break: normal;
  }
  body.swth-style-layer .showit-product-badges__icon {
    width: var(--swth-benefit-badges-icon-size-mobile) !important;
    height: var(--swth-benefit-badges-icon-size-mobile) !important;
    flex-basis: var(--swth-benefit-badges-icon-size-mobile) !important;
  }
}
body.swth-style-layer.single-product form.cart {
  margin-top: 0 !important;
  margin-bottom: 12px !important;
}
body.swth-style-layer.single-product .showit-product-button-note {
  margin-top: 12px !important;
  color: var(--swth-style-text) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  letter-spacing: var(--swth-product-button-note-letter-spacing, 0) !important;
  opacity: 0.68;
}
body.swth-style-layer .showit-product-description {
  letter-spacing: var(
    --swth-product-description-letter-spacing,
    inherit
  ) !important;
}
body.swth-style-layer
  .showit-product-description
  :where(p, li, h1, h2, h3, h4, h5, h6, a, strong, em, span) {
  letter-spacing: inherit !important;
}
body.swth-style-layer .showit-product-category {
  letter-spacing: var(
    --swth-product-category-shortcode-letter-spacing,
    inherit
  ) !important;
}
body.swth-style-layer .showit-product-category :where(a, span) {
  letter-spacing: inherit !important;
}
body.swth-style-layer
  :is(
    .shop-product-button,
    .single_add_to_cart_button,
    .woocommerce a.button,
    .woocommerce button.button,
    .woocommerce input.button,
    .woocommerce #respond input#submit,
    .woocommerce .checkout-button,
    .woocommerce .wc-forward,
    .woocommerce-page a.button,
    .woocommerce-page button.button,
    .woocommerce-page input.button,
    .woocommerce-page #respond input#submit,
    .woocommerce-page .checkout-button,
    .woocommerce-page .wc-forward,
    .wc-block-components-button,
    .wc-block-components-product-button__button,
    .wc-block-grid__product-add-to-cart a,
    .wc-block-grid__product-add-to-cart button,
    .wp-block-button.wc-block-components-product-button .wp-block-button__link
  ):not(.live-view-button):not(.sdsc-button):not(
    .swth-product-search__submit
  ):not(.swth-sidebar-filter__submit):is(:hover, :focus-visible) {
  border-color: var(--swth-price-button-hover-border) !important;
  background: var(--swth-price-button-hover-bg) !important;
  color: var(--swth-price-button-hover-text) !important;
}
body.swth-style-layer .live-view-button:hover,
body.swth-style-layer .live-view-button:focus-visible {
  border-color: var(--swth-live-preview-button-hover-border) !important;
  background: var(--swth-live-preview-button-hover-bg) !important;
  color: var(--swth-live-preview-button-hover-text) !important;
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}
body.swth-badge-shape-rectangle .swth-product-label-badge {
  border-radius: 0;
}
body.swth-badge-shape-rounded .swth-product-label-badge {
  border-radius: 8px;
}
body.swth-badge-shape-pill .swth-product-label-badge {
  border-radius: 999px;
  padding-left: 12px;
  padding-right: 12px;
}
body.swth-badge-shape-circle .swth-product-label-badge {
  inline-size: var(--swth-badge-circle-size);
  block-size: var(--swth-badge-circle-size);
  min-height: var(--swth-badge-circle-size);
  padding: 8px;
  border-radius: 999px;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
  font-size: var(--swth-badge-circle-font-size);
  line-height: 1.05;
}
body.swth-style-layer .swth-product-label-badge .swth-badge-shape {
  display: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}
body.swth-style-layer .swth-product-label-badge .swth-badge-shape path {
  fill: var(--swth-badge-background);
  stroke: var(--swth-badge-border);
  stroke-width: 1;
  stroke-linejoin: round;
  shape-rendering: geometricPrecision;
}
body:is(.swth-badge-shape-ticket, .swth-badge-shape-ribbon)
  .swth-product-label-badge {
  position: relative;
  isolation: isolate;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  clip-path: none !important;
  overflow: visible;
}
body.swth-badge-shape-ticket .swth-product-label-badge {
  padding-left: 14px;
  padding-right: 14px;
}
body.swth-badge-shape-ribbon .swth-product-label-badge {
  padding-right: 18px;
}
body.swth-badge-shape-ticket
  .swth-product-label-badge
  .swth-badge-shape--ticket,
body.swth-badge-shape-ribbon
  .swth-product-label-badge
  .swth-badge-shape--ribbon {
  display: block;
}
body:is(.swth-badge-shape-ticket, .swth-badge-shape-ribbon)
  .swth-product-label-badge
  > *:not(.swth-badge-shape) {
  position: relative;
  z-index: 1;
}
body.swth-side-cart-minimal .sdsc-drawer {
  box-shadow: none !important;
  border-left: 1px solid var(--swth-side-cart-border);
}
body.swth-side-cart-soft .sdsc-drawer,
body.swth-side-cart-soft .sdsc-footer {
  background: var(--swth-side-cart-bg) !important;
}
body.swth-side-cart-bordered .sdsc-drawer {
  box-shadow: none !important;
  border-left: 1px solid var(--swth-side-cart-border);
}
body.swth-sticky-cart-light #sticky-cart-bar {
  --sticky-bg: var(--swth-sticky-cart-bg) !important;
  color: var(--swth-sticky-cart-text);
  border-top: 1px solid var(--swth-sticky-cart-border);
}
body.swth-sticky-cart-light #sticky-cart-bar .sticky-title {
  color: var(--swth-sticky-cart-title-color);
}
body.swth-sticky-cart-soft #sticky-cart-bar {
  --sticky-bg: var(--swth-sticky-cart-bg) !important;
  color: var(--swth-sticky-cart-text);
}
body.swth-style-layer #search-results-container {
  color: var(--swth-ajax-search-text);
}
body.swth-style-layer #search-results-container .search-results-info {
  color: var(--swth-ajax-search-primary);
}
body.swth-style-layer
  :is(
    .swth-product-search-results .search-results-info,
    .swth-product-search-results__empty
  ) {
  letter-spacing: var(
    --swth-ajax-search-results-letter-spacing,
    normal
  ) !important;
}
body.swth-style-layer.swth-search-boxed .swth-product-search__input {
  border: 1px solid var(--swth-search-border) !important;
  background: var(--swth-search-bg) !important;
}
body.swth-style-layer.swth-search-underline .swth-product-search__input {
  border-width: 0 0 1px !important;
  border-radius: 0 !important;
  background: transparent !important;
}
body.swth-style-layer.swth-search-pill .swth-product-search__input,
body.swth-style-layer.swth-search-pill .swth-product-search__submit {
  border-radius: 999px !important;
}
body.swth-filters-boxed
  :where(
    .swth_product_attribute_filter,
    .swth_product_price_filter
  )[data-swth-filter-fragment] {
  padding: 16px;
  border: 1px solid var(--swth-filters-border);
  background: var(--swth-filters-bg);
  border-radius: var(--swth-filters-radius);
}
body.swth-filters-boxed
  :where(
    .swth_product_search_widget,
    .swth_product_sort_widget
  )[data-swth-filter-fragment] {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
}
body.swth-filters-boxed
  :is(
    .swth-sidebar-filter--attribute:not(.swth-sidebar-filter--attribute-select)
  ) {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border-top: 1px solid var(--swth-filters-border) !important;
}
body.swth-filters-boxed :is(.swth-sidebar-filter__item) {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid var(--swth-filters-border) !important;
  list-style: none !important;
}
body.swth-filters-boxed
  :is(.swth-sidebar-filter__link, .swth-sidebar-filter__reset) {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  color: var(--swth-filters-text) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
  letter-spacing: var(--swth-widget-content-letter-spacing, 0.1em) !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}
body.swth-filters-boxed .swth-sidebar-filter__link {
  flex: 1 1 auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
body.swth-filters-boxed .swth-sidebar-filter__link::before {
  content: "" !important;
  width: 15px !important;
  height: 15px !important;
  flex: 0 0 15px !important;
  border: 1px solid var(--swth-filters-primary) !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: inset 0 0 0 4px transparent !important;
}
body.swth-filters-boxed
  .swth-sidebar-filter__item.is-active
  .swth-sidebar-filter__link::before {
  background: var(--swth-filters-primary) !important;
  box-shadow: inset 0 0 0 4px var(--swth-filters-bg) !important;
}
body.swth-filters-boxed .swth-sidebar-filter__count {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 26px !important;
  height: 26px !important;
  margin-left: auto !important;
  padding: 0 7px !important;
  border-radius: 999px !important;
  background: var(--swth-filters-secondary) !important;
  color: var(--swth-filters-text) !important;
  font-size: 11px !important;
  line-height: 26px !important;
  letter-spacing: var(--swth-attribute-count-letter-spacing, 0) !important;
  text-align: center !important;
}
body.swth-filters-boxed .swth-sidebar-filter__reset {
  display: inline-flex !important;
  margin: 10px 0 0 !important;
  color: var(--swth-filters-text) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  letter-spacing: var(--swth-widget-content-letter-spacing, 0.04em) !important;
}
body.swth-filters-boxed .swth-product-sort__select {
  background: var(--swth-sort-bg) !important;
}
body.swth-style-layer.swth-filters-pill .swth-sidebar-filter__link,
body.swth-style-layer.swth-filters-pill .swth-sidebar-filter__reset,
body.swth-style-layer.swth-filters-pill .swth-sidebar-filter__submit,
body.swth-style-layer.swth-filters-pill
  .swth-sidebar-filter__price-field
  input {
  border-radius: 999px !important;
}
body.swth-filters-pill
  :is(.swth-sidebar-filter__link, .swth-sidebar-filter__reset) {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 7px 11px;
  border: 1px solid var(--swth-filters-border);
  background: var(--swth-filters-bg);
  color: var(--swth-filters-text) !important;
  text-decoration: none;
}
body.swth-filters-clean
  :where(
    .swth_product_search_widget,
    .swth_product_sort_widget,
    .swth_product_attribute_filter,
    .swth_product_price_filter
  )[data-swth-filter-fragment] {
  border: 0;
  background: transparent;
}
body.swth-filters-clean
  :is(.swth-sidebar-filter__link, .swth-sidebar-filter__reset) {
  padding-left: 0;
  border: 0;
  background: transparent;
  color: var(--swth-filters-text) !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}
body.swth-style-layer .swth-price-slider,
body.swth-style-layer .swth-price-slider__range {
  width: 100% !important;
}
body.swth-style-layer .swth-price-slider__values {
  display: flex !important;
  justify-content: space-between !important;
  gap: 10px !important;
  margin: 0 0 10px !important;
  color: var(--swth-filters-text) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.2;
}
body.swth-style-layer .swth-price-slider__range {
  position: relative !important;
  height: 34px !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  cursor: pointer !important;
  overflow: visible !important;
  touch-action: none !important;
}
body.swth-style-layer .swth-price-slider__range::before,
body.swth-style-layer .swth-price-slider__range::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  height: 2px !important;
  border: 0 !important;
  border-radius: 999px !important;
  transform: translateY(-50%) !important;
  pointer-events: none !important;
}
body.swth-style-layer .swth-price-slider__range::before {
  z-index: 0 !important;
  left: 0 !important;
  right: 0 !important;
  background: var(--swth-filters-border) !important;
}
body.swth-style-layer .swth-price-slider__range::after {
  z-index: 1 !important;
  left: var(--swth-price-min, 0%) !important;
  right: calc(100% - var(--swth-price-max, 100%)) !important;
  background: var(--swth-filters-primary) !important;
}
body.swth-style-layer .swth-price-slider__track,
body.swth-style-layer .swth-price-slider__fill {
  display: block !important;
  position: absolute !important;
  top: 50% !important;
  height: 2px !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  transform: translateY(-50%) !important;
  pointer-events: none !important;
}
body.swth-style-layer .swth-price-slider__track {
  z-index: 0 !important;
  left: 0 !important;
  right: 0 !important;
  background: var(--swth-filters-border) !important;
}
body.swth-style-layer .swth-price-slider__fill {
  z-index: 1 !important;
  left: var(--swth-price-min, 0%) !important;
  right: calc(100% - var(--swth-price-max, 100%)) !important;
  background: var(--swth-filters-primary) !important;
}
body.swth-style-layer
  .swth-price-slider
  input.swth-price-slider__range-input[type="range"] {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  display: block !important;
  width: 100% !important;
  height: 34px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  outline: 0 !important;
  opacity: 1 !important;
  pointer-events: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}
body.swth-style-layer
  .swth-price-slider
  input.swth-price-slider__range-input[type="range"]::-webkit-slider-runnable-track {
  width: 100% !important;
  height: 2px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  color: transparent !important;
  -webkit-appearance: none !important;
}
body.swth-style-layer
  .swth-price-slider
  input.swth-price-slider__range-input[type="range"]::-moz-range-track {
  width: 100% !important;
  height: 2px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  color: transparent !important;
}
body.swth-style-layer
  .swth-price-slider
  input.swth-price-slider__range-input[type="range"]::-moz-range-progress {
  height: 2px !important;
  border: 0 !important;
  background: transparent !important;
}
body.swth-style-layer
  .swth-price-slider
  input.swth-price-slider__range-input[type="range"]::-moz-focus-outer {
  border: 0 !important;
}
body.swth-style-layer
  .swth-price-slider
  input.swth-price-slider__range-input[type="range"]::-webkit-slider-thumb {
  position: relative !important;
  z-index: 3 !important;
  width: 12px !important;
  height: 12px !important;
  margin-top: -5px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--swth-filters-text) !important;
  box-shadow: none !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
}
body.swth-style-layer
  .swth-price-slider
  input.swth-price-slider__range-input[type="range"]::-moz-range-thumb {
  width: 12px !important;
  height: 12px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--swth-filters-text) !important;
  box-shadow: none !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}
body.swth-style-layer .swth-sidebar-filter__price-fields {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 0 0 10px !important;
}
body.swth-style-layer .swth-sidebar-filter__price-field {
  display: block !important;
  min-width: 0 !important;
  margin: 0 !important;
  color: var(--swth-filters-text) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: var(--swth-widget-content-letter-spacing, 0.1em) !important;
  text-transform: uppercase !important;
}
body.swth-style-layer .swth-sidebar-filter__price-field span {
  display: block !important;
  margin: 0 0 6px !important;
}
body.swth-style-layer .swth-sidebar-filter__price-field input {
  display: block !important;
  width: 100% !important;
  padding: 0 10px !important;
  color: var(--swth-filters-text) !important;
}
body.swth-style-layer .swth-sidebar-filter__submit {
  display: inline-flex !important;
  box-sizing: border-box !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.45em !important;
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-filters-button-border) !important;
  background: var(--swth-filters-button-bg) !important;
  color: var(--swth-filters-button-text) !important;
  font-family: var(
    --swth-widget-content-font-family,
    var(--swth-sidebar-font)
  ) !important;
  font-size: var(--swth-widget-content-font-size, 12px) !important;
  font-weight: 500 !important;
  line-height: 1.15 !important;
  letter-spacing: var(--swth-widget-content-letter-spacing, 0.14em) !important;
  text-transform: uppercase !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  scale: none !important;
  filter: none !important;
  cursor: pointer !important;
  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease !important;
}
body.swth-style-layer
  :where(
    .swth_product_search_widget,
    .swth_product_sort_widget,
    .swth_product_attribute_filter,
    .swth_product_price_filter,
    .widget_product_categories,
    .wp-block-woocommerce-product-categories,
    .wc-block-product-categories
  ) {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 18px !important;
  color: var(--swth-sidebar-text) !important;
  font-family: var(
    --swth-widget-content-font-family,
    var(--swth-sidebar-font)
  ) !important;
  font-size: var(--swth-widget-content-font-size, 14px) !important;
  line-height: 1.55 !important;
}
body.swth-style-layer
  :where(
    .swth_product_search_widget,
    .swth_product_sort_widget,
    .swth_product_attribute_filter,
    .swth_product_price_filter,
    .widget_product_categories,
    .wp-block-woocommerce-product-categories,
    .wc-block-product-categories
  )
  * {
  box-sizing: border-box !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}
body.swth-style-layer
  :where(
    .swth_product_search_widget,
    .swth_product_sort_widget,
    .swth_product_attribute_filter,
    .swth_product_price_filter,
    .widget_product_categories,
    .wp-block-woocommerce-product-categories,
    .wc-block-product-categories
  )
  :is(.widget-title, .widgettitle, .wp-block-heading, h2, h3) {
  margin: 0 0 12px !important;
  color: var(--swth-sidebar-heading) !important;
  font-family: var(
    --swth-widget-title-font-family,
    var(--swth-sidebar-font)
  ) !important;
  font-size: var(--swth-widget-title-font-size, 12px) !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  letter-spacing: var(--swth-widget-title-letter-spacing, 0.14em) !important;
  text-transform: uppercase !important;
}
body.swth-style-layer .swth-product-search,
body.swth-style-layer .swth-product-sort,
body.swth-style-layer .swth-sidebar-filter--attribute-select,
body.swth-style-layer .woocommerce-ordering {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}
body.swth-style-layer .swth-sidebar-filter--attribute-select {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  list-style: none !important;
}
body.swth-style-layer
  :where(
    .swth-product-search__input,
    .swth-product-sort__select,
    .swth-sidebar-filter__select,
    .swth-sidebar-filter__price-field input
  ) {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  border-width: 1px !important;
  border-style: solid !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  scale: none !important;
  filter: none !important;
  font: 400 var(--swth-widget-content-font-size, 14px)/40px
    var(--swth-widget-content-font-family, var(--swth-sidebar-font)) !important;
  letter-spacing: var(--swth-widget-content-letter-spacing, 0) !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  transition:
    border-color 0.18s ease,
    background-color 0.18s ease,
    color 0.18s ease !important;
}
body.swth-style-layer .woocommerce-ordering select.orderby {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  border-width: 1px !important;
  border-style: solid !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  scale: none !important;
  filter: none !important;
  font: 400 14px/40px var(--swth-sidebar-font) !important;
  letter-spacing: var(--swth-sort-letter-spacing, 0) !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  transition:
    border-color 0.18s ease,
    background-color 0.18s ease,
    color 0.18s ease !important;
}
body.swth-style-layer .swth-product-search__input {
  padding: 0 56px 0 14px !important;
  border-color: var(--swth-search-border) !important;
  border-radius: var(--swth-search-radius) !important;
  background: var(--swth-search-bg) !important;
  color: var(--swth-search-text) !important;
  letter-spacing: var(--swth-search-input-letter-spacing, 0) !important;
}
body.swth-style-layer .swth-product-search__input::placeholder {
  color: var(--swth-search-text) !important;
  opacity: 1 !important;
}
body.swth-style-layer .swth-product-search__input::-webkit-search-cancel-button,
body.swth-style-layer .swth-product-search__input::-webkit-search-decoration {
  display: none !important;
  -webkit-appearance: none !important;
}
body.swth-style-layer .swth-product-search:hover .swth-product-search__input,
body.swth-style-layer .swth-product-search__input:is(:focus, :focus-visible) {
  border-color: var(--swth-search-button-hover-border) !important;
  outline: 0 !important;
  box-shadow: none !important;
}
body.swth-style-layer .swth-product-search__submit {
  position: absolute !important;
  inset: 0 0 auto auto !important;
  display: inline-flex !important;
  box-sizing: border-box !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-search-button-border) !important;
  border-radius: var(--swth-search-radius) !important;
  background: var(--swth-search-button-bg) !important;
  color: var(--swth-search-button-text) !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  scale: none !important;
  filter: none !important;
  cursor: pointer !important;
  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease !important;
}
body.swth-style-layer
  .swth-product-search__submit:is(:hover, :focus, :focus-visible) {
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-search-button-hover-border) !important;
  background: var(--swth-search-button-hover-bg) !important;
  color: var(--swth-search-button-hover-text) !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  scale: none !important;
  filter: none !important;
}
body.swth-style-layer.swth-style-layer
  form.swth-product-search[data-swth-product-search-form]
  > button.swth-product-search__submit:is(:hover, :focus, :focus-visible) {
  border-color: var(--swth-search-button-hover-border) !important;
}
body.swth-style-layer
  .swth-sidebar-filter__submit:is(:hover, :focus, :focus-visible) {
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-filters-button-hover-border) !important;
  background: var(--swth-filters-button-hover-bg) !important;
  color: var(--swth-filters-button-hover-text) !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  scale: none !important;
  filter: none !important;
}
body.swth-style-layer .swth-product-search__icon,
body.swth-style-layer .swth-product-search__submit .swth-button-icon {
  display: block !important;
  width: 16px !important;
  height: 16px !important;
  stroke: currentColor !important;
  fill: none !important;
  overflow: visible !important;
  shape-rendering: geometricPrecision;
  transform: none !important;
  scale: none !important;
  filter: none !important;
}
body.swth-style-layer .swth-sidebar-filter__submit .swth-button-icon {
  display: block !important;
  width: 1.2em !important;
  height: 1.2em !important;
  flex: 0 0 auto !important;
  stroke: currentColor !important;
  fill: none !important;
  overflow: visible !important;
  shape-rendering: geometricPrecision;
  transform: none !important;
  scale: none !important;
  filter: none !important;
}
body.swth-style-layer .swth-product-sort__select-wrap,
body.swth-style-layer .swth-sidebar-filter__select-wrap {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}
body.swth-style-layer .swth-product-sort__select-wrap::after,
body.swth-style-layer .swth-sidebar-filter__select-wrap::after,
body.swth-style-layer .woocommerce-ordering::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  right: 16px !important;
  width: 9px !important;
  height: 9px !important;
  border: solid var(--swth-sort-arrow) !important;
  border-width: 0 2px 2px 0 !important;
  pointer-events: none !important;
  transform: translateY(-62%) rotate(45deg) !important;
}
body.swth-style-layer
  :where(.swth-product-sort__select, .woocommerce-ordering select.orderby) {
  padding: 0 42px 0 14px !important;
  border-color: var(--swth-sort-border) !important;
  border-radius: var(--swth-sort-radius) !important;
  background: var(--swth-sort-bg) !important;
  color: var(--swth-sort-text) !important;
  letter-spacing: var(--swth-sort-letter-spacing, 0) !important;
  cursor: pointer !important;
}
body.swth-style-layer
  :where(
    .swth-product-sort__select,
    .woocommerce-ordering select.orderby
  ):hover {
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-sort-border) !important;
  outline: 0 !important;
  box-shadow: none !important;
}
body.swth-style-layer
  :where(.swth-product-sort__select, .woocommerce-ordering select.orderby):is(
    :focus,
    :focus-visible
  ) {
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-sort-focus-border) !important;
  outline: 0 !important;
  box-shadow: none !important;
}
body.swth-style-layer .swth-product-sort__submit {
  display: none !important;
}
body.swth-style-layer
  :is(
    .swth-sidebar-filter--attribute:not(.swth-sidebar-filter--attribute-select),
    .wc-block-product-categories-list,
    .widget_product_categories ul.product-categories,
    ul.product-categories
  ) {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border-top: 1px solid var(--swth-sidebar-line) !important;
}
body.swth-style-layer
  :is(
    .wc-block-product-categories-list-item:has(
      a[href*="/product-category/uncategorized/"]
    ),
    .widget_product_categories
      .cat-item:has(a[href*="/product-category/uncategorized/"])
  ) {
  display: none !important;
}
body.swth-style-layer
  :is(
    .swth-sidebar-filter__item,
    .wc-block-product-categories-list-item,
    .widget_product_categories .cat-item,
    ul.product-categories > li
  ) {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid var(--swth-sidebar-line) !important;
  list-style: none !important;
}
body.swth-style-layer .swth-sidebar-filter__link,
body.swth-style-layer .wc-block-product-categories-list-item a,
body.swth-style-layer .widget_product_categories .cat-item a,
body.swth-style-layer ul.product-categories > li a {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  color: var(--swth-sidebar-text) !important;
  font: 500 var(--swth-widget-content-font-size, 13px)/1.45
    var(--swth-widget-content-font-family, var(--swth-sidebar-font)) !important;
  letter-spacing: var(--swth-widget-content-letter-spacing, 0.1em) !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  scale: none !important;
  filter: none !important;
}
body.swth-style-layer .swth-sidebar-filter__link::before {
  content: "" !important;
  width: 15px !important;
  height: 15px !important;
  flex: 0 0 15px !important;
  border: 1px solid var(--swth-sidebar-accent) !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: inset 0 0 0 4px transparent !important;
}
body.swth-style-layer
  .swth-sidebar-filter__item.is-active
  .swth-sidebar-filter__link::before {
  background: var(--swth-sidebar-accent) !important;
  box-shadow: inset 0 0 0 4px var(--swth-sidebar-field-bg) !important;
}
body.swth-style-layer .swth-sidebar-filter__link:hover,
body.swth-style-layer .wc-block-product-categories-list-item a:hover,
body.swth-style-layer .widget_product_categories .cat-item a:hover {
  color: var(--swth-sidebar-heading) !important;
}
body.swth-style-layer
  :is(
    .swth-sidebar-filter__count,
    .wc-block-product-categories-list-item-count,
    .widget_product_categories .count,
    ul.product-categories .count
  ) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 26px !important;
  height: 26px !important;
  margin-left: auto !important;
  padding: 0 7px !important;
  border-radius: 999px !important;
  background: var(--swth-sidebar-accent-hover) !important;
  color: var(--swth-sidebar-muted) !important;
  font: 500 var(--swth-widget-content-font-size, 11px)/26px
    var(--swth-widget-content-font-family, var(--swth-sidebar-number-font)) !important;
  letter-spacing: var(--swth-widget-content-letter-spacing, 0) !important;
  text-align: center !important;
}
body.swth-style-layer
  :is(
    .wc-block-product-categories-list-item-count,
    .widget_product_categories .count,
    ul.product-categories .count
  )::before,
body.swth-style-layer
  :is(
    .wc-block-product-categories-list-item-count,
    .widget_product_categories .count,
    ul.product-categories .count
  )::after {
  content: none !important;
}
body.swth-style-layer
  :is(
    .widget_product_categories,
    .wp-block-woocommerce-product-categories,
    .wc-block-product-categories
  ) {
  color: var(--swth-category-text) !important;
  font-family: var(--swth-category-font-family) !important;
  font-size: var(--swth-category-font-size) !important;
}
body.swth-style-layer
  :is(
    .widget_product_categories,
    .wp-block-woocommerce-product-categories,
    .wc-block-product-categories
  )
  :is(.widget-title, .widgettitle, .wp-block-heading, h2, h3) {
  color: var(--swth-category-title-color) !important;
  font-family: var(--swth-category-title-font-family) !important;
  font-size: var(--swth-category-title-font-size) !important;
  font-weight: var(--swth-category-title-font-weight) !important;
  letter-spacing: var(--swth-category-title-letter-spacing) !important;
  text-transform: var(--swth-category-title-text-transform) !important;
}
body.swth-style-layer
  :is(
    .widget_product_categories,
    .wp-block-woocommerce-product-categories,
    .wc-block-product-categories
  )
  :is(
    .cat-item,
    .wc-block-product-categories-list-item,
    ul.product-categories > li
  ) {
  border-bottom-color: var(--swth-category-divider) !important;
}
body.swth-style-layer
  :is(
    .widget_product_categories,
    .wp-block-woocommerce-product-categories,
    .wc-block-product-categories
  )
  :is(
    .cat-item a,
    .wc-block-product-categories-list-item a,
    ul.product-categories > li a
  ) {
  color: var(--swth-category-text) !important;
  font-family: var(--swth-category-font-family) !important;
  font-size: var(--swth-category-font-size) !important;
  font-weight: var(--swth-category-font-weight) !important;
  line-height: var(--swth-category-line-height) !important;
  letter-spacing: var(--swth-category-letter-spacing) !important;
  text-transform: var(--swth-category-text-transform) !important;
}
body.swth-style-layer.swth-style-layer
  :is(
    .widget_product_categories,
    .wp-block-woocommerce-product-categories,
    .wc-block-product-categories
  )
  :is(.current-cat > a, a[aria-current="page"]) {
  color: var(--swth-category-active-text) !important;
}
body.swth-style-layer
  :is(
    .widget_product_categories,
    .wp-block-woocommerce-product-categories,
    .wc-block-product-categories
  )
  :is(
    .cat-item a,
    .wc-block-product-categories-list-item a,
    ul.product-categories > li a
  ):is(:hover, :focus, :focus-visible) {
  color: var(--swth-category-hover-text) !important;
}
body.swth-style-layer
  :is(
    .widget_product_categories,
    .wp-block-woocommerce-product-categories,
    .wc-block-product-categories
  )
  :is(
    .count,
    .wc-block-product-categories-list-item-count,
    ul.product-categories .count
  ) {
  min-width: var(--swth-category-count-size) !important;
  width: auto !important;
  height: var(--swth-category-count-size) !important;
  padding: 0 7px !important;
  border: 1px solid var(--swth-category-count-border) !important;
  border-radius: var(--swth-category-count-radius) !important;
  background: var(--swth-category-count-bg) !important;
  color: var(--swth-category-count-text) !important;
  font-family: var(--swth-category-count-font-family) !important;
  font-size: var(--swth-category-count-font-size) !important;
  line-height: var(--swth-category-count-size) !important;
  letter-spacing: var(--swth-category-count-letter-spacing) !important;
}
body.swth-style-layer .swth_product_attribute_filter {
  color: var(--swth-attribute-text) !important;
  font-family: var(--swth-attribute-font-family) !important;
  font-size: var(--swth-attribute-font-size) !important;
}
body.swth-style-layer
  .swth_product_attribute_filter
  :is(.widget-title, .widgettitle, .wp-block-heading, h2, h3) {
  color: var(--swth-attribute-title-color) !important;
  font-family: var(--swth-attribute-title-font-family) !important;
  font-size: var(--swth-attribute-title-font-size) !important;
  letter-spacing: var(--swth-attribute-title-letter-spacing) !important;
}
body.swth-style-layer
  .swth_product_attribute_filter
  .swth-sidebar-filter__select {
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 42px 0 14px !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-attribute-border) !important;
  border-radius: var(--swth-attribute-radius) !important;
  background: var(--swth-attribute-bg) !important;
  color: var(--swth-attribute-text) !important;
  font-family: var(--swth-attribute-font-family) !important;
  font-size: var(--swth-attribute-font-size) !important;
  line-height: 40px !important;
  letter-spacing: var(--swth-attribute-letter-spacing) !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  scale: none !important;
  filter: none !important;
}
body.swth-style-layer
  .swth_product_attribute_filter
  .swth-sidebar-filter__link {
  color: var(--swth-attribute-text) !important;
  font-family: var(--swth-attribute-font-family) !important;
  font-size: var(--swth-attribute-font-size) !important;
  letter-spacing: var(--swth-attribute-letter-spacing) !important;
}
body.swth-style-layer.swth-style-layer
  .swth_product_attribute_filter
  .swth-sidebar-filter__count {
  letter-spacing: var(--swth-attribute-count-letter-spacing) !important;
}
body.swth-style-layer
  .swth_product_attribute_filter
  .swth-sidebar-filter__select:hover {
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-attribute-border) !important;
  outline: 0 !important;
  box-shadow: none !important;
}
body.swth-style-layer
  .swth_product_attribute_filter
  .swth-sidebar-filter__select:is(:focus, :focus-visible) {
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-attribute-focus-border) !important;
  outline: 0 !important;
  box-shadow: none !important;
}
body.swth-style-layer
  .swth_product_attribute_filter
  .swth-sidebar-filter__select-wrap::after {
  border-color: var(--swth-attribute-arrow) !important;
}
body.swth-style-layer .swth-sidebar-filter__reset {
  display: inline-flex !important;
  margin: 10px 0 0 !important;
  color: var(--swth-sidebar-muted) !important;
  font: 400 var(--swth-widget-content-font-size, 12px)/1.3
    var(--swth-widget-content-font-family, var(--swth-sidebar-font)) !important;
  letter-spacing: var(--swth-widget-content-letter-spacing, 0.04em) !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}
body.swth-style-layer
  .swth-sidebar-filter--attribute-select
  .swth-sidebar-filter__reset {
  width: max-content !important;
  max-width: 100% !important;
}
body.swth-style-layer
  .swth_product_attribute_filter
  .swth-sidebar-filter__reset {
  color: var(--swth-attribute-reset-text) !important;
  font-family: var(--swth-attribute-reset-font-family) !important;
  font-size: var(--swth-attribute-reset-font-size) !important;
  letter-spacing: var(--swth-attribute-reset-letter-spacing) !important;
}
body.swth-style-layer
  .swth_product_attribute_filter
  .swth-sidebar-filter__reset:is(:hover, :focus, :focus-visible) {
  color: var(--swth-attribute-reset-hover-text) !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  scale: none !important;
  filter: none !important;
}
body.swth-style-layer .swth-price-slider__values {
  color: var(--swth-sidebar-heading) !important;
  font: 500 var(--swth-widget-content-font-size, 13px)/1.2
    var(--swth-widget-content-font-family, var(--swth-sidebar-number-font)) !important;
  letter-spacing: var(--swth-widget-content-letter-spacing, 0) !important;
}
body.swth-style-layer .swth-price-slider__range::before,
body.swth-style-layer .swth-price-slider__track {
  background: var(--swth-sidebar-line) !important;
}
body.swth-style-layer .swth-price-slider__range::after,
body.swth-style-layer .swth-price-slider__fill {
  background: var(--swth-price-slider-color) !important;
}
body.swth-style-layer
  .swth-price-slider
  input.swth-price-slider__range-input[type="range"] {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  display: block !important;
  width: 100% !important;
  height: 34px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  outline: 0 !important;
  opacity: 1 !important;
  pointer-events: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}
body.swth-style-layer
  .swth-price-slider
  input.swth-price-slider__range-input[type="range"]::-webkit-slider-thumb {
  width: 12px !important;
  height: 12px !important;
  margin-top: -5px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--swth-price-slider-thumb) !important;
  box-shadow: none !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
}
body.swth-style-layer
  .swth-price-slider
  input.swth-price-slider__range-input[type="range"]::-moz-range-thumb {
  width: 12px !important;
  height: 12px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--swth-price-slider-thumb) !important;
  box-shadow: none !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}
body.swth-style-layer .swth-sidebar-filter__price-field {
  color: var(--swth-sidebar-muted) !important;
  font: 500 var(--swth-widget-content-font-size, 11px)/1.2
    var(--swth-widget-content-font-family, var(--swth-sidebar-font)) !important;
}
body.swth-style-layer .swth-sidebar-filter__price-field input {
  height: 42px !important;
  min-height: 42px !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-sidebar-line) !important;
  border-radius: var(--swth-filters-radius) !important;
  background: var(--swth-sidebar-field-bg) !important;
  color: var(--swth-sidebar-heading) !important;
  font-family: var(
    --swth-widget-content-font-family,
    var(--swth-sidebar-number-font)
  ) !important;
  font-size: var(--swth-widget-content-font-size, 13px) !important;
  line-height: 40px !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  scale: none !important;
  filter: none !important;
}
body.swth-style-layer .swth-sidebar-filter__price-field input:hover {
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-sidebar-line) !important;
  outline: 0 !important;
  box-shadow: none !important;
}
body.swth-style-layer
  .swth-sidebar-filter__price-field
  input:is(:focus, :focus-visible) {
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-filters-primary) !important;
  outline: 0 !important;
  box-shadow: none !important;
}
body.swth-style-layer .swth-sidebar-filter__submit {
  height: 42px !important;
  min-height: 42px !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--swth-filters-button-border) !important;
  border-radius: var(--swth-filters-radius) !important;
  background: var(--swth-filters-button-bg) !important;
  color: var(--swth-filters-button-text) !important;
  font: 500 var(--swth-widget-content-font-size, 12px)/1.15
    var(--swth-widget-content-font-family, var(--swth-sidebar-number-font)) !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  scale: none !important;
  filter: none !important;
}

/* Keep widget tracking on the actual controls, including Showit form resets. */
body.swth-style-layer .swth-product-sort select.swth-product-sort__select,
body.swth-style-layer .woocommerce-ordering select.orderby {
  letter-spacing: var(--swth-sort-letter-spacing, var(--swth-widget-content-letter-spacing, 0)) !important;
}
body.swth-style-layer .swth-product-search .swth-product-search__input {
  letter-spacing: var(--swth-search-input-letter-spacing, var(--swth-widget-content-letter-spacing, 0)) !important;
}
body.swth-style-layer .swth-sidebar-filter__price-field,
body.swth-style-layer .swth-sidebar-filter__price-field input,
body.swth-style-layer .swth-sidebar-filter__submit {
  letter-spacing: var(--swth-widget-content-letter-spacing, 0) !important;
}
body.swth-style-layer :is(.swth-product-sort__select, .swth-sidebar-filter__select, .woocommerce-ordering select.orderby) option,
body.swth-style-layer .swth-product-search .swth-product-search__input::placeholder {
  letter-spacing: inherit !important;
}

/* Apply the saved gutter directly to every native product-list layout. This is
   deliberately independent of the JavaScript marker: Showit can rebuild the
   list after the controller has run. CSS grid and flex lists therefore keep
   the requested spacing even during that rebuild. The controller below only
   adjusts legacy float lists, whose layout does not support gap. */
body.swth-style-layer.swth-card-title-enabled
  :is(
    ul.products,
    .wc-block-product-template,
    .wp-block-woocommerce-product-template,
    .wc-block-grid__products
  ) {
  row-gap: var(--swth-products-gap) !important;
  column-gap: var(--swth-products-gap) !important;
}

/* Native columns are measured before applying the configured gutter. Grid/flex/
   float layout and WooCommerce breakpoints remain owned by the theme. */
body.swth-style-layer [data-swth-card-gap-layout="grid"],
body.swth-style-layer [data-swth-card-gap-layout="responsive-grid"],
body.swth-style-layer [data-swth-card-gap-layout="flex-gap"],
body.swth-style-layer [data-swth-card-gap-layout="flex"] {
  gap: var(--swth-products-gap) !important;
}
body.swth-style-layer [data-swth-card-gap-layout="responsive-grid"] {
  grid-template-columns: repeat(var(--swth-card-gap-columns), minmax(0, 1fr)) !important;
}
body.swth-style-layer :is([data-swth-card-gap-layout="float"], [data-swth-card-gap-layout="flex"]) > li {
  width: calc((100% - (var(--swth-card-gap-columns) - 1) * var(--swth-products-gap)) / var(--swth-card-gap-columns)) !important;
  margin: 0 !important;
}
body.swth-style-layer [data-swth-card-gap-layout="stack"] > li {
  margin-block: 0 var(--swth-products-gap) !important;
}
body.swth-style-layer [data-swth-card-gap-layout="float"] > li {
  margin-inline-end: var(--swth-products-gap) !important;
  margin-bottom: var(--swth-products-gap) !important;
}
body.swth-style-layer [data-swth-card-gap-layout="float"] > li.swth-card-gap-row-end {
  margin-inline-end: 0 !important;
}
body.swth-style-layer [data-swth-card-gap-layout="flex"] > li {
  flex: 0 0 calc((100% - (var(--swth-card-gap-columns) - 1) * var(--swth-products-gap)) / var(--swth-card-gap-columns)) !important;
  max-width: none !important;
}
body.swth-style-layer .wc-block-grid__products[data-swth-card-gap-layout] {
  margin-inline: 0 !important;
}
body.swth-style-layer:not(.swth-product-card-decoration-border) .wc-block-grid__products[data-swth-card-gap-layout] > li {
  border: 0 !important;
}
body.swth-style-layer.swth-product-card-padding-enabled :is(ul.products > li.product, .wc-block-product-template > li, .wp-block-woocommerce-product-template > li, .wc-block-grid__product) {
  padding: var(--swth-product-card-padding) !important;
}

/* WooCommerce owns product-list columns, widths and breakpoints. */
/* Showit's text reset indents product lists. Keep their content inside the
   placeholder; the configured card gap is applied separately above. */
body.swth-style-layer
  .se
  :is(
    ul.products,
    .wc-block-product-template,
    .wp-block-woocommerce-product-template
  ):not(.is-product-collection-layout-carousel) {
  margin-inline: 0;
  padding-inline: 0;
}
/* Legacy WooCommerce blocks use 8px card borders as gutters. Restore their
   matching negative list margins when Showit applies text-list indentation. */
body.swth-style-layer .se .wc-block-grid__products {
  margin-inline: -8px;
  padding-inline: 0;
}

/* Keep the Showit placeholder fixed; its content scrolls at its natural height. */
body.swth-style-layer .se.swth-has-bounded-product-shortcode {
  overflow: hidden !important;
}
body.swth-style-layer .se .swth-showit-shortcode-boundary {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: auto !important;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}

body.swth-style-layer
  .se
  :is(
    .showit-product-main-image,
    .showit-product-gallery,
    .showit-product-description,
    .showit-product-category,
    .showit-product-badges,
    .showit-product-button-note
  ) {
  box-sizing: border-box !important;
  max-width: 100% !important;
}
body.swth-style-layer.swth-product-card-decoration-enabled
  :is(.swth-product-shortcode-collection, .showit-moved-related-products)
  :is(
    ul.products > li.product,
    .wc-block-product-template > li,
    .wp-block-woocommerce-product-template > li,
    .wc-block-grid__product
  ) {
  padding: var(--swth-product-card-padding) !important;
}

/* Product card media follows WooCommerce's thumbnail crop while retaining one clipped overlay surface. */
body.swth-style-layer
  :is(.swth-product-shortcode-collection, .showit-moved-related-products)
  :is(
    ul.products li.product,
    .wc-block-product-template > li,
    .wp-block-woocommerce-product-template > li,
    .wc-block-grid__product
  ) {
  list-style: none !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  grid-template-areas: "media media" "primary secondary" !important;
  align-items: start !important;
  gap: 12px var(--swth-card-button-gap) !important;
  position: relative !important;
  isolation: isolate !important;
  overflow: visible !important;
  text-align: left !important;
  box-sizing: border-box !important;
  container-type: inline-size !important;
}
/* Keep plugin-owned collections on the configured card layout without changing native WooCommerce lists. */
body.swth-style-layer
  :is(
    .swth-product-collection,
    .swth-product-shortcode-collection,
    .showit-moved-related-products
  )
  ul.products
  > li.product {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  grid-template-areas: "media media" "primary secondary" !important;
  align-items: start !important;
  column-gap: var(--swth-card-button-gap) !important;
  row-gap: 12px !important;
  position: relative !important;
  isolation: isolate !important;
  container-type: inline-size !important;
}
/* Native archives and Gutenberg collections keep their parent list contract, while the card internals use the same layout. */
body.swth-style-layer
  :is(
    ul.products > li.product,
    .wc-block-product-template > li,
    .wp-block-woocommerce-product-template > li,
    .wc-block-grid__product
  ) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  grid-template-areas: "media media" "primary secondary" !important;
  column-gap: var(--swth-card-button-gap) !important;
  row-gap: 12px !important;
  align-items: start !important;
  position: relative !important;
  isolation: isolate !important;
  box-sizing: border-box !important;
  container-type: inline-size !important;
  list-style: none !important;
}
body.swth-product-card-decoration-enabled
  :is(
    ul.products > li.product,
    .wc-block-product-template > li,
    .wp-block-woocommerce-product-template > li,
    .wc-block-grid__product
  ) {
  padding: var(--swth-product-card-padding) !important;
  border-radius: var(--swth-product-card-border-radius) !important;
  background-clip: padding-box !important;
}
body.swth-product-card-decoration-background
  :is(
    ul.products > li.product,
    .wc-block-product-template > li,
    .wp-block-woocommerce-product-template > li,
    .wc-block-grid__product
  ) {
  border: 0 !important;
  background-color: var(--swth-product-card-background) !important;
}
body.swth-product-card-decoration-border
  :is(
    ul.products > li.product,
    .wc-block-product-template > li,
    .wp-block-woocommerce-product-template > li,
    .wc-block-grid__product
  ) {
  border: var(--swth-product-card-border-width) solid
    var(--swth-product-card-border-color) !important;
  background-color: transparent !important;
}
body.swth-card-title-enabled.swth-card-title-position-below-image
  :is(
    ul.products > li.product,
    .wc-block-product-template > li,
    .wp-block-woocommerce-product-template > li,
    .wc-block-grid__product
  ) {
  grid-template-areas: "media media" "title title" "primary secondary" !important;
}
body.swth-style-layer ul.products li.product::before {
  content: none !important;
  display: none !important;
}
body.swth-style-layer
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link),
body.swth-style-layer .wc-block-grid__product .wc-block-grid__product-image {
  grid-area: media !important;
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-areas: "media" !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  aspect-ratio: var(--swth-card-media-aspect-ratio, 1/1) !important;
  overflow: hidden !important;
  isolation: isolate !important;
  contain: paint !important;
  background: transparent !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  backface-visibility: hidden !important;
  transform: translateZ(0) !important;
}
/* Modern product blocks keep their own image ratios, dimensions and fit settings. */
body.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  ) {
  grid-area: media !important;
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-areas: "media" !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  overflow: hidden !important;
  isolation: isolate !important;
  contain: paint !important;
  background: transparent !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  backface-visibility: hidden !important;
  transform: translateZ(0) !important;
}
body.swth-card-title-enabled.swth-card-title-position-below-image
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link) {
  grid-template-areas: "media" "title" !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
  contain: none !important;
}
body.swth-style-layer
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > .swth-card-media-frame {
  grid-area: media !important;
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  aspect-ratio: var(--swth-card-media-aspect-ratio, 1/1) !important;
  overflow: hidden !important;
  isolation: isolate !important;
  contain: paint !important;
  background: transparent !important;
  box-sizing: border-box !important;
  backface-visibility: hidden !important;
  transform: translateZ(0) !important;
}
body.swth-style-layer .wc-block-grid__product .wc-block-grid__product-image a {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  background: transparent !important;
  opacity: 1 !important;
  filter: none !important;
}
body.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  )
  a {
  z-index: 1 !important;
  display: block !important;
  margin: 0 !important;
  background: transparent !important;
  opacity: 1 !important;
  filter: none !important;
}
body.swth-card-title-enabled
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)::after,
body.swth-card-title-enabled
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  )::after,
body.swth-card-title-enabled
  .wc-block-grid__product
  .wc-block-grid__product-image::after {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  z-index: 2 !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  aspect-ratio: auto !important;
  background: var(--swth-card-title-image-overlay) !important;
  background-color: var(--swth-card-title-image-overlay) !important;
  background-image: none !important;
  pointer-events: none !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  transform: none !important;
  box-sizing: border-box !important;
}
body.swth-card-title-enabled.swth-card-title-overlay-none
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)::after,
body.swth-card-title-enabled.swth-card-title-overlay-none
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  )::after,
body.swth-card-title-enabled.swth-card-title-overlay-none
  .wc-block-grid__product
  .wc-block-grid__product-image::after {
  content: none !important;
  display: none !important;
}
body.swth-style-layer
  ul.products
  li.product
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  )::before,
body.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  )::before,
body.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-image::before {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  z-index: 3 !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  aspect-ratio: auto !important;
  background: var(--swth-card-image-hover-overlay) !important;
  background-color: var(--swth-card-image-hover-overlay) !important;
  background-image: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  transform: none !important;
  box-sizing: border-box !important;
  transition: opacity var(--swth-card-image-hover-speed) ease !important;
}
body.swth-style-layer.swth-card-image-hover-none
  ul.products
  li.product
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  )::before,
body.swth-style-layer.swth-card-image-hover-none
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  )::before,
body.swth-style-layer.swth-card-image-hover-none
  .wc-block-grid__product
  .wc-block-grid__product-image::before {
  content: none !important;
  display: none !important;
}
body.swth-card-title-enabled.swth-card-title-position-below-image
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)::after,
body.swth-style-layer.swth-card-title-position-below-image
  ul.products
  li.product
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  )::before {
  inset: -1px -1px auto -1px !important;
  width: auto !important;
  height: auto !important;
  aspect-ratio: var(--swth-card-media-aspect-ratio, 1/1) !important;
}
body.swth-style-layer
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > img,
body.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-image
  img {
  grid-area: media !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
  opacity: 1 !important;
  filter: none !important;
  transition:
    transform var(--swth-card-image-hover-speed) ease,
    filter var(--swth-card-image-hover-speed) ease !important;
  transform: scale(1) !important;
  transform-origin: center !important;
  backface-visibility: hidden !important;
  will-change: transform !important;
}
body.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  )
  img {
  grid-area: media !important;
  z-index: 1 !important;
  display: block !important;
  margin: 0 !important;
  opacity: 1 !important;
  filter: none !important;
  transition:
    transform var(--swth-card-image-hover-speed) ease,
    filter var(--swth-card-image-hover-speed) ease !important;
  transform: scale(1) !important;
  transform-origin: center !important;
  backface-visibility: hidden !important;
  will-change: transform !important;
}
body.swth-style-layer
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > .swth-card-media-frame
  > img {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
  opacity: 1 !important;
  filter: none !important;
  transition:
    transform var(--swth-card-image-hover-speed) ease,
    filter var(--swth-card-image-hover-speed) ease !important;
  transform: scale(1) !important;
  transform-origin: center !important;
  backface-visibility: hidden !important;
  will-change: transform !important;
}
body.swth-style-layer:not(.swth-card-title-position-below-image)
  ul.products
  li.product
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  )::before,
body.swth-card-title-enabled:not(.swth-card-title-position-below-image)
  ul.products
  li.product
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  )::after {
  inset: -1px !important;
  top: -1px !important;
  right: -1px !important;
  bottom: -1px !important;
  left: -1px !important;
  width: auto !important;
  height: auto !important;
  aspect-ratio: auto !important;
}
body.swth-style-layer:not(.swth-card-title-position-below-image)
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > img {
  position: absolute !important;
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  transform: scale(1) !important;
}
body.swth-style-layer.swth-style-layer.swth-style-layer:not(
    .swth-card-title-position-below-image
  )
  ul.products
  li.product
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  )::before,
body.swth-card-title-enabled.swth-card-title-enabled.swth-card-title-enabled:not(
    .swth-card-title-position-below-image
  )
  ul.products
  li.product
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  )::after {
  inset: -1px !important;
  top: -1px !important;
  right: -1px !important;
  bottom: -1px !important;
  left: -1px !important;
  width: auto !important;
  height: auto !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  aspect-ratio: auto !important;
}
body.swth-style-layer.swth-style-layer.swth-style-layer:not(
    .swth-card-title-position-below-image
  )
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > img {
  position: absolute !important;
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
}
body.swth-card-title-enabled.swth-card-title-position-below-image.swth-card-media-cropped
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > img {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  aspect-ratio: var(--swth-card-media-aspect-ratio, 1/1) !important;
}
body.swth-card-title-enabled.swth-card-title-position-below-image.swth-card-media-uncropped
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > img {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
}
body.swth-style-layer.swth-card-media-uncropped
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link),
body.swth-style-layer.swth-card-media-uncropped
  .wc-block-grid__product
  .wc-block-grid__product-image {
  aspect-ratio: auto !important;
}
body.swth-style-layer.swth-card-media-uncropped
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > .swth-card-media-frame {
  aspect-ratio: auto !important;
}
body.swth-style-layer.swth-card-media-uncropped
  .wc-block-grid__product
  .wc-block-grid__product-image
  a {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
}
body.swth-style-layer.swth-style-layer.swth-style-layer.swth-card-media-uncropped
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > img,
body.swth-style-layer.swth-card-media-uncropped
  .wc-block-grid__product
  .wc-block-grid__product-image
  img {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: none !important;
  object-fit: contain !important;
  contain: none !important;
}
body.swth-style-layer.swth-card-media-uncropped
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > .swth-card-media-frame
  > img {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: none !important;
  object-fit: contain !important;
  contain: none !important;
}
body.swth-card-title-enabled.swth-card-title-position-below-image.swth-card-media-uncropped
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)::after,
body.swth-style-layer.swth-card-title-position-below-image.swth-card-media-uncropped
  ul.products
  li.product
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  )::before {
  grid-area: media !important;
  inset: 0 !important;
  width: auto !important;
  height: auto !important;
  aspect-ratio: auto !important;
}
body.swth-style-layer
  :is(
    ul.products
      li.product
      > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link),
    .wc-block-product-template
      > li
      :is(
        .wc-block-components-product-image,
        .wp-block-woocommerce-product-image,
        .wp-block-post-featured-image
      ),
    .wp-block-woocommerce-product-template
      > li
      :is(
        .wc-block-components-product-image,
        .wp-block-woocommerce-product-image,
        .wp-block-post-featured-image
      ),
    .wc-block-grid__product .wc-block-grid__product-image
  ) {
  opacity: 1 !important;
  filter: none !important;
  background: transparent !important;
}
body.swth-style-layer
  :is(
    ul.products li.product:hover img,
    ul.products
      li.product
      > a:is(
        .woocommerce-LoopProduct-link,
        .woocommerce-loop-product__link
      ):hover
      img,
    .wc-block-product-template
      > li:hover
      :is(
        .wc-block-components-product-image,
        .wp-block-woocommerce-product-image,
        .wp-block-post-featured-image
      )
      img,
    .wp-block-woocommerce-product-template
      > li:hover
      :is(
        .wc-block-components-product-image,
        .wp-block-woocommerce-product-image,
        .wp-block-post-featured-image
      )
      img,
    .wc-block-grid__product:hover .wc-block-grid__product-image img,
    .wc-block-grid__product .wc-block-grid__product-image:hover img
  ) {
  opacity: 1 !important;
  filter: none !important;
}
body.swth-style-layer:is(
    .swth-card-image-hover-overlay,
    .swth-card-image-hover-zoom-overlay
  )
  ul.products
  li.product:hover
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  )::before,
body.swth-style-layer:is(
    .swth-card-image-hover-overlay,
    .swth-card-image-hover-zoom-overlay
  )
  ul.products
  li.product
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  ):hover::before,
body.swth-style-layer:is(
    .swth-card-image-hover-overlay,
    .swth-card-image-hover-zoom-overlay
  )
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li:hover
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  )::before,
body.swth-style-layer:is(
    .swth-card-image-hover-overlay,
    .swth-card-image-hover-zoom-overlay
  )
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  ):hover::before,
body.swth-style-layer:is(
    .swth-card-image-hover-overlay,
    .swth-card-image-hover-zoom-overlay
  )
  .wc-block-grid__product:hover
  .wc-block-grid__product-image::before,
body.swth-style-layer:is(
    .swth-card-image-hover-overlay,
    .swth-card-image-hover-zoom-overlay
  )
  .wc-block-grid__product
  .wc-block-grid__product-image:hover::before {
  opacity: 1 !important;
  background: var(--swth-card-image-hover-overlay) !important;
  background-color: var(--swth-card-image-hover-overlay) !important;
  background-image: none !important;
}
body.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  ul.products
  li.product:hover
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > img,
body.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link):hover
  > img,
body.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li:hover
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  )
  img,
body.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  ):hover
  img,
body.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  .wc-block-grid__product:hover
  .wc-block-grid__product-image
  img,
body.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  .wc-block-grid__product
  .wc-block-grid__product-image:hover
  img {
  transform: var(--swth-card-image-hover-scale) !important;
}
body.swth-style-layer.swth-style-layer.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  ul.products
  li.product:hover
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > img,
body.swth-style-layer.swth-style-layer.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link):hover
  > img,
body.swth-style-layer.swth-style-layer.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li:hover
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  )
  img,
body.swth-style-layer.swth-style-layer.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  ):hover
  img,
body.swth-style-layer.swth-style-layer.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  .wc-block-grid__product:hover
  .wc-block-grid__product-image
  img,
body.swth-style-layer.swth-style-layer.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  .wc-block-grid__product
  .wc-block-grid__product-image:hover
  img,
body.swth-style-layer.swth-style-layer.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  :is(.wc-block-featured-product, .wp-block-woocommerce-featured-product):hover
  :is(.wc-block-featured-product__background-image, img) {
  transform: var(--swth-card-image-hover-scale) !important;
}
body.swth-style-layer.swth-style-layer.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  ul.products
  li.product:hover
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > .swth-card-media-frame
  > img,
body.swth-style-layer.swth-style-layer.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link):hover
  > .swth-card-media-frame
  > img {
  transform: var(--swth-card-image-hover-scale) !important;
}
body.swth-card-title-enabled
  :is(
    ul.products li.product .woocommerce-loop-product__title,
    .wc-block-product-template
      > li
      :is(
        .wp-block-post-title,
        .wc-block-components-product-title,
        .wc-block-components-product-name
      ),
    .wp-block-woocommerce-product-template
      > li
      :is(
        .wp-block-post-title,
        .wc-block-components-product-title,
        .wc-block-components-product-name
      ),
    .wc-block-grid__product .wc-block-grid__product-title
  ) {
  position: relative !important;
  z-index: 4 !important;
  display: flex !important;
  justify-content: var(--swth-card-title-justify) !important;
  width: 100% !important;
  margin: 0 !important;
  color: var(--swth-card-title-color) !important;
  background: var(--swth-card-title-bg) !important;
  border-radius: var(--swth-card-title-radius) !important;
  font-family: var(
    --swth-card-title-font-family,
    var(
      --swth-showit-heading-font,
      var(--wc-heading-font, "DM Serif Display", Georgia, serif)
    )
  ) !important;
  font-size: var(--swth-card-title-font-size-desktop) !important;
  font-size: clamp(
    14px,
    8cqw,
    var(--swth-card-title-font-size-desktop)
  ) !important;
  font-weight: var(--swth-card-title-font-weight) !important;
  line-height: 1.18 !important;
  letter-spacing: var(--swth-card-title-letter-spacing, 0) !important;
  text-align: var(--swth-card-title-align) !important;
  text-shadow: var(--swth-card-title-shadow) !important;
  box-sizing: border-box !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}
body.swth-card-title-enabled
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wp-block-post-title,
    .wc-block-components-product-title,
    .wc-block-components-product-name
  )
  a,
body.swth-card-title-enabled
  .wc-block-grid__product
  .wc-block-grid__product-title
  a {
  color: inherit !important;
  font: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  text-align: inherit !important;
  text-decoration: none !important;
}
body.swth-card-title-enabled
  :is(
    ul.products li.product .price,
    .wc-block-grid__product-price,
    .wp-block-woocommerce-product-price,
    .wc-block-components-product-price
  ) {
  letter-spacing: var(--swth-card-price-letter-spacing, normal) !important;
}
body.swth-card-title-enabled
  :is(
    ul.products li.product .price,
    .wc-block-grid__product-price,
    .wp-block-woocommerce-product-price,
    .wc-block-components-product-price
  )
  :is(
    .amount,
    .woocommerce-Price-amount,
    .woocommerce-Price-currencySymbol,
    bdi,
    del,
    ins
  ) {
  letter-spacing: inherit !important;
}
body.swth-card-title-enabled.swth-card-title-position-overlay-bottom
  ul.products
  li.product
  .woocommerce-loop-product__title {
  position: absolute !important;
  inset: auto 0 0 !important;
  align-items: flex-end !important;
  height: var(--swth-card-title-bg-height) !important;
  min-height: 0 !important;
  padding: var(--swth-card-title-padding) !important;
  overflow: visible !important;
}
body.swth-card-title-enabled.swth-card-title-position-overlay-top
  ul.products
  li.product
  .woocommerce-loop-product__title {
  position: absolute !important;
  inset: 0 0 auto !important;
  align-items: flex-start !important;
  height: var(--swth-card-title-bg-height) !important;
  min-height: 0 !important;
  padding: var(--swth-card-title-padding) !important;
  overflow: visible !important;
}
body.swth-card-title-enabled.swth-card-title-position-overlay-center
  ul.products
  li.product
  .woocommerce-loop-product__title {
  position: absolute !important;
  inset: 0 !important;
  align-items: center !important;
  min-height: 100% !important;
  padding: var(--swth-card-title-padding) !important;
}
body.swth-card-title-enabled.swth-card-title-position-below-image
  ul.products
  li.product
  .woocommerce-loop-product__title {
  position: relative !important;
  inset: auto !important;
  grid-area: title !important;
  align-items: flex-start !important;
  height: var(--swth-card-title-bg-height) !important;
  min-height: 0 !important;
  padding: var(--swth-card-title-padding) !important;
  overflow: visible !important;
}
body.swth-card-title-enabled.swth-card-title-position-overlay-bottom
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wp-block-post-title,
    .wc-block-components-product-title,
    .wc-block-components-product-name
  ),
body.swth-card-title-enabled.swth-card-title-position-overlay-bottom
  .wc-block-grid__product
  .wc-block-grid__product-title {
  grid-area: media !important;
  align-self: end !important;
  justify-self: stretch !important;
  align-items: flex-end !important;
  height: var(--swth-card-title-bg-height) !important;
  min-height: 0 !important;
  padding: var(--swth-card-title-padding) !important;
  overflow: visible !important;
}
body.swth-card-title-enabled.swth-card-title-position-overlay-top
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wp-block-post-title,
    .wc-block-components-product-title,
    .wc-block-components-product-name
  ),
body.swth-card-title-enabled.swth-card-title-position-overlay-top
  .wc-block-grid__product
  .wc-block-grid__product-title {
  grid-area: media !important;
  align-self: start !important;
  justify-self: stretch !important;
  align-items: flex-start !important;
  height: var(--swth-card-title-bg-height) !important;
  min-height: 0 !important;
  padding: var(--swth-card-title-padding) !important;
  overflow: visible !important;
}
body.swth-card-title-enabled.swth-card-title-position-overlay-center
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wp-block-post-title,
    .wc-block-components-product-title,
    .wc-block-components-product-name
  ),
body.swth-card-title-enabled.swth-card-title-position-overlay-center
  .wc-block-grid__product
  .wc-block-grid__product-title {
  grid-area: media !important;
  align-self: stretch !important;
  justify-self: stretch !important;
  align-items: center !important;
  min-height: 100% !important;
  padding: var(--swth-card-title-padding) !important;
}
body.swth-card-title-enabled.swth-card-title-position-below-image
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wp-block-post-title,
    .wc-block-components-product-title,
    .wc-block-components-product-name
  ),
body.swth-card-title-enabled.swth-card-title-position-below-image
  .wc-block-grid__product
  .wc-block-grid__product-title {
  grid-area: title !important;
  align-self: start !important;
  justify-self: stretch !important;
  align-items: flex-start !important;
  height: var(--swth-card-title-bg-height) !important;
  min-height: 0 !important;
  padding: var(--swth-card-title-padding) !important;
  overflow: visible !important;
}
body.swth-card-title-enabled.swth-card-title-position-below-image.swth-card-title-bg-none
  :is(
    ul.products li.product .woocommerce-loop-product__title,
    .wc-block-product-template
      > li
      :is(
        .wp-block-post-title,
        .wc-block-components-product-title,
        .wc-block-components-product-name
      ),
    .wp-block-woocommerce-product-template
      > li
      :is(
        .wp-block-post-title,
        .wc-block-components-product-title,
        .wc-block-components-product-name
      ),
    .wc-block-grid__product .wc-block-grid__product-title
  ) {
  background: transparent !important;
}
body.swth-card-category-enabled .swth-card-copy {
  position: relative !important;
  z-index: 4 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: var(--swth-card-category-gap) !important;
  box-sizing: border-box !important;
  width: 100% !important;
  margin: 0 !important;
  padding: var(--swth-card-title-padding) !important;
  border-radius: var(--swth-card-title-radius) !important;
  background: var(--swth-card-title-bg) !important;
}
body.swth-card-title-enabled.swth-card-category-enabled
  :is(
    ul.products li.product,
    .wc-block-product-template > li,
    .wp-block-woocommerce-product-template > li,
    .wc-block-grid__product
  )
  .swth-card-copy
  :is(
    .woocommerce-loop-product__title,
    .wp-block-post-title,
    .wc-block-components-product-title,
    .wc-block-components-product-name,
    .wc-block-grid__product-title
  ) {
  position: relative !important;
  inset: auto !important;
  z-index: auto !important;
  grid-area: auto !important;
  align-self: auto !important;
  justify-self: auto !important;
  align-items: flex-start !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  overflow: visible !important;
}
body.swth-card-category-enabled.swth-card-title-position-overlay-bottom
  .swth-card-copy {
  grid-area: media !important;
  align-self: end !important;
  justify-self: stretch !important;
  justify-content: flex-end !important;
  height: var(--swth-card-title-bg-height) !important;
  min-height: 0 !important;
  overflow: visible !important;
}
body.swth-card-category-enabled.swth-card-title-position-overlay-top
  .swth-card-copy {
  grid-area: media !important;
  align-self: start !important;
  justify-self: stretch !important;
  justify-content: flex-start !important;
  height: var(--swth-card-title-bg-height) !important;
  min-height: 0 !important;
  overflow: visible !important;
}
body.swth-card-category-enabled.swth-card-title-position-overlay-center
  .swth-card-copy {
  grid-area: media !important;
  align-self: stretch !important;
  justify-self: stretch !important;
  justify-content: center !important;
  min-height: 100% !important;
}
body.swth-card-category-enabled.swth-card-title-position-below-image
  .swth-card-copy {
  grid-area: title !important;
  align-self: start !important;
  justify-self: stretch !important;
  justify-content: flex-start !important;
  min-height: var(--swth-card-title-bg-height) !important;
  overflow: visible !important;
}
body.swth-card-category-enabled.swth-card-title-position-below-image
  .swth-card-copy {
  padding-inline: 0 !important;
}
body.swth-card-category-enabled.swth-card-title-bg-none .swth-card-copy {
  background: transparent !important;
}
body.swth-card-category-enabled .swth-card-categories {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  justify-content: var(--swth-card-category-justify) !important;
  order: 0;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--swth-card-category-color) !important;
  background: transparent !important;
  font-family: var(
    --swth-card-category-font-family,
    var(
      --swth-showit-heading-font,
      var(--wc-heading-font, "DM Serif Display", Georgia, serif)
    )
  ) !important;
  font-size: var(--swth-card-category-font-size-desktop) !important;
  font-weight: var(--swth-card-category-font-weight) !important;
  line-height: 1.3 !important;
  letter-spacing: var(--swth-card-category-letter-spacing) !important;
  text-align: var(--swth-card-category-align) !important;
  text-transform: var(--swth-card-category-text-transform) !important;
  text-shadow: none !important;
  box-sizing: border-box !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}
body.swth-card-category-enabled .swth-card-category-separator {
  margin-inline: 0.45em !important;
}
body.swth-card-category-enabled .swth-card-category-link {
  color: inherit !important;
  text-decoration: none !important;
  cursor: pointer !important;
}
body.swth-card-title-enabled:not(.swth-card-category-enabled)
  :is(
    ul.products li.product .woocommerce-loop-product__title,
    .wc-block-product-template
      > li
      :is(
        .wp-block-post-title,
        .wc-block-components-product-title,
        .wc-block-components-product-name
      ),
    .wp-block-woocommerce-product-template
      > li
      :is(
        .wp-block-post-title,
        .wc-block-components-product-title,
        .wc-block-components-product-name
      ),
    .wc-block-grid__product .wc-block-grid__product-title
  ) {
  padding-block: var(--swth-card-title-padding-top)
    var(--swth-card-title-padding-bottom) !important;
}
body.swth-card-category-enabled .swth-card-copy {
  padding-block: var(--swth-card-title-padding-top)
    var(--swth-card-title-padding-bottom) !important;
}
body.swth-card-category-enabled.swth-card-category-position-below-title
  .swth-card-copy
  :is(
    .woocommerce-loop-product__title,
    .wp-block-post-title,
    .wc-block-components-product-title,
    .wc-block-components-product-name,
    .wc-block-grid__product-title
  ) {
  order: 1;
}
body.swth-card-category-enabled.swth-card-category-position-below-title
  .swth-card-categories {
  order: 2;
}
body.swth-style-layer
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > *:not(img):not(.woocommerce-loop-product__title):not(.onsale):not(
    .swth-product-label-badge
  ) {
  position: relative !important;
  z-index: 4 !important;
}
body.swth-style-layer
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  > :is(.onsale, .swth-product-label-badge),
body.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  )
  > :is(.onsale, .swth-product-label-badge),
body.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-image
  > :is(.onsale, .swth-product-label-badge),
body.swth-style-layer
  :is(.wc-block-featured-product, .wp-block-woocommerce-featured-product)
  .swth-product-label-badge--overlay {
  position: absolute !important;
  inset: 12px auto auto 12px !important;
  z-index: 6 !important;
  margin: 0 !important;
  transform: none !important;
  justify-self: start !important;
  align-self: start !important;
}
body.swth-style-layer.swth-price-button-hides-prices
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  .price {
  display: none !important;
}
body.swth-style-layer
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link)
  .star-rating {
  display: none !important;
}
body.swth-style-layer ul.products li.product .screen-reader-text {
  flex-basis: 0;
}
body.swth-style-layer ul.products li.product .shop-product-button,
body.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  .shop-product-button {
  grid-area: primary !important;
  max-width: 100% !important;
  margin: 0 !important;
}
body.swth-style-layer ul.products li.product .live-view-button,
body.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  .live-view-button {
  grid-area: secondary !important;
  max-width: 100% !important;
  margin: 0 !important;
}
@media (max-width: 1100px) {
  body.swth-style-layer ul.products li.product .shop-product-button,
  body.swth-style-layer
    :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
    > li
    .shop-product-button {
    width: 100% !important;
    justify-self: stretch !important;
  }
  body.swth-style-layer ul.products li.product .live-view-button,
  body.swth-style-layer
    :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
    > li
    .live-view-button {
    width: 100% !important;
    justify-self: stretch !important;
  }
}
@media (min-width: 1101px) {
  body.swth-style-layer ul.products li.product .shop-product-button,
  body.swth-style-layer
    :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
    > li
    .shop-product-button {
    width: var(--swth-price-button-width) !important;
    justify-self: end !important;
  }
  body.swth-style-layer ul.products li.product .live-view-button,
  body.swth-style-layer
    :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
    > li
    .live-view-button {
    width: var(--swth-live-preview-button-width) !important;
    justify-self: start !important;
  }
}
body.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  > .has-live-view-inline {
  grid-column: 1/-1 !important;
  display: grid !important;
  grid-template-columns: minmax(0, var(--swth-price-button-width)) minmax(
      0,
      var(--swth-live-preview-button-width)
    ) !important;
  justify-content: center !important;
  gap: var(--swth-card-button-gap) !important;
  width: 100% !important;
  margin: 0 !important;
}
body.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(.wc-block-components-product-button, .wp-block-button):not(
    .has-live-view-inline
  ):has(.shop-product-button) {
  grid-column: 1/-1 !important;
  margin: 0 !important;
  width: 100% !important;
}
body.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  > .has-live-view-inline
  > * {
  max-width: 100% !important;
  margin: 0 !important;
  min-width: 0 !important;
  justify-self: center !important;
}
body.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  > .has-live-view-inline
  :is(.shop-product-button, .live-view-button) {
  grid-area: auto !important;
  grid-column: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  justify-self: center !important;
}
body.swth-style-layer
  :is(
    .woocommerce ul.products li.product,
    .wc-block-product-template > li,
    .wp-block-woocommerce-product-template > li,
    .wc-block-grid__product
  )
  :is(.shop-product-button, .live-view-button) {
  box-sizing: border-box !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
body.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(.wp-block-woocommerce-product-price, .wc-block-components-product-price) {
  grid-column: 1/-1 !important;
}
body.swth-style-layer .wc-block-single-product .has-live-view-inline {
  display: grid !important;
  grid-template-columns: minmax(0, var(--swth-price-button-width)) minmax(
      0,
      var(--swth-live-preview-button-width)
    ) !important;
  justify-content: center !important;
  gap: var(--swth-button-pair-gap) !important;
  width: 100% !important;
  margin: 0 !important;
}
body.swth-style-layer
  .wc-block-single-product
  .has-live-view-inline
  > :is(.shop-product-button, .live-view-button) {
  width: min(100%, var(--swth-price-button-width)) !important;
  max-width: 100% !important;
  margin: 0 !important;
  justify-self: center !important;
}
body.swth-style-layer
  .wc-block-single-product
  .has-live-view-inline
  > .live-view-button {
  width: min(100%, var(--swth-live-preview-button-width)) !important;
}
/* Classic single-product actions use one responsive layout contract for the purchase and Live View buttons. */
body.swth-style-layer.single-product
  .summary
  :is(
    form.cart:not(.variations_form):not(.grouped_form),
    .woocommerce-variation-add-to-cart
  ):has(> .single_add_to_cart_button):has(> .live-view-button) {
  --swth-price-button-width: 100%;
  --swth-live-preview-button-width: 100%;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  gap: var(--swth-button-pair-gap) !important;
  width: 100% !important;
  max-width: 100% !important;
}
body.swth-style-layer.single-product
  .summary
  :is(
    form.cart:not(.variations_form):not(.grouped_form),
    .woocommerce-variation-add-to-cart
  ):has(> .single_add_to_cart_button):has(> .live-view-button)
  > :not(.single_add_to_cart_button):not(.live-view-button) {
  grid-column: 1/-1 !important;
  max-width: 100% !important;
}
body.swth-style-layer.single-product
  .summary
  :is(
    form.cart:not(.variations_form):not(.grouped_form),
    .woocommerce-variation-add-to-cart
  ):has(> .single_add_to_cart_button):has(> .live-view-button)
  > :is(.single_add_to_cart_button, .live-view-button) {
  grid-area: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  justify-self: stretch !important;
}
body.swth-style-layer.single-product
  .summary
  :is(
    form.cart:not(.variations_form):not(.grouped_form),
    .woocommerce-variation-add-to-cart
  ):has(> .single_add_to_cart_button):has(> .live-view-button)
  > .single_add_to_cart_button {
  grid-column: 1 !important;
}
body.swth-style-layer.single-product
  .summary
  :is(
    form.cart:not(.variations_form):not(.grouped_form),
    .woocommerce-variation-add-to-cart
  ):has(> .single_add_to_cart_button):has(> .live-view-button)
  > .live-view-button {
  grid-column: 2 !important;
}
@media (max-width: 1100px) {
  body.swth-style-layer.single-product
    .summary
    :is(
      form.cart:not(.variations_form):not(.grouped_form),
      .woocommerce-variation-add-to-cart
    ):has(> .single_add_to_cart_button):has(> .live-view-button) {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body.swth-style-layer.single-product
    .summary
    :is(
      form.cart:not(.variations_form):not(.grouped_form),
      .woocommerce-variation-add-to-cart
    ):has(> .single_add_to_cart_button):has(> .live-view-button)
    > :is(.single_add_to_cart_button, .live-view-button) {
    grid-column: 1 !important;
  }
}

/* Gutenberg keeps its native product card layout; only the plugin's own wrappers get the card grid contract above. */
body.swth-style-layer .wc-block-grid__product .wc-block-grid__product-link {
  grid-area: media !important;
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-areas: "media" !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  aspect-ratio: var(--swth-card-media-aspect-ratio, 1/1) !important;
  overflow: hidden !important;
  isolation: isolate !important;
  contain: paint !important;
  background: transparent !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  backface-visibility: hidden !important;
  transform: translateZ(0) !important;
}
body.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-link::after {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  z-index: 2 !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  background: var(--swth-card-title-image-overlay) !important;
  background-color: var(--swth-card-title-image-overlay) !important;
  background-image: none !important;
  pointer-events: none !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  transform: none !important;
  box-sizing: border-box !important;
}
body.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-link::before {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  z-index: 3 !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  background: var(--swth-card-image-hover-overlay) !important;
  background-color: var(--swth-card-image-hover-overlay) !important;
  background-image: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  transform: none !important;
  box-sizing: border-box !important;
  transition: opacity var(--swth-card-image-hover-speed) ease !important;
}
body.swth-card-title-enabled.swth-card-title-overlay-none
  .wc-block-grid__product
  .wc-block-grid__product-link::after {
  content: none !important;
  display: none !important;
}
body.swth-style-layer.swth-card-image-hover-none
  .wc-block-grid__product
  .wc-block-grid__product-link::before {
  content: none !important;
  display: none !important;
}
body.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-link
  .wc-block-grid__product-image {
  grid-area: media !important;
  position: static !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
  background: transparent !important;
  box-sizing: border-box !important;
}
body.swth-style-layer .wc-block-grid__product .wc-block-grid__product-link img {
  grid-area: media !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
  opacity: 1 !important;
  filter: none !important;
  transition:
    transform var(--swth-card-image-hover-speed) ease,
    filter var(--swth-card-image-hover-speed) ease !important;
  transform: scale(1) !important;
  transform-origin: center !important;
  backface-visibility: hidden !important;
  will-change: transform !important;
}
body.swth-style-layer.swth-card-media-uncropped
  .wc-block-grid__product
  .wc-block-grid__product-link {
  aspect-ratio: auto !important;
}
body.swth-style-layer.swth-card-media-uncropped
  .wc-block-grid__product
  .wc-block-grid__product-link
  .wc-block-grid__product-image {
  position: relative !important;
  height: auto !important;
}
body.swth-style-layer.swth-card-media-uncropped
  .wc-block-grid__product
  .wc-block-grid__product-link
  img {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: none !important;
  object-fit: contain !important;
  contain: none !important;
}
body.swth-style-layer:is(
    .swth-card-image-hover-overlay,
    .swth-card-image-hover-zoom-overlay
  )
  .wc-block-grid__product:hover
  .wc-block-grid__product-link::before,
body.swth-style-layer:is(
    .swth-card-image-hover-overlay,
    .swth-card-image-hover-zoom-overlay
  )
  .wc-block-grid__product
  .wc-block-grid__product-link:hover::before {
  opacity: 1 !important;
  background: var(--swth-card-image-hover-overlay) !important;
  background-color: var(--swth-card-image-hover-overlay) !important;
  background-image: none !important;
}
body.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  .wc-block-grid__product:hover
  .wc-block-grid__product-link
  img,
body.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  .wc-block-grid__product
  .wc-block-grid__product-link:hover
  img {
  transform: var(--swth-card-image-hover-scale) !important;
}
body.swth-card-title-enabled.swth-card-title-position-overlay-bottom
  .wc-block-grid__product
  .wc-block-grid__product-title {
  position: absolute !important;
  inset: auto 0 0 !important;
  z-index: 4 !important;
  grid-area: auto !important;
  align-self: auto !important;
  justify-self: stretch !important;
  align-items: flex-end !important;
  height: var(--swth-card-title-bg-height) !important;
  min-height: 0 !important;
  padding: var(--swth-card-title-padding) !important;
  overflow: visible !important;
}
body.swth-card-title-enabled.swth-card-title-position-overlay-top
  .wc-block-grid__product
  .wc-block-grid__product-title {
  position: absolute !important;
  inset: 0 0 auto !important;
  z-index: 4 !important;
  grid-area: auto !important;
  align-self: auto !important;
  justify-self: stretch !important;
  align-items: flex-start !important;
  height: var(--swth-card-title-bg-height) !important;
  min-height: 0 !important;
  padding: var(--swth-card-title-padding) !important;
  overflow: visible !important;
}
body.swth-card-title-enabled.swth-card-title-position-overlay-center
  .wc-block-grid__product
  .wc-block-grid__product-title {
  position: absolute !important;
  inset: 0 !important;
  z-index: 4 !important;
  grid-area: auto !important;
  align-self: auto !important;
  justify-self: stretch !important;
  align-items: center !important;
  min-height: 100% !important;
  padding: var(--swth-card-title-padding) !important;
}
body.swth-card-title-enabled.swth-card-title-align-left
  :is(
    ul.products li.product .woocommerce-loop-product__title,
    .wc-block-product-template
      > li
      :is(
        .wp-block-post-title,
        .wc-block-components-product-title,
        .wc-block-components-product-name
      ),
    .wp-block-woocommerce-product-template
      > li
      :is(
        .wp-block-post-title,
        .wc-block-components-product-title,
        .wc-block-components-product-name
      ),
    .wc-block-grid__product .wc-block-grid__product-title
  ) {
  padding-inline-start: 0 !important;
}
body.swth-card-title-enabled.swth-card-title-align-right
  :is(
    ul.products li.product .woocommerce-loop-product__title,
    .wc-block-product-template
      > li
      :is(
        .wp-block-post-title,
        .wc-block-components-product-title,
        .wc-block-components-product-name
      ),
    .wp-block-woocommerce-product-template
      > li
      :is(
        .wp-block-post-title,
        .wc-block-components-product-title,
        .wc-block-components-product-name
      ),
    .wc-block-grid__product .wc-block-grid__product-title
  ) {
  padding-inline-end: 0 !important;
}
body.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-link
  > :is(.onsale, .swth-product-label-badge) {
  position: absolute !important;
  inset: 12px auto auto 12px !important;
  z-index: 6 !important;
  margin: 0 !important;
  transform: none !important;
  justify-self: start !important;
  align-self: start !important;
}
body.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-add-to-cart {
  grid-column: 1/-1 !important;
  width: 100% !important;
  margin: 0 !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: center !important;
  gap: var(--swth-card-button-gap) !important;
}
body.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-add-to-cart.has-live-view-inline {
  display: grid !important;
  grid-template-columns: minmax(0, var(--swth-price-button-width)) minmax(
      0,
      var(--swth-live-preview-button-width)
    ) !important;
  justify-content: center !important;
}
body.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-add-to-cart
  > :is(.shop-product-button, .live-view-button) {
  width: min(100%, var(--swth-price-button-width)) !important;
  max-width: 100% !important;
  margin: 0 !important;
  justify-self: center !important;
}
body.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-add-to-cart
  > .live-view-button {
  width: min(100%, var(--swth-live-preview-button-width)) !important;
}

body.swth-style-layer
  :is(.wc-block-featured-product, .wp-block-woocommerce-featured-product) {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  contain: paint !important;
  box-sizing: border-box !important;
  background-size: cover !important;
  background-position: center !important;
}
body.swth-style-layer
  :is(.wc-block-featured-product, .wp-block-woocommerce-featured-product)
  :is(.wc-block-featured-product__background-image, img) {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
  opacity: 1 !important;
  filter: none !important;
  transform: scale(1) !important;
  transform-origin: center !important;
  backface-visibility: hidden !important;
  will-change: transform !important;
  transition:
    transform var(--swth-card-image-hover-speed) ease,
    filter var(--swth-card-image-hover-speed) ease !important;
}
body.swth-card-title-enabled
  :is(
    .wc-block-featured-product,
    .wp-block-woocommerce-featured-product
  )::after {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  z-index: 2 !important;
  display: block !important;
  background: var(--swth-card-title-image-overlay) !important;
  pointer-events: none !important;
  mix-blend-mode: normal !important;
  filter: none !important;
}
body.swth-card-title-enabled.swth-card-title-overlay-none
  :is(
    .wc-block-featured-product,
    .wp-block-woocommerce-featured-product
  )::after {
  content: none !important;
  display: none !important;
}
body.swth-style-layer
  :is(
    .wc-block-featured-product,
    .wp-block-woocommerce-featured-product
  )::before {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  z-index: 3 !important;
  display: block !important;
  background: var(--swth-card-image-hover-overlay) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  transition: opacity var(--swth-card-image-hover-speed) ease !important;
}
body.swth-style-layer.swth-card-image-hover-none
  :is(
    .wc-block-featured-product,
    .wp-block-woocommerce-featured-product
  )::before {
  content: none !important;
  display: none !important;
}
body.swth-style-layer:is(
    .swth-card-image-hover-overlay,
    .swth-card-image-hover-zoom-overlay
  )
  :is(
    .wc-block-featured-product,
    .wp-block-woocommerce-featured-product
  ):hover::before {
  opacity: 1 !important;
}
body.swth-style-layer:is(
    .swth-card-image-hover-zoom,
    .swth-card-image-hover-zoom-overlay
  )
  :is(.wc-block-featured-product, .wp-block-woocommerce-featured-product):hover
  :is(.wc-block-featured-product__background-image, img) {
  transform: var(--swth-card-image-hover-scale) !important;
}
/* Keep the hover overlay exactly inside the clipped media box. Negative insets can leave a fractional edge seam. */
body.swth-style-layer.swth-style-layer.swth-style-layer:not(
    .swth-card-title-position-below-image
  )
  ul.products
  li.product
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  )::before {
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  aspect-ratio: auto !important;
}
body.swth-style-layer.swth-style-layer.swth-style-layer.swth-card-title-position-below-image
  ul.products
  li.product
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  )::before {
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  aspect-ratio: auto !important;
}
body.swth-style-layer.swth-style-layer.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  )::before,
body.swth-style-layer.swth-style-layer.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-image::before {
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  aspect-ratio: auto !important;
}
body.swth-style-layer.swth-style-layer.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-link::before {
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  aspect-ratio: auto !important;
}
body.swth-style-layer.swth-style-layer.swth-style-layer
  :is(
    .wc-block-featured-product,
    .wp-block-woocommerce-featured-product
  )::before {
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  aspect-ratio: auto !important;
}
body.swth-style-layer.swth-style-layer.swth-style-layer.swth-card-title-position-below-image.swth-card-media-uncropped
  ul.products
  li.product
  > a:is(
    .woocommerce-LoopProduct-link,
    .woocommerce-loop-product__link
  )::before {
  grid-area: media !important;
  inset: 0 !important;
  width: auto !important;
  height: auto !important;
  aspect-ratio: auto !important;
}
/* Avoid a composited paint boundary producing a one-pixel seam during image zoom. */
body.swth-style-layer.swth-style-layer.swth-style-layer
  ul.products
  li.product
  > a:is(.woocommerce-LoopProduct-link, .woocommerce-loop-product__link),
body.swth-style-layer.swth-style-layer.swth-style-layer
  :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
  > li
  :is(
    .wc-block-components-product-image,
    .wp-block-woocommerce-product-image,
    .wp-block-post-featured-image
  ),
body.swth-style-layer.swth-style-layer.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-image,
body.swth-style-layer.swth-style-layer.swth-style-layer
  .wc-block-grid__product
  .wc-block-grid__product-link {
  contain: layout !important;
  transform: none !important;
  backface-visibility: visible !important;
}
body.swth-style-layer
  :is(.wc-block-featured-product, .wp-block-woocommerce-featured-product)
  .wc-block-featured-product__wrapper {
  position: relative !important;
  z-index: 4 !important;
}
body.swth-style-layer.woocommerce-shop .woocommerce-ordering,
body.swth-style-layer.woocommerce-shop .swth_product_sort_widget,
body.swth-style-layer.woocommerce-shop .swth-sidebar-filter {
  color: var(--swth-style-text);
}
body.swth-style-layer.woocommerce-shop .swth-product-sort__select {
  min-width: 190px;
}
body.swth-style-preset-hestia-studio {
  --swth-card-title-font-family: var(--swth-brand-heading-font);
  --swth-sticky-cart-title-font: var(--swth-brand-heading-font);
}
body.swth-style-preset-hestia-studio .swth-product-label-badge {
  font-family: var(--swth-brand-mono-font) !important;
  letter-spacing: var(--swth-badge-letter-spacing) !important;
}
body.swth-style-preset-hestia-studio
  :is(
    .swth-product-search__submit,
    .swth-product-sort__submit,
    .swth-sidebar-filter__submit
  ) {
  font-family: var(--swth-brand-mono-font) !important;
  letter-spacing: var(--swth-widget-content-letter-spacing, 0) !important;
}
@media (max-width: 767px) {
  body.swth-style-layer
    :is(.swth-product-shortcode-collection, .showit-moved-related-products)
    :is(
      ul.products li.product,
      .wc-block-product-template > li,
      .wp-block-woocommerce-product-template > li,
      .wc-block-grid__product
    ) {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas: "media" "primary" "secondary" !important;
  }
  body.swth-card-title-enabled.swth-card-title-position-below-image
    :is(
      .wc-block-product-template > li,
      .wp-block-woocommerce-product-template > li,
      .wc-block-grid__product
    ) {
    grid-template-areas: "media" "title" "primary" "secondary" !important;
  }
  body.swth-card-title-enabled
    :is(
      ul.products li.product .woocommerce-loop-product__title,
      .wc-block-product-template
        > li
        :is(
          .wp-block-post-title,
          .wc-block-components-product-title,
          .wc-block-components-product-name
        ),
      .wp-block-woocommerce-product-template
        > li
        :is(
          .wp-block-post-title,
          .wc-block-components-product-title,
          .wc-block-components-product-name
        ),
      .wc-block-grid__product .wc-block-grid__product-title
    ) {
    font-size: var(--swth-card-title-font-size-mobile) !important;
    font-size: clamp(
      13px,
      8.5cqw,
      var(--swth-card-title-font-size-mobile)
    ) !important;
  }
  body.swth-style-layer
    :is(.swth-product-shortcode-collection, .showit-moved-related-products)
    :is(.wc-block-product-template, .wp-block-woocommerce-product-template)
    > li
    > .has-live-view-inline {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
@media (max-width: 767px) {
  body.swth-card-category-enabled .swth-card-categories {
    font-size: var(--swth-card-category-font-size-mobile) !important;
  }
}

/* Stack card actions on mobile without changing WooCommerce collection columns. */
@media (max-width: 767px) {
  body.swth-style-layer.swth-style-layer
    :is(
      ul.products > li.product,
      .wc-block-product-template > li,
      .wp-block-woocommerce-product-template > li,
      .wc-block-grid__product
    ) {
    --swth-price-button-width: 100%;
    --swth-live-preview-button-width: 100%;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas: "media" "primary" "secondary" !important;
    column-gap: 0 !important;
    row-gap: 12px !important;
  }
  body.swth-style-layer.swth-card-title-enabled.swth-card-title-position-below-image
    :is(
      ul.products > li.product,
      .wc-block-product-template > li,
      .wp-block-woocommerce-product-template > li,
      .wc-block-grid__product
    ) {
    grid-template-areas: "media" "title" "primary" "secondary" !important;
  }
  body.swth-style-layer.swth-style-layer
    :is(
      ul.products li.product,
      .wc-block-product-template > li,
      .wp-block-woocommerce-product-template > li,
      .wc-block-grid__product
    )
    :is(.shop-product-button, .live-view-button) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    white-space: normal !important;
    align-self: start !important;
  }
  body.swth-style-layer.swth-style-layer
    :is(
      ul.products > li.product,
      .wc-block-product-template > li,
      .wp-block-woocommerce-product-template > li,
      .wc-block-grid__product
    )
    > .live-view-button,
  body.swth-style-layer.swth-style-layer
    .swth-native-product-search-results
    .swth-search-card-actions
    > .live-view-button {
    margin-block-start: calc(var(--swth-card-button-gap) - 12px) !important;
  }
  body.swth-style-layer.swth-style-layer
    :is(
      .wc-block-product-template,
      .wp-block-woocommerce-product-template,
      .wc-block-grid__products
    )
    > :is(li.product, .wc-block-grid__product, li)
    :is(
      .wc-block-components-product-button,
      .wp-block-button,
      .wc-block-grid__product-add-to-cart
    ).has-live-view-inline {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
@media (min-width: 768px) and (max-width: 1100px) {
  body.swth-style-layer.swth-style-layer.swth-style-layer
    :is(
      ul.products > li.product,
      .wc-block-product-template > li,
      .wp-block-woocommerce-product-template > li,
      .wc-block-grid__product
    ) {
    --swth-price-button-width: 100%;
    --swth-live-preview-button-width: 100%;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas: "media" "primary" "secondary" !important;
    column-gap: 0 !important;
    row-gap: 8px !important;
  }
  body.swth-style-layer.swth-card-title-enabled.swth-card-title-position-below-image
    :is(
      ul.products > li.product,
      .wc-block-product-template > li,
      .wp-block-woocommerce-product-template > li,
      .wc-block-grid__product
    ) {
    grid-template-areas: "media" "title" "primary" "secondary" !important;
  }
  body.swth-style-layer.swth-style-layer
    :is(
      ul.products li.product .woocommerce-loop-product__title,
      .wc-block-product-template
        > li
        :is(
          .wp-block-post-title,
          .wc-block-components-product-title,
          .wc-block-components-product-name
        ),
      .wp-block-woocommerce-product-template
        > li
        :is(
          .wp-block-post-title,
          .wc-block-components-product-title,
          .wc-block-components-product-name
        ),
      .wc-block-grid__product .wc-block-grid__product-title
    ) {
    font-size: clamp(
      12px,
      8cqw,
      var(--swth-card-title-font-size-desktop)
    ) !important;
  }
  body.swth-style-layer.swth-style-layer.swth-style-layer
    :is(
      ul.products li.product,
      .wc-block-product-template > li,
      .wp-block-woocommerce-product-template > li,
      .wc-block-grid__product
    )
    :is(.shop-product-button, .live-view-button) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 40px !important;
    height: auto !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    white-space: normal !important;
    justify-self: stretch !important;
    align-self: start !important;
  }
  body.swth-style-layer.swth-style-layer.swth-style-layer
    :is(
      ul.products > li.product,
      .wc-block-product-template > li,
      .wp-block-woocommerce-product-template > li,
      .wc-block-grid__product
    )
    > .live-view-button,
  body.swth-style-layer.swth-style-layer.swth-style-layer
    .swth-native-product-search-results
    .swth-search-card-actions
    > .live-view-button {
    margin-block-start: calc(var(--swth-card-button-gap) - 8px) !important;
  }
  body.swth-style-layer.swth-style-layer.swth-style-layer
    :is(
      ul.products li.product,
      .wc-block-product-template > li,
      .wp-block-woocommerce-product-template > li,
      .wc-block-grid__product
    )
    :is(.shop-product-button, .live-view-button)
    .swth-button-icon {
    width: 1em !important;
    height: 1em !important;
  }
  body.swth-style-layer.swth-style-layer.swth-style-layer
    :is(
      .wc-block-product-template,
      .wp-block-woocommerce-product-template,
      .wc-block-grid__products
    )
    > :is(li.product, .wc-block-grid__product, li)
    :is(
      .wc-block-components-product-button,
      .wp-block-button,
      .wc-block-grid__product-add-to-cart
    ).has-live-view-inline {
    grid-column: 1/-1 !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
  }
}
/* Desktop cards keep both actions on one row with fluid tracks; mobile and tablet stay stacked above. */
@media (min-width: 1101px) {
  body.swth-style-layer.swth-style-layer
    :is(
      ul.products,
      .wc-block-product-template,
      .wp-block-woocommerce-product-template,
      .wc-block-grid__products
    )
    > :is(li.product, .wc-block-grid__product, li) {
    --swth-price-button-width: 100%;
    --swth-live-preview-button-width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-areas: "media media" "primary secondary" !important;
    column-gap: var(--swth-card-button-gap) !important;
    row-gap: 12px !important;
  }
  body.swth-card-title-enabled.swth-card-title-position-below-image
    :is(
      ul.products,
      .wc-block-product-template,
      .wp-block-woocommerce-product-template,
      .wc-block-grid__products
    )
    > :is(li.product, .wc-block-grid__product, li) {
    grid-template-areas: "media media" "title title" "primary secondary" !important;
  }
  body.swth-style-layer.swth-style-layer
    :is(
      ul.products,
      .wc-block-product-template,
      .wp-block-woocommerce-product-template,
      .wc-block-grid__products
    )
    > :is(li.product, .wc-block-grid__product, li)
    :is(.shop-product-button, .live-view-button) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    white-space: normal !important;
    justify-self: stretch !important;
    align-self: stretch !important;
  }
  body.swth-style-layer.swth-style-layer
    :is(
      .woocommerce,
      .woocommerce-page,
      .related.products,
      .upsells.products,
      .cross-sells
    )
    ul.products
    > li.product
    > :is(.shop-product-button, .live-view-button) {
    margin: 0 !important;
    align-self: stretch !important;
  }
  body.swth-style-layer.swth-style-layer
    :is(
      ul.products,
      .wc-block-product-template,
      .wp-block-woocommerce-product-template,
      .wc-block-grid__products
    )
    > :is(li.product, .wc-block-grid__product, li)
    :is(
      .wc-block-components-product-button,
      .wp-block-button,
      .wc-block-grid__product-add-to-cart
    ).has-live-view-inline {
    grid-column: 1/-1 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
  }
}
body.swth-style-layer.swth-style-layer
  :is(
    ul.products,
    .wc-block-product-template,
    .wp-block-woocommerce-product-template,
    .wc-block-grid__products
  ):is(.columns-4, .columns-5, .columns-6)
  > :is(li.product, .wc-block-grid__product, li)
  :is(.shop-product-button, .live-view-button)
  .swth-button-icon {
  display: none !important;
}
/* Keep the configured overlay alive when Showit's late reset targets related cards. */
body:not(
    #swth-card-hover-exclusion
  ).swth-style-layer.swth-style-layer.swth-style-layer.swth-style-layer
  ul.products
  li.product
  > a.woocommerce-LoopProduct-link:has(> .swth-card-media-frame)::before,
body:not(
    #swth-card-hover-exclusion
  ).swth-style-layer.swth-style-layer.swth-style-layer.swth-style-layer
  ul.products
  li.product
  > a.woocommerce-LoopProduct-link:has(> .swth-card-media-frame)::after {
  content: none !important;
  display: none !important;
}
body:not(
    #swth-card-hover-exclusion
  ).swth-style-layer.swth-style-layer.swth-style-layer.swth-style-layer
  ul.products
  li.product
  > a.woocommerce-LoopProduct-link
  > .swth-card-media-frame {
  clip-path: inset(0) !important;
  overflow: clip !important;
  contain: paint !important;
  transform: translateZ(0) !important;
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
}
body:not(#swth-card-hover-exclusion).swth-card-title-enabled
  ul.products
  li.product
  > a.woocommerce-LoopProduct-link
  > .swth-card-media-frame::after {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  z-index: 2 !important;
  display: block !important;
  background: var(--swth-card-title-image-overlay) !important;
  pointer-events: none !important;
}
body:not(
    #swth-card-hover-exclusion
  ).swth-card-title-enabled.swth-card-title-overlay-none
  ul.products
  li.product
  > a.woocommerce-LoopProduct-link
  > .swth-card-media-frame::after {
  content: none !important;
  display: none !important;
}
body:not(
    #swth-card-hover-exclusion
  ).swth-style-layer.swth-style-layer.swth-style-layer.swth-style-layer:is(
    .swth-card-image-hover-overlay,
    .swth-card-image-hover-zoom-overlay
  )
  ul.products
  li.product
  > a.woocommerce-LoopProduct-link
  > .swth-card-media-frame::before {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  z-index: 3 !important;
  display: block !important;
  background: var(--swth-card-image-hover-overlay) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity var(--swth-card-image-hover-speed) ease !important;
}
body:not(
    #swth-card-hover-exclusion
  ).swth-style-layer.swth-style-layer.swth-style-layer.swth-style-layer:is(
    .swth-card-image-hover-overlay,
    .swth-card-image-hover-zoom-overlay
  )
  ul.products
  li.product:hover
  > a.woocommerce-LoopProduct-link
  > .swth-card-media-frame::before {
  opacity: 1 !important;
}
body:not(
    #swth-card-hover-exclusion
  ).swth-style-layer.swth-style-layer.swth-style-layer.swth-style-layer.swth-card-image-hover-zoom-overlay
  ul.products
  li.product:hover
  > a.woocommerce-LoopProduct-link
  > .swth-card-media-frame
  > img {
  transform: var(--swth-card-image-hover-scale) !important;
  transform-origin: center !important;
}
/* Search-result actions remain grouped in the DOM, but display:contents makes
   both buttons true items of the product-card grid. They therefore inherit the
   exact same rows, 12px card gap, widths, alignment, and responsive stacking as
   regular shop cards. */
body.swth-style-layer.swth-style-layer
  .swth-native-product-search-results
  ul.products
  > li.product
  > .swth-search-card-actions {
  display: contents !important;
}
body.swth-style-layer.swth-style-layer
  .swth-native-product-search-results
  ul.products
  > li.product
  > .swth-search-card-actions
  > .shop-product-button {
  grid-area: primary !important;
  margin: 0 !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
body.swth-style-layer.swth-style-layer
  .swth-native-product-search-results
  ul.products
  > li.product
  > .swth-search-card-actions
  > .live-view-button {
  grid-area: secondary !important;
  margin: 0 !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* AJAX product-category links widget. All selectors are scoped to the new
   component so existing WooCommerce category widgets retain their layout. */
.swth-product-category-filter__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.swth-product-category-filter__item {
  margin: 0;
}
.swth-product-category-filter__link {
  display: flex;
  align-items: center;
  gap: 8px;
  color: inherit;
  text-decoration: none;
}
.swth-product-category-filter__link[aria-current="page"] {
  font-weight: 600;
}
.swth-product-category-filter--horizontal .swth-product-category-filter__list {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 10px 24px;
}
.swth-product-category-filter--horizontal .swth-product-category-filter__item {
  display: flex;
  flex: 0 0 auto;
}
.swth-product-category-filter--vertical .swth-product-category-filter__list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
body.swth-style-layer
  .swth-product-category-filter--horizontal
  ul.swth-product-category-filter__list {
  display: flex !important;
  flex-flow: row wrap !important;
  align-items: center !important;
  gap: 10px 24px !important;
  border-top: 0 !important;
}
body.swth-style-layer
  .swth-product-category-filter--horizontal
  ul.swth-product-category-filter__list
  > li {
  display: flex !important;
  flex: 0 0 auto !important;
  width: auto !important;
  padding: 0 !important;
  border-bottom: 0 !important;
}
body.swth-style-layer
  .swth-product-category-filter--horizontal
  ul.swth-product-category-filter__list
  > li
  > a {
  flex: 0 0 auto !important;
}
@media (max-width: 767px) {
  body.swth-style-layer
    .swth-product-category-filter--horizontal
    ul.swth-product-category-filter__list {
    flex-flow: column nowrap !important;
    align-items: stretch !important;
    gap: 10px !important;
  }
  body.swth-style-layer
    .swth-product-category-filter--horizontal
    ul.swth-product-category-filter__list
    > li {
    width: 100% !important;
  }
  body.swth-style-layer
    .swth-product-category-filter--horizontal
    ul.swth-product-category-filter__list
    > li
    > a {
    width: 100% !important;
  }
}
/* A Showit WordPress placeholder has an explicit height. Let the category
   widget use that height and center its links like the Search and Sort widgets,
   instead of adding the native widget's bottom margin above the collection. */
.se-wpt > .swth_product_category_filter_widget {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
  margin: 0 !important;
}
.se-wpt > .swth_product_category_filter_widget > .swth-product-category-filter {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
}
.se-wpt
  > .swth_product_category_filter_widget
  > .swth-product-category-filter
  > .swth-product-category-filter__list {
  width: 100%;
}
