/*Vertical menu*/
.dt-product-categories {
  #the7-body & {
    list-style: none;
    margin: 0;
  }
  #the7-body .collapsible & {
    margin-top: 10px;
  }
}
.elementor-popup-modal .dt-product-categories .children {
    margin: 0;
}
.dt-product-categories .cat-item ul, .dt-product-categories .custom-categories ul {
  margin-left: 0;
}
.elementor-widget-the7_nav-menu .elementor-widget-container {
  overflow: hidden;
}
.dt-product-categories {
  --icon-size: 1em;
  --icon-spacing: 5px;
  & li {
    list-style: none;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    width: 100%;
  }
  transition: opacity 0.5s ease;
}
.dt-product-categories li {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  width: 100%;
  list-style: none;
  margin: 0;
  padding: 0;
}
.widget-divider-yes .dt-product-categories li:first-child:before,
.widget-divider-yes .dt-product-categories li:after,
.sub-widget-divider-yes .dt-product-categories li:first-child:before,
.sub-widget-divider-yes .dt-product-categories li:after {
    content: "";
    position: absolute;
    bottom: calc((var(--grid-row-gap, 0px) - var(--divider-width, 0px))/ 2);
    left: 0;
    width: 100%;
    border-top-width: var(--divider-width, 0px);
    border-bottom-width: var(--divider-width, 0px);
    border-color: var(--the7-divider-color);
}
.widget-divider-yes .dt-product-categories > li:first-child:before {
  bottom: calc(100% - var(--divider-width, 0px));
}
.widget-divider-yes .dt-product-categories li:last-child:after {
    bottom: calc(-1 * var(--divider-width, 0px) / 2);
}
.widget-divider-yes .dt-product-categories--main:not(.last-item-border-hide) {
  padding-bottom: calc( var(--divider-width, 0px) / 2)
}
.sub-widget-divider-yes .children li:first-child:before,
.sub-widget-divider-yes .children li:after {
    bottom: calc((var(--sub-grid-row-gap, 0px) - var(--divider-sub-width, 0px)) / 2);
    left: 0;
    width: 100%;
    border-top-width: var(--divider-sub-width, 0px);
    border-bottom-width: var(--divider-sub-width, 0px);
    border-color: var(--the7-divider-color);
}
.sub-widget-divider-yes .children li:last-child:after {
    bottom: calc(-1 * var(--divider-sub-width, 0px) / 2);
}
.sub-widget-divider-yes .children > li:first-child:before {
  bottom: calc(100% - var(--divider-sub-width, 0px));
}

