/* HKW Persian RTL overrides — keep class names; mirror layout only */
html[dir="rtl"],
html.lang_fa {
  direction: rtl;
  text-align: right;
}

html[dir="rtl"] body,
html.lang_fa body {
  font-family: "Vazirmatn", "Poppins", "Roboto", Tahoma, Arial, sans-serif;
}

html[dir="rtl"] .header__logo {
  margin-left: 0;
}

html[dir="rtl"] .navs > li {
  float: right;
}

html[dir="rtl"] .submenu,
html[dir="rtl"] .m-nav .ul,
html[dir="rtl"] .menu-column,
html[dir="rtl"] ._fLinks,
html[dir="rtl"] .inright {
  text-align: right;
}

html[dir="rtl"] .header__search .input input,
html[dir="rtl"] input,
html[dir="rtl"] textarea,
html[dir="rtl"] select,
html[dir="rtl"] .layui-form-label,
html[dir="rtl"] .form-label,
html[dir="rtl"] label {
  text-align: right;
}
html[dir="rtl"] .swiper-banner ._bg::before{
  background:linear-gradient(91.88deg, rgba(16, 16, 16, 0) 0%, rgba(16, 16, 16, 1) 100%);
}

html[dir="rtl"] .footer-menu-columns {
  direction: rtl;
}

html[dir="rtl"] .banner-text,
html[dir="rtl"] .heading-text,
html[dir="rtl"] .indexTitle1,
html[dir="rtl"] .about-desc,
html[dir="rtl"] .business-name,
html[dir="rtl"] .business-tags,
html[dir="rtl"] .news-title,
html[dir="rtl"] .news-desc,
html[dir="rtl"] .consult ._title {
  text-align: right;
}

html[dir="rtl"] .business-tags,
html[dir="rtl"] .card-badge-text {
  direction: rtl;
}

/* ========== CTA buttons ========== */
/* Keep whole control LTR so hover icon slide (left:-100% -> 0) works.
   row-reverse puts circle on the left for RTL reading order. */
html[dir="rtl"] ._moreBtn {
  direction: ltr !important;
  flex-direction: row-reverse !important;
  padding: 0 0.2rem 0 0.1rem;
}

html[dir="rtl"] ._moreBtn span {
  text-align: right;
  flex: 1 1 auto;
  min-width: 0;
}

html[dir="rtl"] ._moreBtn ._btn {
  direction: ltr !important;
  margin-left: 0 !important;
  margin-right: 0.12rem !important;
  flex: 0 0 36px !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  overflow: hidden !important;
  position: relative;
}

html[dir="rtl"] ._moreBtn ._btn::after {
  transform-origin: center center;
}

html[dir="rtl"] ._moreBtn ._btn div {
  direction: ltr !important;
  flex-direction: row !important;
  left: -100%;
}

html[dir="rtl"] ._moreBtn ._btn .p1,
html[dir="rtl"] ._moreBtn ._btn .p2,
html[dir="rtl"] ._moreBtn ._btn .p1 i,
html[dir="rtl"] ._moreBtn ._btn .p2 i {
  /* never scaleX — conflicts with rotate hover */
  transform: none;
}

html[dir="rtl"] ._moreBtn ._btn div .p1 i,
html[dir="rtl"] ._moreBtn ._btn div .p2 i {
  transform: rotate(-45deg);
}

html[dir="rtl"] ._moreBtn:hover ._btn div {
  left: 0 !important;
}

html[dir="rtl"] ._moreBtn:hover ._btn div .p1 i {
  color: #fff !important;
  transform: rotate(0deg) !important;
}

html[dir="rtl"] ._moreBtn.style2:hover ._btn div .p1 i,
html[dir="rtl"] ._moreBtn.style4:hover ._btn div .p1 i {
  color: var(--bg-color01) !important;
  transform: rotate(0deg) !important;
}

html[dir="rtl"] ._moreBtn.style3:hover ._btn div .p1 i {
  color: #fff !important;
  transform: rotate(0deg) !important;
}

html[dir="rtl"] ._moreBtn:hover ._btn div .p2 i {
  color: transparent !important;
}

html[dir="rtl"] ._moreBtn:hover ._btn::after {
  transform: scale(1.2);
}

/* ========== Service map: keep geography LTR; move map to left (text is on right) ========== */
html[dir="rtl"] .service .bg,
html[dir="rtl"] .service .bg .map,
html[dir="rtl"] .service .bg .map .txt,
html[dir="rtl"] .service .bg .map .txt .step {
  direction: ltr !important;
}

html[dir="rtl"] .service .bg .map {
  right: auto !important;
  left: -0.94rem !important;
}

html[dir="rtl"] .service-content {
  /* text/buttons stay on the inline-start side in RTL (= right) */
  text-align: right;
}

/* Partner logo strip: keep LTR marquee engine (float/transform math) */
html[dir="rtl"] .partnerList,
html[dir="rtl"] .partnerline,
html[dir="rtl"] .partnerline ul {
  direction: ltr !important;
}

html[dir="rtl"] .partnerline ul {
  display: block;
}

html[dir="rtl"] .partnerline ul li {
  float: left !important;
}

html[dir="rtl"] .service-content ._btns {
  align-items: flex-start; /* under rtl column cross-axis: toward the right */
}

html[dir="rtl"] ._mapNum {
  right: auto;
  left: 1.94rem;
}

