/* RTL Styles */

body {
    direction: rtl;
    text-align: right;
}

/* General Layout Flips */
.pull-left {
    float: right !important;
}

.pull-right {
    float: left !important;
}

.text-left {
    text-align: right !important;
}

.text-right {
    text-align: left !important;
}

.float-left {
    float: right !important;
}

/* Margins and Paddings */
.mr-auto {
    margin-right: 0 !important;
    margin-left: auto !important;
}

.ml-auto {
    margin-left: 0 !important;
    margin-right: auto !important;
}

/* Header Top */
.main-header .header-top .top-left {
    float: right;
}

.main-header .header-top .top-right {
    text-align: left;
    float: left;
}

.main-header .header-top .top-left .links li {
    padding-right: 0;
    padding-left: 22px;
}

.main-header .header-top .top-left .links li .icon {
    margin-right: 0;
    margin-left: 15px;
}

.main-header .header-top .top-right ul li a {
    padding-left: 0;
    padding-right: 20px;
}

/* Header Upper */
.main-header .header-upper .logo-box {
    float: right;
}

.main-header .header-upper .upper-right {
    float: left;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
}

.main-header .info-box {
    float: none;
    margin-left: 50px;
    margin-right: 0;
    text-align: right;
    flex-direction: row-reverse;
}

.main-header .info-box .icon-box {
    left: auto;
    right: auto;
    order: 1;
}

.main-header .info-box ul {
    padding-left: 0;
    padding-right: 0;
    text-align: right;
}

/* Main Menu */
.main-header .nav-outer {
    padding-left: 0;
    padding-right: 0;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}

.main-menu {
    float: none;
    order: 2;
}

.main-menu .navigation>li {
    float: right;
    margin-right: 0;
    margin-left: 30px;
}

.main-menu .navigation>li:last-child {
    margin-left: 0;
}

.main-menu .navigation>li>ul {
    left: auto;
    right: 0;
    text-align: right;
}

.main-menu .navigation>li>ul>li>ul {
    left: auto;
    right: 100%;
}

.main-menu .navigation>li>ul>li>a {
    text-align: right;
}

/* Header Lower */
.main-header .header-lower .outer-box {
    float: none;
    position: relative;
    right: auto;
    left: auto;
    order: 1;
    margin-left: 20px;
}

.main-header .outer-box {
    float: none;
    right: auto;
    left: auto;
}

.main-header .outer-box .advisor-box {
    float: none;
}

.main-header .outer-box .advisor-box .advisor-btn {
    border-radius: 40px 0 0 40px;
    padding: 12px 15px 13px 20px;
}

/* Sticky Header */
.sticky-header .logo {
    float: right;
}

.sticky-header .right-col {
    float: left;
}

/* Sidebar / Widgets */
.sidebar-page-container .sidebar-side {
    padding-left: 15px;
    padding-right: 15px;
}

.sidebar .search-box {
    text-align: right;
}

.sidebar .search-box .form-group {
    position: relative;
}

.sidebar .search-box .form-group input[type="text"],
.sidebar .search-box .form-group input[type="search"] {
    text-align: right;
    padding-right: 25px;
    padding-left: 70px;
}

.sidebar .search-box .form-group button {
    right: auto;
    left: 0;
    border-radius: 30px 0 0 30px;
}

/* Sidebar Blog Category */
.blog-cat {
    text-align: right;
}

.blog-cat li a {
    text-align: right;
    padding: 19px 40px 19px 40px;
    border-left: none;
    border-right: 5px solid transparent;
}

.blog-cat li a:before {
    content: "\f0d9";
    left: auto;
    right: 15px;
}

.blog-cat li a:after {
    right: auto;
    left: 0;
    border-width: 10px 0 10px 12.2px;
    border-color: transparent transparent transparent #fff;
}

.blog-cat li.active a,
.blog-cat li a:hover {
    border-left: none;
    border-right: 5px solid #1a7093;
}

/* Footer */
.main-footer {
    text-align: right;
}

.main-footer .widgets-section {
    text-align: right;
}

.main-footer .footer-column {
    text-align: right;
}

.main-footer .footer-widget {
    text-align: right;
}

.main-footer .footer-logo {
    text-align: right;
}

.main-footer .about-widget .info-box {
    text-align: right;
    padding-right: 0;
}

.main-footer .about-widget .info-box li {
    text-align: right;
    padding-left: 0;
    padding-right: 30px;
    position: relative;
}

.main-footer .about-widget .info-box li i {
    position: absolute;
    right: 0;
    top: 0;
    margin-right: 0;
    margin-left: 10px;
}

.main-footer .footer-widget .widget-title {
    text-align: right;
}

.main-footer .footer-widget .widget-title:before {
    left: auto;
    right: 0;
}

.main-footer .footer-widget .widget-content .list li a:before {
    left: auto;
    right: 0;
    content: "\f104";
    /* Left arrow usually */
}

.main-footer .footer-widget .widget-content .list li a {
    padding-left: 0;
    padding-right: 20px;
    text-align: right;
}

.main-footer .links-widget .list li {
    text-align: right;
}

.main-footer .recent-posts .post {
    text-align: right;
}

.main-footer .recent-posts .post .thumb {
    float: right;
    margin-right: 0;
    margin-left: 15px;
}

.main-footer .recent-posts .post h4 {
    text-align: right;
}

