/* MJS V2 global storefront shell. Scoped to avoid restyling page content. */
body.mjs-global-shell-v2 .website-wrapper > header.whb-header,
body.mjs-global-shell-v2 .website-wrapper > .wd-prefooter,
body.mjs-global-shell-v2 .website-wrapper > .footer-container,
body.mjs-global-shell-v2 .website-wrapper > .elementor-location-footer {
  display: none !important;
}

.mjs-site-shell-v2 {
  --mjs-purple: #6756c7;
  --mjs-purple-deep: #49348d;
  --mjs-purple-dark: #24143d;
  --mjs-purple-ink: #30214b;
  --mjs-lavender-soft: #f4f0f8;
  --mjs-lavender-pale: #faf8fc;
  --mjs-white: #ffffff;
  --mjs-graphite: #2f2a34;
  --mjs-muted: #77717c;
  --mjs-line: #e3deea;
  width: 100%;
  position: relative;
  z-index: 30;
  color: var(--mjs-graphite);
  font-family: "DM Sans", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.mjs-site-shell-v2,
.mjs-site-shell-v2 *,
.mjs-site-shell-v2 *::before,
.mjs-site-shell-v2 *::after {
  box-sizing: border-box;
}

.mjs-site-shell-v2 a {
  color: inherit;
  text-decoration: none;
}

.mjs-site-shell-v2 button,
.mjs-site-shell-v2 input {
  font: inherit;
}

.mjs-site-shell-v2 img {
  max-width: 100%;
}

.mjs-site-shell-v2 .page-width {
  width: min(1440px, calc(100% - 72px));
  margin-inline: auto;
}

.mjs-site-shell-v2 .announcement-bar {
  min-height: 32px;
  padding: 0 max(36px, calc((100vw - 1440px) / 2));
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  background: var(--mjs-purple-dark);
  color: rgba(255, 255, 255, .82);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .1em;
  line-height: 1.4;
  text-transform: uppercase;
}

.mjs-site-shell-v2 .announcement-bar p {
  margin: 0;
}

.mjs-site-shell-v2 .announcement-links {
  display: flex;
  align-items: center;
  gap: 24px;
}

.mjs-site-shell-v2 .announcement-bar a:hover {
  color: var(--mjs-white);
}

.mjs-site-shell-v2 .header-language-switcher,
.mjs-site-shell-v2 .header-language-switcher .gtranslate_wrapper {
  display: flex;
  align-items: center;
}

.mjs-site-shell-v2 .header-language-switcher .gt_switcher-popup {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: rgba(255, 255, 255, .86) !important;
  font-size: 11px;
  font-weight: 650;
  letter-spacing: .04em;
  text-transform: none;
}

.mjs-site-shell-v2 .header-language-switcher .gt_switcher-popup img {
  width: 16px !important;
  height: 12px !important;
  object-fit: cover;
}

.mjs-site-shell-v2 .header-language-switcher .gt_switcher-popup > span:last-child {
  color: rgba(255, 255, 255, .72) !important;
}

.mjs-site-shell-v2 .mjs-preview-language-switcher {
  position: relative;
  z-index: 80;
  color: var(--mjs-white);
  text-transform: none;
}

.mjs-site-shell-v2 .mjs-preview-language-switcher summary {
  min-width: 92px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  color: rgba(255, 255, 255, .94);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .02em;
  cursor: pointer;
  list-style: none;
}

.mjs-site-shell-v2 .mjs-preview-language-switcher summary::-webkit-details-marker {
  display: none;
}

.mjs-site-shell-v2 .mjs-preview-language-switcher summary::after {
  content: "⌄";
  color: #cfc5ff;
  font-size: 14px;
  line-height: 1;
}

.mjs-site-shell-v2 .mjs-preview-language-options {
  min-width: 190px;
  padding: 8px;
  position: absolute;
  top: calc(100% + 10px);
  inset-inline-end: 0;
  display: grid;
  gap: 2px;
  border: 1px solid #ddd5e8;
  background: var(--mjs-white);
  box-shadow: 0 16px 40px rgba(36, 20, 61, .2);
}

.mjs-site-shell-v2 .mjs-preview-language-options a {
  padding: 9px 11px;
  display: block;
  color: #51445f;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0;
  text-align: start;
}

.mjs-site-shell-v2 .mjs-preview-language-options a:hover,
.mjs-site-shell-v2 .mjs-preview-language-options a[aria-current="page"] {
  background: var(--mjs-lavender-soft);
  color: var(--mjs-purple-deep);
}

.mjs-site-shell-v2 .commerce-header {
  position: relative;
  z-index: 20;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 10px 28px rgba(36, 20, 61, .04);
}

.mjs-site-shell-v2 .header-main {
  min-height: 78px;
  display: grid;
  grid-template-columns: 158px minmax(300px, 1fr) auto;
  align-items: center;
  gap: 36px;
}

.mjs-site-shell-v2 .logo-link {
  width: 140px;
  display: flex;
  align-items: center;
}

.mjs-site-shell-v2 .logo-link img {
  width: 100%;
  height: auto;
  display: block;
}

.mjs-site-shell-v2 .search-form {
  height: 42px;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr auto;
  border: 1px solid #d9d3e1;
  border-radius: 999px;
  background: var(--mjs-white);
  overflow: hidden;
}

.mjs-site-shell-v2 .search-form:focus-within {
  border-color: var(--mjs-purple);
  box-shadow: 0 0 0 3px rgba(103, 86, 199, .09);
}

.mjs-site-shell-v2 .search-form input {
  width: 100%;
  height: 100%;
  min-width: 0;
  margin: 0;
  padding: 0 17px;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--mjs-graphite);
  font-size: 14px;
  -webkit-appearance: none;
  appearance: none;
}

