/*
 * Spineboshara.com - Arabic pages (lang="ar" dir="rtl")
 * Load after the other stylesheets, only on Arabic pages.
 * Same roles as the Latin system (DESIGN.md): Noto Naskh Arabic for headings (the serif role),
 * IBM Plex Sans Arabic for text and UI (the sans role). Both self-hosted, SIL OFL.
 * Latin words inside Arabic text fall back to Source Serif 4 / Source Sans 3.
 * Version: 1.8.0
 */

@font-face {
    font-family: 'Noto Naskh Arabic';
    font-style: normal;
    font-display: swap;
    font-weight: 400 700;
    src: url('/assets/fonts/noto-naskh-arabic-arabic-wght-normal.woff2') format('woff2-variations');
    unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC;
}

@font-face {
    font-family: 'IBM Plex Sans Arabic';
    font-style: normal;
    font-display: swap;
    font-weight: 400;
    src: url('/assets/fonts/ibm-plex-sans-arabic-arabic-400-normal.woff2') format('woff2');
    unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC;
}

@font-face {
    font-family: 'IBM Plex Sans Arabic';
    font-style: normal;
    font-display: swap;
    font-weight: 600;
    src: url('/assets/fonts/ibm-plex-sans-arabic-arabic-600-normal.woff2') format('woff2');
    unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC;
}

:root[lang="ar"] {
    --font-family-primary: 'IBM Plex Sans Arabic', 'Source Sans 3', 'Segoe UI', Tahoma, Arial, sans-serif;
    --font-family-headings: 'Noto Naskh Arabic', 'Source Serif 4', 'Times New Roman', serif;
    --line-height-base: 1.85;
}

/* Arabic is a connected script: no negative tracking, more line height */
[lang="ar"] h1,
[lang="ar"] h2,
[lang="ar"] h3,
[lang="ar"] h4,
[lang="ar"] .page-title,
[lang="ar"] .price-amount,
[lang="ar"] .faq-list summary,
[lang="ar"] .logo-text {
    letter-spacing: 0;
}

[lang="ar"] h1,
[lang="ar"] .page-title {
    line-height: 1.35;
}

[lang="ar"] h2,
[lang="ar"] h3 {
    line-height: 1.45;
}

[lang="ar"] p,
[lang="ar"] li,
[lang="ar"] .so-prose p,
[lang="ar"] .faq-answer p {
    line-height: 1.9;
}

/* The wordmark and Latin names stay Latin */
[lang="ar"] .logo-text {
    font-family: 'Source Serif 4', Georgia, serif;
}

/* ---- Direction fixes for shared components that use physical left/right ---- */

[dir="rtl"] .breadcrumb-list .breadcrumb-item + .breadcrumb-item::before {
    margin-right: 0;
    margin-left: 0.35rem;
}

[dir="rtl"] .nav-link::after {
    transform-origin: right;
}

[dir="rtl"] .nav-link.cta-button {
    margin-left: 0;
    margin-right: var(--spacing-xs);
}

[dir="rtl"] .skip-to-main {
    left: auto;
    right: var(--spacing-sm);
}

[dir="rtl"] .steps > li::before {
    font-family: 'Source Serif 4', Georgia, serif;
}
