/* =====================================================================
   AS Group — Arabic (RTL) layer
   Loaded after theme.css on /ar/ pages only (<html lang="ar" dir="rtl">).
   ===================================================================== */
[dir="rtl"] {
    --font-body: 'IBM Plex Sans Arabic', 'Inter', system-ui, sans-serif;
    --font-head: 'IBM Plex Sans Arabic', 'Poppins', system-ui, sans-serif;
}
[dir="rtl"] body { line-height: 1.8; }
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3, [dir="rtl"] h4, [dir="rtl"] h5 { line-height: 1.35; }

/* Arabic is a connected script: no tracking, no uppercase, no synthetic italics */
[dir="rtl"] .section-label,
[dir="rtl"] .project-card__cat,
[dir="rtl"] .marquee__item { letter-spacing: 0; text-transform: none; }
[dir="rtl"] .subsidiary__quote { font-style: normal; }

/* Brand labels over card photos use the Latin display serif in English; Arabic names need the Arabic face */
[dir="rtl"] .project-card__logo,
[dir="rtl"] .subsidiary__logo { font-family: var(--font-head); font-weight: 600; }

/* Plex Arabic tops out at 700 */
[dir="rtl"] .hero__title { font-weight: 700; line-height: 1.25; }
[dir="rtl"] .about-stat__num { font-weight: 700; }

/* ---------- Header & dropdowns ---------- */
[dir="rtl"] .nav-dropdown__menu { left: auto; right: 0; }
[dir="rtl"] .nav-submenu__toggle { text-align: right; }
[dir="rtl"] .nav-submenu__menu { left: auto; right: 100%; transform: translateX(-10px); }
[dir="rtl"] .nav-submenu:hover > .nav-submenu__menu,
[dir="rtl"] .nav-submenu:focus-within > .nav-submenu__menu { transform: translateX(0); }

/* ---------- Mobile menu (slides in from the left, the RTL "end") ---------- */
[dir="rtl"] .mobile-nav a, [dir="rtl"] .mobile-nav__toggle { text-align: right; }
[dir="rtl"] .mobile-nav__submenu { padding-left: 0; padding-right: 14px; }
[dir="rtl"] .offcanvas-header .btn-close {
    margin: calc(-.5 * var(--bs-offcanvas-padding-y)) auto calc(-.5 * var(--bs-offcanvas-padding-y)) calc(-.5 * var(--bs-offcanvas-padding-x));
}

/* ---------- Hero: shade the side the text sits on ---------- */
[dir="rtl"] .hero__overlay { background: linear-gradient(270deg, rgba(15,14,13,.85) 0%, rgba(15,14,13,.55) 60%, rgba(15,14,13,.3) 100%); }
[dir="rtl"] .hero__points { text-align: left; }
[dir="rtl"] .hero__points span { margin-right: 0; margin-left: 6px; }

/* ---------- Project CTA ---------- */
[dir="rtl"] .project-cta__right { text-align: left; }
@media (max-width: 768px) { [dir="rtl"] .project-cta__right { text-align: right; } }

/* ---------- Marquee: runs in the Arabic reading direction ---------- */
[dir="rtl"] .marquee__track { animation-name: marquee-rtl; }
@keyframes marquee-rtl { from { transform: translateX(0); } to { transform: translateX(50%); } }

/* ---------- Logo cards: the Arabic Tricore name wraps to two lines, so lift its logo above both ---------- */
[dir="rtl"] .project-card__img--light { padding-bottom: 94px; }

/* ---------- Group card brand links (thumbnail sits on the right) ---------- */
[dir="rtl"] .brand-chip { padding: 8px 8px 8px 14px; }

/* ---------- Subsidiary detail ---------- */
[dir="rtl"] .subsidiary__quote { border-left: 0; padding-left: 0; border-right: 1px solid var(--bronze); padding-right: 18px; }
[dir="rtl"] .subsidiary__nav-item--next { text-align: left; }

/* ---------- Blog ---------- */
[dir="rtl"] .blog-card__cat { left: auto; right: 16px; }

/* ---------- Footer ---------- */
[dir="rtl"] .footer-title::after { left: auto; right: 0; }
[dir="rtl"] .bi-send-fill::before { transform: scaleX(-1); }

/* ---------- Forms: addresses and numbers stay LTR, aligned to the RTL edge ---------- */
[dir="rtl"] input[type="email"],
[dir="rtl"] input[type="tel"] { direction: ltr; text-align: right; }
[dir="rtl"] input[type="email"]::placeholder,
[dir="rtl"] input[type="tel"]::placeholder { direction: rtl; }

/* ---------- Overlays & floating controls ---------- */
[dir="rtl"] .newsletter-modal__close { right: auto; left: 14px; }
[dir="rtl"] .search-close { right: auto; left: 30px; }
[dir="rtl"] .back-to-top { right: auto; left: 24px; }

/* =====================================================================
   Refined visual system — Arabic tuning (all pages)
   ===================================================================== */
[dir="rtl"] .section-label { letter-spacing: 0; }
[dir="rtl"] .section-title { letter-spacing: 0; line-height: 1.45; }
[dir="rtl"] .page-hero__title { letter-spacing: 0; line-height: 1.4; }
[dir="rtl"] .page-hero__subtitle { line-height: 1.95; }
[dir="rtl"] .section .text-muted-2, [dir="rtl"] .subsidiary__block p, [dir="rtl"] .about-tab-content p { line-height: 1.95; }
[dir="rtl"] .feature-card__title, [dir="rtl"] .service-card__title, [dir="rtl"] .cta-band__title,
[dir="rtl"] .about-stat__num, [dir="rtl"] .footer-title { letter-spacing: 0; }
[dir="rtl"] .feature-card__text, [dir="rtl"] .service-card__text { line-height: 1.85; }
[dir="rtl"] .subsidiary__quote { line-height: 1.9; }
[dir="rtl"] .subsidiary__nav-item small, [dir="rtl"] .contact-info__title { letter-spacing: 0; text-transform: none; }
[dir="rtl"] .btn-gold:hover i, [dir="rtl"] .btn-dark-pill:hover i { transform: translate(-2px, -2px); }
[dir="rtl"] .service-card:hover .service-card__link i { transform: translateX(-3px); }

/* Vertical Line: key figures, capability list, company profile */
[dir="rtl"] .key-figures__item dd { letter-spacing: 0; }
[dir="rtl"] .key-figures__item dt, [dir="rtl"] .capability-list__text { line-height: 1.9; }
[dir="rtl"] .capability-list__title { letter-spacing: 0; }
[dir="rtl"] .profile-cta__eyebrow { letter-spacing: 0; text-transform: none; }
