[dir="rtl"] {
    text-align: right;
}

[dir="rtl"] body {
    direction: rtl;
}

[dir="rtl"] .text-start {
    text-align: right !important;
}

[dir="rtl"] .text-end {
    text-align: left !important;
}

[dir="rtl"] .float-start {
    float: right !important;
}

[dir="rtl"] .float-end {
    float: left !important;
}

[dir="rtl"] .ms-0 { margin-right: 0 !important; margin-left: unset !important; }
[dir="rtl"] .ms-1 { margin-right: .25rem !important; margin-left: unset !important; }
[dir="rtl"] .ms-2 { margin-right: .5rem !important; margin-left: unset !important; }
[dir="rtl"] .ms-3 { margin-right: 1rem !important; margin-left: unset !important; }
[dir="rtl"] .ms-4 { margin-right: 1.5rem !important; margin-left: unset !important; }
[dir="rtl"] .ms-5 { margin-right: 3rem !important; margin-left: unset !important; }
[dir="rtl"] .ms-auto { margin-right: auto !important; margin-left: unset !important; }

[dir="rtl"] .me-0 { margin-left: 0 !important; margin-right: unset !important; }
[dir="rtl"] .me-1 { margin-left: .25rem !important; margin-right: unset !important; }
[dir="rtl"] .me-2 { margin-left: .5rem !important; margin-right: unset !important; }
[dir="rtl"] .me-3 { margin-left: 1rem !important; margin-right: unset !important; }
[dir="rtl"] .me-4 { margin-left: 1.5rem !important; margin-right: unset !important; }
[dir="rtl"] .me-5 { margin-left: 3rem !important; margin-right: unset !important; }
[dir="rtl"] .me-auto { margin-left: auto !important; margin-right: unset !important; }

[dir="rtl"] .ps-0 { padding-right: 0 !important; padding-left: unset !important; }
[dir="rtl"] .ps-1 { padding-right: .25rem !important; padding-left: unset !important; }
[dir="rtl"] .ps-2 { padding-right: .5rem !important; padding-left: unset !important; }
[dir="rtl"] .ps-3 { padding-right: 1rem !important; padding-left: unset !important; }
[dir="rtl"] .ps-4 { padding-right: 1.5rem !important; padding-left: unset !important; }
[dir="rtl"] .ps-5 { padding-right: 3rem !important; padding-left: unset !important; }

[dir="rtl"] .pe-0 { padding-left: 0 !important; padding-right: unset !important; }
[dir="rtl"] .pe-1 { padding-left: .25rem !important; padding-right: unset !important; }
[dir="rtl"] .pe-2 { padding-left: .5rem !important; padding-right: unset !important; }
[dir="rtl"] .pe-3 { padding-left: 1rem !important; padding-right: unset !important; }
[dir="rtl"] .pe-4 { padding-left: 1.5rem !important; padding-right: unset !important; }
[dir="rtl"] .pe-5 { padding-left: 3rem !important; padding-right: unset !important; }