.dt-product-categories a {
  position: relative;
  display: flex;
  flex-flow: row nowrap;
  .dt-sub-menu-display-on_click& {
    display: grid;
  }
  width: 100%;
  transition: all 0.3s;
  border: 0 solid;
  line-height: 1.2;
  &.not-clickable-item {
    cursor: pointer;
  }

}
.dt-product-categories > li > a {
  
  font: var(--the7-widget-content-font);
  color: var(--the7-title-color);
  border-color: var(--the7-divider-color);
  justify-content: var(--justify-count);
  .dt-sub-menu-display-on_click& {
    grid-template-columns: auto;
    grid-template-areas: " item";
  }

  .dt-sub-menu-display-on_click.dt-icon-align-side& {
    grid-template-columns: auto 1fr auto;
    grid-template-areas: " item empty indicator ";
  }
  .dt-product-categories_align-center .dt-sub-menu-display-on_click.dt-icon-align-side& {
    grid-template-columns: calc(var(--icon-size) + var(--icon-spacing)) 1fr  calc(var(--icon-size) + var(--icon-spacing));
    grid-template-areas: "empty item indicator ";
  }
  .dt-product-categories_align-right .dt-sub-menu-display-on_click.dt-icon-align-side& {
    grid-template-areas: " item indicator ";
    grid-template-columns: auto auto;
    justify-content: flex-end;
  }

  .category-count-align-left .dt-sub-menu-display-on_click.dt-icon-align-side& {
    grid-template-columns: auto auto 1fr auto;
    grid-template-areas: " item count empty indicator ";
  }
  .category-count-align-right .dt-sub-menu-display-on_click.dt-icon-align-side& {
    grid-template-columns: 1fr auto calc(var(--icon-size) + var(--icon-spacing));
    grid-template-areas: " item count indicator ";
  }
  .dt-sub-menu-display-on_click.dt-icon-align-with_text& {
    grid-template-areas: " item count indicator ";
    grid-template-columns: auto auto calc(var(--icon-size) + var(--icon-spacing));
  }
  .dt-product-categories_align-center.category-count-align-right .dt-sub-menu-display-on_click.dt-icon-align-side& {
    grid-template-columns: calc(var(--icon-size) + var(--icon-spacing)) 1fr auto calc(var(--icon-size) + var(--icon-spacing));
    grid-template-areas: "empty item count indicator ";
  }
  .dt-product-categories_align-right.category-count-align-left .dt-sub-menu-display-on_click.dt-icon-align-side& {
    grid-template-areas: " item count indicator ";
    grid-template-columns: auto auto auto;
    justify-content: flex-end;
  }
  .dt-product-categories_align-center.category-count-align-left .dt-sub-menu-display-on_click.dt-icon-align-side& {
    grid-template-columns: 1fr auto auto 1fr;
    grid-template-areas: "empty item count indicator ";
    & .next-level-button {
      justify-self: flex-end;
    }
  }
}
.children {
  --sub-icon-size: 1em;
  --sub-icon-spacing: 5px;
  & > li a {
    
    font: var(--the7-widget-content-font);
    color: var(--the7-title-color);
    border-color: var(--the7-divider-color);
    justify-content: var(--justify-count);
    .dt-sub-menu-display-on_click & {
      grid-template-columns: auto;
      grid-template-areas: " item";
    }

    .dt-sub-menu-display-on_click.dt-sub-icon-align-side & {
      grid-template-columns: auto 1fr auto;
      grid-template-areas: " item empty indicator ";
    }
    .dt-sub-category_align-center .dt-sub-menu-display-on_click.dt-sub-icon-align-side & {
      grid-template-columns: calc(var(--icon-size) + var(--icon-spacing)) 1fr  calc(var(--icon-size) + var(--icon-spacing));
      grid-template-areas: "empty item indicator ";
    }
    .dt-sub-category_align-right .dt-sub-menu-display-on_click.dt-sub-icon-align-side & {
      grid-template-areas: " item indicator ";
      grid-template-columns: auto auto;
      justify-content: flex-end;
    }


    .dt-sub-menu-display-on_click.dt-sub-icon-align-with_text & {
      grid-template-areas: " item count indicator ";
      grid-template-columns: auto auto calc(var(--sub-icon-size) + var(--sub-icon-spacing));
    }
    .dt-sub-menu-display-on_click.dt-sub-icon-align-side & {
      grid-template-columns: auto auto 1fr auto;
      grid-template-areas: " item count empty indicator ";
    }
    .sub-category-count-align-right .dt-sub-menu-display-on_click.dt-sub-icon-align-side & {
      grid-template-columns: 1fr auto calc(var(--sub-icon-size) + var(--sub-icon-spacing)) ;
      grid-template-areas: " item count indicator ";
    }
    .dt-sub-category_align-center.sub-category-count-align-right .dt-sub-menu-display-on_click.dt-sub-icon-align-side & {
      grid-template-columns: calc(var(--sub-icon-size) + var(--sub-icon-spacing)) 1fr auto calc(var(--sub-icon-size) + var(--sub-icon-spacing));
      grid-template-areas: "empty item count indicator ";
    }
    .dt-sub-category_align-right.sub-category-count-align-left .dt-sub-menu-display-on_click.dt-sub-icon-align-side & {
      grid-template-areas: " item count indicator ";
      grid-template-columns: auto auto auto;
      justify-content: flex-end;
    }
    .dt-sub-category_align-center.sub-category-count-align-left .dt-sub-menu-display-on_click.dt-sub-icon-align-side & {
      grid-template-columns: 1fr auto auto 1fr;
      grid-template-areas: "empty item count indicator ";
      & .next-level-button {
        justify-self: flex-end;
      }
    }
  }
  transition: opacity 0.5s;
}


.dt-product-categories li .item-content {
  display: flex;
  align-items: center;
  order: 1;
  grid-area: item;
  
}
.category-count-align-right .dt-product-categories > li > a .item-content,
.sub-category-count-align-right .children .item-content {
    width: 100%;
}

.dt-product-categories li .count {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  order: 1;
  grid-area: count;
  text-align: center;
  padding: 1px 2px;
  margin-left: 5px;
  min-width: 15px;
  font-size: 10px;
  line-height: 1.2em;
  border-radius: 0;
  background-color: var(--the7-content-boxes-bg);
  border-width: 0;
  border-color: var(--the7-divider-color);
  color: var(--the7-secondary-text-color);
  transition: all 0.3s;
}

.dt-product-categories li .next-level-button {
  order: 2;
  width: 1em;
  justify-self: var(--justify-self);
  grid-area: indicator;
}
.item-content-wrap {
  display: inline-flex;
}

.content ul.children {
  margin: 0;
}


.dt-product-categories li > .mega-menu-img-top .item-content,
.dt-product-categories li > .mega-menu-img-top_align_left .item-content,
.dt-product-categories li > .mega-menu-img-right_top .item-content,
.dt-product-categories li > .mega-menu-img-left_top .item-content {
  -ms-flex-flow: column wrap;
  flex-flow: column wrap;
}


