/* استایل هدر (hd-)، فوتر (ft-)، نوار تبلیغ (pb-)، باکس سیگنال (sb-) و هشدار ریسک (rk-) به سبک fxnx.
   نسخهٔ قبلی (تیره) در F:\claude\_tmp\moosavi-site-backup-20261022-pre-fxnx */

/* ===== _header.html ===== */
    .hd {
        --hd-h: 78px;
        --ink: #0b1d33;
        --body: #2a3d55;
        --muted: #5a6b82;
        --line: rgba(11, 29, 51, .09);
        --night: #0b1d33;
        --glow: #6baed6;
        --acc: #08519c;

        position: sticky; top: 0; z-index: 30;
        width: 100%;
        color: var(--ink);
    }
    html { scroll-padding-top: 90px; }
    html.hd-lock { overflow: hidden; }
    .hd *, .hd *::before, .hd *::after { box-sizing: border-box; }
    .hd svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
    .hd a:focus-visible, .hd button:focus-visible { outline: 2px solid var(--acc); outline-offset: 3px; }

    /* پس‌زمینهٔ شیشه‌ای روشن (بلور روی خود هدر نیست تا منوی کشویی fixed نسبت به صفحه باز شود) */
    .hd-glass {
        position: absolute; inset: 0; z-index: -1;
        background: rgba(235, 241, 248, .82);
        -webkit-backdrop-filter: blur(16px) saturate(150%);
        backdrop-filter: blur(16px) saturate(150%);
        border-bottom: 1px solid transparent;
        transition: background-color .3s ease, box-shadow .3s ease, border-color .3s ease;
    }
    .hd.is-scrolled .hd-glass { background: rgba(235, 241, 248, .94); border-bottom-color: var(--line); box-shadow: 0 14px 30px -24px rgba(11, 29, 51, .35); }
    .hd-bar { position: relative; display: flex; align-items: center; gap: 1.2rem; max-width: 1252px; height: var(--hd-h); margin: 0 auto; padding: 0 16px; }
    .hd-start { display: flex; align-items: center; gap: .7rem; flex: none; }

    /* لوگو: نشان پله‌ها (رنگ‌ها داخل خود SVG) */
    .hd-logo { display: inline-flex; align-items: center; gap: .6rem; color: inherit; text-decoration: none; }
    .hd-orb { position: relative; flex: none; display: grid; place-items: center; width: 40px; height: 40px; }
    .hd .hd-orb svg { width: 40px; height: 40px; stroke: none; transition: transform .4s ease; }
    .hd-logo:hover .hd-orb svg { transform: scale(1.08); }
    .hd-logo-txt { display: flex; flex-direction: column; line-height: 1.2; }
    .hd-logo-txt b { font-size: 1.28rem; font-weight: 900; color: var(--ink); }
    .hd-logo-txt small { font-size: .74rem; font-weight: 800; color: var(--acc); letter-spacing: .02em; }

    /* منوی اصلی دسکتاپ */
    .hd-nav { flex: 1; min-width: 0; display: flex; justify-content: center; }
    .hd-menu { display: flex; align-items: center; gap: .1rem; margin: 0; padding: 0; list-style: none; }
    .hd-menu > li { position: relative; }
    .hd-link {
        position: relative; display: inline-flex; align-items: center; gap: .3rem;
        height: 40px; padding: 0 .62rem; border-radius: 999px; border: 0;
        background: none; color: var(--ink); font: inherit; font-size: .88rem; font-weight: 600;
        white-space: nowrap; text-decoration: none; cursor: pointer;
        transition: color .2s ease, background-color .2s ease, transform .35s cubic-bezier(.2, .8, .2, 1);
    }
    .hd-link svg { width: 13px; height: 13px; stroke-width: 2.2; color: var(--muted); transition: transform .3s ease; }
    .hd-link:hover, .hd-has-drop:hover > .hd-link, .hd-has-drop:focus-within > .hd-link { background: rgba(11, 29, 51, .06); }
    .hd-has-drop:hover > .hd-link svg, .hd-has-drop:focus-within > .hd-link svg { transform: rotate(180deg); }
    .hd-link.is-current { color: var(--acc); font-weight: 800; }
    .hd-link.is-current::after {
        content: ""; position: absolute; left: 50%; bottom: 3px;
        width: 5px; height: 5px; margin-left: -2.5px; border-radius: 50%;
        background: var(--acc);
    }

    /* زیرمنو: کارت سفید */
    .hd-drop {
        position: absolute; top: 100%; right: 50%; z-index: 50;
        width: 360px; padding-top: 12px;
        opacity: 0; visibility: hidden;
        transform: translateX(50%) translateY(-6px);
        transition: opacity .2s ease, transform .3s cubic-bezier(.2, .8, .2, 1), visibility 0s linear .3s;
    }
    .hd-has-drop:hover > .hd-drop, .hd-has-drop:focus-within > .hd-drop {
        opacity: 1; visibility: visible; transform: translateX(50%); transition-delay: 0s;
    }
    .hd-panel {
        position: relative; padding: .5rem; border-radius: 22px;
        background: #fff;
        border: 1px solid rgba(11, 29, 51, .07);
        box-shadow: 0 2px 4px rgba(11, 29, 51, .05), 0 30px 60px -24px rgba(11, 29, 51, .35);
    }
    .hd-list { display: grid; gap: .15rem; margin: 0; padding: 0; list-style: none; }

    /* آیتم زیرمنو: کاشی زغالی با آیکن طلایی (هم‌خانواده لوگو)؛ هاور/صفحه فعلی = کاشی طلایی */
    .hd-item {
        display: flex; align-items: center; gap: .8rem; width: 100%;
        padding: .55rem .6rem; border-radius: 16px; border: 0;
        background: none; color: var(--body); font: inherit; text-align: right; text-decoration: none; cursor: pointer;
        transition: background-color .2s ease, transform .35s cubic-bezier(.2, .8, .2, 1);
    }
    .hd-item:hover, .hd-item:focus-visible { background: #eff3ff; }
    /* زوم نرم گزینه زیر موس (فقط دستگاه‌های موس‌دار) */
    @media (hover: hover) and (prefers-reduced-motion: no-preference) {
        .hd-link:hover, .hd-has-drop:hover > .hd-link, .hd-has-drop:focus-within > .hd-link { transform: scale(1.08); }
        .hd-item:hover, .hd-item:focus-visible { transform: scale(1.03); }
    }
    .hd-item.is-current { background: #dee9f8; }
    .hd-ico {
        flex: none; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 13px;
        color: var(--glow);
        background: linear-gradient(160deg, #16345e, #0b1d33);
        box-shadow: 0 6px 14px -9px rgba(11, 29, 51, .8), inset 0 1px 0 rgba(255, 255, 255, .12);
        transition: transform .3s cubic-bezier(.2, .8, .2, 1), color .25s ease, background .25s ease;
    }
    .hd-ico svg { width: 21px; height: 21px; stroke-width: 1.7; }
    .hd-item:hover .hd-ico, .hd-item:focus-visible .hd-ico { transform: scale(1.06); }
    .hd-item:hover .hd-ico, .hd-item:focus-visible .hd-ico, .hd-item.is-current .hd-ico {
        color: #0b1d33; background: linear-gradient(160deg, #89bedc, #3182bd);
    }
    .hd-txt { display: flex; flex-direction: column; gap: .1rem; flex: 1; min-width: 0; }
    .hd-txt b { font-size: .92rem; font-weight: 800; color: var(--ink); }
    .hd-txt small { font-size: .76rem; font-weight: 500; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .hd-item .menu-badge { flex: none; }
    .hd-item--sm { gap: .7rem; padding: .45rem .55rem; }
    .hd-item--sm .hd-ico { width: 34px; height: 34px; border-radius: 11px; }
    .hd-item--sm .hd-ico svg { width: 18px; height: 18px; }
    .hd-item--sm .hd-txt b { font-size: .86rem; font-weight: 700; }
    .hd-item--danger .hd-ico, .hd-item--danger:hover .hd-ico { color: #c22a30; background: rgba(229, 72, 77, .12); box-shadow: none; }
    .hd-item--danger .hd-txt b { color: #c22a30; }
    .hd-sep { height: 1px; margin: .35rem .4rem; background: var(--line); }

    /* دکمه‌های سمت چپ: سبد خرید، ورود، کاربر */
    .hd-actions { display: flex; align-items: center; gap: .6rem; flex: none; margin-inline-start: auto; }
    .hd-btn {
        position: relative; display: grid; place-items: center; flex: none;
        width: 44px; height: 44px; border-radius: 50%; padding: 0;
        color: var(--ink); background: #fff; border: 1px solid rgba(11, 29, 51, .12);
        cursor: pointer; text-decoration: none;
        transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
    }
    .hd-btn svg { width: 20px; height: 20px; }
    /* دکمهٔ حالت شب: در روز ماه، در شب خورشید */
    .hd-theme .hd-theme-sun, html[data-theme="dark"] .hd-theme .hd-theme-moon { display: none; }
    html[data-theme="dark"] .hd-theme .hd-theme-sun { display: block; }
    .hd-btn:hover { border-color: rgba(11, 29, 51, .3); box-shadow: 0 10px 20px -14px rgba(11, 29, 51, .5); transform: translateY(-1px); }
    .hd-count {
        position: absolute; top: -4px; left: -4px;
        display: grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 999px;
        font-size: .72rem; font-weight: 900; line-height: 1; color: #0b1d33;
        background: var(--glow); border: 2px solid #eff3ff;
        animation: hd-count-pop 2.4s ease-in-out infinite;
    }
    /* چشمک عدد سبد: تپش کوتاه + حلقهٔ موجی که از دور نشان پخش می‌شود */
    /* سرعت: حلقه با transform/opacity (روی GPU) به‌جای box-shadow که هر فریم دوباره نقاشی می‌شد */
    .hd-count::after {
        content: ""; position: absolute; inset: -2px; z-index: -1; border-radius: inherit;
        background: rgba(107, 174, 214, .75); opacity: 0;
        animation: hd-count-ring 2.4s ease-out infinite;
    }
    @keyframes hd-count-pop {
        0%, 70%, 100% { transform: scale(1); }
        78% { transform: scale(1.28); }
        86% { transform: scale(.92); }
        93% { transform: scale(1.08); }
    }
    @keyframes hd-count-ring {
        0%, 70% { transform: scale(1); opacity: 0; }
        71% { transform: scale(1); opacity: 1; }
        100% { transform: scale(1.75); opacity: 0; }
    }
    .hd-login {
        display: inline-flex; align-items: center; gap: .45rem; flex: none;
        height: 46px; padding: 0 1.3rem; border: 0; border-radius: 999px;
        font: inherit; font-size: .9rem; font-weight: 800; color: #fff; white-space: nowrap;
        background: linear-gradient(160deg, #16345e, #0b1d33);
        box-shadow: 0 12px 24px -14px rgba(11, 29, 51, .95), inset 0 1px 0 rgba(255, 255, 255, .12);
        cursor: pointer; transition: transform .2s ease, box-shadow .2s ease;
    }
    .hd-login svg { width: 18px; height: 18px; stroke-width: 2.2; color: var(--glow); }
    .hd-login:hover { transform: translateY(-1px); box-shadow: 0 16px 28px -14px rgba(11, 29, 51, 1), inset 0 1px 0 rgba(255, 255, 255, .14); }

    .hd-user { position: relative; flex: none; }
    .hd-user-btn {
        display: flex; align-items: center; gap: .6rem;
        padding: 3px; padding-inline-end: .75rem; border-radius: 999px;
        color: var(--ink); background: #fff; border: 1px solid rgba(11, 29, 51, .12);
        font: inherit; cursor: pointer; transition: border-color .2s ease, box-shadow .2s ease;
    }
    .hd-user-btn:hover, .hd-user-btn[aria-expanded="true"] { border-color: rgba(11, 29, 51, .3); box-shadow: 0 10px 20px -14px rgba(11, 29, 51, .5); }
    .hd-avatar { display: grid; place-items: center; flex: none; width: 36px; height: 36px; border-radius: 50%; background: linear-gradient(160deg, #16345e, #0b1d33); }
    .hd-avatar span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; font-size: .95rem; font-weight: 900; color: var(--glow); }
    .hd-user-txt { display: flex; flex-direction: column; align-items: flex-start; line-height: 1.35; }
    .hd-user-txt b { max-width: 8.5rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .82rem; font-weight: 800; color: var(--ink); }
    .hd-user-txt small { font-size: .7rem; color: var(--muted); }
    .hd-user-btn > svg { width: 16px; height: 16px; stroke-width: 2.2; color: var(--muted); transition: transform .3s ease; }
    .hd-user-btn[aria-expanded="true"] > svg { transform: rotate(180deg); }
    .hd-user-drop { position: absolute; top: 100%; left: 0; z-index: 50; width: 250px; padding-top: 12px; }

    /* دکمه منوی موبایل */
    .hd-burger { display: none; }
    .hd-burger i { position: absolute; left: 12px; right: 12px; height: 2px; border-radius: 2px; background: currentColor; transition: left .3s ease; }
    .hd-burger i:nth-child(1) { top: 14px; }
    .hd-burger i:nth-child(2) { top: 20px; left: 17px; }
    .hd-burger i:nth-child(3) { top: 26px; }
    .hd-burger:hover i:nth-child(2) { left: 12px; }

    /* منوی کشویی موبایل */
    .hd-scrim {
        position: fixed; inset: 0; z-index: 40;
        background: rgba(5, 16, 31, .45);
        -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
        opacity: 0; visibility: hidden; cursor: pointer;
        transition: opacity .35s ease, visibility 0s linear .35s;
    }
    .hd-scrim.is-open { opacity: 1; visibility: visible; transition-delay: 0s; }
    .hd-drawer {
        position: fixed; top: 0; right: 0; bottom: 0; z-index: 50;
        display: flex; flex-direction: column;
        width: min(350px, 88vw);
        background: #eff3ff;
        border-radius: 26px 0 0 26px;
        box-shadow: -30px 0 60px -20px rgba(5, 16, 31, .5);
        transform: translateX(105%); visibility: hidden;
        transition: transform .45s cubic-bezier(.2, .8, .2, 1), visibility 0s linear .45s;
    }
    .hd-drawer.is-open { transform: none; visibility: visible; transition-delay: 0s; }
    .hd-drawer-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.1rem; border-bottom: 1px solid var(--line); }
    .hd-close:hover { color: #c22a30; border-color: rgba(229, 72, 77, .5); }
    .hd-drawer-body { flex: 1; overflow-y: auto; overscroll-behavior: contain; padding: 1rem .8rem 1.4rem; }
    .hd-acc { display: grid; gap: .3rem; margin: 0; padding: 0; list-style: none; }
    .hd-acc .hd-item { color: var(--ink); }
    .hd-acc > li > .hd-item { background: #fff; box-shadow: 0 1px 2px rgba(11, 29, 51, .05); }
    .hd-acc-chev { width: 18px; height: 18px; margin-inline-start: auto; flex: none; color: var(--muted); stroke-width: 2.2; transition: transform .3s ease; }
    .hd-acc-btn[aria-expanded="true"] .hd-acc-chev { transform: rotate(180deg); color: var(--acc); }
    .hd-acc-list {
        display: grid; gap: .15rem; margin: .35rem 0 .5rem; padding: .35rem; list-style: none;
        border-radius: 18px; background: #fff; border: 1px solid var(--line);
    }
    .hd-acc-list .hd-ico { width: 36px; height: 36px; border-radius: 11px; }
    .hd-acc-list .hd-ico svg { width: 18px; height: 18px; }
    .hd-acc-list .hd-txt b { font-size: .86rem; }
    .hd-acc-list .hd-txt small { font-size: .72rem; }
    .hd-drawer.is-open .hd-acc > li { animation: hd-in .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(var(--i, 0) * 40ms + 80ms); }
    .hd-drawer-foot {
        display: flex; align-items: center; justify-content: space-between; gap: .8rem;
        padding: 1rem 1.1rem calc(1rem + env(safe-area-inset-bottom));
        border-top: 1px solid var(--line);
    }
    .hd-social { display: flex; gap: .45rem; margin: 0; padding: 0; list-style: none; }
    .hd-social a {
        display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; color: var(--ink);
        background: #fff; border: 1px solid rgba(11, 29, 51, .12);
        transition: transform .2s ease, color .2s ease;
    }
    .hd-social a:hover { color: var(--s2); }
    .hd-social svg { width: 19px; height: 19px; }
    .hd-support {
        display: inline-flex; align-items: center; gap: .4rem; height: 42px; padding: 0 1.05rem; border-radius: 999px;
        font-size: .86rem; font-weight: 800; color: #fff; text-decoration: none; white-space: nowrap;
        background: linear-gradient(160deg, #16345e, #0b1d33);
    }
    .hd-support svg { width: 17px; height: 17px; stroke-width: 2.2; color: var(--glow); }

    @keyframes hd-in { from { opacity: 0; transform: translateX(22px); } }

    /* زیر ۱۲۸۰ پیکسل هشت گزینه منو در یک ردیف جا نمی‌شوند؛ منوی کشویی جایگزین می‌شود */
    @media (max-width: 1279px) {
        .hd-nav { display: none; }
        .hd-burger { display: grid; }
    }
    @media (min-width: 1280px) {
        .hd-scrim, .hd-drawer { display: none; }
    }
    @media (max-width: 1023px) {
        .hd { --hd-h: 66px; }
    }
    @media (max-width: 479px) {
        .hd-start { gap: .5rem; }
        .hd-logo { gap: .5rem; }
        .hd-orb { width: 36px; height: 36px; }
        .hd .hd-orb svg { width: 36px; height: 36px; }
        .hd-logo-txt small { font-size: .68rem; }
        .hd-logo-txt b { font-size: 1.08rem; }
        .hd-actions { gap: .4rem; }
        .hd-btn { width: 42px; height: 42px; }
        .hd-login { height: 42px; padding: 0 .9rem; font-size: .8rem; }
        .hd-login svg, .hd-user-txt { display: none; }
        .hd-user-btn { padding-inline-end: .45rem; gap: .35rem; }
    }
    @media (max-width: 379px) {
        .hd-bar { gap: .5rem; }
        .hd-btn { width: 40px; height: 40px; }
        .hd-burger i:nth-child(1) { top: 13px; }
        .hd-burger i:nth-child(2) { top: 19px; }
        .hd-burger i:nth-child(3) { top: 25px; }
        .hd-orb, .hd .hd-orb svg { width: 34px; height: 34px; }
        .hd-logo-txt b { font-size: 1rem; }
        .hd-login { height: 40px; padding: 0 .75rem; font-size: .76rem; }
    }
    @media (prefers-reduced-motion: reduce) {
        .hd *, .hd *::before, .hd *::after { animation: none !important; transition-duration: .01ms !important; }
    }

/* ===== _footer.html ===== */
    .ft {
        --ink: #0b1d33;
        --body: #2a3d55;
        --muted: #5a6b82;
        --line: rgba(11, 29, 51, .1);
        --acc: #08519c;
        --glow: #6baed6;
        margin-top: 6rem;
        color: var(--ink);
    }
    .ft *, .ft *::before, .ft *::after { box-sizing: border-box; }
    .ft svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
    .ft a:focus-visible, .ft button:focus-visible { outline: 2px solid var(--acc); outline-offset: 3px; }
    /* ظرف گرد بالای فوتر (مثل fxnx) */
    .ft-shell {
        border-radius: 40px 40px 0 0;
        background: #fff;
        box-shadow: 0 -1px 0 rgba(11, 29, 51, .09);
        overflow: hidden;
    }
    .ft-wrap { max-width: 1220px; margin: 0 auto; padding: 3.5rem 16px 0; }

    /* ستون‌های لینک */
    .ft-cols { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 2rem 1.5rem; padding-bottom: 2.6rem; }
    .ft-h { margin: 0 0 1rem; font-size: .98rem; font-weight: 900; color: var(--ink); line-height: 1.5; }
    .ft-list { display: grid; gap: .55rem; margin: 0; padding: 0; list-style: none; }
    .ft-list a {
        --lc: transparent;
        display: inline-flex; align-items: center; gap: .55rem;
        color: var(--body); font-size: .92rem; font-weight: 500; text-decoration: none;
        transition: color .2s ease;
    }
    .ft-list a > i { flex: none; width: 7px; height: 7px; border-radius: 50%; background: var(--lc); }
    .ft-list a:hover, .ft-list a:focus-visible { color: var(--acc); }
    .ft-list .menu-badge { flex: none; }

    /* ردیف‌های اطلاعات: آیکن + عنوان | متن | لینک */
    .ft-rows { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
    .ft-row {
        display: grid; grid-template-columns: 200px minmax(0, 1fr) auto; align-items: start; gap: 1.5rem;
        padding: 1.25rem 0; border-bottom: 1px solid var(--line);
    }
    .ft-row-h { display: flex; align-items: center; gap: .6rem; margin: 0; font-size: .95rem; font-weight: 800; color: var(--ink); line-height: 1.9; }
    .ft-row-h svg { width: 18px; height: 18px; flex: none; color: var(--muted); }
    .ft-row p { margin: 0; font-size: .9rem; line-height: 2.05; color: var(--body); }
    .ft-row p a { color: var(--acc); font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
    .ft-more {
        display: inline-flex; align-items: center; gap: .35rem; white-space: nowrap;
        font-size: .9rem; font-weight: 800; color: var(--ink); text-decoration: none; line-height: 1.9;
    }
    .ft-more svg { width: 16px; height: 16px; stroke-width: 2.4; color: var(--acc); transition: transform .2s ease; }
    .ft-more:hover svg { transform: translateX(-3px); }

    /* خبرنامه داخل ردیف */
    .ft-news-row { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1.5rem; }
    .ft-news-row > p { flex: 1 1 260px; }
    #newsletter-form { flex: 1 1 340px; }
    .ft-field {
        display: flex; align-items: center; gap: .4rem; padding: .3rem;
        border-radius: 999px; background: #fff; border: 1px solid rgba(11, 29, 51, .12);
        transition: border-color .2s ease, box-shadow .2s ease;
    }
    .ft-field:focus-within { border-color: var(--acc); box-shadow: 0 0 0 4px rgba(8, 81, 156, .12); }
    .ft-field > svg { flex: none; width: 19px; height: 19px; margin-inline-start: .6rem; color: var(--muted); }
    .ft-field input, .ft-field input:focus {
        flex: 1; width: 100%; min-width: 0; height: 42px; padding: 0 .2rem; margin: 0;
        border: 0; outline: 0; box-shadow: none; background: transparent; -webkit-appearance: none; appearance: none;
        color: var(--ink); font: inherit; font-size: .92rem; direction: ltr; text-align: right;
    }
    .ft-field input::placeholder { direction: rtl; color: #7f8ea3; }
    .ft-submit {
        flex: none; height: 42px; padding: 0 1.25rem; border: 0; border-radius: 999px;
        font: inherit; font-size: .86rem; font-weight: 800; color: #fff; white-space: nowrap;
        background: linear-gradient(160deg, #16345e, #0b1d33);
        cursor: pointer; transition: transform .2s ease, opacity .2s ease;
    }
    .ft-submit:hover { transform: translateY(-1px); }
    .ft-submit:disabled { opacity: .65; cursor: progress; transform: none; }
    .ft-error { margin: .5rem .8rem 0; font-size: .8rem; font-weight: 700; color: #c22a30; }
    .ft-error[hidden] { display: none; }

    /* نوار پایین: کپی‌رایت، لینک‌ها، شبکه‌های اجتماعی، برگشت به بالا */
    .ft-bottom { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.6rem; padding: 1.3rem 0; border-bottom: 1px solid var(--line); }
    .ft-bottom > p { margin: 0; font-size: .86rem; color: var(--body); white-space: nowrap; }
    .ft-legal { display: flex; flex-wrap: wrap; gap: .4rem 1.3rem; margin: 0 auto 0 0; padding: 0; list-style: none; }
    .ft-legal a { font-size: .86rem; color: var(--body); text-decoration: none; }
    .ft-legal a:hover { color: var(--acc); }
    .ft-social { display: flex; align-items: center; gap: .35rem; margin: 0; padding: 0; list-style: none; }
    .ft-soc {
        display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%;
        color: var(--ink); text-decoration: none; transition: background-color .2s ease, color .2s ease;
    }
    .ft-soc svg { width: 19px; height: 19px; }
    .ft-soc:hover { background: #eff3ff; color: var(--acc); }
    .ft-up {
        display: grid; place-items: center; flex: none; width: 42px; height: 42px; border-radius: 50%;
        color: var(--ink); background: #fff; border: 1px solid rgba(11, 29, 51, .12);
        cursor: pointer; transition: transform .2s ease, box-shadow .2s ease;
    }
    .ft-up svg { width: 18px; height: 18px; stroke-width: 2.2; }
    .ft-up:hover { transform: translateY(-2px); box-shadow: 0 10px 20px -12px rgba(11, 29, 51, .5); }

    /* امضای بزرگ پایین فوتر: نشان لامپ + «موسوی» راه‌راه */
    .ft-sign { display: grid; grid-template-columns: auto minmax(0, 1fr) minmax(0, 300px); align-items: center; gap: 2rem; padding: 2.6rem 0 2.4rem; }
    .ft-mark {
        position: relative; display: grid; place-items: center; width: 150px; height: 150px; border-radius: 42px;
        background: #0b1d33;
        box-shadow: 0 30px 50px -28px rgba(8, 81, 156, .9), inset 0 2px 0 rgba(255, 255, 255, .12);
        transform: rotate(-6deg);
    }
    .ft .ft-mark svg { width: 84px; height: 84px; stroke: none; }
    .ft-word {
        margin: 0; overflow: hidden;
        font-size: clamp(4.5rem, 13vw, 11rem); font-weight: 900; line-height: 1.15; text-align: center; white-space: nowrap;
        color: transparent;
        background: repeating-linear-gradient(180deg, rgba(8, 81, 156, .5) 0 2px, transparent 2px 7px);
        -webkit-background-clip: text; background-clip: text;
        -webkit-text-stroke: 1.5px rgba(8, 81, 156, .45);
        user-select: none;
    }
    .ft-tag p { margin: 0 0 1rem; font-size: 1.02rem; line-height: 2; color: var(--body); }
    .ft-pill {
        display: inline-flex; align-items: center; gap: .6rem; padding: .35rem .35rem .35rem 1.1rem; border-radius: 999px;
        background: #fff; border: 1px solid rgba(11, 29, 51, .1); text-decoration: none; color: var(--ink);
        box-shadow: 0 10px 20px -16px rgba(11, 29, 51, .5);
    }
    .ft-pill i { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; color: var(--glow); background: linear-gradient(160deg, #16345e, #0b1d33); }
    .ft-pill i svg { width: 18px; height: 18px; }
    .ft-pill b { display: block; font-size: .9rem; font-weight: 800; }
    .ft-pill small { display: block; font-size: .74rem; color: var(--muted); }

    /* هشدار ریسک کوتاه (پایان صفحات فروش، معمولاً داخل پنل سبز) */
    .rk-note { position: relative; z-index: 1; display: flex; align-items: flex-start; gap: .55rem; max-width: 640px; margin: 1.4rem auto 0; padding: .75rem 1rem; border-radius: 16px; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .12); text-align: start; font-size: .8rem; line-height: 1.95; color: rgba(255, 255, 255, .7); }
    .rk-note svg { width: 17px; height: 17px; flex: none; margin-top: .3rem; fill: none; stroke: #539ccc; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
    .rk-note b { color: #a4cde3; font-weight: 800; }
    .cx-section > .rk-note, .cx > .rk-note { background: #fff; border-color: rgba(11, 29, 51, .08); color: #5a6b82; }
    .cx-section > .rk-note b, .cx > .rk-note b { color: #0a549e; }

    /* پیام موفقیت خبرنامه */
    .ft-modal {
        position: fixed; inset: 0; z-index: 60;
        display: grid; place-items: center; padding: 16px;
        background: rgba(5, 16, 31, .45);
        -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
        opacity: 0; transition: opacity .3s ease; cursor: pointer;
    }
    .ft-modal[hidden] { display: none; }
    .ft-modal.is-open { opacity: 1; }
    .ft-modal-card {
        width: 100%; max-width: 360px; padding: 2.2rem 1.6rem; border-radius: 28px; text-align: center;
        background: #fff;
        box-shadow: 0 40px 80px -30px rgba(5, 16, 31, .6);
        transform: translateY(14px) scale(.96);
        transition: transform .45s cubic-bezier(.2, .8, .2, 1);
    }
    .ft-modal.is-open .ft-modal-card { transform: none; }
    .ft-modal-icon {
        display: grid; place-items: center; width: 70px; height: 70px; margin: 0 auto 1.1rem; border-radius: 50%;
        color: #0b1d33; background: linear-gradient(180deg, #6fb0d7, #3182bd);
        box-shadow: 0 0 0 8px rgba(107, 174, 214, .18);
    }
    .ft-modal-icon svg { width: 34px; height: 34px; stroke-width: 2.8; stroke-dasharray: 30; stroke-dashoffset: 30; }
    .ft-modal.is-open .ft-modal-icon svg { animation: ft-check .6s .25s ease forwards; }
    .ft-modal-card h3 { margin: 0 0 .5rem; font-size: 1.2rem; font-weight: 900; color: var(--ink); }
    .ft-modal-card p { margin: 0; font-size: .92rem; color: var(--body); }

    @keyframes ft-check { to { stroke-dashoffset: 0; } }

    @media (max-width: 1023px) {
        .ft-cols { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        .ft-row { grid-template-columns: 170px minmax(0, 1fr); }
        .ft-row > .ft-more { grid-column: 2; }
        .ft-sign { grid-template-columns: auto minmax(0, 1fr); }
        .ft-tag { grid-column: 1 / -1; }
        .ft-mark { width: 110px; height: 110px; border-radius: 32px; }
        .ft .ft-mark svg { width: 54px; height: 54px; }
    }
    @media (max-width: 767px) {
        .ft { margin-top: 4rem; }
        .ft-shell { border-radius: 30px 30px 0 0; }
        .ft-wrap { padding-top: 2.6rem; }
        .ft-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.8rem 1rem; }
        .ft-row { grid-template-columns: minmax(0, 1fr); gap: .5rem; }
        .ft-row > .ft-more { grid-column: 1; }
        .ft-bottom { justify-content: center; text-align: center; }
        .ft-legal { margin: 0; justify-content: center; }
        .ft-sign { grid-template-columns: minmax(0, 1fr); justify-items: center; text-align: center; gap: 1.2rem; }
        .ft-mark { width: 92px; height: 92px; border-radius: 28px; }
        .ft .ft-mark svg { width: 46px; height: 46px; }
        .ft-word { font-size: clamp(4rem, 24vw, 7rem); }
    }
    @media (prefers-reduced-motion: reduce) {
        .ft *, .ft *::before, .ft *::after { animation: none !important; transition-duration: .01ms !important; }
        .ft-modal-icon svg { stroke-dashoffset: 0; }
    }

/* ---------- نوار تبلیغ کانال سیگنال فارکس (بالای هدر همه صفحات، partials/_promo_bar.html) ---------- */
    .pb {
        position: relative; z-index: 31; display: block; overflow: hidden; isolation: isolate;
        color: #fff; text-decoration: none;
        background: #0b1d33;
    }
    .pb-sheen { display: none; }
    .pb-inner {
        display: flex; align-items: center; justify-content: center; gap: .85rem;
        max-width: 1220px; min-height: 42px; margin: 0 auto; padding: .35rem 16px;
    }
    .pb-live { position: relative; flex: none; width: 9px; height: 9px; }
    .pb-live i, .pb-live::after { position: absolute; inset: 0; border-radius: 50%; background: #6baed6; }
    .pb-live::after { content: ""; animation: pb-ping 1.8s ease-out infinite; }
    .pb-tag {
        flex: none; padding: .1rem .55rem; border-radius: 999px; direction: ltr;
        font-size: .68rem; font-weight: 800; letter-spacing: .12em; color: #a4cde3;
        border: 1px solid rgba(164, 205, 227, .4);
    }
    .pb-text { display: flex; align-items: baseline; gap: .6rem; min-width: 0; }
    .pb-text b { font-size: .88rem; font-weight: 800; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .pb-sub { font-size: .82rem; color: rgba(255, 255, 255, .72); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .pb-cta {
        flex: none; display: inline-flex; align-items: center; gap: .25rem;
        padding: .26rem .9rem; border-radius: 999px;
        font-size: .78rem; font-weight: 900; color: #0b1d33;
        background: #6baed6;
        transition: transform .2s ease;
    }
    .pb-cta svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
    .pb:hover .pb-cta { transform: translateX(-3px); }
    .pb:focus-visible { outline: 2px solid #6baed6; outline-offset: -3px; }
    @keyframes pb-ping { 0% { transform: scale(1); opacity: .7; } 100% { transform: scale(2.8); opacity: 0; } }
    @media (max-width: 767px) {
        .pb-sub, .pb-brand { display: none; }
        .pb-inner { gap: .6rem; min-height: 40px; }
    }
    @media (max-width: 379px) {
        .pb-tag { display: none; }
        .pb-text b { font-size: .82rem; }
    }
    @media (prefers-reduced-motion: reduce) {
        .pb-live::after { animation: none; }
    }

/* ---------- باکس کانال سیگنال داخل محتوا (partials/_signal_box.html): پنل سبز تیره ---------- */
    .sb {
        position: relative; isolation: isolate; overflow: hidden;
        display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); align-items: center; gap: 2rem;
        margin: 2.5rem 0 0; padding: 2.4rem 2.6rem; border-radius: 32px;
        color: #fff; direction: rtl;
        background:
            radial-gradient(70% 90% at 10% 0%, rgba(83, 156, 204, .16), transparent 60%),
            linear-gradient(160deg, #112b4f 0%, #0b1d33 45%, #05101f 100%);
        box-shadow: 0 2px 4px rgba(11, 29, 51, .05), 0 40px 80px -40px rgba(11, 29, 51, .45);
    }
    .sb-glow { display: none; }
    .sb-en { direction: ltr; unicode-bidi: isolate; font-family: inherit; }
    .sb-eyebrow {
        display: inline-flex; align-items: center; gap: .55rem;
        font-size: .86rem; font-weight: 800; color: #6baed6;
    }
    .sb-live { position: relative; width: 9px; height: 9px; flex: none; }
    .sb-live i, .sb-live::after { position: absolute; inset: 0; border-radius: 50%; background: #6baed6; }
    .sb-live::after { content: ""; animation: pb-ping 1.8s ease-out infinite; }
    .sb-title { margin: .9rem 0 .6rem; font-size: clamp(1.4rem, 2.6vw, 1.95rem); font-weight: 900; line-height: 1.55; color: #fff; }
    .sb-lead { margin: 0 0 1.1rem; color: rgba(255, 255, 255, .78); line-height: 2; font-size: .98rem; }
    .sb-points { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem 1.2rem; margin: 0 0 1.6rem; padding: 0; list-style: none; }
    .sb-points li { display: flex; align-items: center; gap: .5rem; font-size: .9rem; font-weight: 700; color: #fff; }
    .sb-points svg { flex: none; width: 18px; height: 18px; padding: 3px; border-radius: 50%; fill: none; stroke: #0b1d33; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; background: #6baed6; }
    .sb-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem; }
    .sb-cta {
        position: relative; display: inline-flex; align-items: center; gap: .55rem;
        min-height: 52px; padding: .85rem 1.6rem; border-radius: 999px;
        font-size: 1rem; font-weight: 900; color: #0b1d33; text-decoration: none;
        background: linear-gradient(180deg, #6fb0d7, #3182bd);
        box-shadow: 0 14px 30px -12px rgba(49, 130, 189, .8), inset 0 1px 0 rgba(255, 255, 255, .55);
        transition: transform .2s ease;
    }
    .sb-cta svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; transform: scaleX(-1); }
    .sb-cta:hover { transform: translateY(-2px); }
    .sb-more { display: inline-flex; align-items: center; min-height: 52px; padding: .85rem 1.3rem; border-radius: 999px; font-weight: 800; font-size: .92rem; color: #fff; text-decoration: none; border: 1px solid rgba(255, 255, 255, .22); background: rgba(255, 255, 255, .05); transition: background-color .2s ease; }
    .sb-more:hover { background: rgba(255, 255, 255, .1); }

    /* ماکت گوشی با پیام‌های سیگنال (اعداد تار) */
    .sb-visual { display: flex; justify-content: center; perspective: 900px; }
    .sb-phone {
        width: min(250px, 100%); padding: .9rem; border-radius: 30px;
        background: linear-gradient(180deg, #0e2442, #05101f);
        border: 1px solid rgba(255, 255, 255, .14);
        box-shadow: 0 30px 50px -20px rgba(0, 0, 0, .6);
        transform: rotateY(-12deg) rotateX(5deg);
        animation: sb-float 6s ease-in-out infinite;
    }
    .sb-phone-head { display: flex; align-items: center; gap: .6rem; padding: .2rem .2rem .8rem; border-bottom: 1px solid rgba(255, 255, 255, .1); }
    .sb-phone-head b { display: block; font-size: .85rem; color: #fff; }
    .sb-phone-head small { display: block; font-size: .68rem; color: rgba(255, 255, 255, .6); }
    .sb-avatar { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; font-weight: 900; color: #0b1d33; background: #6baed6; }
    .sb-msg { margin-top: .8rem; padding: .75rem .85rem; border-radius: 16px 16px 16px 4px; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .08); }
    .sb-msg--alt { opacity: .75; }
    .sb-msg-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: .4rem; }
    .sb-msg-top b { font-size: .85rem; color: #a4cde3; letter-spacing: .06em; }
    .sb-side { padding: .05rem .5rem; border-radius: 6px; font-size: .68rem; font-weight: 900; color: #0b1d33; background: #6baed6; }
    .sb-side--sell { color: #fff; background: #ff6b5e; }
    .sb-msg p { display: flex; justify-content: space-between; margin: .25rem 0 0; font-size: .74rem; color: rgba(255, 255, 255, .6); }
    .sb-blur { font-style: normal; font-weight: 800; color: #fff; filter: blur(4px); user-select: none; }
    @keyframes sb-float { 0%, 100% { transform: rotateY(-12deg) rotateX(5deg) translateY(0); } 50% { transform: rotateY(-8deg) rotateX(3deg) translateY(-8px); } }

    @media (max-width: 860px) {
        .sb { grid-template-columns: 1fr; padding: 1.8rem 1.3rem; gap: 1.6rem; border-radius: 26px; }
        .sb-visual { order: -1; }
        .sb-phone { width: min(230px, 80%); }
    }
    @media (max-width: 480px) {
        .sb-points { grid-template-columns: 1fr; }
        .sb-actions { flex-direction: column; align-items: stretch; }
        .sb-cta, .sb-more { justify-content: center; }
        .sb-msg--alt { display: none; }
    }
    @media (prefers-reduced-motion: reduce) {
        .sb-phone, .sb-live::after { animation: none; }
    }

/* ===== تبلیغ دوره DRS: دکمه هدر (hd-drs)، آیتم منوی موبایل (hd-drawer-drs)، دکمه شناور (df-)، کارت مقاله‌ها (di-) ===== */
    @property --drs-a { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
    @keyframes drs-pulse { 0% { transform: scale(1); opacity: .65; } 80%, 100% { transform: scale(2.6); opacity: 0; } }
    @keyframes drs-spin { to { --drs-a: 360deg; } }
    @keyframes drs-sheen { 0%, 70% { transform: translateX(120%); } 100% { transform: translateX(-120%); } }

    .hd-drs {
        position: relative; display: none; align-items: center; gap: .5rem; flex: none;
        height: 46px; padding: 0 1rem 0 .8rem; border-radius: 999px;
        font-size: .88rem; font-weight: 800; color: #c5daee; white-space: nowrap;
        background: linear-gradient(160deg, #3a1d1d, #1c1010);
        box-shadow: inset 0 0 0 1px rgba(107, 174, 214, .45), 0 10px 22px -14px rgba(120, 30, 30, .9);
        transition: transform .2s ease, box-shadow .2s ease;
    }
    .hd-drs b { color: #fff; font-weight: 900; }
    .hd-drs em { padding: .05rem .45rem; border-radius: 999px; font-style: normal; font-size: .66rem; font-weight: 900; color: #fff; background: #d32f2f; }
    .hd-drs-dot { position: relative; width: 8px; height: 8px; border-radius: 50%; background: #6baed6; }
    .hd-drs-dot::after { content: ""; position: absolute; inset: 0; border-radius: inherit; background: #6baed6; animation: drs-pulse 2.4s ease-out infinite; }
    .hd-drs:hover { transform: translateY(-1px); box-shadow: inset 0 0 0 1px rgba(107, 174, 214, .8), 0 14px 26px -14px rgba(120, 30, 30, 1); }
    /* فقط وقتی منوی کامل دسکتاپ نیست (۶۴۰ تا ۱۲۷۹)؛ با منوی کامل جا نمی‌شود و زیر ۶۴۰ نوار پایین صفحه کارش را می‌کند */
    @media (min-width: 640px) and (max-width: 1279px) { .hd-drs { display: inline-flex; } }

    .hd-drawer-drs {
        display: flex; align-items: center; gap: .8rem; margin: 0 0 1rem; padding: .85rem 1rem;
        border-radius: 20px; color: #c5daee;
        background: linear-gradient(160deg, #3a1d1d, #1c1010);
        box-shadow: inset 0 0 0 1px rgba(107, 174, 214, .4);
    }
    .hd-drawer-drs-orb { display: grid; place-items: center; flex: none; width: 46px; height: 46px; border-radius: 14px; font-size: .8rem; font-weight: 900; color: #1c1010; background: linear-gradient(160deg, #a0cbe2, #3182bd); }
    .hd-drawer-drs-txt { flex: 1; min-width: 0; }
    .hd-drawer-drs-txt b { display: block; font-size: .98rem; font-weight: 900; color: #fff; }
    .hd-drawer-drs-txt em { margin-right: .25rem; padding: .02rem .4rem; border-radius: 999px; font-style: normal; font-size: .64rem; color: #fff; background: #d32f2f; vertical-align: middle; }
    .hd-drawer-drs-txt small { display: block; margin-top: .15rem; font-size: .76rem; color: rgba(197, 218, 238, .75); }
    .hd-drawer-drs > svg { flex: none; width: 20px; height: 20px; fill: none; stroke: #6baed6; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }

    /* دکمه شناور (دسکتاپ) / نوار پایین (موبایل) */
    .df {
        position: fixed; left: 20px; bottom: 20px; z-index: 35;
        display: flex; align-items: center;
        opacity: 0; transform: translateY(24px); pointer-events: none; visibility: hidden;
        transition: opacity .35s ease, transform .45s cubic-bezier(.2, .7, .2, 1), visibility 0s linear .45s;
    }
    .df[hidden] { display: none; }
    /* سرعت: وقتی دکمه پنهان است، تپش آن هم بایستد (انیمیشنِ عنصرِ پنهان روی GPU نمی‌رود و هر فریم CPU می‌خورد) */
    .df:not(.is-shown) *, .df:not(.is-shown) *::before, .df:not(.is-shown) *::after { animation-play-state: paused !important; }
    /* همین برای بلوک‌هایی که هنوز با اسکرول ظاهر نشده‌اند (opacity: 0) */
    .cx-js .cx-reveal:not(.is-in) *, .cx-js .cx-reveal:not(.is-in) *::before, .cx-js .cx-reveal:not(.is-in) *::after { animation-play-state: paused !important; }
    .df.is-shown { opacity: 1; transform: none; pointer-events: auto; visibility: visible; transition: opacity .35s ease, transform .45s cubic-bezier(.2, .7, .2, 1), visibility 0s; }
    .df-link {
        position: relative; display: flex; align-items: center; gap: .8rem; overflow: hidden; isolation: isolate;
        padding: .55rem; border-radius: 999px;
        color: #c5daee; background: linear-gradient(160deg, #3a1d1d, #1c1010);
        box-shadow: inset 0 0 0 1px rgba(107, 174, 214, .5), 0 22px 44px -18px rgba(60, 12, 12, .85);
        transition: transform .2s ease;
    }
    .df-link::after {
        content: ""; position: absolute; inset: 0; z-index: -1;
        background: linear-gradient(100deg, transparent 30%, rgba(189, 215, 236, .18) 50%, transparent 70%);
        animation: drs-sheen 6s ease-in-out infinite;
    }
    .df-link:hover { transform: translateY(-2px); }
    .df-orb { position: relative; display: grid; place-items: center; flex: none; width: 48px; height: 48px; border-radius: 50%; background: linear-gradient(160deg, #a0cbe2, #3182bd); }
    .df-orb::before { content: ""; position: absolute; inset: 0; border-radius: inherit; border: 2px solid #6baed6; animation: drs-pulse 2.6s ease-out infinite; }
    .df-orb b { font-size: .78rem; font-weight: 900; color: #1c1010; }
    .df-txt { display: flex; flex-direction: column; min-width: 0; }
    .df-txt b { font-size: .98rem; font-weight: 900; color: #fff; white-space: nowrap; }
    .df-txt em { margin-right: .3rem; padding: .02rem .45rem; border-radius: 999px; font-style: normal; font-size: .64rem; color: #fff; background: #d32f2f; vertical-align: middle; }
    .df-txt small { font-size: .76rem; color: rgba(197, 218, 238, .75); white-space: nowrap; }
    .df-go { display: inline-flex; align-items: center; gap: .3rem; flex: none; height: 40px; padding: 0 1rem; border-radius: 999px; font-size: .82rem; font-weight: 900; color: #1c1010; background: linear-gradient(160deg, #a0cbe2, #418ec4); }
    .df-go svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
    .df-x {
        position: absolute; top: -8px; left: -8px; display: grid; place-items: center;
        width: 26px; height: 26px; padding: 0; border: 0; border-radius: 50%; cursor: pointer;
        color: #fff; background: #0b1d33; box-shadow: 0 0 0 2px #fff;
    }
    .df-x svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 2.6; stroke-linecap: round; }
    /* دسکتاپ: فقط نشان و عنوان تا روی متن صفحه نیفتد؛ با hover دکمه «مشاهده دوره» باز می‌شود */
    @media (min-width: 768px) {
        .df-link { padding-inline-end: 1.2rem; }
        .df-txt small { display: none; }
        .df-go { width: 0; padding: 0; overflow: hidden; margin-inline-start: -.8rem; transition: width .3s ease, padding .3s ease, margin .3s ease; }
        .df-link:hover, .df-link:focus-visible { padding-inline-end: .55rem; }
        .df-link:hover .df-go, .df-link:focus-visible .df-go { width: 118px; padding: 0 1rem; margin-inline-start: 0; }
    }
    @media (max-width: 767px) {
        .df { left: 10px; right: 10px; bottom: calc(10px + env(safe-area-inset-bottom)); }
        .df-link { flex: 1; gap: .6rem; padding: .45rem; border-radius: 20px; }
        .df-orb { width: 42px; height: 42px; }
        .df-txt { flex: 1; }
        .df-txt b { font-size: .9rem; }
        .df-txt small { font-size: .7rem; overflow: hidden; text-overflow: ellipsis; }
        .df-go { height: 38px; padding: 0 .8rem; font-size: .78rem; }
        .df-x { top: -9px; left: 2px; }
        html.df-on body { padding-bottom: 84px; }
    }
    @media (max-width: 359px) {
        .df-go span { display: none; }
    }

    /* کارت DRS داخل مقاله‌ها: حاشیه طلایی چرخان */
    .di {
        position: relative; margin: 2.2rem 0; padding: 2px; border-radius: 26px;
        background: conic-gradient(from var(--drs-a), #3182bd, #a0cbe2 20%, #6b1f1f 45%, #3182bd 60%, #a0cbe2 80%, #3182bd);
        animation: drs-spin 7s linear infinite;
        box-shadow: 0 30px 60px -36px rgba(60, 12, 12, .7);
    }
    .di-in {
        display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 1.4rem; align-items: stretch;
        padding: 12px; border-radius: 24px; background: linear-gradient(160deg, #2e1717, #140c0c);
    }
    .di-media { position: relative; display: block; overflow: hidden; min-height: 200px; border-radius: 18px; background: #000; }
    .di-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; transition: transform .7s cubic-bezier(.2, .7, .2, 1); }
    .di:hover .di-media img { transform: scale(1.05); }
    .di-copy { align-self: center; padding: .6rem .4rem .6rem 1rem; }
    .di-eyebrow { display: inline-flex; align-items: center; gap: .45rem; font-size: .8rem; font-weight: 800; color: #6baed6; }
    .di-eyebrow i { width: 20px; height: 4px; border-radius: 2px; background: #6baed6; }
    .di-eyebrow em { padding: .02rem .45rem; border-radius: 999px; font-style: normal; font-size: .64rem; font-weight: 900; color: #fff; background: #d32f2f; }
    .di p.di-title { margin: .6rem 0 .4rem; font-size: clamp(1.15rem, 2.4vw, 1.45rem); font-weight: 900; line-height: 1.6; color: #fff; }
    .di p.di-text { margin: 0 0 1.1rem; font-size: .95rem; line-height: 2; color: rgba(197, 218, 238, .78); }
    .di-cta {
        display: inline-flex; align-items: center; gap: .4rem; height: 46px; padding: 0 1.3rem; border-radius: 999px;
        font-size: .9rem; font-weight: 900; color: #1c1010; background: linear-gradient(160deg, #a0cbe2, #418ec4);
        box-shadow: 0 12px 24px -12px rgba(107, 174, 214, .8); transition: transform .2s ease;
    }
    .di-cta:hover { transform: translateY(-2px); }
    .di-cta svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
    @media (max-width: 640px) {
        .di-in { grid-template-columns: 1fr; gap: .8rem; }
        .di-media { min-height: 0; aspect-ratio: 16 / 9; }
        .di-copy { padding: .2rem .5rem .6rem; }
        .di-cta { width: 100%; justify-content: center; }
    }

    @media (prefers-reduced-motion: reduce) {
        .hd-drs-dot::after, .df-orb::before, .df-link::after, .di { animation: none; }
        .df, .df.is-shown { transition: none; }
    }

    /* ---------- سرعت روی موبایل و تبلت: بدون بلور پس‌زمینه ----------
       backdrop-filter روی گوشی گران‌ترین افکت است (هدر چسبان با هر فریم اسکرول دوباره بلور می‌شد).
       به‌جایش پس‌زمینه کمی پررنگ‌تر می‌شود تا ظاهر تقریباً همان بماند. بلور مقادیر سیگنال (filter) عمداً می‌ماند. */
    @media (max-width: 1023px), (hover: none) {
        html .hd-glass, html .hd-scrim, html .hx-float, html .hm-pcard, html .hm-about-card,
        html .drs-clip-tag, html .drs-clip-play {
            -webkit-backdrop-filter: none; backdrop-filter: none;
        }
        html .hd-glass { background: rgba(235, 241, 248, .97); }
        html[data-theme="dark"] body .hd-glass { background: rgba(19, 36, 60, .97); }
        html .hd-scrim { background: rgba(5, 16, 31, .6); }
        html .hm-pcard { background: rgba(5, 16, 31, .86); }
        html .hm-about-card { background: rgba(5, 16, 31, .9); }
        html .drs-clip-tag { background: rgba(5, 16, 31, .78); }
        html .drs-clip-play { background: rgba(5, 16, 31, .5); }
        html[data-theme="dark"] body .drs-clip-play { background: rgba(15, 29, 48, .6); }
    }