.mjs-site-shell-v2 .search-form input::placeholder {
  color: #9993a0;
}

.mjs-site-shell-v2 .search-form button {
  margin: 0;
  padding: 0 22px;
  border: 0;
  border-radius: 0;
  background: var(--mjs-purple);
  color: var(--mjs-white);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .07em;
  line-height: 1;
  text-transform: uppercase;
  cursor: pointer;
}

.mjs-site-shell-v2 .header-tools {
  display: flex;
  align-items: center;
  gap: 25px;
}

.mjs-site-shell-v2 .header-tools a {
  display: flex;
  flex-direction: column;
  gap: 2px;
  white-space: nowrap;
}

.mjs-site-shell-v2 .header-tools b {
  color: var(--mjs-purple-ink);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .05em;
  line-height: 1.4;
  text-transform: uppercase;
}

.mjs-site-shell-v2 .header-tools span {
  color: var(--mjs-muted);
  font-size: 10px;
  line-height: 1.4;
}

.mjs-site-shell-v2 .mobile-menu {
  display: none;
}

.mjs-site-shell-v2 .complete-category-nav {
  position: relative;
  z-index: 40;
  border-top: 1px solid #eeeaf2;
  border-bottom: 1px solid #e7e2eb;
  overflow: visible;
}

/* Give product breadcrumbs breathing room below the shared catalogue header. */
body.mjs-global-shell-v2.single-product
  .single-product-page > .elementor > .wd-negative-gap:first-child {
  margin-top: 0;
}

.mjs-site-shell-v2 .category-nav-shell {
  min-height: 82px;
  display: grid;
  grid-template-columns: 148px 1fr;
  align-items: stretch;
}

.mjs-site-shell-v2 .all-products-link {
  padding-right: 26px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-right: 1px solid var(--mjs-line);
}

.mjs-site-shell-v2 .all-products-link span {
  color: var(--mjs-purple);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  line-height: 1.35;
  text-transform: uppercase;
}

.mjs-site-shell-v2 .all-products-link strong {
  margin-top: 4px;
  color: var(--mjs-purple-dark);
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.2;
}

.mjs-site-shell-v2 .category-link-grid {
  padding: 9px 0 9px 22px;
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  align-items: stretch;
  overflow: visible;
}

.mjs-site-shell-v2 .category-link-grid > a,
.mjs-site-shell-v2 .category-nav-item > a {
  min-height: 31px;
  padding: 0 11px;
  display: flex;
  align-items: center;
  border-left: 1px solid #f0edf3;
  color: #514a58;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
}

