/* AJRFED 1.9.1 — focused fixes; existing colours and mobile menu design retained. */
body.ajrfed-design-on.ajrfed-v191 {
    --ajrfed-arabic-heading-family: "Noto Kufi Arabic", "Noto Sans Arabic", Tahoma, Arial, sans-serif;
}
/* Same heading-style family used before the homepage's h4-to-p refactor. */
body.home.ajrfed-design-on.ajrfed-v191:not(.ajrfed-design-en) #content :is(
    .elementor-widget-text-editor, .ajrfed-v190-local-copy, .ajrfed-v190-copy-text,
    .e-n-tabs-content, .ajrfed-v190-local-copy p, .ajrfed-v190-copy-text li,
    .elementor-widget-text-editor p, .elementor-widget-text-editor h4
) {
    font-family:var(--ajrfed-arabic-heading-family) !important;
    font-weight:600 !important;
    font-size:clamp(15px,1.05vw,17px) !important;
    line-height:2.05 !important;
    letter-spacing:0 !important;
}
body.home.ajrfed-design-on.ajrfed-v191:not(.ajrfed-design-en) #content :is(.ajrfed-v190-copy-text,.ajrfed-v190-local-copy) :is(strong,b) { font-family:inherit !important; font-weight:700 !important; }
/* Justification belongs to prose. Short labels, icons, input text and navigation stay readable. */
body.ajrfed-design-on.ajrfed-v191 .ajrfed-v191-prose,
body.ajrfed-design-on.ajrfed-v191 #content .ajrfed-v191-prose {
    text-align:justify !important;
    text-align-last:start !important;
    text-justify:inter-word;
    word-break:normal !important;
    overflow-wrap:break-word !important;
    word-spacing:normal !important;
    letter-spacing:0 !important;
    hyphens:none;
    text-wrap:wrap;
    -webkit-line-clamp:unset !important;
    max-width:100%;
}
body.ajrfed-design-on.ajrfed-v191 .ajrfed-v191-prose :is(strong,b,a) { letter-spacing:0 !important; word-break:normal; }
body.ajrfed-design-on.ajrfed-v191 .ajrfed-v191-prose a { overflow-wrap:anywhere; }
/* One set above the existing Vision / Mission tabs, not below the site header. */
body.ajrfed-v191 .elementor-element-f4454ec .ajrfed-v191-socials { margin:18px auto 12px; padding:0; }
body.home.ajrfed-v191 #masthead .ajrfed-v191-socials { display:none !important; }
/* About uses the advisory-board panel system, with the original text preserved. */
body.ajrfed-v191 .ajrfed-v191-about { width:100%; max-width:1240px; margin-inline:auto; padding-block:16px 40px; }
body.ajrfed-v191 .ajrfed-v191-about .ajrfed-v190-header { margin:0 0 24px; }
body.ajrfed-v191 .ajrfed-v191-about .ajrfed-v191-hero-intro {
    color:#fff !important; font-size:16px; line-height:2.05; margin-top:20px;
    text-align:justify; text-align-last:start; letter-spacing:0; text-wrap:wrap;
}
body.ajrfed-v191 .ajrfed-v191-about .ajrfed-v191-hero-intro :is(strong,b,a) { color:#fff !important; -webkit-text-fill-color:currentColor; }
body.ajrfed-v191 .ajrfed-v191-about .ajrfed-v191-hero-intro > strong { display:block; margin-bottom:14px; color:#f1d487 !important; text-align:start; text-align-last:start; }
body.ajrfed-v191 .ajrfed-v191-about-panel { width:100%; min-width:0; }
body.ajrfed-v191 .ajrfed-v191-about-panel > :is(h3,h4):first-child { margin-top:0 !important; }
body.ajrfed-v191 .ajrfed-v191-about-panel p { margin:0 0 18px; }
body.ajrfed-v191 .ajrfed-v191-about-panel > ol { display:grid; gap:16px; list-style:none; padding:0; margin:20px 0 0; }
body.ajrfed-v191 .ajrfed-v191-about-panel > ol > li { margin:0; padding:22px; background:#faf7fc; border:1px solid #e9e0ee; border-inline-start:3px solid #ba8d3c; border-radius:14px; }
body.ajrfed-v191 .ajrfed-v191-about-panel > ol > li > strong { display:block; font-family:var(--ajrfed-arabic-heading-family); color:#572974; margin-bottom:10px; text-align:start; text-align-last:start; }
body.ajrfed-v191.ajrfed-design-en .ajrfed-v191-about :is(p,li,strong) { font-family:Arial,"Helvetica Neue",sans-serif !important; }
/* English file controls cannot inherit the Arabic browser's native button labels. */
body.ajrfed-v191 .ajrfed-v191-upload { min-width:0; text-align:start; }
body.ajrfed-v191 .ajrfed-v191-upload .ajrfed-v191-upload-title { display:block; color:#3e2b49; font-weight:700; margin:0 0 10px; }
body.ajrfed-v191 .ajrfed-v191-upload-hint { font-size:13px !important; margin:0 0 16px !important; color:#645b6c !important; line-height:1.8 !important; text-align:start !important; text-align-last:start !important; }
body.ajrfed-v191 .ajrfed-v191-file-button { position:relative; display:inline-flex; align-items:center; justify-content:center; min-height:46px; min-width:135px; max-width:100%; padding:10px 20px; border-radius:11px; background:#642980; border:1px solid #642980; color:#fff; font-size:14px; font-weight:700; overflow:hidden; cursor:pointer; }
body.ajrfed-v191 .ajrfed-v191-file-button:focus-within { outline:3px solid #be9141; outline-offset:3px; }
body.ajrfed-v191 .ajrfed-v191-file-button:hover { background:#522166; }
body.ajrfed-v191 .ajrfed-v191-file-button input.ajrfed-v191-native-file {
    position:absolute !important; inset:0 !important; opacity:0 !important;
    width:100% !important; height:100% !important; min-height:0 !important;
    margin:0 !important; padding:0 !important; cursor:pointer !important;
    border:0 !important; font-size:18px !important;
}
body.ajrfed-v191 .ajrfed-v191-file-status { display:block; padding-top:12px; font-size:13px; color:#645b6c; line-height:1.7; overflow-wrap:anywhere; }
body.ajrfed-v191 .ajrfed-v191-file-list { margin:12px 0 0; padding:0; list-style:none; }
body.ajrfed-v191 .ajrfed-v191-file-list li { padding:7px 9px; margin:4px 0; border:1px solid #e9dfed; border-radius:7px; background:#faf7fc; font-size:12px; line-height:1.7; text-align:start; word-break:break-word; }
body.ajrfed-v191 .ajrfed-v191-file-error { display:block; color:#a91e3d; font-size:13px; line-height:1.8; margin-top:10px; }
body.ajrfed-v191 :is(.ajrfed-v191-file-list,.ajrfed-v191-file-error)[hidden] { display:none !important; }
/* Existing and repaired news images have real layout space before lazy loading. */
body.ajrfed-v191.single-post .entry-content img.ajrfed-v191-image { min-height:90px; max-width:100% !important; height:auto !important; opacity:1 !important; filter:none !important; visibility:visible !important; }
body.ajrfed-v191 .ajrfed-news-card__media img.ajrfed-v191-image { display:block !important; width:100% !important; height:100% !important; min-height:0 !important; max-height:none !important; object-fit:contain !important; opacity:1 !important; filter:none !important; visibility:visible !important; }
body.ajrfed-v191 .ajrfed-v190-article-gallery > :is(img,a,picture),body.ajrfed-v191 .ajrfed-news-gallery > :is(img,a,picture) { min-width:0; }
body.ajrfed-v191 img.ajrfed-v191-image.is-exhausted { display:none !important; }
body.ajrfed-v191 .ajrfed-v191-image-notice { display:flex; align-items:center; justify-content:center; width:100%; min-height:100px; padding:24px; background:#f3edf6; border:1px solid #e1d4e8; border-radius:12px; color:#634874; font-size:13px; text-align:center; text-align-last:center; line-height:1.8; }
body.ajrfed-v191 .ajrfed-news-card__media > .ajrfed-v191-image-notice { height:100%; }
/* Preserve a contact link in BOTH cached desktop/mobile menu copies.
   Only suppress its desktop duplicate when a separate header contact button exists. */
@media(min-width:922px) {
 body.ajrfed-v191 #ast-desktop-header:has(.ast-custom-button-link) .main-header-menu > .ajrfed-menu-contact { display:none; }
}
/* Scrolling is native. There is no wheel/touch interception or moving content on scroll. */
@media(max-width:921px) {
 body.ajrfed-v191 :is(#masthead,.site-header,.ast-mobile-popup-drawer,.ast-mobile-popup-inner,.ast-mobile-popup-overlay,.ast-mobile-popup-content,.ast-mobile-header-content,.ajrfed-mobile-menu-panel) {
    backdrop-filter:none !important; -webkit-backdrop-filter:none !important; filter:none !important;
    scroll-behavior:auto !important;
 }
 body.ajrfed-v191 :is(.ast-mobile-popup-content,.ast-mobile-header-content) {
    overflow-x:hidden; overflow-y:auto; overscroll-behavior-y:contain;
    -webkit-overflow-scrolling:touch; touch-action:pan-y;
    scroll-behavior:auto !important; scrollbar-gutter:stable;
 }
 body.ajrfed-v191 .ast-mobile-popup-inner { max-height:100vh; max-height:100dvh; }
 body.ajrfed-v191 .ast-mobile-popup-content { flex:1 1 auto; min-height:0; max-height:calc(100vh - 72px); max-height:calc(100dvh - 72px); padding-bottom:20px; }
 body.ajrfed-v191 .ast-mobile-header-content { max-height:calc(100vh - 116px); max-height:calc(100dvh - 116px); }
 body.ajrfed-v191.admin-bar .ast-mobile-header-content { max-height:calc(100vh - 162px); max-height:calc(100dvh - 162px); }
 body.ajrfed-v191 :is(.ast-mobile-popup-content,.ast-mobile-header-content) :is(.main-navigation,.main-header-menu) { max-height:none !important; overflow:visible !important; }
 body.ajrfed-v191 :is(.ast-mobile-header-content,.ast-mobile-popup-content,.ast-builder-menu-mobile) .ajrfed-menu-contact { display:block !important; visibility:visible !important; opacity:1 !important; }
 body.ajrfed-v191 :is(.ast-mobile-header-content,.ast-mobile-popup-content,.ast-builder-menu-mobile) .ajrfed-menu-contact > a { display:flex !important; visibility:visible !important; opacity:1 !important; }
 body.ajrfed-v191 :is(.ajrfed-mobile-menu-link,.ast-builder-menu-mobile .menu-link) { transform:none !important; transition:color .12s ease,background-color .12s ease !important; }
 body.ajrfed-v191 .ajrfed-v191-about { padding-top:8px; }
 body.ajrfed-v191 .ajrfed-v191-about-panel { padding:20px !important; }
 body.ajrfed-v191 .ajrfed-v191-about-panel > ol > li { padding:16px; }
 body.ajrfed-v191 .ajrfed-v191-about .ajrfed-v191-hero-intro { font-size:15px; }
}

/* Scope accessibility text even when a page builder omits the theme utility. */
body.ajrfed-v191 .ajrfed-v191-socials .screen-reader-text {
 position:absolute !important; width:1px !important; height:1px !important;
 padding:0 !important; margin:-1px !important; overflow:hidden !important;
 clip:rect(0,0,0,0) !important; clip-path:inset(50%) !important;
 white-space:nowrap !important; border:0 !important;
}
body.ajrfed-v191 .ajrfed-v191-socials svg { flex:none; display:block; }
/* English field text follows the English form without changing its layout. */
body.ajrfed-v191.ajrfed-design-en .ajrfed-membership-form :is(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),textarea,select) {
 direction:ltr !important; text-align:left !important; text-align-last:left !important;
}