[dir="rtl"] .border-start {
    border-right: var(--bs-border-width, 1px) var(--bs-border-style, solid) var(--bs-border-color, #dee2e6) !important;
    border-left: 0 !important;
}

[dir="rtl"] .border-end {
    border-left: var(--bs-border-width, 1px) var(--bs-border-style, solid) var(--bs-border-color, #dee2e6) !important;
    border-right: 0 !important;
}

[dir="rtl"] .rounded-start {
    border-top-right-radius: var(--bs-border-radius, .375rem) !important;
    border-bottom-right-radius: var(--bs-border-radius, .375rem) !important;
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

[dir="rtl"] .rounded-end {
    border-top-left-radius: var(--bs-border-radius, .375rem) !important;
    border-bottom-left-radius: var(--bs-border-radius, .375rem) !important;
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

[dir="rtl"] .dropdown-menu-end {
    right: auto;
    left: 0;
}

[dir="rtl"] .dropdown-menu-start {
    right: 0;
    left: auto;
}

[dir="rtl"] .input-group > .form-control,
[dir="rtl"] .input-group > .form-select,
[dir="rtl"] .input-group > .input-group-text,
[dir="rtl"] .input-group > .btn {
    direction: rtl;
}

[dir="rtl"] .form-check {
    padding-right: 1.5em;
    padding-left: 0;
}

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

[dir="rtl"] .list-unstyled,
[dir="rtl"] .list-inline,
[dir="rtl"] .navbar-nav,
[dir="rtl"] .pagination {
    padding-right: 0;
}

[dir="rtl"] .navbar .navbar-nav.ms-auto {
    margin-right: 0 !important;
    margin-left: auto !important;
}

[dir="rtl"] .breadcrumb-item + .breadcrumb-item {
    padding-right: var(--bs-breadcrumb-item-padding-x, .5rem);
    padding-left: 0;
}

[dir="rtl"] .breadcrumb-item + .breadcrumb-item::before {
    float: right;
    padding-left: var(--bs-breadcrumb-item-padding-x, .5rem);
    padding-right: 0;
}

@media (min-width: 576px) {
    [dir="rtl"] .text-sm-start { text-align: right !important; }
    [dir="rtl"] .text-sm-end { text-align: left !important; }
    [dir="rtl"] .ms-sm-auto { margin-right: auto !important; margin-left: unset !important; }
    [dir="rtl"] .me-sm-auto { margin-left: auto !important; margin-right: unset !important; }
}

@media (min-width: 768px) {
    [dir="rtl"] .text-md-start { text-align: right !important; }
    [dir="rtl"] .text-md-end { text-align: left !important; }
    [dir="rtl"] .ms-md-auto { margin-right: auto !important; margin-left: unset !important; }
    [dir="rtl"] .me-md-auto { margin-left: auto !important; margin-right: unset !important; }
}

@media (min-width: 992px) {
    [dir="rtl"] .text-lg-start { text-align: right !important; }
    [dir="rtl"] .text-lg-end { text-align: left !important; }
    [dir="rtl"] .ms-lg-auto { margin-right: auto !important; margin-left: unset !important; }
    [dir="rtl"] .me-lg-auto { margin-left: auto !important; margin-right: unset !important; }
    [dir="rtl"] .ms-lg-0 { margin-right: 0 !important; margin-left: unset !important; }
    [dir="rtl"] .ms-lg-1 { margin-right: .25rem !important; margin-left: unset !important; }
    [dir="rtl"] .ms-lg-2 { margin-right: .5rem !important; margin-left: unset !important; }
    [dir="rtl"] .ms-lg-3 { margin-right: 1rem !important; margin-left: unset !important; }
    [dir="rtl"] .ms-lg-4 { margin-right: 1.5rem !important; margin-left: unset !important; }
    [dir="rtl"] .ms-lg-5 { margin-right: 3rem !important; margin-left: unset !important; }
    [dir="rtl"] .me-lg-0 { margin-left: 0 !important; margin-right: unset !important; }
    [dir="rtl"] .me-lg-1 { margin-left: .25rem !important; margin-right: unset !important; }
    [dir="rtl"] .me-lg-2 { margin-left: .5rem !important; margin-right: unset !important; }
    [dir="rtl"] .me-lg-3 { margin-left: 1rem !important; margin-right: unset !important; }
    [dir="rtl"] .me-lg-4 { margin-left: 1.5rem !important; margin-right: unset !important; }
    [dir="rtl"] .me-lg-5 { margin-left: 3rem !important; margin-right: unset !important; }
}

@media (min-width: 1200px) {
    [dir="rtl"] .text-xl-start { text-align: right !important; }
    [dir="rtl"] .text-xl-end { text-align: left !important; }
    [dir="rtl"] .ms-xl-auto { margin-right: auto !important; margin-left: unset !important; }
    [dir="rtl"] .me-xl-auto { margin-left: auto !important; margin-right: unset !important; }
}

/* Footer follows the Arabic reading flow while technical values stay LTR. */
[dir="rtl"] .footer,
[dir="rtl"] .footer .footer-item,
[dir="rtl"] .footer .footer-about-text,
[dir="rtl"] .footer .footer-item h4 {
    direction: rtl;
    text-align: right !important;
}

[dir="rtl"] .footer .footer-item a,
[dir="rtl"] .footer .topbar-contact-list {
    direction: rtl;
    justify-content: flex-start;
    text-align: right !important;
}

[dir="rtl"] .footer .topbar-contact-list,
[dir="rtl"] .footer .topbar-social-list,
[dir="rtl"] .footer .footer-socials,
[dir="rtl"] .footer .footer-brand {
    direction: rtl;
}

[dir="rtl"] .footer .topbar-social-list {
    justify-content: flex-start !important;
}

[dir="rtl"] .footer .footer-item > a .fa-angle-right {
    transform: rotate(180deg);
}

[dir="rtl"] .footer .footer-ltr-value,
[dir="rtl"] .footer a[href^="mailto:"] span {
    direction: ltr;
    unicode-bidi: isolate;
    text-align: left !important;
}
