/* RTL Styles for Arabic support */
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
a,
li,
button,
input,
textarea,
select,
label,
.c-btn,
.c-heading__title,
.c-heading__sub,
.c-heading__pre {
    direction: rtl;
    unicode-bidi: embed;
    font-family: 'Cairo', sans-serif !important;
}

.m-slider {
    direction: ltr !important
}

/* Ensure no other font overrides strictly */
*:not(.fa):not(.fab):not(.fas):not(.far):not(.icon) {
    font-family: 'Cairo', sans-serif !important;
}

/* General Layout Flips */
.container,
.row,
.col {
    direction: rtl;
}

/* Text Alignments */
.text-left {
    text-align: right;
}

.text-right {
    text-align: left;
}

/* Margins and Paddings overrides */
.mr-auto {
    margin-right: 0 !important;
    margin-left: auto !important;
}

.ml-auto {
    margin-left: 0 !important;
    margin-right: auto !important;
}

/* Hero Section Specifics */
.c-heading__pre,
.c-heading__title,
.c-heading__sub {
    text-align: right;
}

/* Force Hero Background Columns to LTR (Left alignment) */
.hero-bg_wrap-cols {
    direction: ltr !important;
    justify-content: flex-start !important;
    /* Ensure it stays positioned on the left */
    left: 0 !important;
    right: auto !important;
}

.hero-bg-gradient_overlay:after {
    right: 0 !important;
    left: auto !important;
}

