/*
Theme Name: Bugfree RTL
Description: Production-Ready Right-to-Left (RTL) Stylesheet for Arabic Website
Version: 1.0.3
Text Domain: bugfree
*/

/* ==========================================================================
   01. GLOBAL & TYPOGRAPHY (RTL & ARABIC LIGATURE FIXES)
   ========================================================================== */

html,
body {
    direction: rtl;
    unicode-bidi: embed;
    text-align: right;
}

/* Force normal letter-spacing to prevent Arabic letter disconnection */
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
span,
button,
input,
select,
textarea,
label,
.btn-default,
.elementskit-btn,
.wp-block-button,
.wp-element-button,
.elementor-heading-title,
.section-title,
.entry-title,
.widget-title,
.elementskit-navbar-nav,
.nav-links,
.menu-item,
.ekit-menu-nav-link,
.badge,
.ekit-icon-box-badge,
.btn-wraper,
.form-btn,
.newsletter-btn {
    letter-spacing: normal !important;
}

/* Reset JS Split-Text animations for Arabic compatibility */
.split-char,
.split-word,
.split-line,
.char,
.word,
.line,
.split-text,
.elementor-heading-title .char,
.elementor-heading-title .word {
    display: inline !important;
    letter-spacing: normal !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
}


/* ==========================================================================
   02. HEADER, NAVIGATION & DROPDOWNS
   ========================================================================== */

/* Submenu & Dropdown Alignment for RTL */
.main-menu ul li.menu-item-has-children>a::after,
.elementskit-submenu-indicator {
    margin-right: 8px !important;
    margin-left: 0 !important;
}

.main-menu ul li .sub-menu,
.elementskit-dropdown,
.elementskit-submenu-panel {
    right: 0 !important;
    left: auto !important;
    text-align: right !important;
}

.main-menu ul li .sub-menu .sub-menu,
.elementskit-dropdown .elementskit-dropdown,
.elementskit-submenu-panel .elementskit-submenu-panel {
    right: 100% !important;
    left: auto !important;
}

.main-menu ul li:last-child {
    margin-left: 0;
    margin-right: 0;
}

.main-menu ul li.menu-item-has-children>a:after {
    margin-right: 8px;
    margin-left: 0;
}

.main-menu ul ul li.menu-item-has-children>a:after {
    left: 15px;
    right: auto;
}

.main-menu ul li.highlighted-menu a:after {
    right: 0;
    left: auto;
    transform: translate(100%, 0) rotate(10deg);
    transform-origin: top right;
}

.main-menu ul ul {
    right: 0;
    left: auto;
}

.main-menu ul ul ul {
    right: 100%;
    left: auto;
}

.slicknav_btn {
    float: left;
}

.slicknav_menu .slicknav_menutxt {
    float: right;
}

.slicknav_menu .slicknav_icon {
    margin: .188em .438em 0 0;
    float: right;
}

.slicknav_nav .slicknav_arrow {
    margin: 0 .4em 0 0;
}

.slicknav_nav ul {
    margin: 0 10px 0 0;
}

.slicknav_nav .slicknav_txtnode {
    margin-right: 15px;
    margin-left: 0;
}