.main-footer .recent-posts .post .post-date {
    text-align: right;
}

/* Footer Bottom */
.main-footer .footer-bottom {
    text-align: right;
}

.main-footer .footer-bottom .inner-container {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
}

.main-footer .footer-bottom .copyright-text {
    float: none;
    text-align: right;
}

.main-footer .footer-bottom .social-links {
    float: none;
    text-align: left;
}

.main-footer .footer-bottom .social-links ul {
    display: flex;
    flex-direction: row-reverse;
    gap: 10px;
}

.main-footer .footer-bottom .social-links ul li {
    float: none;
}

/* Contact Section */
.contact-section {
    text-align: right;
}

.contact-section .info-column {
    text-align: right;
}

.contact-section .info-column .inner-column {
    text-align: right;
    padding-left: 0;
    padding-right: 0;
}

.contact-section .info-column .contact-info {
    text-align: right;
}

.contact-section .info-column .contact-info li {
    text-align: right;
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 55px;
    position: relative;
}

.contact-section .info-column .contact-info li i:before {
    margin-left: 0;
    margin-right: -54px;
}

.contact-section .form-column {
    text-align: right;
}

.contact-section .form-column .inner-column {
    text-align: right;
}

.contact-section .contact-form {
    text-align: right;
}

.contact-section .contact-form input,
.contact-section .contact-form textarea {
    text-align: right;
}

.contact-section .contact-form .form-group {
    text-align: right;
}

/* Newsletter */
.subscribe-form .form-group input[type="email"] {
    padding: 15px 30px 15px 70px;
}

.subscribe-form .form-group button {
    right: auto;
    left: 10px;
}

/* Testimonials */
.testimonial-block-two .inner-box .text {
    text-align: right;
}

/* Lists */
.list-style-one li {
    padding-left: 0;
    padding-right: 35px;
}

.list-style-one li:before {
    left: auto;
    right: 0;
    transform: rotate(180deg);
}

.list-style-two li {
    padding-left: 0;
    padding-right: 35px;
}

.list-style-two li:before {
    left: auto;
    right: 0;
    transform: rotate(180deg);
}

/* Services */
.services-block .inner-box .icon-box {
    margin-right: 0;
    margin-left: 20px;
}

/* Blog */
.news-block .inner-box .lower-content .post-meta li {
    float: right;
    margin-right: 0;
    margin-left: 20px;
    padding-left: 0;
}

.news-block .inner-box .lower-content .post-meta li span {
    margin-right: 0;
    margin-left: 10px;
}

/* Breadcumb */
.breadcrumb li {
    float: right;
    margin-right: 0;
    margin-left: 10px;
}

.breadcrumb li:first-child {
    padding-right: 0;
}

/* Contact Form */
.contact-form .form-group {
    text-align: right;
}

/* Common RTL utils */
.ml-15 {
    margin-left: 15px !important;
    margin-right: 0 !important;
}

.mr-15 {
    margin-right: 15px !important;
    margin-left: 0 !important;
}

/* Bootstrap Overrides for RTL */
/* Grid system in BS4 RTL handles direction automatically via flexbox. 
   No need to manually float columns unless it's a legacy float grid. */

/* Reset Lists padding */
ul {
    padding-right: 0;
}

/* Social Links */
.social-links li {
    display: inline-block;
    float: none;
    /* or right depending on context */
}

/* Language Switch */
.language-switch {
    float: left;
}

.language-switch li {
    display: inline-block;
}

/* Mobile Menu */
.navbar-collapse {
    text-align: right;
}

.navbar-collapse .navigation>li>a {
    text-align: right;
}

.navbar-collapse .navigation>li>ul>li>a {
    text-align: right;
    padding-left: 0;
    padding-right: 30px;
}

/* Close buttons, etc */
.close {
    float: left;
}

/* Modal */
.modal-header .close {
    margin: -1rem auto -1rem -1rem;
    padding: 1rem;
}

/* Banner Carousel RTL - Force visibility and alignment */
.banner-carousel .owl-nav {
    direction: ltr;
    /* Keep navigation buttons logical or handle specifically */
}

.banner-carousel .owl-nav .owl-prev {
    left: auto !important;
    right: 4% !important;
    float: right !important;
}

.banner-carousel .owl-nav .owl-next {
    right: auto !important;
    left: 4% !important;
    float: left !important;
}

/* Fix for animation opacity issues in RTL */
.banner-carousel .slide-item {
    direction: rtl;
    text-align: right;
}

.banner-carousel .content-box {
    text-align: right;
    /* Ensure text aligns right */
}

/* Ensure opacity is visible if animations fail or lag */
.banner-carousel .active h1,
.banner-carousel .active .text,
.banner-carousel .active .content-box .title {
    opacity: 1 !important;
    transform: translateY(0) !important;
    visibility: visible !important;
}

/* Section Title RTL Fixes */
.sec-title {
    text-align: right;
}

.sec-title.left {
    text-align: right;
}

.sec-title.left h2 {
    text-align: right;
}

.sec-title.left .separater {
    margin-left: auto;
    margin-right: 0;
}

.sec-title.left .separater:before,
.sec-title.left .separater:after {
    left: auto;
    right: 0;
}

.sec-title .text {
    text-align: right;
}

.sec-title.centered {
    text-align: center;
}

.sec-title.centered .separater {
    margin-left: auto;
    margin-right: auto;
}