/*
Theme Name: ایران زمین
Description: قالب اختصاصی کلینیک قلب ایران زمین — بر پایه‌ی قالب پیش‌فرض PersiaCMS، با رنگ/فونت واقعی سایت
Version: 1.0.0
Author: PersiaCMS

پالت و فونت از روی سایت وردپرسی زنده استخراج شده (نه حدسی): رنگ اصلی دکمه‌ها #2490EB،
متن اصلی #666666، عنوان‌ها #18100F، فونت بدنه IRANSansX، فونت عنوان/دکمه YekanBakh.
*/

@font-face{font-family:'IRANSansX';src:url('assets/fonts/iransansx/IRANSansX-Regular.woff2') format('woff2'),url('assets/fonts/iransansx/IRANSansX-Regular.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:'IRANSansX';src:url('assets/fonts/iransansx/IRANSansX-Medium.woff2') format('woff2'),url('assets/fonts/iransansx/IRANSansX-Medium.woff') format('woff');font-weight:500;font-display:swap}
@font-face{font-family:'IRANSansX';src:url('assets/fonts/iransansx/IRANSansX-Bold.woff2') format('woff2'),url('assets/fonts/iransansx/IRANSansX-Bold.woff') format('woff');font-weight:700;font-display:swap}
@font-face{font-family:'YekanBakh';src:url('assets/fonts/yekanbakh/YekanBakhFaNum-Regular.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:'YekanBakh';src:url('assets/fonts/yekanbakh/YekanBakhFaNum-Bold.woff') format('woff');font-weight:700;font-display:swap}

/* Bahij TheSansArabic یک فونت تجاری/اختصاصیه که فایلش در دسترس نبود؛ به‌درخواست کارفرما با
   Vazirmatn (فونت رایگان و متن‌باز با پروانه‌ی SIL OFL، رایج‌ترین جایگزین فارسی برای TheSans/Bahij
   در طراحی وب فارسی) جایگزین شد — فقط برای شعار هیرو صفحه‌ی اصلی، نه کل سایت. یک فایل واحد
   variable-font (شامل کل بازه‌ی وزن) از Google Fonts دانلود و این‌جا self-host شده، هم‌راستا با
   بقیه‌ی فونت‌های سایت که همه محلی هستن (نه CDN خارجی، برای پرفورمنس) */
@font-face{font-family:'Vazirmatn';src:url('assets/fonts/vazirmatn/Vazirmatn-Variable.woff2') format('woff2-variations'),url('assets/fonts/vazirmatn/Vazirmatn-Variable.woff2') format('woff2');font-weight:100 900;font-display:swap}

/* B Titr — فایل فونت رو خود کارفرما تهیه و ارائه کرد (برخلاف TheSansArabic که جایگزین لازم
   داشت). فقط برای عنوان‌های صفحه‌ی «درباره ما» استفاده می‌شه (اهداف ما، بیانیه ماموریت،
   بیانیه چشم‌انداز، چرا ایران زمین؟، ارزش‌ها)، نه کل سایت */
@font-face{font-family:'BTitr';src:url('assets/fonts/btitr/BTitr-Bold.woff2') format('woff2'),url('assets/fonts/btitr/BTitr-Bold.woff') format('woff');font-weight:700;font-display:swap}

:root{
  --color-primary:#183A5C;
  --color-primary-hover:#12304D;
  --color-secondary:#2490EB;
  --color-accent:#2490EB;
  --color-accent-hover:#1A78CC;
  --font-body:'IRANSansX','Vazirmatn',sans-serif;
  --font-heading:'YekanBakh','Vazirmatn',sans-serif;
  --paper:#F8FAFC;
  --surface:#FFFFFF;
  --ink:#020617;
  --muted-text:#5B6478;
  --muted:#E8ECF1;
  --border:#E2E8F0;
  --destructive:#DC2626;
  --success:#15803D;
  --duration:200ms;
  --ease:cubic-bezier(.4,0,.2,1);
  --radius:14px;
}

@media (prefers-reduced-motion: reduce){
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important}
}

*{box-sizing:border-box}
body{margin:0;font-family:var(--font-body);background:var(--paper);color:#666;line-height:1.8;font-size:16px}
h1,h2,h3,h4,h5,h6,.site-logo,.btn,.main-nav a{font-family:var(--font-heading)}

/* --- سایت انگلیسی (LTR): همه‌ی متن با Vazirmatn --- */
/* فونت‌های YekanBakh («FaNum») و BTitr ارقام رو همیشه فارسی (۰۱۲۳) رندر می‌کنن؛ روی صفحات
   انگلیسی این باعث می‌شد اعداد داخل عنوان‌ها/دکمه‌ها/شماره‌ها فارسی دیده بشن. Vazirmatn
   ارقام لاتین رو درست نشون می‌ده. با !important تمام قانون‌های اختصاصیِ font-family رو هم می‌پوشونه. */
html[dir="ltr"]{--font-heading:'Vazirmatn',system-ui,sans-serif;--font-body:'Vazirmatn',system-ui,sans-serif}
html[dir="ltr"] :is(h1,h2,h3,h4,h5,h6,p,a,span,li,div,button,input,textarea,select,label,td,th,strong,b,em,figcaption,blockquote,time,small){
  font-family:'Vazirmatn',system-ui,sans-serif !important;
}
h1,h2,h3,h4,h5,h6{color:#18100F}
a{color:inherit;text-decoration:none;cursor:pointer}
img{max-width:100%;display:block}
.container{max-width:1520px;margin:0 auto;padding:0 24px}

:focus-visible{outline:2.5px solid var(--color-accent);outline-offset:3px;border-radius:4px}

.skip-link{
  position:absolute;right:12px;top:-52px;background:var(--color-primary);color:#fff;
  padding:11px 20px;border-radius:0 0 10px 10px;z-index:100;transition:top var(--duration) var(--ease);font-weight:700;font-size:13.5px;
}
.skip-link:focus{top:0}

/* Header */
.site-header{position:sticky;top:0;z-index:20;width:100%}

/* نوار بالای هدر: ۴ لینک نوبت‌دهی/مسیریابی/تور مجازی (مطابق سایت اصلی) */
.top-bar{background:var(--color-primary);color:#fff;font-size:13px}
.top-bar-row{display:flex;justify-content:center;gap:34px;padding:9px 20px;flex-wrap:wrap}
.top-bar-item{display:inline-flex;align-items:center;gap:7px;color:#dbe6f2;font-weight:600;transition:color var(--duration) var(--ease)}
.top-bar-item:hover{color:#fff}
.top-bar-item svg{width:16px;height:16px;flex-shrink:0}

.main-header{background:var(--surface);border-bottom:1px solid var(--border)}
.main-header .row{display:flex;align-items:center;gap:16px;justify-content:space-between;padding:12px 0;flex-wrap:nowrap}
.site-logo{display:flex;align-items:center;flex-shrink:0}
.site-logo img{height:48px;width:auto;display:block}

/* منو همیشه یک خط: gap/فونت جمع‌وجورتر، بدون شکست خط.
   عمداً overflow روی این کانتینر ست نمی‌شه: هر مقداری غیر از visible (حتی فقط روی یک محور)
   باعث می‌شه مرورگر محور دیگه رو هم به‌جای visible واقعی، auto حساب کنه و زیرمنوهای
   موقعیت‌مطلق (که از ارتفاع نوار خارج می‌شن) بریده/پنهان بشن. */
.main-nav{flex:1 1 auto;min-width:0}
.main-nav > ul{display:flex;gap:16px;font-size:13.5px;list-style:none;margin:0;padding:0;flex-wrap:nowrap;white-space:nowrap}
.main-nav > ul > li{position:relative;flex-shrink:0}
.main-nav a{position:relative;display:inline-block;padding:10px 0;transition:color var(--duration) var(--ease);font-weight:600;color:#18100F;text-decoration:none}
.main-nav > ul > li > a:hover,.main-nav a[aria-current="page"]{color:var(--color-accent)}
/* زیرمنو (dropdown) — با هاور روی آیتم والد باز می‌شود */
.main-nav .sub-menu{display:none;position:absolute;top:100%;right:0;min-width:220px;background:var(--surface);border:1px solid var(--border);
  border-radius:10px;box-shadow:0 14px 30px rgba(2,6,23,.1);padding:8px;z-index:30;list-style:none;margin:0;white-space:normal}
.main-nav li.has-children:hover > .sub-menu{display:block}
.main-nav li.has-children > a::after{content:'';display:inline-block;width:6px;height:6px;border-inline-end:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg);margin-inline-start:6px;margin-bottom:2px}
.main-nav .sub-menu li{position:relative}
.main-nav .sub-menu a{display:block;padding:9px 12px;border-radius:6px;font-weight:500;font-size:13.5px;color:#18100F}
.main-nav .sub-menu a:hover{background:var(--paper);color:var(--color-accent)}
.main-nav .sub-menu .sub-menu{top:0;right:100%;margin-inline-end:4px}

.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:8px;min-width:44px;min-height:44px;align-items:center;justify-content:center;border-radius:8px}

/* سوییچر زبان کشویی با پرچم */
.lang-switcher{position:relative;flex-shrink:0;border-inline-start:1px solid var(--border);padding-inline-start:16px;margin-inline-start:20px}
.lang-switcher-toggle{display:flex;align-items:center;gap:8px;background:none;border:0;cursor:pointer;font:inherit;font-weight:600;font-size:13.5px;color:#18100F;padding:8px 6px;border-radius:8px;min-height:44px;flex-shrink:0}
.lang-switcher-toggle:hover{background:var(--paper)}
.lang-flag{width:22px;height:22px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid var(--border)}
.lang-chevron{width:14px;height:14px;transition:transform var(--duration) var(--ease)}
.lang-switcher.open .lang-chevron{transform:rotate(180deg)}
.lang-switcher-menu{display:none;position:absolute;top:100%;left:0;margin-top:6px;min-width:170px;background:var(--surface);
  border:1px solid var(--border);border-radius:10px;box-shadow:0 14px 30px rgba(2,6,23,.1);padding:6px;list-style:none;z-index:30}
.lang-switcher.open .lang-switcher-menu{display:block}
.lang-switcher-menu a{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:6px;font-size:13.5px;font-weight:600;color:#18100F}
.lang-switcher-menu a:hover{background:var(--paper)}
.lang-switcher-menu a.active{color:var(--color-accent)}
.nav-toggle:hover{background:var(--muted)}
.nav-toggle svg{width:22px;height:22px}

@media (max-width:960px){
  .main-nav{display:none}
  .top-bar-row{gap:16px;font-size:12px}
  .nav-toggle{display:inline-flex}
}
/* برچسب‌های انگلیسی معمولاً بلندتر از فارسی‌ان و روی صفحه‌نمایش‌های رایج لپ‌تاپ (مثل 1366px)
   با سوییچر زبان تداخل پیدا می‌کردن؛ چون منوی دسکتاپ اصلاً wrap/اسکرول نمی‌شه (فقط توی حالت
   موبایل با نویگیشن کشویی جایگزین می‌شه)، آستانه‌ی سوییچ به حالت موبایل رو بالاتر بردیم */
@media (min-width:961px) and (max-width:1400px){
  html[dir="ltr"] .main-nav{display:none}
  html[dir="ltr"] .nav-toggle{display:inline-flex}
}

/* Hero */
.hero{padding:70px 0;text-align:center}
.hero h1{font-size:clamp(28px,4vw,44px);font-weight:800;margin:0 0 16px;letter-spacing:-.01em}
.hero p{color:var(--muted-text);font-size:17px;max-width:640px;margin:0 auto 26px}
.btn{
  display:inline-flex;align-items:center;gap:8px;padding:13px 26px;border-radius:10px;background:var(--color-primary);color:#fff;
  font-weight:700;font-size:14.5px;cursor:pointer;border:1.5px solid transparent;min-height:44px;
  transition:background var(--duration) var(--ease),transform var(--duration) var(--ease);
}
.btn:hover{background:var(--color-primary-hover)}
.btn:active{transform:scale(.98)}
.btn-outline{background:transparent;border-color:var(--color-primary);color:var(--color-primary)}
.btn-outline:hover{background:var(--color-primary);color:#fff}

/* Grids / cards */
.section{padding:56px 0}
.section-title{font-size:24px;font-weight:800;margin-bottom:28px;display:flex;align-items:center;gap:10px}
.section-title:before{content:'';width:8px;height:8px;background:var(--color-accent);border-radius:2px}
.grid{display:grid;gap:22px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:transform var(--duration) var(--ease),box-shadow var(--duration) var(--ease),border-color var(--duration) var(--ease)}
.card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(2,6,23,.08);border-color:var(--color-accent)}
.card .thumb{aspect-ratio:4/3;background:linear-gradient(135deg,var(--muted),#f3f0e6);object-fit:cover;width:100%}
.card .body{padding:18px}
.card h3{margin:0 0 8px;font-size:16.5px;font-weight:700}
.card p{color:var(--muted-text);font-size:13.5px;margin:0 0 12px}
.price{font-weight:800;color:var(--color-accent);font-variant-numeric:tabular-nums}

/* Single content */
.page-hero{background:var(--paper);border-bottom:1px solid var(--border);padding:44px 0 26px;text-align:center;margin-bottom:36px}
.page-hero h1{font-size:clamp(24px,3.4vw,36px);font-weight:700;margin:0 0 14px}
.page-hero .breadcrumb{justify-content:center;max-width:none;margin:0;padding:0}
/* هدر عمومی برگه‌ی «تیم IPD»: فونت سنس عربی، رنگ سرمه‌ای، یه سایز بزرگ‌تر — breadcrumb زیرش
   هم توی خودِ page.php اصلاً چاپ نمی‌شه (نه فقط مخفی با CSS) */
.page-hero--custom h1{font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);font-size:clamp(28px,4vw,42px)}

.post-content{max-width:1520px;margin:0 auto 60px;line-height:2}

/* هیرو صفحه اصلی: تصویر تمام‌عرض واقعی (خارج از کانتینر، لبه‌به‌لبه‌ی مرورگر) با نوار متن
   نیمه‌شفاف روی یک‌سوم بالایی عکس — دقیقاً مطابق سایت اصلی (نه گرادیان پایین عکس) */
.hero-banner{
  position:relative;margin:0 0 40px;overflow:hidden;
  width:100vw;left:50%;right:50%;margin-inline-start:-50vw;margin-inline-end:-50vw;
}
.hero-banner img{width:100%;height:auto;margin:0;display:block}
.hero-banner-text{position:absolute;inset-inline:0;top:3%;display:flex;justify-content:center;padding:0 20px;z-index:2}
.hero-banner-text p{
  margin:0;background:rgba(255,255,255,.35);color:var(--color-primary);font-family:'Vazirmatn',var(--font-heading);
  font-size:clamp(22px,3.6vw,46px);font-weight:700;line-height:1.6;text-align:center;
  padding:20px 60px;max-width:1100px;box-shadow:0 8px 32px rgba(2,6,23,.18);
  backdrop-filter:blur(20px) saturate(100%);-webkit-backdrop-filter:blur(20px) saturate(100%);
  border:1px solid rgba(255,255,255,.55);
}
@media (max-width:820px){.hero-banner-text{top:2%}.hero-banner-text p{padding:14px 24px;font-size:clamp(18px,5vw,26px)}}

/* بلوک معرفی پزشک/مدیرعامل — پس‌زمینه‌ی سرمه‌ای تمام‌عرض، عکس لبه‌به‌لبه (تمام ارتفاع بخش) +
   متن دو ستونه (مثل هیرو، بیرون از کانتینر) — عکس با object-fit:cover کل ارتفاع رو پر می‌کنه،
   نه یک عکس کوچک شناور با فاصله از لبه (مطابق رفرنس) */
.doctor-bio{
  position:relative;display:grid;grid-template-columns:1fr minmax(320px,34%);gap:0;align-items:stretch;
  background:var(--color-primary);color:#fff;margin:0 0 50px;min-height:520px;
  width:100vw;left:50%;right:50%;margin-inline-start:-50vw;margin-inline-end:-50vw;
}
.doctor-bio-photo{overflow:hidden;display:flex;align-items:flex-end;direction:ltr;justify-content:flex-end;padding-left:max(30px,calc(50vw - 760px + 30px))}
.doctor-bio-photo img{width:auto;max-width:380px;height:auto;max-height:460px;object-fit:contain;display:block;margin:0}
.doctor-bio-text{padding-block:50px;padding-right:max(24px,calc(50vw - 760px + 24px));padding-left:60px;display:flex;flex-direction:column;justify-content:center}
.doctor-bio-badge{display:inline-block;align-self:flex-start;background:#111827;color:#fff;font-size:12.5px;font-weight:600;padding:6px 16px;border-radius:20px;margin-bottom:16px}
.post-content .doctor-bio-text h3{margin:0 0 22px;font-size:clamp(24px,3vw,34px);font-weight:700;color:#fff}
.doctor-bio-text ul{list-style:none;padding:0;margin:0 0 24px;display:flex;flex-direction:column;gap:12px}
.doctor-bio-text ul li{display:flex;align-items:flex-start;gap:10px;font-size:15.5px;color:#e6ecf5;margin:0 0 0 0;margin-inline-start:0;text-align:justify}
.doctor-bio-text ul li svg{width:17px;height:17px;color:#7fd4b8;margin-top:3px;flex-shrink:0}
.doctor-bio-text p{margin:0;color:#c7d1e0;font-size:15.5px;line-height:2;text-align:justify}
@media (max-width:820px){
  .doctor-bio{grid-template-columns:1fr;text-align:center;min-height:0}
  .doctor-bio-photo{height:auto;order:-1}
  .doctor-bio-photo img{height:auto;max-width:320px;margin:0 auto}
  .doctor-bio-text{padding:36px 24px;align-items:center}
  .doctor-bio-badge{align-self:center}
  .doctor-bio-text ul{text-align:right}
}

/* کارت «پزشک با سوابق» (عکس+نام+سمت+سوابق تحصیلی/کاری، توسط فیلتر PHP در doctor-card
   بسته‌بندی شده — مثل صفحه‌ی «پزشکان»). برخلاف .doctor-bio (که یک بلوک تیره‌ی تمام‌عرض
   ویژه‌ست)، این یک کارت معمولی روشنه که چندبار پشت‌سرهم تکرار می‌شه.
   نکته‌ی طراحی: عکس با عرض ثابت کوچیک (۲۲۰px) وسط یک کارت تمام‌عرض (~۱۴۷۰px) خیلی
   بی‌قواره/خالی به‌نظر می‌رسید — الان عکس با align-items:stretch کل ارتفاع کارت رو پر
   می‌کنه (مثل یک کارت پروفایل واقعی). عرض کل کارت محدود *نشد* (بقیه‌ی عناصر صفحه هم
   تمام‌عرض هستن و کارفرما صراحتاً خواسته سایت تمام‌عرض باشه — یک کارت باریک‌تر و
   یک‌طرفه دقیقاً همون حس «نصفه خالی» قبلی رو برمی‌گردوند)؛ به‌جاش عرض متن با
   max-width روی خود ناحیه‌ی سوابق محدود شد تا خط‌ها خیلی طولانی/خالی نشن */
.post-content .doctor-card{
  display:grid;grid-template-columns:minmax(280px,22%) 1fr;align-items:stretch;
  background:var(--surface);border:1px solid var(--border);border-radius:16px;
  margin:0 0 24px;box-shadow:0 6px 20px rgba(2,6,23,.07);overflow:hidden;
  transition:box-shadow var(--duration) var(--ease);
}
.post-content .doctor-card:hover{box-shadow:0 12px 28px rgba(2,6,23,.11)}
.post-content .doctor-card-photo{align-self:stretch;background:var(--paper)}
.post-content .doctor-card-photo img{width:100%;height:100%;min-height:280px;max-width:100%;object-fit:cover;border-radius:0;margin:0;display:block}
.post-content .doctor-card-body{padding:30px 36px;display:flex;flex-direction:column;justify-content:center}
.post-content .doctor-card-role{display:inline-block;background:var(--color-accent);color:#fff;font-size:12px;font-weight:700;padding:4px 14px;border-radius:20px;margin-bottom:10px;align-self:flex-start}
.post-content .doctor-card-body h3{margin:0 0 14px;font-size:20px}
/* عنوان‌های «سوابق تحصیلی/کاری» داخل کارت پزشک، با یک نوار رنگی سمت راست به‌جای پس‌زمینه‌ی
   جدا (تا حس «جعبه داخل جعبه» ندن ولی همچنان از هم مجزا و قابل‌اسکن باشن) */
.post-content .doctor-card-body .info-card-grid{margin:0;max-width:760px;grid-template-columns:1fr 1fr;gap:24px}
.post-content .doctor-card-body .info-card{
  background:transparent;border:0;border-inline-end:2px solid var(--border);
  box-shadow:none;padding:0 16px 0 0;text-align:right;margin:0;
}
.post-content .doctor-card-body .info-card:last-child{border-inline-end:0}
.post-content .doctor-card-body .info-card h3,.post-content .doctor-card-body .info-card h4{
  color:var(--color-accent);font-size:13px;font-weight:700;margin:0 0 8px;
  text-transform:none;letter-spacing:.2px;
}
.post-content .doctor-card-body .info-card p{font-size:13.5px;text-align:right;line-height:2;color:var(--muted-text)}
@media (max-width:820px){
  .post-content .doctor-card{grid-template-columns:1fr;text-align:center;max-width:100%}
  .post-content .doctor-card-photo img{height:240px;min-height:0}
  .post-content .doctor-card-role{align-self:center}
  .post-content .doctor-card-body{align-items:center}
  .post-content .doctor-card-body .info-card-grid{grid-template-columns:1fr;gap:18px}
  .post-content .doctor-card-body .info-card{text-align:center;border-inline-end:0;padding:0 0 14px;border-bottom:1px solid var(--border)}
  .post-content .doctor-card-body .info-card:last-child{border-bottom:0;padding-bottom:0}
  .post-content .doctor-card-body .info-card p{text-align:center}
}

/* تیتر بخش (برچسب دسته + عنوان، توسط فیلتر PHP در section-header بسته‌بندی شده — مثل
   «مدیریت» / «پزشکان و متخصصان» در صفحه‌ی «پزشکان») — جداکننده‌ی بصری بین گروه‌های کارت.
   به‌جای یک خط نازک کامل بالای صفحه (که با تکرار زیاد یکنواخت/شلوغ به‌نظر می‌رسید)، یک
   نوار رنگی کوتاه کنار برچسب دسته استفاده شد تا هر بخش وزن بصری واضح‌تری داشته باشه */
.post-content .section-header{margin:44px 0 20px;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.post-content .section-header:first-child{margin-top:0}
.post-content .section-eyebrow{
  display:inline-block;color:var(--color-accent);font-size:12.5px;font-weight:700;
  padding-inline-start:12px;position:relative;
}
.post-content .section-eyebrow::before{content:"";position:absolute;inset-inline-start:0;top:2px;bottom:2px;width:3px;border-radius:2px;background:var(--color-accent)}
.post-content .section-header h4{margin:0;font-size:19px;color:var(--color-primary)}

/* اولین section-header یک صفحه (مثل «آشنایی با کلینیک») نقش تیتر معرفی/هیرو صفحه رو داره،
   نه یک جداکننده‌ی معمولی بین کارت‌ها — برچسب دسته اینجا باید یک بج (قرص) آبی روشن باشه و
   عنوان زیرش بزرگ و پررنگ، نه هم‌ردیف و ریز مثل بقیه‌ی section-header های صفحه */
.post-content > .section-header:first-child{display:block;text-align:center;margin:40px 0 22px}
.post-content > .section-header:first-child .section-eyebrow{
  background:#E3F0FD;color:var(--color-accent);font-size:13px;font-weight:700;
  padding:7px 18px;border-radius:999px;
}
.post-content > .section-header:first-child .section-eyebrow::before{content:none}
.post-content > .section-header:first-child h4{
  display:block;margin-top:14px;font-size:32px;font-weight:700;color:var(--color-primary);
  font-family:'Vazirmatn',var(--font-heading);
}
/* عکس بلافاصله بعد از این تیتر معرفی، برخلاف بقیه‌ی تصاویر post-content (که تمام‌عرض کانتینرن)،
   باید یک تصویر معتدل و وسط‌چین باشه، نه تمام‌عرض */
.post-content > .section-header:first-child + img{max-width:580px;width:100%;margin:20px auto}

/* قبلاً این عناصر به ۸۲۰px محدود می‌شدن (حس ستون باریک مقاله) — کارفرما گفت سایت باید
   تمام‌عرض باشه مثل سایت وردپرسی اصلی، پس محدودیت عرض برداشته شد؛ فقط عرض کلی post-content
   (که خودش تا ۱۳۲۰px هست) مرز صفحه رو مشخص می‌کنه */
.post-content > p,.post-content > ul,.post-content > ol,.post-content > h1,.post-content > h3{margin-inline:auto}
/* آیکون‌های SVG خام داخل محتوا (بدون کلاس/اندازه، باقی‌مانده از ویجت‌های المنتور) بدون این قانون
   با سایز پیش‌فرض غول‌پیکر رندر می‌شن؛ اینجا به یک آیکون کوچک درون‌خطی محدود می‌شن */
.post-content svg{width:20px;height:20px;flex-shrink:0;fill:currentColor;color:var(--color-accent);vertical-align:middle}
.post-content li:has(> svg:first-child){display:flex;align-items:flex-start;gap:10px;list-style:none;margin-inline-start:-22px}
.post-content ul:has(li > svg:first-child){padding-inline-start:0}
/* کاروسل لوگوی بیمه‌ها (figureهای پشت‌سرهم توسط فیلتر PHP در logo-carousel بسته‌بندی شدن) */
.logo-carousel{position:relative;display:flex;align-items:center;gap:10px;margin:28px 0}
.logo-carousel-track{display:flex;gap:34px;overflow-x:auto;scroll-behavior:smooth;padding:6px 2px;scrollbar-width:none;flex:1;min-width:0}
.logo-carousel-track::-webkit-scrollbar{display:none}
.logo-carousel figure{flex:0 0 auto;width:130px;margin:0;text-align:center}
.logo-carousel figure img{width:100%;height:auto;display:block;margin:0 0 8px}
.logo-carousel-nav{
  flex-shrink:0;width:38px;height:38px;border-radius:50%;border:1.5px solid var(--border);background:var(--surface);
  color:var(--color-primary);font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:background var(--duration) var(--ease),color var(--duration) var(--ease)
}
.logo-carousel-nav:hover{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}
/* عنوان بخش «بیمه‌های طرف قرارداد با ما» — همون h2 عمومیه، فقط چون درست قبل از کاروسل میاد وسط‌چین و رنگی می‌شه */
.post-content h2:has(+ .logo-carousel){text-align:center;color:var(--color-accent);font-size:22px}
/* گروه «آیکون خدمت» — این سه تگ (img/h4/a) توسط فیلتر PHP در functions.php داخل یک
   div.service-item بسته‌بندی می‌شن (چون CSS به‌تنهایی نمی‌تونه سه تگ مجزا رو به‌عنوان
   یک واحد بچینه)، اینجا فقط ظاهر همون wrapper استایل داده می‌شه */
.post-content h2:has(+ .service-carousel){text-align:center;color:var(--color-primary);font-size:30px;font-weight:700;margin-bottom:0}
/* کاروسل خدمات: مثل کاروسل بیمه، ولی تمام‌عرض (خارج از کانتینر) و کارت‌های آبی بزرگ —
   عرض هر کارت طوری تنظیم شده که همیشه یک تکه از کارت بعدی هم دیده بشه (مثل رفرنس) */
.service-carousel{
  position:relative;display:flex;align-items:center;margin:28px 0 50px;
  width:100vw;left:50%;right:50%;margin-inline-start:-50vw;margin-inline-end:-50vw;
}
.service-carousel-track{display:flex;gap:2px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x proximity;scrollbar-width:none;flex:1;min-width:0}
.service-carousel-track::-webkit-scrollbar{display:none}
.service-carousel .logo-carousel-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;background:#fff;box-shadow:0 4px 14px rgba(2,6,23,.15)}
.service-carousel .logo-carousel-nav.prev{right:16px}
.service-carousel .logo-carousel-nav.next{left:16px}
.post-content .service-item{
  flex:0 0 auto;width:min(380px,86vw);scroll-snap-align:start;text-align:center;padding:56px 30px 40px;position:relative;
  border-radius:16px;overflow:hidden;
  background-color:#1B5FC4;
  background-image:radial-gradient(rgba(255,255,255,.07) 2px,transparent 2.5px);
  background-size:22px 22px;
}
.post-content .service-item:nth-child(3n+2){background-color:#164FA6}
.post-content .service-item img{
  width:126px;height:126px;object-fit:contain;margin:0 auto 26px;display:block;border-radius:50%;
  background:#fff;padding:14px;box-sizing:border-box;box-shadow:0 10px 24px rgba(2,6,23,.2);
}
.post-content .service-item h4{margin:0 0 26px;font-size:18px;font-weight:700;color:#fff}
.post-content .service-item a{
  display:inline-flex;background:#2FA84B;color:#fff;font-weight:700;font-size:15px;text-decoration:none;
  padding:11px 26px;border-radius:8px;transition:filter var(--duration) var(--ease)
}
.post-content .service-item a:hover{filter:brightness(1.1);text-decoration:none}
/* نظرات مراجعین (آواتار + متن، توسط فیلتر PHP در functions.php گروه‌بندی شده) */
.post-content h2:has(+ .testimonial-carousel){text-align:center;color:#3a3a3a;font-size:26px;font-weight:500}
/* کاروسل نظرات مراجعین — یک ردیف قابل‌اسکرول، مثل کاروسل بیمه‌ها/خدمات (نه grid چندردیفه) */
.testimonial-carousel{position:relative;display:flex;align-items:center;gap:10px;margin:24px 0}
.testimonial-carousel-track{display:flex;gap:18px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x proximity;padding:4px 2px;scrollbar-width:none;flex:1;min-width:0}
.testimonial-carousel-track::-webkit-scrollbar{display:none}
.post-content .testimonial-item{
  flex:0 0 auto;width:260px;scroll-snap-align:start;background:var(--surface);border:1px solid var(--border);
  border-radius:12px;padding:24px 20px;text-align:center;
}
.post-content .testimonial-item img{width:64px;height:64px;border-radius:50%;object-fit:cover;margin:0 auto 12px;display:block}
.post-content .testimonial-item p{font-size:13.5px;color:var(--muted-text);margin:0}
.post-content .testimonial-avatar-placeholder{
  width:56px;height:56px;border-radius:50%;background:var(--color-accent);color:#fff;font-size:22px;font-weight:700;
  display:flex;align-items:center;justify-content:center;margin:0 auto 12px;
}
.post-content .testimonial-name{display:block;margin-top:10px;font-weight:700;font-size:13px;color:var(--color-primary)}
.post-content .testimonial-avatar-generic{
  width:56px;height:56px;border-radius:50%;background:var(--border);color:var(--muted-text);
  display:flex;align-items:center;justify-content:center;margin:0 auto 12px;
}
.post-content .testimonial-avatar-generic svg{width:26px;height:26px;fill:currentColor}

/* بخش اخبار و رویدادها (پرس‌وجوی زنده از آخرین پست‌های وبلاگ) */
.post-content h2.news-heading{text-align:center;color:var(--color-primary);font-size:32px;font-weight:700;margin:44px 0 30px}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:24px}
.news-card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow var(--duration) var(--ease),transform var(--duration) var(--ease)}
.news-card:hover{box-shadow:0 14px 30px rgba(2,6,23,.1);transform:translateY(-3px)}
.news-card img{width:100%;aspect-ratio:16/10;object-fit:cover;margin:0;border-radius:0;display:block}
.news-card-body{padding:16px 18px}
.news-card-body h4{margin:0 0 10px;font-size:15px;font-weight:700;color:#18100F;line-height:1.7}
.news-card-link{color:var(--color-accent);font-size:13px;font-weight:600}
.news-more{text-align:center;margin-bottom:44px}
@media (max-width:820px){.news-grid{grid-template-columns:1fr}}

/* برگه‌ی اختصاصی «اخبار و رویدادها» (/اخبار-و-رویداد) — گرید ثابت و دستچین‌شده از پست‌های
   مشخص، مطابق طرح/فونت سایت وردپرسی قدیم (نه پرس‌وجوی زنده‌ی بالا که برای تیزر صفحه‌ی
   اصلیه؛ این‌جا کارفرما اندازه‌ی تیتر و عنوان کارت‌ها رو بزرگ‌تر و پررنگ‌تر خواسته) */
.post-content h2.news-archive-heading{text-align:center;color:var(--color-primary);font-size:34px;font-weight:700;margin:0 0 32px}
.news-archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:24px}
.news-archive-card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow var(--duration) var(--ease),transform var(--duration) var(--ease)}
.news-archive-card:hover{box-shadow:0 14px 30px rgba(2,6,23,.1);transform:translateY(-3px)}
.news-archive-card img{width:100%;aspect-ratio:16/10;object-fit:cover;margin:0;border-radius:0;display:block}
.news-archive-card-body{padding:18px 20px}
.news-archive-card-body h3{margin:0 0 12px;font-size:17px;font-weight:700;color:var(--color-primary);line-height:1.8}
.news-archive-card-link{color:var(--color-primary);font-size:14px;font-weight:700}
@media (max-width:820px){.news-archive-grid{grid-template-columns:1fr}}

/* صفحه‌ی «دانستنی‌ها»: عنوان صفحه و عنوان هر کارت با فونت سنس عربی (Vazirmatn)، لینک «ادامه
   مطلب» با فونت B Titr — دقیقاً طبق عکس مرجع کارفرما */
.post-content h2.knowledge-heading{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);
  font-size:34px;font-weight:700;margin:40px 0 32px;
}
.knowledge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:24px}
.knowledge-card{
  display:flex;flex-direction:column;height:100%;background:var(--surface);border:1px solid var(--border);
  border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;
  transition:box-shadow var(--duration) var(--ease),transform var(--duration) var(--ease);
}
.knowledge-card:hover{box-shadow:0 14px 30px rgba(2,6,23,.1);transform:translateY(-3px)}
.knowledge-card img{width:100%;aspect-ratio:16/10;object-fit:cover;margin:0;border-radius:0;display:block;flex-shrink:0}
/* ستون عمودی که «ادامه مطلب» رو همیشه ته کارت، هم‌تراز با بقیه‌ی کارت‌ها نگه می‌داره —
   صرف‌نظر از اینکه عنوان یک خط باشه یا دو خط */
.knowledge-card-body{display:flex;flex-direction:column;flex:1;padding:18px 20px}
.knowledge-card-body h3{
  margin:0 0 14px;font-family:'Vazirmatn',var(--font-heading);color:#18100F;font-size:16px;font-weight:700;
  line-height:1.8;
}
.knowledge-card-link{
  display:inline-flex;align-items:center;gap:4px;margin-top:auto;font-family:'BTitr',var(--font-heading);
  color:var(--color-primary);font-size:18px;font-weight:700;
}
@media (max-width:820px){.knowledge-grid{grid-template-columns:1fr}}

/* مقالات تخصصی/علمی (شورت‌کد [specialized_articles]): این مقاله‌ها عکس شاخص ندارن، به‌جاش
   یه آیکون سند PDF توی کارت نشون داده می‌شه؛ عنوانشون معمولاً انگلیسیه، برای همین چپ‌به‌راست
   می‌مونه ولی خودِ کارت هم‌راستا با بقیه‌ی سایت راست‌چینه */
.specialized-article-icon{
  width:100%;aspect-ratio:16/10;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#FFF1F0,#FCE4E1);padding:24px;
}
.specialized-article-icon img{width:100%;height:100%;max-width:110px;max-height:110px;object-fit:contain;margin:0;border-radius:0}
.specialized-article-card .knowledge-card-body h3{text-align:left}

/* رندر شورت‌کد [pdf-embedder]: نمایش مستقیم PDF توی صفحه با ویوئر خودِ مرورگر */
.pdf-embed{margin:20px 0}
.pdf-embed iframe{
  width:100%;height:780px;border:1px solid var(--border);border-radius:12px;display:block;background:#F2F3F5;
}
.pdf-embed-download{
  display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-family:'YekanBakh',var(--font-heading);
  color:var(--color-primary);font-weight:700;font-size:14px;text-decoration:none;
}
.pdf-embed-download:hover{text-decoration:underline}
@media (max-width:640px){.pdf-embed iframe{height:480px}}

/* فرم ثبت نظر مراجعین */
.testimonial-form-intro{text-align:center;color:#18100F;font-size:28px;font-weight:700;margin:44px 0 10px}
.testimonial-form-title{text-align:center;color:var(--color-primary);font-size:32px;font-weight:700;margin:0 0 28px}
.testimonial-form{max-width:900px;margin:0 auto 50px;background:linear-gradient(135deg,#2E86D8 0%,#1B5FA8 100%);border-radius:14px;padding:32px 36px;color:#fff}
.testimonial-form-row{display:flex;flex-direction:column;gap:18px;margin-bottom:18px}
.testimonial-form label{display:block;font-size:14px;font-weight:700;margin-bottom:8px;color:#18100F}
.testimonial-form label .required-mark{color:var(--destructive);margin-inline-start:3px}
.testimonial-form input,.testimonial-form textarea{
  width:100%;padding:11px 14px;border:1.5px solid rgba(255,255,255,.5);border-radius:8px;font-family:inherit;font-size:14px;
  background:#fff;color:#18100F;box-sizing:border-box;min-height:44px;direction:rtl;text-align:right;
}
.testimonial-form input::placeholder,.testimonial-form textarea::placeholder{color:#8A93A6}
.testimonial-form textarea{min-height:130px;resize:vertical}
.testimonial-form-counter{display:none}
.testimonial-form-actions{text-align:right;margin-top:18px}
.testimonial-form .btn{background:var(--color-accent);color:#fff}
.testimonial-form .btn:hover{background:var(--color-accent-hover)}
.post-content h1{font-size:28px;font-weight:700;margin-top:36px}
.post-content h2{font-size:24px;font-weight:700;margin-top:32px}
/* عنوان‌های صفحه‌ی «آشنایی با کلینیک» (اهداف ما، بیانیه ماموریت، ...) — فونت B Titr و هم‌رنگ
   با تیتر هیرو همون صفحه («تاریخچه تاسیس ...») */
.post-content h2.about-section-title{font-family:'BTitr',var(--font-heading);color:var(--color-primary)}
/* صفحه‌ی «چارت سازمانی»: عنوان با فونت سنس عربی (Vazirmatn) و توضیحات با یکان‌بخ (چون فونت
   ایران‌یکان اصلی در دسترس نبود، طبق تایید کارفرما جایگزین شد) */
.post-content h2.chart-title{text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);font-size:36px}
.post-content h2.chart-desc{
  text-align:center;font-family:'YekanBakh',var(--font-heading);color:var(--muted-text);
  font-size:19.5px;font-weight:400;line-height:2;max-width:1100px;margin:16px auto 0;
}
/* صفحه‌ی «مراکز طرف قرارداد»: عنوان با فونت سنس عربی (Vazirmatn) به رنگ آبی روشن‌تر
   (accent، نه navy اصلی) و توضیحات با یکان‌بخ (جایگزین ایران‌یکان) به رنگ متن تیره، مطابق عکس مرجع کارفرما */
.post-content h2.contracted-centers-title{text-align:center;font-family:'Vazirmatn',var(--font-heading);color:#1E3C96;font-size:32px;font-weight:700}
.post-content h2.contracted-centers-desc{
  text-align:center;font-family:'YekanBakh',var(--font-heading);color:#3A3A3A;
  font-size:18.5px;font-weight:400;line-height:2;max-width:1100px;margin:16px auto 0;
}
/* صفحه‌ی «تسهیلات»: عنوان با فونت سنس عربی و رنگ سرمه‌ای، هم‌فرم با بقیه‌ی عنوان‌های سایت؛
   متن توضیحات با فونت ایران یکان و ویدئوی راهنما زیرش با اندازه‌ی معقول نمایش داده می‌شه */
.post-content h2.facilities-title{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);
  font-size:28px;font-weight:700;margin:0 0 24px;
}
.post-content h2.facilities-title ~ p{
  font-family:'YekanBakh',var(--font-heading);color:#4B5565;line-height:2;text-align:center;
}
.post-content .facilities-video{width:100%;max-width:640px;display:block;margin:20px auto;border-radius:12px}

/* صفحه‌ی «تشخیص تیپ شخصیت»: عنوان با فونت سنس عربی، زیرعنوان و کارت‌های تست با فونت B Titr،
   دقیقاً طبق عکس مرجع کارفرما (کارت‌های گرادیانت صورتی به بنفش/سرمه‌ای در یک ردیف) */
.post-content h2.persontype-title{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);
  font-size:33px;font-weight:700;margin:40px 0 16px;
}
.post-content p.persontype-subtitle{
  text-align:center;font-family:'BTitr',var(--font-heading);color:#C0175A;
  font-size:18px;font-weight:700;margin:0 0 32px;
}
.persontype-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:32px}
.persontype-card{
  flex:1 1 180px;max-width:220px;min-height:130px;display:flex;align-items:center;justify-content:center;
  text-align:center;padding:20px 16px;border-radius:14px;color:#fff;text-decoration:none;
  font-family:'BTitr',var(--font-heading);font-size:18px;font-weight:700;line-height:1.7;
  background:linear-gradient(135deg,#D6217A 0%,#8C2C74 50%,#183A5C 100%);
  transition:transform var(--duration) var(--ease),box-shadow var(--duration) var(--ease);
}
.persontype-card:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(24,58,92,.35)}
@media (max-width:820px){.persontype-card{flex:1 1 45%}}

/* صفحه‌ی «راهنمای اجرایی ارائه خدمات» / «روش نوبت‌دهی آنلاین»: عنوان‌ها با فونت سنس عربی و
   رنگ سرمه‌ای، بقیه‌ی متن‌ها با ایران‌یکان و رنگ مشکی، طبق عکس مرجع کارفرما */
.post-content h2.online-booking-title{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);
  font-size:30px;font-weight:700;margin:40px 0 6px;
}
.post-content .online-booking-subtitle{
  text-align:right;font-family:'YekanBakh',var(--font-heading);color:#18100F;
  font-size:15px;max-width:640px;margin:0 auto 36px;
}
.post-content .online-booking-steps{
  max-width:640px;margin:0 auto 40px;padding-inline-start:26px;
}
.post-content .online-booking-steps li{
  text-align:right;font-family:'YekanBakh',var(--font-heading);color:#18100F;
  font-size:15px;line-height:2.4;
}

/* اینفوگرافی مراحل «راهنمای اجرایی ارائه خدمات»: تایم‌لاین عمودی — یه خط رابط از گره‌ای به
   گره‌ی بعدی رد می‌شه، هر گره یه دایره‌ی گرادیانت با آیکون + شماره‌ی کوچیک روی گوشه‌ش، و کنارش
   یه کارت با عنوان (سنس عربی) و توضیح (ایران‌یکان) */
.post-content .onboard-infographic{max-width:720px;margin:40px auto;display:flex;flex-direction:column}
.post-content .onboard-step{display:flex;align-items:flex-start;gap:20px;position:relative;padding-bottom:34px}
.post-content .onboard-step:last-child{padding-bottom:0}
.post-content .onboard-step:not(:last-child)::after{
  content:"";position:absolute;top:58px;bottom:0;right:27px;width:2px;
  background:linear-gradient(var(--border),var(--border));
}
.post-content .onboard-node{
  flex-shrink:0;width:56px;height:56px;border-radius:50%;position:relative;z-index:1;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#D6217A,#183A5C);color:#fff;
  box-shadow:0 6px 16px rgba(24,58,92,.25);
}
/* قانون عمومی .post-content svg{fill:currentColor} این آیکون‌های خطی (outline) رو توپر و
   یه‌رنگ می‌کرد؛ چون این سلکتور اختصاصی‌تره (کلاس روی خودِ svg، نه فقط تگ svg)، override می‌شه */
.post-content .onboard-icon{width:24px;height:24px;margin:0;fill:none!important;stroke:#fff;color:#fff}
.post-content .onboard-num{
  position:absolute;top:-6px;inset-inline-start:-6px;width:22px;height:22px;border-radius:50%;
  background:#fff;color:var(--color-primary);font-family:'BTitr',var(--font-heading);font-size:12px;font-weight:700;
  display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(2,6,23,.18);
}
.post-content .onboard-card{
  flex:1;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:16px 20px;margin-top:2px;
}
.post-content .onboard-card h3{
  margin:0 0 4px;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);font-size:16px;font-weight:700;
}
.post-content .onboard-card p{margin:0;font-family:'YekanBakh',var(--font-heading);color:#4B5565;font-size:14px;line-height:1.9}
@media (max-width:600px){
  .post-content .onboard-infographic{margin:28px auto;padding:0 6px}
  .post-content .onboard-step:not(:last-child)::after{right:23px}
  .post-content .onboard-node{width:48px;height:48px}
  .post-content .onboard-icon{width:20px;height:20px}
}

/* صفحه‌ی «بسته خدمات بیماران بین‌الملل»: تب‌های رنگی (فعال=سبز) + جدول با حاشیه و متن مشکی —
   عنوان صفحه و متن هر تب با فونت سنس عربی، متن‌های داخل جدول با ایران‌یکان، طبق عکس مرجع کارفرما */
.intl-tariff{margin:20px 0}
.intl-tariff-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.intl-tariff-tab{
  font-family:'Vazirmatn',var(--font-heading);font-size:14px;font-weight:700;
  padding:12px 20px;border-radius:8px;border:1px solid var(--border);background:var(--paper);
  color:#18100F;cursor:pointer;transition:background var(--duration) var(--ease),color var(--duration) var(--ease);
}
.intl-tariff-tab:hover{background:var(--muted)}
.intl-tariff-tab.active{background:#3CB878;border-color:#3CB878;color:#fff}
.intl-tariff-panel{display:none}
.intl-tariff-panel.active{display:block}
.intl-tariff-scroll{overflow-x:auto;border-radius:10px;border:1px solid #18100F}
.intl-tariff-table{border-collapse:collapse;width:100%;min-width:640px;font-size:14px}
.intl-tariff-table th{
  font-family:'Vazirmatn',var(--font-heading);color:#18100F;font-weight:700;padding:12px 16px;
  border-bottom:2px solid #18100F;border-inline-start:1px solid #18100F;background:var(--paper);text-align:center;
}
.intl-tariff-table th:first-child{border-inline-start:0}
.intl-tariff-table td{
  font-family:'YekanBakh',var(--font-heading);color:#18100F;padding:12px 16px;text-align:center;
  border-top:1px solid #18100F;border-inline-start:1px solid #18100F;line-height:1.9;
}
.intl-tariff-table td:first-child{border-inline-start:0}
.intl-tariff-num{width:50px}
.post-content .intl-tariff-footnote{text-align:center;font-weight:700;color:#18100F;margin:14px 0 0;font-size:15px}
@media (max-width:820px){.intl-tariff-table{font-size:13px}.intl-tariff-table th,.intl-tariff-table td{padding:10px}}

/* فرم‌های تست تشخیص تیپ شخصیت (شورت‌کد [personality_test]): عنوان با فونت سنس عربی،
   بقیه‌ی متن‌ها (لیبل‌ها، سوالات، گزینه‌ها) با فونت ایران‌یکان — دقیقاً طبق عکس مرجع کارفرما */
.ptest-title{
  font-family:'Vazirmatn',var(--font-heading);color:#18100F;font-size:28px;font-weight:700;
  text-align:start;margin:16px 0 30px;
}
.ptest-form{font-family:'YekanBakh',var(--font-heading)}
.ptest-required{color:#D0342C;font-size:13px;font-weight:400}
.ptest-field-group{margin-bottom:28px}
.ptest-group-label{display:block;font-weight:700;color:#18100F;margin-bottom:10px;font-size:15px}
.ptest-name-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ptest-subfield{display:flex;flex-direction:column}
.ptest-sublabel{font-size:13px;color:#6B7280;margin-bottom:6px}
.ptest-subfield input,.ptest-phone-input{
  width:100%;border:1px solid var(--border);border-radius:6px;padding:10px 12px;font-family:inherit;
  font-size:14px;background:var(--surface);
}
.ptest-description{color:#4B5565;font-size:14.5px;line-height:2;margin-bottom:36px}
.ptest-question{margin-bottom:30px}
.ptest-q-label{display:block;font-weight:400;color:#18100F;font-size:15px;margin-bottom:10px;line-height:1.9}
.ptest-options{display:flex;flex-direction:column;gap:8px}
.ptest-option{display:flex;align-items:center;gap:8px;font-size:14px;color:#18100F;cursor:pointer}
.ptest-option input{width:16px;height:16px;accent-color:var(--color-accent);flex-shrink:0}
.ptest-submit{
  background:var(--color-accent);color:#fff;border:none;border-radius:8px;padding:12px 28px;
  font-family:'YekanBakh',var(--font-heading);font-size:15px;font-weight:700;cursor:pointer;margin-top:10px;
}
.ptest-submit:hover{opacity:.9}
.ptest-result{text-align:center;padding:60px 20px}
.ptest-result-percent{font-family:'Vazirmatn',var(--font-heading);font-size:52px;font-weight:700;color:var(--color-accent)}
.ptest-result-label{font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);font-size:26px;margin:10px 0}
.ptest-result-desc{font-family:'YekanBakh',var(--font-heading);color:#4B5565;font-size:16px;line-height:2;max-width:560px;margin:0 auto 20px}
.ptest-result-note{font-family:'YekanBakh',var(--font-heading);color:var(--muted-text);font-size:13px}
.ptest-safety-alert{
  max-width:520px;margin:0 auto 20px;padding:16px 20px;border-radius:10px;background:#FFF1F0;border:1px solid #F3B4AE;
  color:#8A1F14;font-family:'YekanBakh',var(--font-heading);font-size:14px;line-height:2;
}
.ptest-safety-alert a{color:var(--color-accent);font-weight:700;text-decoration:underline}

/* صفحه‌ی «محاسبه شاخص توده بدنی» (شورت‌کد [bmi_calculator]) */
.bmi-calc{
  max-width:520px;margin:0 auto 40px;background:var(--surface);border:1px solid var(--border);border-radius:14px;
  padding:28px 26px;font-family:'YekanBakh',var(--font-heading);
}
.bmi-calc-field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}
.bmi-calc-field label{font-size:14px;font-weight:700;color:#18100F}
.bmi-calc-field input{
  border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-family:inherit;font-size:14px;
  background:var(--paper);
}
.bmi-calc-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.bmi-calc-row .bmi-calc-field{margin-bottom:0}
.bmi-calc .ptest-submit{width:100%;margin-top:8px}
.bmi-calc-result{
  margin-top:22px;padding:20px;border-radius:10px;background:var(--muted);text-align:center;
}
.bmi-calc-result-error{background:#FFF1F0;color:#8A1F14}
.bmi-calc-number{font-family:'Vazirmatn',var(--font-heading);font-size:38px;font-weight:700;color:var(--color-accent)}
.bmi-calc-label{font-family:'Vazirmatn',var(--font-heading);font-size:19px;font-weight:700;color:var(--color-primary);margin-top:4px}
.bmi-calc-desc{font-size:14px;color:#4B5565;margin-top:8px;line-height:1.9}
.bmi-bands-title{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);
  font-size:22px;font-weight:700;margin:0 0 18px;
}
.bmi-bands-table-wrap{overflow-x:auto;margin-bottom:20px}
.bmi-bands-table{width:100%;border-collapse:collapse;font-family:'YekanBakh',var(--font-heading);font-size:14px}
.bmi-bands-table th{background:var(--paper);color:var(--color-primary);font-weight:700;padding:10px 14px;text-align:right;border:1px solid var(--border)}
.bmi-bands-table td{padding:10px 14px;border:1px solid var(--border);color:#4B5565;vertical-align:top}
@media (max-width:640px){.bmi-calc-row{grid-template-columns:1fr}}
@media (max-width:640px){.ptest-name-row{grid-template-columns:1fr}}
.post-content h3,.post-content h4{font-size:19px;font-weight:700;margin-top:26px;color:var(--color-primary)}
.post-content p{margin:14px 0}
/* عکس‌های محتوا اغلب attribute width خام از وردپرس دارن (مثلاً width="525") که مرورگر به‌عنوان
   اندازه‌ی واقعی در نظر می‌گیره؛ width:100% (نه فقط max-width) این رو نادیده می‌گیره و عکس
   همیشه کل عرض ستون محتوا رو پر می‌کنه؛ margin-inline:auto هم برای عکس‌هایی که تو یه پاراگراف
   محدودشده هستن وسط‌چین‌شون می‌کنه */
.post-content img{width:100%;max-width:100%;height:auto;border-radius:12px;margin:20px auto;display:block}
/* iframe های محتوا (مثل نقشه‌ی گوگل صفحه‌ی تماس با ما) attribute width/height خام کوچیک
   وردپرس رو دارن (پیش‌فرض مرورگر ۳۰۰x۱۵۰) — بدون این قانون تمام‌عرض نمی‌شن */
.post-content iframe{width:100%;max-width:100%;height:420px;border:0;border-radius:12px;margin:20px auto;display:block}
/* تیتری که بلافاصله قبل از یک عکس میاد (مثل «تاریخچه تاسیس...» قبل از عکس کلینیک) وسط‌چین می‌شه */
.post-content h1:has(+ img),.post-content h2:has(+ img),.post-content h3:has(+ img),
.post-content h4:has(+ img),.post-content h5:has(+ img){text-align:center}
.post-content ul,.post-content ol{padding-inline-start:22px;margin:14px 0}
.post-content li{margin:6px 0}
/* جفت‌های عنوان+پاراگراف (مثل بلوک‌های اطلاعات تماس)، در functions.php داخل div.info-card
   بسته‌بندی می‌شن تا وقتی چندتا پشت‌سرهم میان بشه در شبکه کنارشون چید، نه تک‌تک تمام‌عرض */
.post-content .info-card{
  background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:24px 28px;margin:10px 0 28px;
  box-shadow:0 8px 24px rgba(2,6,23,.06);text-align:center;font-size:15px;
}
.post-content .info-card h3,.post-content .info-card h4{margin-top:0}
.post-content .info-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin:10px 0 28px}
.post-content .info-card-grid .info-card{margin:0}
.post-content .info-card-icon{
  width:52px;height:52px;border-radius:50%;border:1.5px solid #D6217A;color:#D6217A;
  display:flex;align-items:center;justify-content:center;margin:0 auto 14px;
}
.post-content .info-card-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;color:#D6217A}

/* عنوان + یک لینک به‌عنوان توضیح (مثل «برنامه حضور پزشکان» + «برای مشاهده ساعات کاری پزشکان
   اینجا کلیک کنید») — دو h2 پشت‌سرهمن (نه یک ساختار واحد از فیلتر PHP)، پس با border/radius
   نصفه‌نصفه به‌هم می‌چسبن و یک کارت واحد به‌نظر می‌رسن؛ رنگ لینک صورتی مطابق طرح کارفرماست */
.post-content h2:has(+ h2 > a:only-child){
  background:var(--surface);border:1px solid var(--border);border-bottom:0;border-radius:14px 14px 0 0;
  padding:22px 28px 6px;margin:10px 0 0;box-shadow:0 8px 24px rgba(2,6,23,.06);
  text-align:center;font-size:19px;font-weight:700;color:var(--color-primary);
}
.post-content h2 + h2:has(> a:only-child){
  background:var(--surface);border:1px solid var(--border);border-top:0;border-radius:0 0 14px 14px;
  padding:6px 28px 22px;margin:0 0 28px;box-shadow:0 8px 24px rgba(2,6,23,.06);
  text-align:center;font-size:15px;font-weight:400;
}
.post-content h2 + h2:has(> a:only-child) a{color:#D6217A;font-weight:700;text-decoration:none}
.post-content h2 + h2:has(> a:only-child) a:hover{text-decoration:underline}
/* ۳ باکس CTA صفحه اصلی (عنوان+توضیح+دکمه، توسط فیلتر PHP در cta-item/cta-grid بسته‌بندی شدن)
   روی لبه‌ی پایین هیرو سوار می‌شن (margin-top منفی) — دقیقاً مطابق سایت اصلی */
.cta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:-70px 0 40px;position:relative;z-index:3}
.cta-item{
  border-radius:12px;padding:26px 28px 24px;color:#fff;box-shadow:0 16px 34px rgba(2,6,23,.18);
  background:linear-gradient(135deg,#2E86D8 0%,#1B5FA8 100%);
}
.cta-item:nth-child(2){background:linear-gradient(135deg,#2FA36B 0%,#1F7A9E 100%)}
.cta-item h3{margin:0 0 12px;font-size:24px;font-weight:700;color:#fff}
.cta-item p{margin:0 0 22px;font-size:15.5px;color:rgba(255,255,255,.88);line-height:1.8}
.cta-item a{display:inline-flex;background:#2FA84B;color:#fff;font-weight:700;font-size:15px;text-decoration:none;padding:10px 22px;border-radius:8px;transition:filter var(--duration) var(--ease)}
.cta-item a:hover{filter:brightness(1.1)}
@media (max-width:820px){.cta-grid{grid-template-columns:1fr;margin-top:-30px}}

/* کارت عضو تیم (نام+سمت+عکس، توسط فیلتر PHP در team-item/team-grid بسته‌بندی شدن —
   مثل فهرست پزشکان/پرسنل صفحه‌ی «پزشکان») */
.post-content .team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:18px;margin:20px 0 32px}
.post-content .team-card{
  background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:22px 14px;
  text-align:center;box-shadow:0 4px 14px rgba(2,6,23,.05);margin:0;
  transition:box-shadow var(--duration) var(--ease),transform var(--duration) var(--ease);
}
.post-content .team-card:hover{box-shadow:0 10px 24px rgba(2,6,23,.1);transform:translateY(-2px)}
.post-content .team-card img{
  width:96px;height:96px;max-width:96px;border-radius:50%;object-fit:cover;margin:0 auto 14px;
  border:3px solid var(--paper);box-shadow:0 0 0 1px var(--border);
}
.post-content .team-card h3{margin:0 0 4px;font-size:15px;color:var(--color-primary);font-weight:700}
.post-content .team-card-role{display:block;font-size:12.5px;color:var(--muted-text)}

/* افزونه‌ی «پزشکان و کادر» (staff-directory): هر دسته‌بندی (سمت گروهی، مثل «مدیریت مجموعه»)
   با فونت سنس عربی (Vazirmatn)، اسم هر شخص با B Titr، و سمت اختصاصی زیر اسم (مثل «قائم‌مقام
   مدیرعامل») با ایران‌یکان (YekanBakh) — طبق درخواست دقیق کارفرما، نه فونت پیش‌فرض بدنه/تیتر سایت */
.post-content .staff-category{margin:44px 0}
.post-content .staff-category-title{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);
  font-size:28px;font-weight:700;margin:0 0 26px;
}
/* flex به‌جای grid: با auto-fill، یک دسته‌بندی با فقط ۱ یا ۲ عضو (که خیلی زیاده توی این
   داده‌ها) ستون‌های خالی نامرئی می‌ساخت و کارت واقعی رو به یک گوشه (راست، توی RTL) می‌چسبوند
   با یک فضای خالی بزرگ و بی‌قواره کنارش؛ flex+wrap+center یعنی کارت‌ها همیشه وسط‌چین و
   متناسب با تعدادشون می‌شینن، چه ۱ نفر باشه چه ۱۰ نفر */
.post-content .staff-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:22px}
.post-content .staff-card{
  flex:0 0 220px;width:220px;
  background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;
  box-shadow:0 4px 14px rgba(2,6,23,.05);transition:box-shadow var(--duration) var(--ease),transform var(--duration) var(--ease);
  margin:0;
}
.post-content .staff-card:hover{box-shadow:0 10px 24px rgba(2,6,23,.1);transform:translateY(-2px)}
.post-content .staff-card-photo{aspect-ratio:1/1;background:var(--muted)}
.post-content .staff-card-photo img{width:100%;height:100%;object-fit:cover;object-position:top center;margin:0;border-radius:0;display:block}
.post-content .staff-card-body{padding:18px}
.post-content .staff-card-name{
  margin:0 0 4px;font-family:'BTitr',var(--font-heading);color:var(--color-primary);
  font-size:17px;font-weight:700;text-align:center;
}
.post-content .staff-card-position{
  display:block;text-align:center;font-family:'YekanBakh',var(--font-heading);
  color:var(--color-accent);font-size:13px;font-weight:400;margin-bottom:10px;
}

/* کارت‌های «غنی» (پزشکانی با سوابق تحصیلی/کاری، برخلاف پرسنل ساده‌ای مثل پرستار/منشی که فقط
   نام+سمت دارن): به‌جای کارت کوچیک شبکه‌ای، یک کارت بزرگ و افقی می‌گیرن — عکس سمت چپ صفحه،
   عنوان/متن‌ها سمت راست و پشت‌سرهم از بالا به پایین، هرکدوم تمام‌عرض و زیر هم (نه کنار هم)
   چون فشرده‌کردنشون توی ستون باریک ۲۲۰px بی‌قواره بود؛ صرف‌نظر از اینکه دسته‌بندیشون یک نفره
   باشه (مثل موسس و مدیرعامل) یا چندنفره (مثل پزشکان متخصص) */
/* flex-basis:100% یعنی هرکارت «غنی» کل عرض ردیف رو می‌گیره و به‌خاطر flex-wrap خودش رو
   خودکار به یک خط جدید می‌ندازه — این‌طوری توی دسته‌بندی‌های ترکیبی (مثل «پزشک فوق تخصص
   ریه» که دو پزشک با سوابق کامل و یک نفر فقط با نام+سمت داره) کارت‌های ساده هم‌چنان کوچیک
   و کنار هم می‌مونن و فقط کارت‌های غنی هرکدوم ردیف اختصاصی خودشون رو می‌گیرن */
.post-content .staff-card--detailed{
  flex:1 1 100%;width:100%;max-width:900px;margin:0 auto;
  display:flex;flex-direction:row-reverse;align-items:stretch;text-align:start;
}
/* عکس با align-items:stretch کل ارتفاع کارت رو (هرچقدر متن کنارش بلند باشه) پر می‌کنه —
   object-fit:cover هم باعث می‌شه بدون کش‌اومدن/تغییرشکل، فقط برش بخوره؛ اگه مربعِ ثابت
   می‌ذاشتیم، برای کارت‌های پرمتن (مثل تیم IPD) زیر عکس فضای خالی می‌موند */
.post-content .staff-card--detailed .staff-card-photo{flex:0 0 40%;aspect-ratio:auto}
.post-content .staff-card--detailed .staff-card-body{flex:1;padding:32px 36px;display:flex;flex-direction:column;justify-content:center}
.post-content .staff-card--detailed .staff-card-name,
.post-content .staff-card--detailed .staff-card-position{text-align:start}
.post-content .staff-card--detailed .staff-card-name{font-size:22px}
.post-content .staff-card--detailed .staff-card-position{font-size:15px;margin-bottom:16px}

/* برگه‌ی «تیم IPD»: اسم پزشکان با فونت سنس عربی و رنگ سرمه‌ای، بقیه‌ی عنوان‌ها (گزیده سخن،
   سوابق تحصیلی/کاری، مهارت‌ها) با فونت B Titr، و متن‌های داخلشون با ایران‌یکان — طبق درخواست
   کارفرما، فقط مخصوص این برگه (نه بقیه‌ی برگه‌های کادر/پزشکان) */
.post-content .ipd-team .staff-card-name{font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);font-size:24px}
.post-content .ipd-team .staff-card-position{font-size:16px}
.post-content .ipd-team .staff-card-section h4{font-family:'BTitr',var(--font-heading);color:var(--color-primary);font-size:15.5px}
.post-content .ipd-team .staff-card-section p,
.post-content .ipd-team .staff-card-section ul{font-family:'YekanBakh',var(--font-heading);font-size:14px}
@media (max-width:680px){
  .post-content .staff-card--detailed{flex-direction:column}
  .post-content .staff-card--detailed .staff-card-photo{flex:0 0 auto;aspect-ratio:1/1}
}
.post-content .staff-card-section{margin-top:12px;border-top:1px solid var(--border);padding-top:10px}
.post-content .staff-card-section h4{margin:0 0 6px;font-size:12.5px;font-weight:700;color:var(--muted-text);font-family:'YekanBakh',var(--font-heading)}
.post-content .staff-card-section ul{margin:0;padding-inline-start:18px;font-size:12.5px;color:#666;line-height:1.8;font-family:'YekanBakh',var(--font-heading)}
.post-content .staff-card-section li{margin:3px 0}

/* بخش انتهایی برگه‌ی «تیم IPD» (محتوای عمومی زیر گرید کادر) — فقط فاصله‌گذاری معمولی، بدون
   تغییری توی خودِ متن‌ها */
.post-content .ipd-extra{margin-top:40px}
.post-content .ipd-stats{display:flex;flex-wrap:wrap;gap:16px;margin:20px 0}
.post-content .ipd-stat{
  flex:1 1 160px;background:var(--paper);border:1px solid var(--border);border-radius:10px;
  padding:16px 18px;text-align:center;
}
.post-content .ipd-stat-value{display:block;font-family:'BTitr',var(--font-heading);color:var(--color-primary);font-size:24px;font-weight:700}
.post-content .ipd-stat-label{display:block;font-family:'YekanBakh',var(--font-heading);color:var(--muted-text);font-size:13px;margin-top:4px}

/* متن معرفی بالای صفحه‌ی «ساعات کاری» (عین محتوای اصلی سایت قبلی: عنوان با فونت سنس عربی،
   خط اول قرمز/راهنما، خط دوم توضیح معمولی) — این‌ها ثابتن، از خود محتوای صفحه میان نه افزونه */
.post-content .wh-page-title{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:#18100F;
  font-size:26px;font-weight:700;margin:40px 0 20px;
}
.post-content .wh-intro-red{text-align:center;color:#D6217A;font-size:17px;margin:0 0 10px}
.post-content .wh-intro-text{text-align:center;color:#3a3a3a;font-size:17px;margin:0 0 24px}

/* افزونه‌ی «ساعات کاری داینامیک» (working-hours): دکمه‌های فیلتر + جدول هفتگی با موقعیت‌دهی
   مطلق (هر شیفت بر اساس ساعت شروع/پایانش top/height می‌گیره)، رنگ هرکدوم از تخصص خودش میاد */
.wh-widget{margin:20px 0 40px;font-family:var(--font-body)}
.wh-filters{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:28px}
.wh-filter-btn{
  background:#fff;border:1.5px solid var(--wh-c, var(--border));color:var(--wh-c, var(--muted-text));
  font-family:var(--font-heading);font-size:13px;font-weight:600;padding:8px 18px;border-radius:999px;
  cursor:pointer;transition:background var(--duration) var(--ease),color var(--duration) var(--ease);
}
.wh-filter-btn[data-wh-filter="all"]{border-color:var(--color-primary);color:var(--color-primary)}
.wh-filter-btn:hover{background:rgba(0,0,0,.03)}
.wh-filter-btn.active{background:var(--wh-c, var(--color-primary));color:#fff}
.wh-filter-btn[data-wh-filter="all"].active{background:var(--color-primary)}

.wh-grid{display:flex;align-items:flex-start;gap:0;overflow-x:auto;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.wh-time-col{position:relative;flex:0 0 56px;border-inline-start:1px solid var(--border);padding-top:38px}
.wh-time-label{position:absolute;inset-inline-end:8px;transform:translateY(-50%);font-size:11px;color:var(--muted-text);white-space:nowrap;font-family:var(--font-body)}
.wh-day-col{flex:1 1 0;min-width:230px;border-inline-start:1px solid var(--border)}
.wh-day-col:first-child{border-inline-start:0}
.wh-day-head{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);font-weight:700;font-size:13.5px;
  color:var(--color-primary);padding:10px 6px;border-bottom:1px solid var(--border);background:var(--paper);
}
.wh-day-body{position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 59px,var(--border) 60px);background-size:100% 60px}
.wh-event{
  position:absolute;border-radius:6px;padding:4px 6px;overflow:visible;color:#fff;
  box-shadow:0 2px 6px rgba(2,6,23,.15);transition:opacity var(--duration) var(--ease);
  display:flex;flex-direction:column;gap:1px;
  /* height دقیق بر اساس مدت شیفت با جاوااسکریپت ست می‌شه (برای تناسب بصری با محور زمان)،
     ولی برای شیفت‌های کوتاه (مثلاً ۳۰ دقیقه) کافی نبود و متن (تخصص/نام/ساعت) با ellipsis
     نصفه‌ونصفه می‌شد؛ min-height این ارتفاع رو تضمین می‌کنه (طبق مشخصات CSS همیشه از height
     صریح‌تر برنده می‌شه)، حتی اگه یعنی جعبه از مدت واقعی شیفتش بلندتر بشه */
  min-height:70px;z-index:1;
}
.wh-event-dim{opacity:.15}
.wh-event-specialty{font-family:'YekanBakh',var(--font-heading);font-size:12.5px;font-weight:700;line-height:1.3;white-space:normal;word-break:break-word}
.wh-event-time{font-size:12px;opacity:.9;font-family:var(--font-body);white-space:normal}
.wh-event-name{font-family:'BTitr',var(--font-heading);font-size:13px;white-space:normal;word-break:break-word}
@media (max-width:900px){
  .wh-day-col{min-width:145px}
}

.breadcrumb{max-width:760px;margin:24px auto 0;padding:0 20px;font-size:13px;color:var(--muted-text);display:flex;gap:6px;align-items:center}
.breadcrumb a:hover{color:var(--color-accent)}

/* Footer */
.site-footer{background:#0F2540;color:#cbd2df;margin-top:0;font-size:13.5px;padding-top:32px}

/* نوار اطلاعات: آدرس / تماس+شبکه‌های اجتماعی / ساعات کاری — یک کارت آبی روشن‌تر که روی
   پس‌زمینه‌ی تیره‌تر پابرگ «شناور» به‌نظر می‌رسه (گوشه‌های گرد کامل + کنتراست رنگ)، دقیقاً
   مطابق طرح کارفرما، نه یک نوار تخت تمام‌عرض هم‌رنگ با بقیه‌ی پابرگ */
.footer-info{background:#1B4B87;padding:36px 0;max-width:1520px;margin:0 auto;border-radius:20px}
.footer-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.footer-info-item{display:flex;align-items:flex-start;gap:14px;position:relative}
.footer-info-item:not(:first-child){border-inline-start:1px solid rgba(255,255,255,.2);padding-inline-start:28px}
.footer-info-icon{
  width:44px;height:44px;border-radius:50%;background:#2FA84B;color:#fff;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
}
.footer-info-icon svg{width:20px;height:20px}
.footer-info-item h4{margin:0 0 8px;font-size:16px;font-weight:700;color:#fff}
.footer-info-item p{margin:0;font-size:13px;line-height:1.9;color:#c7d1e0}
.footer-social{display:flex;gap:10px;margin-top:14px}
.footer-social-icon{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;transition:filter var(--duration) var(--ease)}
.footer-social-icon:hover{filter:brightness(1.15)}
.footer-social-icon svg{width:17px;height:17px}
.footer-social-icon.wa{background:#25D366}
.footer-social-icon.ig{background:radial-gradient(circle at 30% 110%,#fdf497,#fd5949 45%,#d6249f 70%,#285AEB)}
.footer-social-icon.yt{background:#FF0000}
.footer-social-icon.ap{background:#ED145B}

.footer-logo-block{text-align:center;padding:36px 20px}
.footer-logo-block img{max-width:280px;width:100%;height:auto;margin:0 auto;display:block}

.footer-copyright{background:#123055;border-top:1px solid rgba(255,255,255,.12);padding:18px 0}
.footer-copyright .container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12.5px;color:#94a1bb}
.footer-copyright a{color:#c7d1e0}
.footer-copyright a:hover{color:#fff}
@media (max-width:820px){
  .footer-info{border-radius:0;max-width:100%}
  .footer-info-grid{grid-template-columns:1fr;text-align:center}
  .footer-info-item{flex-direction:column;align-items:center}
  .footer-info-item:not(:first-child){border-inline-start:0;padding-inline-start:0;border-top:1px solid rgba(255,255,255,.2);padding-top:24px}
  .footer-social{justify-content:center}
  .footer-copyright .container{justify-content:center;text-align:center}
}

/* Contact form (used by contact-form plugin) */
.contact-form{max-width:520px;margin:0 auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:26px}
.contact-form label{display:block;font-size:12.5px;color:var(--muted-text);margin:12px 0 6px;font-weight:600}
.contact-form input,.contact-form textarea{
  width:100%;padding:11px 13px;border:1.5px solid var(--border);border-radius:10px;font-family:inherit;font-size:14px;min-height:44px;
  transition:border-color var(--duration) var(--ease),box-shadow var(--duration) var(--ease);
}
.contact-form textarea{min-height:110px}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3.5px rgba(3,105,161,.13)}
.contact-form button{margin-top:16px;width:100%;justify-content:center}

/* فرم‌های «استخدام»/«نظرسنجی» (job_application_form_html / survey_form_html) */
.alert{padding:12px 16px;border-radius:10px;margin-bottom:20px;font-size:14px}
.alert-success{background:#e6f7ef;color:var(--success)}
.alert-error{background:#fdecec;color:var(--destructive)}
.site-form{max-width:900px;margin:0 auto 40px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:30px}
.site-form-narrow{max-width:520px}
.site-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.site-form-field-full{grid-column:1 / -1}
.site-form-field{margin-bottom:16px}
.site-form-narrow .site-form-field:last-of-type{margin-bottom:0}
.site-form label{display:block;font-size:12.5px;color:var(--muted-text);margin-bottom:6px;font-weight:600}
.site-form-required{color:var(--destructive)}
.site-form input,.site-form select,.site-form textarea{
  width:100%;padding:11px 13px;border:1.5px solid var(--border);border-radius:10px;font-family:inherit;font-size:14px;min-height:44px;
  background:var(--surface);color:var(--ink);transition:border-color var(--duration) var(--ease),box-shadow var(--duration) var(--ease);
}
.site-form textarea{min-height:100px;resize:vertical}
.site-form input:focus,.site-form select:focus,.site-form textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3.5px rgba(3,105,161,.13)}
.site-form button{margin-top:6px}
@media (max-width:720px){.site-form-grid{grid-template-columns:1fr}}

/* فرم «تکمیل فرم استخدام»: بزرگ‌تر شدن فونت/حاشیه و رنگ مشکی طبق درخواست دقیق کارفرما —
   فقط همین فرم رو تحت تاثیر قرار می‌ده (نه فرم نظرسنجی/تماس که از همون .site-form پایه استفاده
   می‌کنن)؛ متن بالای فرم هم با :has وسط‌چین می‌شه، بدون نیاز به دستکاری خود محتوای صفحه */
.job-application-title{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);
  font-size:28px;font-weight:700;margin:40px 0 22px;
}
.post-content > p:has(+ form.job-application-form){
  text-align:center;color:#000;font-size:18px;max-width:900px;margin:0 auto 16px;
}
form.job-application-form{border-width:2px}
form.job-application-form label{font-size:16.5px;color:#000}
form.job-application-form input,form.job-application-form select,form.job-application-form textarea{font-size:18px}

/* فرم «فرم نظرسنجی»: دقیقاً همون تغییرات فونت/حاشیه/عنوان صفحه‌ی «فرم استخدام» */
.survey-form-title{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);
  font-size:28px;font-weight:700;margin:40px 0 22px;
}
.post-content > p:has(+ form.survey-form){
  text-align:center;color:#000;font-size:18px;max-width:900px;margin:0 auto 16px;
}
form.survey-form{border-width:2px}
form.survey-form label{font-size:16.5px;color:#000}
form.survey-form input,form.survey-form select,form.survey-form textarea{font-size:18px}

/* فرم «بارگذاری مدارک پزشکی» (واحد بیماران بین‌الملل): دکمه‌ی انتخاب فایل هم‌رنگ سایت + راهنمای حجم مجاز */
.medical-document-form input[type="file"]{padding:9px 13px;cursor:pointer}
.medical-document-form input[type="file"]::file-selector-button{
  font-family:inherit;font-size:13px;font-weight:600;color:#fff;background:var(--color-accent);
  border:0;border-radius:7px;padding:8px 16px;margin-inline-end:10px;cursor:pointer;
}
.md-file-hint{margin-top:8px;font-size:12.5px;color:var(--muted-text)}

@media (max-width:820px){
  .grid-3{grid-template-columns:1fr}
}

.mobile-nav{display:none;flex-direction:column;border-top:1px solid var(--border);background:var(--surface)}
.mobile-nav.open{display:flex}
.mobile-nav a{padding:14px 20px;font-size:15px;font-weight:600;border-bottom:1px solid var(--border);min-height:44px;display:flex;align-items:center}
.mobile-nav a:hover{background:var(--muted)}

/* رفع تداخل: قانون‌های عمومی‌تر بعداً در فایل (margin:14px 0 و...) مقدار margin-inline:auto
   بالاتر رو ریست می‌کردن (چون shorthand «margin» همه‌ی جهت‌ها رو بازنویسی می‌کنه) و باعث می‌شد
   پاراگراف‌های محدودشده به ۸۲۰px به‌جای وسط‌چین، به یک طرف بچسبن و نصف صفحه خالی بمونه.
   این قانون آخرین باشه که وسط‌چین بودن رو دوباره تضمین می‌کنه. */
.post-content > p,.post-content > ul,.post-content > ol,.post-content > h1,.post-content > h3{margin-inline:auto}

/* افزونه‌ی «تعرفه خدمات»: جدول‌های آبی/راه‌راه، دقیقاً مطابق طرح عکس مرجع کارفرما (هدر آبی
   پررنگ با متن سفید، ردیف‌های زوج آبی خیلی روشن برای خوانایی بهتر، بدون خط جداکننده‌ی زننده) */
.post-content .tariff-table-block{margin:36px 0}
.post-content .tariff-table-title{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);
  font-size:24px;font-weight:700;margin:0 0 18px;
}
.tariff-table-scroll{overflow-x:auto;border-radius:10px;border:1px solid var(--border)}
.tariff-table{border-collapse:collapse;width:100%;min-width:640px;font-size:14.5px}
.tariff-table th{
  background:#4A8FD3;color:#fff;font-family:'YekanBakh',var(--font-heading);font-weight:700;
  padding:14px 16px;text-align:center;white-space:nowrap;
}
.tariff-table td{padding:12px 16px;text-align:center;color:#2b2b2b;border-top:1px solid #E3ECF7;line-height:1.9}
.tariff-table td:last-child{font-weight:700;color:#18100F}
.tariff-table tr.alt td{background:#EAF2FC}
.post-content .tariff-table-footnote{text-align:center;font-weight:700;color:#18100F;margin:14px 0 0;font-size:15px}
@media (max-width:820px){.tariff-table{font-size:13px}.tariff-table th,.tariff-table td{padding:10px}}

/* صفحه‌ی «تماس با ما»: دو ستون (راست=اطلاعات تماس، چپ=نقشه)، دقیقاً مطابق طرح عکس مرجع
   کارفرما. تیترهای بخش («ارتباط با ما»/«موقعیت ما بر روی نقشه») با فونت سنس عربی، تیتر هر
   کارت (نشانی/شماره تماس/...) با B Titr — طبق درخواست دقیق کارفرما */
.post-content .contact-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:20px 0 40px;align-items:start}
.post-content .contact-section-title{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);
  font-size:26px;font-weight:700;margin:0 0 24px;
}
.post-content .contact-info-card{
  background:#F7FAFE;border:3px solid #1D4ED8;border-radius:14px;padding:22px 26px;margin:0 0 18px;
  box-shadow:0 6px 18px rgba(37,99,235,.08);text-align:right;
}
/* هدر هر کارت (آیکون+عنوان) و متن زیرش، هردو راست‌چین و شروع از سمت راست کارت — طبق طرح
   مرجع کارفرما؛ آیکون قبل از عنوان میاد (توی RTL یعنی آیکون سمت راست‌تر از عنوان) */
.post-content .contact-info-head{display:flex;align-items:center;justify-content:flex-start;gap:10px;margin-bottom:12px}
.post-content .contact-info-head h4{margin:0;font-family:'BTitr',var(--font-heading);font-size:21px;font-weight:700;color:#18100F}
.post-content .contact-info-head h4 a{color:inherit;text-decoration:none}
.post-content .contact-info-icon{color:var(--color-accent);width:40px;height:40px;flex-shrink:0;display:flex}
.post-content .contact-info-icon svg{width:100%;height:100%}
.post-content .contact-info-card p{margin:0;color:#4B5565;font-size:18.5px;line-height:2;text-align:right}
.neshan-map-box{width:100%;min-height:420px;border-radius:14px;overflow:hidden;border:1.5px solid #CFE0F5}
.neshan-map-missing-key{background:#FEF3C7;color:#92400E;border:1px solid #FCD34D;border-radius:12px;padding:18px;text-align:center;font-size:14px;line-height:2}

/* دو دکمه‌ی «تکمیل فرم استخدام»/«تکمیل فرم نظرسنجی» زیر صفحه‌ی تماس با ما: قبلاً یک الگوی
   عمومی (تیتر+لینک صورتی، مخصوص چیز دیگه‌ای مثل «برنامه حضور پزشکان») این دو لینک نامرتبط رو
   اشتباهی توی یک کارت نصفه‌نصفه ادغام می‌کرد؛ اینجا دو باکس جدا و هم‌ردیف (راست/چپ) می‌سازیم */
.post-content .contact-forms-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:36px 0 44px}
.post-content .contact-form-btn{
  display:block;text-align:center;background:#F7FAFE;border:3px solid #1D4ED8;border-radius:14px;
  padding:22px 20px;font-family:'YekanBakh',var(--font-heading);font-size:17px;font-weight:700;
  color:var(--color-primary);text-decoration:none;box-shadow:0 6px 18px rgba(37,99,235,.08);
  transition:background var(--duration) var(--ease),transform var(--duration) var(--ease);
}
.post-content .contact-form-btn:hover{background:#EAF1FD;transform:translateY(-2px)}
@media (max-width:680px){.post-content .contact-forms-grid{grid-template-columns:1fr}}
.neshan-map-missing-key a{color:inherit;font-weight:700;text-decoration:underline}
@media (max-width:900px){.post-content .contact-page-grid{grid-template-columns:1fr}}

/* صفحه‌ی «خدمات ما»: کارت‌های خدمت (آیکون دایره‌ای خط‌دور + عنوان + توضیح + دکمه‌ی «بیشتر
   بخوانید») — قبلاً بدون هیچ کانتینری رها شده بودن و آیکون‌ها (که PNG با width:100% کل عرض
   ستون محتوا رو می‌گرفتن) غول‌پیکر و بی‌قواره نمایش داده می‌شدن */
.post-content h2:has(+ .service-overview-grid){
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);font-size:32px;
}
.post-content .service-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin:28px 0 40px}
/* توضیح هر خدمت طول متفاوتی داره؛ بدون flex، دکمه‌ی «بیشتر بخوانید» هرکارت افقی همون زیر
   متن خودش می‌افتاد و توی یک ردیف تراز نبودن. با ستون‌کردن کارت (کشیده به قد بلندترین
   کارت همون ردیف، رفتار پیش‌فرض grid) و margin-top:auto روی دکمه، همه‌ی دکمه‌ها دقیقاً کف
   کارت و هم‌تراز می‌شینن، صرف‌نظر از طول توضیح */
.post-content .service-overview-card{
  background:var(--surface);border:2px solid var(--border);border-radius:16px;padding:32px 26px;
  text-align:center;margin:0;transition:box-shadow var(--duration) var(--ease),transform var(--duration) var(--ease);
  display:flex;flex-direction:column;align-items:center;
}
.post-content .service-overview-card:hover{box-shadow:0 10px 26px rgba(2,6,23,.08);transform:translateY(-3px)}
.post-content .service-overview-icon{
  width:150px;height:150px;border-radius:50%;border:1.5px solid #D8DEE8;
  display:flex;align-items:center;justify-content:center;margin:0 auto 22px;overflow:hidden;
}
.post-content .service-overview-icon img{width:74%;height:74%;max-width:74%;object-fit:contain;margin:0;border-radius:0;display:block}
.post-content .service-overview-card h3{margin:0 0 12px;font-family:'BTitr',var(--font-heading);font-size:20px;font-weight:700;color:#18100F}
/* justify روی متن فارسیِ چندخطیِ باریک (کارت‌ها فقط ~۲۶۰px عرض دارن)، بین کلمات کوتاه‌ترین
   خط‌ها فاصله‌ی زشت و نامرتب ایجاد می‌کرد؛ راست‌چین معمولی هم منظم‌تره هم خوانا */
.post-content .service-overview-desc{margin:0 0 20px;color:#5B6478;font-size:14px;line-height:1.9;font-family:'YekanBakh',var(--font-heading);text-align:center}
.post-content .service-overview-desc p{margin:0}
.post-content .service-overview-more{
  display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--color-accent);color:var(--color-accent);
  font-size:13.5px;font-weight:600;padding:9px 20px;border-radius:8px;text-decoration:none;
  transition:background var(--duration) var(--ease),color var(--duration) var(--ease);
  margin-top:auto;
}
.post-content .service-overview-more span{font-size:15px;line-height:1}
.post-content .service-overview-more:hover{background:var(--color-accent);color:#fff}

/* صفحه‌ی تک‌خدمت (مثل «تشخیص بیماری‌های قلبی»): عکس بزرگ + نوار کناری خدمات مرتبط کنار هم،
   زیرش تیتر، و یک کادر با حاشیه‌ی صورتی که کل توضیحات (کوتیشن + زیرعنوان‌ها + پاراگراف‌ها +
   عکس میانی) رو دربرمی‌گیره — دقیقاً مطابق طرح عکس مرجع کارفرما */
.post-content .service-detail-hero{display:grid;grid-template-columns:1fr 2fr;gap:24px;margin:20px 0 32px;align-items:stretch}
.post-content .service-detail-photo{border-radius:12px;overflow:hidden}
.post-content .service-detail-photo img{width:100%;height:100%;object-fit:cover;margin:0;border-radius:0;display:block}
.post-content .service-sidebar{display:flex;flex-direction:column;gap:10px;background:var(--paper);border-radius:12px;padding:10px}
.service-sidebar-link{
  display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;border-radius:8px;
  background:var(--surface);border:1px solid var(--border);color:#18100F;font-size:14px;font-weight:600;
  text-decoration:none;transition:background var(--duration) var(--ease),color var(--duration) var(--ease);
}
.service-sidebar-link:hover{background:var(--muted)}
.service-sidebar-link.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}
.service-sidebar-arrow{opacity:.6;font-size:15px}
.post-content .service-detail-title{
  text-align:center;font-family:'BTitr',var(--font-heading);color:var(--color-primary);font-size:28px;
  font-weight:700;margin:0 0 24px;
}
.post-content .service-detail-box{
  background:var(--surface);border:2px solid #D6217A;border-radius:16px;padding:36px 40px;margin:0 0 40px;
}
.post-content .service-detail-box > p:first-child{
  text-align:justify;font-weight:700;color:#18100F;font-size:15.5px;margin:0 0 22px;
}
.post-content .service-detail-box p{font-family:'YekanBakh',var(--font-heading);color:#4B5565;line-height:2;text-align:justify}
.post-content .service-detail-box ul{list-style:none;padding:0;margin:26px 0 10px}
/* لیست‌های تک‌آیتمی (<ul><li>) نقش زیرعنوان دارن، عین سایت مرجع */
.post-content .service-detail-box ul li:only-child{
  font-family:'BTitr',var(--font-heading);color:var(--color-primary);font-size:17px;font-weight:700;
  padding-inline-start:20px;position:relative;
}
.post-content .service-detail-box ul li:only-child::before{content:"•";position:absolute;inset-inline-start:0;color:var(--color-accent)}
/* لیست‌های چندآیتمی کوتاه که آیکن دارن (مثل «اعضای تیم بازتوانی») به شکل تگ/بج نمایش داده می‌شن */
.post-content .service-detail-box ul:not(:has(li:only-child)):has(li svg){display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 26px}
.post-content .service-detail-box ul:not(:has(li:only-child)):has(li svg) li{
  display:inline-flex;align-items:center;gap:8px;background:var(--paper);border-radius:8px;padding:10px 16px;
  font-family:'YekanBakh',var(--font-heading);color:#18100F;font-size:14px;font-weight:600;
}
.post-content .service-detail-box ul:not(:has(li:only-child)):has(li svg) li svg{width:15px;height:15px;flex-shrink:0;fill:var(--color-accent)}
/* لیست‌های چندآیتمی معمولی (مثل مراحل مشاوره) به شکل بولت‌لیست ساده و خوانا نمایش داده می‌شن */
.post-content .service-detail-box ul:not(:has(li:only-child)):not(:has(li svg)) li{
  font-family:'YekanBakh',var(--font-heading);color:#4B5565;line-height:2;text-align:justify;
  padding-inline-start:20px;position:relative;margin-bottom:12px;
}
.post-content .service-detail-box ul:not(:has(li:only-child)):not(:has(li svg)) li::before{
  content:"•";position:absolute;inset-inline-start:0;color:var(--color-accent);font-weight:700;
}
.post-content .service-detail-box li p{margin:0}
/* لیست‌های شماره‌دار (<ol>، مثل «چه افرادی باید مراجعه کنند؟») */
.post-content .service-detail-box ol{list-style:none;counter-reset:sdbol;padding:0;margin:16px 0 26px}
.post-content .service-detail-box ol li{
  font-family:'YekanBakh',var(--font-heading);color:#4B5565;line-height:2;text-align:justify;
  padding-inline-start:36px;position:relative;margin-bottom:14px;counter-increment:sdbol;
}
.post-content .service-detail-box ol li::before{
  content:counter(sdbol);position:absolute;inset-inline-start:0;top:2px;width:24px;height:24px;border-radius:50%;
  background:var(--color-accent);color:#fff;font-family:'BTitr',var(--font-heading);font-size:13px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
}
.post-content .service-detail-box hr{border:none;border-top:1px solid var(--border);margin:28px 0}
.post-content .service-detail-box img{border-radius:10px;max-width:320px;width:100%;margin:20px auto;display:block}
/* عکس فرم/سند اسکن‌شده (مثل برگه راهنمای ورزش درمانی) باید بزرگ و خوانا نمایش داده بشه، نه مثل عکس‌های تزئینی کوچیک بمونه */
.post-content .service-detail-box img.doc-scan{max-width:640px;box-shadow:0 2px 10px rgba(0,0,0,.08)}
/* آیکن تیک کوچیک کنار بولت‌های چک‌لیست — نباید مثل عکس‌های تصویری بزرگ بشه */
.post-content .service-detail-box img.check-icon{
  max-width:20px;width:20px;height:20px;display:inline-block;margin:0 0 0 8px;vertical-align:-4px;border-radius:0;
}
@media (max-width:820px){.post-content .service-detail-hero{grid-template-columns:1fr}}

/* صفحه‌ی تک‌مطلب وبلاگ («دانستنی‌ها»): محتوا + نوار کناری (جستجو، دسته‌ها، نوشته‌های تازه،
   آخرین دیدگاه‌ها، بایگانی) کنار هم، و فرم/فهرست دیدگاه‌ها زیر خودِ مطلب */
.blog-single-layout{display:grid;grid-template-columns:2.2fr 1fr;gap:32px;align-items:start;margin:24px 0 60px}
/* عکس شاخص و عکس‌های میانیِ مطلب وبلاگ، توی این چیدمان دوستونه، با width:100% (قانون عمومی
   post-content) خیلی گنده و غالب می‌شن — سایزشون رو به یک اندازه‌ی معقول محدود می‌کنیم */
.blog-single-layout .post-content img{max-width:640px;width:100%}
.blog-archive-layout{display:grid;grid-template-columns:2.2fr 1fr;gap:32px;align-items:start}
.blog-sidebar{display:flex;flex-direction:column;gap:20px;position:sticky;top:20px}
.blog-widget{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:18px 20px}
.blog-widget-title{margin:0 0 14px;font-size:16px;font-weight:700;color:var(--color-primary)}
.blog-widget-empty{margin:0;color:var(--muted-text);font-size:13.5px}
.blog-widget-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.blog-widget-list > li{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13.5px;line-height:1.7}
.blog-widget-list a{color:var(--ink);text-decoration:none}
.blog-widget-list a:hover{color:var(--color-accent)}
.blog-widget-count{flex-shrink:0;background:var(--paper);color:var(--muted-text);border-radius:20px;padding:1px 9px;font-size:12px}
.blog-widget-comments-list > li{flex-direction:column;align-items:stretch;gap:2px}
.blog-widget-comment-snippet{display:block;color:var(--muted-text);font-size:12.5px}
.blog-search-form{display:flex;gap:8px}
.blog-search-form input{flex:1;border:1px solid var(--border);border-radius:8px;padding:9px 12px;font-family:inherit;font-size:13.5px}
.blog-search-form button{flex-shrink:0;width:38px;border:none;border-radius:8px;background:var(--color-accent);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.blog-widget-search{padding:14px}

/* فهرست + فرم دیدگاه‌ها */
.comments-section{margin-top:48px;border-top:1px solid var(--border);padding-top:32px}
.comments-heading{margin:0 0 20px;font-size:19px;font-weight:700;color:var(--color-primary)}
.comments-list{list-style:none;margin:0 0 32px;padding:0;display:flex;flex-direction:column;gap:18px}
.comment-item{display:flex;gap:12px;align-items:flex-start}
.comment-avatar{
  flex-shrink:0;width:38px;height:38px;border-radius:50%;background:var(--color-primary);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;
}
.comment-body{flex:1;background:var(--paper);border-radius:10px;padding:12px 16px}
.comment-meta{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.comment-author{font-weight:700;color:var(--ink);font-size:14px}
.comment-date{color:var(--muted-text);font-size:12px}
.comment-text{margin:0;color:#3A3A3A;font-size:13.5px;line-height:1.9}
.comment-form-wrap{background:var(--paper);border-radius:12px;padding:22px 24px}
.comment-form-title{margin:0 0 14px;font-size:16px;font-weight:700;color:var(--color-primary)}
.comment-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.comment-form input,.comment-form textarea{
  width:100%;border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-family:inherit;font-size:13.5px;
  background:var(--surface);
}
.comment-form textarea{min-height:110px;resize:vertical;margin-bottom:14px}
.comment-hp-field{position:absolute!important;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}
@media (max-width:820px){
  .blog-single-layout,.blog-archive-layout{grid-template-columns:1fr}
  .blog-sidebar{position:static}
  .comment-form-row{grid-template-columns:1fr}
}

/* صفحه‌ی «گالری تصاویر»: عنوان با فونت سنس عربی (Vazirmatn) و رنگ سرمه‌ای اصلی سایت، دقیقاً
   طبق عکس مرجع کارفرما، و گرید عکس‌ها به شکل ردیف‌های «موجه» (justified) — هر ردیف ارتفاع
   ثابت داره و عکس‌ها با عرض متفاوت (طبق نسبت ابعاد واقعی‌شون) کنار هم می‌چینن، بدون فاصله‌ی
   اضافه یا کِش‌اومدن؛ این افکت با فلکس‌باکس و بدون نیاز به کتابخانه‌ی جاوااسکریپت پیاده شده */
.post-content h2.gallery-title{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);
  font-size:30px;font-weight:700;margin:40px 0 28px;
}
.post-content .photo-gallery{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.post-content .photo-gallery-item{
  display:block;height:150px;margin:0;border-radius:0;overflow:hidden;
  cursor:zoom-in;
}
.post-content .photo-gallery-item img{
  display:block;height:150px;width:auto;max-width:100%;object-fit:contain;margin:0;border-radius:0;
}
@media (max-width:640px){
  .post-content .photo-gallery-item{height:100px}
  .post-content .photo-gallery-item img{height:100px}
}

/* صفحه‌ی «کارگاه‌های آموزشی مجموعه»: عنوان هر گروه/کارگاه بالای گرید عکس‌های خودش —
   راست‌چین، رنگ زرشکی طبق عکس مرجع کارفرما، فونت سنس عربی طبق درخواست */
.post-content h3.workshop-group-title{
  text-align:right;font-family:'Vazirmatn',var(--font-heading);color:#A6472F;
  font-size:19px;font-weight:700;margin:36px 0 14px;
}
.post-content h3.workshop-group-title:first-of-type{margin-top:0}

/* لایت‌باکس ساده‌ی گالری (بدون وابستگی به کتابخانه‌ی خارجی) — با کلیک روی هر عکس، نسخه‌ی
   بزرگ‌شده‌ش وسط صفحه با پس‌زمینه‌ی تیره باز می‌شه */
.gallery-lightbox{
  position:fixed;inset:0;z-index:9999;background:rgba(2,6,23,.92);display:flex;align-items:center;
  justify-content:center;padding:24px;cursor:zoom-out;
}
.gallery-lightbox[hidden]{display:none}
.gallery-lightbox img{max-width:92vw;max-height:92vh;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.gallery-lightbox-close{
  position:absolute;top:20px;inset-inline-end:24px;width:40px;height:40px;border-radius:50%;border:none;
  background:rgba(255,255,255,.15);color:#fff;font-size:22px;line-height:1;cursor:pointer;
}

/* صفحه‌ی «گالری ویدئو»: عنوان با فونت سنس عربی (Vazirmatn) و رنگ سرمه‌ای، عیناً هم‌سبک با
   عنوان گالری تصاویر؛ پخش‌کننده‌ی اصلی + لیست‌پخش کنار هم، با متن خوانا و مشکی (نه رنگ کم‌رنگ
   پیش‌فرض قالب وردپرسی قدیم) */
.post-content h2.video-gallery-title{
  text-align:center;font-family:'Vazirmatn',var(--font-heading);color:var(--color-primary);
  font-size:30px;font-weight:700;margin:40px 0 28px;
}
.video-gallery{display:grid;grid-template-columns:2.1fr 1fr;gap:20px;align-items:start}
.video-gallery-player{
  position:relative;width:100%;aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden;
  box-shadow:0 10px 30px rgba(2,6,23,.15);
}
.video-gallery-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-gallery-player-empty{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#9aa4b2;
  font-family:'YekanBakh',var(--font-heading);font-size:14px;
}
.video-gallery-playlist{
  background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;
  max-height:420px;display:flex;flex-direction:column;
}
.video-gallery-playlist-head{
  display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border);
  font-family:'YekanBakh',var(--font-heading);font-weight:700;color:var(--color-primary);font-size:15px;
}
.video-gallery-count{color:var(--muted-text);font-weight:400;font-size:13px}
.video-gallery-playlist-list{list-style:none;margin:0;padding:8px;overflow-y:auto;flex:1}
.video-gallery-playlist-item{
  display:flex;align-items:center;gap:10px;padding:9px 8px;border-radius:8px;cursor:pointer;
  transition:background var(--duration) var(--ease);
}
.video-gallery-playlist-item:hover{background:var(--paper)}
.video-gallery-playlist-item.active{background:var(--muted)}
.video-gallery-playlist-item img{width:64px;height:42px;object-fit:cover;border-radius:6px;flex-shrink:0;margin:0}
.vgi-body{flex:1;min-width:0}
.vgi-body h4{margin:0 0 3px;font-size:14.5px;font-weight:700;color:#18100F;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vgi-duration{font-size:13px;color:#18100F;opacity:.65}
.vgi-play{flex-shrink:0;color:var(--color-accent);font-size:13px}
@media (max-width:820px){.video-gallery{grid-template-columns:1fr}.video-gallery-playlist{max-height:none}}