.slicknav_brand {
    float: right;
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(1) {
    transform: rotate(-45deg) translate(5px, 5px);
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(3) {
    transform: rotate(45deg) translate(5px, -5px);
}

.slicknav_nav>ul {
    margin-right: 0;
    margin-left: 0;
}

.slicknav_arrow:after {
    margin-right: 8px;
    margin-left: 0;
    float: left;
}

.page-header-box {
    text-align: right;
}

.footer-menu {
    text-align: left;
}

.footer-menu ul li {
    margin-right: 30px;
    margin-left: 0;
}

.wp-block-navigation__responsive-container-content ul ul li {
    padding-right: 0;
    padding-left: 0;
}

.main-header .ekit-menu-nav-link>i {
    padding-left: 0;
    padding-right: 0;
}

.testimonial-item-gold .elementskit-single-testimonial-slider .elementskit-commentor-header .elementskit-watermark-icon {
    left: 40px !important;
    right: auto !important;
}


/* ==========================================================================
   03. LAYOUT, GRID & FLEXBOX
   ========================================================================== */



/* ==========================================================================
   04. COMPONENTS, BUTTONS & CARDS
   ========================================================================== */

.btn-default::after {
    left: 0;
    right: auto;
}

.btn-default:hover::after {
    left: auto;
    right: 0;
}

.btn-default svg {
    margin-right: 10px;
    margin-left: 0;
}

.btn-default i {
    margin-right: 13px;
    margin-left: 0;
}

.btn-default:hover svg,
.btn-default:hover i {
    transform: translateX(-3px);
}

.elementor-widget-elementskit-creative-button .ekit_position_aware:hover svg {
    transform: translateX(-2px);
}

.post-item-btn a svg {
    margin-right: 9px;
    margin-left: 0;
}

.post-item-btn a i {
    margin-right: 9px;
    margin-left: 0;
}

.post-item-btn a:hover svg,
.post-item-btn a:hover i {
    transform: translateX(-2px);
}

div:not(.elementor-image-gallery) .gallery .gallery-item {
    margin-left: 30px;
    margin-right: 0;
}

div:not(.elementor-image-gallery) .gallery.gallery-columns-2 .gallery-item:nth-of-type(2n + 2) {
    margin-left: 0;
    margin-right: 0;
}

div:not(.elementor-image-gallery) .gallery.gallery-columns-3 .gallery-item:nth-of-type(3n + 3) {
    margin-left: 0;
    margin-right: 0;
}

div:not(.elementor-image-gallery) .gallery.gallery-columns-4 .gallery-item:nth-of-type(4n + 4) {
    margin-left: 0;
    margin-right: 0;
}

div:not(.elementor-image-gallery) .gallery.gallery-columns-5 .gallery-item:nth-of-type(5n + 5) {
    margin-left: 0;
    margin-right: 0;
}

div:not(.elementor-image-gallery) .gallery.gallery-columns-6 .gallery-item:nth-of-type(6n + 6) {
    margin-left: 0;
    margin-right: 0;
}

div:not(.elementor-image-gallery) .gallery.gallery-columns-7 .gallery-item:nth-of-type(7n + 7) {
    margin-left: 0;
    margin-right: 0;
}

div:not(.elementor-image-gallery) .gallery.gallery-columns-8 .gallery-item:nth-of-type(8n + 8) {
    margin-left: 0;
    margin-right: 0;
}

div:not(.elementor-image-gallery) .gallery.gallery-columns-9 .gallery-item:nth-of-type(9n + 9) {
    margin-left: 0;
    margin-right: 0;
}

.comment-form .comment-form-cookies-consent input[type="checkbox"] {
    right: 0;
    left: auto;
    margin-left: 4px;
    margin-right: 0;
}

.service-item-body .elementskit-infobox .box-footer .btn-wraper a:hover svg {
    transform: translateX(-2px);
}

.our-blog .elementskit-post-image-card .btn-wraper .elementskit-btn svg,
.our-blog-gold .elementskit-post-image-card .btn-wraper .elementskit-btn svg {
    margin-right: 8px;
    margin-left: 0;
    transform: translateX(2px);
}

.faq-accordion .elementskit-accordion .elementskit-card .number {
    margin-left: 5px;
    margin-right: 0;
}

.project-item-btn {
    left: 30px;
    right: auto;
}

.project-item-content ul li a {
    padding: 9px 34px 9px 16px;
}

.project-item-content ul li a::before {
    right: 16px;
    left: auto;
}

.project-process-step-item:before {
    left: -8.073vw;
    right: auto;
}

.at-animation-image-style-1 img {
    clip-path: inset(0 0 0 100%);
}

.at-distortion-effect canvas {
    right: 0;
    left: auto;
}

#ball {
    right: 0;
    left: auto;
}

body.fancy-scrollbar::-webkit-scrollbar-track {
    border-right: 1px solid var(--e-global-color-primary);
    border-left: none;
}

.copyright {
    text-align: left;
}

.alignright {
    margin: 5px 20px 20px 0;
    float: left;
}

.alignleft {
    margin: 5px 0 20px 20px !important;
    float: right;
}

a img.alignright {
    margin: 5px 20px 20px 0;
    float: left;
}

a img.alignnone {
    margin: 5px 0 20px 20px;
}

a img.alignleft {
    margin: 5px 0 20px 20px;
    float: right;
}

.wp-caption.alignnone {
    margin: 5px 0 20px 20px;
}

.wp-caption.alignleft {
    margin: 5px 0 20px 20px;
}

.wp-caption.alignright {
    margin: 5px 20px 20px 0;
}

.screen-reader-text:focus {
    right: 5px;
    left: auto;
}

.wp-block-social-links li {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.wp-block-gallery ul li {
    padding-right: 0;
    padding-left: 0;
}

.section-title .elementor-heading-title {
    padding-right: 19px;
    padding-left: 0;
}

.section-title .elementor-heading-title::before {
    right: 0;
    left: auto;
}

.bugfree-hide-small-icon .section-title .elementor-heading-title {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.skills-progress-bars .content-group .skill-bar-content {
    margin: 0 0 15px 40px !important;
}

.skills-progress-bars .single-skill-bar .number-percentage-wraper {
    left: 0;
    right: auto;
}

.page-category-list .elementor-icon-list-text {
    padding-left: 10px;
    padding-right: 0;
}


/* ==========================================================================
   05. SLIDERS, CAROUSELS & ICONS
   ========================================================================== */

/* Directional Icon & Arrow Flipping */
.fa-arrow-right,
.fa-chevron-right,
.fa-angle-right,
.fa-long-arrow-alt-right,
.bi-arrow-right,
.slick-next,
.slick-prev,
.swiper-button-next,
.swiper-button-prev,
.btn-default svg,
.btn-default i,
.elementskit-btn svg,
.elementskit-btn i,
.slicknav_arrow {
    transform: scaleX(-1);
}

.btn-default:hover svg,
.btn-default:hover i,
.elementskit-btn:hover svg {
    transform: translateX(-3px) scaleX(-1);
}



/* ==========================================================================
   06. FORMS, WIDGETS & FOOTER
   ========================================================================== */

.footer-social ul li {
    margin-left: 12px;
    margin-right: 0;
}

.post-single-meta ul li {
    margin-left: 15px;
    margin-right: 0;
}

.post-single-meta ul li:last-child {
    margin-left: 0;
    margin-right: 0;
}

.post-single-meta ul li i {
    margin-left: 8px;
    margin-right: 0;
}

.post-entry ul {
    padding-right: 20px;
    padding-left: 0;
}

.post-entry blockquote {
    padding: 30px 90px 30px 30px !important;
}

.post-entry table {
    border-right: 1px solid var(--e-global-color-primary);
    border-left: none;
}

.post-entry table tr td,
.post-entry table tr th {
    border-left: 1px solid var(--e-global-color-primary);
    border-right: none;
}

.post-entry .wp-block-latest-posts.wp-block-latest-posts__list {
    padding-right: 20px;
    padding-left: 0;
}

.post-social-sharing {
    text-align: left;
}

.post-social-sharing ul li {
    margin-left: 12px;
    margin-right: 0;
}

.post-social-sharing ul li:last-child {
    margin-left: 0;
    margin-right: 0;
}

ul.wp-block-post-template li {
    padding-right: 0;
    padding-left: 0;
}

.wp-block-latest-comments {
    padding-right: 0;
    padding-left: 0;
}

.post-password-form input[type="submit"] {
    margin-right: 10px;
    margin-left: 0;
}

aside.widget ul {
    padding-right: 20px !important;
    padding-left: 0 !important;
}

aside.widget ul ul {
    margin-right: -10px;
    margin-left: 0;
}

aside.widget ul.wp-block-social-links {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

aside.widget.widget_recent_entries ul li {
    padding-right: 0;
    padding-left: 0;
}

aside.widget table {
    border-right: 1px solid var(--e-global-color-primary);
    border-left: none;
}

aside.widget table tr td,
aside.widget table tr th {
    border-left: 1px solid var(--e-global-color-primary);
    border-right: none;
}

.comment-form .comment-form-author,
.comment-form .comment-form-email,
.comment-form .comment-form-author,
.comment-form .comment-form-email {
    margin-left: 30px;
    margin-right: 0;
}

.comment-form .comment-form-cookies-consent {
    padding-right: 20px;
    padding-left: 0;
}

.comment-list .comment .comment-meta .comment-author img {
    margin-left: 10px;
    margin-right: 0;
}

.comment-list .comment .comment-meta .comment-metadata .comment-edit-link {
    margin-right: 10px;
    margin-left: 0;
}

.comment-content table {
    border-right: 1px solid var(--e-global-color-primary);
    border-left: none;
}

.comment-content table tr td,
.comment-content table tr th {
    border-left: 1px solid var(--e-global-color-primary);
    border-right: none;
}

.comment-content ul {
    padding-right: 20px;
    padding-left: 0;
}

.footer-social-icons-prime ul li a svg {
    margin-left: 5px;
    margin-right: 0;
}


/* ==========================================================================
   07. RESPONSIVE & MEDIA QUERIES
   ========================================================================== */

@media only screen and (max-width: 991px) {

    .post-entry blockquote {

        padding: 20px 70px 20px 20px !important;
    }

    .post-social-sharing {

        text-align: right;
    }

}


@media only screen and (max-width: 767px) {

    .post-single-meta ul li {

        margin-left: 14px;
        margin-right: 0;
    }

}


@media only screen and (max-width: 991px) {

    div:not(.elementor-image-gallery) .gallery.gallery-columns-3 .gallery-item:nth-of-type(3n + 3),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-4 .gallery-item:nth-of-type(4n + 4),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-5 .gallery-item:nth-of-type(5n + 5),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-6 .gallery-item:nth-of-type(6n + 6),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-7 .gallery-item:nth-of-type(7n + 7),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-8 .gallery-item:nth-of-type(8n + 8),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-9 .gallery-item:nth-of-type(9n + 9) {

        margin-left: 30px;
        margin-right: 0;
    }

    div.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item:nth-of-type(2n + 2),
    div.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item:nth-of-type(3n + 3),
    div.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item:nth-of-type(4n + 4),
    div.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item:nth-of-type(5n + 5),
    div.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item:nth-of-type(6n + 6),
    div.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item:nth-of-type(7n + 7),
    div.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item:nth-of-type(8n + 8),
    div.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item:nth-of-type(9n + 9),
    div.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item:nth-of-type(10n + 10),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-3 .gallery-item:nth-of-type(2n + 2),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-4 .gallery-item:nth-of-type(2n + 2),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-5 .gallery-item:nth-of-type(2n + 2),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-6 .gallery-item:nth-of-type(2n + 2),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-7 .gallery-item:nth-of-type(2n + 2),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-8 .gallery-item:nth-of-type(2n + 2),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-9 .gallery-item:nth-of-type(2n + 2) {

        margin-left: 0;
        margin-right: 0;
    }

}


@media only screen and (max-width: 767px) {

    div:not(.elementor-image-gallery) .gallery .gallery-item,
    div:not(.elementor-image-gallery) .gallery.gallery-columns-2 .gallery-item:nth-of-type(2n + 2),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-3 .gallery-item:nth-of-type(3n + 3),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-4 .gallery-item:nth-of-type(4n + 4),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-5 .gallery-item:nth-of-type(5n + 5),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-6 .gallery-item:nth-of-type(6n + 6),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-7 .gallery-item:nth-of-type(7n + 7),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-8 .gallery-item:nth-of-type(8n + 8),
    div:not(.elementor-image-gallery) .gallery.gallery-columns-9 .gallery-item:nth-of-type(9n + 9) {

        margin-left: 0;
        margin-right: 0;
    }

}


@media only screen and (max-width: 991px) {

    .comment-list .children {

        padding-right: 20px;
        padding-left: 0;
    }

}


@media only screen and (max-width: 767px) {

    .comment-form .comment-form-author,
    .comment-form .comment-form-email,
    .comment-form .comment-form-url {

        margin-left: 0;
        margin-right: 0;
    }

}


@media only screen and (max-width: 1024px) {

    .elementskit-navbar-nav .elementskit-submenu-panel {

        margin-right: 20px;
        margin-left: 0;
    }

}


@media only screen and (max-width: 991px) {

    .section-title .elementor-heading-title {

        padding-right: 14px;
        padding-left: 0;
    }

}


@media only screen and (max-width: 991px) {

    .testimonial-item-gold .elementskit-single-testimonial-slider .elementskit-commentor-header .elementskit-watermark-icon {

        left: 20px !important;
        right: auto !important;
    }

}


@media only screen and (max-width: 991px) {

    .project-item-btn {

        left: 20px;
        right: auto;
    }

    .project-item-content ul li a {

        padding: 8px 26px 8px 12px;
    }

    .project-item-content ul li a::before {

        right: 12px;
        left: auto;
    }

}

/* ==========================================================================
   08. LIVE SITE COMPARISON FIXES (NEWSLETTER, TEL, PROCESS & BADGES)
   ========================================================================== */

/* 1. Footer Newsletter Form Alignment */
.wpcf7-form,
.footer-newsletter-form,
.elementor-widget-wpcf7 .wpcf7-form {
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center;
}

.wpcf7-form-control.wpcf7-email,
.footer-newsletter-form input[type="email"] {
    border-radius: 0 10px 10px 0 !important;
    text-align: right !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.wpcf7-form-control.wpcf7-submit,
.footer-newsletter-form input[type="submit"],
.footer-newsletter-form button {
    border-radius: 10px 10px 10px 10px !important;
    margin-right: 0 !important;
}

/* 2. Telephone Numbers & International Formatting (+966...) */
a[href^="tel:"],
.phone-number,
.footer-contact-info a,
.footer-contact-info p,
.ekit_global_links p {
    direction: ltr !important;
    unicode-bidi: embed !important;
    display: inline-block;
    text-align: right;
}

/* 3. Process Step Connector Lines */
.project-process-step-item:before {
    right: -8.073vw !important;
    left: auto !important;
}

/* 4. Sub-title Badges & Dots */
.section-title .elementor-heading-title::before,
.sub-title-badge::before {
    right: 0 !important;
    left: auto !important;
    margin-left: 8px !important;
    margin-right: 0 !important;
}

.elementskit-entry-thumb + a,
.elementskit-btn {
    float: right !important;
    text-align: right;
}
