.smsmenu-widget-wrap,
.smsmenu-widget-wrap * {
  box-sizing: border-box;
}

.elementor-widget-sms_menu,
.elementor-widget-sms_menu > .elementor-widget-container,
.smsmenu-widget-wrap {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
}

.smsmenu {
  --smsmenu-desktop-gap: 16px;
  --smsmenu-desktop-item-width: 208px;
  --smsmenu-desktop-item-height: 194px;
  --smsmenu-desktop-columns: 4;
  --smsmenu-desktop-radius: 14px;
  --smsmenu-desktop-padding: 18px;
  --smsmenu-desktop-content-gap: 12px;
  --smsmenu-desktop-icon-size: 78px;
  --smsmenu-desktop-icon-box: 98px;
  --smsmenu-desktop-border-width: 0px;
  --smsmenu-desktop-bg: #f4f8fc;
  --smsmenu-desktop-bg-image: url("https://sleevemyseal.com/wp-content/uploads/Assets/Categorie/Sfondo-Categorie.svg");
  --smsmenu-desktop-bg-size: cover;
  --smsmenu-desktop-bg-position: center center;
  --smsmenu-desktop-bg-repeat: no-repeat;
  --smsmenu-desktop-bg-hover: #ffffff;
  --smsmenu-desktop-accent: #e6f1fa;
  --smsmenu-desktop-text: #153049;
  --smsmenu-desktop-title-font-family: "Open Sans", Arial, sans-serif;
  --smsmenu-desktop-title-size: 18px;
  --smsmenu-desktop-title-weight: 800;
  --smsmenu-desktop-title-line-height: 1.16;
  --smsmenu-desktop-title-transform: none;
  --smsmenu-desktop-title-align: center;
  --smsmenu-desktop-title-shadow-x: 0px;
  --smsmenu-desktop-title-shadow-y: 0px;
  --smsmenu-desktop-title-shadow-blur: 0px;
  --smsmenu-desktop-title-shadow-color: rgba(0, 0, 0, 0);
  --smsmenu-desktop-icon: #2d8fe3;
  --smsmenu-desktop-icon-soft: #66b6f7;
  --smsmenu-desktop-icon-bg: transparent;
  --smsmenu-desktop-border-color: #dbe7f1;
  --smsmenu-desktop-shadow: rgba(15, 35, 52, 0.10);
  --smsmenu-desktop-shadow-hover: rgba(15, 35, 52, 0.22);
  --smsmenu-desktop-align: flex-start;
  --smsmenu-desktop-transition-duration: 180ms;
  --smsmenu-desktop-list-padding-x: min(50px, 4vw);
  --smsmenu-desktop-list-padding-y: 2px;
  --smsmenu-category-motion-distance: 3px;
  --smsmenu-category-motion-scale: 1.02;
  --smsmenu-category-entry-distance: 18px;
  --smsmenu-category-entry-duration: 560ms;
  --smsmenu-category-entry-stagger: 70ms;
  --smsmenu-badge-bg: transparent;
  --smsmenu-badge-text: #d61f2c;
  --smsmenu-mobile-button-width: 100%;
  --smsmenu-mobile-button-height: 104px;
  --smsmenu-mobile-button-radius: 12px;
  --smsmenu-mobile-radius: 10px;
  --smsmenu-mobile-padding-x: 28px;
  --smsmenu-mobile-padding-y: 0px;
  --smsmenu-mobile-button-gap: 18px;
  --smsmenu-mobile-button-justify: space-between;
  --smsmenu-mobile-button-border-width: 0px;
  --smsmenu-mobile-button-border-color: transparent;
  --smsmenu-mobile-button-shadow-x: 0px;
  --smsmenu-mobile-button-shadow-y: 2px;
  --smsmenu-mobile-button-shadow-blur: 8px;
  --smsmenu-mobile-button-shadow-spread: 0px;
  --smsmenu-mobile-button-decoration-width: 52%;
  --smsmenu-mobile-button-decoration-opacity: 1;
  --smsmenu-mobile-button-decoration-bg: #e4f0f8;
  --smsmenu-mobile-icon-size: 34px;
  --smsmenu-mobile-item-height: 56px;
  --smsmenu-mobile-panel-gap: 10px;
  --smsmenu-mobile-sub-indent: 18px;
  --smsmenu-mobile-sub2-indent: 14px;
  --smsmenu-mobile-panel-padding-x: 10px;
  --smsmenu-mobile-panel-padding-y: 10px;
  --smsmenu-mobile-root-gap: 10px;
  --smsmenu-mobile-submenu-gap: 6px;
  --smsmenu-mobile-item-padding-x: 10px;
  --smsmenu-mobile-item-padding-y: 8px;
  --smsmenu-mobile-item-content-gap: 14px;
  --smsmenu-mobile-sub-item-height: 50px;
  --smsmenu-mobile-sub2-item-height: 46px;
  --smsmenu-mobile-sub-icon-size: 40px;
  --smsmenu-mobile-sub2-icon-size: 34px;
  --smsmenu-mobile-sub-title-size: 15px;
  --smsmenu-mobile-sub2-title-size: 14px;
  --smsmenu-mobile-button-bg: #f4f8fc;
  --smsmenu-mobile-button-bg-image: url("https://sleevemyseal.com/wp-content/uploads/Assets/Categorie/Sfondo-Categorie.svg");
  --smsmenu-mobile-panel-bg-image: url("https://sleevemyseal.com/wp-content/uploads/Assets/Categorie/Sfondo-Categorie.svg");
  --smsmenu-mobile-bg-size: cover;
  --smsmenu-mobile-bg-position: center center;
  --smsmenu-mobile-button-text: #0c2740;
  --smsmenu-mobile-toggle-font-family: "Open Sans", Arial, sans-serif;
  --smsmenu-mobile-toggle-title-size: 32px;
  --smsmenu-mobile-toggle-title-weight: 700;
  --smsmenu-mobile-toggle-title-transform: none;
  --smsmenu-mobile-item-title-size: 16px;
  --smsmenu-mobile-item-font-family: "Open Sans", Arial, sans-serif;
  --smsmenu-mobile-item-title-weight: 800;
  --smsmenu-mobile-item-title-transform: none;
  --smsmenu-mobile-item-icon-size: 50px;
  --smsmenu-mobile-button-icon: #2d8fe3;
  --smsmenu-mobile-button-shadow: rgba(15, 35, 52, 0.045);
  --smsmenu-mobile-panel-bg: #ffffff;
  --smsmenu-mobile-item-bg: #f7fafc;
  --smsmenu-mobile-item-hover: #eef6fd;
  --smsmenu-mobile-item-text: #153049;
  --smsmenu-mobile-item-icon: #2d8fe3;
  --smsmenu-mobile-animation-duration: 780ms;
  --smsmenu-mobile-submenu-duration: 680ms;
  --smsmenu-mobile-easing: cubic-bezier(0.22, 1, 0.36, 1);
  --smsmenu-submenu-width: 240px;
  --smsmenu-submenu-item-height: 42px;
  --smsmenu-submenu-radius: 12px;
  --smsmenu-submenu-offset: 10px;
  --smsmenu-submenu-bg: #ffffff;
  --smsmenu-submenu-text: #153049;
  --smsmenu-submenu-hover: #eef6fd;
  --smsmenu-submenu-shadow: rgba(15, 35, 52, 0.18);
  --smsmenu-submenu-border: #dbe7f1;
  --smsmenu-submenu-icon-size: 24px;
  --smsmenu-submenu-panel-padding: 8px;
  --smsmenu-submenu-item-gap: 4px;
  --smsmenu-submenu-item-padding-x: 12px;
  --smsmenu-submenu-item-padding-y: 10px;
  --smsmenu-submenu-content-gap: 10px;
  --smsmenu-submenu-nested-offset-x: 8px;
  --smsmenu-submenu-nested-offset-y: -8px;
  --smsmenu-sub2-item-height: 38px;
  --smsmenu-sub2-icon-size: 20px;
  --smsmenu-sub2-title-size: 13px;
  --smsmenu-submenu-title-font-family: var(--smsmenu-desktop-title-font-family);
  --smsmenu-submenu-title-size: 14px;
  --smsmenu-submenu-title-weight: 700;
  --smsmenu-submenu-title-line-height: 1.2;
  --smsmenu-submenu-title-transform: none;
  --smsmenu-submenu-transition-duration: 160ms;
  position: relative;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  color: var(--smsmenu-desktop-text);
}

.smsmenu :where(a, button) {
  font-family: inherit !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
}

.smsmenu :where(button) {
  all: unset !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
}

.smsmenu :where(a) {
  color: inherit !important;
}

.smsmenu-desktop {
  position: relative;
  z-index: 5;
  display: flex;
  align-items: stretch;
  justify-content: var(--smsmenu-desktop-align);
  gap: var(--smsmenu-desktop-gap);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: visible;
  overflow-y: visible;
  padding: 2px;
  scrollbar-width: none;
}

.smsmenu-desktop::-webkit-scrollbar {
  display: none;
}

.smsmenu.has-desktop-layout-scroll .smsmenu-desktop {
  flex-wrap: wrap;
}

.smsmenu.has-desktop-layout-grid .smsmenu-desktop {
  display: grid;
  grid-template-columns: repeat(var(--smsmenu-desktop-columns), minmax(0, 1fr));
  overflow: visible;
}

.smsmenu.has-desktop-layout-compact .smsmenu-desktop {
  flex-wrap: wrap;
}

.smsmenu-desktop-item {
  position: relative;
  flex: 1 1 var(--smsmenu-desktop-item-width);
  min-width: 0;
  max-width: 100%;
}

.smsmenu.has-desktop-layout-grid .smsmenu-desktop-item {
  flex-basis: auto;
}

.smsmenu.has-desktop-layout-compact .smsmenu-desktop-item {
  flex: 1 1 160px;
  max-width: 100%;
}

.smsmenu.has-card-style-pill .smsmenu-desktop-item {
  flex: 1 1 150px;
  max-width: 100%;
}

.smsmenu.has-card-style-linear {
  --smsmenu-desktop-gap: 10px;
  --smsmenu-desktop-item-height: 72px;
  --smsmenu-desktop-item-width: 190px;
  --smsmenu-desktop-padding: 12px;
  --smsmenu-desktop-radius: 10px;
  --smsmenu-desktop-icon-size: 28px;
  --smsmenu-desktop-icon-box: 38px;
  --smsmenu-desktop-bg: #ffffff;
  --smsmenu-desktop-bg-image: none;
  --smsmenu-desktop-bg-hover: #f5f9fc;
  --smsmenu-desktop-border-width: 1px;
  --smsmenu-desktop-border-color: #dce8f2;
  --smsmenu-desktop-shadow: rgba(15, 35, 52, 0.06);
  --smsmenu-desktop-shadow-hover: rgba(15, 35, 52, 0.12);
  --smsmenu-desktop-title-size: 15px;
  --smsmenu-desktop-title-weight: 750;
}

