/* Explain: Base reset, typography, and site-wide background styling with RTL support. */
* {
    box-sizing: border-box;
}

html {
    background: var(--background-color);
    color: var(--text-color);
    scroll-padding-top: 92px;
}

body {
    margin: 0;
    overflow-x: hidden;
    background-color: #000;
    background-image: url('https://files.cdn-files-a.com/uploads/12355119/normal_6aaef239e237a.png?format=avif');
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    color: var(--text-color);
    font-family: var(--font-body);
}

@media (max-width: 767px) {
    body {
        background-attachment: scroll;
    }
}

h1, h2, h3, h4, h5, h6, .font-heading, [style*="var(--font-heading)"] {
    text-rendering: optimizeLegibility;
}

button,
a,
select {
    cursor: pointer;
}

a[href^="tel:"] {
    direction: ltr;
    unicode-bidi: isolate;
}

img {
    display: block;
    max-width: 100%;
}

::selection {
    background: var(--accent-color);
    color: #000000;
}

/* RTL & Arabic Typography Support */
html[dir="rtl"] body {
    font-family: var(--font-arabic), sans-serif;
}

html[dir="rtl"] h1, 
html[dir="rtl"] h2, 
html[dir="rtl"] h3, 
html[dir="rtl"] h4, 
html[dir="rtl"] h5, 
html[dir="rtl"] h6,
html[dir="rtl"] [style*="var(--font-heading)"] {
    font-family: var(--font-arabic), serif !important;
}

html[dir="rtl"] .text-left {
    text-align: right !important;
}

html[dir="rtl"] .fa-arrow-left,
html[dir="rtl"] .fa-arrow-right {
    transform: rotate(180deg);
}