.mjs-site-shell-v2 .category-link-grid > a:first-child,
.mjs-site-shell-v2 .category-link-grid > .category-nav-item:first-child > a {
  border-left: 0;
}

.mjs-site-shell-v2 .category-link-grid > a:hover,
.mjs-site-shell-v2 .category-nav-item > a:hover,
.mjs-site-shell-v2 .category-nav-item:focus-within > a,
.mjs-site-shell-v2 .category-nav-item:hover > a {
  color: var(--mjs-purple);
  background: var(--mjs-lavender-pale);
}

.mjs-site-shell-v2 .category-nav-item {
  position: relative;
  min-width: 0;
}

.mjs-site-shell-v2 .category-nav-item > a {
  height: 100%;
}

.mjs-site-shell-v2 .category-nav-item-has-submenu > a::after {
  content: "";
  width: 6px;
  height: 6px;
  margin-inline-start: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
}

.mjs-site-shell-v2 .category-flyout {
  width: 292px;
  padding: 10px;
  position: absolute;
  z-index: 120;
  top: calc(100% + 8px);
  inset-inline-start: 0;
  display: none;
  border: 1px solid #ded5e8;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 20px 48px rgba(36, 20, 61, .18);
}

.mjs-site-shell-v2 .category-nav-item-has-submenu:hover .category-flyout,
.mjs-site-shell-v2 .category-nav-item-has-submenu:focus-within .category-flyout {
  display: grid;
}

.mjs-site-shell-v2 .category-flyout a {
  min-height: 40px;
  padding: 9px 12px;
  display: flex;
  align-items: center;
  border: 0;
  border-radius: 10px;
  color: #514a58;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.25;
}

.mjs-site-shell-v2 .category-flyout a:hover,
.mjs-site-shell-v2 .category-flyout a:focus-visible {
  color: var(--mjs-purple);
  background: var(--mjs-lavender-pale);
}

.mjs-site-shell-v2 .category-flyout .category-flyout-title {
  margin-bottom: 4px;
  color: var(--mjs-purple-deep);
  font-size: 14px;
  font-weight: 800;
}

.mjs-site-shell-v2 .category-flyout .category-flyout-product {
  border-top: 1px solid #f0edf3;
}

.mjs-site-shell-v2 .category-flyout .category-flyout-title-family {
  margin-top: 8px;
  padding-top: 14px;
  border-top: 1px solid #ddd5e6;
}

.mjs-site-shell-v2 .site-footer {
  margin: 0;
  padding: 60px 0 0;
  border: 0;
  background: var(--mjs-purple-dark);
  color: var(--mjs-white);
}

.mjs-site-shell-v2 .footer-grid {
  padding-bottom: 54px;
  display: grid;
  grid-template-columns: 1.35fr 1fr 1fr 1fr .9fr;
  gap: 40px;
}

.mjs-site-shell-v2 .footer-brand img {
  width: 142px;
  filter: brightness(0) invert(1);
}

.mjs-site-shell-v2 .footer-brand p {
  max-width: 270px;
  margin: 18px 0 0;
  color: rgba(255, 255, 255, .58);
  font-size: 12px;
  line-height: 1.7;
}

.mjs-site-shell-v2 .footer-grid > div:not(.footer-brand) {
  display: flex;
  flex-direction: column;
  gap: 9px;
}

.mjs-site-shell-v2 .footer-grid h3 {
  margin: 0 0 8px;
  color: #d9d2f7;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .14em;
  line-height: 1.4;
  text-transform: uppercase;
}

.mjs-site-shell-v2 .footer-grid a {
  color: rgba(255, 255, 255, .68);
  font-size: 11px;
  line-height: 1.5;
}

.mjs-site-shell-v2 .footer-grid a:hover {
  color: var(--mjs-white);
}

.mjs-site-shell-v2 .footer-bottom {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid rgba(255, 255, 255, .13);
  color: rgba(255, 255, 255, .48);
  font-size: 10px;
  line-height: 1.5;
}