.smsmenu-card {
  position: relative;
  isolation: isolate;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--smsmenu-desktop-content-gap);
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  height: var(--smsmenu-desktop-item-height);
  min-height: var(--smsmenu-desktop-item-height);
  padding: var(--smsmenu-desktop-padding);
  border: var(--smsmenu-desktop-border-width) solid var(--smsmenu-desktop-border-color);
  border-radius: var(--smsmenu-desktop-radius);
  background-color: var(--smsmenu-desktop-bg);
  background-image: var(--smsmenu-desktop-bg-image);
  background-size: var(--smsmenu-desktop-bg-size);
  background-position: var(--smsmenu-desktop-bg-position);
  background-repeat: var(--smsmenu-desktop-bg-repeat);
  color: var(--smsmenu-desktop-text) !important;
  box-shadow: 0 3px 8px var(--smsmenu-desktop-shadow);
  overflow: hidden;
  text-align: center;
  line-height: 1;
  transition:
    transform var(--smsmenu-desktop-transition-duration) ease,
    background-color var(--smsmenu-desktop-transition-duration) ease,
    box-shadow var(--smsmenu-desktop-transition-duration) ease,
    border-color var(--smsmenu-desktop-transition-duration) ease;
  -webkit-tap-highlight-color: transparent;
}

.smsmenu.has-card-style-designer .smsmenu-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  z-index: -1;
  width: 52%;
  background:
    linear-gradient(
      135deg,
      var(--smsmenu-desktop-accent) 0%,
      var(--smsmenu-desktop-accent) 52%,
      rgba(255, 255, 255, 0.62) 52%,
      rgba(255, 255, 255, 0.62) 100%
    );
  opacity: 0.82;
}

.smsmenu .smsmenu-desktop {
  margin: 0;
  padding: var(--smsmenu-desktop-list-padding-y) var(--smsmenu-desktop-list-padding-x);
  box-sizing: border-box;
}

.smsmenu .smsmenu-desktop-item {
  flex: 0 0 var(--smsmenu-desktop-item-width);
}

.smsmenu .smsmenu-card {
  aspect-ratio: auto;
  height: var(--smsmenu-desktop-item-height);
  min-height: var(--smsmenu-desktop-item-height);
  background-color: var(--smsmenu-desktop-bg) !important;
  background-image: var(--smsmenu-desktop-bg-image) !important;
  background-repeat: var(--smsmenu-desktop-bg-repeat) !important;
  background-position: var(--smsmenu-desktop-bg-position) !important;
  background-size: var(--smsmenu-desktop-bg-size) !important;
  border-radius: var(--smsmenu-desktop-radius);
  box-shadow: 0 4px 4px var(--smsmenu-desktop-shadow) !important;
  transition: transform var(--smsmenu-desktop-transition-duration) ease, box-shadow var(--smsmenu-desktop-transition-duration) ease !important;
  backface-visibility: hidden;
  transform: translateZ(0);
  will-change: transform;
}

.smsmenu .smsmenu-card:hover,
.smsmenu .smsmenu-card:focus-visible {
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 6px 8px var(--smsmenu-desktop-shadow-hover) !important;
}

.smsmenu.has-card-style-designer .smsmenu-card::after {
  content: "";
  position: absolute;
  left: -16%;
  bottom: -44%;
  z-index: -1;
  width: 88%;
  height: 82%;
  border: 18px solid rgba(255, 255, 255, 0.42);
  border-radius: 50%;
  opacity: 0.68;
}

.smsmenu-card:hover,
.smsmenu-card:focus-visible,
.smsmenu-desktop-item.is-submenu-open > .smsmenu-card {
  z-index: 2;
  background-color: var(--smsmenu-desktop-bg-hover);
  box-shadow: 0 10px 24px var(--smsmenu-desktop-shadow-hover);
  transform: translateY(-2px);
  outline: none !important;
}

.smsmenu-desktop-item.is-highlighted > .smsmenu-card {
  background-color: var(--smsmenu-desktop-bg-hover);
  box-shadow: 0 12px 28px var(--smsmenu-desktop-shadow-hover);
}

.smsmenu-icon,
.smsmenu-mobile-toggle-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--smsmenu-desktop-icon);
  background: var(--smsmenu-desktop-icon-bg);
  border-radius: calc(var(--smsmenu-desktop-radius) * 0.78);
  line-height: 0;
  flex: 0 0 auto;
}

.smsmenu-icon--desktop {
  width: min(var(--smsmenu-desktop-icon-box), 100%);
  height: var(--smsmenu-desktop-icon-box);
  max-width: 100%;
}

.smsmenu-icon--desktop svg {
  width: min(var(--smsmenu-desktop-icon-size), 100%);
  height: min(var(--smsmenu-desktop-icon-size), 100%);
}

.smsmenu-icon--desktop .smsmenu-icon-img {
  width: auto !important;
  height: auto !important;
  max-width: min(var(--smsmenu-desktop-icon-size), 100%) !important;
  max-height: min(var(--smsmenu-desktop-icon-size), 100%) !important;
  object-fit: contain;
}

.smsmenu-icon--mobile {
  width: calc(var(--smsmenu-mobile-item-height) * 0.58);
  height: calc(var(--smsmenu-mobile-item-height) * 0.58);
  color: var(--smsmenu-mobile-item-icon);
}

.smsmenu-icon--mobile svg {
  width: calc(var(--smsmenu-mobile-item-height) * 0.52);
  height: calc(var(--smsmenu-mobile-item-height) * 0.52);
}

.smsmenu-icon--mobile .smsmenu-icon-img {
  width: auto !important;
  height: auto !important;
  max-width: calc(var(--smsmenu-mobile-item-height) * 0.52) !important;
  max-height: calc(var(--smsmenu-mobile-item-height) * 0.52) !important;
  object-fit: contain;
}

.smsmenu-icon svg,
.smsmenu-mobile-toggle-icon svg,
.smsmenu-icon-img {
  display: block;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain;
}

.smsmenu-icon svg,
.smsmenu-mobile-toggle-icon svg {
  fill: currentColor;
}

.smsmenu-icon svg path,
.smsmenu-mobile-toggle-icon svg path {
  fill: currentColor;
}

.smsmenu-icon--preview {
  background: linear-gradient(180deg, #5babf4 0%, #1f84d3 100%) !important;
  border-radius: 6px;
}

.smsmenu-icon--preview::before {
  content: "";
  width: 52%;
  height: 52%;
  display: block;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.92);
}

.smsmenu-svg-soft {
  fill: var(--smsmenu-desktop-icon-soft) !important;
  opacity: 0.95;
}

.smsmenu-svg-mark {
  fill: #ffffff !important;
  opacity: 0.98;
}

.smsmenu-title {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  color: inherit;
  font-size: var(--smsmenu-desktop-title-size);
  font-weight: var(--smsmenu-desktop-title-weight);
  line-height: var(--smsmenu-desktop-title-line-height);
  text-transform: var(--smsmenu-desktop-title-transform);
  text-align: var(--smsmenu-desktop-title-align);
  text-shadow:
    var(--smsmenu-desktop-title-shadow-x)
    var(--smsmenu-desktop-title-shadow-y)
    var(--smsmenu-desktop-title-shadow-blur)
    var(--smsmenu-desktop-title-shadow-color);
  overflow-wrap: anywhere;
  word-break: normal;
}

.smsmenu-card-chevron,
.smsmenu-submenu-chevron,
.smsmenu-chevron {
  width: 14px;
  height: 14px;
  display: inline-block;
  flex: 0 0 auto;
  border-right: 4px solid currentColor;
  border-bottom: 4px solid currentColor;
  transform: rotate(45deg);
  transition: transform var(--smsmenu-desktop-transition-duration) ease;
}

.smsmenu-mobile .smsmenu-chevron {
  transition-duration: var(--smsmenu-mobile-animation-duration);
  transition-timing-function: var(--smsmenu-mobile-easing);
}

.smsmenu-card-chevron {
  position: absolute;
  right: 14px;
  bottom: 14px;
  width: 10px;
  height: 10px;
  border-width: 3px;
  opacity: 0.72;
}

.smsmenu-badge {
  position: absolute;
  top: 9px;
  right: 8px;
  z-index: 4;
  min-width: 0;
  height: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 5px;
  border: 1px solid currentColor;
  border-radius: 3px;
  background: transparent !important;
  color: #d61f2c !important;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: 0.055em;
  text-transform: uppercase;
  white-space: nowrap;
  box-shadow: none;
  transform: rotate(11deg);
  transform-origin: center;
  pointer-events: none;
}

.smsmenu-submenu-link,
.smsmenu-mobile-item {
  position: relative;
}

.smsmenu-submenu-link > .smsmenu-badge {
  top: -5px;
  right: 25px;
  font-size: 8px;
}

.smsmenu-mobile-item > .smsmenu-badge {
  top: 5px;
  right: 35px;
  font-size: 9px;
}

.smsmenu-mobile-link > .smsmenu-badge {
  right: 8px;
}

.smsmenu.has-card-style-clean .smsmenu-card::before,
.smsmenu.has-card-style-clean .smsmenu-card::after,
.smsmenu.has-card-style-linear .smsmenu-card::before,
.smsmenu.has-card-style-linear .smsmenu-card::after,
.smsmenu.has-card-style-icon_only .smsmenu-card::before,
.smsmenu.has-card-style-icon_only .smsmenu-card::after,
.smsmenu.has-card-style-pill .smsmenu-card::before,
.smsmenu.has-card-style-pill .smsmenu-card::after {
  display: none;
}

.smsmenu.has-card-style-icon_only .smsmenu-title {
  display: none;
}

.smsmenu.has-card-style-icon_only .smsmenu-card {
  height: var(--smsmenu-desktop-item-height);
  min-height: var(--smsmenu-desktop-item-height);
}

.smsmenu.has-card-style-pill .smsmenu-card,
.smsmenu.has-card-style-linear .smsmenu-card,
.smsmenu.has-desktop-layout-compact .smsmenu-card {
  height: var(--smsmenu-desktop-item-height);
  min-height: var(--smsmenu-desktop-item-height);
  flex-direction: row;
  justify-content: flex-start;
  width: 100% !important;
  padding: var(--smsmenu-desktop-padding);
  gap: var(--smsmenu-desktop-content-gap, 10px);
}

