/*
 * Arabic editorial layer v1.
 *
 * Loaded only by the 18 reviewed Arabic core pages. Article pages stay on
 * their frozen production assets and never receive this locale layer.
 */

html[lang="ar"] body[data-heading-contract="editorial-v1"] {
  --guga-ar-reading-width: 62ch;
  --guga-ar-lead-width: 58ch;
  --guga-ar-h4: clamp(1.0625rem, 1.25vw, 1.25rem);
  direction: rtl;
  text-align: start;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"],
html[lang="ar"] body[data-heading-contract="editorial-v1"] :is(button, input, select, textarea) {
  font-family: var(--sans), "Geeza Pro", Tahoma, Arial, sans-serif;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] :is(h1, h2, h3, h4, .serif) {
  font-family: var(--serif), "Geeza Pro", "Noto Naskh Arabic", "Traditional Arabic", serif;
  letter-spacing: normal !important;
  text-transform: none;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] h1 {
  max-width: 18ch;
  font-size: var(--guga-type-h1) !important;
  line-height: 1.2 !important;
  overflow-wrap: normal;
  hyphens: none;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] h2:not([data-heading-role="hero-slogan"]) {
  max-width: 28ch;
  font-size: var(--guga-type-h2) !important;
  line-height: 1.28 !important;
  overflow-wrap: normal;
  hyphens: none;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] h3 {
  max-width: 36ch;
  font-size: var(--guga-type-h3) !important;
  line-height: 1.38 !important;
  overflow-wrap: normal;
  hyphens: none;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] h2[data-heading-role="hero-slogan"] {
  max-width: 34ch;
  font-size: var(--guga-type-hero-slogan) !important;
  line-height: 1.3 !important;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] main h4 {
  max-width: 44ch;
  font-size: var(--guga-ar-h4);
  font-weight: 650;
  line-height: 1.45;
  letter-spacing: normal;
  text-wrap: balance;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] main :is(p, li, dd, dt) {
  line-height: 1.85;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] main :is(.hero-copy, .inner-hero-copy, .about-hero-copy, .contact-hero-copy) > p {
  max-width: var(--guga-ar-lead-width);
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] main :is(.prose, .resource-copy, .country-page-copy) {
  max-width: var(--guga-ar-reading-width);
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] :is(
  .kicker,
  .eyebrow,
  .breadcrumb,
  .section-number,
  .heading-hero-context,
  .country-visual-mark,
  .site-nav,
  .footer-links
) {
  letter-spacing: normal !important;
  text-transform: none !important;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] .heading-hero-context {
  max-width: 54ch;
  line-height: 1.55;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] :is(ul, ol) {
  padding-inline-start: 1.35em;
  padding-inline-end: 0;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] :is(input, textarea, select) {
  text-align: start;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] :is(input[type="email"], input[type="tel"], input[type="url"]) {
  direction: ltr;
  text-align: left;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] bdi[dir="ltr"],
html[lang="ar"] body[data-heading-contract="editorial-v1"] [data-bidi="ltr"] {
  direction: ltr;
  unicode-bidi: isolate;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] bdi[dir="auto"] {
  unicode-bidi: isolate;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] .site-nav > a {
  white-space: nowrap;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] .programme-card-heading,
html[lang="ar"] body[data-heading-contract="editorial-v1"] .editorial-empty-state-title,
html[lang="ar"] body[data-heading-contract="editorial-v1"] .contact-card-kicker {
  margin: 0;
  font: inherit;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] .ar-budget-country-title {
  max-width: 25ch;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] .ar-destination-card-title {
  max-width: 30ch;
}

/* The destinations rail scrolls internally. In an RTL, no-JS render some
 * engines expose the rail's negative inline overflow as document width even
 * though the track itself is scrollable. Clip only the outer viewport so the
 * rail remains usable and the page never gains a second horizontal scroller. */
html[lang="ar"] body[data-page="destinations"][data-heading-contract="editorial-v1"] .destination-carousel {
  overflow-x: clip;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] .university-country-head h2 {
  margin: 0;
  color: var(--burgundy);
  font-family: var(--serif), "Geeza Pro", "Noto Naskh Arabic", serif;
  font-weight: 400;
}

html[lang="ar"] body[data-heading-contract="editorial-v1"] .country-disclaimer,
html[lang="ar"] body[data-heading-contract="editorial-v1"] .degree-drawer-copy .degree-drawer-insight {
  padding-inline-start: 18px;
  padding-inline-end: 0;
  border-inline-start: 2px solid var(--burgundy);
  border-left: 0;
}

@media (max-width: 760px) {
  html[lang="ar"] body[data-heading-contract="editorial-v1"] .language-switch select {
    width: 170px;
  }

  html[lang="ar"] body[data-heading-contract="editorial-v1"] h1 {
    max-width: 15ch;
    font-size: var(--guga-type-h1-mobile) !important;
    line-height: 1.22 !important;
  }

  html[lang="ar"] body[data-heading-contract="editorial-v1"] h2:not([data-heading-role="hero-slogan"]) {
    max-width: 23ch;
    font-size: var(--guga-type-h2-mobile) !important;
    line-height: 1.3 !important;
  }

  html[lang="ar"] body[data-heading-contract="editorial-v1"] h2[data-heading-role="hero-slogan"] {
    max-width: 29ch;
    font-size: var(--guga-type-hero-slogan-mobile) !important;
    line-height: 1.32 !important;
  }

  html[lang="ar"] body[data-heading-contract="editorial-v1"] h3 {
    font-size: var(--guga-type-h3-mobile) !important;
    line-height: 1.4 !important;
  }

  html[lang="ar"] body[data-heading-contract="editorial-v1"] main :is(p, li, dd, dt) {
    font-size: max(1rem, 16px);
    line-height: 1.82;
  }
}
