/* WP-Sync Commerce Design System v22.25.489. Scoped to pages explicitly marked by WP-Sync. */
body.wp-sync-commerce-ui {
  color: var(--wps-commerce-text);
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.woocommerce-product-details__short-description,.wp-sync-term-landing-body,.wp-sync-term-landing-content,.wp-sync-term-archive-intro) {
  font-family: var(--wps-commerce-font);
  font-size: var(--wps-commerce-font-desktop);
  line-height: var(--wps-commerce-line-height);
  color: var(--wps-commerce-text);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-wrap: break-word;
}
body.wp-sync-commerce-ui.single-post .entry-content,
body.wp-sync-commerce-ui .wp-sync-term-landing-body {
  max-width: var(--wps-commerce-content-width);
  margin-inline: auto;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) > :where(p,ul,ol,blockquote,table,figure) {
  margin-bottom: 1.1em;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) :where(h2,h3,h4) {
  font-family: var(--wps-commerce-font);
  font-weight: var(--wps-commerce-heading-weight);
  color: var(--wps-commerce-text);
  text-transform: none;
  letter-spacing: -.015em;
  scroll-margin-top: 90px;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) h2 {
  font-size: clamp(22px,2vw,28px);
  line-height: 1.3;
  margin: 1.65em 0 .65em;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) h3 {
  font-size: clamp(18px,1.55vw,22px);
  line-height: 1.35;
  margin: 1.4em 0 .55em;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) h4 {
  font-size: 1.05em;
  line-height: 1.4;
  margin: 1.25em 0 .5em;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) p {
  margin-top: 0;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) :where(ul,ol) {
  padding-inline-start: 1.3em;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) li + li {
  margin-top: .42em;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) a:not(.button) {
  color: var(--wps-commerce-primary);
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) blockquote {
  margin-inline: 0;
  padding: 1em 1.1em;
  border-inline-start: 4px solid var(--wps-commerce-primary);
  border-radius: 0 var(--wps-commerce-radius) var(--wps-commerce-radius) 0;
  background: var(--wps-commerce-surface-alt);
  color: var(--wps-commerce-text);
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid var(--wps-commerce-border);
  border-radius: var(--wps-commerce-radius);
  background: var(--wps-commerce-surface);
  overflow: hidden;
  font-size: .94em;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) :where(th,td) {
  padding: .8em .9em;
  border: 0;
  border-bottom: 1px solid var(--wps-commerce-border);
  text-align: start;
  vertical-align: top;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) th {
  background: var(--wps-commerce-surface-alt);
  font-weight: 700;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) tr:last-child > :where(th,td) {
  border-bottom: 0;
}
body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) :where(img,figure img) {
  border-radius: var(--wps-commerce-radius);
}

/* Owned commerce cards */
body.wp-sync-commerce-ui :where(.wp-sync-article-footer-box,.wp-sync-product-cta,.wp-sync-product-interlinks,.wp-sync-product-external-links,.site-contact-info,.wp-sync-term-archive-intro,.wp-sync-term-landing-content,.wp-sync-term-landing-page) {
  border: 1px solid var(--wps-commerce-border);
  border-radius: var(--wps-commerce-radius);
  background: var(--wps-commerce-surface);
  box-shadow: var(--wps-commerce-shadow);
  color: var(--wps-commerce-text);
}
body.wp-sync-commerce-ui :where(.wp-sync-article-footer-box,.wp-sync-product-cta,.wp-sync-product-interlinks,.wp-sync-product-external-links,.site-contact-info) {
  padding: clamp(16px,2vw,24px);
}
body.wp-sync-commerce-ui .wp-sync-product-cta {
  position: relative;
  border-color: color-mix(in srgb, var(--wps-commerce-primary) 24%, var(--wps-commerce-border));
  background: color-mix(in srgb, var(--wps-commerce-primary) 5%, var(--wps-commerce-surface));
}
body.wp-sync-commerce-ui .wp-sync-product-cta h3 {
  margin: 0 0 .45em;
  font-size: clamp(19px,1.6vw,23px);
}
body.wp-sync-commerce-ui .wp-sync-product-cta p:last-child { margin-bottom: 0; }
body.wp-sync-commerce-ui .wp-sync-product-links {
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 16px;
}
body.wp-sync-commerce-ui :where(.wp-sync-product-interlinks,.wp-sync-product-external-links) h3 {
  margin: 0 0 .7em;
  font-size: 18px;
}
body.wp-sync-commerce-ui :where(.wp-sync-product-interlinks,.wp-sync-product-external-links) ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
body.wp-sync-commerce-ui :where(.wp-sync-product-interlinks,.wp-sync-product-external-links) li {
  padding: .6em 0;
  border-bottom: 1px dashed var(--wps-commerce-border);
}
body.wp-sync-commerce-ui :where(.wp-sync-product-interlinks,.wp-sync-product-external-links) li:last-child { border-bottom: 0; }

