/*
Theme Name: dmhouse-theme-narmpa
Description: قالب مستقل، بهینه و اختصاصی
Author: DM House
Author URI: https://dmhouse.market
Version: 1.39.0
Text Domain: dmhouse-theme
*/

/* --- Base & Reset --- */
body {
    font-family: "Yekan Bakh", "Dana", "IranYekan", sans-serif;
    overflow-x: hidden;
    direction: rtl;
    background-color: #f9f9f9;
    margin: 0;
    padding: 0;
}

ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* تصاویری که width/height واقعی گرفتند (ضد جابه‌جایی صفحه) با CSS عرض‌دار کش نیایند.
   :where = وزن صفر، پس هر قاعدهٔ کلاس‌دار ارتفاع خودش را حفظ می‌کند. */
:where(img[height]) { height: auto; }

/* --- Utility Classes (بدون نیاز به فریم‌ورک‌های جانبی) --- */
.d-none { display: none !important; }

/* فقط برای صفحه‌خوان و موتور جستجو (تیتر h1 صفحاتی که طراحی‌شان تیتر دیداری ندارد).
   clip در جای خودش، نه جابه‌جایی منفی فیزیکی (در RTL اسکرول افقی می‌سازد). */
.dm-sr-only {
    position: absolute !important; width: 1px !important; height: 1px !important;
    padding: 0 !important; margin: -1px !important; overflow: hidden !important;
    clip-path: inset(50%) !important; white-space: nowrap !important; border: 0 !important;
}

/* تیتر برگه‌های معمولی (page.php) — قبلاً هیچ عنوانی چاپ نمی‌شد */
.dm-page-title {
    max-width: 1500px; margin: 28px auto 18px; padding-inline: 16px; box-sizing: border-box;
    font-size: 24px; font-weight: 800; line-height: 1.5; color: #1a1a1a;
}

/* لینک «پرش به محتوا» — اولین المان قابل فوکوس هر صفحه؛ فقط با Tab دیده می‌شود */
.dm-skip-link:not(:focus) {
    position: absolute !important; width: 1px !important; height: 1px !important;
    overflow: hidden !important; clip-path: inset(50%) !important; white-space: nowrap !important;
}
.dm-skip-link:focus {
    position: fixed; inset-inline-start: 12px; top: 12px; z-index: 100000;
    padding: 10px 16px; border-radius: 8px; background: #fff; color: #1a1a1a;
    box-shadow: 0 4px 16px rgba(0,0,0,.18); font-weight: 700; text-decoration: none;
}
.px-4 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }

@media (min-width: 992px) {
    .d-lg-none { display: none !important; }
    .d-lg-block { display: block !important; }
    .d-lg-flex { display: flex !important; }
    .px-lg-0 { padding-left: 0 !important; padding-right: 0 !important; }
}