.mjs-site-shell-v2 .footer-bottom > span:first-child {
  padding-inline-start: 72px;
}

.mjs-whatsapp-float {
  width: 54px;
  height: 54px;
  position: fixed;
  z-index: 1000;
  bottom: 22px;
  left: 22px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #25d366;
  color: #fff !important;
  text-decoration: none !important;
  box-shadow: 0 0 0 4px #fff, 0 12px 30px rgba(36, 20, 61, .2);
  transition: transform .2s ease, box-shadow .2s ease;
}

.mjs-whatsapp-float i {
  color: #fff;
  font-size: 29px;
  line-height: 1;
}

.mjs-whatsapp-float:hover {
  color: #fff;
  transform: translateY(-3px);
  box-shadow: 0 0 0 4px #fff, 0 16px 34px rgba(36, 20, 61, .25);
}

.mjs-whatsapp-float:focus-visible {
  outline: 3px solid rgba(103, 86, 199, .45);
  outline-offset: 4px;
}

body.mjs-home-v2-locale-ja .mjs-site-shell-v2,
body.mjs-home-v2-locale-ar .mjs-site-shell-v2 {
  font-family: system-ui, -apple-system, "Segoe UI", "Noto Sans", Arial, sans-serif;
}

body.mjs-home-v2-locale-ja .mjs-site-shell-v2 .all-products-link strong,
body.mjs-home-v2-locale-ar .mjs-site-shell-v2 .all-products-link strong {
  font-family: inherit;
  font-weight: 650;
}

body.mjs-home-v2-rtl .mjs-site-shell-v2 .all-products-link {
  padding-right: 0;
  padding-left: 26px;
  border-right: 0;
  border-left: 1px solid var(--mjs-line);
}

body.mjs-home-v2-rtl .mjs-site-shell-v2 .category-link-grid {
  padding-right: 22px;
  padding-left: 0;
}

body.mjs-home-v2-rtl .mjs-site-shell-v2 .category-link-grid > a,
body.mjs-home-v2-rtl .mjs-site-shell-v2 .category-nav-item > a {
  border-right: 1px solid #f0edf3;
  border-left: 0;
}

body.mjs-home-v2-rtl .mjs-site-shell-v2 .category-link-grid > a:first-child,
body.mjs-home-v2-rtl .mjs-site-shell-v2 .category-link-grid > .category-nav-item:first-child > a {
  border-right: 0;
}

body.mjs-home-v2-rtl .mjs-site-shell-v2 .mjs-preview-language-switcher summary {
  justify-content: flex-start;
}

@media (max-width: 1180px) {
  .mjs-site-shell-v2 .page-width {
    width: min(100% - 44px, 1440px);
  }

  .mjs-site-shell-v2 .header-main {
    grid-template-columns: 135px 1fr auto;
    gap: 24px;
  }

  .mjs-site-shell-v2 .logo-link {
    width: 128px;
  }

  .mjs-site-shell-v2 .header-tools {
    gap: 15px;
  }

  .mjs-site-shell-v2 .category-nav-shell {
    grid-template-columns: 132px 1fr;
  }

  .mjs-site-shell-v2 .category-link-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .mjs-site-shell-v2 .footer-grid {
    grid-template-columns: 1.3fr repeat(4, 1fr);
    gap: 24px;
  }
}