.smsmenu.has-card-style-linear .smsmenu-desktop {
  margin: 0;
  padding-inline: 0;
}

.smsmenu.has-desktop-align-flex-start .smsmenu-desktop {
  justify-content: flex-start !important;
}

.smsmenu.has-desktop-align-center .smsmenu-desktop {
  justify-content: center !important;
}

.smsmenu.has-desktop-align-space-between .smsmenu-desktop {
  justify-content: space-between !important;
}

.smsmenu.has-desktop-align-flex-end .smsmenu-desktop {
  justify-content: flex-end !important;
}

.smsmenu.has-card-style-linear .smsmenu-desktop-item {
  flex: 1 1 var(--smsmenu-desktop-item-width);
  min-width: min(100%, 150px);
}

.smsmenu.has-card-style-linear .smsmenu-card {
  align-items: center;
  text-align: left;
  box-shadow: 0 3px 10px var(--smsmenu-desktop-shadow) !important;
  transform: none;
}

.smsmenu.has-card-style-linear .smsmenu-card:hover,
.smsmenu.has-card-style-linear .smsmenu-card:focus-visible,
.smsmenu.has-card-style-linear .smsmenu-desktop-item.is-submenu-open > .smsmenu-card {
  transform: translateY(-1px);
  border-color: #c8dceb;
  box-shadow: 0 7px 18px var(--smsmenu-desktop-shadow-hover) !important;
}

.smsmenu.has-card-style-pill .smsmenu-icon--desktop,
.smsmenu.has-desktop-layout-compact .smsmenu-icon--desktop {
  width: 36px;
  height: 36px;
}

.smsmenu.has-card-style-pill .smsmenu-icon--desktop svg,
.smsmenu.has-desktop-layout-compact .smsmenu-icon--desktop svg {
  width: 32px;
  height: 32px;
}

.smsmenu.has-card-style-pill .smsmenu-icon--desktop .smsmenu-icon-img,
.smsmenu.has-desktop-layout-compact .smsmenu-icon--desktop .smsmenu-icon-img {
  width: auto !important;
  height: auto !important;
  max-width: 32px !important;
  max-height: 32px !important;
}

.smsmenu-desktop-submenu {
  position: absolute;
  top: calc(100% + var(--smsmenu-submenu-offset));
  left: 0;
  z-index: 40;
  width: var(--smsmenu-submenu-width);
  padding: var(--smsmenu-submenu-panel-padding);
  border: 1px solid var(--smsmenu-submenu-border);
  border-radius: var(--smsmenu-submenu-radius);
  background: var(--smsmenu-submenu-bg);
  color: var(--smsmenu-submenu-text);
  box-shadow: 0 18px 42px var(--smsmenu-submenu-shadow);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  pointer-events: none;
  transition:
    opacity var(--smsmenu-submenu-transition-duration) ease,
    visibility var(--smsmenu-submenu-transition-duration) ease,
    transform var(--smsmenu-submenu-transition-duration) ease;
}

.smsmenu.has-desktop-submenu-hover .smsmenu-desktop-item.has-children::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 39;
  width: 100%;
  height: calc(var(--smsmenu-submenu-offset) + 12px);
  display: block;
}

.smsmenu.has-desktop-submenu-hover .smsmenu-submenu-item.has-children::after {
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 39;
  width: 16px;
  height: 100%;
  display: block;
}

.smsmenu.has-desktop-submenu-hover .smsmenu-desktop-item.has-children:hover > .smsmenu-desktop-submenu,
.smsmenu.has-desktop-submenu-hover .smsmenu-desktop-item.has-children:focus-within > .smsmenu-desktop-submenu,
.smsmenu-desktop-item.is-submenu-open > .smsmenu-desktop-submenu,
.smsmenu-submenu-item.is-submenu-open > .smsmenu-desktop-submenu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

.smsmenu-desktop-submenu--nested {
  top: var(--smsmenu-submenu-nested-offset-y);
  left: calc(100% + var(--smsmenu-submenu-nested-offset-x));
  transform: translateX(8px);
}

.smsmenu.has-desktop-submenu-hover .smsmenu-submenu-item.has-children:hover > .smsmenu-desktop-submenu,
.smsmenu.has-desktop-submenu-hover .smsmenu-submenu-item.has-children:focus-within > .smsmenu-desktop-submenu {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
  pointer-events: auto;
}

.smsmenu-submenu-list {
  display: flex;
  flex-direction: column;
  gap: var(--smsmenu-submenu-item-gap);
}

.smsmenu-submenu-item {
  position: relative;
}

.smsmenu-submenu-link {
  width: 100% !important;
  height: var(--smsmenu-submenu-item-height);
  min-height: var(--smsmenu-submenu-item-height);
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: var(--smsmenu-submenu-content-gap);
  padding: var(--smsmenu-submenu-item-padding-y) var(--smsmenu-submenu-item-padding-x);
  border-radius: calc(var(--smsmenu-submenu-radius) * 0.66);
  color: var(--smsmenu-submenu-text) !important;
  font-family: var(--smsmenu-submenu-title-font-family) !important;
  font-size: var(--smsmenu-submenu-title-size) !important;
  font-weight: var(--smsmenu-submenu-title-weight) !important;
  line-height: var(--smsmenu-submenu-title-line-height) !important;
  text-transform: var(--smsmenu-submenu-title-transform) !important;
  transition:
    background-color var(--smsmenu-submenu-transition-duration) ease,
    color var(--smsmenu-submenu-transition-duration) ease,
    transform var(--smsmenu-submenu-transition-duration) ease,
    box-shadow var(--smsmenu-submenu-transition-duration) ease;
}

.smsmenu-submenu-main {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: var(--smsmenu-submenu-content-gap);
}

.smsmenu-icon--submenu {
  width: var(--smsmenu-submenu-icon-size);
  height: var(--smsmenu-submenu-icon-size);
  color: var(--smsmenu-desktop-icon);
}

.smsmenu-icon--submenu svg {
  width: var(--smsmenu-submenu-icon-size);
  height: var(--smsmenu-submenu-icon-size);
}

.smsmenu-icon--submenu .smsmenu-icon-img {
  width: auto !important;
  height: auto !important;
  max-width: var(--smsmenu-submenu-icon-size) !important;
  max-height: var(--smsmenu-submenu-icon-size) !important;
}

.smsmenu-submenu-label {
  min-width: 0;
  font: inherit;
  color: inherit;
  overflow-wrap: anywhere;
}

.smsmenu-submenu-link:hover,
.smsmenu-submenu-link:focus-visible {
  background: var(--smsmenu-submenu-hover);
  outline: none !important;
}

.smsmenu-submenu-chevron {
  width: 9px;
  height: 9px;
  border-width: 2px;
  transform: rotate(-45deg);
}

.smsmenu-mobile {
  display: none;
  position: relative;
  width: 100%;
  max-width: 100%;
  padding: 5px;
  margin: -10px auto 0;
  font-family: var(--smsmenu-mobile-item-font-family);
}

.smsmenu-mobile-toggle {
  position: relative;
  isolation: isolate;
  width: min(var(--smsmenu-mobile-button-width), 100%) !important;
  height: var(--smsmenu-mobile-button-height);
  min-height: var(--smsmenu-mobile-button-height);
  display: flex !important;
  align-items: center;
  justify-content: var(--smsmenu-mobile-button-justify);
  gap: var(--smsmenu-mobile-button-gap);
  margin-right: auto;
  margin-left: auto;
  padding: var(--smsmenu-mobile-padding-y) var(--smsmenu-mobile-padding-x) !important;
  border: var(--smsmenu-mobile-button-border-width) solid var(--smsmenu-mobile-button-border-color);
  border-radius: var(--smsmenu-mobile-button-radius);
  background-color: var(--smsmenu-mobile-button-bg);
  background-image: var(--smsmenu-mobile-button-bg-image);
  background-size: var(--smsmenu-mobile-bg-size);
  background-position: var(--smsmenu-mobile-bg-position);
  background-repeat: no-repeat;
  color: var(--smsmenu-mobile-button-text) !important;
  box-shadow:
    var(--smsmenu-mobile-button-shadow-x)
    var(--smsmenu-mobile-button-shadow-y)
    var(--smsmenu-mobile-button-shadow-blur)
    var(--smsmenu-mobile-button-shadow-spread)
    var(--smsmenu-mobile-button-shadow);
  overflow: hidden;
  line-height: 1;
}

.smsmenu-mobile-toggle {
  width: min(var(--smsmenu-mobile-button-width), 100%) !important;
  height: var(--smsmenu-mobile-button-height) !important;
  min-height: var(--smsmenu-mobile-button-height) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 18px !important;
  padding: 0 28px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background-color: #f4f8fc !important;
  color: #0c2740 !important;
  box-shadow: none !important;
}

.smsmenu-mobile-toggle::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  z-index: -1;
  width: var(--smsmenu-mobile-button-decoration-width);
  background:
    linear-gradient(
      135deg,
      var(--smsmenu-mobile-button-decoration-bg) 0%,
      var(--smsmenu-mobile-button-decoration-bg) 54%,
      rgba(255, 255, 255, 0.58) 54%,
      rgba(255, 255, 255, 0.58) 100%
    );
  opacity: var(--smsmenu-mobile-button-decoration-opacity);
}

