/* -----------------------------------------------------------
   RTL + Persian typography layer  |  decora
   Loaded last: only base direction, font stack and small fixes.
   All layout mirroring is already baked into the main stylesheets.
----------------------------------------------------------- */

html { direction: rtl; }

body,
.body {
    direction: rtl;
    text-align: right;
    font-family: 'Vazirmatn', Tahoma, 'Segoe UI', sans-serif;
}

h1, h2, h3, h4, h5, h6,
p, a, span, li, td, th, label, blockquote, figcaption,
.button, .tf-button, .btn {
    font-family: 'Vazirmatn', Tahoma, sans-serif;
}

input, textarea, select, button, .form-control {
    direction: rtl;
    text-align: right;
    font-family: 'Vazirmatn', Tahoma, sans-serif;
}

input[type="email"],
input[type="url"],
input[type="password"],
input[type="number"] {
    direction: rtl;
    text-align: right;
}

/* keep the icon font untouched by the Persian stack */
[class^="icon-"],
[class*=" icon-"],
.icon,
.icomoon {
    font-family: 'icomoon' !important;
    font-weight: normal;
    font-style: normal;
}

/* latin runs (emails, prices, codes) stay readable inside rtl text */
.latin,
code, kbd, samp {
    direction: ltr;
    unicode-bidi: embed;
    font-family: 'Vazirmatn', monospace;
}

/* numbers / counters keep their natural order */
.countdown,
.countdown__timer,
.countdown__item,
.price,
.tf-price {
    unicode-bidi: plaintext;
}

/* lists: bullets on the right */
ul, ol { padding-right: 0; padding-left: 0; }

/* headings and titles that relied on ltr letter spacing */
.tf-title, .heading-section, .tf-heading { text-align: inherit; }

/* keep swiper doing its own rtl math */
.swiper, .swiper-container { direction: rtl; }
.swiper-wrapper { direction: rtl; }

/* small typographic polish for Persian text */
body { letter-spacing: 0 !important; word-spacing: 0.02em; }
h1, h2, h3, h4, h5, h6 { letter-spacing: 0 !important; line-height: 1.55; }
p, li { line-height: 1.95; }
.text-uppercase, [class*="uppercase"] { text-transform: none !important; }

/* -----------------------------------------------------------
   Sample imagery: one square photo used everywhere,
   so every frame crops it instead of stretching it.
----------------------------------------------------------- */
img:not([id*="logo"]):not([class*="logo"]):not([src*="icon"]) {
    object-fit: cover;
    object-position: center;
}
