/* ================= Arabic / RTL =================
   Loaded only by /ar/. Handles direction flips and Arabic typography. */

/* Arabic must never carry letter-spacing - it breaks the script's joins. */
[dir="rtl"],
[dir="rtl"] * { letter-spacing: 0 !important; }

[dir="rtl"] {
  --ff-display: "Noto Naskh Arabic", "Geeza Pro", "Times New Roman", serif;
  --ff-label: "Tajawal", "Noto Sans Arabic", "Geeza Pro", system-ui, sans-serif;
  --ff-body: "Tajawal", "Noto Sans Arabic", "Geeza Pro", system-ui, sans-serif;
}
[dir="rtl"] body,
[dir="rtl"] p, [dir="rtl"] li, [dir="rtl"] label,
[dir="rtl"] input, [dir="rtl"] select, [dir="rtl"] button,
[dir="rtl"] .eyebrow, [dir="rtl"] .story-number,
[dir="rtl"] .nav-cta, [dir="rtl"] .craft-chips span,
[dir="rtl"] .palette-cap, [dir="rtl"] .sfloat span,
[dir="rtl"] .faq-sub, [dir="rtl"] .faq-a p { font-family: "Tajawal", "Noto Sans Arabic", "Geeza Pro", system-ui, sans-serif; }