/* FAQ */
body.wp-sync-commerce-ui .wp-sync-faq-accordion { font-family: var(--wps-commerce-font); }
body.wp-sync-commerce-ui .wp-sync-faq-item {
  border-color: var(--wps-commerce-border);
  border-radius: var(--wps-commerce-radius);
  background: var(--wps-commerce-surface);
  box-shadow: 0 1px 3px rgba(15,23,42,.04);
}
body.wp-sync-commerce-ui .wp-sync-faq-question {
  min-height: var(--wps-commerce-button-height);
  display: flex;
  align-items: center;
  font-size: 1em;
  font-weight: 700;
}
body.wp-sync-commerce-ui .wp-sync-faq-item[open] {
  border-color: color-mix(in srgb, var(--wps-commerce-primary) 30%, var(--wps-commerce-border));
}
body.wp-sync-commerce-ui .wp-sync-faq-item[open] > .wp-sync-faq-question { color: var(--wps-commerce-primary); }

/* Product cards on taxonomy landing pages */
body.wp-sync-commerce-ui .wp-sync-term-products { margin-top: clamp(28px,4vw,48px); }
body.wp-sync-commerce-ui .wp-sync-term-products > h2 { margin-bottom: 18px; }
body.wp-sync-commerce-ui .wp-sync-term-products__grid {
  grid-template-columns: repeat(auto-fill,minmax(220px,1fr));
  gap: 16px;
}
body.wp-sync-commerce-ui .wp-sync-term-product-card {
  padding: 0;
  border: 1px solid var(--wps-commerce-border);
  border-radius: var(--wps-commerce-radius);
  background: var(--wps-commerce-surface);
  box-shadow: var(--wps-commerce-shadow);
  overflow: hidden;
  transition: transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
body.wp-sync-commerce-ui .wp-sync-term-product-card:hover {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--wps-commerce-primary) 30%, var(--wps-commerce-border));
  box-shadow: 0 12px 28px rgba(15,23,42,.12);
}
body.wp-sync-commerce-ui .wp-sync-term-product-card > a {
  height: 100%;
  padding: 14px;
  color: var(--wps-commerce-text);
}
body.wp-sync-commerce-ui .wp-sync-term-product-card img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: contain;
  padding: 10px;
  background: #fff;
}
body.wp-sync-commerce-ui .wp-sync-term-product-card__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.8em;
  font-size: 15px;
  line-height: 1.4;
  font-weight: 700;
}
body.wp-sync-commerce-ui .wp-sync-term-product-card__price,
body.wp-sync-commerce-ui .wp-sync-term-product-card .price {
  min-height: 1.5em;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 800;
  color: #d70018;
}
body.wp-sync-commerce-ui .wp-sync-term-product-card__action {
  margin-top: auto;
  min-height: var(--wps-commerce-button-height);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  border: 1px solid var(--wps-commerce-primary);
  border-radius: calc(var(--wps-commerce-radius) - 2px);
  color: var(--wps-commerce-primary);
  font-size: 14px;
  font-weight: 700;
}
body.wp-sync-commerce-ui .wp-sync-term-product-card:hover .wp-sync-term-product-card__action {
  background: var(--wps-commerce-primary);
  color: #fff;
}

/* Presets */
body.wp-sync-commerce-ui.wp-sync-commerce-flatsome_native {
  --wps-commerce-shadow: none;
}
body.wp-sync-commerce-ui.wp-sync-commerce-flatsome_native :where(.entry-content,.woocommerce-Tabs-panel--description,.woocommerce-product-details__short-description,.wp-sync-term-landing-body) {
  font-family: inherit;
}
body.wp-sync-commerce-ui.wp-sync-commerce-compact_store .wp-sync-term-products__grid { gap: 10px; }
body.wp-sync-commerce-ui.wp-sync-commerce-compact_store .wp-sync-term-product-card > a { padding: 10px; }
body.wp-sync-commerce-ui.wp-sync-commerce-compact_store :where(.wp-sync-article-footer-box,.wp-sync-product-cta,.wp-sync-product-interlinks,.wp-sync-product-external-links) { padding: 14px; }

@media (max-width: 767px) {
  body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.woocommerce-product-details__short-description,.wp-sync-term-landing-body,.wp-sync-term-landing-content,.wp-sync-term-archive-intro) {
    font-size: var(--wps-commerce-font-mobile);
    line-height: 1.65;
  }
  body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) h2 { font-size: 21px; }
  body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) h3 { font-size: 18px; }
  body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) table { font-size: 13px; }
  body.wp-sync-commerce-ui :where(.entry-content,.woocommerce-Tabs-panel--description,.wp-sync-term-landing-body,.wp-sync-term-landing-content) :where(th,td) { padding: .65em .7em; }
  body.wp-sync-commerce-ui .wp-sync-product-links { grid-template-columns: 1fr; }
  body.wp-sync-commerce-ui .wp-sync-term-products__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  body.wp-sync-commerce-ui .wp-sync-term-product-card > a { padding: 10px; }
  body.wp-sync-commerce-ui .wp-sync-term-product-card__title { font-size: 14px; }
  body.wp-sync-commerce-ui .wp-sync-term-product-card__price,
  body.wp-sync-commerce-ui .wp-sync-term-product-card .price { font-size: 15px; }
  body.wp-sync-commerce-ui .wp-sync-term-product-card__action { min-height: 38px; font-size: 13px; }
}
@media (max-width: 420px) {
  body.wp-sync-commerce-ui .wp-sync-term-products__grid { grid-template-columns: minmax(0,1fr); }
}
