@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700;800&display=swap');

/* The Arabic template uses the same images and sections as the English page.
   These overrides mirror the composition without changing the English homepage. */
.tc-ar-page,
.tc-ar-page .tc-elementor-header,
.tc-ar-page .tc-elementor-footer,
.elementor .tc-ref-ar,
.elementor .tc-ref-ar .elementor-widget-text-editor,
.elementor .tc-ref-ar .elementor-heading-title,
.elementor .tc-ref-ar h2,
.elementor .tc-ref-ar h3 {
    font-family: 'Cairo', Tahoma, Arial, sans-serif;
}
.elementor .tc-ref-ar { direction: rtl; text-align: right; }
.elementor .tc-ref-ar.tc-ref-about h2,
.elementor .tc-ref-ar.tc-ref-insight h2,
.elementor .tc-ref-ar.tc-ref-inner-hero .elementor-heading-title { letter-spacing: 0; line-height: 1.4; }
.elementor .tc-ref-ar.tc-ref-inner-hero {
    background-image: linear-gradient(270deg, rgba(10,26,36,.93), rgba(10,26,36,.48)), url("hero-skyline.jpg");
}
.elementor .tc-ref-ar .tc-ref-about-points span,
.elementor .tc-ref-ar .tc-ref-insight-points strong { font-family: 'Cairo', Tahoma, Arial, sans-serif; letter-spacing: 0; }
.elementor .tc-ref-ar .tc-ref-insight-points > div { border-left: 0; border-right: 1px solid rgba(255,255,255,.32); padding-left: 0; padding-right: 14px; }
.elementor .tc-ref-ar .tc-ref-insight-copy { margin-left: 0; margin-right: auto; }
.elementor .tc-ref-ar .tc-contact-form input,
.elementor .tc-ref-ar .tc-contact-form select,
.elementor .tc-ref-ar .tc-contact-form textarea { font-family: 'Cairo', Tahoma, Arial, sans-serif; }
.elementor .tc-ref-ar .tc-contact-form input[type="email"] { direction: ltr; text-align: left; }
.elementor .tc-ref-ar .tc-contact-status { border-left: 0; border-right: 3px solid #47766e; }
.elementor .tc-ref-ar .tc-contact-status-error { border-right-color: #a33d36; }
.elementor .tc-ref-ar .tc-ref-contact-links strong { font-family: 'Cairo', Tahoma, Arial, sans-serif; letter-spacing: 0; }
.elementor .tc-ref-ar .tc-ref-contact-links a[dir="ltr"],
.elementor .tc-ref-ar .tc-ref-contact-touch a[dir="ltr"] { justify-self: start; text-align: left; }
.elementor .tc-ref-ar.tc-ref-contact-hero {
    background-image: linear-gradient(270deg, #10232ded 0%, #10232dc9 32%, #10232d51 73%, #10232d45 100%), url("hero-consulting.jpg");
}
.elementor .tc-ref-ar.tc-ref-contact-form-section > .elementor-container > .elementor-column:first-child { padding-right: 0; padding-left: clamp(18px, 2vw, 32px); }
.elementor .tc-ref-ar .tc-ref-contact-form-intro h2,
.elementor .tc-ref-ar.tc-ref-contact-banner h2,
.elementor .tc-ref-ar.tc-ref-contact-location h2 { letter-spacing: 0; line-height: 1.45; }
.elementor .tc-ref-ar.tc-ref-contact-banner {
    background-image: linear-gradient(270deg, rgba(12,32,45,.96), rgba(12,32,45,.65) 42%, rgba(12,32,45,.04) 100%), url("work-gcc-city.jpg");
}
.elementor .tc-ref-ar .tc-ref-location-list li > div { padding-left: 0; padding-right: 15px; border-left: 0; border-right: 1px solid #dce0e1; }
.elementor .tc-ref-ar .tc-ref-location-list a[dir="ltr"] { text-align: right; unicode-bidi: isolate; }
.tc-ar-page .tc-elementor-menu a,
.tc-ar-page .tc-elementor-menu .tc-ref-nav-unavailable,
.tc-ar-page .tc-ref-header-actions .tc-elementor-button,
.tc-ar-page .tc-elementor-footer-bottom { font-family: 'Cairo', Tahoma, Arial, sans-serif; }
.tc-ar-page .tc-elementor-menu a { font-size: 12px; letter-spacing: 0; }
.tc-ar-page .tc-elementor-menu .tc-ref-nav-unavailable { color: rgba(232,237,240,.7); font-size: 12px; white-space: nowrap; }
.tc-ar-page .tc-elementor-header .tc-elementor-button { font-size: 12px; }
.tc-ar-page .tc-ref-languages {
    padding-left: 0;
    padding-right: 13px;
    border-left: 0;
    border-right: 1px solid rgba(255,255,255,.48);
    direction: ltr;
}
.tc-ar-page .tc-elementor-footer-bottom { font-size: 11px; }

.elementor .tc-ref-ar .tc-ref-eyebrow,
.elementor .tc-ref-ar .tc-ref-section-label,
.elementor .tc-ref-ar .tc-ref-side-note,
.elementor .tc-ref-ar .tc-ref-scroll-note,
.elementor .tc-ref-ar .tc-ref-stats span,
.elementor .tc-ref-ar .tc-ref-feature > span,
.elementor .tc-ref-ar .tc-ref-partner-end,
.elementor .tc-ref-ar .tc-ref-partner-brand small,
.elementor .tc-ref-ar .tc-ref-work-copy span,
.elementor .tc-ref-ar .tc-ref-contact h2 {
    font-family: 'Cairo', Tahoma, Arial, sans-serif;
    letter-spacing: 0;
}
.elementor .tc-ref-ar .tc-ref-eyebrow,
.elementor .tc-ref-ar .tc-ref-section-label { font-size: 12px; font-weight: 700; line-height: 1.65; }
.elementor .tc-ref-ar .tc-ref-button,
.elementor .tc-ref-ar .tc-ref-section-more,
.elementor .tc-ref-ar .tc-ref-feature a,
.elementor .tc-ref-ar .tc-ref-service-body a,
.elementor .tc-ref-ar .tc-ref-work-copy a {
    font-family: 'Cairo', Tahoma, Arial, sans-serif;
    font-size: 12px;
    letter-spacing: 0;
}

.elementor .tc-ref-ar.tc-ref-hero {
    min-height: clamp(555px, 48vw, 700px);
    background-image:
        linear-gradient(270deg, rgba(8,22,32,.92) 0%, rgba(8,22,32,.71) 38%, rgba(8,22,32,.08) 85%),
        linear-gradient(0deg, rgba(6,19,29,.78), transparent 40%),
        url("hero-skyline.jpg");
    background-position: center 53%;
    background-size: cover;
}
.elementor .tc-ref-ar.tc-ref-hero > .elementor-container > .elementor-column > .elementor-widget-wrap {
    min-height: clamp(555px, 48vw, 700px);
    padding: 93px 0 43px;
}
.elementor .tc-ref-ar.tc-ref-hero .elementor-heading-title {
    max-width: 630px;
    margin: 7px 0 11px;
    font-size: clamp(47px, 5vw, 77px);
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: 0;
}
.elementor .tc-ref-ar.tc-ref-hero .tc-ref-hero-lead {
    max-width: 530px;
    font-size: clamp(14px, 1.1vw, 17px);
    line-height: 1.8;
}
.elementor .tc-ref-ar .tc-ref-hero-actions { justify-content: flex-start; }
.elementor .tc-ref-ar .tc-ref-stats { margin-top: 25px; }
.elementor .tc-ref-ar .tc-ref-stats > div {
    padding: 0 17px;
    border-right: 0;
    border-left: 1px solid rgba(255,255,255,.55);
}
.elementor .tc-ref-ar .tc-ref-stats > div:first-child { padding-right: 0; padding-left: 17px; }
.elementor .tc-ref-ar .tc-ref-stats > div:last-child { border: 0; }
.elementor .tc-ref-ar .tc-ref-stats strong {
    direction: ltr;
    text-align: right;
    font-family: 'Manrope', Arial, sans-serif;
}
.elementor .tc-ref-ar .tc-ref-stats span { font-size: 11px; line-height: 1.5; }
.elementor .tc-ref-ar .tc-ref-side-note { right: auto; left: 13%; padding: 0 14px 0 0; border-left: 0; border-right: 1px solid rgba(255,255,255,.65); font-size: 12px; }
.elementor .tc-ref-ar .tc-ref-scroll-note { right: auto; left: 1%; padding: 0 14px 0 0; border-left: 0; border-right: 1px solid rgba(255,255,255,.65); font-size: 12px; }

.elementor .tc-ref-ar.tc-ref-services .elementor-heading-title,
.elementor .tc-ref-ar.tc-ref-work .elementor-heading-title {
    font-size: clamp(27px, 2.75vw, 43px);
    line-height: 1.34;
    letter-spacing: 0;
}
.elementor .tc-ref-ar.tc-ref-services .elementor-widget:last-child,
.elementor .tc-ref-ar.tc-ref-work .elementor-widget:last-child { right: auto; left: 0; }
.elementor .tc-ref-ar.tc-ref-services .elementor-widget:last-child { left: calc(23% + 15px); }
.elementor .tc-ref-ar .tc-ref-service-icon { right: 13px; left: auto; }
.elementor .tc-ref-ar .tc-ref-service-body h3 {
    margin: 0 40px 8px 0;
    font-size: clamp(13px, 1.1vw, 17px);
    line-height: 1.45;
    letter-spacing: 0;
}
.elementor .tc-ref-ar .tc-ref-service-body p {
    min-height: 78px;
    font-size: clamp(11px, .92vw, 14px);
    line-height: 1.7;
}
.elementor .tc-ref-ar .tc-ref-service-body a { align-self: flex-start; }
.elementor .tc-ref-ar .tc-ref-feature > span {
    font-size: clamp(18px, 1.8vw, 26px);
    font-weight: 700;
    line-height: 1.5;
}
.elementor .tc-ref-ar .tc-ref-feature p { font-size: 14px; line-height: 1.7; }
.elementor .tc-ref-ar .tc-ref-feature a { font-size: 12px; }

.elementor .tc-ref-ar .tc-ref-partners h2,
.elementor .tc-ref-ar.tc-ref-partners h2 {
    font-size: clamp(22px, 2.2vw, 33px);
    line-height: 1.4;
}
.elementor .tc-ref-ar .tc-ref-partners-row > p {
    padding: 0 18px;
    font-size: clamp(11px, .86vw, 13px);
    line-height: 1.6;
}
.elementor .tc-ref-ar .tc-ref-partner-brand { border-left: 0; border-right: 1px solid rgba(255,255,255,.25); }
.elementor .tc-ref-ar .tc-ref-partner-brand small { font-size: 10px; line-height: 1.4; }
.elementor .tc-ref-ar .tc-ref-partner-end {
    padding-left: 0;
    padding-right: 17px;
    border-left: 0;
    border-right: 1px solid rgba(255,255,255,.25);
    font-size: 12px;
    font-weight: 700;
}
.elementor .tc-ref-ar .tc-ref-work-copy span { font-size: 11px; }
.elementor .tc-ref-ar .tc-ref-work-copy h3 {
    min-height: 52px;
    font-size: clamp(14px, 1.15vw, 18px);
    line-height: 1.5;
}
.elementor .tc-ref-ar .tc-ref-contact h2 {
    font-size: clamp(23px, 2.2vw, 33px);
    font-weight: 700;
    line-height: 1.5;
}
.elementor .tc-ref-ar .tc-ref-contact-row p,
.elementor .tc-ref-ar.tc-ref-contact p {
    padding-left: 0;
    padding-right: 25px;
    border-left: 0;
    border-right: 1px solid rgba(255,255,255,.5);
    font-size: 14px;
    line-height: 1.75;
}

@media (max-width: 1200px) {
    .tc-ar-page .tc-elementor-header-inner { flex-wrap: wrap; padding: 8px 0; }
    .tc-ar-page .tc-elementor-header .tc-elementor-nav {
        display: block;
        order: 3;
        width: 100%;
        margin-inline: 0;
        overflow-x: auto;
    }
    .tc-ar-page .tc-elementor-header .tc-elementor-menu { width: max-content; white-space: nowrap; }
    .tc-ar-page .tc-ref-header-actions { margin-inline-start: auto; }
    .elementor .tc-ref-ar.tc-ref-hero > .elementor-container > .elementor-column > .elementor-widget-wrap { padding-top: 155px; }
    .elementor .tc-ref-ar .tc-ref-partners-row { grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .elementor .tc-ref-ar .tc-ref-partners-title,
    .elementor .tc-ref-ar .tc-ref-partners-row > p { grid-column: 1 / -1; }
    .elementor .tc-ref-ar .tc-ref-partners-row > p { padding: 0; }
    .elementor .tc-ref-ar .tc-ref-partner-end { display: none; }
}
@media (max-width: 620px) {
    .elementor .tc-ref-ar.tc-ref-services .elementor-widget:last-child { left: 0; }
    .elementor .tc-ref-ar.tc-ref-contact-form-section > .elementor-container > .elementor-column:first-child { padding: 0 0 25px; }
    .tc-ar-page .tc-elementor-header .tc-ref-languages {
        display: inline-flex;
        padding-left: 0;
        padding-right: 8px;
    }
    .elementor .tc-ref-ar.tc-ref-hero,
    .elementor .tc-ref-ar.tc-ref-hero > .elementor-container > .elementor-column > .elementor-widget-wrap { min-height: 760px; }
    .elementor .tc-ref-ar.tc-ref-hero > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: 125px 0 45px; }
    .elementor .tc-ref-ar.tc-ref-hero .elementor-heading-title { font-size: clamp(41px, 10vw, 62px); }
    .elementor .tc-ref-ar .tc-ref-stats > div:nth-child(2) { border-left: 0; }
    .elementor .tc-ref-ar .tc-ref-stats > div:nth-child(3) { padding-right: 0; }
    .elementor .tc-ref-ar.tc-ref-services .elementor-widget:last-child,
    .elementor .tc-ref-ar.tc-ref-work .elementor-widget:last-child { position: static; width: 100%; }
    .elementor .tc-ref-ar .tc-ref-partners-row { grid-template-columns: repeat(2, 1fr); }
    .elementor .tc-ref-ar.tc-ref-contact p { padding-right: 0; border-right: 0; }
}
@media (min-width: 621px) and (max-width: 800px) {
    .elementor .tc-ref-ar.tc-ref-contact-form-section > .elementor-container > .elementor-column:first-child { padding: 0 0 25px; }
}