/* Arabic (right-to-left) version of Ivory Villa. Loaded after site.css on the pages in ar/.
   Arabic type: Amiri (headings, the serif role) and Tajawal (text, the sans role).
   English blocks inside Arabic pages (dir="ltr") keep the English fonts and spacing. */
html[dir="rtl"] { --serif: "Amiri", "Times New Roman", serif; --sans: "Tajawal", system-ui, sans-serif; }
[dir="ltr"] { --serif: "Cormorant Garamond", Georgia, serif; --sans: "Jost", system-ui, sans-serif; }
.ltr { font: 300 16.5px/1.7 var(--sans); text-align: left; }
html[dir="rtl"] body { font: 400 17px/1.95 var(--sans); }

/* Arabic letters join, so no letter-spacing, capitals or italics on Arabic text */
html[dir="rtl"] :not([dir="ltr"], [dir="ltr"] *) { letter-spacing: 0 !important; text-transform: none !important; font-style: normal !important; }

/* Header and menu */
html[dir="rtl"] #nav:not(.ltr *) { font-size: 15px; font-weight: 500; gap: 34px; }
html[dir="rtl"] .pill:not(.ltr *), html[dir="rtl"] .menu-btn:not(.ltr *) { font-size: 14px; font-weight: 500; }
html[dir="rtl"] .bar .lang:not(.ltr *) { font: 400 13px/1 "Jost", system-ui, sans-serif; letter-spacing: .2em; text-transform: uppercase; }
@media (max-width: 1060px) { html[dir="rtl"] #nav { text-align: right; } }

/* Hero */
html[dir="rtl"] .banner h1:not(.ltr *) { font: 700 clamp(40px, 5.4vw, 80px)/1.3 var(--serif); }
html[dir="rtl"] .banner .side p:not(.ltr *) { font-size: 18px; max-width: 52ch; }
.banner .side p.tag { margin: 18px auto 0; font: 500 15px/1.6 var(--sans); color: #f1dfb6; }

/* Section headings and text */
html[dir="rtl"] .k:not(.ltr *) { font: 500 14px/1.5 var(--sans); }
html[dir="rtl"] .welcome h2:not(.ltr *), html[dir="rtl"] .sh h2:not(.ltr *) { font: 700 clamp(30px, 3.4vw, 46px)/1.4 var(--serif); }
html[dir="rtl"] .welcome .text p:not(.ltr *) { line-height: 1.95; }
html[dir="rtl"] .btn:not(.ltr *) { font: 500 14px/1 var(--sans); }
html[dir="rtl"] .suite b:not(.ltr *) { font: 700 24px/1.45 var(--serif); }
html[dir="rtl"] .suite em:not(.ltr *) { font: 500 14px/1 var(--sans); }
html[dir="rtl"] .amen li b:not(.ltr *) { font: 700 26px/1.4 var(--serif); }
html[dir="rtl"] .amen li i:not(.ltr *) { font-family: "Cormorant Garamond", Georgia, serif; }
html[dir="rtl"] .quote p:not(.ltr *) { max-width: 30ch; font: 700 clamp(28px, 3.4vw, 46px)/1.5 var(--serif); }
html[dir="rtl"] .bell .hint:not(.ltr *) { font: 500 13px/1.6 var(--sans); }
html[dir="rtl"] .bell .hint b:not(.ltr *) { font: 700 24px/1.4 var(--serif); }

/* Page copy */
html[dir="rtl"] .prose aside b:not(.ltr *) { font: 700 24px/1.5 var(--serif); }
html[dir="rtl"] .prose p:not(.ltr *) { line-height: 2; }
html[dir="rtl"] .prose p.lead:not(.ltr *) { font: 400 clamp(22px, 2vw, 27px)/1.8 var(--serif); }
html[dir="rtl"] .prose p.big:not(.ltr *), html[dir="rtl"] .big:not(.ltr *) { font: 700 clamp(26px, 2.6vw, 36px)/1.5 var(--serif); }
html[dir="rtl"] .pull:not(.ltr *) { border-left: 1px solid var(--line); border-right: 3px solid var(--champ); font: 400 clamp(21px, 1.9vw, 25px)/1.8 var(--serif); }
html[dir="rtl"] .stat p:not(.ltr *) { font: 400 20px/1.8 var(--serif); }
html[dir="rtl"] .stat .n:not(.ltr *) { font-family: "Cormorant Garamond", Georgia, serif; }
html[dir="rtl"] h3.sub:not(.ltr *) { font-weight: 700; line-height: 1.4; }
html[dir="rtl"] .sectors b:not(.ltr *) { font: 700 24px/1.4 var(--serif); }

/* Footer */
html[dir="rtl"] footer.site h3:not(.ltr *) { font-weight: 500; }

/* Left-to-right pieces: clocks (times, English city names) and the client-name scroller */
html[dir="rtl"] .clockband:not(.ltr *), html[dir="rtl"] .clients .track:not(.ltr *) { direction: ltr; }


/* Title on the photo banner: right side for Arabic */
html[dir="rtl"] .banner-img.titled .ph::before { background: linear-gradient(270deg, rgba(20,14,8,.45) 0%, rgba(20,14,8,.2) 30%, rgba(20,14,8,0) 50%); }
html[dir="rtl"] .banner-img.titled h1 { left: auto; right: 4.5%; font: 400 clamp(22px, 3.3vw, 48px)/1.3 "Cairo", "Tajawal", sans-serif; font-style: normal; }

/* Contact card: English company name sits on the right with the Arabic lines; larger small labels for Arabic */
html[dir="rtl"] .contact .card h2[dir="ltr"] { text-align: right; }
html[dir="rtl"] .contact .k2, html[dir="rtl"] .contact .group { font-size: 15px; font-weight: 500; }
html[dir="rtl"] .contact .cities { font-size: 24px; line-height: 1.7; }
html[dir="rtl"] .contact .num { display: inline-block; unicode-bidi: isolate; }

/* Home snippets (Arabic) */
html[dir="rtl"] .snip h2 { font: 700 clamp(24px, 2.2vw, 31px)/1.45 var(--serif); }
html[dir="rtl"] .snip p { line-height: 1.95; }