.dt-product-categories a:not(.mega-menu-img-top):not(.mega-menu-img-top_align_left):not(.mega-menu-img-right_top):not(.mega-menu-img-left_top) {
  align-items: inherit;
}


.dt-product-categories__align-center ul li,
.dt-product-categories__align-center ul li a,
.dt-product-categories__align-center ul li a > .item-content {
  justify-content: inherit;
  align-items: inherit;
  text-align: inherit;
}

#page .dt-product-categories__align-right ul li,
#page .dt-product-categories__align-right ul li a {
  justify-content: inherit;
}

.dt-product-categories__align-left li > a.mega-menu-img-top_align_left .item-content,
.dt-product-categories__align-left li > a.mega-menu-img-top .item-content,
.dt-product-categories__align-left li > a.mega-menu-img-right_top .item-content,
.dt-product-categories__align-left li > a.mega-menu-img-left_top .item-content {
  align-items: inherit;
}

.dt-product-categories__align-right .dt-product-categories li:not(.dt-mega-parent) > a.mega-menu-img-top .item-content,
.dt-product-categories__align-right .dt-product-categories li:not(.dt-mega-parent) > a.mega-menu-img-top_align_left .item-content,
.dt-product-categories__align-right .dt-product-categories li:not(.dt-mega-parent) > a.mega-menu-img-right_top .item-content,
.dt-product-categories__align-right .dt-product-categories li:not(.dt-mega-parent) > a.mega-menu-img-left_top .item-content {
  align-items: inherit;
  text-align: right;
}

.dt-product-categories__align-right .dt-product-categories li:not(.dt-mega-parent) > .mega-menu-img-right .item-content {
  text-align: right;
}

.dt-product-categories a:not(.mega-menu-img-top):not(.mega-menu-img-top_align_left):not(.mega-menu-img-right_top):not(.mega-menu-img-left_top) {
  align-items: center;
}
.dt-sub-menu-display-on_click {
  visibility: hidden;
}
.dt-sub-menu-display-on_click.dt-product-categories li {
  & > .children {
    display: none;
  }
  &.current-cat-parent > .children {
    display: block;
  }
}

.dt-product-categories li > .children {
  width: 100%;
}
.dt-sub-menu-display-on_click.indicator-off .next-level-button,
.dt-sub-menu-display-always li:not(.current-cat):not(.current-cat-parent) > .children,
.elementor-widget-the7_product-categories:not(.closed) .filter-toggle-icon .filter-toggle-closed,
.elementor-widget-the7_product-categories.closed .filter-toggle-icon .filter-toggle-active {
  display: none;
}
.dt-sub-menu-display-on_click li .next-level-button {
  visibility: hidden;
  pointer-events: none;
}
.dt-product-categories .has-children > a .next-level-button {
  position: relative;
  align-self: center;
  justify-content: flex-end;
  visibility: visible;
  pointer-events: auto;
  line-height: 1.2;
  text-align: center;
 
  &:after {
    position: absolute;
    content: "";
    min-width: 50px;
    min-height: 30px;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    cursor: pointer;
    transform: translate3d(-50%,-50%,0);
  }
}
.dt-product-categories .has-children > a .next-level-button i {
  width: 1em;
}
.dt-product-categories li > a .next-level-button svg {
  width: 1em;
  height: auto;
  fill: var(--the7-title-color);
}
.dt-product-categories li.has-children > a .next-level-button {
  & > :nth-child(1) {
    visibility: visible;
    opacity: 1;
  }
  & > :nth-child(2) {
    position: absolute;
    visibility: hidden;
    opacity: 0;
  }
}
.dt-product-categories li.has-children.open-sub > a .next-level-button {
  & > :nth-child(1) {
    visibility: hidden;
    opacity: 0;
  }
  & > :nth-child(2) {
    visibility: visible;
    opacity: 1;
  }
}


.dt-product-categories .next-level-button {
  display: none;
  margin-left: 5px;
  order: 2;
  .dt-sub-menu-display-on_click& {
    display: flex;
  }
}

.dt-product-categories .subtitle-text {
  font-size: 70%;
}
.the7-product-categories .filter-header {
  justify-content: space-between;
}
.the7-product-categories .filter-header {
  margin-bottom: 0;
}
.the7-product-categories .filter-header,
.the7-product-categories .filter-header .filter-toggle-icon{
  display: flex;
  align-items: center;
}

.the7-product-categories .filter-header .filter-toggle-icon .elementor-icon {
  color: var(--the7-h1-color);
}
.the7-product-categories .elementor-icon svg,
.the7-product-categories .elementor-icon i,
.the7-product-categories .filter-title {
    transition: all 0.3s ease, font-size 0s ease;
}
.the7-product-categories.collapsible .filter-header {
    cursor: pointer;
    margin: 0;
}