/* Native header: regular menu links follow global theme text settings on every page. */
#topHeader .sepahan-desktop-menu > li > a:not(#mega-menu-fire),
#topHeader .sepahan-desktop-menu > li > a:not(#mega-menu-fire) > span{
  color:var(--sepahan-text,#111827)!important;
  -webkit-text-fill-color:var(--sepahan-text,#111827)!important;
}
#topHeader .sepahan-desktop-menu > li:hover > a:not(#mega-menu-fire),
#topHeader .sepahan-desktop-menu > li > a:not(#mega-menu-fire):hover,
#topHeader .sepahan-desktop-menu > li.current-menu-item > a:not(#mega-menu-fire),
#topHeader .sepahan-desktop-menu > li.current-menu-ancestor > a:not(#mega-menu-fire){
  color:var(--sepahan-primary,#2563eb)!important;
  -webkit-text-fill-color:var(--sepahan-primary,#2563eb)!important;
}
#topHeader #mega-menu-fire,
#topHeader #mega-menu-fire > span{
  color:var(--sepahan-mega-text,var(--sepahan-text,#111827))!important;
  -webkit-text-fill-color:var(--sepahan-mega-text,var(--sepahan-text,#111827))!important;
}
#topHeader #mega-menu-fire:hover,
#topHeader #mega-menu-fire:hover > span{
  color:var(--sepahan-mega-hover,var(--sepahan-primary,#2563eb))!important;
  -webkit-text-fill-color:var(--sepahan-mega-hover,var(--sepahan-primary,#2563eb))!important;
}

/* Store Brands: retain Elementor responsive controls while using a tighter default gap. */
html body .sepahan-shop-brands-section .sepahan-shop-brands-list{
  gap:var(--sepahan-shop-brands-gap,8px)!important;
}
html body .sepahan-shop-brands-section .sepahan-shop-brand-item{
  flex:0 0 var(--sepahan-shop-brand-width,140px)!important;
  width:var(--sepahan-shop-brand-width,140px)!important;
  min-width:var(--sepahan-shop-brand-width,140px)!important;
  max-width:var(--sepahan-shop-brand-width,140px)!important;
}

/* Shared category shell. */
html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell{
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* Multi-row mode must remain multi-row at every breakpoint. */
html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-wrap{
  display:block!important;
  direction:rtl!important;
}
html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-wrap .sepahan-shop-cats-wrap{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(112px,1fr))!important;
  gap:12px!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
  padding:0!important;
  direction:rtl!important;
}
html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-wrap .sepahan-shop-cat{
  display:flex!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  flex:none!important;
  margin:0!important;
}

/* Horizontal mode: physical left arrow advances; physical right arrow returns. */
html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-scroll{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) 44px!important;
  align-items:center!important;
  gap:10px!important;
  direction:ltr!important;
}
html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-scroll .sepahan-shop-cats-scroll{
  position:relative!important;
  display:flex!important;
  flex-flow:row nowrap!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:2px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  direction:rtl!important;
  scroll-behavior:auto!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  overscroll-behavior-inline:contain!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-x pan-y!important;
  cursor:grab!important;
}
html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-scroll .sepahan-shop-cats-scroll::-webkit-scrollbar{
  display:none!important;
  width:0!important;
  height:0!important;
}
html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-scroll .sepahan-shop-cat{
  direction:rtl!important;
  flex:0 0 128px!important;
  width:128px!important;
  min-width:128px!important;
  max-width:128px!important;
  margin:0!important;
  scroll-snap-align:start!important;
  scroll-snap-stop:always!important;
  user-select:none!important;
}
html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-scroll .sepahan-shop-cats-dragging{
  cursor:grabbing!important;
  scroll-behavior:auto!important;
  scroll-snap-type:none!important;
}
html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-scroll .sepahan-shop-cats-nav{
  position:relative!important;
  z-index:20!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  padding:0!important;
  direction:ltr!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}
html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-scroll .sepahan-shop-cats-nav:disabled{
  opacity:.35!important;
  cursor:default!important;
}

@media(max-width:767px){
  html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-scroll{
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
  }
  html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-scroll .sepahan-shop-cats-nav{
    display:none!important;
  }
  html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-scroll .sepahan-shop-cat{
    flex-basis:110px!important;
    width:110px!important;
    min-width:110px!important;
    max-width:110px!important;
  }
  html body main#primary.sepahan-shop-page .sepahan-shop-cats-shell-wrap .sepahan-shop-cats-wrap{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
}
