/* Desktop root */
.epamenu-root .js-menu-desktop,
.epamenu-root .main-menu__tree {
  display: inline-flex;
  flex: 0 0 auto;
  flex-wrap: nowrap;
  width: auto;
}

.epamenu-root .main-menu__tree > li.main-menu__tree__item {
  position: relative !important;
  flex: 0 0 auto;
  width: auto;
}

/* Desktop submenu */
.epamenu-root .main-menu__tree > li > .epamenu-submenu-container {
  position: absolute;
  top: 100%;
  left: 0;
  right: auto;
  z-index: 1050;
  display: none;
  width: 100%;
  min-width: max-content;
  max-width: min(92vw, 1200px);
  padding: 1rem 1.25rem;
  background: var(--header-bg);
  color: var(--header-color);
  border: 1px solid gray;
}

.epamenu-root .main-menu__tree > li:hover > .epamenu-submenu-container,
.epamenu-root .main-menu__tree > li:focus-within > .epamenu-submenu-container,
.epamenu-root .main-menu__tree > li > .epamenu-submenu-container.focusing {
  display: block;
}

.epamenu-root .epamenu-desktop-columns {
  display: grid;
  grid-auto-flow: var(--epamenu-grid-auto-flow, column);
  grid-auto-columns: max-content;
  gap: 2rem;
  align-items: start;
  margin: 0;
  padding: 0;
  list-style: none;
}

.epamenu-root .epamenu-desktop-columns > li {
  min-width: max-content;
}

.epamenu-root .epamenu-desktop-columns .dropdown-item,
.epamenu-root .epamenu-desktop-columns .epamenu-label-text {
  padding-left: 0;
  padding-right: 0;
  white-space: nowrap;
}

/* Labels */
.epamenu-root .epamenu-label-text,
.epamenu-root .epamenu-label-trigger {
  text-decoration: none;
}

.epamenu-root .epamenu-label-text {
  cursor: default;
}

.epamenu-root .epamenu-item-label > .main-menu__tree__link,
.epamenu-root .epamenu-item-label > .dropdown > .main-menu__tree__link,
.epamenu-root .epamenu-item-label > .dropdown > .epamenu-label-trigger,
.epamenu-root .epamenu-item-label > .epamenu-label-trigger {
  font-weight: 600;
}

.epamenu-root .epamenu-label-trigger {
  border: 0;
  background: transparent;
  color: inherit;
  padding: 1.5rem 1rem;
}

.epamenu-root .epamenu-desktop-columns .epamenu-label-trigger {
  padding: 0;
}

/* Mobile shell */
.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-nav {
  width: 100%;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-list > li {
  border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-link,
.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-label-text,
.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-toggle {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  text-decoration: none;
  white-space: normal;
  padding: 0.75rem 0.5rem;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-link[href] {
  cursor: pointer;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-label-text {
  cursor: default;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-row {
  display: flex;
  align-items: stretch;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-row--split {
  gap: 0;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-row .epamenu-mobile-accordion-link--title {
  width: auto;
  flex: 0 0 auto;
  justify-content: flex-start;
  padding-right: 0.5rem;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-link-title {
  display: inline-block;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-toggle--rest {
  flex: 1 1 auto;
  min-width: 3.25rem;
  justify-content: flex-end;
  padding-left: 0.5rem;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-toggle-hitarea {
  flex: 1 1 auto;
  min-height: 1px;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-panel {
  padding-left: 1rem;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-toggle[aria-expanded="true"] .material-icons {
  transform: rotate(180deg);
}

/* Touch / gesture */
.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-nav,
.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-list,
.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-row,
.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-link,
.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] .epamenu-mobile-accordion-toggle {
  touch-action: pan-y pinch-zoom;
}

body.epamenu-gesture-active {
  overscroll-behavior-x: contain;
}

html.epamenu-no-scroll,
body.epamenu-no-scroll {
  overflow: hidden;
  overscroll-behavior: none;
}

body.epamenu-no-scroll {
  touch-action: none;
}

body.epamenu-no-scroll .main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] {
  touch-action: pan-y pinch-zoom;
}

.main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] {
  --bs-offcanvas-width: min(var(--epamenu-mobile-width, 85vw), 100vw);
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .main-menu__offcanvas.js-menu-canvas[data-epamenu-mobile-id] {
    --bs-offcanvas-width: min(var(--epamenu-desktop-width, 560px), 100vw);
  }
}