[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3,
[dir="rtl"] .faq-item summary,
[dir="rtl"] .price { font-family: "Noto Naskh Arabic", "Geeza Pro", "Times New Roman", serif; }

/* Latin brand words keep their Latin face and direction */
[dir="rtl"] .wordmark small,
[dir="rtl"] .mobile-video-brand b { font-family: "Manrope", sans-serif; direction: ltr; unicode-bidi: isolate; letter-spacing: .42em !important; }

/* Arabic sits better slightly larger and with more leading */
[dir="rtl"] p, [dir="rtl"] .faq-a p, [dir="rtl"] .lead { line-height: 1.95; }
[dir="rtl"] h1, [dir="rtl"] h2 { line-height: 1.32; }
[dir="rtl"] .mobile-video-copy h1 { line-height: 1.3 !important; }
[dir="rtl"] .eyebrow, [dir="rtl"] .story-number,
[dir="rtl"] .craft-chips span, [dir="rtl"] .palette-cap { text-transform: none; }

/* ---- direction flips ---- */
[dir="rtl"] nav { flex-direction: row; }
[dir="rtl"] .mobile-video-copy,
[dir="rtl"] .wear-copy, [dir="rtl"] .hero-copy,
[dir="rtl"] .story-copy, [dir="rtl"] .details-copy,
[dir="rtl"] .film-copy, [dir="rtl"] .gallery-head,
[dir="rtl"] .order-intro, [dir="rtl"] .faq-wrap { text-align: right; }

[dir="rtl"] .mobile-video-brand { left: auto; right: 22px; }
[dir="rtl"] .mobile-video-scroll { right: auto; left: 22px; }
[dir="rtl"] .sc-stitch.l { left: auto; right: 14px; }
[dir="rtl"] .sc-stitch.r { right: auto; left: 14px; }
[dir="rtl"] .sf1 { right: auto; left: 2%; }
[dir="rtl"] .sf2 { left: auto; right: 2%; }
[dir="rtl"] .faq-item summary { flex-direction: row; }
/* Phone numbers are read left-to-right even in Arabic, so the +971 prefix
   stays on the left where the number actually begins. */
[dir="rtl"] .phone-field::after { left: 15px; right: auto; }
[dir="rtl"] .phone-field input,
[dir="rtl"] input.uae-phone {
  padding-left: 58px !important;
  padding-right: 14px !important;
  direction: ltr;
  text-align: left;
}
[dir="rtl"] .model-pop { border-left: 0; border-right: 3px solid #927867; }
[dir="rtl"] .mp-row, [dir="rtl"] .model-label,
[dir="rtl"] .agree { flex-direction: row; }

/* numbers and latin model names stay LTR inside Arabic sentences */
[dir="rtl"] .price,
[dir="rtl"] .launch-chip b,
[dir="rtl"] .sfloat b,
[dir="rtl"] .film-label b { direction: ltr; unicode-bidi: isolate; }

/* phone input is a latin number field */
[dir="rtl"] input[type="tel"],
[dir="rtl"] input[type="email"] { direction: ltr; text-align: left; }

/* marquee runs the other way */
[dir="rtl"] .marquee > div { animation-direction: reverse; }


/* ================= Arabic optical sizing =================
   Arabic set at the same pixel size as Latin reads noticeably smaller -
   the script has a shorter effective x-height and no capitals. Each value
   below is the English size scaled up so the two render at a similar
   apparent size. */

/* body copy */
[dir="rtl"] p { font-size: 16.5px; }
[dir="rtl"] .lead { font-size: clamp(17px, 1.6vw, 23px); }
[dir="rtl"] .story-copy p { font-size: 16.5px; }
[dir="rtl"] .details-intro { font-size: 17.5px; }
[dir="rtl"] .spec p { font-size: 15.5px; }
[dir="rtl"] .gallery-deck { font-size: 15px; }
[dir="rtl"] .faq-sub { font-size: 16.5px; }
[dir="rtl"] .faq-a p { font-size: 16px; }
[dir="rtl"] .price-note,
[dir="rtl"] .early-note,
[dir="rtl"] .form-foot { font-size: 14.5px; }
[dir="rtl"] .promise b { font-size: 15px; }
[dir="rtl"] .promise small { font-size: 13.5px; }
[dir="rtl"] .mp-row p { font-size: 14px; }
[dir="rtl"] .mp-row b, [dir="rtl"] .mp-h { font-size: 14.5px; }
[dir="rtl"] .mp-f { font-size: 13.5px; }

/* labels and small caps-style type */
[dir="rtl"] .eyebrow { font-size: 12.5px; }
[dir="rtl"] .story-number { font-size: 14px; }
[dir="rtl"] .craft-chips span { font-size: 12.5px; }
[dir="rtl"] .palette-cap { font-size: 12px !important; }
[dir="rtl"] .sfloat span { font-size: 11px; }
[dir="rtl"] .hero-proof span { font-size: 13px; }
[dir="rtl"] .launch-chip span { font-size: 12px; }
[dir="rtl"] .compat { font-size: 13.5px; }
[dir="rtl"] .film-copy span { font-size: 12.5px; }
[dir="rtl"] .slide span,
[dir="rtl"] .film-label { font-size: 11.5px; }
[dir="rtl"] .lang-switch { font-size: 11.5px; }
[dir="rtl"] .mobile-video-copy p { font-size: 11px; }
[dir="rtl"] .mobile-video-scroll { font-size: 11px; }

/* form */
[dir="rtl"] label { font-size: 13px; }
[dir="rtl"] input, [dir="rtl"] select { font-size: 16px; }
[dir="rtl"] .agree span { font-size: 14.5px; }
[dir="rtl"] .form-head span { font-size: 12px; }
[dir="rtl"] .submit { font-size: 13px; }
[dir="rtl"] .model-label { font-size: 13px; }

/* display type - Naskh runs small, so it needs the most lift */
[dir="rtl"] h1 { font-size: clamp(38px, 5.6vw, 82px); }
[dir="rtl"] h2 { font-size: clamp(32px, 4.4vw, 58px); }
[dir="rtl"] .story-copy h2 { font-size: clamp(34px, 4.6vw, 62px); }
[dir="rtl"] h3 { font-size: clamp(24px, 2.6vw, 34px); }
[dir="rtl"] .faq-item summary { font-size: clamp(18px, 1.9vw, 22px); }
[dir="rtl"] .price { font-size: clamp(56px, 8vw, 108px); }

@media (max-width: 850px) {
  [dir="rtl"] .mobile-video-copy h1 { font-size: clamp(33px, 9.2vw, 46px) !important; }
  [dir="rtl"] h2 { font-size: clamp(30px, 8.4vw, 44px); }
  [dir="rtl"] .story-copy h2 { font-size: clamp(31px, 8.6vw, 46px); }
  [dir="rtl"] p { font-size: 16px; }
}

/* Never let the browser synthesise Arabic from a Latin face - that is what
   detaches marks and misplaces letter dots. */
[dir="rtl"] { font-synthesis: none; text-rendering: optimizeLegibility; }
