/* Canonical Arabic and Sorani Typeface, Noto Kufi Arabic (Option B). */
@font-face {
  font-family: "Noto Kufi Arabic";
  src: url("assets/NotoKufiArabic.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-089F, U+08A0-08FF, U+200C-200F, U+FB50-FDFF, U+FE70-FEFF, U+10E60-10E7F, U+1EE00-1EEFF;
}

/* Inter continues to draw Latin text, including mixed-language form entries. */
:root,
html[dir="rtl"] {
  --font: Inter, "Noto Kufi Arabic", Arial, sans-serif;
}

.languages button:lang(ar),
.languages button:lang(ckb) {
  font-family: Inter, "Noto Kufi Arabic", Arial, sans-serif;
  font-weight: 500;
  font-synthesis: none;
  letter-spacing: normal;
  line-height: 1.9;
}

html[dir="rtl"] body {
  font-weight: 400;
  font-synthesis: none;
  line-height: 1.95;
}

html[dir="rtl"] h1,
html[dir="rtl"] h2,
html[dir="rtl"] h3,
html[dir="rtl"] .hero h1,
html[dir="rtl"] .hero h1 .highlight,
html[dir="rtl"] .section-top h2,
html[dir="rtl"] .styles-copy h2,
html[dir="rtl"] .process-heading h2,
html[dir="rtl"] .guide-intro h2,
html[dir="rtl"] .plan-intro h2,
html[dir="rtl"] .hotel-search-intro h2,
html[dir="rtl"] .journey-card h3,
html[dir="rtl"] .style-list h3 {
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: normal;
}

html[dir="rtl"] .hero h1 { font-size: clamp(40px, 4.2vw, 63px); }
html[dir="rtl"] .hero-copy > p { line-height: 2; }

html[dir="rtl"] .field label,
html[dir="rtl"] .site-nav,
html[dir="rtl"] .eyebrow,
html[dir="rtl"] .edition-line,
html[dir="rtl"] .card-type,
html[dir="rtl"] .service-features,
html[dir="rtl"] .travel-strip,
html[dir="rtl"] .hero-photo figcaption > span,
html[dir="rtl"] .hero-inset small,
html[dir="rtl"] .services-photo figcaption > span {
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: normal;
}

html[dir="rtl"] .button,
html[dir="rtl"] .site-nav .nav-plan,
html[dir="rtl"] .card-cta,
html[dir="rtl"] .text-link,
html[dir="rtl"] .service-link,
html[dir="rtl"] .services-list summary,
html[dir="rtl"] .faq-list summary,
html[dir="rtl"] strong,
html[dir="rtl"] .hero-photo figcaption strong,
html[dir="rtl"] .styles-photo figcaption {
  font-weight: 600;
  line-height: 1.85;
  letter-spacing: normal;
}

html[dir="rtl"] .field input,
html[dir="rtl"] .field select,
html[dir="rtl"] #brief-text,
html[dir="rtl"] .field label small {
  font-weight: 400;
  line-height: 1.95;
  letter-spacing: normal;
}

html[dir="rtl"] .plan-mini > span,
html[dir="rtl"] .wonder p {
  line-height: 1.9;
  letter-spacing: normal;
}

html[dir="rtl"] .hero-inset { width: 195px; }
html[dir="rtl"] .hero-inset small { font-size: 12px; }
html[dir="rtl"] .hero-photo figcaption { padding-inline-end: 45px; }
html[dir="rtl"] .styles-photo figcaption { font-size: 15px; }
html[dir="rtl"] .site-nav a { white-space: normal; }
html[dir="rtl"] .services-list summary,
html[dir="rtl"] .faq-list summary { padding-inline-end: 14px; }
html[dir="rtl"] .style-list a > div,
html[dir="rtl"] .card-caption > div { min-width: 0; }

@media (max-width: 1000px) {
  html[dir="rtl"] .hero h1 { font-size: 43px; }
  html[dir="rtl"] .hero-inset { width: 177px; }
}

@media (max-width: 760px) {
  html[dir="rtl"] .hero h1 { font-size: clamp(36px, 6.8vw, 53px); }
  html[dir="rtl"] .hero-inset { width: 183px; }
  html[dir="rtl"] .hero-photo figcaption { padding-inline-end: 105px; }
}

@media (max-width: 480px) {
  html[dir="rtl"] .hero h1 { font-size: clamp(30px, 7.8vw, 37px); }
  html[dir="rtl"] .hero-inset { width: 164px; }
  html[dir="rtl"] .hero-photo figcaption strong { font-size: 17px; }
  html[dir="rtl"] .hero-photo figcaption { padding-inline-end: 100px; }
  html[dir="rtl"] .hero-inset strong { font-size: 14px; }
  html[dir="rtl"] .hero-inset small { font-size: 12px; }
  html[dir="rtl"] .trip-form,
  html[dir="rtl"] .hotel-search-form { padding-inline: 18px; }
}