@media (max-width: 860px) {
  .mjs-site-shell-v2 .announcement-bar {
    min-height: 34px;
    padding: 0 16px;
    font-size: 10px;
  }

  .mjs-site-shell-v2 .announcement-bar p {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .mjs-site-shell-v2 .announcement-links {
    gap: 12px;
  }

  .mjs-site-shell-v2 .announcement-bar .announcement-links > a {
    display: none;
  }

  .mjs-site-shell-v2 .mjs-preview-language-options a {
    display: block;
  }

  .mjs-site-shell-v2 .mjs-preview-language-switcher summary {
    min-width: 72px;
  }

  .mjs-site-shell-v2 .header-main {
    width: calc(100% - 32px);
    min-height: auto;
    padding: 14px 0;
    grid-template-columns: auto 1fr auto;
    gap: 13px;
  }

  .mjs-site-shell-v2 .mobile-menu {
    display: block;
    position: relative;
  }

  .mjs-site-shell-v2 .mobile-menu summary {
    width: 48px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid var(--mjs-line);
    color: var(--mjs-purple-dark);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    list-style: none;
    cursor: pointer;
  }

  .mjs-site-shell-v2 .mobile-menu summary::-webkit-details-marker {
    display: none;
  }

  .mjs-site-shell-v2 .mobile-menu-panel {
    width: min(340px, calc(100vw - 32px));
    height: min(72vh, 620px);
    padding: 10px 16px 0;
    position: absolute;
    z-index: 50;
    top: 47px;
    inset-inline-start: 0;
    display: flex;
    flex-direction: column;
    border: 1px solid var(--mjs-line);
    background: var(--mjs-white);
    box-shadow: 0 18px 44px rgba(36, 20, 61, .16);
    overflow: hidden;
  }

  .mjs-site-shell-v2 .mobile-menu-category-list {
    min-height: 0;
    overflow-y: auto;
  }

  .mjs-site-shell-v2 .mobile-category-group summary {
    width: 100%;
    min-height: 46px;
    height: auto;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 0;
    border-bottom: 1px solid #eeeaf2;
    color: #494151;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
  }

  .mjs-site-shell-v2 .mobile-category-group summary::after {
    content: "+";
    color: var(--mjs-purple);
    font-size: 18px;
    font-weight: 500;
  }

  .mjs-site-shell-v2 .mobile-category-group[open] summary::after {
    content: "−";
  }

  .mjs-site-shell-v2 .mobile-category-submenu {
    padding: 6px 0 8px 12px;
    background: var(--mjs-lavender-pale);
  }

  .mjs-site-shell-v2 .mobile-menu-panel .mobile-category-submenu a {
    min-height: 40px;
    padding: 0 10px;
    border-bottom: 1px solid rgba(107, 87, 217, .12);
    color: #514a58;
    font-size: 12px;
  }

  .mjs-site-shell-v2 .mobile-menu-panel .mobile-category-submenu-title {
    color: var(--mjs-purple-deep);
    font-size: 13px;
    font-weight: 800;
  }

  .mjs-site-shell-v2 .mobile-menu-panel .mobile-category-submenu-title-family {
    margin-top: 8px;
    padding-top: 10px;
    border-top: 1px solid rgba(107, 87, 217, .22);
  }

  .mjs-site-shell-v2 .mobile-menu-panel a {
    min-height: 46px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #eeeaf2;
    color: #494151;
    font-size: 13px;
    font-weight: 600;
  }

  .mjs-site-shell-v2 .mobile-menu-panel .mobile-menu-faq {
    min-height: 52px;
    margin-top: auto;
    flex: 0 0 52px;
    border-top: 1px solid #d8d0e5;
    border-bottom: 0;
    background: var(--mjs-white);
    color: var(--mjs-purple-deep);
    font-weight: 800;
  }

  .mjs-site-shell-v2 .logo-link {
    width: 115px;
  }

  .mjs-site-shell-v2 .header-tools a {
    display: none;
  }

  .mjs-site-shell-v2 .header-tools a:last-child {
    display: flex;
  }

  .mjs-site-shell-v2 .header-tools a:last-child span {
    display: none;
  }

  .mjs-site-shell-v2 .search-form {
    height: 40px;
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .mjs-site-shell-v2 .complete-category-nav {
    display: none;
  }

  .mjs-site-shell-v2 .footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 34px 24px;
  }

  .mjs-site-shell-v2 .footer-brand {
    grid-column: 1 / -1;
  }

  .mjs-site-shell-v2 .footer-bottom {
    padding: 18px 0;
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }
}

@media (max-width: 480px) {
  .mjs-site-shell-v2 .page-width {
    width: calc(100% - 28px);
  }

  .mjs-site-shell-v2 .logo-link {
    width: 104px;
  }

  .mjs-site-shell-v2 .search-form input {
    padding: 0 11px;
    font-size: 13px;
  }

  .mjs-site-shell-v2 .search-form button {
    padding: 0 14px;
    font-size: 11px;
  }

  .mjs-site-shell-v2 .site-footer {
    padding-top: 46px;
  }

  .mjs-site-shell-v2 .footer-grid {
    padding-bottom: 40px;
  }

  .mjs-whatsapp-float {
    width: 50px;
    height: 50px;
    bottom: 76px;
    left: 17px;
  }

  .mjs-whatsapp-float i {
    font-size: 27px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .mjs-site-shell-v2 *,
  .mjs-site-shell-v2 *::before,
  .mjs-site-shell-v2 *::after,
  .mjs-whatsapp-float {
    transition-duration: .01ms !important;
  }
}


/* Peptides: keep each product family collapsed until the visitor opens it. */
.mjs-site-shell-v2 .category-flyout.category-flyout-peptides {
  width: 248px;
  gap: 2px;
}

.mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family {
  position: relative;
  border-bottom: 1px solid #f0edf3;
}

.mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family:last-child {
  border-bottom: 0;
}

.mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family > summary {
  min-height: 42px;
  padding: 9px 32px 9px 12px;
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
  list-style: none;
  border-radius: 10px;
  color: var(--mjs-purple-deep);
  font-size: 13px;
  font-weight: 800;
}

.mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family > summary::-webkit-details-marker {
  display: none;
}

.mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family > summary::after {
  content: "+";
  position: absolute;
  inset-inline-end: 12px;
  color: var(--mjs-purple);
  font-size: 18px;
  font-weight: 500;
}

.mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family[open] > summary::after {
  content: "−";
}

.mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family > summary:hover,
.mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family > summary:focus-visible {
  background: var(--mjs-lavender-pale);
  color: var(--mjs-purple);
}

.mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family-products {
  width: 268px;
  padding: 8px;
  position: absolute;
  z-index: 121;
  top: -1px;
  inset-inline-start: calc(100% + 9px);
  display: grid;
  border: 1px solid #ded5e8;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 20px 48px rgba(36, 20, 61, .18);
}

.mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family-products .category-flyout-product {
  border-top: 0;
}

@media (max-width: 767px) {
  .mjs-site-shell-v2 .mobile-category-submenu.mobile-category-submenu-peptides {
    padding: 0;
    background: var(--mjs-lavender-pale);
  }

  .mjs-site-shell-v2 .mobile-category-submenu-peptides .mobile-peptide-family {
    border-bottom: 1px solid rgba(107, 87, 217, .18);
  }

  .mjs-site-shell-v2 .mobile-category-submenu-peptides .mobile-peptide-family:last-child {
    border-bottom: 0;
  }

  .mjs-site-shell-v2 .mobile-category-submenu-peptides .mobile-peptide-family > summary {
    min-height: 44px;
    padding: 0 36px 0 12px;
    display: flex;
    align-items: center;
    position: relative;
    cursor: pointer;
    list-style: none;
    border: 0;
    color: var(--mjs-purple-deep);
    font-size: 13px;
    font-weight: 800;
  }

  .mjs-site-shell-v2 .mobile-category-submenu-peptides .mobile-peptide-family > summary::-webkit-details-marker {
    display: none;
  }

  .mjs-site-shell-v2 .mobile-category-submenu-peptides .mobile-peptide-family > summary::after {
    content: "+";
    position: absolute;
    inset-inline-end: 13px;
    color: var(--mjs-purple);
    font-size: 18px;
    font-weight: 500;
  }

  .mjs-site-shell-v2 .mobile-category-submenu-peptides .mobile-peptide-family[open] > summary::after {
    content: "−";
  }

  .mjs-site-shell-v2 .mobile-category-submenu-peptides .mobile-peptide-family-items {
    padding: 0 0 8px 14px;
    background: #fff;
  }

  .mjs-site-shell-v2 .mobile-menu-panel .mobile-peptide-family-items a {
    min-height: 40px;
    padding: 0 10px;
    border-bottom: 1px solid rgba(107, 87, 217, .12);
    color: #514a58;
    font-size: 12px;
    font-weight: 650;
  }

  .mjs-site-shell-v2 .mobile-peptide-family-items a:last-child {
    border-bottom: 0;
  }
}


/* Keep Peptides as one top-level category in Woodmart's standard menu.
   Families are revealed only after Peptides is opened; each family reveals its SKU list. */
@media (min-width: 1025px) {
  body .wd-nav .menu-item-40434 {
    position: relative;
  }

  body .wd-nav .menu-item-40434 > .wd-sub-menu {
    width: 258px !important;
    min-width: 258px !important;
    display: block !important;
    position: absolute !important;
    inset-inline-start: 0 !important;
    top: 100% !important;
    z-index: 9999 !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(8px) !important;
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
  }

  body .wd-nav .menu-item-40434:hover > .wd-sub-menu,
  body .wd-nav .menu-item-40434:focus-within > .wd-sub-menu {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  body .wd-nav .menu-item-40434 > .wd-sub-menu > .menu-item {
    width: 100% !important;
    position: relative !important;
  }

  body .wd-nav .menu-item-40434 > .wd-sub-menu > .menu-item > .sub-sub-menu {
    width: 264px !important;
    min-width: 264px !important;
    display: block !important;
    position: absolute !important;
    inset-inline-start: calc(100% + 8px) !important;
    top: -8px !important;
    z-index: 10000 !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateX(-6px) !important;
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
  }

  body .wd-nav .menu-item-40434 > .wd-sub-menu > .menu-item:hover > .sub-sub-menu,
  body .wd-nav .menu-item-40434 > .wd-sub-menu > .menu-item:focus-within > .sub-sub-menu {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateX(0) !important;
  }
}


/* Standard hierarchy only: Peptides -> series -> SKU.
   Series never occupy the All Products category row. */
@media (min-width: 768px) {
  .mjs-site-shell-v2 .category-flyout.category-flyout-peptides {
    width: 248px;
    gap: 0;
    padding: 8px;
    border-radius: 0;
  }

  .mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family {
    position: relative;
    border-bottom: 1px solid #f0edf3;
  }

  .mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family:last-child {
    border-bottom: 0;
  }

  .mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family-trigger {
    width: 100%;
    min-height: 42px;
    padding: 9px 32px 9px 12px;
    display: flex;
    align-items: center;
    position: relative;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--mjs-purple-deep);
    cursor: pointer;
    font: inherit;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.25;
    text-align: start;
  }

  .mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family-trigger::after {
    content: "›";
    position: absolute;
    inset-inline-end: 12px;
    color: var(--mjs-purple);
    font-size: 18px;
    font-weight: 500;
  }

  .mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family:hover > .category-flyout-family-trigger,
  .mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family:focus-within > .category-flyout-family-trigger {
    background: var(--mjs-lavender-pale);
    color: var(--mjs-purple);
  }

  .mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family-products {
    width: 268px;
    padding: 8px;
    position: absolute;
    z-index: 121;
    top: -1px;
    inset-inline-start: calc(100% + 8px);
    display: grid;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateX(-6px);
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
    border: 1px solid #ded5e8;
    border-radius: 0;
    background: #fff;
    box-shadow: 0 20px 48px rgba(36, 20, 61, .18);
  }

  .mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family:hover > .category-flyout-family-products,
  .mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family:focus-within > .category-flyout-family-products {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translateX(0);
  }

  .mjs-site-shell-v2 .category-flyout-peptides .category-flyout-family-products .category-flyout-product {
    border-top: 0;
  }
}


/* Peptides hover bridge: the pointer can travel from category to series,
   then from series to SKU, without crossing a non-hoverable gap. */
@media (min-width: 768px) {
  .mjs-site-shell-v2 .category-nav-item-has-submenu > .category-flyout::before {
    content: "";
    height: 18px;
    position: absolute;
            z-index: 0;
    right: -1px;
    bottom: 100%;
    left: -1px;
    pointer-events: auto;
  }

  .mjs-site-shell-v2 .category-flyout-family-products::before {
    content: "";
    width: 14px;
    position: absolute;
    top: -1px;
    bottom: -1px;
    inset-inline-end: 100%;
    pointer-events: auto;
  }
}
