/* SecurityTalent multilingual selector — compact, keyboard accessible and RTL safe. */
.st-top-utility-column {
  min-height: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.st-language-switcher {
  display: inline-flex;
  align-items: center;
  margin: .55rem 0;
  color: #12323a;
  font-family: Manrope, Inter, sans-serif;
  font-weight: 700;
}
.st-language-switcher .mod-languages { margin: 0; }
.st-language-switcher select {
  width: auto;
  min-width: 9.75rem;
  height: 2.75rem;
  margin: 0;
  padding: 0 2.25rem 0 .85rem;
  border: 1px solid rgba(10, 105, 112, .34);
  border-radius: .8rem;
  background: #eef8f6;
  color: #12323a;
  box-shadow: 0 8px 24px rgba(6, 20, 38, .08);
  cursor: pointer;
}
.st-language-switcher select:focus-visible {
  outline: 3px solid rgba(19, 151, 157, .28);
  outline-offset: 2px;
}
.st-language-switcher ul.lang-inline {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .35rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.st-language-switcher ul.lang-inline a,
.st-language-switcher ul.lang-inline .lang-active a {
  display: inline-flex;
  align-items: center;
  min-height: 2.5rem;
  padding: .45rem .7rem;
  border: 1px solid rgba(10, 105, 112, .28);
  border-radius: .7rem;
  background: #eef8f6;
  color: #12323a;
  text-decoration: none;
}
.st-language-switcher ul.lang-inline .lang-active a {
  border-color: #108c91;
  background: #d8f0ec;
}
[dir="rtl"] .st-language-switcher select { padding: 0 .85rem 0 2.25rem; }

/* Header language control: one compact flag-and-text dropdown beside auth. */
.st-header-language {
  position: relative;
  z-index: 1105;
  flex: 0 0 auto;
  margin-inline: .55rem .25rem;
  font-family: Manrope, Inter, sans-serif;
}
.st-header-language .mod-languages { margin: 0; }
.st-language-menu { position: relative; margin: 0; }
.st-language-menu > summary {
  display: flex;
  align-items: center;
  gap: .55rem;
  min-width: 9.75rem;
  min-height: 44px;
  padding: .55rem .7rem;
  border: 1px solid rgba(10, 105, 112, .42);
  border-radius: .7rem;
  background: #eef8f6;
  color: #17353b;
  font-size: .88rem;
  font-weight: 800;
  line-height: 1.1;
  list-style: none;
  cursor: pointer;
  box-shadow: 0 8px 22px rgba(6, 20, 38, .12);
}
.st-language-menu > summary::-webkit-details-marker { display: none; }
.st-language-menu > summary::marker { display: none; content: ''; }
.st-language-menu > summary:hover,
.st-language-menu > summary:focus-visible,
.st-language-menu[open] > summary {
  border-color: #d7a63a;
  background: #fff9ef;
  outline: none;
}
.st-language-flag {
  flex: 0 0 auto;
  width: 24px;
  height: 16px;
  object-fit: cover;
  border-radius: 2px;
  box-shadow: 0 0 0 1px rgba(6, 20, 38, .12);
}
.st-language-caret {
  margin-inline-start: auto;
  color: #0e7479;
  font-size: 1.05rem;
  transition: transform .18s ease;
}
.st-language-menu[open] .st-language-caret { transform: rotate(180deg); }
.st-language-menu > ul {
  position: absolute;
  top: calc(100% + .45rem);
  inset-inline-end: 0;
  z-index: 1200;
  width: 14rem;
  max-height: min(24rem, 70vh);
  margin: 0;
  padding: .4rem;
  overflow-y: auto;
  border: 1px solid rgba(10, 105, 112, .25);
  border-radius: .8rem;
  background: #fff;
  box-shadow: 0 18px 42px rgba(6, 20, 38, .2);
  list-style: none;
}
.st-language-menu > ul li { margin: 0; padding: 0; }
.st-language-menu > ul a {
  display: flex;
  align-items: center;
  gap: .65rem;
  min-height: 42px;
  padding: .55rem .65rem;
  border-radius: .55rem;
  color: #17353b;
  font-size: .9rem;
  font-weight: 750;
  text-decoration: none;
}
.st-language-menu > ul a:hover,
.st-language-menu > ul a:focus-visible,
.st-language-menu > ul .is-active a {
  background: #e2f3f0;
  color: #075f65;
  outline: none;
}
[dir="rtl"] .st-language-menu > summary,
[dir="rtl"] .st-language-menu > ul a { direction: rtl; text-align: right; }

/* Helix's off-canvas positioning is LTR-first. Keep the Arabic desktop shell
   contained and use the standard mega navigation at desktop widths. */
html[dir="rtl"],
html[dir="rtl"] body,
html[dir="rtl"] .body-wrapper { max-width: 100%; overflow-x: clip; }

html[dir="rtl"] #sp-header .sp-megamenu-parent { direction: rtl; }
html[dir="rtl"] #sp-header .st-header-auth { direction: ltr; }

@media (min-width: 1200px) {
  html[dir="rtl"] .offcanvas-menu,
  html[dir="rtl"] .offcanvas-overlay { display: none !important; }
  html[dir="rtl"] #sp-menu > .sp-column {
    min-width: 0;
    gap: 1rem;
    justify-content: space-between !important;
  }
  html[dir="rtl"] .sp-megamenu-parent {
    min-width: 0;
    flex: 1 1 auto;
    justify-content: flex-start;
  }
  html[dir="rtl"] .st-header-auth { flex: 0 0 auto; }
}

@media (max-width: 991.98px) {
  #sp-top-bar .row { align-items: center; }
  #sp-top1 { width: 64%; flex: 0 0 64%; }
  #sp-top2 { width: 36%; flex: 0 0 36%; }
  .st-top-utility-column { justify-content: flex-end; }
  .st-language-switcher { margin: .4rem 0; }
  .st-language-switcher select {
    min-width: 7.25rem;
    max-width: 100%;
    height: 2.5rem;
    font-size: .875rem;
  }
  .st-header-language { margin-inline: auto .45rem; }
  .st-language-menu > summary { min-width: 8.75rem; min-height: 42px; }
}

@media (max-width: 575.98px) {
  #sp-top1 { width: 57%; flex-basis: 57%; }
  #sp-top2 { width: 43%; flex-basis: 43%; }
  .st-language-switcher select { min-width: 0; width: 100%; }
  .st-header-language { max-width: calc(100vw - 105px); }
  .st-language-menu > summary { min-width: 8rem; padding-inline: .55rem; }
  .st-language-menu > ul { width: min(14rem, calc(100vw - 2rem)); }
}
