/**
 * COMPREHENSIVE RTL (Right-to-Left) Styles for Arabic Language
 * This file fixes all Arabic text rendering and layout issues
 * Last updated: 2025-01-01
 */

/* ========================================
   NAVBAR FIX - PREVENT ITEMS FROM WRAPPING
   This fix applies to both LTR and RTL layouts
   ======================================== */

/* Critical: Prevent navbar from wrapping to multiple lines */
.main-menu__wrapper-inner {
    flex-wrap: nowrap !important;
}

.main-menu__right {
    flex-wrap: nowrap !important;
    gap: 15px !important;
}

.main-menu__middle-box {
    flex-wrap: nowrap !important;
}

/* Reduce call section width */
.main-menu__call-content {
    white-space: nowrap;
}

.main-menu__call-sub-title {
    font-size: 12px !important;
    line-height: 12px !important;
    margin-bottom: 3px !important;
}

.main-menu__call-number {
    font-size: 14px !important;
    line-height: 14px !important;
}

/* Compact language toggle */
.lang-quick-toggle .lang-toggle-btn {
    width: 36px !important;
    height: 36px !important;
    font-size: 12px !important;
}

/* Compact theme toggle */
.theme-toggle {
    width: 36px !important;
    height: 36px !important;
}

.theme-toggle svg {
    width: 16px !important;
    height: 16px !important;
}

/* Adjust menu spacing to fit all items */
.main-menu .main-menu__list>li+li,
.stricky-header .main-menu__list>li+li {
    margin-left: 25px;
}

/* Hide call text on tight screens but keep icon */
@media (max-width: 1400px) {
    .main-menu__call-sub-title {
        display: none;
    }

    .main-menu__call-number {
        font-size: 12px !important;
    }

    .main-menu__right {
        gap: 10px !important;
    }

    .main-menu .main-menu__list>li+li,
    .stricky-header .main-menu__list>li+li {
        margin-left: 15px;
    }
}

/* Very tight screens - hide call content, show only icon */
@media (max-width: 1300px) {
    .main-menu__call-content {
        display: none !important;
    }

    .main-menu__call-icon {
        margin-right: 0 !important;
    }
}

/* ========================================
   CRITICAL ARABIC TEXT FIX
   - Reset text-transform (breaks Arabic ligatures)
   - Reset letter-spacing (separates Arabic characters)
   ======================================== */

html[dir="rtl"],
html[dir="rtl"] * {
    letter-spacing: 0 !important;
}

