/* ═══════════════════════════════════════════════════════════════
   Avenir Arabic — inheritance-safe + iOS Arabic shaping
   ═══════════════════════════════════════════════════════════════ */

:root {
    --font-avenir-arabic: "Avenir Arabic", -apple-system, BlinkMacSystemFont, "Geeza Pro", "Noto Sans Arabic", sans-serif;
    --font-plusjakarta: "Avenir Arabic", sans-serif !important;
    --font-sans: "Avenir Arabic", sans-serif !important;
}

html,
html body {
    font-family: "Avenir Arabic", -apple-system, BlinkMacSystemFont, "Geeza Pro", "Noto Sans Arabic", sans-serif !important;
    font-synthesis: none;
}

html body :is(
    .prose,
    .note-editable, .note-editing-area,
    .cke_editable,
    .keditor-snippet-content,
    [data-keditor-component],
    .topic-details,
    .page-content
) {
    font-family: "Avenir Arabic", "Noto Sans Arabic", sans-serif !important;
}

html body :is([style*="font-family"], [style*="font:"], font, [face]) {
    font-family: "Avenir Arabic", "Noto Sans Arabic", sans-serif !important;
}

html body :is(#topnav, .navigation-menu) {
    font-family: "Avenir Arabic", "Noto Sans Arabic", sans-serif !important;
}

html body :is(
    h1, h2, h3, h4, h5, h6,
    .h1, .h2, .h3, .h4, .h5, .h6,
    .font-bold, .font-semibold, .font-extrabold, .font-black,
    strong, b, th,
    .hp-section-title, .ap-section-title,
    .home-hero-title, .about-brief-title,
    .cso-card__title, .di-card__title
) {
    font-weight: 700 !important;
    font-synthesis: none;
}

/* ─── Icon fonts ─── */
html body :is(.fa, .fas, .far, .fab, .fal, .fat, .fad, .fa-solid, .fa-regular, .fa-brands) {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands" !important;
    font-weight: 900 !important;
}
html body :is(.far, .fa-regular) { font-weight: 400 !important; }
html body :is([class^="uil-"], [class*=" uil-"]) { font-family: "unicons" !important; }
html body :is([class^="mdi-"], [class*=" mdi-"], .material-icons) { font-family: "Material Design Icons" !important; }
html body :is([class^="bi-"], [class*=" bi-"]) { font-family: "bootstrap-icons" !important; }
html body .swiper-icons { font-family: swiper-icons !important; }
html body .glyphicon { font-family: "Glyphicons Halflings" !important; }

/* Arabic shaping — iOS Safari */
html[dir="rtl"],
html[dir="rtl"] body,
html[dir="rtl"] body *:not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fat):not(.fad):not(.fa-solid):not(.fa-regular):not(.fa-brands):not(.glyphicon):not(.swiper-icons):not(.material-icons):not([class^="uil-"]):not([class*=" uil-"]):not([class^="mdi-"]):not([class*=" mdi-"]):not([class^="bi-"]):not([class*=" bi-"]) {
    letter-spacing: normal !important;
    font-feature-settings: "liga" 1, "calt" 1, "rlig" 1 !important;
    -webkit-font-feature-settings: "liga" 1, "calt" 1, "rlig" 1 !important;
    font-synthesis: none !important;
}

html[dir="rtl"] :is(.tracking-tighter, .tracking-tight, .tracking-wide, .tracking-wider, .tracking-widest),
html[dir="rtl"] [class*="tracking-["] {
    letter-spacing: normal !important;
}