.smsmenu-mobile-toggle::before {
  width: 52%;
  background:
    radial-gradient(120% 140% at 70% -34%, rgba(212, 231, 243, 0.9) 0 36%, rgba(212, 231, 243, 0) 37%),
    linear-gradient(135deg, #e4f0f8 0%, #e4f0f8 50%, rgba(255, 255, 255, 0.52) 50%, rgba(255, 255, 255, 0.52) 100%) !important;
  opacity: 1 !important;
}

.smsmenu-mobile-toggle-icon {
  width: var(--smsmenu-mobile-icon-size);
  height: var(--smsmenu-mobile-icon-size);
  color: var(--smsmenu-mobile-button-icon);
}

.smsmenu-mobile-toggle-icon {
  width: var(--smsmenu-mobile-icon-size) !important;
  height: var(--smsmenu-mobile-icon-size) !important;
  color: var(--smsmenu-mobile-button-icon) !important;
}

.smsmenu-mobile-toggle-icon svg {
  width: var(--smsmenu-mobile-icon-size);
  height: var(--smsmenu-mobile-icon-size);
}

.smsmenu-mobile-toggle-icon .smsmenu-icon-img {
  width: auto !important;
  height: auto !important;
  max-width: var(--smsmenu-mobile-icon-size) !important;
  max-height: var(--smsmenu-mobile-icon-size) !important;
}

.smsmenu-mobile-toggle-text {
  flex: 1 1 auto;
  min-width: 0;
  color: inherit;
  font-size: var(--smsmenu-mobile-toggle-title-size);
  font-weight: var(--smsmenu-mobile-toggle-title-weight);
  line-height: 1;
  text-transform: var(--smsmenu-mobile-toggle-title-transform);
}

.smsmenu-mobile-toggle-text {
  font-family: var(--smsmenu-mobile-toggle-font-family) !important;
  font-size: var(--smsmenu-mobile-toggle-title-size) !important;
  font-weight: var(--smsmenu-mobile-toggle-title-weight) !important;
  line-height: 1 !important;
  color: var(--smsmenu-mobile-button-text) !important;
  text-transform: var(--smsmenu-mobile-toggle-title-transform) !important;
}

.smsmenu-mobile-toggle > .smsmenu-chevron {
  margin-left: auto;
}

.smsmenu-mobile-toggle > .smsmenu-chevron {
  width: 18px !important;
  height: 18px !important;
  border-right-width: 5px !important;
  border-bottom-width: 5px !important;
  color: var(--smsmenu-mobile-button-text) !important;
}

.smsmenu-mobile-toggle[aria-expanded="true"] .smsmenu-chevron {
  transform: rotate(225deg);
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-toggle {
  width: min(var(--smsmenu-mobile-button-width), 100%) !important;
  height: var(--smsmenu-mobile-button-height) !important;
  min-height: var(--smsmenu-mobile-button-height) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: var(--smsmenu-mobile-button-justify) !important;
  gap: var(--smsmenu-mobile-button-gap) !important;
  padding: var(--smsmenu-mobile-padding-y) var(--smsmenu-mobile-padding-x) !important;
  border: var(--smsmenu-mobile-button-border-width) solid var(--smsmenu-mobile-button-border-color) !important;
  border-radius: var(--smsmenu-mobile-button-radius) !important;
  background-color: var(--smsmenu-mobile-button-bg) !important;
  background-image: var(--smsmenu-mobile-button-bg-image) !important;
  background-repeat: no-repeat !important;
  background-position: var(--smsmenu-mobile-bg-position) !important;
  background-size: var(--smsmenu-mobile-bg-size) !important;
  color: var(--smsmenu-mobile-button-text) !important;
  box-shadow:
    var(--smsmenu-mobile-button-shadow-x)
    var(--smsmenu-mobile-button-shadow-y)
    var(--smsmenu-mobile-button-shadow-blur)
    var(--smsmenu-mobile-button-shadow-spread)
    var(--smsmenu-mobile-button-shadow) !important;
  line-height: 1 !important;
  transition:
    box-shadow var(--smsmenu-mobile-animation-duration) var(--smsmenu-mobile-easing),
    transform var(--smsmenu-mobile-animation-duration) var(--smsmenu-mobile-easing) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-toggle::before {
  display: none !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-toggle-icon {
  width: var(--smsmenu-mobile-icon-size) !important;
  height: var(--smsmenu-mobile-icon-size) !important;
  color: var(--smsmenu-mobile-button-icon) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-toggle-icon svg {
  width: var(--smsmenu-mobile-icon-size) !important;
  height: var(--smsmenu-mobile-icon-size) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-toggle-icon .smsmenu-icon-img {
  width: auto !important;
  height: auto !important;
  max-width: var(--smsmenu-mobile-icon-size) !important;
  max-height: var(--smsmenu-mobile-icon-size) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-toggle-text {
  flex: 1 1 auto !important;
  font-family: var(--smsmenu-mobile-toggle-font-family) !important;
  font-size: var(--smsmenu-mobile-toggle-title-size) !important;
  font-weight: var(--smsmenu-mobile-toggle-title-weight) !important;
  line-height: 1 !important;
  color: var(--smsmenu-mobile-button-text) !important;
  text-transform: var(--smsmenu-mobile-toggle-title-transform) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-toggle > .smsmenu-chevron {
  width: 14px !important;
  height: 14px !important;
  margin-left: auto !important;
  border-right-width: 4px !important;
  border-bottom-width: 4px !important;
  color: var(--smsmenu-mobile-button-text) !important;
  transition: transform var(--smsmenu-mobile-animation-duration) var(--smsmenu-mobile-easing) !important;
}

.smsmenu-mobile-panel {
  width: 100%;
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: hidden;
  height: 0;
  opacity: 0;
  transform: translateY(-8px);
  pointer-events: none;
  transition:
    height var(--smsmenu-mobile-animation-duration) var(--smsmenu-mobile-easing),
    margin-top var(--smsmenu-mobile-animation-duration) var(--smsmenu-mobile-easing),
    padding-top var(--smsmenu-mobile-animation-duration) var(--smsmenu-mobile-easing),
    padding-bottom var(--smsmenu-mobile-animation-duration) var(--smsmenu-mobile-easing),
    opacity calc(var(--smsmenu-mobile-animation-duration) * 0.88) ease,
    transform var(--smsmenu-mobile-animation-duration) var(--smsmenu-mobile-easing);
  will-change: height, margin-top, opacity, transform;
}

.smsmenu-mobile-panel.is-open {
  margin-top: var(--smsmenu-mobile-panel-gap);
  padding-right: var(--smsmenu-mobile-panel-padding-x);
  padding-left: var(--smsmenu-mobile-panel-padding-x);
  padding-top: var(--smsmenu-mobile-panel-padding-y);
  padding-bottom: var(--smsmenu-mobile-panel-padding-y);
  border-radius: 0 0 8px 8px;
  background: var(--smsmenu-mobile-panel-bg);
  box-shadow:
    var(--smsmenu-mobile-button-shadow-x)
    var(--smsmenu-mobile-button-shadow-y)
    var(--smsmenu-mobile-button-shadow-blur)
    var(--smsmenu-mobile-button-shadow-spread)
    var(--smsmenu-mobile-button-shadow);
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
  overflow: auto;
}

.smsmenu.has-mobile-panel-fullscreen .smsmenu-mobile-panel {
  position: fixed;
  inset: max(18px, env(safe-area-inset-top)) 14px max(18px, env(safe-area-inset-bottom));
  z-index: 999998;
  margin: 0;
  padding: 16px;
  max-height: none;
}

.smsmenu-mobile-node {
  display: flex;
  flex-direction: column;
  gap: var(--smsmenu-mobile-submenu-gap);
}

.smsmenu-mobile-node + .smsmenu-mobile-node {
  margin-top: var(--smsmenu-mobile-submenu-gap);
}

.smsmenu-mobile-panel > .smsmenu-mobile-node + .smsmenu-mobile-node {
  margin-top: var(--smsmenu-mobile-root-gap);
}

.smsmenu-mobile-item {
  width: 100% !important;
  height: var(--smsmenu-mobile-item-height);
  min-height: var(--smsmenu-mobile-item-height);
  display: flex !important;
  align-items: center;
  gap: var(--smsmenu-mobile-item-content-gap);
  padding: var(--smsmenu-mobile-item-padding-y) var(--smsmenu-mobile-item-padding-x) !important;
  border-radius: var(--smsmenu-mobile-radius);
  background-color: var(--smsmenu-mobile-item-bg) !important;
  background-image: var(--smsmenu-mobile-panel-bg-image) !important;
  background-repeat: no-repeat !important;
  background-position: var(--smsmenu-mobile-bg-position) !important;
  background-size: var(--smsmenu-mobile-bg-size) !important;
  color: var(--smsmenu-mobile-item-text) !important;
  box-shadow: 0 4px 8px var(--smsmenu-mobile-button-shadow);
  font-family: var(--smsmenu-mobile-item-font-family) !important;
  font-size: var(--smsmenu-mobile-item-title-size) !important;
  font-weight: var(--smsmenu-mobile-item-title-weight) !important;
  line-height: 1.1 !important;
  text-transform: var(--smsmenu-mobile-item-title-transform) !important;
  text-align: left;
  transition:
    box-shadow var(--smsmenu-mobile-animation-duration) var(--smsmenu-mobile-easing),
    transform var(--smsmenu-mobile-animation-duration) var(--smsmenu-mobile-easing);
}

.smsmenu-mobile-item:hover,
.smsmenu-mobile-item:focus-visible,
.smsmenu-mobile-node.is-open > .smsmenu-mobile-item {
  background-color: var(--smsmenu-mobile-item-hover) !important;
  background-image: var(--smsmenu-mobile-panel-bg-image) !important;
  background-repeat: no-repeat !important;
  background-position: var(--smsmenu-mobile-bg-position) !important;
  background-size: var(--smsmenu-mobile-bg-size) !important;
  transform: translateY(-2px) scale(1.01);
  box-shadow: 0 8px 16px var(--smsmenu-mobile-button-shadow);
  outline: none !important;
}

.smsmenu-mobile-item .smsmenu-title {
  flex: 1 1 auto;
  justify-content: flex-start;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  text-transform: inherit !important;
  color: inherit !important;
  text-align: left;
  text-shadow: none;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-item,
.smsmenu-widget-wrap .smsmenu .smsmenu-mobile button.smsmenu-mobile-item,
.smsmenu-widget-wrap .smsmenu .smsmenu-mobile a.smsmenu-mobile-item {
  font-family: var(--smsmenu-mobile-item-font-family) !important;
  font-size: var(--smsmenu-mobile-item-title-size) !important;
  font-weight: var(--smsmenu-mobile-item-title-weight) !important;
  line-height: 1.1 !important;
  text-transform: var(--smsmenu-mobile-item-title-transform) !important;
  color: var(--smsmenu-mobile-item-text) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-item .smsmenu-title {
  font-family: var(--smsmenu-mobile-item-font-family) !important;
  font-size: var(--smsmenu-mobile-item-title-size) !important;
  font-weight: var(--smsmenu-mobile-item-title-weight) !important;
  line-height: 1.1 !important;
  text-transform: var(--smsmenu-mobile-item-title-transform) !important;
  color: var(--smsmenu-mobile-item-text) !important;
}

.smsmenu-mobile-item .smsmenu-icon--mobile {
  width: var(--smsmenu-mobile-item-icon-size) !important;
  height: var(--smsmenu-mobile-item-icon-size) !important;
  color: var(--smsmenu-mobile-item-icon) !important;
}

.smsmenu-mobile-item .smsmenu-icon--mobile svg {
  width: var(--smsmenu-mobile-item-icon-size) !important;
  height: var(--smsmenu-mobile-item-icon-size) !important;
}

.smsmenu-mobile-item .smsmenu-icon--mobile .smsmenu-icon-img {
  width: auto !important;
  height: auto !important;
  max-width: var(--smsmenu-mobile-item-icon-size) !important;
  max-height: var(--smsmenu-mobile-item-icon-size) !important;
}

.smsmenu-mobile-item[aria-expanded="true"] .smsmenu-chevron {
  transform: rotate(225deg);
}

.smsmenu-mobile-submenu {
  margin-left: var(--smsmenu-mobile-sub-indent);
  display: flex;
  flex-direction: column;
  gap: var(--smsmenu-mobile-submenu-gap);
  overflow: hidden;
  height: 0;
  opacity: 0;
  transform: translateY(-6px);
  pointer-events: none;
  transition:
    height var(--smsmenu-mobile-submenu-duration) var(--smsmenu-mobile-easing),
    opacity calc(var(--smsmenu-mobile-submenu-duration) * 0.84) ease,
    transform calc(var(--smsmenu-mobile-submenu-duration) * 0.84) var(--smsmenu-mobile-easing);
  will-change: height, opacity, transform;
}

.smsmenu-mobile-submenu.is-open {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.smsmenu-mobile-link.is-all-link {
  font-size: 14px;
  opacity: 0.9;
}

.smsmenu-empty {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 18px;
  border: 1px dashed #9fb7cb;
  border-radius: 10px;
  background: #f7fbfe;
  color: #29465f;
  font-size: 14px;
}

.smsmenu-editor-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 4px 9px;
  padding: 7px 10px;
  border: 1px solid #d7e6f1;
  border-radius: 8px;
  background: #f6fafc;
  color: #46647d;
  font: 600 11px/1.25 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.smsmenu-editor-status span:last-child {
  color: #1476b8;
  font-weight: 700;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-desktop {
  flex-wrap: wrap !important;
  justify-content: var(--smsmenu-desktop-align) !important;
  gap: var(--smsmenu-desktop-gap) !important;
  margin: 0 !important;
  padding: var(--smsmenu-desktop-list-padding-y) var(--smsmenu-desktop-list-padding-x) !important;
  box-sizing: border-box !important;
}

.smsmenu-widget-wrap .smsmenu.has-desktop-align-flex-start .smsmenu-desktop {
  justify-content: flex-start !important;
}

.smsmenu-widget-wrap .smsmenu.has-desktop-align-center .smsmenu-desktop {
  justify-content: center !important;
}

.smsmenu-widget-wrap .smsmenu.has-desktop-align-space-between .smsmenu-desktop {
  justify-content: space-between !important;
}

.smsmenu-widget-wrap .smsmenu.has-desktop-align-flex-end .smsmenu-desktop {
  justify-content: flex-end !important;
}

.smsmenu-widget-wrap .smsmenu.has-card-style-linear .smsmenu-desktop {
  padding-inline: 0 !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-desktop-item {
  flex: 0 0 var(--smsmenu-desktop-item-width) !important;
  width: var(--smsmenu-desktop-item-width) !important;
  max-width: var(--smsmenu-desktop-item-width) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-card {
  width: 100% !important;
  aspect-ratio: auto !important;
  height: var(--smsmenu-desktop-item-height) !important;
  min-height: var(--smsmenu-desktop-item-height) !important;
  padding: var(--smsmenu-desktop-padding) !important;
  background-color: var(--smsmenu-desktop-bg) !important;
  background-image: var(--smsmenu-desktop-bg-image) !important;
  background-repeat: var(--smsmenu-desktop-bg-repeat) !important;
  background-position: var(--smsmenu-desktop-bg-position) !important;
  background-size: var(--smsmenu-desktop-bg-size) !important;
  border-radius: var(--smsmenu-desktop-radius) !important;
  color: var(--smsmenu-desktop-text) !important;
  box-shadow: 0 4px 4px var(--smsmenu-desktop-shadow) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-icon--desktop {
  width: min(var(--smsmenu-desktop-icon-box), 100%) !important;
  height: var(--smsmenu-desktop-icon-box) !important;
  margin: 0 !important;
  color: var(--smsmenu-desktop-icon) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-icon--desktop svg {
  width: var(--smsmenu-desktop-icon-size) !important;
  height: var(--smsmenu-desktop-icon-size) !important;
  max-width: 100% !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-icon--desktop .smsmenu-icon-img {
  width: auto !important;
  height: auto !important;
  max-width: min(var(--smsmenu-desktop-icon-size), 100%) !important;
  max-height: min(var(--smsmenu-desktop-icon-size), 100%) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-card .smsmenu-title {
  font-family: var(--smsmenu-desktop-title-font-family) !important;
  font-size: var(--smsmenu-desktop-title-size) !important;
  font-weight: var(--smsmenu-desktop-title-weight) !important;
  line-height: var(--smsmenu-desktop-title-line-height) !important;
  color: var(--smsmenu-desktop-text) !important;
  text-transform: var(--smsmenu-desktop-title-transform) !important;
  text-align: var(--smsmenu-desktop-title-align) !important;
  text-shadow:
    var(--smsmenu-desktop-title-shadow-x)
    var(--smsmenu-desktop-title-shadow-y)
    var(--smsmenu-desktop-title-shadow-blur)
    var(--smsmenu-desktop-title-shadow-color) !important;
}

.smsmenu-widget-wrap .smsmenu.has-desktop-icon-top .smsmenu-card {
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--smsmenu-desktop-content-gap) !important;
  text-align: var(--smsmenu-desktop-title-align) !important;
}

.smsmenu-widget-wrap .smsmenu.has-desktop-icon-top .smsmenu-card .smsmenu-title {
  text-align: var(--smsmenu-desktop-title-align) !important;
}

.smsmenu-widget-wrap .smsmenu.has-desktop-icon-left .smsmenu-card {
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: var(--smsmenu-desktop-content-gap) !important;
  text-align: var(--smsmenu-desktop-title-align) !important;
}

.smsmenu-widget-wrap .smsmenu.has-desktop-icon-left .smsmenu-card .smsmenu-title {
  flex: 1 1 auto !important;
  text-align: var(--smsmenu-desktop-title-align) !important;
}

.smsmenu-widget-wrap .smsmenu.has-desktop-title-align-left .smsmenu-card .smsmenu-title {
  justify-content: flex-start !important;
  text-align: left !important;
}

.smsmenu-widget-wrap .smsmenu.has-desktop-title-align-center .smsmenu-card .smsmenu-title {
  justify-content: center !important;
  text-align: center !important;
}

.smsmenu-widget-wrap .smsmenu.has-desktop-title-align-right .smsmenu-card .smsmenu-title {
  justify-content: flex-end !important;
  text-align: right !important;
}

/* Coordinated size presets. Custom keeps every manual control available. */
.smsmenu-widget-wrap .smsmenu.has-category-size-compact .smsmenu-desktop-item {
  flex-basis: 160px !important;
  width: 160px !important;
  max-width: 160px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-compact .smsmenu-card {
  height: 126px !important;
  min-height: 126px !important;
  padding: 12px !important;
  gap: 7px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-compact .smsmenu-icon--desktop {
  width: 58px !important;
  height: 58px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-compact .smsmenu-icon--desktop svg {
  width: 50px !important;
  height: 50px !important;
  max-width: 50px !important;
  max-height: 50px !important;
}
.smsmenu-widget-wrap .smsmenu.has-category-size-compact .smsmenu-icon--desktop .smsmenu-icon-img { width: auto !important; height: auto !important; max-width: 50px !important; max-height: 50px !important; }

.smsmenu-widget-wrap .smsmenu.has-category-size-compact .smsmenu-card .smsmenu-title {
  font-size: 15px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-balanced .smsmenu-desktop-item {
  flex-basis: 208px !important;
  width: 208px !important;
  max-width: 208px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-balanced .smsmenu-card {
  height: 194px !important;
  min-height: 194px !important;
  padding: 18px !important;
  gap: 12px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-balanced .smsmenu-icon--desktop {
  width: 98px !important;
  height: 98px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-balanced .smsmenu-icon--desktop svg {
  width: 78px !important;
  height: 78px !important;
  max-width: 78px !important;
  max-height: 78px !important;
}
.smsmenu-widget-wrap .smsmenu.has-category-size-balanced .smsmenu-icon--desktop .smsmenu-icon-img { width: auto !important; height: auto !important; max-width: 78px !important; max-height: 78px !important; }

.smsmenu-widget-wrap .smsmenu.has-category-size-balanced .smsmenu-card .smsmenu-title {
  font-size: 18px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-showcase .smsmenu-desktop-item {
  flex-basis: 260px !important;
  width: 260px !important;
  max-width: 260px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-showcase .smsmenu-card {
  height: 242px !important;
  min-height: 242px !important;
  padding: 24px !important;
  gap: 16px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-showcase .smsmenu-icon--desktop {
  width: 132px !important;
  height: 132px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-showcase .smsmenu-icon--desktop svg {
  width: 112px !important;
  height: 112px !important;
  max-width: 112px !important;
  max-height: 112px !important;
}
.smsmenu-widget-wrap .smsmenu.has-category-size-showcase .smsmenu-icon--desktop .smsmenu-icon-img { width: auto !important; height: auto !important; max-width: 112px !important; max-height: 112px !important; }

.smsmenu-widget-wrap .smsmenu.has-category-size-showcase .smsmenu-card .smsmenu-title {
  font-size: 22px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-horizontal .smsmenu-desktop-item {
  flex-basis: 230px !important;
  width: 230px !important;
  max-width: 230px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-horizontal .smsmenu-card {
  height: 86px !important;
  min-height: 86px !important;
  padding: 13px 15px !important;
  flex-direction: row !important;
  justify-content: flex-start !important;
  gap: 12px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-horizontal .smsmenu-icon--desktop {
  width: 48px !important;
  height: 48px !important;
}

.smsmenu-widget-wrap .smsmenu.has-category-size-horizontal .smsmenu-icon--desktop svg {
  width: 42px !important;
  height: 42px !important;
  max-width: 42px !important;
  max-height: 42px !important;
}
.smsmenu-widget-wrap .smsmenu.has-category-size-horizontal .smsmenu-icon--desktop .smsmenu-icon-img { width: auto !important; height: auto !important; max-width: 42px !important; max-height: 42px !important; }

.smsmenu-widget-wrap .smsmenu.has-category-size-horizontal .smsmenu-card .smsmenu-title {
  flex: 1 1 auto !important;
  font-size: 16px !important;
  text-align: left !important;
}

.smsmenu-widget-wrap .smsmenu.has-desktop-layout-grid.has-category-size-compact .smsmenu-desktop-item,
.smsmenu-widget-wrap .smsmenu.has-desktop-layout-grid.has-category-size-balanced .smsmenu-desktop-item,
.smsmenu-widget-wrap .smsmenu.has-desktop-layout-grid.has-category-size-showcase .smsmenu-desktop-item,
.smsmenu-widget-wrap .smsmenu.has-desktop-layout-grid.has-category-size-horizontal .smsmenu-desktop-item {
  width: 100% !important;
  max-width: 100% !important;
}

.smsmenu.has-submenu-size-compact .smsmenu-desktop-submenu { padding: 5px; }
.smsmenu.has-submenu-size-compact .smsmenu-submenu-list { gap: 2px; }
.smsmenu.has-submenu-size-compact .smsmenu-submenu-link {
  height: 34px;
  min-height: 34px;
  padding: 5px 8px;
  font-size: 12px !important;
}
.smsmenu.has-submenu-size-compact .smsmenu-icon--submenu,
.smsmenu.has-submenu-size-compact .smsmenu-icon--submenu svg { width: 18px; height: 18px; }
.smsmenu.has-submenu-size-compact .smsmenu-icon--submenu .smsmenu-icon-img { max-width: 18px !important; max-height: 18px !important; }
.smsmenu.has-submenu-size-compact .smsmenu-submenu-depth-2 > .smsmenu-submenu-item > .smsmenu-submenu-link { height: 32px; min-height: 32px; font-size: 11px !important; }

.smsmenu.has-submenu-size-comfortable .smsmenu-desktop-submenu { padding: 10px; }
.smsmenu.has-submenu-size-comfortable .smsmenu-submenu-list { gap: 6px; }
.smsmenu.has-submenu-size-comfortable .smsmenu-submenu-link {
  height: 48px;
  min-height: 48px;
  padding: 11px 14px;
  font-size: 15px !important;
}
.smsmenu.has-submenu-size-comfortable .smsmenu-icon--submenu,
.smsmenu.has-submenu-size-comfortable .smsmenu-icon--submenu svg { width: 28px; height: 28px; }
.smsmenu.has-submenu-size-comfortable .smsmenu-icon--submenu .smsmenu-icon-img { max-width: 28px !important; max-height: 28px !important; }
.smsmenu.has-submenu-size-comfortable .smsmenu-submenu-depth-2 > .smsmenu-submenu-item > .smsmenu-submenu-link { height: 44px; min-height: 44px; font-size: 14px !important; }

.smsmenu.has-submenu-size-large .smsmenu-desktop-submenu { padding: 13px; }
.smsmenu.has-submenu-size-large .smsmenu-submenu-list { gap: 8px; }
.smsmenu.has-submenu-size-large .smsmenu-submenu-link {
  height: 58px;
  min-height: 58px;
  padding: 14px 17px;
  font-size: 17px !important;
}
.smsmenu.has-submenu-size-large .smsmenu-icon--submenu,
.smsmenu.has-submenu-size-large .smsmenu-icon--submenu svg { width: 34px; height: 34px; }
.smsmenu.has-submenu-size-large .smsmenu-icon--submenu .smsmenu-icon-img { max-width: 34px !important; max-height: 34px !important; }
.smsmenu.has-submenu-size-large .smsmenu-submenu-depth-2 > .smsmenu-submenu-item > .smsmenu-submenu-link { height: 52px; min-height: 52px; font-size: 16px !important; }

.smsmenu.has-submenu-visual-soft .smsmenu-desktop-submenu {
  border-color: transparent;
  box-shadow: 0 15px 36px var(--smsmenu-submenu-shadow);
}

.smsmenu.has-submenu-visual-glass .smsmenu-desktop-submenu {
  background: rgba(255, 255, 255, 0.82);
  background: color-mix(in srgb, var(--smsmenu-submenu-bg) 82%, transparent);
  -webkit-backdrop-filter: blur(16px) saturate(135%);
  backdrop-filter: blur(16px) saturate(135%);
}

.smsmenu.has-submenu-visual-outline .smsmenu-desktop-submenu {
  border-width: 2px;
  box-shadow: none;
}

.smsmenu.has-submenu-visual-accent .smsmenu-desktop-submenu {
  border-top: 3px solid var(--smsmenu-desktop-icon);
}

.smsmenu-widget-wrap .smsmenu.has-mobile-size-compact .smsmenu-mobile .smsmenu-mobile-item {
  height: 44px !important;
  min-height: 44px !important;
  padding: 5px 8px !important;
  font-size: 14px !important;
}
.smsmenu-widget-wrap .smsmenu.has-mobile-size-compact .smsmenu-mobile .smsmenu-mobile-item .smsmenu-title { font-size: 14px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-compact .smsmenu-mobile .smsmenu-mobile-depth-1 > .smsmenu-mobile-item { height: 40px !important; min-height: 40px !important; font-size: 13px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-compact .smsmenu-mobile .smsmenu-mobile-depth-1 > .smsmenu-mobile-item .smsmenu-title { font-size: 13px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-compact .smsmenu-mobile .smsmenu-mobile-depth-2 > .smsmenu-mobile-item { height: 36px !important; min-height: 36px !important; font-size: 12px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-compact .smsmenu-mobile .smsmenu-mobile-depth-2 > .smsmenu-mobile-item .smsmenu-title { font-size: 12px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-compact .smsmenu-mobile .smsmenu-icon--mobile,
.smsmenu-widget-wrap .smsmenu.has-mobile-size-compact .smsmenu-mobile .smsmenu-icon--mobile svg { width: 30px !important; height: 30px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-compact .smsmenu-mobile .smsmenu-icon--mobile .smsmenu-icon-img { max-width: 30px !important; max-height: 30px !important; }

.smsmenu-widget-wrap .smsmenu.has-mobile-size-comfort .smsmenu-mobile .smsmenu-mobile-item {
  height: 58px !important;
  min-height: 58px !important;
  padding: 9px 12px !important;
  font-size: 16px !important;
}
.smsmenu-widget-wrap .smsmenu.has-mobile-size-comfort .smsmenu-mobile .smsmenu-mobile-item .smsmenu-title { font-size: 16px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-comfort .smsmenu-mobile .smsmenu-mobile-depth-1 > .smsmenu-mobile-item { height: 52px !important; min-height: 52px !important; font-size: 15px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-comfort .smsmenu-mobile .smsmenu-mobile-depth-1 > .smsmenu-mobile-item .smsmenu-title { font-size: 15px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-comfort .smsmenu-mobile .smsmenu-mobile-depth-2 > .smsmenu-mobile-item { height: 48px !important; min-height: 48px !important; font-size: 14px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-comfort .smsmenu-mobile .smsmenu-mobile-depth-2 > .smsmenu-mobile-item .smsmenu-title { font-size: 14px !important; }

.smsmenu-widget-wrap .smsmenu.has-mobile-size-touch .smsmenu-mobile .smsmenu-mobile-item {
  height: 70px !important;
  min-height: 70px !important;
  padding: 12px 15px !important;
  font-size: 18px !important;
}
.smsmenu-widget-wrap .smsmenu.has-mobile-size-touch .smsmenu-mobile .smsmenu-mobile-item .smsmenu-title { font-size: 18px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-touch .smsmenu-mobile .smsmenu-mobile-depth-1 > .smsmenu-mobile-item { height: 62px !important; min-height: 62px !important; font-size: 17px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-touch .smsmenu-mobile .smsmenu-mobile-depth-1 > .smsmenu-mobile-item .smsmenu-title { font-size: 17px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-touch .smsmenu-mobile .smsmenu-mobile-depth-2 > .smsmenu-mobile-item { height: 56px !important; min-height: 56px !important; font-size: 15px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-touch .smsmenu-mobile .smsmenu-mobile-depth-2 > .smsmenu-mobile-item .smsmenu-title { font-size: 15px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-touch .smsmenu-mobile .smsmenu-icon--mobile,
.smsmenu-widget-wrap .smsmenu.has-mobile-size-touch .smsmenu-mobile .smsmenu-icon--mobile svg { width: 56px !important; height: 56px !important; }
.smsmenu-widget-wrap .smsmenu.has-mobile-size-touch .smsmenu-mobile .smsmenu-icon--mobile .smsmenu-icon-img { max-width: 56px !important; max-height: 56px !important; }

/* Category motion presets. */
.smsmenu.has-category-motion-none .smsmenu-card:hover,
.smsmenu.has-category-motion-none .smsmenu-card:focus-visible,
.smsmenu.has-category-motion-none .smsmenu-desktop-item.is-submenu-open > .smsmenu-card {
  transform: translateZ(0) !important;
}

.smsmenu.has-category-motion-soft .smsmenu-card:hover,
.smsmenu.has-category-motion-soft .smsmenu-card:focus-visible,
.smsmenu.has-category-motion-soft .smsmenu-desktop-item.is-submenu-open > .smsmenu-card {
  transform: translateY(calc(-1 * var(--smsmenu-category-motion-distance))) scale(var(--smsmenu-category-motion-scale)) !important;
}

.smsmenu.has-category-motion-lift .smsmenu-card:hover,
.smsmenu.has-category-motion-lift .smsmenu-card:focus-visible,
.smsmenu.has-category-motion-lift .smsmenu-desktop-item.is-submenu-open > .smsmenu-card {
  transform: translateY(calc(-2 * var(--smsmenu-category-motion-distance))) !important;
}

.smsmenu.has-category-motion-zoom .smsmenu-card:hover,
.smsmenu.has-category-motion-zoom .smsmenu-card:focus-visible,
.smsmenu.has-category-motion-zoom .smsmenu-desktop-item.is-submenu-open > .smsmenu-card {
  transform: scale(var(--smsmenu-category-motion-scale)) !important;
}

.smsmenu.has-category-motion-slide .smsmenu-card:hover,
.smsmenu.has-category-motion-slide .smsmenu-card:focus-visible,
.smsmenu.has-category-motion-slide .smsmenu-desktop-item.is-submenu-open > .smsmenu-card {
  transform: translateX(var(--smsmenu-category-motion-distance)) !important;
}

.smsmenu.has-category-motion-tilt .smsmenu-card:hover,
.smsmenu.has-category-motion-tilt .smsmenu-card:focus-visible,
.smsmenu.has-category-motion-tilt .smsmenu-desktop-item.is-submenu-open > .smsmenu-card {
  transform: translateY(calc(-1 * var(--smsmenu-category-motion-distance))) rotate(-1.2deg) scale(var(--smsmenu-category-motion-scale)) !important;
}

.smsmenu.has-category-motion-glow .smsmenu-card:hover,
.smsmenu.has-category-motion-glow .smsmenu-card:focus-visible,
.smsmenu.has-category-motion-glow .smsmenu-desktop-item.is-submenu-open > .smsmenu-card {
  transform: translateZ(0) !important;
  box-shadow: 0 0 0 2px var(--smsmenu-desktop-icon-soft), 0 12px 30px var(--smsmenu-desktop-shadow-hover) !important;
}

@keyframes smsmenu-category-fade {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes smsmenu-category-rise {
  from { opacity: 0; transform: translateY(var(--smsmenu-category-entry-distance)); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes smsmenu-category-zoom {
  from { opacity: 0; transform: scale(0.92); }
  to { opacity: 1; transform: scale(1); }
}

.smsmenu.has-category-entry-fade .smsmenu-desktop-item {
  animation: smsmenu-category-fade var(--smsmenu-category-entry-duration) ease both;
}

.smsmenu.has-category-entry-rise .smsmenu-desktop-item,
.smsmenu.has-category-entry-stagger .smsmenu-desktop-item {
  animation: smsmenu-category-rise var(--smsmenu-category-entry-duration) cubic-bezier(0.22, 1, 0.36, 1) both;
}

.smsmenu.has-category-entry-zoom .smsmenu-desktop-item {
  animation: smsmenu-category-zoom var(--smsmenu-category-entry-duration) cubic-bezier(0.22, 1, 0.36, 1) both;
}

.smsmenu.has-category-entry-stagger .smsmenu-desktop-item:nth-child(2) { animation-delay: calc(var(--smsmenu-category-entry-stagger) * 1); }
.smsmenu.has-category-entry-stagger .smsmenu-desktop-item:nth-child(3) { animation-delay: calc(var(--smsmenu-category-entry-stagger) * 2); }
.smsmenu.has-category-entry-stagger .smsmenu-desktop-item:nth-child(4) { animation-delay: calc(var(--smsmenu-category-entry-stagger) * 3); }
.smsmenu.has-category-entry-stagger .smsmenu-desktop-item:nth-child(5) { animation-delay: calc(var(--smsmenu-category-entry-stagger) * 4); }
.smsmenu.has-category-entry-stagger .smsmenu-desktop-item:nth-child(6) { animation-delay: calc(var(--smsmenu-category-entry-stagger) * 5); }
.smsmenu.has-category-entry-stagger .smsmenu-desktop-item:nth-child(7) { animation-delay: calc(var(--smsmenu-category-entry-stagger) * 6); }
.smsmenu.has-category-entry-stagger .smsmenu-desktop-item:nth-child(8) { animation-delay: calc(var(--smsmenu-category-entry-stagger) * 7); }
.smsmenu.has-category-entry-stagger .smsmenu-desktop-item:nth-child(n+9) { animation-delay: calc(var(--smsmenu-category-entry-stagger) * 8); }

/* Desktop subcategory sizing and motion presets. */
.smsmenu .smsmenu-submenu-depth-2 > .smsmenu-submenu-item > .smsmenu-submenu-link {
  height: var(--smsmenu-sub2-item-height);
  min-height: var(--smsmenu-sub2-item-height);
  font-size: var(--smsmenu-sub2-title-size) !important;
}

.smsmenu .smsmenu-submenu-depth-2 > .smsmenu-submenu-item > .smsmenu-submenu-link .smsmenu-icon--submenu,
.smsmenu .smsmenu-submenu-depth-2 > .smsmenu-submenu-item > .smsmenu-submenu-link .smsmenu-icon--submenu svg {
  width: var(--smsmenu-sub2-icon-size) !important;
  height: var(--smsmenu-sub2-icon-size) !important;
}

.smsmenu .smsmenu-submenu-depth-2 > .smsmenu-submenu-item > .smsmenu-submenu-link .smsmenu-icon-img {
  max-width: var(--smsmenu-sub2-icon-size) !important;
  max-height: var(--smsmenu-sub2-icon-size) !important;
}

.smsmenu.has-submenu-motion-none .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-fade .smsmenu-desktop-submenu {
  transform: none;
}

.smsmenu.has-submenu-motion-scale .smsmenu-desktop-submenu {
  transform: scale(0.94);
  transform-origin: top left;
}

.smsmenu.has-submenu-motion-slide .smsmenu-desktop-submenu {
  transform: translateX(-12px);
}

.smsmenu.has-submenu-motion-unfold .smsmenu-desktop-submenu {
  transform: scaleY(0.72);
  transform-origin: top;
}

.smsmenu.has-submenu-motion-none .smsmenu-desktop-submenu {
  transition: none;
}

.smsmenu.has-submenu-motion-none .smsmenu-desktop-item.has-children:hover > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-none .smsmenu-desktop-item.has-children:focus-within > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-none .smsmenu-desktop-item.is-submenu-open > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-none .smsmenu-submenu-item.has-children:hover > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-none .smsmenu-submenu-item.has-children:focus-within > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-none .smsmenu-submenu-item.is-submenu-open > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-fade .smsmenu-desktop-item.has-children:hover > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-fade .smsmenu-desktop-item.has-children:focus-within > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-fade .smsmenu-desktop-item.is-submenu-open > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-fade .smsmenu-submenu-item.has-children:hover > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-fade .smsmenu-submenu-item.has-children:focus-within > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-fade .smsmenu-submenu-item.is-submenu-open > .smsmenu-desktop-submenu {
  transform: none;
}

.smsmenu.has-submenu-motion-scale .smsmenu-desktop-item.has-children:hover > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-scale .smsmenu-desktop-item.has-children:focus-within > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-scale .smsmenu-desktop-item.is-submenu-open > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-scale .smsmenu-submenu-item.has-children:hover > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-scale .smsmenu-submenu-item.has-children:focus-within > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-scale .smsmenu-submenu-item.is-submenu-open > .smsmenu-desktop-submenu {
  transform: scale(1);
}

.smsmenu.has-submenu-motion-slide .smsmenu-desktop-item.has-children:hover > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-slide .smsmenu-desktop-item.has-children:focus-within > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-slide .smsmenu-desktop-item.is-submenu-open > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-slide .smsmenu-submenu-item.has-children:hover > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-slide .smsmenu-submenu-item.has-children:focus-within > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-slide .smsmenu-submenu-item.is-submenu-open > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-unfold .smsmenu-desktop-item.has-children:hover > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-unfold .smsmenu-desktop-item.has-children:focus-within > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-unfold .smsmenu-desktop-item.is-submenu-open > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-unfold .smsmenu-submenu-item.has-children:hover > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-unfold .smsmenu-submenu-item.has-children:focus-within > .smsmenu-desktop-submenu,
.smsmenu.has-submenu-motion-unfold .smsmenu-submenu-item.is-submenu-open > .smsmenu-desktop-submenu {
  transform: none;
}

.smsmenu.has-submenu-item-motion-none .smsmenu-submenu-link:hover,
.smsmenu.has-submenu-item-motion-none .smsmenu-submenu-link:focus-visible {
  transform: none;
}

.smsmenu.has-submenu-item-motion-soft .smsmenu-submenu-link:hover,
.smsmenu.has-submenu-item-motion-soft .smsmenu-submenu-link:focus-visible {
  transform: translateX(2px);
}

.smsmenu.has-submenu-item-motion-slide .smsmenu-submenu-link:hover,
.smsmenu.has-submenu-item-motion-slide .smsmenu-submenu-link:focus-visible {
  transform: translateX(7px);
}

.smsmenu.has-submenu-item-motion-lift .smsmenu-submenu-link:hover,
.smsmenu.has-submenu-item-motion-lift .smsmenu-submenu-link:focus-visible {
  transform: translateY(-3px);
}

.smsmenu.has-submenu-item-motion-glow .smsmenu-submenu-link:hover,
.smsmenu.has-submenu-item-motion-glow .smsmenu-submenu-link:focus-visible {
  transform: none;
  box-shadow: 0 0 0 1px var(--smsmenu-desktop-icon-soft), 0 7px 18px var(--smsmenu-submenu-shadow);
}

/* Mobile category and nested level controls. */
.smsmenu.has-mobile-panel-fullscreen .smsmenu-mobile-panel.is-open {
  padding: var(--smsmenu-mobile-panel-padding-y) var(--smsmenu-mobile-panel-padding-x);
}

.smsmenu-mobile-depth-1 > .smsmenu-mobile-submenu {
  margin-left: var(--smsmenu-mobile-sub2-indent);
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-depth-1 > .smsmenu-mobile-item {
  height: var(--smsmenu-mobile-sub-item-height);
  min-height: var(--smsmenu-mobile-sub-item-height);
  font-size: var(--smsmenu-mobile-sub-title-size) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-depth-2 > .smsmenu-mobile-item {
  height: var(--smsmenu-mobile-sub2-item-height);
  min-height: var(--smsmenu-mobile-sub2-item-height);
  font-size: var(--smsmenu-mobile-sub2-title-size) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-depth-1 > .smsmenu-mobile-item .smsmenu-title {
  font-size: var(--smsmenu-mobile-sub-title-size) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-depth-2 > .smsmenu-mobile-item .smsmenu-title {
  font-size: var(--smsmenu-mobile-sub2-title-size) !important;
}

.smsmenu .smsmenu-mobile-depth-1 > .smsmenu-mobile-item .smsmenu-icon--mobile,
.smsmenu .smsmenu-mobile-depth-1 > .smsmenu-mobile-item .smsmenu-icon--mobile svg {
  width: var(--smsmenu-mobile-sub-icon-size) !important;
  height: var(--smsmenu-mobile-sub-icon-size) !important;
}

.smsmenu .smsmenu-mobile-depth-2 > .smsmenu-mobile-item .smsmenu-icon--mobile,
.smsmenu .smsmenu-mobile-depth-2 > .smsmenu-mobile-item .smsmenu-icon--mobile svg {
  width: var(--smsmenu-mobile-sub2-icon-size) !important;
  height: var(--smsmenu-mobile-sub2-icon-size) !important;
}

.smsmenu .smsmenu-mobile-depth-1 > .smsmenu-mobile-item .smsmenu-icon-img {
  max-width: var(--smsmenu-mobile-sub-icon-size) !important;
  max-height: var(--smsmenu-mobile-sub-icon-size) !important;
}

.smsmenu .smsmenu-mobile-depth-2 > .smsmenu-mobile-item .smsmenu-icon-img {
  max-width: var(--smsmenu-mobile-sub2-icon-size) !important;
  max-height: var(--smsmenu-mobile-sub2-icon-size) !important;
}

.smsmenu.has-mobile-panel-motion-none .smsmenu-mobile-panel,
.smsmenu.has-mobile-panel-motion-fade .smsmenu-mobile-panel {
  transform: none;
}

.smsmenu.has-mobile-panel-motion-none .smsmenu-mobile-panel {
  transition: none;
}

.smsmenu.has-mobile-panel-motion-slide .smsmenu-mobile-panel {
  transform: translateX(-18px);
}

.smsmenu.has-mobile-panel-motion-scale .smsmenu-mobile-panel {
  transform: scale(0.96);
  transform-origin: top center;
}

.smsmenu.has-mobile-panel-motion-slide .smsmenu-mobile-panel.is-open,
.smsmenu.has-mobile-panel-motion-scale .smsmenu-mobile-panel.is-open {
  transform: none;
}

.smsmenu.has-mobile-item-motion-none .smsmenu-mobile-item:hover,
.smsmenu.has-mobile-item-motion-none .smsmenu-mobile-item:focus-visible,
.smsmenu.has-mobile-item-motion-none .smsmenu-mobile-node.is-open > .smsmenu-mobile-item {
  transform: none;
}

.smsmenu.has-mobile-item-motion-slide .smsmenu-mobile-item:hover,
.smsmenu.has-mobile-item-motion-slide .smsmenu-mobile-item:focus-visible,
.smsmenu.has-mobile-item-motion-slide .smsmenu-mobile-node.is-open > .smsmenu-mobile-item {
  transform: translateX(7px);
}

.smsmenu.has-mobile-item-motion-lift .smsmenu-mobile-item:hover,
.smsmenu.has-mobile-item-motion-lift .smsmenu-mobile-item:focus-visible,
.smsmenu.has-mobile-item-motion-lift .smsmenu-mobile-node.is-open > .smsmenu-mobile-item {
  transform: translateY(-4px);
}

.smsmenu.has-mobile-item-motion-scale .smsmenu-mobile-item:hover,
.smsmenu.has-mobile-item-motion-scale .smsmenu-mobile-item:focus-visible,
.smsmenu.has-mobile-item-motion-scale .smsmenu-mobile-node.is-open > .smsmenu-mobile-item {
  transform: scale(1.025);
}

/* Per-item icon sizing and positioning. These rules intentionally override presets. */
.smsmenu-widget-wrap .smsmenu .smsmenu-icon.has-item-icon-layout {
  position: relative;
  z-index: 1;
  overflow: visible !important;
  transform: translate(
    var(--smsmenu-item-icon-x, 0px),
    var(--smsmenu-item-icon-y, 0px)
  ) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-card .smsmenu-icon--desktop.has-item-icon-layout svg {
  width: var(--smsmenu-item-icon-size, var(--smsmenu-desktop-icon-size)) !important;
  height: var(--smsmenu-item-icon-size, var(--smsmenu-desktop-icon-size)) !important;
  max-width: none !important;
  max-height: none !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-card .smsmenu-icon--desktop.has-item-icon-layout .smsmenu-icon-img {
  max-width: var(--smsmenu-item-icon-size, var(--smsmenu-desktop-icon-size)) !important;
  max-height: var(--smsmenu-item-icon-size, var(--smsmenu-desktop-icon-size)) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-submenu-link .smsmenu-icon--submenu.has-item-icon-layout svg {
  width: var(--smsmenu-item-icon-size, var(--smsmenu-submenu-icon-size)) !important;
  height: var(--smsmenu-item-icon-size, var(--smsmenu-submenu-icon-size)) !important;
  max-width: none !important;
  max-height: none !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-submenu-link .smsmenu-icon--submenu.has-item-icon-layout .smsmenu-icon-img {
  max-width: var(--smsmenu-item-icon-size, var(--smsmenu-submenu-icon-size)) !important;
  max-height: var(--smsmenu-item-icon-size, var(--smsmenu-submenu-icon-size)) !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-item .smsmenu-icon--mobile.has-item-icon-layout svg {
  width: var(--smsmenu-item-icon-size, var(--smsmenu-mobile-item-icon-size)) !important;
  height: var(--smsmenu-item-icon-size, var(--smsmenu-mobile-item-icon-size)) !important;
  max-width: none !important;
  max-height: none !important;
}

.smsmenu-widget-wrap .smsmenu .smsmenu-mobile .smsmenu-mobile-item .smsmenu-icon--mobile.has-item-icon-layout .smsmenu-icon-img {
  max-width: var(--smsmenu-item-icon-size, var(--smsmenu-mobile-item-icon-size)) !important;
  max-height: var(--smsmenu-item-icon-size, var(--smsmenu-mobile-item-icon-size)) !important;
}

@media (prefers-reduced-motion: reduce) {
  .smsmenu .smsmenu-desktop-item {
    animation: none !important;
  }

  .smsmenu .smsmenu-card,
  .smsmenu .smsmenu-desktop-submenu,
  .smsmenu .smsmenu-submenu-link,
  .smsmenu .smsmenu-mobile-panel,
  .smsmenu .smsmenu-mobile-submenu,
  .smsmenu .smsmenu-mobile-item {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

.smsmenu.is-elementor-preview.smsmenu-preview-desktop .smsmenu-desktop {
  display: flex !important;
}

.smsmenu.is-elementor-preview.smsmenu-preview-desktop.has-desktop-layout-grid .smsmenu-desktop {
  display: grid !important;
}

.smsmenu.is-elementor-preview.smsmenu-preview-desktop .smsmenu-mobile {
  display: none !important;
}

/* Optional forced-open mode; normal editor mode keeps the public hover/click behaviour. */
.smsmenu.is-elementor-preview.smsmenu-preview-desktop.has-editor-nested-preview-all
  .smsmenu-desktop > .smsmenu-desktop-item.has-children > .smsmenu-desktop-submenu {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
}

.smsmenu.is-elementor-preview.smsmenu-preview-desktop.has-editor-nested-preview-all
  .smsmenu-submenu-item.has-children > .smsmenu-desktop-submenu--nested {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
}

.smsmenu.is-elementor-preview.smsmenu-preview-mobile .smsmenu-desktop {
  display: none !important;
}

.smsmenu.is-elementor-preview.smsmenu-preview-mobile .smsmenu-mobile {
  display: block !important;
}

.smsmenu.is-elementor-preview.smsmenu-preview-mobile .smsmenu-mobile-panel.is-open {
  height: auto !important;
  overflow: visible !important;
}

.smsmenu.is-elementor-preview.smsmenu-preview-mobile.has-editor-nested-preview-all
  .smsmenu-mobile-panel > .smsmenu-mobile-node > .smsmenu-mobile-submenu,
.smsmenu.is-elementor-preview.smsmenu-preview-mobile.has-editor-nested-preview-all
  .smsmenu-mobile-depth-1 > .smsmenu-mobile-submenu {
  height: auto !important;
  overflow: visible !important;
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
}

.smsmenu.is-elementor-preview.has-mobile-panel-fullscreen .smsmenu-mobile-panel {
  position: relative !important;
  inset: auto !important;
  z-index: 1 !important;
  max-height: none !important;
}

body.smsmenu-mobile-lock {
  overflow: hidden;
}

@media (max-width: 767px) {
  .smsmenu-desktop {
    display: none !important;
  }

  .smsmenu-mobile {
    display: block;
  }
}

@media (min-width: 768px) {
  .smsmenu-mobile {
    display: none !important;
  }
}

.smsmenu.is-elementor-preview.smsmenu-preview-mobile .smsmenu-desktop,
.elementor-editor-active .smsmenu.is-elementor-preview.smsmenu-preview-mobile .smsmenu-desktop,
.elementor-editor-preview .smsmenu.is-elementor-preview.smsmenu-preview-mobile .smsmenu-desktop {
  display: none !important;
}

.smsmenu.is-elementor-preview.smsmenu-preview-mobile .smsmenu-mobile,
.elementor-editor-active .smsmenu.is-elementor-preview.smsmenu-preview-mobile .smsmenu-mobile,
.elementor-editor-preview .smsmenu.is-elementor-preview.smsmenu-preview-mobile .smsmenu-mobile {
  display: block !important;
}

/* Per-voice overrides live on the control, never on its submenu container. */
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="bg"]{background-color:var(--smsmenu-single-bg) !important;}
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="bg"]{background-image:none !important;}
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="bg"]::before,.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="bg"]::after{display:none !important;}
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="hover_bg"]:hover,
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="hover_bg"]:focus-visible{background-color:var(--smsmenu-single-hover-bg) !important;}
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="text"],
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="text"] .smsmenu-title,
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="text"] .smsmenu-submenu-label,
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="text"] .smsmenu-chevron,
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="text"] .smsmenu-card-chevron,
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="text"] .smsmenu-submenu-chevron{color:var(--smsmenu-single-text) !important;}
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="hover_text"]:hover,
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="hover_text"]:hover .smsmenu-title,
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="hover_text"]:hover .smsmenu-submenu-label,
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="hover_text"]:focus-visible,
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="hover_text"]:focus-visible .smsmenu-title,
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="hover_text"]:focus-visible .smsmenu-submenu-label{color:var(--smsmenu-single-hover-text) !important;}
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="icon"] .smsmenu-icon{color:var(--smsmenu-single-icon) !important;}
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="icon"] .smsmenu-icon svg [fill]:not([fill="none"]){fill:var(--smsmenu-single-icon) !important;}
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="hover_icon"]:hover .smsmenu-icon,
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="hover_icon"]:focus-visible .smsmenu-icon{color:var(--smsmenu-single-hover-icon) !important;}
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="hover_icon"]:hover .smsmenu-icon svg [fill]:not([fill="none"]),.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-colors~="hover_icon"]:focus-visible .smsmenu-icon svg [fill]:not([fill="none"]){fill:var(--smsmenu-single-hover-icon) !important;}
.smsmenu-widget-wrap .smsmenu [data-smsmenu-colors][data-smsmenu-colors][data-smsmenu-white-image="1"] .smsmenu-icon-img{filter:brightness(0) invert(1) !important;}