/* On small screens map is position:relative — don't force absolute left offset */
@media screen and (max-width: 1024px) {
  html[dir="rtl"] .service .bg .map {
    left: auto !important;
    right: auto !important;
  }
  html[dir="rtl"] ._mapNum {
    left: auto;
    right: .3rem;
  }
  html[dir="rtl"] ._moreBtn ._btn,html[dir="rtl"] ._moreBtn ._btn div p{
    width: 24px!important;
    height: 24px!important;
    min-width: 24px !important;
    max-width: 24px !important;
  }
  html[dir="rtl"] .business-grid .business-name{
    padding-right: 0;
  }
  html[dir="rtl"] .business-card > .card-badge.card-badge-text{
    position: relative;
    bottom: auto;
    right: auto;
  }
}

/* ========== Homepage banner: keep media engine LTR ========== */
html[dir="rtl"] .banner,
html[dir="rtl"] .banner .swiper-banner,
html[dir="rtl"] .swiper-banner,
html[dir="rtl"] .swiper-banner .swiper-wrapper {
  direction: ltr !important;
}

html[dir="rtl"] .banner {
  min-height: 70vh;
}

html[dir="rtl"] .swiper-banner,
html[dir="rtl"] .swiper-banner .swiper-wrapper,
html[dir="rtl"] .swiper-banner .swiper-slide {
  height: 100% !important;
  min-height: 70vh;
}

/* Do NOT force slide opacity — Swiper fade animates opacity on .swiper-slide */
html[dir="rtl"] .swiper-banner .swiper-slide {
  background: transparent !important;
}

html[dir="rtl"] .swiper-banner ._bg {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 0 !important;
  visibility: visible !important;
}

html[dir="rtl"] .swiper-banner ._bg > img,
html[dir="rtl"] .swiper-banner ._bg > video,
html[dir="rtl"] .swiper-banner video.videos {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
}

html[dir="rtl"] .swiper-banner ._bg > .banner-video-fallback {
  z-index: 0;
}

html[dir="rtl"] .swiper-banner ._bg > video.videos {
  /*z-index: 1;*/
  /*background: transparent;*/
}

html[dir="rtl"] .pagination-box {
  z-index: 6 !important;
  justify-content: flex-start !important;
  padding-left: .4rem;
  padding-right: 0;
}

html[dir="rtl"] .swiper-banner .banner-text {
  direction: rtl !important;
  text-align: right;
  z-index: 3 !important;
}

html[dir="rtl"] .swiper-banner .heading-text {
  direction: rtl !important;
  text-align: right;
}

html[dir="rtl"] .pagination-box,
html[dir="rtl"] .Hbanner_prev,
html[dir="rtl"] .Hbanner_next {
  /*direction: ltr;*/
  transform: none !important;
  left: auto;
  z-index: 5;
}

html[dir="rtl"] .backTop {
  /*right: 20px;*/
}

html[dir="rtl"] .ignore,
html[dir="rtl"] .notranslate,
html[dir="rtl"] .lang-current {
  direction: ltr;
  unicode-bidi: isolate;
}

@media (max-width: 768px) {
  html[dir="rtl"] .m-nav {
    text-align: right;
  }
  html[dir="rtl"] .banner,
  html[dir="rtl"] .swiper-banner,
  html[dir="rtl"] .swiper-banner .swiper-slide {
    min-height: 56vh;
  }
}
html[dir="rtl"] .consult ._cont ._title{
    text-align: center;
}
html[dir="rtl"] .service .bg .map > img,
html[dir="rtl"] .service .bg .map .txtImg {
  transform: none !important;
  direction: ltr;
}

html[dir="rtl"] .links-grid .business-name{
  padding-right: 1.3rem;
}

html[dir="rtl"] .continent-name{
  padding-right: 12px;
  border-left: none;
  border-right: 5px solid #4472c4;
}
html[dir="rtl"] .partner-info svg{
  margin-left: 8px;
  margin-right: 0;
}
html[dir="rtl"] .contact-btn{
  left: 24px;
  right: auto;
}
html[dir="rtl"] ._proIntroBox ._item ._list p::before{
  left: auto;
  right: 0;
}
html[dir="rtl"] .footer ._fMedia ._item:last-of-type{
  margin-right: .2rem;
}
html[dir="rtl"] .footer-menu-columns .menu-title::after{
  left: auto;
  right: 0;
}
html[dir="rtl"] .product-list .business-name,html[dir="rtl"] .proChage-grid > .business-card > .business-name{
  padding-left: 1.2rem;
  padding-right: 0;
}
html[dir="rtl"] .business-name .card-badge.card-badge-text{
  right: auto;
  left: 0;
}
html[dir="rtl"] .business-grid .business-name{
  padding-left: 1.3rem;
  padding-right: 0;
}
html[dir="rtl"] .page-productChange .indexTitle1{
  text-align: center;
}
html[dir="rtl"] .page-productChange .product-list .business-name{
  padding-right: 0;
}
html[dir="rtl"] .page-productChange .bearing-list ._proFeats ._featLabel{
  margin-left: .06rem;
  margin-right: 0;
}
html[dir="rtl"] .product-list ._proDesc{
  padding-left: 0.6rem;
  padding-right: 0;
}
html[dir="rtl"] .proChage-grid ._proDesc{
  padding-left: 0.6rem;
  padding-right: 0;
}
html[dir="rtl"] .business-card > .card-badge.card-badge-text{
  right: auto;
  left: 0;
}
