/* ============================================================
   AL-AHOUD FINAL GLOBAL DESIGN SYSTEM
   ONE FONT
   ONE TYPOGRAPHY
   ONE NAVIGATION
   ONE ACTIVE PAGE
   ============================================================ */

:root {
    --al-ahoud-navy: #10264b;
    --al-ahoud-red: #d71920;
    --al-ahoud-font: "Cairo", Tahoma, Arial, sans-serif;
}

/* ------------------------------------------------------------
   GLOBAL FONT
   ------------------------------------------------------------ */

html,
body,
body *,
button,
input,
select,
textarea {
    font-family: var(--al-ahoud-font) !important;
}

html,
body {
    direction: rtl !important;
}

body {
    margin: 0;
    direction: rtl !important;
}

/* ------------------------------------------------------------
   TYPOGRAPHY
   ------------------------------------------------------------ */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--al-ahoud-font) !important;
    font-weight: 800 !important;
}

p,
li,
span,
label,
a,
button,
input,
select,
textarea {
    font-family: var(--al-ahoud-font) !important;
}

/* ------------------------------------------------------------
   NAVIGATION - COMPLETE RESET
   ------------------------------------------------------------ */

/*
   IMPORTANT:
   Remove every old underline mechanism first.
*/

header nav a,
header nav a::before,
header nav a::after,
nav a,
nav a::before,
nav a::after,
.nav-links a,
.nav-links a::before,
.nav-links a::after,
.navbar a,
.navbar a::before,
.navbar a::after {
    text-decoration: none !important;
    border: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

/*
   Remove old active colors/classes.
*/

header nav a.active,
header nav a.active-page,
header nav a.active-link,
nav a.active,
nav a.active-page,
nav a.active-link,
.nav-links a.active,
.nav-links a.active-page,
.nav-links a.active-link,
.navbar a.active,
.navbar a.active-page,
.navbar a.active-link {
    color: var(--al-ahoud-navy) !important;
    text-decoration: none !important;
    border: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

/*
   ALL navigation links are normal navy.
*/

header nav a,
nav a,
.nav-links a,
.navbar a {
    color: var(--al-ahoud-navy) !important;
    text-decoration: none !important;
    border: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    position: relative !important;
}

/*
   Disable old pseudo-elements on every link.
*/

header nav a::before,
header nav a::after,
nav a::before,
nav a::after,
.nav-links a::before,
.nav-links a::after,
.navbar a::before,
.navbar a::after {
    content: none !important;
    display: none !important;
}

/*
   ONLY our active class gets the red underline.
*/

header nav a.al-ahoud-active-nav,
nav a.al-ahoud-active-nav,
.nav-links a.al-ahoud-active-nav,
.navbar a.al-ahoud-active-nav {
    color: var(--al-ahoud-red) !important;
    text-decoration: none !important;
    border: none !important;
    box-shadow: none !important;
}

/*
   ONLY ONE red underline.
*/

header nav a.al-ahoud-active-nav::after,
nav a.al-ahoud-active-nav::after,
.nav-links a.al-ahoud-active-nav::after,
.navbar a.al-ahoud-active-nav::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;

    left: 0 !important;
    right: 0 !important;
    bottom: -14px !important;

    height: 3px !important;

    background: var(--al-ahoud-red) !important;

    border: 0 !important;
    border-radius: 3px !important;

    box-shadow: none !important;
}

/*
   Hover must NEVER create a second line.
*/

header nav a:hover,
nav a:hover,
.nav-links a:hover,
.navbar a:hover {
    text-decoration: none !important;
    border: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

header nav a:hover::before,
header nav a:hover::after,
nav a:hover::before,
nav a:hover::after,
.nav-links a:hover::before,
.nav-links a:hover::after,
.navbar a:hover::before,
.navbar a:hover::after {
    content: none !important;
    display: none !important;
}

/*
   Re-enable ONLY our active underline after hover.
*/

header nav a.al-ahoud-active-nav:hover::after,
nav a.al-ahoud-active-nav:hover::after,
.nav-links a.al-ahoud-active-nav:hover::after,
.navbar a.al-ahoud-active-nav:hover::after {
    content: "" !important;
    display: block !important;

    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -14px !important;

    height: 3px !important;

    background: var(--al-ahoud-red) !important;
    border-radius: 3px !important;
}

/* ------------------------------------------------------------
   RTL
   ------------------------------------------------------------ */

header,
nav,
main,
section,
footer {
    direction: rtl !important;
}

/* ------------------------------------------------------------
   FORMS
   ------------------------------------------------------------ */

input,
textarea,
select {
    direction: rtl !important;
    text-align: right !important;
}

/* ------------------------------------------------------------
   BUTTONS
   ------------------------------------------------------------ */

button,
.btn,
.button {
    font-family: var(--al-ahoud-font) !important;
}

/* ------------------------------------------------------------
   MOBILE
   ------------------------------------------------------------ */

@media (max-width: 768px) {

    header nav a.al-ahoud-active-nav::after,
    nav a.al-ahoud-active-nav::after,
    .nav-links a.al-ahoud-active-nav::after,
    .navbar a.al-ahoud-active-nav::after {
        bottom: -7px !important;
        height: 2px !important;
    }

}
/* ============================================================
   FINAL TYPOGRAPHY TUNING — AL-AHOUD
   Consistent Cairo sizing across all public pages and admin.
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700;800;900&display=swap');

:root {
    --al-ahoud-font: "Cairo", Tahoma, Arial, sans-serif;
    --al-ahoud-body-size: 16px;
}

html { font-size: 16px; }
body {
    font-family: var(--al-ahoud-font) !important;
    font-size: var(--al-ahoud-body-size) !important;
    font-weight: 400;
    line-height: 1.8;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

h1 { font-size: clamp(32px, 4vw, 46px) !important; line-height: 1.25 !important; letter-spacing: -0.35px; }
h2 { font-size: clamp(26px, 3vw, 34px) !important; line-height: 1.35 !important; }
h3 { font-size: clamp(21px, 2.2vw, 26px) !important; line-height: 1.45 !important; }
h4 { font-size: 20px !important; line-height: 1.5 !important; }
h5 { font-size: 18px !important; line-height: 1.55 !important; }
h6 { font-size: 16px !important; line-height: 1.6 !important; }

p, li { font-size: 16px; line-height: 1.85; }
small { font-size: 13px !important; line-height: 1.65; }
nav a, .nav-links a, .navbar a { font-size: 15px !important; font-weight: 700 !important; line-height: 1.4 !important; }
button, input, select, textarea { font-size: 15px !important; line-height: 1.5 !important; }

@media (max-width: 720px) {
    html { font-size: 15px; }
    body { font-size: 15px !important; line-height: 1.75; }
    p, li { font-size: 15px; line-height: 1.8; }
    nav a, .nav-links a, .navbar a { font-size: 14px !important; }
    button, input, select, textarea { font-size: 14px !important; }
}

/* Language switcher is part of the site UI, not an overlay-sized control. */
.ahoud-language-switcher {
    font-family: var(--al-ahoud-font) !important;
    min-height: 42px;
    align-items: center;
}
.ahoud-language-switcher button {
    min-width: 78px;
    min-height: 34px;
    font-family: var(--al-ahoud-font) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}
@media (max-width: 720px) {
    .ahoud-language-switcher { min-height: 38px; }
    .ahoud-language-switcher button { min-width: 68px; min-height: 30px; font-size: 12px !important; }
}
