/* ─── Global RTL (Right-to-Left) ─── */
html[dir="rtl"],
html[dir="rtl"] body {
    direction: rtl;
    text-align: right;
    text-rendering: optimizeLegibility;
}

/* Arabic glyphs need extra vertical space — avoid clipping dots on ث، ف، ق، etc. */
html[dir="rtl"] h1,
html[dir="rtl"] h2,
html[dir="rtl"] h3,
html[dir="rtl"] h4,
html[dir="rtl"] h5,
html[dir="rtl"] h6,
html[dir="rtl"] .section-heading,
html[dir="rtl"] .hero-main-title,
html[dir="rtl"] .services-heading,
html[dir="rtl"] .units-heading,
html[dir="rtl"] .why-heading,
html[dir="rtl"] .clients-heading,
html[dir="rtl"] .service-tile h4,
html[dir="rtl"] .unit-card h3,
html[dir="rtl"] .why-card h3,
html[dir="rtl"] .about-trio-card h3,
html[dir="rtl"] .btn-primary-rp,
html[dir="rtl"] .btn-ghost-rp,
html[dir="rtl"] .btn-outline-rp,
html[dir="rtl"] .mobile-link,
html[dir="rtl"] .nav-links a {
    direction: rtl;
    line-height: 1.45;
    letter-spacing: 0;
}

html[dir="rtl"] .marquee-strip,
html[dir="rtl"] .marquee-track,
html[dir="rtl"] .marquee-set {
    direction: ltr;
    unicode-bidi: isolate;
}

html[dir="rtl"] .marquee-track {
    animation-name: marqueeScroll;
}

html[dir="rtl"] .marquee-item {
    direction: rtl;
    unicode-bidi: plaintext;
    line-height: 1.45;
    letter-spacing: 0;
}

html[dir="rtl"] .clients-marquee,
html[dir="rtl"] .clients-marquee-track,
html[dir="rtl"] .clients-marquee-set {
    direction: ltr;
    unicode-bidi: isolate;
}

html[dir="rtl"] .clients-marquee-track {
    animation-name: clientsMarqueeScroll;
}

html[dir="rtl"] .hero-carousel-bar {
    left: 0;
    right: 0;
    width: 100%;
    transform: none;
    justify-content: center;
}

html[dir="rtl"] .hero-carousel-ui,
html[dir="rtl"] .hero-carousel-nav {
    direction: ltr;
}

html[dir="rtl"] .hero-counter {
    direction: ltr;
    unicode-bidi: isolate;
}

html[dir="rtl"] *,
html[dir="rtl"] *::before,
html[dir="rtl"] *::after {
    /* Ensure flex/grid children inherit RTL flow unless isolated */
}

html[dir="rtl"] .row,
html[dir="rtl"] .container,
html[dir="rtl"] .container-fluid,
html[dir="rtl"] .container-wide,
html[dir="rtl"] .container-narrow,
html[dir="rtl"] main,
html[dir="rtl"] section,
html[dir="rtl"] nav,
html[dir="rtl"] header,
html[dir="rtl"] footer,
html[dir="rtl"] aside,
html[dir="rtl"] .admin-main,
html[dir="rtl"] .admin-content,
html[dir="rtl"] .admin-card,
html[dir="rtl"] .admin-card-body,
html[dir="rtl"] .admin-card-header {
    direction: rtl;
}

/* Forms */
html[dir="rtl"] input:not([type="checkbox"]):not([type="radio"]),
html[dir="rtl"] textarea,
html[dir="rtl"] select,
html[dir="rtl"] .form-control,
html[dir="rtl"] .form-field,
html[dir="rtl"] .form-select {
    direction: rtl;
    text-align: right;
}

html[dir="rtl"] .form-label {
    text-align: right;
    display: block;
    width: 100%;
}

html[dir="rtl"] .form-check {
    padding-right: 1.75em;
    padding-left: 0;
    text-align: right;
    min-height: 1.5rem;
}

html[dir="rtl"] .form-check .form-check-input {
    float: right;
    margin-right: -1.75em;
    margin-left: 0;
}

/* Tables */
html[dir="rtl"] .table,
html[dir="rtl"] .table th,
html[dir="rtl"] .table td,
html[dir="rtl"] .table-admin th,
html[dir="rtl"] .table-admin td {
    direction: rtl;
    text-align: right;
}

html[dir="rtl"] .table td.text-nowrap,
html[dir="rtl"] .table-admin td.text-nowrap {
    text-align: right;
}

/* Alerts & lists */
html[dir="rtl"] .alert {
    text-align: right;
}

html[dir="rtl"] .alert ul {
    padding-right: 1.25rem;
    padding-left: 0;
}

html[dir="rtl"] .alert-dismissible {
    padding-left: 3rem;
    padding-right: 1rem;
}

html[dir="rtl"] .alert-dismissible .btn-close {
    left: 0;
    right: auto;
}

/* Dropdowns & modals */
html[dir="rtl"] .dropdown-menu {
    text-align: right;
}

html[dir="rtl"] .modal-header .btn-close {
    margin-left: 0;
    margin-right: auto;
}

/* Buttons with icons */
html[dir="rtl"] .btn,
html[dir="rtl"] .btn-primary-rp,
html[dir="rtl"] .btn-admin-primary,
html[dir="rtl"] .btn-admin-gold {
    direction: rtl;
}

/* Pagination if used */
html[dir="rtl"] .pagination {
    direction: rtl;
}

/* Section headers: title on the right, number on the left */
html[dir="rtl"] .section-header {
    grid-template-columns: 1fr auto;
}

html[dir="rtl"] .section-header .section-index {
    order: 2;
}

html[dir="rtl"] .section-header > div:not(.section-index) {
    order: 1;
}

/* Emails / URLs stay LTR for readability */
html[dir="rtl"] .ltr-field,
html[dir="rtl"] input[type="email"],
html[dir="rtl"] input[type="url"],
html[dir="rtl"] input[type="tel"] {
    direction: ltr;
    text-align: left;
}

html[dir="rtl"] .font-en {
    direction: ltr;
    unicode-bidi: isolate;
}
