/* Small—Bright Solutions — Arabic (right-to-left) layer, loaded only on /ar/ pages */
:root[dir="rtl"] {
  --sans: "IBM Plex Sans Arabic", "Inter Tight", "Helvetica Neue", Arial, sans-serif;
  --serif: "Amiri", "Instrument Serif", serif;          /* expressive accent, replaces the italic serif */
  --mono: "IBM Plex Sans Arabic", "JetBrains Mono", monospace;
}

/* Arabic letters join, so tracking must stay at zero; uppercase has no meaning */
:root[dir="rtl"] body, :root[dir="rtl"] body * { letter-spacing: 0 !important; }
:root[dir="rtl"] .label { text-transform: none; font-size: .8rem; font-weight: 500; }

/* Accent words: calligraphic Naskh instead of italic (Arabic has no true italic) */
:root[dir="rtl"] em, :root[dir="rtl"] .serif { font-style: normal; font-weight: 700; }
:root[dir="rtl"] .wordmark em { font-weight: 400; }

/* Arabic dots and marks sit above and below the letters: give every line enough room
   so they never touch the line above or below */
:root[dir="rtl"] body { line-height: 1.9; }
:root[dir="rtl"] h1, :root[dir="rtl"] h2, :root[dir="rtl"] h3, :root[dir="rtl"] h4 { line-height: 1.45; }
:root[dir="rtl"] .hero h1, :root[dir="rtl"] .beam-hero h1, :root[dir="rtl"] .contact h2 { line-height: 1.38; }
:root[dir="rtl"] .manifesto, :root[dir="rtl"] .sectors, :root[dir="rtl"] .quote, :root[dir="rtl"] .cap-hook { line-height: 1.65 !important; }
:root[dir="rtl"] .lede, :root[dir="rtl"] .cap-body, :root[dir="rtl"] .head p { line-height: 1.95; }
:root[dir="rtl"] .price, :root[dir="rtl"] .cap-stats strong, :root[dir="rtl"] .beam-facts strong,
:root[dir="rtl"] .summary .total strong, :root[dir="rtl"] .phase .num { line-height: 1.4; }
:root[dir="rtl"] .label { line-height: 1.7; }
:root[dir="rtl"] .faq summary { line-height: 1.6; }
:root[dir="rtl"] .giant { line-height: .9; }
/* Highlight bar sits below the dots instead of over them */
:root[dir="rtl"] .hl::after { bottom: -.12em; height: .16em; }

/* Mirror direction-dependent details */
:root[dir="rtl"] .hl::after { transform-origin: right; }
:root[dir="rtl"] .btn:hover .arr { transform: translate(-3px, -3px); }
:root[dir="rtl"] .field select { background-position: left 4px center; }
:root[dir="rtl"] .marquee { direction: ltr; }
:root[dir="rtl"] .marquee span { direction: rtl; }
:root[dir="rtl"] .cap li:hover .go { transform: rotate(45deg); }

/* Brand stays in Latin script */
:root[dir="rtl"] .wordmark, :root[dir="rtl"] .giant { font-family: "Inter Tight", "Helvetica Neue", Arial, sans-serif; direction: ltr; unicode-bidi: isolate; }
:root[dir="rtl"] .wordmark em, :root[dir="rtl"] .giant em { font-family: "Instrument Serif", serif; font-style: italic; }
:root[dir="rtl"] .ltr { direction: ltr; unicode-bidi: isolate; display: inline-block; }
:root[dir="rtl"] .wordmark { letter-spacing: -0.04em !important; white-space: nowrap; }
:root[dir="rtl"] .giant { letter-spacing: -0.07em !important; }
:root[dir="rtl"] .wordmark em, :root[dir="rtl"] .giant em { letter-spacing: -0.03em !important; }