html[dir="rtl"] .section-title__tagline,
html[dir="rtl"] .section-title__title,
html[dir="rtl"] .main-slider__sub-title,
html[dir="rtl"] .main-slider__title,
html[dir="rtl"] .main-slider__sub-title-two,
html[dir="rtl"] .sliding-text__title,
html[dir="rtl"] .scroll-to-top__text,
html[dir="rtl"] h1,
html[dir="rtl"] h2,
html[dir="rtl"] h3,
html[dir="rtl"] h4,
html[dir="rtl"] h5,
html[dir="rtl"] h6 {
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* CRITICAL: Disable SplitText animation for RTL - prevents Arabic ligature breaking */
html[dir="rtl"] .title-animation,
html[dir="rtl"] .sec-title-animation .title-animation,
html[dir="rtl"] .sec-title-animation h2,
html[dir="rtl"] .sec-title-animation h3 {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* Force SplitText generated elements to display inline for RTL */
html[dir="rtl"] .title-animation .split-line,
html[dir="rtl"] .title-animation div,
html[dir="rtl"] .title-animation span:not(.icon-star):not([class*="icon-"]) {
    display: inline !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    position: static !important;
}

@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@200;300;400;500;600;700;800;900&display=swap');

/* Apply Cairo font ONLY to text elements, NOT icons */
html[dir="rtl"] body,
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"] p,
html[dir="rtl"] a:not([class*="icon"]),
html[dir="rtl"] li,
html[dir="rtl"] input,
html[dir="rtl"] textarea,
html[dir="rtl"] button,
html[dir="rtl"] .thm-btn,
html[dir="rtl"] .section-title__tagline,
html[dir="rtl"] .section-title__title,
html[dir="rtl"] label,
html[dir="rtl"] div:not([class*="icon"]):not(.owl-nav):not(.owl-prev):not(.owl-next),
html[dir="rtl"] .footer-widget__title,
html[dir="rtl"] .testimonial-one__text,
html[dir="rtl"] .faq-one__title,
html[dir="rtl"] .accrodion-title h4 {
    font-family: 'Cairo', 'Roboto', sans-serif !important;
}

/* PRESERVE ICON FONTS - Critical for proper icon display */
html[dir="rtl"] [class^="icon-"],
html[dir="rtl"] [class*=" icon-"],
html[dir="rtl"] .icon-star,
html[dir="rtl"] .icon-call,
html[dir="rtl"] .icon-call-2,
html[dir="rtl"] .icon-location,
html[dir="rtl"] .icon-email,
html[dir="rtl"] .icon-play,
html[dir="rtl"] .icon-quote,
html[dir="rtl"] .icon-jeep,
html[dir="rtl"] .icon-cuv,
html[dir="rtl"] .icon-taxi,
html[dir="rtl"] .icon-facebook,
html[dir="rtl"] .icon-twitter,
html[dir="rtl"] .icon-instagram,
html[dir="rtl"] .icon-linkedin,
html[dir="rtl"] .icon-whatsapp,
html[dir="rtl"] .icon-youtube,
html[dir="rtl"] .fab,
html[dir="rtl"] .fas,
html[dir="rtl"] .far,
html[dir="rtl"] .fa,
html[dir="rtl"] .owl-prev span,
html[dir="rtl"] .owl-next span {
    font-family: 'icomoon' !important;
    letter-spacing: 0 !important;
}

/* FontAwesome icons */
html[dir="rtl"] .fab,
html[dir="rtl"] .fas,
html[dir="rtl"] .far,
html[dir="rtl"] .fa {
    font-family: 'Font Awesome 5 Free', 'Font Awesome 5 Brands' !important;
}

/* ========================================
   HEADER - COMPLETE RTL OVERHAUL
   ======================================== */

/* Top bar RTL */
html[dir="rtl"] .main-menu__top {
    direction: rtl;
}

html[dir="rtl"] .main-menu__top-left {
    order: 2;
}

html[dir="rtl"] .main-menu__top-right {
    order: 1;
    margin-left: 0;
    margin-right: auto;
}

html[dir="rtl"] .main-menu__contact-list {
    flex-direction: row-reverse;
}

html[dir="rtl"] .main-menu__contact-list li {
    display: flex;
    flex-direction: row-reverse;
}

html[dir="rtl"] .main-menu__contact-list li .icon {
    margin-right: 0;
    margin-left: 10px;
}

html[dir="rtl"] .main-menu__social {
    flex-direction: row-reverse;
    gap: 12px !important;
}

html[dir="rtl"] .main-menu__social a {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* ========================================
   MAIN NAVIGATION BAR RTL - COMPLETE OVERHAUL
   Layout: Actions (LEFT) | Menu (CENTER) | Logo (RIGHT)
   Menu items: Home on RIGHT side, Contact on LEFT side
   ======================================== */

/* Main wrapper - use normal row direction */
html[dir="rtl"] .main-menu__wrapper-inner,
html[dir="rtl"] .main-menu .main-menu__wrapper-inner,
html[dir="rtl"] nav.main-menu .main-menu__wrapper-inner {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
}

/* Logo section - order:1 appears on RIGHT in RTL */
html[dir="rtl"] .main-menu__left,
html[dir="rtl"] .main-menu .main-menu__left {
    order: 1 !important;
}

/* Menu section stays in CENTER */
html[dir="rtl"] .main-menu__middle-box,
html[dir="rtl"] .main-menu .main-menu__middle-box {
    order: 2 !important;
}

html[dir="rtl"] .main-menu__main-menu-box,
html[dir="rtl"] .main-menu .main-menu__main-menu-box {
    direction: ltr !important;
    display: flex !important;
    justify-content: center !important;
}

/* Actions section - order:3 appears on LEFT in RTL */
/* Note: Do NOT use row-reverse here - items are already in correct order (Lang→Theme→Call→Sidebar) */
html[dir="rtl"] .main-menu__right,
html[dir="rtl"] .main-menu .main-menu__right {
    order: 3 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
}

/* Logo gap - margin on LEFT side in RTL */
html[dir="rtl"] .main-menu__left,
html[dir="rtl"] .main-menu .main-menu__left {
    margin-right: 0 !important;
    margin-left: 30px !important;
}

/* RTL Navbar: Consistent spacing between toggle buttons */
/* Use flex gap for spacing - no negative margins needed */
html[dir="rtl"] .main-menu__right {
    gap: 15px !important;
}

html[dir="rtl"] .lang-quick-toggle {
    margin: 0 !important;
}

html[dir="rtl"] .theme-toggle-wrapper {
    margin: 0 !important;
}

/* ========================================
   RTL MOBILE NAVIGATION FIX
   Hide desktop menu on mobile, show hamburger
   ======================================== */

/* MOBILE & TABLET: Hide menu list, show hamburger */
@media (max-width: 1199px) {

    /* ===== HIDE NAVBAR MENU ON MOBILE ===== */
    /* Use MAXIMUM specificity to override ANY other rules */
    html[dir="rtl"] .main-menu__list,
    html[dir="rtl"] .main-menu .main-menu__list,
    html[dir="rtl"] nav.main-menu .main-menu__list,
    html[dir="rtl"] .main-header .main-menu .main-menu__list,
    html[dir="rtl"] .main-menu__main-menu-box .main-menu__list,
    html[dir="rtl"] body .main-menu .main-menu__list,
    html[dir="rtl"] body .main-menu__main-menu-box .main-menu__list {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        width: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
    }

    /* Also hide the right section completely */
    html[dir="rtl"] .main-menu__right,
    html[dir="rtl"] .main-menu .main-menu__right,
    html[dir="rtl"] body .main-menu__right {
        display: none !important;
        visibility: hidden !important;
    }

    /* ===== SHOW MENU INSIDE MOBILE NAV CONTAINER ===== */
    html[dir="rtl"] .mobile-nav__container .main-menu__list {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    html[dir="rtl"] .mobile-nav__container .main-menu__list>li {
        display: block !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 0 !important;
    }

    html[dir="rtl"] .mobile-nav__container .main-menu__list>li>a {
        text-align: right !important;
    }

    /* ===== HAMBURGER ICON - VISIBLE AND POSITIONED ===== */
    html[dir="rtl"] .mobile-nav__toggler {
        display: inline-block !important;
        visibility: visible !important;
        opacity: 1 !important;
        font-size: 20px;
        color: var(--gorent-base);
        cursor: pointer;
        position: relative !important;
        left: auto !important;
        right: auto !important;
    }

    /* ===== NAVBAR LAYOUT - LOGO RIGHT, HAMBURGER LEFT ===== */
    html[dir="rtl"] .main-menu__wrapper-inner {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        direction: ltr !important;
        /* Makes order:1=left, order:2=right */
    }

    /* Logo stays on RIGHT - use high specificity to override global rules */
    html[dir="rtl"] .main-menu__left,
    html[dir="rtl"] .main-menu .main-menu__left,
    html[dir="rtl"] nav.main-menu .main-menu__left {
        order: 2 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        flex-shrink: 0 !important;
    }

    /* Hamburger container on LEFT - use high specificity to override global rules */
    html[dir="rtl"] .main-menu__middle-box,
    html[dir="rtl"] .main-menu .main-menu__middle-box,
    html[dir="rtl"] nav.main-menu .main-menu__middle-box {
        order: 1 !important;
        flex: 0 0 auto !important;
        display: flex !important;
        align-items: center !important;
    }

    /* Only show the hamburger, hide everything else in middle-box */
    html[dir="rtl"] .main-menu__main-menu-box {
        display: flex !important;
        align-items: center !important;
        width: auto !important;
        flex-shrink: 0 !important;
    }

    /* Reset any transforms on the toggler and ensure it's visible in viewport */
    html[dir="rtl"] .main-menu__main-menu-box .mobile-nav__toggler {
        transform: none !important;
        -webkit-transform: none !important;
        position: static !important;
        display: inline-flex !important;
        width: 30px !important;
        height: 30px !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* ===== HIDE ALL EXTRA ELEMENTS ON MOBILE ===== */
    /* Hide right section (call, toggles, sidebar icon) */
    html[dir="rtl"] .main-menu__right {
        display: none !important;
    }

    /* Hide search box */
    html[dir="rtl"] .main-menu__search-cart-box {
        display: none !important;
    }

    /* Hide sidebar icon */
    html[dir="rtl"] .main-menu__nav-sidebar-icon {
        display: none !important;
    }

    /* Hide language toggle in header (except mobile-header-toggles) */
    html[dir="rtl"] .main-menu__right .lang-quick-toggle {
        display: none !important;
    }

    /* Hide theme toggle in header (except mobile-header-toggles) */
    html[dir="rtl"] .main-menu__right .theme-toggle-wrapper {
        display: none !important;
    }

    /* SHOW mobile header toggles in RTL */
    html[dir="rtl"] .mobile-header-toggles {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    html[dir="rtl"] .mobile-header-toggles .lang-quick-toggle,
    html[dir="rtl"] .mobile-header-toggles .theme-toggle-wrapper {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* Hide call box in header */
    html[dir="rtl"] .main-menu__call {
        display: none !important;
    }

    /* Hide top bar on mobile - use high specificity */
    html[dir="rtl"] .main-menu__top,
    html[dir="rtl"] .main-header .main-menu__top,
    html[dir="rtl"] header .main-menu__top,
    html[dir="rtl"] .main-menu__top-inner,
    html[dir="rtl"] .main-menu__contact-list {
        display: none !important;
        visibility: hidden !important;
    }
}

/* DESKTOP ONLY: Navigation Menu Items - PROPERLY REVERSED
   In RTL: Home should be RIGHTMOST, Contact should be LEFTMOST
   Using flex-direction: row-reverse to achieve this */
@media (min-width: 1200px) {
    html[dir="rtl"] .main-menu__list {
        display: flex !important;
        flex-direction: row-reverse !important;
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Spacing between menu items - margin goes on LEFT in RTL */
    html[dir="rtl"] .main-menu__list>li {
        margin-right: 0 !important;
        margin-left: 35px !important;
    }

    /* First item (Home, which appears on RIGHT) has no margin */
    html[dir="rtl"] .main-menu__list>li:first-child {
        margin-left: 35px !important;
    }

    /* Last item (Contact, which appears on LEFT) has no left margin */
    html[dir="rtl"] .main-menu__list>li:last-child {
        margin-left: 0 !important;
    }

    /* Menu links text alignment */
    html[dir="rtl"] .main-menu__list>li>a {
        text-align: right !important;
        direction: rtl !important;
    }
}

/* Dropdown menus */
html[dir="rtl"] .main-menu__list li ul {
    left: auto !important;
    right: 0 !important;
    text-align: right !important;
}

/* ========================================
   MOBILE NAV SOCIAL ICONS RTL FIX
   ======================================== */
html[dir="rtl"] .mobile-nav__social {
    display: flex !important;
    flex-direction: row-reverse !important;
    justify-content: flex-end !important;
}

html[dir="rtl"] .mobile-nav__social a {
    /* Prevent icon flipping - keep icons normal */
    transform: none !important;
    -webkit-transform: none !important;
    direction: ltr !important;
}

html[dir="rtl"] .mobile-nav__social a+a {
    margin-left: 0 !important;
    margin-right: 30px !important;
}

/* ========================================
   DESKTOP ONLY: Call section in header
   Icon on LEFT, Text on RIGHT in RTL
   ======================================== */
@media (min-width: 1200px) {
    html[dir="rtl"] .main-menu__call {
        display: flex !important;
        flex-direction: row !important;
    }

    html[dir="rtl"] .main-menu__call-icon {
        margin-right: 15px !important;
        margin-left: 0 !important;
        order: 2 !important;
    }

    /* Flip phone icon to face left in RTL */
    html[dir="rtl"] .main-menu__call-icon span,
    html[dir="rtl"] .main-menu__call-icon i {
        transform: scaleX(-1) !important;
        display: inline-block;
    }

    html[dir="rtl"] .main-menu__call-content {
        text-align: left !important;
        order: 1 !important;
    }

    /* Show main-menu__right on desktop */
    html[dir="rtl"] .main-menu__right {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
    }
}

/* ========================================
   SLIDER / BANNER RTL - COMPREHENSIVE FIX
   ======================================== */

/* Force Owl Carousel to use LTR direction (prevents positioning issues) */
html[dir="rtl"] .main-slider__carousel,
html[dir="rtl"] .main-slider__carousel .owl-stage-outer,
html[dir="rtl"] .main-slider__carousel .owl-stage,
html[dir="rtl"] .main-slider__carousel .owl-item {
    direction: ltr !important;
}

/* Content container keeps RTL for text alignment */
html[dir="rtl"] .main-slider__content {
    direction: rtl !important;
    text-align: right;
}

html[dir="rtl"] .main-slider__sub-title-box {
    justify-content: flex-end;
}

html[dir="rtl"] .main-slider__btn-and-video-box {
    flex-direction: row-reverse;
    justify-content: flex-start;
}

html[dir="rtl"] .main-slider__btn-box {
    margin-right: 0;
    margin-left: 30px;
}

html[dir="rtl"] .main-slider__video-link {
    flex-direction: row-reverse;
}

html[dir="rtl"] .main-slider__video-title {
    margin-left: 0;
    margin-right: 15px;
}

/* CRITICAL: Disable ALL translateX animations for RTL slider
   These animations slide content from left/right and break in RTL */
html[dir="rtl"] .main-slider__sub-title-box,
html[dir="rtl"] .main-slider__title,
html[dir="rtl"] .main-slider__sub-title-two,
html[dir="rtl"] .main-slider__btn-and-video-box {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transition: none !important;
}

/* Active slide state - ensure content is always visible */
html[dir="rtl"] .active .main-slider__sub-title-box,
html[dir="rtl"] .active .main-slider__title,
html[dir="rtl"] .active .main-slider__sub-title-two,
html[dir="rtl"] .active .main-slider__btn-and-video-box,
html[dir="rtl"] .owl-item.active .main-slider__sub-title-box,
html[dir="rtl"] .owl-item.active .main-slider__title,
html[dir="rtl"] .owl-item.active .main-slider__sub-title-two,
html[dir="rtl"] .owl-item.active .main-slider__btn-and-video-box {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transition-delay: 0ms !important;
}

/* Title layout - ensure natural RTL flow with proper word spacing */
html[dir="rtl"] .main-slider__title {
    display: block !important;
    text-align: right !important;
    word-spacing: 0.15em !important;
}

/* Title span color and spacing - ensure it's visible and properly spaced */
html[dir="rtl"] .main-slider__title span {
    opacity: 1 !important;
    visibility: visible !important;
    display: inline !important;
    margin-right: 0.2em !important;
}

/* Item and stage visibility */
html[dir="rtl"] .main-slider__carousel .item,
html[dir="rtl"] .main-slider__carousel .owl-item,
html[dir="rtl"] .main-slider__carousel .owl-item.active {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Carousel navigation - position arrows on opposite sides */
html[dir="rtl"] .main-slider .owl-theme .owl-nav {
    display: flex;
    justify-content: space-between;
}

html[dir="rtl"] .main-slider .owl-nav .owl-prev {
    left: auto !important;
    right: 50px !important;
    transform: rotate(180deg) !important;
}

html[dir="rtl"] .main-slider .owl-nav .owl-next {
    right: auto !important;
    left: 50px !important;
    transform: none !important;
}

/* Carousel dots - align to right for RTL */
html[dir="rtl"] .main-slider .owl-theme .owl-dots {
    justify-content: flex-end !important;
}

html[dir="rtl"] .main-slider .owl-theme .owl-dots .owl-dot+.owl-dot {
    margin-left: 0 !important;
    margin-right: 60px !important;
}

/* Dot line connectors - flip position */
html[dir="rtl"] .main-slider .owl-theme .owl-dots .owl-dot span:before {
    left: auto !important;
    right: 26px !important;
}

/* ========================================
   RTL SLIDER - MOBILE RESPONSIVE FIXES
   ======================================== */

/* Tablet: 768px - 991px */
@media only screen and (max-width: 991px) {
    html[dir="rtl"] .main-slider__title {
        font-size: 60px !important;
        line-height: 1.1em !important;
    }

    html[dir="rtl"] .main-slider__sub-title {
        font-size: 30px !important;
    }

    html[dir="rtl"] .main-slider__sub-title-two {
        font-size: 40px !important;
    }

    /* Navigation arrows adjust for tablet */
    html[dir="rtl"] .main-slider .owl-nav .owl-prev {
        right: 20px !important;
    }

    html[dir="rtl"] .main-slider .owl-nav .owl-next {
        left: 20px !important;
    }
}

/* Mobile: 576px - 767px */
@media only screen and (max-width: 767px) {
    html[dir="rtl"] .main-slider__title {
        font-size: 40px !important;
        line-height: 1.15em !important;
    }

    html[dir="rtl"] .main-slider__sub-title {
        font-size: 22px !important;
    }

    html[dir="rtl"] .main-slider__sub-title-two {
        font-size: 28px !important;
        line-height: 1.3em !important;
    }

    html[dir="rtl"] .main-slider__content {
        padding: 0 15px !important;
    }

    /* Center content on small screens */
    html[dir="rtl"] .main-slider__btn-and-video-box {
        justify-content: center !important;
        flex-direction: column !important;
        align-items: flex-end !important;
        gap: 15px !important;
    }

    html[dir="rtl"] .main-slider__btn-box {
        margin-left: 0 !important;
    }

    /* Hide navigation arrows on mobile */
    html[dir="rtl"] .main-slider .owl-nav {
        display: none !important;
    }

    /* Center dots on mobile */
    html[dir="rtl"] .main-slider .owl-theme .owl-dots {
        justify-content: center !important;
    }
}

/* Small Mobile: up to 575px */
@media only screen and (max-width: 575px) {
    html[dir="rtl"] .main-slider__title {
        font-size: 32px !important;
        line-height: 1.2em !important;
    }

    html[dir="rtl"] .main-slider__sub-title {
        font-size: 18px !important;
    }

    html[dir="rtl"] .main-slider__sub-title-two {
        font-size: 22px !important;
    }

    /* Reduce slider padding */
    html[dir="rtl"] .main-slider .item {
        padding-top: 140px !important;
        padding-bottom: 180px !important;
    }

    /* Adjust dots spacing */
    html[dir="rtl"] .main-slider .owl-theme .owl-dots .owl-dot+.owl-dot {
        margin-right: 30px !important;
    }
}

/* ========================================
   SECTION TITLES RTL
   ======================================== */

html[dir="rtl"] .section-title {
    text-align: right;
}

html[dir="rtl"] .section-title.text-left {
    text-align: right !important;
}

html[dir="rtl"] .section-title.text-center {
    text-align: center !important;
}

html[dir="rtl"] .section-title__tagline-box {
    flex-direction: row-reverse;
    justify-content: flex-end;
}

html[dir="rtl"] .section-title.text-center .section-title__tagline-box {
    justify-content: center;
}

html[dir="rtl"] .section-title__tagline-shape {
    margin-right: 0;
    margin-left: 10px;
}

/* ========================================
   SERVICES SECTION RTL
   ======================================== */

html[dir="rtl"] .services-one__single {
    text-align: right;
}

html[dir="rtl"] .services-one__title,
html[dir="rtl"] .services-one__text {
    text-align: right;
}

/* ========================================
   ABOUT SECTION RTL
   ======================================== */

html[dir="rtl"] .about-one__left {
    padding-right: 0;
    padding-left: 30px;
}

html[dir="rtl"] .about-one__right {
    padding-left: 0;
    padding-right: 30px;
    text-align: right;
}

html[dir="rtl"] .about-one__text-1,
html[dir="rtl"] .about-one__text-2 {
    text-align: right;
}

html[dir="rtl"] .about-one__experience {
    left: auto;
    right: 0;
}

html[dir="rtl"] .about-one__btn-box-and-call-box {
    flex-direction: row-reverse;
}

html[dir="rtl"] .about-one__btn-box {
    margin-right: 0;
    margin-left: 30px;
}

html[dir="rtl"] .about-one__call-box {
    flex-direction: row-reverse;
}

html[dir="rtl"] .about-one__call-box-icon {
    margin-right: 0;
    margin-left: 15px;
}

html[dir="rtl"] .about-one__call-box-content {
    text-align: right;
}

html[dir="rtl"] .about-one__progress {
    text-align: right;
}

html[dir="rtl"] .about-one__progress-title {
    text-align: right;
}

html[dir="rtl"] .bar-inner {
    float: right;
    transform-origin: right;
}

html[dir="rtl"] .count-text {
    right: auto;
    left: 0;
}

/* ========================================
   PROCESS / STEPS SECTION RTL
   ======================================== */

html[dir="rtl"] .process-one__single {
    text-align: right;
}

html[dir="rtl"] .process-one__title,
html[dir="rtl"] .process-one__text {
    text-align: right;
}

/* ========================================
   WHY CHOOSE SECTION RTL
   ======================================== */

html[dir="rtl"] .why-choose-one__single {
    text-align: right;
    flex-direction: row-reverse;
}

html[dir="rtl"] .why-choose-one__icon {
    margin-right: 0;
    margin-left: 20px;
}

html[dir="rtl"] .why-choose-one__single-inner {
    text-align: right;
}

/* ========================================
   COUNTER SECTION RTL
   ======================================== */

html[dir="rtl"] .counter-one__left {
    padding-right: 0;
    padding-left: 50px;
    text-align: right;
}

html[dir="rtl"] .counter-one__text {
    text-align: right;
}

html[dir="rtl"] .counter-one__single-inner {
    flex-direction: row-reverse;
}

html[dir="rtl"] .counter-one__icon {
    margin-right: 0;
    margin-left: 15px;
}

html[dir="rtl"] .counter-one__count-text {
    text-align: right;
}

/* ========================================
   VIDEO SECTION RTL
   ======================================== */

html[dir="rtl"] .video-one {
    text-align: right;
}

html[dir="rtl"] .video-one__title {
    text-align: center;
}

/* ========================================
   PRICING SECTION RTL
   ======================================== */

html[dir="rtl"] .pricing-one__single {
    text-align: right;
}

html[dir="rtl"] .pricing-one__title,
html[dir="rtl"] .pricing-one__text {
    text-align: right;
}

html[dir="rtl"] .pricing-one__price-and-icon-box {
    flex-direction: row-reverse;
}

html[dir="rtl"] .pricing-one__points li {
    flex-direction: row-reverse;
    text-align: right;
}

/* ========================================
   TESTIMONIALS SECTION RTL
   ======================================== */

html[dir="rtl"] .testimonial-one__single {
    text-align: right;
}

html[dir="rtl"] .testimonial-one__client-info {
    flex-direction: row-reverse;
    justify-content: flex-start;
}

html[dir="rtl"] .testimonial-one__img {
    margin-right: 0;
    margin-left: 20px;
}

html[dir="rtl"] .testimonial-one__content {
    text-align: right;
}

html[dir="rtl"] .testimonial-one__text {
    text-align: right;
}

/* Quote icon - move to top-LEFT corner in RTL (mirrors top-right in LTR) */
html[dir="rtl"] .testimonial-one__quote {
    right: auto;
    left: -1px;
    border-radius: 50%;
    border-top-left-radius: 0;
    border-top-right-radius: 50%;
}

/* Rating stars - align to right in RTL */
html[dir="rtl"] .testimonial-one__rating {
    justify-content: flex-end;
}

/* ========================================
   FAQ SECTION RTL
   ======================================== */

html[dir="rtl"] .faq-one__left {
    text-align: right;
}

html[dir="rtl"] .faq-one__experience-text {
    text-align: right;
}

html[dir="rtl"] .faq-one__right {
    text-align: right;
}

html[dir="rtl"] .accrodion .accrodion-title {
    padding-left: 60px;
    padding-right: 25px;
    text-align: right;
}

html[dir="rtl"] .accrodion .accrodion-title h4 {
    text-align: right;
}

html[dir="rtl"] .accrodion .accrodion-title::before {
    left: 25px;
    right: auto;
}

html[dir="rtl"] .accrodion .accrodion-content {
    padding-right: 25px;
    padding-left: 60px;
    text-align: right;
}

/* FAQ Accordion - Icon on LEFT side */
html[dir="rtl"] .faq-one .accrodion-title h4::before,
html[dir="rtl"] .faq-two .accrodion-title h4::before,
html[dir="rtl"] .accrodion-title h4::before {
    right: auto !important;
    left: 0 !important;
}

html[dir="rtl"] .faq-one .accrodion-title h4,
html[dir="rtl"] .faq-two .accrodion-title h4,
html[dir="rtl"] .accrodion-title h4 {
    padding-left: 50px !important;
    padding-right: 0 !important;
}

/* ========================================
   CALL SECTION RTL
   ======================================== */

html[dir="rtl"] .call-one__inner-content {
    flex-direction: row-reverse;
}

html[dir="rtl"] .call-one__left {
    text-align: right;
}

html[dir="rtl"] .call-one__details {
    flex-direction: row-reverse;
}

html[dir="rtl"] .call-one__icon {
    margin-right: 0;
    margin-left: 15px;
}

html[dir="rtl"] .call-one__content {
    text-align: right;
}

/* ========================================
   LET'S TALK SECTION RTL
   ======================================== */

html[dir="rtl"] .lets-talk__inner {
    flex-direction: row !important;
    justify-content: space-between !important;
}

html[dir="rtl"] .lets-talk__title {
    text-align: right !important;
}

html[dir="rtl"] .lets-talk__btn-boxes {
    flex-direction: row !important;
}

/* ========================================
   FOOTER RTL
   ======================================== */

html[dir="rtl"] .footer-widget__about,
html[dir="rtl"] .footer-widget__links,
html[dir="rtl"] .footer-widget__services,
html[dir="rtl"] .footer-widget__contact {
    text-align: right;
}

html[dir="rtl"] .footer-widget__about-text {
    text-align: right;
}

html[dir="rtl"] .footer-widget__contact-list li {
    flex-direction: row-reverse;
}

html[dir="rtl"] .footer-widget__contact-list li .icon {
    margin-right: 0;
    margin-left: 15px;
}

html[dir="rtl"] .footer-widget__links-list,
html[dir="rtl"] .footer-widget__links-list li {
    text-align: right;
}

html[dir="rtl"] .footer-widget__form {
    direction: rtl;
}

html[dir="rtl"] .footer-widget__input input {
    text-align: right;
    padding-left: 60px;
    padding-right: 20px;
}

html[dir="rtl"] .footer-widget__btn {
    left: 0;
    right: auto;
}

html[dir="rtl"] .site-footer__bottom-inner {
    flex-direction: row-reverse;
}

html[dir="rtl"] .site-footer__bottom-menu {
    flex-direction: row-reverse;
}

html[dir="rtl"] .site-footer__bottom-menu li {
    margin-left: 0;
    margin-right: 30px;
}

html[dir="rtl"] .site-footer__bottom-menu li:first-child {
    margin-right: 0;
}

/* ========================================
   BUTTONS RTL
   ======================================== */

html[dir="rtl"] .thm-btn {
    flex-direction: row-reverse;
}

/* Only flip the ICON container, NOT the text span */
html[dir="rtl"] .thm-btn .thm-btn-icon-box,
html[dir="rtl"] .thm-btn .thm-btn-icon-box .fas,
html[dir="rtl"] .thm-btn .thm-btn-icon-box .fa-arrow-right,
html[dir="rtl"] .thm-btn .thm-btn-icon-box i {
    margin-left: 0;
    margin-right: 10px;
    transform: scaleX(-1);
}

/* Ensure text span is NOT flipped */
html[dir="rtl"] .thm-btn .thm-btn-text,
html[dir="rtl"] .thm-btn span.thm-btn-text {
    transform: none !important;
    margin-right: 0;
    margin-left: 0;
}

/* ========================================
   ICONS - FLIP ARROWS FOR RTL
   ======================================== */

html[dir="rtl"] .icon-right-arrow,
html[dir="rtl"] .fa-arrow-right:not(.thm-btn-icon-box .fa-arrow-right),
html[dir="rtl"] .fas.fa-arrow-right:not(.thm-btn-icon-box .fas) {
    transform: scaleX(-1);
}


/* ========================================
   FORMS RTL
   ======================================== */

html[dir="rtl"] input,
html[dir="rtl"] textarea,
html[dir="rtl"] select {
    text-align: right;
}

html[dir="rtl"] .form-group label {
    text-align: right;
    display: block;
}

/* ========================================
   FLOATING ELEMENTS RTL
   ======================================== */

html[dir="rtl"] .float-left {
    float: right !important;
}

html[dir="rtl"] .float-right {
    float: left !important;
}

html[dir="rtl"] .ml-auto {
    margin-left: 0 !important;
    margin-right: auto !important;
}

html[dir="rtl"] .mr-auto {
    margin-right: 0 !important;
    margin-left: auto !important;
}

html[dir="rtl"] .text-left {
    text-align: right !important;
}

html[dir="rtl"] .text-right {
    text-align: left !important;
}

/* ========================================
   SCROLL TO TOP RTL
   ======================================== */

html[dir="rtl"] .scroll-to-top {
    right: auto;
    left: -12px;
    transform: rotate(90deg);
}

html[dir="rtl"] .scroll-to-top__text {
    text-transform: none !important;
}

/* ========================================
   SIDEBAR RTL
   ======================================== */

html[dir="rtl"] .xs-sidebar-widget {
    left: auto;
    right: 0;
    transform: translateX(100%);
    border-right: none;
    border-left: 5px solid rgba(255, 255, 255, 0.5);
}

html[dir="rtl"] .xs-sidebar-group.isActive .xs-sidebar-widget {
    transform: translateX(0%);
}

html[dir="rtl"] .sidebar-textwidget {
    text-align: right;
}

/* ========================================
   MODERN GLOBE LANGUAGE SWITCHER
   ======================================== */

.lang-globe-switcher {
    position: relative;
    display: flex;
    align-items: center;
    margin-right: 20px;
}

.lang-globe-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.lang-globe-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
}

.lang-globe-btn svg {
    width: 22px;
    height: 22px;
    fill: #fff;
}

.lang-dropdown {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 5px 25px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s ease;
    z-index: 1000;
    min-width: 140px;
    overflow: hidden;
}

.lang-globe-switcher:hover .lang-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.lang-dropdown a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    color: #333;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
}

.lang-dropdown a:hover {
    background: #f5f5f5;
    color: var(--gorent-base);
}

.lang-dropdown a.active {
    background: var(--gorent-base);
    color: #fff;
}

.lang-dropdown a .flag-icon {
    font-size: 18px;
}

html[dir="rtl"] .lang-globe-switcher {
    margin-right: 0;
    margin-left: 20px;
}

html[dir="rtl"] .lang-dropdown {
    right: auto;
    left: 0;
}

/* ========================================
   SLIDING TEXT RTL
   ======================================== */

html[dir="rtl"] .sliding-text-one__wrap {
    direction: ltr;
    /* Keep marquee direction */
}

html[dir="rtl"] .sliding-text__title {
    text-transform: none !important;
}

/* ========================================
   LIST ITEMS RTL
   ======================================== */

html[dir="rtl"] .list-unstyled {
    padding-left: 0;
    padding-right: 0;
}

html[dir="rtl"] ul,
html[dir="rtl"] ol {
    padding-right: 0;
}

/* ========================================
   RESPONSIVE RTL ADJUSTMENTS
   ======================================== */

@media (max-width: 1199px) {

    html[dir="rtl"] .main-menu__left,
    html[dir="rtl"] .main-menu__middle-box,
    html[dir="rtl"] .main-menu__right {
        order: unset;
    }

    html[dir="rtl"] .about-one__left,
    html[dir="rtl"] .about-one__right,
    html[dir="rtl"] .counter-one__left,
    html[dir="rtl"] .counter-one__right {
        padding: 0;
    }

    html[dir="rtl"] .call-one__inner-content,
    html[dir="rtl"] .lets-talk__inner {
        flex-direction: column;
    }
}

@media (max-width: 991px) {
    html[dir="rtl"] .main-menu__list {
        flex-direction: column;
    }

    html[dir="rtl"] .main-menu__list>li {
        margin-left: 0;
        margin-right: 0;
    }
}

/* ========================================
   MOBILE NAVIGATION RTL
   ======================================== */

html[dir="rtl"] .mobile-nav__container {
    text-align: right;
}

html[dir="rtl"] .mobile-nav__container .main-menu__list {
    flex-direction: column;
}

html[dir="rtl"] .mobile-nav__toggler {
    margin-left: 0;
    margin-right: auto;
}

/* ========================================
   BRAND/GALLERY SECTIONS RTL
   ======================================== */

html[dir="rtl"] .brand-one__carousel,
html[dir="rtl"] .gallery-one__carousel {
    direction: ltr;
    /* Keep carousel direction working */
}

/* ========================================
   LANGUAGE TOGGLE BUTTON - CIRCLE STYLE
   ======================================== */

.lang-quick-toggle {
    display: flex;
    align-items: center;
    margin-right: 15px;
}

.lang-toggle-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: transparent;
    color: var(--gorent-base, #FFB51D) !important;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none !important;
    border: 2px solid var(--gorent-base, #FFB51D);
    transition: all 0.3s ease;
    letter-spacing: 0 !important;
    text-transform: uppercase;
}

.lang-toggle-btn:hover {
    background: var(--gorent-base, #FFB51D);
    transform: scale(1.05);
    color: var(--gorent-black, #131222) !important;
}

/* RTL specific adjustments for toggle */
html[dir="rtl"] .lang-quick-toggle {
    margin-right: 0;
    margin-left: 15px;
}

/* ========================================
   HERO/BANNER SLIDER - RTL VISIBILITY FIX
   ======================================== */

html[dir="rtl"] .main-slider__content {
    opacity: 1 !important;
    visibility: visible !important;
}

html[dir="rtl"] .main-slider__sub-title,
html[dir="rtl"] .main-slider__title,
html[dir="rtl"] .main-slider__title span,
html[dir="rtl"] .main-slider__sub-title-two {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
}

html[dir="rtl"] .main-slider__btn-box,
html[dir="rtl"] .main-slider__video-link,
html[dir="rtl"] .main-slider__btn-and-video-box {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

html[dir="rtl"] .main-slider__video-icon {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Slider content text alignment for RTL */
html[dir="rtl"] .main-slider__content {
    text-align: right;
}

html[dir="rtl"] .main-slider__btn-and-video-box {
    justify-content: flex-start;
    flex-direction: row-reverse;
}

/* Ensure slider carousel items are visible */
html[dir="rtl"] .main-slider__carousel .item,
html[dir="rtl"] .main-slider__carousel .owl-item,
html[dir="rtl"] .main-slider__carousel .owl-item.active {
    opacity: 1 !important;
    visibility: visible !important;
}

html[dir="rtl"] .main-slider__bg {
    opacity: 1 !important;
}

/* ========================================
   FOOTER RTL ALIGNMENT FIX
   ======================================== */

html[dir="rtl"] .site-footer__top {
    direction: rtl;
    text-align: right;
}

html[dir="rtl"] .footer-widget__about,
html[dir="rtl"] .footer-widget__links,
html[dir="rtl"] .footer-widget__services,
html[dir="rtl"] .footer-widget__contact {
    text-align: right !important;
}

html[dir="rtl"] .footer-widget__title {
    text-align: right !important;
}

html[dir="rtl"] .footer-widget__links-list,
html[dir="rtl"] .footer-widget__contact-list {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

html[dir="rtl"] .footer-widget__links-list li,
html[dir="rtl"] .footer-widget__services li {
    text-align: right !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

html[dir="rtl"] .footer-widget__links-list li a,
html[dir="rtl"] .footer-widget__services li a {
    display: block;
    text-align: right;
}

html[dir="rtl"] .footer-widget__contact-list li {
    display: flex;
    flex-direction: row-reverse;
    text-align: right;
    justify-content: flex-end;
}

html[dir="rtl"] .footer-widget__contact-list li .icon {
    margin-left: 0;
    margin-right: 15px;
    order: 2;
}

html[dir="rtl"] .footer-widget__contact-list li p {
    text-align: right;
    order: 1;
}

html[dir="rtl"] .footer-widget__about-text {
    text-align: right !important;
}

html[dir="rtl"] .footer-widget__form {
    direction: rtl;
}

html[dir="rtl"] .footer-widget__input input {
    text-align: right;
    padding-right: 20px;
    padding-left: 50px;
}

html[dir="rtl"] .footer-widget__btn {
    right: auto;
    left: 0;
}

/* Footer bottom RTL */
html[dir="rtl"] .site-footer__bottom-inner {
    flex-direction: row-reverse;
}

html[dir="rtl"] .site-footer__bottom-menu {
    flex-direction: row-reverse;
}

/* ========================================
   ENHANCED NAVIGATION MENU RTL
   NOTE: Main navbar RTL rules are defined in the 
   "MAIN NAVIGATION BAR RTL - COMPLETE OVERHAUL" section
   above (around line 167). This section only contains
   supplementary rules that don't conflict.
   ======================================== */

/* Sidebar icon spacing */
html[dir="rtl"] .main-menu__nav-sidebar-icon {
    margin-left: 0 !important;
    margin-right: 15px !important;
}

/* ========================================
   FOOTER SUB-ITEMS ALIGNMENT FIX
   Ensure sub-items are properly aligned under titles
   ======================================== */

html[dir="rtl"] .footer-widget__links,
html[dir="rtl"] .footer-widget__services {
    direction: rtl !important;
}

html[dir="rtl"] .footer-widget__links-list {
    direction: rtl !important;
    text-align: right !important;
    padding-right: 0 !important;
    margin-right: 0 !important;
}

html[dir="rtl"] .footer-widget__links-list li {
    direction: rtl !important;
    text-align: right !important;
    display: block !important;
}

html[dir="rtl"] .footer-widget__links-list li a {
    direction: rtl !important;
    text-align: right !important;
    display: inline-block !important;
}

html[dir="rtl"] .footer-widget__links-list li a::before {
    margin-left: 10px !important;
    margin-right: 0 !important;
}

/* ========================================
   BUTTON ARROW ICONS FIX
   Ensure FontAwesome arrows display in buttons
   ======================================== */

html[dir="rtl"] .thm-btn span,
html[dir="rtl"] .thm-btn .fas,
html[dir="rtl"] .thm-btn .fa-arrow-right,
html[dir="rtl"] a.thm-btn span.fas,
html[dir="rtl"] button span.fas {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    display: inline-block !important;
    margin-left: 0 !important;
    margin-right: 10px !important;
}

/* For RTL, flip the arrow direction */
html[dir="rtl"] .thm-btn .fa-arrow-right::before {
    content: "\f060" !important;
    /* fa-arrow-left in RTL */
}

/* Ensure all button icons are visible */
html[dir="rtl"] .thm-btn span[class*="fa-"],
html[dir="rtl"] .thm-btn i[class*="fa-"],
html[dir="rtl"] .main-slider__btn-box span[class*="fa-"] {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* ========================================
   LTR NUMBERS IN RTL MODE
   Keep phone numbers, dates, and numerical values LTR
   ======================================== */

html[dir="rtl"] a[href^="tel:"],
html[dir="rtl"] .main-menu__call-number,
html[dir="rtl"] .main-menu__call-number a,
html[dir="rtl"] .footer-widget__contact-list a[href^="tel:"],
html[dir="rtl"] .main-menu__contact-list a[href^="tel:"],
html[dir="rtl"] .counter-one__count,
html[dir="rtl"] .odometer,
html[dir="rtl"] .pricing-one__price,
html[dir="rtl"] .pricing-one__amount {
    direction: ltr !important;
    unicode-bidi: embed !important;
    display: inline-block !important;
}

/* Ensure all phone numbers and emails stay LTR */
html[dir="rtl"] a[href^="tel:"],
html[dir="rtl"] a[href^="mailto:"] {
    direction: ltr !important;
    unicode-bidi: isolate !important;
}

/* Counter/Statistics numbers always LTR */
html[dir="rtl"] .counter-one__single,
html[dir="rtl"] .odometer-inside {
    direction: ltr !important;
}

/* Pricing numbers always LTR */
html[dir="rtl"] .pricing-one__price-box {
    direction: ltr !important;
    unicode-bidi: embed !important;
}

/* ========================================
   FOOTER CONTACT SECTION - اتصل بنا
   Icons should be LEFT of text, items aligned under title
   ======================================== */

html[dir="rtl"] .footer-widget__contact {
    direction: rtl !important;
    text-align: right !important;
}

html[dir="rtl"] .footer-widget__contact-list {
    direction: rtl !important;
    text-align: right !important;
    padding-right: 0 !important;
    margin-right: 0 !important;
}

html[dir="rtl"] .footer-widget__contact-list li {
    display: flex !important;
    flex-direction: row-reverse !important;
    /* Text first (right), icon second (left) */
    align-items: flex-start !important;
    justify-content: flex-start !important;
    /* Keep items together on right side */
    gap: 15px !important;
    text-align: right !important;
    direction: rtl !important;
}

html[dir="rtl"] .footer-widget__contact-list li .icon {
    flex-shrink: 0 !important;
}

html[dir="rtl"] .footer-widget__contact-list li p {
    text-align: right !important;
    flex: 1 !important;
}

/* ========================================
   ICON FONT FIX FOR ALL BUTTONS
   Ensure icomoon font is used for all icon- classes
   ======================================== */

html[dir="rtl"] [class^="icon-"],
html[dir="rtl"] [class*=" icon-"],
html[dir="rtl"] .icon-right-arrow,
html[dir="rtl"] .icon-right-arrow-1,
html[dir="rtl"] .icon-left-arrow,
html[dir="rtl"] .icon-left-arrow-1,
html[dir="rtl"] .icon-pin,
html[dir="rtl"] .icon-call,
html[dir="rtl"] .icon-envelope,
html[dir="rtl"] i[class^="icon-"],
html[dir="rtl"] span[class^="icon-"],
html[dir="rtl"] button i[class^="icon-"],
html[dir="rtl"] .thm-btn i[class^="icon-"] {
    font-family: 'icomoon' !important;
    speak: never !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    line-height: 1 !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

/* Flip arrow icons in RTL for buttons */
html[dir="rtl"] .thm-btn .icon-right-arrow::before,
html[dir="rtl"] .thm-btn .icon-right-arrow-1::before,
html[dir="rtl"] button .icon-right-arrow::before {
    content: "\e90c" !important;
    /* icon-left-arrow */
}

/* Footer newsletter button arrow */
html[dir="rtl"] .footer-widget__btn i.icon-right-arrow {
    font-family: 'icomoon' !important;
}

html[dir="rtl"] .footer-widget__btn i.icon-right-arrow::before {
    content: "\e90c" !important;
    /* icon-left-arrow for RTL */
}

/* Ensure all button arrows in thm-btn show correctly */
html[dir="rtl"] .thm-btn span.fas.fa-arrow-right {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
}

/* All icon- classes must use icomoon font */
html[dir="rtl"] .thm-btn span[class^="icon-"],
html[dir="rtl"] .thm-btn i[class^="icon-"],
html[dir="rtl"] a.thm-btn span[class^="icon-"],
html[dir="rtl"] button span[class^="icon-"],
html[dir="rtl"] button i[class^="icon-"] {
    font-family: 'icomoon' !important;
    display: inline-block !important;
    margin-left: 0 !important;
    margin-right: 10px !important;
}

/* ========================================
   SERVICE CARDS - RTL Fixes
   Move number badge from right to left
   ======================================== */

html[dir="rtl"] .services-one__count,
html[dir="rtl"] .services-two__count {
    right: auto !important;
    left: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-top-left-radius: 0 !important;
    border-bottom-right-radius: 15px !important;
    border-top-right-radius: 15px !important;
}

html[dir="rtl"] .services-one__count:after,
html[dir="rtl"] .services-two__count:after {
    border-bottom-left-radius: 0 !important;
    border-top-left-radius: 0 !important;
    border-bottom-right-radius: 15px !important;
    border-top-right-radius: 15px !important;
    transform: translateX(-55px) !important;
}

html[dir="rtl"] .services-one__single:hover .services-one__count:after,
html[dir="rtl"] .services-two__single:hover .services-two__count:after {
    transform: translateX(0px) !important;
}

/* Card shape decorations - flip to left side */
html[dir="rtl"] .services-one__single-shape-2,
html[dir="rtl"] .services-two__single-shape-2 {
    right: auto !important;
    left: -60px !important;
}

html[dir="rtl"] .services-one__single-shape-3,
html[dir="rtl"] .services-two__single-shape-3 {
    right: auto !important;
    left: -123px !important;
}

/* Service card text alignment */
html[dir="rtl"] .services-one__single,
html[dir="rtl"] .services-two__single {
    text-align: right !important;
}

/* ========================================
   PROCESS SECTION - RTL Fixes
   Number on LEFT, Icon on RIGHT, Arrow from Icon → Number
   ======================================== */

/* Reverse the icon box layout: Icon goes RIGHT, Number goes LEFT */
/* In RTL, 'row' naturally places first element (icon) on right side */
html[dir="rtl"] .process-one__icon-box {
    flex-direction: row !important;
}

/* Arrow shape positioning - starts from CENTER of icon, ends BEFORE the number */
html[dir="rtl"] .process-one__icon-shape {
    left: 90px !important;
    /* End before the number with gap */
    right: 30px !important;
    /* Start from center of icon */
}

/* Arrow head points LEFT (toward the number) */
html[dir="rtl"] .process-one__icon-shape::before {
    right: auto !important;
    left: -10px !important;
    clip-path: polygon(100% 0, 100% 100%, 0 50%) !important;
    /* Triangle pointing LEFT */
}

/* Process card text alignment */
html[dir="rtl"] .process-one__single {
    text-align: right !important;
}

/* ========================================
   ALL BUTTONS - RTL Fixes
   Arrow on LEFT of text, direction flipped
   ======================================== */

html[dir="rtl"] .thm-btn {
    display: inline-flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    gap: 10px !important;
}

html[dir="rtl"] .thm-btn span,
html[dir="rtl"] .thm-btn i {
    margin-left: 0 !important;
    margin-right: 0 !important;
    order: -1 !important;
}

/* Flip arrow direction for FontAwesome */
html[dir="rtl"] .thm-btn .fas.fa-arrow-right::before {
    content: "\f060" !important;
    /* fa-arrow-left */
}

/* Flip arrow direction for icomoon */
html[dir="rtl"] .thm-btn .icon-right-arrow::before,
html[dir="rtl"] .thm-btn .icon-right-arrow-1::before {
    content: "\e90c" !important;
    /* icon-left-arrow */
}

/* ========================================
   WHY CHOOSE CARDS - RTL Fixes
   ======================================== */

html[dir="rtl"] .why-choose-one__single {
    text-align: right !important;
}

html[dir="rtl"] .why-choose-one__single-inner {
    text-align: right !important;
}

/* ========================================
   ABOUT SECTION - RTL Fixes
   ======================================== */

html[dir="rtl"] .about-one__left-content {
    text-align: right !important;
}

html[dir="rtl"] .about-one__experience-box {
    right: auto !important;
    left: 0 !important;
}

/* ========================================
   TESTIMONIALS - RTL Fixes
   ======================================== */

html[dir="rtl"] .testimonial-one__single {
    text-align: right !important;
}

html[dir="rtl"] .testimonial-one__client-info {
    flex-direction: row-reverse !important;
    text-align: right !important;
}

/* ========================================
   FAQ SECTION - RTL Fixes
   ======================================== */

html[dir="rtl"] .faq-one__left {
    text-align: right !important;
}

html[dir="rtl"] .accrodion-title {
    text-align: right !important;
}

html[dir="rtl"] .accrodion .accrodion-title::before {
    left: 20px !important;
    right: auto !important;
}

html[dir="rtl"] .accrodion-content p {
    text-align: right !important;
}

/* ========================================
   PRICING CARDS - RTL Fixes
   ======================================== */

html[dir="rtl"] .pricing-one__single {
    text-align: right !important;
}

html[dir="rtl"] .pricing-one__points li {
    text-align: right !important;
    flex-direction: row-reverse !important;
}

html[dir="rtl"] .pricing-one__points li i {
    margin-left: 10px !important;
    margin-right: 0 !important;
}

/* ========================================
   GENERAL RTL ALIGNMENT FIXES
   ======================================== */

html[dir="rtl"] .section-title {
    text-align: right !important;
}

html[dir="rtl"] .section-title.text-center {
    text-align: center !important;
}

/* Row reverse for Bootstrap grid in specific sections */
html[dir="rtl"] .about-one .row {
    flex-direction: row-reverse !important;
}

/* Icon positioning in various elements */
html[dir="rtl"] .counter-one__icon {
    margin-left: 20px !important;
    margin-right: 0 !important;
}

/* ========================================
   FINAL NAVBAR RTL OVERRIDE - MAXIMUM PRIORITY
   These rules at end of file have highest cascade priority
   ======================================== */

/* FORCE header wrapper - use normal row direction */
html[dir="rtl"] .main-header .main-menu__wrapper-inner,
html[dir="rtl"] .main-menu .main-menu__wrapper-inner,
html[dir="rtl"] nav.main-menu .main-menu__wrapper-inner,
html[dir="rtl"] .stricky-header .main-menu__wrapper-inner,
html[dir="rtl"] header .main-menu__wrapper-inner,
html[dir="rtl"] .main-menu__wrapper .main-menu__wrapper-inner {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
}

/* Logo section - order:1 appears on RIGHT in RTL */
html[dir="rtl"] .main-header .main-menu__left,
html[dir="rtl"] .main-menu .main-menu__left,
html[dir="rtl"] header .main-menu__left,
html[dir="rtl"] nav.main-menu .main-menu__left,
html[dir="rtl"] .main-menu__wrapper-inner .main-menu__left,
html[dir="rtl"] .stricky-header .main-menu__left {
    order: 1 !important;
    flex-shrink: 0 !important;
}

/* Menu section - order:2 stays in CENTER */
html[dir="rtl"] .main-header .main-menu__middle-box,
html[dir="rtl"] .main-menu .main-menu__middle-box,
html[dir="rtl"] header .main-menu__middle-box,
html[dir="rtl"] nav.main-menu .main-menu__middle-box,
html[dir="rtl"] .main-menu__wrapper-inner .main-menu__middle-box,
html[dir="rtl"] .stricky-header .main-menu__middle-box {
    order: 2 !important;
    flex: 1 1 auto !important;
}

/* Actions section - order:3 appears on LEFT in RTL */
/* Note: Do NOT use row-reverse - items are already in correct order for RTL mirror */
html[dir="rtl"] .main-header .main-menu__right,
html[dir="rtl"] .main-menu .main-menu__right,
html[dir="rtl"] header .main-menu__right,
html[dir="rtl"] nav.main-menu .main-menu__right,
html[dir="rtl"] .main-menu__wrapper-inner .main-menu__right,
html[dir="rtl"] .stricky-header .main-menu__right {
    order: 3 !important;
    flex-shrink: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
}

/* Call section inside right - icon to left of text */
html[dir="rtl"] .main-header .main-menu__call,
html[dir="rtl"] .main-menu .main-menu__call,
html[dir="rtl"] .main-menu__right .main-menu__call {
    flex-direction: row-reverse !important;
}

html[dir="rtl"] .main-menu__call .main-menu__call-icon {
    margin-right: 0 !important;
    margin-left: 10px !important;
}

html[dir="rtl"] .main-menu__call .main-menu__call-content {
    text-align: right !important;
}

/* ========================================
   MOBILE NAV RTL - Open from RIGHT side
   ======================================== */

/* Mobile nav wrapper - position on RIGHT side for RTL */
html[dir="rtl"] .mobile-nav__wrapper {
    left: auto !important;
    right: 0 !important;
    transform: translateX(100%) !important;
    transform-origin: right center !important;
    -webkit-transform: translateX(100%) !important;
    -webkit-transform-origin: right center !important;
    display: flex !important;
    justify-content: flex-end !important;
}

html[dir="rtl"] .mobile-nav__wrapper.expanded {
    transform: translateX(0%) !important;
    -webkit-transform: translateX(0%) !important;
}

/* Mobile nav overlay - cover full screen */
html[dir="rtl"] .mobile-nav__overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
}

/* Mobile nav content - stay on RIGHT side, animate from right */
html[dir="rtl"] .mobile-nav__content {
    position: absolute !important;
    right: 0 !important;
    left: auto !important;
    top: 0 !important;
    bottom: 0 !important;
    transform: translateX(100%) !important;
    -webkit-transform: translateX(100%) !important;
    text-align: right !important;
    direction: rtl !important;
}

html[dir="rtl"] .mobile-nav__wrapper.expanded .mobile-nav__content {
    transform: translateX(0) !important;
    -webkit-transform: translateX(0) !important;
}

html[dir="rtl"] .mobile-nav__container {
    text-align: right !important;
}

/* Close button - position on LEFT in RTL */
html[dir="rtl"] .mobile-nav__close,
html[dir="rtl"] .mobile-nav__content .mobile-nav__close {
    position: absolute !important;
    right: auto !important;
    left: 15px !important;
    top: 20px !important;
}

html[dir="rtl"] .mobile-nav__contact li {
    /* Keep LTR layout for contact items (icon LEFT, text RIGHT) like English version */
    flex-direction: row !important;
    direction: ltr !important;
    text-align: left !important;
    justify-content: flex-start !important;
}

html[dir="rtl"] .mobile-nav__contact li i {
    /* Keep margin-right like English version for gap between icon and text */
    margin-right: 10px !important;
    margin-left: 0 !important;
}

/* Social icons in mobile nav - Fix empty boxes issue */
html[dir="rtl"] .mobile-nav__social a {
    direction: ltr !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: "Font Awesome 5 Brands", "Font Awesome 5 Free", FontAwesome, sans-serif !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

/* Keep social icon container LTR for proper icon rendering */
html[dir="rtl"] .mobile-nav__top .mobile-nav__social {
    direction: ltr !important;
}

/* ========================================
   SIDEBAR WIDGET RTL - Open from RIGHT side
   ======================================== */

/* Main sidebar widget - position on RIGHT for RTL */
html[dir="rtl"] .xs-sidebar-widget {
    left: auto !important;
    right: 0 !important;
    transform: translateX(100%) !important;
    border-right: none !important;
    border-left: 5px solid rgba(255, 255, 255, 0.5) !important;
}

html[dir="rtl"] .xs-sidebar-group.isActive .xs-sidebar-widget {
    transform: translateX(0%) !important;
}

/* Sidebar overlay - flip animation direction */
html[dir="rtl"] .xs-sidebar-group .xs-overlay {
    transform: translateX(100%) !important;
}

html[dir="rtl"] .xs-sidebar-group.isActive .xs-overlay {
    transform: translateX(0%) !important;
}

/* Sidebar container slides from right */
html[dir="rtl"] .sidebar-widget-container {
    transform: translateX(100%) !important;
}

html[dir="rtl"] .xs-sidebar-group.isActive .sidebar-widget-container {
    transform: translateX(0%) !important;
}

/* Close button on LEFT side in RTL */
html[dir="rtl"] .xs-sidebar-group .widget-heading {
    right: auto !important;
    left: 0 !important;
}

/* ========================================
   SIDEBAR CONTACT FORM RTL - Centering Fix
   ======================================== */

/* Sidebar text alignment */
html[dir="rtl"] .sidebar-textwidget {
    text-align: right !important;
    direction: rtl !important;
    padding: 70px 20px !important;
}

html[dir="rtl"] .sidebar-info-contents {
    text-align: right !important;
}

html[dir="rtl"] .content-inner {
    text-align: right !important;
}

/* Form centering and spacing */
html[dir="rtl"] .xs-sidebar-group .form-inner {
    text-align: right !important;
    padding: 0 !important;
}

html[dir="rtl"] .xs-sidebar-group .form-inner h4 {
    text-align: right !important;
    margin-bottom: 15px !important;
}

/* Form inputs - full width and centered */
html[dir="rtl"] .xs-sidebar-group .form-inner .form-group {
    margin-bottom: 15px !important;
    padding: 0 !important;
}

html[dir="rtl"] .xs-sidebar-group .form-inner .form-group input,
html[dir="rtl"] .xs-sidebar-group .form-inner .form-group textarea {
    width: 100% !important;
    text-align: right !important;
    direction: rtl !important;
    padding: 12px 15px !important;
    box-sizing: border-box !important;
}

/* Submit button - centered */
html[dir="rtl"] .xs-sidebar-group .form-inner .form-group.message-btn {
    text-align: center !important;
}

html[dir="rtl"] .xs-sidebar-group .form-inner .form-group button {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
}

/* Content box spacing */
html[dir="rtl"] .xs-sidebar-group .content-box {
    padding-right: 0 !important;
    padding-left: 0 !important;
    text-align: right !important;
}

html[dir="rtl"] .xs-sidebar-group .content-box h4 {
    text-align: right !important;
}

html[dir="rtl"] .xs-sidebar-group .content-box p {
    text-align: right !important;
}

/* Sidebar contact info RTL */
html[dir="rtl"] .sidebar-contact-info {
    text-align: right !important;
}

html[dir="rtl"] .sidebar-contact-info h4 {
    text-align: right !important;
}

html[dir="rtl"] .sidebar-contact-info ul {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

html[dir="rtl"] .sidebar-contact-info ul li {
    text-align: right !important;
    display: flex !important;
    flex-direction: row-reverse !important;
    justify-content: flex-end !important;
    gap: 10px !important;
}

html[dir="rtl"] .sidebar-contact-info ul li span {
    order: 2 !important;
}

/* Social links - centered in RTL */
html[dir="rtl"] .xs-sidebar-group .thm-social-link1 {
    text-align: center !important;
}

html[dir="rtl"] .xs-sidebar-group .thm-social-link1 ul {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    padding: 0 !important;
}

html[dir="rtl"] .xs-sidebar-group .thm-social-link1 ul li {
    margin-right: 0 !important;
    margin-left: 6px !important;
}

/* ========================================
   ULTIMATE PRIORITY - MOBILE NAVIGATION FIX
   This MUST load last to override everything
   ======================================== */
@media screen and (max-width: 1199px) {

    /* FORCE HIDE desktop menu on mobile - maximum priority */
    html[dir="rtl"] .main-menu__list,
    html[dir="rtl"] .main-menu .main-menu__list,
    html[dir="rtl"] .main-menu__main-menu-box>.main-menu__list,
    body[class] html[dir="rtl"] .main-menu__list {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
        position: absolute !important;
        left: -9999px !important;
    }

    /* EXCEPTION: SHOW menu inside mobile nav container */
    html[dir="rtl"] .mobile-nav__container .main-menu__list,
    html[dir="rtl"] .mobile-nav__content .main-menu__list,
    html[dir="rtl"] .mobile-nav__wrapper .main-menu__list {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: auto !important;
        height: auto !important;
        overflow: visible !important;
        position: static !important;
        left: auto !important;
    }

    html[dir="rtl"] .mobile-nav__container .main-menu__list>li,
    html[dir="rtl"] .mobile-nav__content .main-menu__list>li {
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        height: auto !important;
        position: static !important;
    }

    /* FORCE HIDE right section on mobile */
    html[dir="rtl"] .main-menu__right,
    html[dir="rtl"] .main-menu .main-menu__right {
        display: none !important;
        visibility: hidden !important;
    }

    /* FORCE SHOW hamburger and position it */
    html[dir="rtl"] .mobile-nav__toggler {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* MOBILE NAVBAR LAYOUT - hamburger LEFT, logo RIGHT */
    /* Use multiple selectors with MAXIMUM specificity to override global rules at lines 272-282 */
    html[dir="rtl"] .main-menu__wrapper-inner,
    html[dir="rtl"] .main-menu .main-menu__wrapper-inner,
    html[dir="rtl"] .main-header .main-menu .main-menu__wrapper-inner {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        direction: ltr !important;
        width: 100% !important;
    }

    /* LOGO ORDER - must use same or higher specificity than lines 272-276 */
    html[dir="rtl"] .main-menu__left,
    html[dir="rtl"] .main-menu .main-menu__left,
    html[dir="rtl"] .main-header .main-menu .main-menu__left,
    html[dir="rtl"] nav.main-menu .main-menu__left {
        order: 2 !important;
    }

    /* HAMBURGER ORDER - must use same or higher specificity than lines 279-282 */
    html[dir="rtl"] .main-menu__middle-box,
    html[dir="rtl"] .main-menu .main-menu__middle-box,
    html[dir="rtl"] .main-header .main-menu .main-menu__middle-box,
    html[dir="rtl"] nav.main-menu .main-menu__middle-box {
        order: 1 !important;
        width: auto !important;
    }
}