/* سیستم طراحی مشترک صفحات (cx-): هیرو سه‌بعدی، کارت‌ها، CTA. منبع قبلی: partials/_course3d_styles.html */
    .cx {
        --bg: #020617;
        --panel: rgba(15, 23, 42, .62);
        --line: rgba(148, 163, 184, .14);
        --text: #f8fafc;
        --body: #cbd5e1;
        --muted: #94a3b8;
        --gold: #fbbf24;
        --gold-2: #f59e0b;
        --gold-rgb: 251, 191, 36;
        --rose: #fb7185;
        --rose-rgb: 244, 63, 94;
        --a1: #22c55e; --a1-hi: #4ade80; --a1-pale: #a7f3d0; --a1-rgb: 34, 197, 94;
        --a2: #22d3ee; --a2-hi: #67e8f9; --a2-rgb: 34, 211, 238;
        --tint: #06251a;
        --cta-1: #86efac; --cta-2: #22c55e; --cta-3: #16a34a; --on-cta: #03140a;
        --plate: min(360px, 74vw);
        --u: calc(var(--plate) / 360);
        max-width: 1180px;
        margin: 0 auto;
        padding: 0 16px;
        color: var(--text);
        overflow: hidden;
    }
    .cx--blue {
        --a1: #3b82f6; --a1-hi: #60a5fa; --a1-pale: #bfdbfe; --a1-rgb: 59, 130, 246;
        --a2: #22d3ee; --a2-hi: #67e8f9; --a2-rgb: 34, 211, 238;
        --tint: #071a3d;
        --cta-1: #bfdbfe; --cta-2: #60a5fa; --cta-3: #3b82f6; --on-cta: #020b1f;
    }
    .cx--violet {
        --a1: #8b5cf6; --a1-hi: #a78bfa; --a1-pale: #ddd6fe; --a1-rgb: 139, 92, 246;
        --a2: #e879f9; --a2-hi: #f0abfc; --a2-rgb: 232, 121, 249;
        --tint: #1a0b3d;
        --cta-1: #ddd6fe; --cta-2: #a78bfa; --cta-3: #8b5cf6; --on-cta: #12062b;
    }
    .cx--gold {
        --a1: #f59e0b; --a1-hi: #fbbf24; --a1-pale: #fde68a; --a1-rgb: 245, 158, 11;
        --a2: #60a5fa; --a2-hi: #93c5fd; --a2-rgb: 96, 165, 250;
        --tint: #2b1a04;
        --cta-1: #fde68a; --cta-2: #fbbf24; --cta-3: #f59e0b; --on-cta: #1c1203;
    }
    .cx--teal {
        --a1: #14b8a6; --a1-hi: #2dd4bf; --a1-pale: #99f6e4; --a1-rgb: 20, 184, 166;
        --a2: #fbbf24; --a2-hi: #fde68a; --a2-rgb: 251, 191, 36;
        --tint: #042f2e;
        --cta-1: #99f6e4; --cta-2: #2dd4bf; --cta-3: #14b8a6; --on-cta: #021a17;
    }
    /* تم‌های صفحات دیگر سایت (هر صفحه رنگ خودش را دارد) */
    .cx--brand {
        --a1: #3b82f6; --a1-hi: #60a5fa; --a1-pale: #bfdbfe; --a1-rgb: 59, 130, 246;
        --a2: #fbbf24; --a2-hi: #fde68a; --a2-rgb: 251, 191, 36;
        --tint: #0a1a3f;
        --cta-1: #bfdbfe; --cta-2: #60a5fa; --cta-3: #3b82f6; --on-cta: #020b1f;
    }
    .cx--sky {
        --a1: #0ea5e9; --a1-hi: #38bdf8; --a1-pale: #bae6fd; --a1-rgb: 14, 165, 233;
        --a2: #fbbf24; --a2-hi: #fde68a; --a2-rgb: 251, 191, 36;
        --tint: #04233a;
        --cta-1: #bae6fd; --cta-2: #38bdf8; --cta-3: #0ea5e9; --on-cta: #021526;
    }
    .cx--indigo {
        --a1: #6366f1; --a1-hi: #818cf8; --a1-pale: #c7d2fe; --a1-rgb: 99, 102, 241;
        --a2: #22d3ee; --a2-hi: #67e8f9; --a2-rgb: 34, 211, 238;
        --tint: #121540;
        --cta-1: #e0e7ff; --cta-2: #a5b4fc; --cta-3: #818cf8; --on-cta: #0b0b2a;
    }
    .cx--orange {
        --a1: #f97316; --a1-hi: #fb923c; --a1-pale: #fed7aa; --a1-rgb: 249, 115, 22;
        --a2: #22d3ee; --a2-hi: #67e8f9; --a2-rgb: 34, 211, 238;
        --tint: #2b1104;
        --cta-1: #fed7aa; --cta-2: #fb923c; --cta-3: #f97316; --on-cta: #1f0a02;
    }
    .cx--cyan {
        --a1: #06b6d4; --a1-hi: #22d3ee; --a1-pale: #a5f3fc; --a1-rgb: 6, 182, 212;
        --a2: #f472b6; --a2-hi: #f9a8d4; --a2-rgb: 244, 114, 182;
        --tint: #032a33;
        --cta-1: #a5f3fc; --cta-2: #22d3ee; --cta-3: #06b6d4; --on-cta: #021a20;
    }
    .cx--rose {
        --a1: #f43f5e; --a1-hi: #fb7185; --a1-pale: #fecdd3; --a1-rgb: 244, 63, 94;
        --a2: #38bdf8; --a2-hi: #7dd3fc; --a2-rgb: 56, 189, 248;
        --tint: #2a0712;
        --cta-1: #fecdd3; --cta-2: #fb7185; --cta-3: #f43f5e; --on-cta: #2a0510;
    }
    .cx--emerald {
        --a1: #10b981; --a1-hi: #34d399; --a1-pale: #a7f3d0; --a1-rgb: 16, 185, 129;
        --a2: #fbbf24; --a2-hi: #fde68a; --a2-rgb: 251, 191, 36;
        --tint: #022c22;
        --cta-1: #a7f3d0; --cta-2: #34d399; --cta-3: #10b981; --on-cta: #022c1e;
    }
    .cx--lime {
        --a1: #84cc16; --a1-hi: #a3e635; --a1-pale: #d9f99d; --a1-rgb: 132, 204, 22;
        --a2: #22d3ee; --a2-hi: #67e8f9; --a2-rgb: 34, 211, 238;
        --tint: #182a05;
        --cta-1: #ecfccb; --cta-2: #a3e635; --cta-3: #84cc16; --on-cta: #132003;
    }
    .cx--fuchsia {
        --a1: #d946ef; --a1-hi: #e879f9; --a1-pale: #f5d0fe; --a1-rgb: 217, 70, 239;
        --a2: #60a5fa; --a2-hi: #93c5fd; --a2-rgb: 96, 165, 250;
        --tint: #2a0833;
        --cta-1: #f5d0fe; --cta-2: #e879f9; --cta-3: #d946ef; --on-cta: #2a0533;
    }
    .cx--neon {
        --a1: #a855f7; --a1-hi: #c084fc; --a1-pale: #e9d5ff; --a1-rgb: 168, 85, 247;
        --a2: #22d3ee; --a2-hi: #67e8f9; --a2-rgb: 34, 211, 238;
        --tint: #1e0a3c;
        --cta-1: #a5f3fc; --cta-2: #22d3ee; --cta-3: #c084fc; --on-cta: #0a0418;
    }
    /* هیروی کوتاه‌تر برای صفحات فهرست و جزئیات */
    .cx--compact { --plate: min(300px, 70vw); }
    .cx--compact .cx-hero-grid { padding: 2.5rem 3rem; }
    .cx *, .cx *::before, .cx *::after { box-sizing: border-box; }
    .cx svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
    .cx-en { font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; letter-spacing: .02em; }
    /* عبارت انگلیسی داخل متن فارسی نشکند (وگرنه پرانتزها در دو خط جابه‌جا دیده می‌شوند) */
    .cx p .cx-en, .cx li .cx-en { white-space: nowrap; }
    .cx-accent { color: var(--a1-hi); }
    .cx-gold { color: var(--gold); }
    .cx a:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }

    /* ---------- HERO ---------- */
    .cx-hero {
        position: relative;
        margin-top: 1rem;
        border-radius: 32px;
        border: 1px solid var(--line);
        background: radial-gradient(120% 90% at 20% 10%, var(--tint) 0%, var(--bg) 55%);
        overflow: hidden;
        isolation: isolate;
    }
    .cx-hero-bg { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
    .cx-glow { position: absolute; border-radius: 50%; filter: blur(70px); opacity: .55; }
    .cx-glow--a { width: 420px; height: 420px; left: -80px; top: 20%; background: rgba(var(--a1-rgb), .35); animation: cx-drift 14s ease-in-out infinite alternate; }
    .cx-glow--b { width: 360px; height: 360px; right: -60px; top: -80px; background: rgba(var(--a2-rgb), .22); animation: cx-drift 18s ease-in-out infinite alternate-reverse; }
    .cx-stars {
        position: absolute; inset: 0; opacity: .7;
        background-image:
            radial-gradient(1.5px 1.5px at 12% 22%, #fff, transparent),
            radial-gradient(1px 1px at 28% 64%, var(--a1-pale), transparent),
            radial-gradient(1.5px 1.5px at 46% 14%, #fff, transparent),
            radial-gradient(1px 1px at 63% 40%, var(--a2-hi), transparent),
            radial-gradient(1.5px 1.5px at 78% 18%, #fff, transparent),
            radial-gradient(1px 1px at 88% 58%, var(--a1-pale), transparent),
            radial-gradient(1px 1px at 8% 80%, #fff, transparent),
            radial-gradient(1.5px 1.5px at 52% 76%, #fde68a, transparent),
            radial-gradient(1px 1px at 36% 36%, #fff, transparent),
            radial-gradient(1px 1px at 94% 86%, #fff, transparent);
        animation: cx-twinkle 5s ease-in-out infinite alternate;
    }
    .cx-floor {
        position: absolute; left: -50%; right: -50%; bottom: -6%; height: 52%;
        background-image:
            linear-gradient(rgba(var(--a1-rgb), .28) 1px, transparent 1px),
            linear-gradient(90deg, rgba(var(--a1-rgb), .28) 1px, transparent 1px);
        background-size: 46px 46px;
        transform: perspective(420px) rotateX(64deg);
        transform-origin: center top;
        -webkit-mask-image: linear-gradient(to top, #000 15%, transparent 95%);
        mask-image: linear-gradient(to top, #000 15%, transparent 95%);
        animation: cx-floor 2.6s linear infinite;
    }

    .cx-ticker {
        direction: ltr;
        overflow: hidden;
        border-bottom: 1px solid var(--line);
        background: rgba(2, 6, 23, .55);
        -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
        mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
    }
    .cx-ticker-track {
        display: flex; align-items: center; gap: 22px; width: max-content;
        padding: 10px 0;
        font: 600 12px/1 ui-monospace, "SF Mono", Consolas, monospace;
        letter-spacing: .14em; color: var(--a1-hi);
        animation: cx-marquee 38s linear infinite;
    }
    .cx-ticker-track i { width: 5px; height: 5px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 8px var(--gold); }

    .cx-hero-grid {
        display: grid;
        grid-template-columns: 1.05fr 1fr;
        align-items: center;
        gap: 1.5rem;
        padding: 3.5rem 3rem;
    }
    .cx-eyebrow {
        display: inline-flex; align-items: center; gap: .55rem;
        padding: .45rem .9rem; border-radius: 999px;
        border: 1px solid rgba(var(--a1-rgb), .35);
        background: rgba(var(--a1-rgb), .08);
        color: var(--a1-pale); font-size: .85rem; font-weight: 700;
    }
    .cx-eyebrow svg { width: 18px; height: 18px; color: var(--a1-hi); }
    .cx-pill {
        padding: .1rem .55rem; border-radius: 999px; font-size: .72rem; font-weight: 800;
        color: #1c1203; background: linear-gradient(135deg, #fde68a, var(--gold) 50%, var(--gold-2));
    }
    .cx-pill--free { color: #03140a; background: linear-gradient(135deg, #bbf7d0, #4ade80 50%, #22c55e); }
    .cx-title {
        margin: 1.2rem 0 .35rem;
        font-size: clamp(2rem, 4.6vw, 3.4rem);
        font-weight: 900; line-height: 1.35; color: #fff;
    }
    .cx-title--md { font-size: clamp(1.8rem, 3.8vw, 2.8rem); }
    .cx-title-mark {
        display: inline-block;
        background: linear-gradient(100deg, var(--a1-hi) 0%, var(--a1-pale) 30%, var(--a2) 55%, var(--a1-hi) 80%);
        background-size: 220% 100%;
        -webkit-background-clip: text; background-clip: text; color: transparent;
        filter: drop-shadow(0 0 18px rgba(var(--a1-rgb), .45));
        animation: cx-shine 6s linear infinite;
    }
    .cx-subtitle { margin: 0; color: var(--a2); font-size: 1.05rem; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; text-align: right; }
    .cx-tagline { margin: .2rem 0 0; color: var(--a2-hi); font-size: 1.2rem; font-weight: 800; }
    .cx-lead { margin: 1.4rem 0 0; color: var(--body); font-size: 1.15rem; line-height: 2.05; max-width: 34rem; }
    .cx-lead strong { color: #fff; }
    .cx-hero-actions { display: flex; flex-wrap: wrap; gap: .9rem; margin-top: 2rem; }
    .cx-chips { display: flex; flex-wrap: wrap; gap: .75rem; margin: 2rem 0 0; padding: 0; list-style: none; }
    .cx-chips li {
        display: flex; flex-direction: column; gap: .15rem; min-width: 7.5rem;
        padding: .75rem 1rem; border-radius: 16px;
        background: var(--panel); border: 1px solid var(--line);
        backdrop-filter: blur(8px);
    }
    .cx-chips b { font-size: 1.05rem; color: #fff; }
    .cx-chips span { font-size: .8rem; color: var(--muted); }

    /* CTA */
    .cx-cta {
        position: relative; isolation: isolate; overflow: hidden;
        display: inline-flex; align-items: center; justify-content: center; gap: .7rem;
        min-height: 52px; padding: .95rem 1.6rem; border-radius: 999px;
        font-weight: 800; font-size: 1.02rem; color: var(--on-cta); text-decoration: none;
        background: linear-gradient(135deg, var(--cta-1), var(--cta-2) 45%, var(--cta-3));
        box-shadow: 0 14px 34px -10px rgba(var(--a1-rgb), .75), inset 0 1px 0 rgba(255, 255, 255, .45);
        transition: transform .22s ease, box-shadow .22s ease;
        cursor: pointer;
    }
    .cx-cta::after {
        content: ""; position: absolute; inset: 0; z-index: -1;
        background: linear-gradient(105deg, transparent 35%, rgba(255, 255, 255, .55) 50%, transparent 65%);
        transform: translateX(120%);
        animation: cx-sheen 3.6s ease-in-out infinite;
    }
    .cx-cta svg { width: 20px; height: 20px; flex: none; stroke-width: 2.2; transform: scaleX(-1); }
    .cx-cta:hover { transform: translateY(-2px); box-shadow: 0 20px 44px -10px rgba(var(--a1-rgb), .9), inset 0 1px 0 rgba(255, 255, 255, .5); }
    .cx-cta:active { transform: translateY(0) scale(.98); }
    .cx-ghost {
        display: inline-flex; align-items: center; gap: .4rem;
        min-height: 52px; padding: .95rem 1.4rem; border-radius: 999px;
        color: #e2e8f0; font-weight: 700; text-decoration: none;
        border: 1px solid rgba(148, 163, 184, .3); background: rgba(15, 23, 42, .4);
        transition: border-color .2s ease, background-color .2s ease;
    }
    .cx-ghost svg { width: 18px; height: 18px; }
    .cx-ghost:hover { border-color: rgba(var(--a2-rgb), .6); background: rgba(var(--a2-rgb), .08); }

    /* Hero 3D stage (محتوای داخلش اختصاصی هر صفحه است) */
    .cx-hero-visual { display: flex; justify-content: center; }
    .cx-stage {
        position: relative;
        width: calc(var(--plate) * 1.2);
        height: calc(var(--plate) * 1.18);
        perspective: 1100px;
    }
    .cx-tilt {
        position: absolute; inset: 0;
        transform-style: preserve-3d;
        transform: rotateX(calc(var(--py, 0) * -7deg)) rotateY(calc(var(--px, 0) * 12deg));
        transition: transform .5s cubic-bezier(.2, .7, .2, 1);
    }
    .cx-holo-tag {
        position: absolute; left: 50%; top: 2%; z-index: 2;
        display: flex; flex-direction: column; align-items: center; gap: .15rem;
        padding: .6rem 1.1rem; border-radius: 14px;
        transform: translateX(-50%) translateZ(60px);
        background: linear-gradient(180deg, rgba(var(--a2-rgb), .16), rgba(var(--a1-rgb), .06));
        border: 1px solid rgba(var(--a2-rgb), .45);
        box-shadow: 0 0 30px rgba(var(--a2-rgb), .25), inset 0 0 18px rgba(var(--a2-rgb), .15);
        backdrop-filter: blur(6px);
        animation: cx-float 5s ease-in-out infinite;
        white-space: nowrap;
        direction: ltr;
    }
    .cx-holo-tag b { font-size: 1.5rem; font-weight: 800; color: #fff; text-shadow: 0 0 14px rgba(var(--a2-rgb), .8); letter-spacing: .08em; }
    .cx-holo-tag span { font-size: .62rem; color: var(--a2-hi); letter-spacing: .24em; }
    .cx-beam {
        position: absolute; left: calc(50% - 1px); top: 22%; height: 44%; width: 2px;
        background: linear-gradient(to bottom, rgba(var(--a2-rgb), .7), rgba(var(--a1-rgb), 0));
        box-shadow: 0 0 14px rgba(var(--a2-rgb), .6);
        transform: translateZ(20px);
    }

    /* ---------- SECTIONS ---------- */
    .cx-section { margin-top: 6rem; }
    .cx-head { display: flex; align-items: center; gap: 1rem; margin-bottom: 2.25rem; }
    .cx-head h2 { margin: 0; font-size: clamp(1.35rem, 2.6vw, 2rem); font-weight: 900; line-height: 1.6; color: #fff; }
    .cx-head-sub { margin: -1.25rem 0 2rem; color: var(--muted); font-size: 1.02rem; line-height: 2; }
    .cx-icon-badge {
        --ib: var(--a1-hi); --ib-rgb: var(--a1-rgb);
        flex: none; display: grid; place-items: center; width: 52px; height: 52px; border-radius: 16px;
        color: var(--ib);
        background: linear-gradient(145deg, rgba(var(--ib-rgb), .2), rgba(var(--ib-rgb), .04));
        border: 1px solid rgba(var(--ib-rgb), .4);
        box-shadow: 0 0 24px rgba(var(--ib-rgb), .2);
    }
    .cx-icon-badge svg { width: 26px; height: 26px; }
    .cx-icon-badge--a2 { --ib: var(--a2); --ib-rgb: var(--a2-rgb); }
    .cx-icon-badge--gold { --ib: var(--gold); --ib-rgb: var(--gold-rgb); }
    .cx-icon-badge--rose { --ib: var(--rose); --ib-rgb: var(--rose-rgb); }

    /* Story */
    .cx-story-grid { display: grid; grid-template-columns: 1fr 1.05fr; gap: 3rem; align-items: center; }
    .cx-kicker {
        --k: var(--rose); --k-rgb: var(--rose-rgb);
        display: inline-block; margin-bottom: 1rem; padding: .3rem .85rem; border-radius: 999px;
        font-size: .82rem; font-weight: 700; color: var(--k);
        background: rgba(var(--k-rgb), .1); border: 1px solid rgba(var(--k-rgb), .35);
    }
    .cx-kicker--accent { --k: var(--a1-hi); --k-rgb: var(--a1-rgb); }
    .cx-story-copy p { margin: 0 0 1.15rem; color: var(--body); font-size: 1.05rem; line-height: 2.05; }
    .cx-story-copy .cx-p-lg { font-size: 1.22rem; color: #fff; font-weight: 700; line-height: 1.95; }
    .cx-story-copy strong { color: #fff; }
    .cx-danger { background: linear-gradient(transparent 55%, rgba(var(--rose-rgb), .3) 55%); color: #fecdd3; padding: 0 .15rem; font-weight: 700; }
    .cx-story-copy .cx-question {
        padding: 1rem 1.2rem; border-radius: 16px;
        border-right: 3px solid var(--a2);
        background: linear-gradient(270deg, rgba(var(--a2-rgb), .1), transparent);
        color: #f1f5f9; font-weight: 600;
    }
    .cx-story-copy .cx-answer { color: #fff; font-size: 1.12rem; }
    .cx-answer b, .cx-answer strong, .cx-hl { color: var(--a1-hi); }

    .cx-story-visual { perspective: 1200px; }
    .cx-monitor {
        border-radius: 22px; overflow: hidden;
        border: 1px solid rgba(148, 163, 184, .2);
        background: linear-gradient(180deg, #0b1324, #050a17);
        box-shadow: 0 40px 80px -30px rgba(0, 0, 0, .9), 0 0 0 1px rgba(var(--a2-rgb), .06), 0 0 60px -10px rgba(var(--a1-rgb), .25);
        transform: rotateY(14deg) rotateX(6deg);
        transition: transform .6s cubic-bezier(.2, .7, .2, 1);
    }
    .cx-story-visual:hover .cx-monitor { transform: rotateY(4deg) rotateX(2deg); }
    .cx-monitor-bar { direction: ltr; display: flex; align-items: center; gap: 6px; padding: 10px 14px; border-bottom: 1px solid var(--line); }
    .cx-monitor-bar i { width: 10px; height: 10px; border-radius: 50%; background: #334155; }
    .cx-monitor-bar i:nth-child(1) { background: #f87171; }
    .cx-monitor-bar i:nth-child(2) { background: #fbbf24; }
    .cx-monitor-bar i:nth-child(3) { background: #4ade80; }
    .cx-monitor-bar span { margin-left: auto; font-size: .72rem; color: var(--muted); letter-spacing: .12em; }
    /* ترتیب چپ‌به‌راست تا هر برچسب زیر بخش متناظرش در نمودار (که همیشه چپ‌به‌راست است) بیفتد */
    .cx-monitor-legend { direction: ltr; display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem; padding: 12px 16px 14px; border-top: 1px solid var(--line); font-size: .85rem; font-weight: 700; }
    .cx-monitor-legend span { direction: rtl; }
    .cx-monitor-legend .is-red { color: #fda4af; }
    .cx-monitor-legend .is-accent { color: var(--a1-hi); }
    .cx-monitor-legend .is-a2 { color: var(--a2-hi); }
    .cx-monitor-legend .is-gold { color: #fde68a; }
    .cx-chart { display: block; width: 100%; height: auto; }
    .cx-chart text { font: 700 12px ui-monospace, Consolas, monospace; text-anchor: middle; stroke: none; }
    .cx-chart-grid line { stroke: rgba(148, 163, 184, .08); stroke-width: 1; }
    .cx-draw { stroke-dasharray: 1; stroke-dashoffset: 1; }
    .cx-pop { opacity: 0; }
    .is-in .cx-draw { animation: cx-draw var(--d, 1.5s) ease-out var(--t, 0s) forwards; }
    .is-in .cx-pop { animation: cx-fade .6s ease-out var(--t, 0s) forwards; }

    /* Cards */
    .cx-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.4rem; perspective: 1400px; }
    .cx-cards--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .cx-card {
        position: relative; overflow: hidden; height: 100%;
        padding: 1.9rem 1.7rem; border-radius: 24px;
        background: linear-gradient(160deg, rgba(30, 41, 59, .7), rgba(2, 6, 23, .85));
        border: 1px solid var(--line);
        box-shadow: 0 24px 50px -28px rgba(0, 0, 0, .9);
        transform-style: preserve-3d;
        transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
        will-change: transform;
    }
    .cx-card:hover { border-color: rgba(var(--a1-rgb), .4); box-shadow: 0 30px 60px -28px rgba(0, 0, 0, .95), 0 0 40px -12px rgba(var(--a1-rgb), .45); }
    .cx-card h3 { margin: 1.1rem 0 .6rem; font-size: 1.2rem; font-weight: 900; color: #fff; line-height: 1.7; }
    .cx-card p { margin: 0; color: var(--body); line-height: 2; font-size: 1rem; }
    .cx-card-icon {
        --ci: var(--a1-hi); --ci-rgb: var(--a1-rgb);
        display: grid; place-items: center; width: 56px; height: 56px; border-radius: 18px;
        color: var(--ci); background: rgba(var(--ci-rgb), .1); border: 1px solid rgba(var(--ci-rgb), .35);
    }
    .cx-card-icon svg { width: 28px; height: 28px; }
    .cx-card-icon--a2 { --ci: var(--a2-hi); --ci-rgb: var(--a2-rgb); }
    .cx-card-icon--amber { --ci: #fb923c; --ci-rgb: 251, 146, 60; }
    .cx-card-icon--gold { --ci: var(--gold); --ci-rgb: var(--gold-rgb); }
    .cx-card-icon--rose { --ci: var(--rose); --ci-rgb: var(--rose-rgb); }
    .cx-card-glare {
        position: absolute; inset: 0; pointer-events: none; opacity: 0;
        background: radial-gradient(420px circle at var(--gx, 50%) var(--gy, 0%), rgba(255, 255, 255, .12), transparent 45%);
        transition: opacity .3s ease;
    }
    .cx-card:hover .cx-card-glare { opacity: 1; }
    .cx-card--feature {
        border: 1px solid transparent;
        background:
            linear-gradient(160deg, rgba(var(--a1-rgb), .16), rgba(2, 6, 23, .95) 55%) padding-box,
            linear-gradient(135deg, rgba(var(--a1-rgb), .85), rgba(var(--a2-rgb), .5), rgba(var(--a1-rgb), .1)) border-box;
    }
    .cx-card--rose {
        border: 1px solid transparent;
        background:
            linear-gradient(160deg, rgba(var(--rose-rgb), .14), rgba(2, 6, 23, .95) 55%) padding-box,
            linear-gradient(135deg, rgba(var(--rose-rgb), .8), rgba(var(--rose-rgb), .1)) border-box;
    }
    .cx-gauge { position: relative; width: 110px; height: 110px; }
    .cx-gauge svg { width: 100%; height: 100%; transform: rotate(-90deg); }
    .cx-gauge-track { stroke: rgba(148, 163, 184, .15); stroke-width: 9; }
    .cx-gauge-bar {
        stroke: var(--gauge, var(--a1-hi)); stroke-width: 9;
        stroke-dasharray: 326.7; stroke-dashoffset: 326.7px;
        filter: drop-shadow(0 0 6px rgba(var(--gauge-rgb, var(--a1-rgb)), .7));
        transition: stroke-dashoffset 1.8s cubic-bezier(.2, .8, .2, 1) .3s;
    }
    .is-in .cx-gauge-bar { stroke-dashoffset: calc(326.7px * (1 - var(--p, .8))); }
    .cx-gauge--rose { --gauge: var(--rose); --gauge-rgb: var(--rose-rgb); --gauge-text: var(--rose); }
    .cx-gauge-num { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: 1px; }
    .cx-gauge-num b { font-size: 1.85rem; font-weight: 900; color: #fff; }
    .cx-gauge-num span { font-size: 1rem; font-weight: 800; color: var(--gauge-text, var(--a1-hi)); }
    .cx-link { color: var(--gold); font-weight: 700; text-decoration: underline; text-decoration-color: rgba(var(--gold-rgb), .4); text-underline-offset: 6px; }
    .cx-link:hover { text-decoration-color: var(--gold); }

    /* Track (سرفصل‌ها) */
    .cx-track { position: relative; list-style: none; margin: 0; padding: 0; display: grid; gap: 1.1rem; perspective: 1200px; }
    .cx-track::before {
        content: ""; position: absolute; right: 27px; top: 20px; bottom: 20px; width: 2px;
        background: linear-gradient(to bottom, var(--a1-hi), var(--a2), rgba(var(--a2-rgb), 0));
        box-shadow: 0 0 12px rgba(var(--a1-rgb), .5);
    }
    .cx-track > li { position: relative; display: flex; gap: 1.25rem; align-items: flex-start; }
    .cx-node {
        position: relative; z-index: 1; flex: none;
        display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%;
        font-weight: 900; font-size: 1.05rem; color: var(--on-cta);
        background: radial-gradient(circle at 35% 30%, var(--a1-pale), var(--a1) 60%, var(--cta-3));
        box-shadow: 0 0 0 6px rgba(var(--a1-rgb), .14), 0 0 24px rgba(var(--a1-rgb), .6);
    }
    .cx-track-body {
        flex: 1; min-width: 0; padding: 1.15rem 1.4rem; border-radius: 20px;
        background: linear-gradient(270deg, rgba(30, 41, 59, .65), rgba(2, 6, 23, .6));
        border: 1px solid var(--line);
        transition: border-color .25s ease, transform .25s ease;
    }
    .cx-track > li:hover .cx-track-body { border-color: rgba(var(--a2-rgb), .45); transform: translateX(-6px); }
    .cx-track h3 { margin: 0 0 .35rem; font-size: 1.12rem; font-weight: 900; color: #fff; line-height: 1.8; }
    .cx-track p { margin: 0; color: var(--body); line-height: 2; }
    .cx-tag {
        display: inline-block; margin-right: .35rem; padding: .05rem .6rem; border-radius: 8px; vertical-align: middle;
        font-size: .78rem; font-weight: 700; color: var(--a2-hi); background: rgba(var(--a2-rgb), .1); border: 1px solid rgba(var(--a2-rgb), .35);
    }
    .cx-subgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin: .9rem 0 0; padding: 0; list-style: none; }
    .cx-subgrid li {
        padding: .8rem 1rem; border-radius: 14px;
        background: rgba(var(--a1-rgb), .06); border: 1px solid rgba(var(--a1-rgb), .22);
        color: var(--body); line-height: 1.9; font-size: .95rem;
    }
    .cx-subgrid strong { display: block; color: var(--a1-hi); font-weight: 800; }

    /* Checklist (مناسب چه کسانی است / نیست) */
    .cx-checks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 0; padding: 0; list-style: none; }
    .cx-checks > li {
        display: flex; gap: 1rem; align-items: flex-start;
        padding: 1.1rem 1.25rem; border-radius: 18px;
        background: linear-gradient(160deg, rgba(30, 41, 59, .6), rgba(2, 6, 23, .7));
        border: 1px solid var(--line);
        transition: border-color .25s ease, transform .25s ease;
    }
    .cx-checks > li:hover { border-color: rgba(var(--a1-rgb), .4); transform: translateY(-3px); }
    .cx-checks p { margin: 0; color: var(--body); line-height: 2; }
    .cx-checks strong { display: block; color: #fff; font-weight: 800; margin-bottom: .1rem; }
    .cx-check {
        --c: var(--a1-hi); --c-rgb: var(--a1-rgb);
        flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%;
        color: var(--c); background: rgba(var(--c-rgb), .14); border: 1px solid rgba(var(--c-rgb), .45);
        box-shadow: 0 0 16px rgba(var(--c-rgb), .25);
    }
    .cx-check svg { width: 18px; height: 18px; stroke-width: 2.6; }
    .cx-checks--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .cx-checks--no .cx-check { --c: var(--rose); --c-rgb: var(--rose-rgb); }
    .cx-checks--no > li:hover { border-color: rgba(var(--rose-rgb), .4); }

    /* Quote panel */
    .cx-quote {
        position: relative; overflow: hidden;
        padding: 2.5rem 2.5rem 2.25rem; border-radius: 28px;
        background: linear-gradient(160deg, rgba(var(--a1-rgb), .12), rgba(2, 6, 23, .92) 60%);
        border: 1px solid rgba(var(--a1-rgb), .3);
    }
    .cx-quote::before {
        content: "\201D"; position: absolute; left: 1.5rem; top: -1.5rem;
        font: 900 11rem/1 Georgia, serif; color: rgba(var(--a1-rgb), .14);
    }
    .cx-quote p { position: relative; margin: 0 0 1.1rem; color: var(--body); font-size: 1.08rem; line-height: 2.1; }
    .cx-quote p:last-child { margin-bottom: 0; }
    .cx-quote .cx-p-lg { color: #fff; font-size: 1.25rem; font-weight: 800; }
    .cx-quote blockquote {
        position: relative; margin: 1.5rem 0 0; padding: 1.1rem 1.3rem; border-radius: 16px;
        border-right: 4px solid var(--gold); background: rgba(var(--gold-rgb), .07);
        color: #fff; line-height: 2.05;
    }
    .cx-quote blockquote strong { color: var(--gold); }

    /* Value / price */
    .cx-value {
        position: relative; overflow: hidden;
        display: grid; grid-template-columns: 300px 1fr; gap: 2.5rem; align-items: center;
        padding: 3rem; border-radius: 32px;
        border: 1px solid transparent;
        background:
            radial-gradient(80% 120% at 85% 0%, rgba(120, 53, 15, .45), rgba(2, 6, 23, .96) 60%) padding-box,
            linear-gradient(135deg, rgba(var(--gold-rgb), .75), rgba(var(--gold-rgb), .08) 45%, rgba(245, 158, 11, .5)) border-box;
        box-shadow: 0 0 80px -30px rgba(var(--gold-rgb), .45);
    }
    .cx-value-visual { position: relative; height: 260px; perspective: 900px; display: grid; place-items: center; }
    .cx-value-copy h2 { margin: 1rem 0 1rem; font-size: clamp(1.35rem, 2.6vw, 2rem); font-weight: 900; color: #fff; line-height: 1.6; }
    .cx-value-copy p { margin: 0 0 1rem; color: var(--body); font-size: 1.05rem; line-height: 2.05; }
    .cx-value-copy p strong { color: #fff; }
    .cx-value-copy blockquote {
        margin: 1.25rem 0 0; padding: 1rem 1.2rem; border-radius: 16px;
        border-right: 4px solid var(--gold); background: rgba(var(--gold-rgb), .07);
        color: #fff; line-height: 2.05;
    }
    .cx-value-copy blockquote strong { color: var(--gold); }
    .cx-price {
        display: inline-flex; flex-direction: column; gap: .2rem;
        margin: .25rem 0 1.4rem; padding: 1rem 1.5rem; border-radius: 20px;
        background: linear-gradient(135deg, rgba(var(--gold-rgb), .16), rgba(var(--gold-rgb), .03));
        border: 1px dashed rgba(var(--gold-rgb), .55);
        box-shadow: 0 0 40px -12px rgba(var(--gold-rgb), .5);
    }
    .cx-price small { color: #fde68a; font-size: .9rem; font-weight: 700; }
    .cx-price b { font-size: clamp(1.7rem, 3.4vw, 2.4rem); font-weight: 900; color: #fff; line-height: 1.4; text-shadow: 0 0 22px rgba(var(--gold-rgb), .55); }
    .cx-price b span { font-size: .5em; color: var(--gold); margin-right: .35rem; }

    /* Final CTA */
    .cx-final { margin-bottom: 4rem; }
    .cx-final-card {
        position: relative; overflow: hidden;
        display: flex; flex-direction: column; align-items: center; text-align: center;
        padding: 4.5rem 1.5rem; border-radius: 32px;
        background: radial-gradient(70% 90% at 50% 100%, rgba(var(--a1-rgb), .24), rgba(2, 6, 23, .96) 70%);
        border: 1px solid rgba(var(--a1-rgb), .3);
    }
    .cx-final-rings { position: absolute; left: 50%; top: 50%; width: 0; height: 0; pointer-events: none; }
    .cx-final-rings i {
        position: absolute; left: -160px; top: -160px; width: 320px; height: 320px; border-radius: 50%;
        border: 1px solid rgba(var(--a1-rgb), .5);
        animation: cx-ring 4.5s ease-out infinite;
    }
    .cx-final-rings i:nth-child(2) { animation-delay: 1.5s; }
    .cx-final-rings i:nth-child(3) { animation-delay: 3s; }
    .cx-final-title { position: relative; z-index: 1; margin: 0 0 .9rem; max-width: 46rem; font-size: clamp(1.35rem, 2.8vw, 2.1rem); font-weight: 900; line-height: 1.6; color: #fff; }
    .cx-final-text { position: relative; z-index: 1; margin: 0 0 2rem; max-width: 44rem; color: var(--body); font-size: 1.05rem; line-height: 2.05; }
    .cx-cta--xl { position: relative; z-index: 1; gap: 1.1rem; padding: 1.25rem 2.2rem; border-radius: 26px; text-align: right; }
    .cx-cta--xl svg { width: 28px; height: 28px; }
    .cx-cta-text { display: flex; flex-direction: column; gap: .2rem; }
    .cx-cta-main { font-size: 1.22rem; font-weight: 900; }
    .cx-cta-sub { font-size: .95rem; font-weight: 700; opacity: .85; }
    .cx-final-note { position: relative; z-index: 1; margin: 1.3rem 0 0; color: var(--muted); font-size: .9rem; }

    /* ---------- اجزای صفحات دیگر سایت ---------- */
    .cx-panel {
        position: relative; padding: 2rem; border-radius: 28px;
        background: linear-gradient(160deg, rgba(30, 41, 59, .55), rgba(2, 6, 23, .92));
        border: 1px solid var(--line);
        box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .9), 0 0 60px -30px rgba(var(--a1-rgb), .45);
    }
    .cx-panel--accent { border-color: rgba(var(--a1-rgb), .35); }
    .cx-panel--rose { border-color: rgba(var(--rose-rgb), .35); background: linear-gradient(160deg, rgba(var(--rose-rgb), .1), rgba(2, 6, 23, .92) 60%); }
    .cx-panel h3 { margin: 0 0 1rem; font-size: 1.25rem; font-weight: 900; color: #fff; }
    .cx-panel p { margin: 0 0 1rem; color: var(--body); line-height: 2; }
    .cx-panel p:last-child { margin-bottom: 0; }

    /* کارت‌های تصویری (کتاب، استراتژی، مقاله) */
    .cx-media-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.6rem; perspective: 1400px; }
    .cx-media {
        position: relative; display: flex; flex-direction: column; height: 100%; overflow: hidden;
        border-radius: 22px;
        background: linear-gradient(160deg, rgba(30, 41, 59, .72), rgba(2, 6, 23, .92));
        border: 1px solid var(--line);
        box-shadow: 0 24px 50px -28px rgba(0, 0, 0, .9);
        transform-style: preserve-3d;
        transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
    }
    .cx-media:hover { border-color: rgba(var(--a1-rgb), .45); box-shadow: 0 30px 60px -28px rgba(0, 0, 0, .95), 0 0 40px -12px rgba(var(--a1-rgb), .5); }
    .cx-media-img { position: relative; display: block; aspect-ratio: 16 / 11; overflow: hidden; background: #0b1220; }
    .cx-media-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
    .cx-media:hover .cx-media-img img { transform: scale(1.07); }
    .cx-media-img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(2, 6, 23, .75), transparent 55%); pointer-events: none; }
    .cx-media-ph {
        width: 100%; height: 100%; display: grid; place-items: center;
        color: rgba(var(--a1-rgb), .8);
        background: radial-gradient(circle at 50% 40%, rgba(var(--a1-rgb), .22), transparent 65%), #0b1220;
    }
    .cx-media-ph svg { width: 56px; height: 56px; }
    .cx-media-tag {
        position: absolute; top: .9rem; right: .9rem; z-index: 1;
        padding: .25rem .7rem; border-radius: 999px; font-size: .75rem; font-weight: 800;
        color: var(--a1-pale); background: rgba(2, 6, 23, .7); border: 1px solid rgba(var(--a1-rgb), .45);
        backdrop-filter: blur(6px);
    }
    .cx-media-body { display: flex; flex-direction: column; gap: .55rem; flex: 1; padding: 1.25rem 1.35rem 1.35rem; }
    .cx-media h3 { margin: 0; font-size: 1.1rem; font-weight: 900; line-height: 1.75; }
    .cx-media h3 a { color: #fff; text-decoration: none; transition: color .2s ease; }
    .cx-media h3 a:hover { color: var(--a1-hi); }
    .cx-media p { margin: 0; color: var(--body); font-size: .95rem; line-height: 1.95; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
    .cx-media-foot { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-top: auto; padding-top: 1rem; border-top: 1px solid var(--line); }
    .cx-media-meta { font-size: .8rem; color: var(--muted); }
    .cx-btn-sm {
        display: inline-flex; align-items: center; gap: .4rem; flex: none;
        min-height: 40px; padding: .5rem 1.05rem; border-radius: 999px;
        font-size: .88rem; font-weight: 800; color: var(--on-cta); text-decoration: none;
        background: linear-gradient(135deg, var(--cta-1), var(--cta-2) 55%, var(--cta-3));
        box-shadow: 0 10px 24px -10px rgba(var(--a1-rgb), .8);
        transition: transform .2s ease;
    }
    .cx-btn-sm:hover { transform: translateY(-2px); }
    .cx-btn-sm svg { width: 16px; height: 16px; stroke-width: 2.2; }
    .cx-empty { padding: 3rem 1rem; text-align: center; color: var(--muted); border: 1px dashed rgba(148, 163, 184, .3); border-radius: 22px; grid-column: 1 / -1; }

    /* متن غنی (مقاله، توضیح کتاب/استراتژی) — رنگ‌های درون‌خطی ویرایشگر را خنثی می‌کند */
    .cx-prose { color: var(--body); font-size: 1.06rem; line-height: 2.1; overflow-wrap: anywhere; }
    .cx-prose * { color: inherit !important; }
    .cx-prose :is(h1, h2, h3, h4, h5, h6, strong, b) { color: #fff !important; }
    .cx-prose :is(h1, h2, h3, h4, h5, h6) { margin: 2.2rem 0 1rem; font-weight: 900; line-height: 1.7; }
    .cx-prose h1 { font-size: 1.75rem; }
    .cx-prose h2 { font-size: 1.5rem; }
    .cx-prose h3 { font-size: 1.25rem; }
    .cx-prose p { margin: 0 0 1.2rem; }
    .cx-prose a { color: var(--a1-hi) !important; text-decoration: underline; text-underline-offset: 5px; }
    .cx-prose ul, .cx-prose ol { margin: 0 0 1.2rem; padding-right: 1.6rem; }
    .cx-prose ul { list-style: disc; }
    .cx-prose ol { list-style: decimal; }
    .cx-prose li { margin-bottom: .5rem; }
    .cx-prose li::marker { color: var(--a1-hi); }
    .cx-prose img { max-width: 100%; height: auto; border-radius: 16px; margin: 1rem 0; }
    .cx-prose blockquote { margin: 1.5rem 0; padding: 1rem 1.3rem; border-right: 4px solid var(--a1); border-radius: 14px; background: rgba(var(--a1-rgb), .07); }
    .cx-prose table { width: 100%; border-collapse: collapse; margin: 1.2rem 0; font-size: .95rem; }
    .cx-prose th, .cx-prose td { padding: .6rem .8rem; border: 1px solid var(--line); }
    .cx-prose th { background: rgba(var(--a1-rgb), .1); }
    .cx-prose code { padding: .1rem .4rem; border-radius: 6px; background: rgba(148, 163, 184, .15); font-size: .9em; }

    /* فرم‌ها */
    .cx-form { display: grid; gap: 1.1rem; }
    .cx-field label, .cx-label { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin-bottom: .5rem; font-size: .9rem; font-weight: 800; color: var(--body); }
    .cx-input {
        width: 100%; min-height: 52px; padding: .8rem 1rem; border-radius: 14px;
        font: inherit; font-size: 1rem; color: #fff;
        background: rgba(2, 6, 23, .75); border: 1px solid rgba(148, 163, 184, .25);
        outline: none; transition: border-color .2s ease, box-shadow .2s ease;
    }
    .cx-input:focus { border-color: var(--a1-hi); box-shadow: 0 0 0 4px rgba(var(--a1-rgb), .18); }
    .cx-input::placeholder { color: #64748b; }
    select.cx-input option { background: #0b1220; color: #fff; }
    .cx-seg { display: inline-flex; padding: 3px; border-radius: 11px; background: rgba(2, 6, 23, .75); border: 1px solid var(--line); }
    .cx-seg button { padding: .3rem .75rem; border: 0; border-radius: 8px; background: none; color: var(--muted); font: inherit; font-size: .8rem; font-weight: 800; cursor: pointer; transition: color .2s ease, background .2s ease; }
    .cx-seg button.is-on { color: var(--on-cta); background: linear-gradient(135deg, var(--cta-1), var(--cta-2)); }
    .cx-submit {
        width: 100%; min-height: 56px; border: 0; border-radius: 16px; cursor: pointer;
        font: inherit; font-size: 1.08rem; font-weight: 900; color: var(--on-cta);
        background: linear-gradient(135deg, var(--cta-1), var(--cta-2) 50%, var(--cta-3));
        box-shadow: 0 16px 36px -12px rgba(var(--a1-rgb), .8);
        transition: transform .2s ease, box-shadow .2s ease;
    }
    .cx-submit:hover { transform: translateY(-2px); }
    .cx-submit:active { transform: translateY(0) scale(.99); }
    .cx button:focus-visible, .cx .cx-input:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }

    /* صفحه‌بندی */
    .cx-pages { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; margin-top: 3rem; }
    .cx-pages a, .cx-pages span {
        display: grid; place-items: center; min-width: 46px; height: 46px; padding: 0 .6rem; border-radius: 13px;
        font-weight: 800; color: var(--body); text-decoration: none;
        background: rgba(15, 23, 42, .6); border: 1px solid var(--line);
        transition: border-color .2s ease, color .2s ease;
    }
    .cx-pages a:hover { border-color: rgba(var(--a1-rgb), .6); color: #fff; }
    .cx-pages .is-current { color: var(--on-cta); border-color: transparent; background: linear-gradient(135deg, var(--cta-1), var(--cta-2)); }
    .cx-pages svg { width: 18px; height: 18px; }

    /* Mobile dock */
    .cx-dock {
        position: fixed; left: 0; right: 0; bottom: 0; z-index: 20;
        padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
        background: linear-gradient(to top, rgba(2, 6, 23, .96) 60%, rgba(2, 6, 23, 0));
        transform: translateY(120%);
        visibility: hidden;
        transition: transform .35s cubic-bezier(.2, .7, .2, 1), visibility 0s linear .35s;
        display: none;
    }
    .cx-dock.is-shown { transform: none; visibility: visible; transition: transform .35s cubic-bezier(.2, .7, .2, 1), visibility 0s; }
    .cx-cta--dock { width: 100%; }

    /* Reveal */
    .cx-js .cx-reveal { opacity: 0; transform: translateY(34px) rotateX(8deg); transition: opacity .8s ease, transform .9s cubic-bezier(.2, .7, .2, 1); }
    .cx-js .cx-track > .cx-reveal { transform: perspective(900px) rotateY(-24deg) translateX(-40px); }
    .cx-js .cx-reveal.is-in { opacity: 1; transform: none; }
    .cx-cards > .cx-reveal:nth-child(2), .cx-checks > .cx-reveal:nth-child(2) { transition-delay: .08s; }
    .cx-cards > .cx-reveal:nth-child(3), .cx-checks > .cx-reveal:nth-child(3) { transition-delay: .16s; }
    .cx-cards > .cx-reveal:nth-child(4), .cx-checks > .cx-reveal:nth-child(4) { transition-delay: .24s; }
    .cx-cards > .cx-reveal:nth-child(5), .cx-checks > .cx-reveal:nth-child(5) { transition-delay: .32s; }
    .cx-cards > .cx-reveal:nth-child(6) { transition-delay: .4s; }

    .is-off, .is-off *, .is-off *::before, .is-off *::after { animation-play-state: paused !important; }

    @keyframes cx-spin { to { transform: rotate(360deg); } }
    @keyframes cx-float { 0%, 100% { transform: translateX(-50%) translateZ(60px) translateY(0); } 50% { transform: translateX(-50%) translateZ(60px) translateY(-10px); } }
    @keyframes cx-floor { to { background-position: 0 46px, 0 0; } }
    @keyframes cx-marquee { to { transform: translateX(-50%); } }
    @keyframes cx-drift { to { transform: translate(60px, -40px) scale(1.15); } }
    @keyframes cx-twinkle { from { opacity: .35; } to { opacity: .85; } }
    @keyframes cx-shine { to { background-position: -220% 0; } }
    @keyframes cx-sheen { 0%, 55% { transform: translateX(120%); } 100% { transform: translateX(-120%); } }
    @keyframes cx-draw { to { stroke-dashoffset: 0; } }
    @keyframes cx-fade { to { opacity: 1; } }
    @keyframes cx-ring { from { transform: scale(.35); opacity: .9; } to { transform: scale(2.2); opacity: 0; } }

    @media (max-width: 1023px) {
        .cx-hero-grid { grid-template-columns: 1fr; padding: 2rem 1.5rem 2.5rem; text-align: center; }
        .cx-hero-visual { order: -1; }
        .cx-subtitle { text-align: center; }
        .cx-lead { margin-inline: auto; }
        .cx-hero-actions, .cx-chips { justify-content: center; }
        .cx-story-grid { grid-template-columns: 1fr; gap: 2.25rem; }
        .cx-monitor { transform: rotateY(0) rotateX(8deg); }
        .cx-value { grid-template-columns: 1fr; padding: 2.25rem 1.5rem; text-align: center; }
        .cx-value .cx-icon-badge { margin: 0 auto; }
        .cx-cards--3, .cx-checks--3, .cx-media-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .cx--compact .cx-hero-grid { padding: 2rem 1.5rem 2.5rem; }
        .cx-dock { display: block; }
        .cx-final { margin-bottom: 6rem; }
    }
    @media (max-width: 767px) {
        .cx { --plate: min(360px, 60vw); }
        .cx-section { margin-top: 4rem; }
        .cx-cards, .cx-cards--3, .cx-checks, .cx-checks--3, .cx-subgrid, .cx-media-grid { grid-template-columns: 1fr; }
        .cx-panel { padding: 1.5rem 1.2rem; border-radius: 22px; }
        .cx-head { align-items: flex-start; }
        .cx-head h2 { font-size: 1.3rem; }
        .cx-head-sub { margin-top: -1rem; }
        .cx-lead { font-size: 1.05rem; }
        .cx-chips li { min-width: 0; flex: 1 1 30%; padding: .65rem .6rem; }
        .cx-chips b { font-size: .95rem; }
        .cx-card { padding: 1.5rem 1.3rem; }
        .cx-track::before { right: 21px; }
        .cx-node { width: 44px; height: 44px; font-size: .92rem; }
        .cx-track > li { gap: .85rem; }
        .cx-track-body { padding: 1rem 1.1rem; }
        .cx-quote { padding: 2rem 1.3rem 1.6rem; }
        .cx-value-visual { height: 220px; }
        .cx-final-card { padding: 3.5rem 1.1rem; }
        .cx-cta--xl { width: 100%; gap: .8rem; padding: 1.1rem 1.1rem; }
        .cx-cta--xl svg { width: 22px; height: 22px; }
        .cx-cta-main { font-size: .98rem; }
        .cx-cta-sub { font-size: .85rem; }
        .cx-hero-actions .cx-cta, .cx-hero-actions .cx-ghost { flex: 1 1 100%; justify-content: center; }
    }
    @media (prefers-reduced-motion: reduce) {
        .cx *, .cx *::before, .cx *::after { animation: none !important; transition: none !important; }
        .cx-js .cx-reveal { opacity: 1; transform: none; }
        .cx-draw { stroke-dashoffset: 0; }
        .cx-pop { opacity: 1; }
        .cx-gauge-bar { stroke-dashoffset: calc(326.7px * (1 - var(--p, .8))); }
    }
