/* Language control is shared; every layout/typography override below is Arabic-only.
   Noto Sans Arabic is self-hosted by arabic-font.css, loaded before this file. */
.language-switch {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 5px;
  direction: ltr;
  white-space: nowrap;
  font-size: 11px;
  line-height: 1.4;
  letter-spacing: normal;
}
.language-switch > a[lang] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 3px 5px;
  border-radius: 2px;
  color: inherit;
  font-size: 11px;
  line-height: 1.4;
  letter-spacing: normal;
  text-transform: none;
}
.language-switch > a[lang="en"] { font-family: 'DM Sans', Arial, sans-serif; }
.language-switch > a[lang="ar"] { font-family: 'Noto Sans Arabic', Tahoma, Arial, sans-serif; }
.language-switch > a[aria-current]:not([aria-current="false"]) {
  color: var(--teal);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
.language-switch > span { opacity: .5; }
.utility .wrap { gap: 20px; }
.utility .language-switch a span { padding: 0; }
.site-header .language-switch {
  position: static;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 5px;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.site-header .language-switch > a[lang] { padding: 3px 5px; font-size: 11px; }
.site-header .language-switch > a[lang]::after { display: none; }
.site-header .language-switch > a[aria-current]:not([aria-current="false"]) { color: var(--green); }
.header-overlay .site-header .language-switch > a[aria-current]:not([aria-current="false"]) { color: var(--teal); }

/* Arabic joins and marks need normal tracking and more vertical room. */
.locale-ar {
  --arabic-font: 'Noto Sans Arabic', Tahoma, Arial, sans-serif;
  --sans: var(--arabic-font);
  --display: var(--arabic-font);
  --rtl-hero-overlay: linear-gradient(270deg, rgba(5,29,36,.94), rgba(5,29,36,.8) 34%, rgba(5,29,36,.25) 68%, rgba(5,29,36,.1)), linear-gradient(0deg, rgba(5,29,36,.4), transparent 68%);
  direction: rtl;
  text-align: start;
  font-family: var(--arabic-font);
  line-height: 1.9;
}
.locale-ar :is(h1,h2,h3,h4,p,li,a,button,label,input,select,textarea,span,dt,dd,figcaption,small) {
  letter-spacing: normal !important;
  text-transform: none !important;
}
.locale-ar :is(h1,h2,h3,h4) { font-family: var(--arabic-font); line-height: 1.45 !important; }
.locale-ar :is(p,li,dd) { line-height: 1.9; }
.locale-ar :is(.eyebrow,.kicker,.article-meta,.case-study-meta,.service-arrangement,.case-study-details dt,.footer-main h2) {
  line-height: 1.8;
}
.locale-ar :is(.button,.text-link,.nav-cta) { line-height: 1.65; }
.locale-ar .button { white-space: normal; text-align: start; }
.locale-ar .text-link { max-width: 100%; white-space: normal; gap: clamp(12px,2vw,28px); }
.locale-ar :is(.text-link,.button) > .link-label { min-width: 0; flex: 1 1 auto; font: inherit; line-height: inherit; white-space: normal; }
.locale-ar :is(.text-link,.button) > span[aria-hidden="true"] { flex: 0 0 auto; }
.locale-ar .header-inner { min-width: 0; }
.locale-ar .site-header #main-nav { font-size: 13px; }
.locale-ar .site-header #main-nav > a { line-height: 1.65; }
.locale-ar .menu-toggle { padding-inline: 12px 0; }
.locale-ar .utility a span { padding-left: 0; padding-inline-start: 12px; }
.locale-ar .utility .language-switch a span { padding: 0; }
.locale-ar :is(.hero-copy,.page-hero-copy,.case-hero-copy,.investor-hero-copy,.service-conversation-copy,.cta-copy) { min-width: 0; }
.locale-ar .how-work-hero h1 em span { white-space: normal; }
.locale-ar :is(.footer-company .company-legal,.delivery-completion-band>.eyebrow) { white-space: normal; }
.locale-ar :is(.hero-actions,.page-actions,.partnership-enquiry-actions) { flex-wrap: wrap; }

/* Isolate identifiers without changing or mirroring their content. */
.locale-ar :is(a[href^="mailto:"],a[href^="tel:"],input[type="email"],input[type="tel"],input[type="url"],.partner-wordmark,.linkedin-mark,.footer-company,.partner-statistics dd,.bidi-ltr,[data-bidi="ltr"],bdi[dir="ltr"]) {
  direction: ltr;
  unicode-bidi: isolate;
}
.locale-ar :is(a[href^="mailto:"],a[href^="tel"]) { overflow-wrap: anywhere; }
.locale-ar :is(.footer-company,.partner-statistics dd) { text-align: right; }
.locale-ar .partner-wordmark { font-family: Arial, sans-serif; }
.locale-ar .linkedin-mark { font-family: Arial, sans-serif; }
.locale-ar bdi { unicode-bidi: isolate; }
.locale-ar :is(input,select,textarea) { font-family: var(--arabic-font); }
.locale-ar :is(input[type="email"],input[type="tel"],input[type="url"]) { text-align: left; }
.locale-ar #enquiry-status { line-height: 1.9; }
.locale-ar .honeypot {
  left: auto;
  right: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

/* Directional affordances only: no image, video, brand or logo is transformed. */
.locale-ar :is(.button,.text-link,.utility a,.footer-contact-links a) > span[aria-hidden="true"],
.locale-ar :is(.photo-arrow,.circle-arrow,.phase-arrow,.careers-focus-grid>a>span,.process-flow-label>span:first-child,.delivery-completion-band>span:last-child) {
  transform: scaleX(-1);
}
.locale-ar .utility a > span[aria-hidden="true"] { display: inline-block; }
.locale-ar .site-header #main-nav > a:not(.button)::after { left: 100%; right: 0; }
.locale-ar .site-header #main-nav > a:not(.button):is(:hover,[aria-current="page"])::after { left: 0; }
.locale-ar .skip-link { left: auto; right: 20px; }
.locale-ar .hero-caption { left: 0; right: auto; text-align: left; }
.locale-ar .video-toggle { left: 0; right: auto; }

/* Grid and flex flow follow dir=rtl; replace the remaining physical offsets. */
.locale-ar .intro-strip a {
  border-left: 0;
  border-right: 1px solid #aebfba;
  padding-inline: 40px 65px;
}
.locale-ar .intro-strip a span { left: 0; right: auto; }
.locale-ar .hero-service-nav a {
  border-left: 0;
  border-right: 1px solid #ffffff2e;
  padding-inline: 26px;
}
.locale-ar .hero-service-nav a:first-child { border-right: 0; padding-inline-start: var(--gutter); }
.locale-ar .hero-service-nav a:last-child { padding-inline-end: var(--gutter); }
.locale-ar .hero-service-nav a > span:last-child { margin-left: 0; margin-inline-start: auto; padding-left: 0; padding-inline-start: 10px; }
.locale-ar .photo-number { left: auto; right: 30px; }
.locale-ar .expertise-photo-copy { left: 86px; right: 32px; }
.locale-ar .photo-arrow { left: 30px; right: auto; }
.locale-ar .delivery-feature-copy { padding-inline: clamp(45px,5vw,100px) var(--gutter); }
.locale-ar .delivery-steps article { padding-left: 0; padding-inline-start: 31px; }
.locale-ar .delivery-steps article > span { left: auto; right: 0; }
.locale-ar .page-hero-image { margin-right: 0; margin-inline-end: calc(var(--gutter) * -1); }
.locale-ar .deliverable { border-left: 0; border-inline-start: 1px solid var(--line); padding-left: 0; padding-inline-start: 37px; margin-left: 0; margin-inline-start: 25px; }
.locale-ar .question-list li { padding-inline: 43px 0; }
.locale-ar .question-list li::before { left: auto; right: 0; }
.locale-ar .footer-bottom p { margin-right: 0; margin-inline-end: auto; }
.locale-ar .careers-focus-grid > a { padding-inline: 0 44px; }
.locale-ar .careers-focus-grid > a > span { left: 4px; right: auto; }
.locale-ar .service-offering ul { padding-left: 0; padding-inline: 18px 0; }
.locale-ar .service-offering li { padding-left: 0; padding-inline-start: 4px; }
.locale-ar .partner-enquiry-list { padding-left: 0; padding-inline: 19px 0; }
.locale-ar .case-jump-nav a { padding-inline: 0 20px; }
.locale-ar .case-jump-nav a > span:last-child { margin-left: 0; margin-inline-start: auto; padding-right: 0; padding-inline-end: 22px; }
.locale-ar .case-study-meta > span:last-child { text-align: end; }
.locale-ar .case-hero-image figcaption { left: 22px; right: auto; text-align: left; }

/* Delivery timeline and keyboard-driven process tabs. */
.locale-ar .journey-node::after { left: -26px; right: 45px; }
.locale-ar .assurance-details details > p { padding-right: 0; padding-inline-end: 28px; }
.locale-ar .delivery-route li:not(:last-child)::after { left: auto; right: 15px; border-left: 0; border-right: 1px solid #a8c7bb; }
.locale-ar .flow-interaction-hint { margin-left: 0; margin-inline-start: auto; }
.locale-ar .delivery-phase-button { text-align: start; }
.locale-ar .delivery-phase-button:not(:last-child)::after { content: '←'; left: -16px; right: auto; }
.locale-ar .phase-name { padding-right: 0; padding-inline-end: 8px; }
.locale-ar .phase-arrow { left: 15px; right: auto; }
.locale-ar .phase-panel-column { padding-left: 0; padding-inline-start: 28px; border-left: 0; border-inline-start: 1px solid #49666a; }
.locale-ar .phase-panel-column li { padding-left: 0; padding-inline-start: 15px; }
.locale-ar .phase-panel-column li::before { left: auto; right: 0; }
.locale-ar .delivery-control-rail > div { padding-inline: 62px 30px; }
.locale-ar .delivery-control-rail > div + div { border-left: 0; border-inline-start: 1px solid #49666a; }
.locale-ar .control-rail-symbol { left: auto; right: 28px; }
.locale-ar .delivery-completion-band > span:last-child { margin-left: 0; margin-inline-start: auto; }

/* Put the copy-side fades on the right while preserving original photographs. */
.locale-ar .home-hero-media { left: 0; right: 0; }
.locale-ar .home-hero-media::after { background: var(--rtl-hero-overlay) !important; }
.locale-ar .home-hero-v2 {
  --rtl-hero-overlay: linear-gradient(270deg,rgba(5,29,36,.93) 0%,rgba(5,29,36,.78) 30%,rgba(5,29,36,.25) 60%,rgba(5,29,36,.02) 100%),linear-gradient(0deg,rgba(5,29,36,.62),transparent 65%);
}
.locale-ar :is(.service-detail-hero,.partnerships-hero) {
  --rtl-hero-overlay: linear-gradient(270deg,#0b232b,rgba(11,35,43,.92) 16%,rgba(11,35,43,.62) 44%,rgba(11,35,43,.18) 76%),linear-gradient(0deg,rgba(11,35,43,.28),transparent 60%);
}
.locale-ar .service-detail-hero .home-hero-media { left: 0; right: 17%; }
.locale-ar .partnerships-hero .home-hero-media { left: 0; right: 12%; }
.locale-ar .perspectives-hero {
  --rtl-hero-overlay: linear-gradient(270deg,#0b232b,rgba(11,35,43,.96) 8%,rgba(11,35,43,.72) 28%,rgba(11,35,43,.16) 58%,rgba(11,35,43,.05)),linear-gradient(0deg,rgba(11,35,43,.25),transparent 55%);
}
.locale-ar :is(.careers-video-hero,.contact-hero[data-enquiry-mode="career"]) {
  --rtl-hero-overlay: linear-gradient(270deg,var(--deep),rgba(11,35,43,.96) 10%,rgba(11,35,43,.75) 30%,rgba(11,35,43,.22) 58%,rgba(11,35,43,.05) 100%),linear-gradient(0deg,rgba(11,35,43,.3),transparent 65%);
}
.locale-ar :is(.careers-video-hero,.contact-hero[data-enquiry-mode="career"]) .home-hero-media { left: 0; right: 24%; }
.locale-ar .case-hero-image { inset: 0 49% 0 0; mask-image: linear-gradient(270deg,transparent,#000 24%); }
.locale-ar .investor-hero-media { inset: 0 40% 0 0; mask-image: linear-gradient(270deg,transparent,#000 24%); }
.locale-ar .service-conversation-photo { inset: 0 auto 0 0; mask-image: linear-gradient(270deg,transparent,#000 16%); }
.locale-ar .expertise-cta-media::after { background: linear-gradient(270deg,rgba(5,29,36,.94),rgba(5,29,36,.82) 30%,rgba(5,29,36,.16) 58%,transparent 74%); }
.locale-ar .expertise-car-banner .expertise-cta-media img { left: 0; right: auto; mask-image: linear-gradient(270deg,transparent,#000 24%); }
.locale-ar .expertise-car-banner .expertise-cta-media::after { background: linear-gradient(270deg,var(--deep) 22%,rgba(5,29,36,.82) 37%,rgba(5,29,36,.2) 56%,transparent 73%); }
.locale-ar .national-model-banner .national-banner-media::after { background: linear-gradient(270deg,rgba(235,246,239,.96),rgba(235,246,239,.88) 28%,rgba(235,246,239,.42) 48%,rgba(235,246,239,0) 67%); }
.locale-ar .national-talent-banner .national-banner-media::after { background: linear-gradient(270deg,rgba(5,29,36,.1),rgba(5,29,36,.2) 38%,rgba(5,29,36,.84) 57%,rgba(5,29,36,.95)); }
.locale-ar .national-talent-banner .section-heading { margin-left: 0; margin-inline-start: auto; }
.locale-ar .about-cta-photo { inset: 0 auto 0 0; }
.locale-ar .about-cta::after { background: linear-gradient(270deg,#102e35 43%,rgba(16,46,53,.95) 50%,rgba(16,46,53,.75) 56%,rgba(16,46,53,.15) 65%,rgba(16,46,53,0) 78%); }
.locale-ar .about-principles-art img { margin-left: 0; margin-inline-start: auto; }
.locale-ar .invitation-media img { left: auto; right: 46%; transform: translateX(50%); }
.locale-ar .invitation-media::after { background: linear-gradient(270deg,rgba(16,43,52,.8),rgba(16,43,52,.48) 31%,rgba(16,43,52,.1) 47%,rgba(16,43,52,.36) 61%,rgba(16,43,52,.86) 76%); }
.locale-ar .perspectives-cta-photo { left: auto; right: 47.5%; transform: translateX(50%); }

@media (min-width:721px) {
  /* This supplied photograph places the person and board near its right edge. */
  .locale-ar .service-conversation--skateboard .service-conversation-photo { mask-image: linear-gradient(270deg,transparent,#000 6%); }
}

@media (min-width:1201px) and (max-width:1450px) {
  .locale-ar .brand { width: 240px; }
  .locale-ar .header-inner { gap: 24px; }
  .locale-ar .site-header #main-nav { gap: 14px; font-size: 12px; }
  .locale-ar .nav-cta { padding-inline: 16px; }
}
@media (max-width:1100px) {
  .locale-ar .journey-node::after { left: -20px; }
  .locale-ar .delivery-steps article { padding-inline-start: 25px; }
  .locale-ar .delivery-control-rail > div { padding-inline: 24px; }
}
@media (max-width:980px) {
  .locale-ar .site-header #main-nav { font-size: 16px; }
  .locale-ar .photo-number { right: 24px; }
  .locale-ar .expertise-photo-copy { left: 65px; right: 25px; }
  .locale-ar .photo-arrow { left: 20px; }
  .locale-ar .delivery-feature-copy { padding-inline: 32px; }
  .locale-ar .deliverable { padding-inline-start: 22px; margin-inline-start: 0; }
  .locale-ar .case-hero-image { right: 48%; }
  .locale-ar .case-jump-nav a { padding-inline: 0 8px; }
  .locale-ar .case-jump-nav a > span:last-child { padding-inline-end: 10px; }
  .locale-ar :is(.careers-video-hero,.contact-hero[data-enquiry-mode="career"]) .home-hero-media { right: 12%; }
  .locale-ar .investor-hero-media { inset: auto; mask-image: linear-gradient(180deg,transparent,#000 24%); }
  .locale-ar .perspectives-cta-photo { right: 48%; }
}
@media (max-width:720px) {
  .utility .wrap { gap: 12px; }
  .language-switch { gap: 3px; }
  .language-switch > a[lang] { min-height: 27px; padding-inline: 3px; font-size: 10px; }
  .locale-ar .utility a span { padding-inline-start: 3px; }
  .locale-ar :is(.hero-copy h1,.page-hero h1,.image-hero h1,.case-hero h1,.investor-hero h1) { font-size: clamp(32px,8.4vw,48px) !important; line-height: 1.5 !important; }
  .locale-ar :is(.hero-copy>p,.case-hero-intro,.page-hero-copy>p) { line-height: 1.9; }
  .locale-ar :is(.hero-copy,.page-hero-copy,.case-hero-copy,.investor-hero-copy) { max-width: 100%; }
  .locale-ar .hero-caption { left: auto; right: 0; text-align: right; }
  .locale-ar .hero-caption span + span { margin-left: 0; margin-inline-start: 10px; }
  .locale-ar .intro-strip a { border-right: 0; padding-inline: 0 45px; }
  .locale-ar .hero-service-nav a:nth-child(n) { padding-inline: var(--gutter); border-left: 0; border-right: 1px solid #ffffff20; }
  .locale-ar .hero-service-nav a:nth-child(2n+1) { border-right: 0; }
  .locale-ar .hero-section-nav a:nth-child(n+2) { border-left: 0; border-right: 1px solid #ffffff20; }
  .locale-ar .expertise-photo-copy { left: 68px; right: 25px; }
  .locale-ar .photo-arrow { left: 22px; }
  .locale-ar .delivery-feature-copy { padding-inline: var(--gutter); }
  .locale-ar .delivery-steps article { padding-inline: 34px 0; }
  .locale-ar .page-hero-image { margin-inline: calc(var(--gutter) * -1); }
  .locale-ar .deliverable { border-inline-start: 0; padding-inline-start: 0; margin-inline-start: 0; }
  .locale-ar .engagement-journey li { padding-inline: 64px 0; }
  .locale-ar .engagement-journey li:not(:last-child)::before { left: auto; right: 22px; }
  .locale-ar .journey-node { left: auto; right: 0; }
  .locale-ar .assurance-details details > p { padding-inline-end: 0; }
  .locale-ar .flow-interaction-hint { margin-left: 0; margin-inline-start: 28px; }
  .locale-ar .phase-name { padding-inline-end: 0; }
  .locale-ar .phase-arrow { left: 12px; }
  .locale-ar .phase-panel-column { padding-inline-start: 0; border-inline-start: 0; }
  .locale-ar .delivery-control-rail > div { padding-inline: 55px 20px; }
  .locale-ar .delivery-control-rail > div + div { border-inline-start: 0; }
  .locale-ar .control-rail-symbol { right: 21px; }
  .locale-ar .case-jump-nav a { padding-inline: 0; }
  .locale-ar .case-jump-nav a > span:last-child { padding-inline-end: 0; }
  .locale-ar .case-hero-image { inset: auto; mask-image: linear-gradient(180deg,transparent,#000 20%); }
  .locale-ar .case-hero-image figcaption { left: 18px; }
  .locale-ar .service-conversation-photo { inset: auto; mask-image: linear-gradient(180deg,transparent,#000 16%); }
  .locale-ar :is(.home-hero-v2,.expertise-hero,.service-detail-hero,.partnerships-hero,.national-video-hero,.delivery-media-hero,.about-media-hero,.perspectives-hero,.contact-hero) {
    --rtl-hero-overlay: linear-gradient(270deg,rgba(5,29,36,.92),rgba(5,29,36,.72)),linear-gradient(0deg,rgba(5,29,36,.55),transparent 72%);
  }
  .locale-ar :is(.service-detail-hero,.partnerships-hero) .home-hero-media { right: 0; }
  .locale-ar :is(.careers-video-hero,.contact-hero[data-enquiry-mode="career"]) {
    --rtl-hero-overlay: linear-gradient(180deg,var(--deep),rgba(11,35,43,.42) 18%,rgba(11,35,43,.04) 48%);
  }
  .locale-ar :is(.careers-video-hero,.contact-hero[data-enquiry-mode="career"]) .home-hero-media { inset: auto; }
  .locale-ar .expertise-cta-media::after,.locale-ar .expertise-car-banner .expertise-cta-media::after { background: linear-gradient(180deg,var(--deep),rgba(5,29,36,0) 64px); }
  .locale-ar .expertise-car-banner .expertise-cta-media img { mask-image: none; }
  .locale-ar .national-model-banner .national-banner-media::after { background: linear-gradient(0deg,#e8f3ed 1%,rgba(232,243,237,.82) 17%,rgba(232,243,237,.14) 42%,transparent 65%); }
  .locale-ar .national-talent-banner .national-banner-media::after { background: linear-gradient(0deg,var(--deep) 1%,rgba(11,35,43,.88) 20%,rgba(11,35,43,.14) 58%,rgba(11,35,43,.08)); }
  .locale-ar .national-talent-banner .section-heading { margin-inline: 0; }
  .locale-ar .about-principles-art img { left: 0; right: auto; }
  .locale-ar .about-cta-photo { inset: 208px auto auto -60px; mask-image: linear-gradient(270deg,transparent,#000 40%); }
  .locale-ar .about-cta::after { background: linear-gradient(270deg,#102e35 38%,rgba(16,46,53,.92) 51%,rgba(16,46,53,.18) 67%,rgba(16,46,53,0)); }
  .locale-ar .invitation-media img { left: 0; right: auto; transform: none; }
  .locale-ar .invitation-media::after { background: linear-gradient(180deg,rgba(16,43,52,.8),rgba(16,43,52,.76) 52%,rgba(16,43,52,.45)); }
  .locale-ar .perspectives-cta-photo { inset: auto 0 0; transform: none; }
}
@media (max-width:360px) {
  .locale-ar .expertise-photo-copy { left: 62px; right: 22px; }
  .locale-ar .hero-caption span + span { margin-inline-start: 0; }
  .locale-ar .footer-utilities { gap: 14px; }
}
@media print {
  .language-switch { display: none; }
  .locale-ar .home-hero-media::after { background: none !important; }
}
