html {
  --mespi-module-title-heading: #342943;
  --mespi-module-title-primary: #6f42c1;
  --mespi-module-title-accent: #e85f8e;
  --mespi-action-primary: #7f3fff;
  --mespi-action-primary-dark: #6430d2;
  --mespi-action-accent: #e85f8e;
  --mespi-tab-text: #554966;
  --mespi-tab-primary: #6f42c1;
  --mespi-tab-primary-dark: #55309d;
  --mespi-tab-accent: #e85f8e;
  --mespi-tab-bg: #f8f6fb;
  --mespi-tab-border: #eee8f6;
  --mespi-tab-hover-border: #eadff6;
}

.mespi-home-showcase__cta,
.product-bundle-offer-btn.btn-cart {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 18px !important;
  border: 0 !important;
  border-radius: 8px !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  background: linear-gradient(135deg, var(--mespi-action-primary) 0%, var(--mespi-action-primary-dark) 62%, var(--mespi-action-accent) 100%) !important;
  box-shadow: 0 10px 22px rgba(111, 66, 193, .18) !important;
  transition: transform .16s ease, box-shadow .16s ease, filter .16s ease;
}

.mespi-home-showcase__cta::before,
.mespi-home-showcase__cta::after,
.product-bundle-offer-btn.btn-cart::before,
.product-bundle-offer-btn.btn-cart::after {
  display: none !important;
  content: none !important;
}

.desktop .mespi-home-showcase__cta:hover,
.desktop .product-bundle-offer-btn.btn-cart:hover,
.mespi-home-showcase__cta:focus,
.product-bundle-offer-btn.btn-cart:focus {
  color: #fff !important;
  text-decoration: none !important;
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(111, 66, 193, .22) !important;
  filter: saturate(1.03);
}

html .tabs-container::after,
html .product-sorter .tabs-container::after {
  display: none !important;
  content: none !important;
}

html .tabs-container > .nav-tabs,
html .product-sorter .tabs-container > .nav-tabs {
  display: flex;
  flex-wrap: nowrap;
  width: max-content;
  max-width: 100%;
  gap: 3px;
  margin: 0 auto 16px !important;
  padding: 4px !important;
  border: 1px solid var(--mespi-tab-border) !important;
  border-radius: 999px;
  background: linear-gradient(180deg, #fbf9fd 0%, var(--mespi-tab-bg) 100%);
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

html .tabs-container > .nav-tabs::-webkit-scrollbar,
html .product-sorter .tabs-container > .nav-tabs::-webkit-scrollbar {
  display: none;
}

html .tabs-container > .nav-tabs > li,
html .product-sorter .tabs-container > .nav-tabs > li,
html .product-sorter .tabs-container > .nav-tabs > li:first-child,
html .product-sorter .tabs-container > .nav-tabs > li:last-child {
  flex: 0 0 auto;
  margin: 0 !important;
  margin-right: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
}

html .product-sorter .tabs-container > .nav-tabs > li:not(:last-child) {
  margin-right: 0 !important;
}

html .tabs-container > .nav-tabs > li.active,
html .product-sorter .tabs-container > .nav-tabs > li.active,
html .product-sorter .tabs-container > .nav-tabs > li.active:first-child {
  border: 0 !important;
  border-color: transparent !important;
  margin-bottom: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html .product-sorter .tabs-container > .nav-tabs > li.active::after {
  display: none !important;
  content: none !important;
}

html .tabs-container > .nav-tabs > li > a,
html .product-sorter .tabs-container > .nav-tabs > li > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 16px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: var(--mespi-tab-text) !important;
  font-size: 14px;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
  white-space: nowrap;
}

html .tabs-container > .nav-tabs > li > a::before,
html .product-sorter .tabs-container > .nav-tabs > li > a::before {
  display: none !important;
  content: none !important;
}

html .tabs-container > .nav-tabs > li > a:empty::after,
html .product-sorter .tabs-container > .nav-tabs > li > a:empty::after {
  content: attr(aria-label);
}

html .tabs-container > .nav-tabs > li.active > a,
html .tabs-container > .nav-tabs > li.active > a:hover,
html .tabs-container > .nav-tabs > li.active > a:focus,
html .tabs-container > .nav-tabs > li.active > a:active,
html .product-sorter .tabs-container > .nav-tabs > li.active > a,
html .product-sorter .tabs-container > .nav-tabs > li.active > a:hover,
html .product-sorter .tabs-container > .nav-tabs > li.active > a:focus,
html .product-sorter .tabs-container > .nav-tabs > li.active > a:active {
  color: #fff !important;
  background: linear-gradient(135deg, var(--mespi-tab-primary) 0%, var(--mespi-tab-primary-dark) 58%, var(--mespi-tab-accent) 100%) !important;
  box-shadow: 0 8px 18px rgba(111, 66, 193, .22) !important;
}

html .tabs-container > .nav-tabs > li:not(.active) > a:hover,
html .tabs-container > .nav-tabs > li:not(.active) > a:focus,
html .product-sorter .tabs-container > .nav-tabs > li:not(.active) > a:hover,
html .product-sorter .tabs-container > .nav-tabs > li:not(.active) > a:focus {
  color: var(--mespi-tab-primary-dark) !important;
  background: #fff !important;
  box-shadow: inset 0 0 0 1px var(--mespi-tab-hover-border) !important;
}

.title.module-title,
.module-title.title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px !important;
  color: var(--mespi-module-title-heading) !important;
  font-size: 17px;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

.title.module-title::before,
.module-title.title::before {
  content: "";
  flex: 0 0 6px;
  width: 6px;
  height: 18px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--mespi-module-title-primary) 0%, var(--mespi-module-title-accent) 100%);
}

.title.module-title::after,
.module-title.title::after {
  display: none !important;
  content: none !important;
}

.title.module-title > span,
.module-title.title > span {
  min-width: 0;
}

@media (max-width: 680px) {
  html .tabs-container > .nav-tabs,
  html .product-sorter .tabs-container > .nav-tabs {
    gap: 3px;
    margin-bottom: 12px !important;
  }

  html .tabs-container > .nav-tabs > li > a,
  html .product-sorter .tabs-container > .nav-tabs > li > a {
    min-height: 34px;
    padding: 0 12px !important;
    font-size: 13px;
  }

  .title.module-title,
  .module-title.title {
    font-size: 16px;
  }
}
