/* ==========================================================================
   اصلاحات RTL — صفحات فارسی
   بعد از ../css/style.css بارگذاری می‌شود. فایل طراحی اصلی تغییر نکرده است؛
   اینجا فقط جهت (چپ/راست، تراز متن، زاویهٔ گرادیان‌ها) و تایپوگرافی خط
   فارسی اصلاح می‌شود. ساختار این فایل با ar/rtl.css یکسان است و بخش‌های
   ۱۰ تا ۱۳ برای اجزای جدید (نمایشگر گواهی، بایرق‌ها، تیم) افزوده شده است.
   ========================================================================== */

/* --- ۱. تایپوگرافی خط فارسی ---------------------------------------------- */
/* Playfair Display و Poppins فقط بازهٔ latin + latin-ext را پوشش می‌دهند،
   بنابراین گلیف‌های فارسی به خانوادهٔ بعدی می‌افتند. زنجیرهٔ جایگزین صریح
   نوشته شد تا روی هر پلتفرم یک نسخ/سنس خوانا پیدا شود. رشته‌های لاتین
   (نام، تلفن، شبا) همچنان با Poppins/Playfair کشیده می‌شوند. */
:root {
  --serif: "Playfair Display", "Vazirmatn", "IRANSans", "Noto Naskh Arabic", "Segoe UI", Tahoma, Georgia, serif;
  --sans:  "Poppins", "Vazirmatn", "IRANSans", "Noto Sans Arabic", "Segoe UI", Tahoma, Arial, sans-serif;
}

/* در خط فارسی فاصلهٔ حروف، حروف چسبان را از هم جدا می‌کند و مفهوم حرف
   بزرگ وجود ندارد؛ ضمناً ارتفاع بدنه فاصلهٔ خطی بیشتری می‌طلبد. */
h1, h2, h3, h4,
.eyebrow, .footer-col h4, .iban-box .label, .header-phone span,
.cert-card-label strong, .team-card-body strong,
.split-media .badge-card .label, .modal-box h3, .btn {
  letter-spacing: normal;
}
.eyebrow, .footer-col h4, .iban-box .label { text-transform: none; }

body { line-height: 1.85; }
h1 { line-height: 1.3; }
h2 { line-height: 1.36; }
h3 { line-height: 1.5; }
h4 { line-height: 1.55; }
/* nowrap برای عنوان‌های ترکی تنظیم شده بود؛ معادل فارسی بلندتر است،
   بنابراین شکستن خط آزاد شد. */
.trust-item strong { white-space: normal; line-height: 1.6; }

/* --- ۲. رشته‌های لاتین: تلفن، ایمیل، شبا -------------------------------- */
/* در پاراگراف RTL فاصلهٔ میان گروه‌های رقم مثل «+90 533 141 76 05» جهت
   پاراگراف را می‌گیرد و گروه‌ها وارونه می‌شوند («05 76 141 533 90+»).
   با direction + isolate این رشته‌ها در جزیرهٔ LTR خودشان قرار می‌گیرند. */
[href^="tel:"]:not(.header-phone),
[href^="mailto:"],
.header-phone strong,
.iban-box .value {
  direction: ltr;
  unicode-bidi: isolate;
}
/* شبا LTR خوانده می‌شود ولی به لبهٔ آغازین (راست) جعبه می‌چسبد */
.iban-box .value { text-align: right; }

/* --- ۳. سربرگ ----------------------------------------------------------- */
/* شمارهٔ تلفن داخل سربرگ نباید در بافت RTL وارونه دیده شود. */
.header-phone { text-align: left; direction: ltr; unicode-bidi: embed; }
.header-phone span { direction: rtl; unicode-bidi: embed; display: block; text-align: left; }
.main-nav a::after { left: auto; right: 0; }

/* --- ۴. زمینه‌های تیره: گرادیان‌ها به سمت جدید متن منتقل شدند ------------ */
/* متن حالا در سمت راست است. اگر تیرگی در چپ بماند، عنوان روی روشن‌ترین
   بخش عکس می‌افتد و کنتراست زیر AA می‌رود. */
.hero::before {
  background:
    linear-gradient(248deg, rgba(6,21,39,0.88) 10%, rgba(6,21,39,0.62) 52%, rgba(6,21,39,0.22) 100%),
    linear-gradient(180deg, rgba(6,21,39,0.30) 0%, transparent 32%);
}
.page-banner::before {
  background: linear-gradient(242deg, rgba(6,21,39,0.90) 0%, rgba(6,21,39,0.58) 100%);
}
.section--navy::before {
  background: radial-gradient(85% 70% at 88% 0%, rgba(168,120,72,0.16), transparent 62%);
}
.cta-banner::before {
  background: radial-gradient(70% 130% at 0% 0%, rgba(168,120,72,0.30), transparent 58%);
}
.iban-box::before {
  background: radial-gradient(80% 120% at 0% 0%, rgba(168,120,72,0.22), transparent 60%);
}
.partner-hospital::before {
  background: radial-gradient(70% 120% at 100% 0%, rgba(168,120,72,0.20), transparent 60%);
}

/* --- ۵. نوار اعتماد، ستون دوتایی، مراحل --------------------------------- */
.trust-item + .trust-item::before { left: auto; right: -10px; }
/* yalnizca masaustu: dar ekranda rozet gorselin icine oturur (style.css) */
@media (min-width: 901px) { .split-media .badge-card { left: auto; right: -26px; } }
.step::before { left: auto; right: 0; }

