/* ==========================================================================
   قالب «نشریه» (Editorial) — یک قالب تجاریِ محتوامحور برای هر صنفی.
   --------------------------------------------------------------------------
   هویت این قالب از «تایپوگرافی» می‌آید، نه از تزئین:
     • کنتراست شدید وزنی وزیرمتن (۲۰۰ بسیار نازک کنار ۹۰۰ بسیار سیاه)
     • یک مقیاس تایپوگرافیِ واقعی (چیزی که قالب‌های قبلی اصلاً نداشتند)
     • امضای طراحی: «ریل کیکر» — نوار عمودی رنگ برند + برچسب ریزِ سیاه + خط مو
   رنگ برند (--pub-primary) پویاست، پس فقط برای عناصر غیرمتنی استفاده می‌شود
   تا با هر رنگی که مدیر انتخاب کند، کنتراست متن سالم بماند.
   یک فایل، هر دو جهت: با خواص منطقی CSS، فارسی (RTL) و انگلیسی (LTR) یکی‌اند.
   ========================================================================== */

.public-theme-editorial {
    /* --- رنگ‌ها همه از تنظیمات پنل مشتق می‌شوند ---
       --pub-dark  → رنگ مرکب/تیره‌ی سایت (پابرگ، تیترها، هیرو)
       --pub-primary → رنگ تأکید (ریل، لبه‌ها، CTA)
       با color-mix از همین دو رنگ، طیفِ خنثی ساخته می‌شود؛ پس تغییر رنگ در پنل
       واقعاً کلِ قالب را عوض می‌کند و هیچ رنگِ هاردکدی باقی نمی‌ماند. */
    --ed-ink: var(--pub-dark, #14161a);
    --ed-ink-soft: color-mix(in srgb, var(--pub-dark, #14161a) 66%, #ffffff);
    --ed-ink-faint: color-mix(in srgb, var(--pub-dark, #14161a) 45%, #ffffff);
    --ed-surface: #ffffff;
    --ed-canvas: color-mix(in srgb, var(--pub-dark, #14161a) 4%, #ffffff);
    --ed-rule: color-mix(in srgb, var(--pub-dark, #14161a) 14%, #ffffff);
    --ed-accent: var(--pub-primary, #f6d014);
    --ed-on-accent: #ffffff;

    /* --- مقیاس تایپوگرافی (قلب این قالب) --- */
    --ed-display: clamp(2.35rem, 5.4vw, 4.25rem);
    --ed-h1: clamp(1.85rem, 3.5vw, 2.7rem);
    --ed-h2: clamp(1.4rem, 2.3vw, 1.95rem);
    --ed-h3: 1.1875rem;
    --ed-body: 1.0625rem;
    --ed-small: 0.875rem;
    --ed-eyebrow: 0.6875rem;

    /* --- ریتم عمودی و افقی --- */
    --ed-section-y: clamp(3.25rem, 7.5vw, 6.5rem);
    --ed-gutter: clamp(1.15rem, 4vw, 2.75rem);
    --ed-measure: 68ch;
    --ed-radius: 3px;
    --ed-shadow: 0 1px 2px rgba(20, 22, 26, .04), 0 8px 24px -12px rgba(20, 22, 26, .10);

    background: var(--ed-canvas);
    color: var(--ed-ink);
    font-family: Vazirmatn, Tahoma, system-ui, sans-serif;
    font-size: var(--ed-body);
    line-height: 1.9;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

/* انگلیسی: همان مقیاس، فقط ارتفاع خط کمی جمع‌تر (لاتین به فضای کمتری نیاز دارد) */
.public-theme-editorial:lang(en) { line-height: 1.75; }

/* ---------- تایپوگرافی پایه ---------- */
.public-theme-editorial h1,
.public-theme-editorial h2,
.public-theme-editorial h3,
.public-theme-editorial h4,
.public-theme-editorial h5,
.public-theme-editorial h6,
.public-theme-editorial .heading-decorated,
.public-theme-editorial .en-section-title,
.public-theme-editorial .post-classic-title,
.public-theme-editorial .prod-title {
    /* قالب پایه‌ی Creek روی تیترها font-family خودش را می‌گذارد؛ صریحاً بازنویسی می‌شود
       وگرنه کنتراست وزنیِ وزیرمتن (که هویت این قالب است) اصلاً دیده نمی‌شود. */
    font-family: Vazirmatn, Tahoma, system-ui, sans-serif;
    color: var(--ed-ink);
    line-height: 1.18;
    letter-spacing: -0.015em;
    margin-block: 0 0.6em;
    text-transform: none;
}

/* تیترهای بزرگ عمداً نازک‌اند — این «صدای» قالب است */
.public-theme-editorial h1 { font-size: var(--ed-h1); font-weight: 300; }
.public-theme-editorial h2 { font-size: var(--ed-h2); font-weight: 400; }
.public-theme-editorial h3 { font-size: var(--ed-h3); font-weight: 600; letter-spacing: -0.005em; }
.public-theme-editorial h4 { font-size: 1.0625rem; font-weight: 600; letter-spacing: 0; }
.public-theme-editorial h5,
.public-theme-editorial h6 { font-size: var(--ed-small); font-weight: 700; letter-spacing: 0; }

.public-theme-editorial p { margin-block: 0 1.15em; }
.public-theme-editorial .rd-navbar-top-panel p { margin-block: 0; }
.public-theme-editorial p,
.public-theme-editorial li { color: var(--ed-ink-soft); }

/* بدنه، دکمه‌ها و فرم‌ها هم صریحاً وزیرمتن — Creek روی این‌ها هم فونت خودش را می‌گذارد */
.public-theme-editorial p,
.public-theme-editorial li,
.public-theme-editorial a,
.public-theme-editorial span,
.public-theme-editorial div,
.public-theme-editorial td,
.public-theme-editorial th,
.public-theme-editorial label,
.public-theme-editorial input,
.public-theme-editorial textarea,
.public-theme-editorial select,
.public-theme-editorial button {
    font-family: Vazirmatn, Tahoma, system-ui, sans-serif;
}
/* آیکون‌ها مستثنا — وگرنه گلیف‌هایشان می‌شکند */
.public-theme-editorial .fa,
.public-theme-editorial [class^="fa-"],
.public-theme-editorial [class*=" fa-"],
.public-theme-editorial [class^="linear-icon-"],
.public-theme-editorial [class*=" linear-icon-"],
.public-theme-editorial [class^="mdi-"],
.public-theme-editorial [class*=" mdi-"],
.public-theme-editorial .icon { font-family: inherit; }
.public-theme-editorial .fa::before,
.public-theme-editorial [class^="fa-"]::before,
.public-theme-editorial [class*=" fa-"]::before { font-family: FontAwesome; }
.public-theme-editorial [class^="linear-icon-"]::before,
.public-theme-editorial [class*=" linear-icon-"]::before { font-family: Linearicons; }
.public-theme-editorial [class^="mdi-"]::before,
.public-theme-editorial [class*=" mdi-"]::before { font-family: "Material Design Icons"; }

/* اندازه‌ی خط خوانا برای متن‌های طولانی */
.public-theme-editorial .rich-body,
.public-theme-editorial .post-classic-body,
.public-theme-editorial .lp-article { max-inline-size: var(--ed-measure); }
.public-theme-editorial .rich-body p { font-size: var(--ed-body); }

.public-theme-editorial a { color: var(--ed-ink); text-decoration: none; }
.public-theme-editorial .rich-body a,
.public-theme-editorial .lp-article a {
    color: var(--ed-ink);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.22em;
    text-decoration-color: var(--ed-accent);
}
.public-theme-editorial .rich-body a:hover { text-decoration-thickness: 2px; }

/* ==========================================================================
   امضای طراحی — «ریل کیکر»
   هر تیتر بخش: نوار عمودیِ رنگ برند + برچسب ریزِ فوق‌سیاه با فاصله‌ی حروف باز.
   همین یک الگو، تکرارشونده، اثر انگشتِ قالب است.
   ========================================================================== */
.public-theme-editorial .heading-decorated,
.public-theme-editorial .en-section-title {
    position: relative;
    font-size: var(--ed-h2);
    font-weight: 400;
    letter-spacing: -0.015em;
    padding-inline-start: 1.15rem;
    margin-block-end: 1.75rem;
    border-block-end: 0;
}
/* نوار عمودیِ رنگ برند — با خاصیت منطقی، در RTL و LTR سمت درست می‌نشیند */
.public-theme-editorial .heading-decorated::before,
.public-theme-editorial .en-section-title::before {
    content: "";
    position: absolute;
    inset-inline-start: 0;
    inset-block-start: 0.24em;
    inline-size: 4px;
    block-size: 1.05em;
    background: var(--ed-accent);
    border-radius: 1px;
}
/* قالب پیش‌فرض Creek یک ::after تزئینی دارد؛ اینجا لازم نیست */
.public-theme-editorial .heading-decorated::after { content: none; }

/* برچسب ریزِ بالای بخش‌ها (eyebrow) */
.public-theme-editorial .ed-eyebrow,
.public-theme-editorial .caption {
    display: block;
    font-size: var(--ed-eyebrow);
    font-weight: 800;
    letter-spacing: 0.18em;
    line-height: 1.4;
    color: var(--ed-ink-faint);
    margin-block-end: 0.7rem;
}

/* ---------- بخش‌ها و ظرف ---------- */
.public-theme-editorial .section,
.public-theme-editorial .section-md,
.public-theme-editorial .section-lg,
.public-theme-editorial .en-section { padding-block: var(--ed-section-y); }
.public-theme-editorial .container,
.public-theme-editorial .en-container {
    max-inline-size: 1180px;
    padding-inline: var(--ed-gutter);
    margin-inline: auto;
}
/* بخش‌های یک‌درمیان: تفاوتِ آرام بین بوم و سطح — نه رنگِ پررنگ */
.public-theme-editorial .bg-default,
.public-theme-editorial .en-section { background: var(--ed-surface); }
.public-theme-editorial .bg-gray-lighter,
.public-theme-editorial .bg-gray-light,
.public-theme-editorial .en-section--alt { background: var(--ed-canvas); }
/* مرزِ بخش‌ها با خط مو مشخص می‌شود، نه با پرش رنگی */
.public-theme-editorial .section-md + .section-md,
.public-theme-editorial .en-section + .en-section { border-block-start: 1px solid var(--ed-rule); }

/* ==========================================================================
   هیرو — تیتر بسیار درشت و نازک، با کیکر بالای آن
   ========================================================================== */
/* هیروها تصویرِ آپلودیِ مدیر را دارند و متنشان با استایل درون‌خطی سفید است.
   پس به‌جای سطح روشن، «پرده‌ی تیره» می‌گذاریم: تیتر سفیدِ بسیار درشت و نازک
   روی تصویر — هم خوانا روی هر تصویری، هم گران‌تر و تجاری‌تر. */
.public-theme-editorial .page-hero,
.public-theme-editorial .home-hero,
.public-theme-editorial .en-hero {
    position: relative;
    isolation: isolate;
    background-color: var(--ed-ink);
    background-size: cover;
    background-position: center;
    border-block-end: 0;
    padding-block: clamp(4rem, 10.5vw, 8.5rem);
}
/* پرده‌ی تیره‌تر و از رنگِ خودِ سایت — تا متن روی هر عکسی خوانا باشد */
.public-theme-editorial .page-hero::before,
.public-theme-editorial .home-hero::before,
.public-theme-editorial .en-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background:
        linear-gradient(180deg,
            color-mix(in srgb, var(--pub-dark, #14161a) 72%, transparent) 0%,
            color-mix(in srgb, var(--pub-dark, #14161a) 88%, transparent) 100%);
}
.public-theme-editorial .page-hero > *,
.public-theme-editorial .home-hero > *,
.public-theme-editorial .en-hero > *,
.public-theme-editorial .page-hero .parallax-content,
.public-theme-editorial .home-hero .parallax-content { position: relative; z-index: 1; }

/* public-shell.css روی هیرو padding را با !important صفر می‌کند و به min-height تکیه دارد؛
   پس به‌جای جنگیدن با آن، همان min-height را سخاوتمندتر می‌کنیم. */
.public-theme-editorial .page-hero,
.public-theme-editorial .page-hero .parallax-content,
.public-theme-editorial .page-hero .parallax-header {
    min-block-size: clamp(280px, 36vh, 420px) !important;
}

/* تیتر هیرو در صفحات داخلی h2 است، نه h1 — هر دو باید سفید و درشت باشند،
   وگرنه متنِ تیره روی پرده‌ی تیره نامرئی می‌شود. */
/* روی عکس، وزنِ نازک ناخوانا می‌شود؛ اینجا وزنِ متوسط + سایه‌ی ملایم استفاده می‌شود.
   کنتراست وزنیِ قالب در تیترهای بخش‌ها (روی سطح روشن) دیده می‌شود، نه روی عکس. */
.public-theme-editorial .page-hero h1,
.public-theme-editorial .page-hero h2,
.public-theme-editorial .home-hero h1,
.public-theme-editorial .home-hero h2,
.public-theme-editorial .en-hero h1 {
    font-size: var(--ed-display);
    font-weight: 500;
    letter-spacing: -0.02em;
    line-height: 1.14;
    color: #fff;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .35), 0 12px 40px rgba(0, 0, 0, .28);
    max-inline-size: 24ch;
}
/* هر متنِ دیگری هم داخل هیرو روشن بماند */
.public-theme-editorial .page-hero h3,
.public-theme-editorial .page-hero h4,
.public-theme-editorial .page-hero .heading-6,
.public-theme-editorial .page-hero a,
.public-theme-editorial .home-hero .heading-6 { color: rgba(255, 255, 255, .88); }
/* داخل هیرو، ریل کیکر لازم نیست (تیتر وسط‌چین است) */
.public-theme-editorial .page-hero .heading-decorated,
.public-theme-editorial .home-hero .heading-decorated { padding-inline-start: 0; }
.public-theme-editorial .page-hero .heading-decorated::before,
.public-theme-editorial .home-hero .heading-decorated::before { content: none; }

.public-theme-editorial .page-hero p,
.public-theme-editorial .home-hero p,
.public-theme-editorial .en-hero p {
    font-size: 1.125rem;
    font-weight: 300;
    color: rgba(255, 255, 255, .84);
    max-inline-size: 58ch;
    margin-inline: auto;
}
/* خطِ نازکِ رنگ برند زیر هیرو — امضای قالب، این‌بار به‌صورت لبه */
.public-theme-editorial .page-hero::after,
.public-theme-editorial .home-hero::after,
.public-theme-editorial .en-hero::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    inset-block-end: 0;
    block-size: 3px;
    background: var(--ed-accent);
    z-index: 1;
}

/* ---------- ناوبری ---------- */
.public-theme-editorial .rd-navbar,
.public-theme-editorial .en-nav {
    background: var(--ed-surface);
    border-block-end: 1px solid var(--ed-rule);
    box-shadow: none;
}
.public-theme-editorial .rd-navbar-brand,
.public-theme-editorial .en-brand {
    font-weight: 800;
    font-size: 1.0625rem;
    letter-spacing: -0.01em;
    color: var(--ed-ink);
}
.public-theme-editorial .rd-navbar-nav > li > a,
.public-theme-editorial .en-nav a {
    font-size: var(--ed-small);
    font-weight: 500;
    color: var(--ed-ink-soft);
    letter-spacing: 0;
    padding-block: 0.55rem;
    position: relative;
}
.public-theme-editorial .rd-navbar-nav > li > a:hover,
.public-theme-editorial .rd-navbar-nav > li.active > a,
.public-theme-editorial .en-nav a:hover { color: var(--ed-ink); }
/* زیرخطِ نازکِ رنگ برند برای آیتم فعال */
.public-theme-editorial .rd-navbar-nav > li.active > a::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    inset-block-end: 0;
    block-size: 2px;
    background: var(--ed-accent);
}

/* ==========================================================================
   کارت‌ها — سطحِ آرام، خط مو، بدون سایه‌ی سنگین
   ========================================================================== */
.public-theme-editorial .public-card,
.public-theme-editorial .prod-card,
.public-theme-editorial .svc-card,
.public-theme-editorial .post-classic,
.public-theme-editorial .post-minimal,
.public-theme-editorial .en-grid > * {
    background: var(--ed-surface);
    border: 1px solid var(--ed-rule);
    border-radius: var(--ed-radius);
    box-shadow: none;
    overflow: hidden;
    transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.public-theme-editorial .public-card:hover,
.public-theme-editorial .prod-card:hover,
.public-theme-editorial .svc-card:hover,
.public-theme-editorial .post-classic:hover,
.public-theme-editorial .post-minimal:hover,
.public-theme-editorial .en-grid > *:hover {
    border-color: var(--ed-ink);
    transform: translateY(-2px);
    box-shadow: var(--ed-shadow);
}
.public-theme-editorial .prod-card .prod-title,
.public-theme-editorial .post-classic-title {
    font-size: var(--ed-h3);
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: -0.005em;
    color: var(--ed-ink);
}
.public-theme-editorial .post-meta,
.public-theme-editorial .prod-card .text-muted {
    font-size: var(--ed-eyebrow);
    font-weight: 700;
    letter-spacing: 0.1em;
    color: var(--ed-ink-faint);
}
.public-theme-editorial .cover-img,
.public-theme-editorial .prod-cover,
.public-theme-editorial .post-cover { border-radius: 0; }

/* قیمت — عدد درشت‌تر و مطمئن‌تر */
.public-theme-editorial .prod-price,
.public-theme-editorial .pd-price {
    font-size: 1.25rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    color: var(--ed-ink);
    font-variant-numeric: tabular-nums;
}

/* ==========================================================================
   دکمه‌ها — تخت، دقیق، بدون گرادیان
   ========================================================================== */
.public-theme-editorial .button,
.public-theme-editorial .btn,
.public-theme-editorial .en-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    font-family: inherit;
    font-size: var(--ed-small);
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.2;
    padding: 0.75rem 1.5rem;
    border-radius: var(--ed-radius);
    border: 1px solid transparent;
    text-transform: none;
    box-shadow: none;
    transition: background-color .16s ease, color .16s ease, border-color .16s ease;
}
.public-theme-editorial .button-primary,
.public-theme-editorial .btn-primary,
.public-theme-editorial .en-button {
    background: var(--ed-ink);
    color: #fff;
    border-color: var(--ed-ink);
}
.public-theme-editorial .button-primary:hover,
.public-theme-editorial .btn-primary:hover,
.public-theme-editorial .en-button:hover { background: #000; border-color: #000; color: #fff; }

/* دکمه‌ی ثانویه: خط مو */
.public-theme-editorial .button-default-outline,
.public-theme-editorial .button-primary-outline,
.public-theme-editorial .btn-outline-primary,
.public-theme-editorial .btn-light {
    background: transparent;
    color: var(--ed-ink);
    border-color: var(--ed-rule);
}
.public-theme-editorial .button-default-outline:hover,
.public-theme-editorial .button-primary-outline:hover,
.public-theme-editorial .btn-outline-primary:hover,
.public-theme-editorial .btn-light:hover { border-color: var(--ed-ink); background: transparent; }

/* تنها جایی که رنگ برند پر می‌شود — یک CTA در هر صفحه */
.public-theme-editorial .ed-cta-accent,
.public-theme-editorial .home-hero__cta .button-primary {
    background: var(--ed-accent);
    color: var(--ed-on-accent);
    border-color: var(--ed-accent);
}
.public-theme-editorial .ed-cta-accent:hover,
.public-theme-editorial .home-hero__cta .button-primary:hover {
    background: var(--ed-accent);
    color: var(--ed-on-accent);
    filter: brightness(.94);
}

/* ---------- فرم‌ها ---------- */
.public-theme-editorial .form-control,
.public-theme-editorial .form-select {
    border: 1px solid var(--ed-rule);
    border-radius: var(--ed-radius);
    padding: 0.7rem 0.9rem;
    font-size: var(--ed-small);
    background: var(--ed-surface);
    color: var(--ed-ink);
    box-shadow: none;
}
.public-theme-editorial .form-control:focus,
.public-theme-editorial .form-select:focus {
    border-color: var(--ed-ink);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--ed-accent) 30%, transparent);
    outline: none;
}
.public-theme-editorial .form-label {
    font-size: var(--ed-eyebrow);
    font-weight: 800;
    letter-spacing: 0.1em;
    color: var(--ed-ink-faint);
    margin-block-end: 0.45rem;
}

/* ---------- پرسش و پاسخ ---------- */
.public-theme-editorial .home-faq-item {
    border: 0;
    border-block-end: 1px solid var(--ed-rule);
    border-radius: 0;
    background: transparent;
    padding-block: 0.35rem;
}
.public-theme-editorial .home-faq-item summary,
.public-theme-editorial .home-faq-item .home-faq-q {
    font-weight: 600;
    font-size: 1.0625rem;
    color: var(--ed-ink);
    padding-block: 0.9rem;
}

/* ---------- پابرگ ---------- */
.public-theme-editorial .footer-corporate,
.public-theme-editorial .en-footer {
    background: var(--ed-ink);
    color: color-mix(in srgb, var(--pub-dark, #14161a) 18%, #ffffff);
    border-block-start: 3px solid var(--ed-accent);
    padding-block: clamp(2.5rem, 6vw, 4rem);
}
.public-theme-editorial .footer-corporate a,
.public-theme-editorial .en-footer a { color: color-mix(in srgb, var(--pub-dark, #14161a) 8%, #ffffff); }
.public-theme-editorial .footer-corporate a:hover { color: #fff; text-decoration: underline; }
.public-theme-editorial .footer-corporate h4,
.public-theme-editorial .footer-corporate h5,
.public-theme-editorial .site-foot-h,
.public-theme-editorial .en-footer h4 {
    color: #fff;
    font-size: var(--ed-eyebrow);
    font-weight: 800;
    letter-spacing: 0.18em;
    margin-block-end: 1rem;
}
.public-theme-editorial .site-foot-list a { color: color-mix(in srgb, var(--pub-dark, #14161a) 18%, #ffffff); font-size: var(--ed-small); }
.public-theme-editorial .site-foot-list a:hover { color: #fff; }
.public-theme-editorial .site-foot-brand p { color: color-mix(in srgb, var(--pub-dark, #14161a) 28%, #ffffff); }
/* پابرگ نباید رنگِ تیره‌ی قالب پایه را نگه دارد */
.public-theme-editorial .bg-gray-darker { background: var(--ed-ink); }

/* ---------- اسلایدشوی صفحه‌ی نخست ---------- */
.public-theme-editorial .home-swiper { position: relative; isolation: isolate; }
.public-theme-editorial .home-swiper::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    inset-block-end: 0;
    block-size: 3px;
    background: var(--ed-accent);
    z-index: 3;
}
.public-theme-editorial .home-swiper h1,
.public-theme-editorial .home-swiper .swiper-slide h1 {
    font-size: var(--ed-display);
    font-weight: 200;
    letter-spacing: -0.03em;
    line-height: 1.06;
}

/* ---------- جدول‌ها ---------- */
.public-theme-editorial table { inline-size: 100%; border-collapse: collapse; }
.public-theme-editorial th {
    font-size: var(--ed-eyebrow);
    font-weight: 800;
    letter-spacing: 0.1em;
    color: var(--ed-ink-faint);
    text-align: start;
    padding: 0.75rem 0.5rem;
    border-block-end: 1px solid var(--ed-ink);
}
.public-theme-editorial td {
    padding: 0.75rem 0.5rem;
    border-block-end: 1px solid var(--ed-rule);
    font-size: var(--ed-small);
}

/* ==========================================================================
   کف کیفیت: واکنش‌گرا، فوکوس کیبورد، احترام به کاهش حرکت
   ========================================================================== */
.public-theme-editorial :focus-visible {
    outline: 2px solid var(--ed-ink);
    outline-offset: 2px;
    border-radius: 2px;
}
/* یک قاعده‌ی پایه‌ی کم‌اولویت؛ ارتفاع‌های هدفمند کارت‌ها
   (sec-cover / prod-cover / تصاویر گالری) نباید به auto برگردند. */
:where(.public-theme-editorial img) { max-inline-size: 100%; block-size: auto; }

@media (max-width: 767.98px) {
    .public-theme-editorial { --ed-measure: 100%; }
    .public-theme-editorial .page-hero h1,
    .public-theme-editorial .home-hero h1,
    .public-theme-editorial .en-hero h1 { max-inline-size: 100%; }
    .public-theme-editorial .button,
    .public-theme-editorial .btn { padding: 0.7rem 1.15rem; }
}

/* نمایان‌شدن ملایم تیتر بخش‌ها هنگام اسکرول — تنها حرکتِ قالب */
@media (prefers-reduced-motion: no-preference) {
    .public-theme-editorial .heading-decorated,
    .public-theme-editorial .en-section-title { animation: ed-rise .5s ease both; }
    @keyframes ed-rise {
        from { opacity: 0; transform: translateY(6px); }
        to   { opacity: 1; transform: none; }
    }
}
@media (prefers-reduced-motion: reduce) {
    .public-theme-editorial *,
    .public-theme-editorial *::before,
    .public-theme-editorial *::after {
        animation-duration: .001ms !important;
        transition-duration: .001ms !important;
    }
}