.hero-bg_wrap-col {
    direction: ltr !important;
    text-align: left !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

/* Inverted directions for icons if needed */
.c-btn__ico {
    margin-left: 0;
    margin-right: 10px;
    transform: scaleX(-1);
}

/* Form Styles */
.gform_wrapper {
    text-align: right;
}

.gfield_label {
    text-align: right;
}

.ginput_container {
    text-align: right;
}

/* Download Form Section */
.l-download-form .c-heading {
    text-align: right;
}

/* Navigation */
.site-header__col.-left {
    float: right;
}

.site-header__col.-right {
    float: left;
}

/* Make sure the scrollbar is on the left if supported, otherwise standard browser behavior handles it */

/* Client Testimonials Section */
.client-testimonials__text,
.client-testimonials__name,
.client-testimonials__position,
.client-testimonials__title,
.client-testimonials__quote {
    text-align: right;
}

.client-testimonials .gallery-bottom {
    padding-right: var(--l-gap);
    padding-left: 0 !important;
}

.c-accordion__content p:last-child {
    margin-bottom: 0;
    text-align: right;
}

/* Slider Arrows Flip */
.client-testimonials__arrows .swiper-button-next,
.client-testimonials__arrows .swiper-button-prev {
    transform: rotate(180deg);
}

/* Ensure Swiper Containers inherit RTL */
.swiper-container {
    direction: rtl;
}

.video-trigger.m-banner__video-container {
    margin-top: 100px !important;
}

/* Web Services RTL */
.web-service {
    text-align: right !important;
    direction: rtl !important;
}

.web-service .c-heading,
.web-service .c-block__text {
    text-align: right !important;
}

.web-service .expander {
    display: none;
    right: 0 !important;
    left: auto !important;
    transform: scaleX(-1);
    /* Flip gradient image if needed */
    transform-origin: right !important;
    /* Ensure expansion starts from right */
}

/* Fix hover image position */
.web-service .c-image {
    right: auto !important;
    left: 0 !important;
}

/* Ensure icon stays right */
.web-service .c-icon {
    margin-left: 20px;
    margin-right: 0 !important;
}

.s-web-services .web-service.-white:before {
    left: auto !important;
    right: 0 !important;
    transform-origin: right !important;
    transition: all 0.5s ease !important;
}

/* Fix User Reported Issues (Step 518) */

/* 1. p in class c-block__text is-wysiwyg -> Align Right */
.c-block__text.is-wysiwyg p,
.c-block__text.is-wysiwyg {
    text-align: right !important;
}

/* 2. img in class c-image__media c-image__primary -> Align Right (assuming they mean it's stuck on left) */
.c-image__media.c-image__primary img,
.c-image__media.c-image__primary {
    float: right !important;
    /* Try float first if it's a layout issue */
    margin-left: 0 !important;
    margin-right: auto !important;
    /* Or auto margins if flex */
}

/* If it's absolute positioned: */
.c-image__media.c-image__primary {
    right: 0 !important;
    left: auto !important;
}

/* 3. img in class expander -> Align Left */
.expander img {
    left: 0 !important;
    right: auto !important;
    /* Ensure transform doesn't flip it back if parental flip exists */
    transform: none !important;
}

/* Also target expander itself just in case user meant the container */

/* Revert the previous .web-service .expander right:0 if that's what broke it? 
   No, user specifically said "img in class expander". I'll add the specific rule. */


/* 4. p in class c-heading__description is-wysiwyg -> Align Right */
.c-heading__description.is-wysiwyg p,
.c-heading__description.is-wysiwyg {
    text-align: right !important;
}

.gallery-top__item {
    text-align: right;
}

/* Download Form Inputs */
.l-download-form input,
.l-download-form textarea,
.l-download-form select {
    text-align: right;
    direction: rtl;
}

/* =========================================
   Global RTL Fixes (Remaining Sections)
   ========================================= */

/* =========================================
   Case Studies Section (.s-case-studies)
   ========================================= */
.s-case-studies {
    direction: rtl;
    text-align: right;
}

.s-case-studies .l-tbnav-v1 {
    right: 0;
    left: auto;
    border-right: none;
    border-left: 1px solid rgba(255, 255, 255, 0.1);
}

.s-case-studies .l-tbpanel {
    text-align: right;
}

.s-case-studies .c-btn__ico svg {
    transform: scaleX(-1);
}

.s-case-studies .c-tbnav {
    text-align: right;
}

.s-case-studies .c-tbnav__label {
    margin-right: 15px;
    margin-left: 0;
}

/* =========================================
   Our Work Section (.s-our-work)
   ========================================= */
.s-our-work .gridder-list {
    float: right;
}

.s-our-work .gridder-content .cs-gallery {
    float: right !important;
    padding-left: 30px;
    padding-right: 0;
}

.s-our-work .gridder-content .cs-narrative {
    float: left !important;
    text-align: right;
}

.s-our-work .cs-narrative__title,
.s-our-work .cs-narrative__desc {
    text-align: right;
}

.s-our-work .l-slider-nav {
    margin-right: 0;
    margin-left: auto;
}

/* =========================================
   Professional Services (.s-professional-services)
   ========================================= */
.s-professional-services .c-image,
.s-professional-services .c-image__media,
.s-professional-services .c-image__media img {
    right: auto !important;
    left: 0 !important;
}

.s-professional-services .c-block__col {
    text-align: right;
}

.с-image {
    left: 0 !important;
    right: auto !important;
}

.m-tabs .c-heading.-h2 {
    text-align: left !important;
}

/* =========================================
   Solutions Section (.solutions24)
   ========================================= */
.solutions24 .sol-list {
    direction: rtl;
}

.solutions24 .sol-list-actual {
    direction: rtl;
    text-align: right;
}

.solutions24 .sol-list-item {
    flex-direction: row;
    /* Keep standard order for RTL (Icon Right, Text Left) */
    justify-content: flex-start;
    text-align: right;
    display: flex;
}

.solutions24 .sol-list-item .c-btn__ico {
    margin-left: 15px;
    margin-right: 0;
    transform: none;
    /* Do not flip the checkmark icon itself unless needed */
}


.solutions24 .c-description {
    text-align: right;
}

.solutions24 .c-media {
    float: left;
}

.solutions24 .sol-list .c-block__content {
    float: right;
}

/* =========================================
   Locations Section (.m-locations)
   ========================================= */
.m-locations .c-locations__item {
    text-align: right;
}

.c-locations__clients-title {

    font-size: 2.8rem !important;
    letter-spacing: 0 !important;
    text-transform: uppercase;
    margin-bottom: 20px !important;
}

.m-locations .c-locations__number {
    right: 20px;
    left: auto;
}

.m-locations .c-locations__item-info {
    padding-right: 60px;
    padding-left: 0;
}

.m-locations .c-locations__clients-list svg,
.m-locations .c-locations__address svg,
.m-locations .c-locations__phone svg {
    margin-left: 10px;
    margin-right: 0;
    transform: scaleX(-1);
}

.c-locations__clients-list {

    font-size: 2.2rem !important;
    margin-bottom: 8px !important;
}

/* =========================================
   FAQ Section (.m-accordion)
   ========================================= */
.m-accordion .c-accordion__title {
    text-align: right;
    padding-right: 60px;
    padding-left: 20px;
}

.m-accordion .c-accordion__title-count {
    right: 0;
    left: auto;
    margin-left: 10px;
    margin-right: 0;
}

.m-accordion .c-accordion__content {
    text-align: right;
}

/* =========================================
   Newsletter / Form Section
   ========================================= */
.newsletter .row {
    flex-direction: row-reverse;
    display: flex;
}

.newsletter .heading-col,
.newsletter .form-col {
    text-align: right;
}

.newsletter .c-heading {
    text-align: right;
}

.gform_wrapper {
    direction: rtl;
    text-align: right;
}

.gform_wrapper .gfield_label {
    text-align: right;
}

.gform_wrapper input,
.gform_wrapper textarea,
.gform_wrapper select {
    text-align: right;
}

.gform_footer {
    text-align: right;
    justify-content: flex-start;
    display: flex;
}

.newsletter .c-btn__ico svg {
    transform: scaleX(-1);
}

.social-list {
    padding-right: 0;
}

.social-list__item {
    margin-left: 15px;
    margin-right: 0;
    float: right;
}

.s-professional-services .l-dcbl .c-block__col .c-heading__title:before {
    right: -50px;
    left: auto;
}

.client-testimonials__arrows {
    left: auto !important;
    right: 0 !important;
}

@media (min-width: 768px) {
    .s-professional-services .c-image {
        left: 0 !important;
        right: auto !important;
    }
}

.faq h2 {
    text-align: center;
}

.faq .c-accordion__title-count,
.c-accordion__content {
    margin-right: 0 !important;
    margin-left: 20px !important;
    text-align: right !important;
}

@media (min-width:1113px) {
    .service-list__col {
        padding: 0 30px 0 30px !important;
        max-width: 25%;
    }
}

.service-list__col::before {
    right: 0px !important;
    left: auto !important
}

.text-center .c-heading__title {
    text-align: center !important;
}

.c-heading__pre {
    text-align: center !important;
}

.text-big {
    text-align: right;
}

@media (max-width:1659px) {
    .slider-industry .m-slider__slide .c-block__body {
        padding: 15px 20px;
        text-align: right;
    }
}

.l-dcbl .c-block__media.-img-bg .c-image__primary.-v2:before {
    padding-top: 0 !important;
}

.-link.icon-left.gform_button .c-btn__ico,
.-link.icon-left.wpcf7-submit .c-btn__ico,
.c-btn.-link.icon-left .c-btn__ico {
    margin-left: 10px;
    margin-right: 0;
}

.page-breadcrumb .icon {
    margin-left: 10px !important;
}

.c-heading__pre.-reverse::before {
    margin-left: 10px;
    margin-right: 0 !important;
}

.form-section__social .social-list {
    margin-right: 35px;
    margin-left: 0 !important;
}

.form-section__col .c-heading__pre {
    text-align: right !important;
}

.wpcf7 label {
    text-align: right;
}

.wpcf7-submit {
    --btn-padding-top-bottom: .75em;
    --btn-primary-border: 3px;
    --btn-font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    border: var(--btn-primary-border) solid;
    border-image-slice: 1;
    border-image-source: linear-gradient(7deg, #009cff 50%, #522ef4 65%, #9537e3 80%);
    background-color: var(--btn-primary-bg);
    color: var(--btn-primary-color);
    padding: 12px 30px;
}

@media (min-width:576px) {
    .footer-services .widget_nav_menu {
        border-right: 1px solid #30afff;
        border-left: none !important;
        padding: 0 30px;
    }
}

@media (min-width:576px) {
    .footer-services .widget_nav_menu:before {
        right: 0px;
        width: 2px;
        left: auto !important;
    }
}

.nav-foot__btn,
.nav-main__btn {
    margin-right: 30px !important;
    margin-left: auto;
}

.colors-inverted .c-heading__title {
    font-size: 35px !important
}

.services_item .c-block__text-headline .c-heading__title {
    font-size: 25px !important
}

.text-center .c-heading__title {
    font-size: 30px !important
}

.c-heading__sub p {
    margin: 0px !important;
    font-size: 22px;
    font-weight: 400;
    line-height: 39px;
}

.-h2 .c-heading__title,
.is-wysiwyg h2 .c-heading__title {
    font-size: 30px;
    margin-top: 20px;
    line-height: 34px;
}

.s-professional-services h2 {
    font-size: 40px !important;
    line-height: 50px !important;

}