/* ============================================================
   ARABIC (right-to-left). Loaded only when the page language
   is right-to-left. Mirrors positioned elements and switches to
   Arabic fonts. Arabic letters must join, so letter-spacing and
   upper-casing are removed for Arabic text.
   ============================================================ */
:root{
  --serif: 'Amiri', 'Playfair Display', serif;
  --sans:  'IBM Plex Sans Arabic', 'DM Sans', sans-serif;
}
html[dir="rtl"] body *{ letter-spacing:0 !important; text-transform:none !important; }
/* the Latin brand mark keeps its spacing */
html[dir="rtl"] .nav .brand .word, html[dir="rtl"] .nav .brand .tag, html[dir="rtl"] .footer .f-brand{ letter-spacing:0.2em !important; text-transform:uppercase !important; }
html[dir="rtl"] .nav .brand .tag{ letter-spacing:0.12em !important; }
/* Arabic reads a little small at the same size */
html[dir="rtl"] body{ font-size:106%; }

/* mirrored positions */
.hero-left .ghost{ right:auto; left:-1rem; }
.hero-right .caption{ right:auto; left:2.5rem; }
.sector-num.left{ left:auto; right:2.5rem; }
.sector-num.right{ right:auto; left:2.5rem; }
.cat-mast-img .caption{ left:auto; right:4rem; }
.slides-ui{ left:auto; right:1.25rem; }
.slides-dots{ margin-left:0; margin-right:0.5rem; }
.slides-ui button{ transform:scaleX(-1); }
.nav-dd-menu, .nav .links ul.sub-menu{ left:auto; right:-1.25rem; }
.footer-bar .legal a{ margin-left:0; margin-right:1.75rem; }
.cat-more-item .arr{ display:inline-block; transform:scaleX(-1); }
.cat-rows li{ grid-template-columns:4.5rem minmax(0,1fr); }
.ident-rows dt{ font-size:0.75rem; }

@media (max-width:1100px){
  .cat-mast-img .caption{ right:1.75rem; left:auto; }
  .footer-bar .legal a{ margin:0 0 0 1.25rem; }
}
.partner-grid .pg-line{ transform-origin:right; }
.partner-grid .cell:hover .pg-num, .partner-grid .cell.is-lit .pg-num{ transform:translateX(-4px); }
.partner-grid .pg-label{ letter-spacing:0 !important; }