/* پیکان پیوندها به جهت معکوس نگاه می‌کند و در hover به همان سو می‌لغزد */
.card-link svg { transform: scaleX(-1); }
.card-link:hover svg { transform: scaleX(-1) translateX(3px); }

/* --- ۶. گالری گواهی‌نامه‌ها --------------------------------------------- */
/* js/main.js پیکان‌ها را بر اساس scrollLeft در بازهٔ ۰..max مثبت می‌شمارد؛
   در اسکرولر RTL مقدار scrollLeft از ۰ به سمت منفی می‌رود، پس پیکان
   «قبلی» همیشه غیرفعال می‌ماند و «بعدی» کاری نمی‌کند. چون نمی‌توانیم
   main.js را تغییر دهیم، خودِ اسکرولر LTR رها شد: پیکان‌ها، جای‌شان و
   جهت پیمایش با هم سازگار کار می‌کنند. متن داخل کارت دوباره RTL می‌شود. */
.cert-scroll { direction: ltr; }
.cert-card-label { direction: rtl; }

/* --- ۷. صفحهٔ متن حقوقی -------------------------------------------------- */
.legal ul li { padding-left: 0; padding-right: 22px; }
.legal ul li::before { left: auto; right: 4px; }

/* --- ۸. مودال ----------------------------------------------------------- */
.modal-close { right: auto; left: 18px; }
.modal-row .v { text-align: left; }

/* --- ۹. نوار ابزار شناور ------------------------------------------------ */
/* واتساپ + بازگشت به بالا به پایین‌چپ، انتخابگر زبان به پایین‌راست. */
.float-wa    { right: auto; left: 24px; }
.to-top      { right: auto; left: 24px; }
.lang-switch { left: auto;  right: 24px; }
.lang-menu   { left: auto;  right: 0; }

/* --- ۱۰. نمایشگر گواهی (lightbox) --------------------------------------- */
/* main.js دکمهٔ cv-prev را به گواهی قبلی و cv-next را به بعدی می‌بندد.
   در RTL «قبلی» باید سمت راست و «بعدی» سمت چپ باشد؛ نوک شورون‌ها هم
   باید برعکس شود تا با جهت حرکت بخواند. */
.cv-prev { left: auto;  right: clamp(10px, 3vw, 34px); }
.cv-next { right: auto; left:  clamp(10px, 3vw, 34px); }
.cv-prev svg, .cv-next svg { transform: scaleX(-1); }
/* دکمهٔ بستن به گوشهٔ آغازین (چپ‌بالا) می‌رود */
.cv-close { right: auto; left: clamp(12px, 3vw, 28px); }
/* شمارندهٔ «۳ / ۱۳» یک رشتهٔ لاتین است و نباید وارونه شود */
.cert-viewer .cv-count { direction: ltr; unicode-bidi: isolate; }
/* عنوان گواهی‌ها لاتین است؛ در قاب RTL وسط‌چین می‌ماند ولی جهتش LTR است */
.cert-viewer figcaption strong,
.cert-viewer figcaption span:not(.cv-count) { direction: ltr; unicode-bidi: isolate; }

/* --- ۱۱. نشان ذره‌بین روی کارت گواهی ------------------------------------ */
/* در LTR بالا-راست کارت است؛ در RTL به بالا-چپ منتقل می‌شود. */
.cert-card .cert-zoom { right: auto; left: 14px; }

/* --- ۱۲. انتخابگر زبان و بایرق‌ها --------------------------------------- */
/* .lang-menu a با justify-content: flex-start است؛ در RTL خودبه‌خود
   بایرق در راست و کد زبان در چپ می‌نشیند — همین درست است. فقط کد زبان
   (TR/EN/FA…) لاتین است و باید LTR بماند. */
.lang-menu .code { direction: ltr; unicode-bidi: isolate; }
/* نام زبان‌های لاتین‌نویس داخل ردیف RTL نباید نقطه‌گذاری‌شان جابه‌جا شود */
.lang-menu a[lang="tr"] .lang-ad,
.lang-menu a[lang="en"] .lang-ad,
.lang-menu a[lang="de"] .lang-ad,
.lang-menu a[lang="fr"] .lang-ad,
.lang-menu a[lang="es"] .lang-ad,
.lang-menu a[lang="it"] .lang-ad,
.lang-menu a[lang="nl"] .lang-ad,
.lang-menu a[lang="ru"] .lang-ad { direction: ltr; unicode-bidi: isolate; text-align: right; }
/* بایرق در دکمهٔ شناور: در RTL ترتیب کره → بایرق → FA → پیکان معکوس
   می‌شود که مطلوب است؛ فقط کد زبان LTR نگه داشته می‌شود. */
.lang-toggle span { direction: ltr; unicode-bidi: isolate; }

/* --- ۱۳. تیم ------------------------------------------------------------ */
/* .team-grid یک گرید وسط‌چین است و در RTL از راست پر می‌شود — درست است.
   فقط نام‌های لاتین در بدنهٔ کارت باید LTR بمانند تا «Op. Dr.» جابه‌جا نشود. */
.team-card-body strong { direction: ltr; unicode-bidi: isolate; }
.team-card-body span { line-height: 1.7; }

@media (max-width: 620px) {
  .float-wa    { right: auto; left: 16px; }
  .to-top      { right: auto; left: 16px; }
  .lang-switch { left: auto;  right: 16px; }
  .modal-row .v { text-align: right; }
}
