/* Unified font — Regular face for ALL weights (same look as body text) */
@font-face {
    font-family: "Avenir Arabic";
    src: url("/assets/fonts/avenir-arabic/NotoSansArabic-Regular.ttf") format("truetype");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Noto Sans Arabic";
    src: url("/assets/fonts/avenir-arabic/NotoSansArabic-Regular.ttf") format("truetype");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

:root {
    --font-site: "Avenir Arabic", "Noto Sans Arabic", sans-serif !important;
    --font-avenir-arabic: "Avenir Arabic", "Noto Sans Arabic", sans-serif !important;
    --font-plusjakarta: "Avenir Arabic", "Noto Sans Arabic", sans-serif !important;
    --font-sans: "Avenir Arabic", "Noto Sans Arabic", sans-serif !important;
    --default-font-family: "Avenir Arabic", "Noto Sans Arabic", sans-serif !important;
}

html,
html body {
    font-family: "Avenir Arabic", "Noto Sans Arabic", sans-serif !important;
    font-weight: 400 !important;
    font-synthesis: none !important;
    letter-spacing: normal !important;
}

/* Same face for every text element */
html body *:not(i):not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fat):not(.fad):not(.fa-solid):not(.fa-regular):not(.fa-brands):not(.fa-classic):not(.glyphicon):not(.swiper-icons):not(.material-icons):not(.material-design-icons):not([class^="uil-"]):not([class*=" uil-"]):not([class^="mdi-"]):not([class*=" mdi-"]):not([class^="bi-"]):not([class*=" bi-"]) {
    font-family: "Avenir Arabic", "Noto Sans Arabic", sans-serif !important;
    letter-spacing: normal !important;
    font-synthesis: none !important;
}

/* Titles use SAME Regular face as body — only slightly heavier weight */
html body :is(
    h1, h2, h3, h4, h5, h6,
    .h1, .h2, .h3, .h4, .h5, .h6,
    .home-hero-title,
    .about-brief-badge, .about-brief-title,
    .hp-section-title, .hp-section-label, .hp-cat-card h4,
    .cso-card__title, .di-card__title, .ap-section-title,
    .font-bold, .font-semibold, .font-extrabold, .font-black,
    strong, b, th
) {
    font-family: "Avenir Arabic", "Noto Sans Arabic", sans-serif !important;
    font-weight: 400 !important;
}

html body :is(
    .home-hero-subtitle, .about-brief-subtitle, .hp-section-desc, .hp-cat-count, p, .prose
) {
    font-weight: 400 !important;
}

/* Icon fonts */
html body :is(.fa, .fas, .far, .fab, .fal, .fat, .fad, .fa-solid, .fa-regular, .fa-brands, .fa-classic),
html body i.fa, html body i.fas, html body i.far, html body i.fab {
    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, .material-design-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; }

html[dir="rtl"],
html[dir="rtl"] body {
    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;
}

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