/* ============================================================
   DISIPHEE — Brand Roadmap
   متغیرها از style.css می‌آیند.

   یادداشت برند: مراحل با «تیک سبز» علامت نمی‌خورند — سبز در پالت
   دیزیفی وجود ندارد. تکمیل‌شده = زرد پر، در جریان = تیره،
   قفل = خاکستری کم‌رنگ. سه حالت، سه رنگ پالت.
   ============================================================ */

.rm-sec, .rm-hero, .rm-cta, .rm-crumb{ box-sizing:border-box; }
.rm-sec *, .rm-hero *, .rm-cta *{ box-sizing:border-box; }

.rm-rise{
  opacity:0; transform:translateY(18px);
  transition:opacity .55s ease, transform .55s ease;
}
.rm-rise.is-in{ opacity:1; transform:none; }

/* ---------- مسیر ناوبری ---------- */
.rm-crumb{ background:var(--white); border-bottom:1px solid var(--stroke); padding:14px var(--dzf-gutter); }
.rm-crumb__inner{
  max-width:var(--dzf-container); margin:0 auto;
  display:flex; align-items:center; flex-wrap:wrap; gap:8px;
  font-size:13px; color:var(--dzf-muted-2);
}
.rm-crumb a{ color:var(--dzf-muted); }
.rm-crumb a:hover{ color:var(--primary); }
.rm-crumb b{ color:var(--primary); font-weight:600; unicode-bidi:plaintext; }

/* ---------- چیپ ---------- */
.rm-chip{
  display:inline-block; margin-bottom:12px;
  padding:7px 16px; border-radius:999px;
  border:1px solid var(--stroke);
  font-size:12px; font-weight:700; color:var(--primary);
  unicode-bidi:plaintext;
}
.rm-chip--accent{ background:var(--accent); border-color:var(--accent); }

/* ---------- نوار پیشرفت مشترک ---------- */
.rm-bar{ display:block; height:10px; border-radius:999px; background:var(--bg); overflow:hidden; }
.rm-bar i{
  display:block; height:100%; width:0; border-radius:999px; background:var(--accent);
  transition:width 1.3s cubic-bezier(.22,.8,.28,1);
}
.rm-bar--lg{ height:12px; }

/* ============================================================
   هرو + جایگاه فعلی
   ============================================================ */
.rm-hero{
  background:var(--white);
  padding:var(--dzf-space-xxl) var(--dzf-gutter);
  border-bottom:1px solid var(--stroke);
}
.rm-hero__inner{
  max-width:var(--dzf-container); margin:0 auto;
  display:grid; grid-template-columns:1.1fr .9fr;
  gap:var(--dzf-space-xl); align-items:center;
}
.rm-hero__t{ margin:0 0 var(--dzf-space-sm); font-weight:800; color:var(--primary); }
.rm-hero__t b{ display:block; font-size:clamp(1.6rem,3.4vw,2.5rem); line-height:1.3; unicode-bidi:plaintext; }
.rm-hero__t span{
  display:block; margin-top:6px;
  font-size:clamp(1rem,1.7vw,1.3rem); font-weight:600; line-height:1.6; color:var(--dzf-muted);
}
.rm-hero__l{ margin:0 0 var(--dzf-space-md); max-width:58ch; font-size:15px; line-height:2; color:var(--dzf-muted); }
.rm-hero__btns{ display:flex; flex-wrap:wrap; gap:12px; }

.rm-pos{ background:var(--primary); border-radius:24px; padding:var(--dzf-space-md); }
.rm-pos__k{ display:block; font-size:12px; color:var(--bg); opacity:.55; unicode-bidi:plaintext; }
.rm-pos__now{
  display:flex; align-items:center; gap:14px;
  margin:var(--dzf-space-sm) 0;
  padding-bottom:var(--dzf-space-sm);
  border-bottom:1px solid rgba(226,227,231,.14);
}
.rm-pos__ico{
  display:flex; align-items:center; justify-content:center;
  width:48px; height:48px; flex-shrink:0;
  border-radius:16px; background:var(--accent); color:var(--primary);
}
.rm-pos__ico svg{ width:23px; height:23px; }
/* این دو قانون عمداً به div داخلی محدودند. قبلاً `.rm-pos__now span` بودند
   و چون .rm-pos__ico هم یک span است، با ویژگی بالاتر رنگ و opacity آن را
   بازنویسی می‌کردند: آیکون به‌جای تیره روی زرد، خاکستریِ ۵۵٪ می‌شد و
   display:block هم مرکزچینی svg را از بین می‌برد — همان لکه‌ی زیتونی. */
.rm-pos__now > div > span{ display:block; font-size:11.5px; color:var(--bg); opacity:.55; }
.rm-pos__now > div > strong{ display:block; margin-top:2px; font-size:1.15rem; color:var(--white); }

.rm-pos__progr{ display:flex; align-items:baseline; justify-content:space-between; margin-bottom:10px; }
.rm-pos__progr span{ font-size:11.5px; color:var(--bg); opacity:.55; unicode-bidi:plaintext; }
.rm-pos__progr b{ font-size:1.6rem; font-weight:800; color:var(--accent); }
.rm-pos__progr b i{ font-style:normal; }
.rm-pos__prog .rm-bar{ background:rgba(226,227,231,.14); }

.rm-pos__next{
  margin-top:var(--dzf-space-md); padding-top:var(--dzf-space-sm);
  border-top:1px solid rgba(226,227,231,.14);
}
.rm-pos__next span{ display:block; font-size:11.5px; color:var(--bg); opacity:.55; }
.rm-pos__next strong{ display:block; margin-top:3px; font-size:1.05rem; color:var(--accent); unicode-bidi:plaintext; }

/* ============================================================
   سکشن پایه
   ============================================================ */
.rm-sec{ padding:var(--dzf-space-xxl) var(--dzf-gutter); }
.rm-sec__inner{ max-width:var(--dzf-container); margin:0 auto; }
.rm-sec__head{ max-width:72ch; margin-bottom:var(--dzf-space-xl); }
.rm-sec__head h2{
  margin:0 0 12px; font-size:clamp(1.3rem,2.6vw,1.9rem);
  font-weight:800; line-height:1.5; color:var(--primary); text-wrap:balance;
}
.rm-sec__head h2 b{ color:var(--primary); unicode-bidi:plaintext; }
.rm-sec__head p{ margin:0; font-size:15px; line-height:2; color:var(--dzf-muted); }
.rm-sec__head--light h2{ color:var(--white); }
.rm-sec__head--light p{ color:var(--bg); opacity:.72; }

/* ============================================================
   نقشه‌ی سفر
   ============================================================ */
.rm-journey-sec{ background:var(--white); }
.rm-map{
  display:grid; grid-template-columns:repeat(5, minmax(0,1fr));
  gap:var(--dzf-space-md) 0;
  margin:0; padding:0; list-style:none;
}
.rm-node{ position:relative; padding-top:var(--dzf-space-md); }

/* ریل مسیر: خط پشت نقطه‌ها، از راست به چپ در هر ردیف */
.rm-node::before{
  content:""; position:absolute; top:20px; height:2px;
  right:50%; left:-50%;
  background:var(--stroke);
}
/* هر خط از مرکز یک گره تا مرکز گره‌ی بعدی کشیده می‌شود. پس گره‌ی
   آخرِ هر ردیف باید در لبه بریده شود، نه گره‌ی اول. قبلاً first-child
   مخفی می‌شد و بین مرحله‌ی ۱ و ۲ یک شکاف می‌ماند. 5n و last-child
   یعنی با کم‌وزیاد شدن مراحل، دیگر لازم نیست این خط دستی عوض شود. */
.rm-node:nth-child(5n)::before,
.rm-node:last-child::before{ left:0; }
/* بخش طی‌شده‌ی مسیر، زرد */
.rm-node.is-done::before,
.rm-node.is-now::before{ background:var(--accent); }

.rm-node__btn{
  position:relative; z-index:2;
  display:flex; flex-direction:column; align-items:center; gap:8px;
  width:100%; padding:0 8px;
  background:transparent; border:0; cursor:pointer;
  font-family:var(--dzf-font);
}
.rm-node__dot{
  display:flex; align-items:center; justify-content:center;
  width:42px; height:42px; border-radius:999px;
  background:var(--white);
  border:2px solid var(--stroke);
  color:var(--dzf-muted-3);
  transition:transform .3s cubic-bezier(.22,.8,.28,1), background-color .3s ease,
             border-color .3s ease, color .3s ease;
}
.rm-node__dot svg{ width:20px; height:20px; }
.rm-node__dot b{ font-size:14px; font-weight:800; }
.rm-node.is-done .rm-node__dot{ background:var(--accent); border-color:var(--accent); color:var(--primary); }
.rm-node.is-now  .rm-node__dot{ background:var(--primary); border-color:var(--primary); color:var(--white); }
.rm-node.is-lock .rm-node__dot{ background:var(--bg); border-color:var(--stroke); }

/* نبض ملایم روی مرحله‌ی جاری — بدون درخشش، فقط مقیاس */
.rm-node.is-now .rm-node__dot{ animation:rm-pulse 2.6s ease-in-out infinite; }
@keyframes rm-pulse{
  0%,100%{ transform:scale(1); }
  50%{ transform:scale(1.12); }
}

.rm-node__btn strong{
  font-size:13.5px; color:var(--primary); text-align:center;
  unicode-bidi:plaintext;
}
.rm-node__fa{ font-size:11.5px; color:var(--dzf-muted-2); text-align:center; }
.rm-node.is-lock strong{ color:var(--dzf-muted-2); }
.rm-node.is-lock .rm-node__fa{ color:var(--dzf-muted-3); }
.rm-node__btn:hover .rm-node__dot{ transform:scale(1.12); }

/* پیش‌نمایش هاور */
.rm-tip{
  position:absolute; z-index:6; top:calc(100% + 8px);
  left:50%; transform:translate(-50%, 6px);
  width:210px;
  display:flex; flex-direction:column; gap:7px;
  padding:14px 16px; border-radius:16px;
  background:var(--primary);
  opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity .22s ease, transform .22s ease, visibility .22s;
}
.rm-node:hover .rm-tip,
.rm-node:focus-within .rm-tip,
/* is-open از جاوااسکریپت می‌آید — روی لمس که hover وجود ندارد */
.rm-node.is-open .rm-tip{ opacity:1; visibility:visible; transform:translate(-50%, 0); }
.rm-tip div{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.rm-tip span{ font-size:11.5px; color:var(--bg); opacity:.55; }
.rm-tip b{ font-size:12px; font-weight:700; color:var(--white); unicode-bidi:plaintext; }

/* ============================================================
   مرحله‌ی بعدی پیشنهادی
   ============================================================ */
.rm-next-sec{ background:var(--white); }
.rm-next{
  display:grid; grid-template-columns:1.4fr .6fr;
  gap:var(--dzf-space-lg); align-items:center;
  border:1px solid var(--stroke);
  border-inline-start:4px solid var(--accent);
  border-radius:24px;
  padding:var(--dzf-space-lg);
}
.rm-next__txt h2{
  margin:0 0 12px; font-size:clamp(1.3rem,2.6vw,1.85rem);
  font-weight:800; color:var(--primary);
}
.rm-next__txt h2 b{ color:var(--primary); unicode-bidi:plaintext; }
.rm-next__txt p{ margin:0 0 var(--dzf-space-md); max-width:56ch; font-size:15px; line-height:2; color:var(--dzf-muted); }
.rm-next__gain{
  display:inline-block; padding:2px 10px; border-radius:999px;
  background:var(--accent); color:var(--primary); font-weight:800;
}
.rm-next__btn{
  padding:12px 28px; border-radius:999px; cursor:pointer;
  background:var(--primary); color:var(--bg);
  border:1.5px solid var(--primary);
  font-family:var(--dzf-font); font-size:14px; font-weight:700;
  transition:background-color .22s ease, color .22s ease, border-color .22s ease, transform .22s ease;
}
.rm-next__btn:hover{
  background:var(--accent); color:var(--primary); border-color:var(--accent);
  transform:translateY(-3px);
}
.rm-next__hint{ display:block; margin-top:10px; font-size:12px; color:var(--dzf-muted-3); }

.rm-next__meter{ background:var(--primary); border-radius:20px; padding:var(--dzf-space-md); text-align:center; }
.rm-next__meter > span:first-child{ display:block; font-size:11.5px; color:var(--bg); opacity:.55; unicode-bidi:plaintext; }
.rm-next__meter b{ display:block; margin:6px 0 12px; font-size:2.4rem; font-weight:800; color:var(--accent); }
.rm-next__meter b i{ font-style:normal; }
.rm-next__meter .rm-bar{ background:rgba(226,227,231,.14); }
.rm-next__meterk{ display:block; margin-top:10px; font-size:11.5px; color:var(--bg); opacity:.55; }
.rm-next.is-done .rm-next__meterk{ color:var(--accent); opacity:1; font-weight:700; }

/* ============================================================
   مسیرهای صنفی
   ============================================================ */
.rm-tracks-sec{ background:var(--primary); }
.rm-tracks__tabs{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:var(--dzf-space-md); }
.rm-tracks__tab{
  padding:9px 20px; border-radius:999px; cursor:pointer;
  background:transparent; border:1.5px solid rgba(226,227,231,.3);
  font-family:var(--dzf-font); font-size:13px; font-weight:600; color:var(--bg);
  transition:background-color .22s ease, color .22s ease, border-color .22s ease;
}
.rm-tracks__tab.is-on{ background:var(--accent); border-color:var(--accent); color:var(--primary); }

.rm-tracks__path{
  display:flex; flex-wrap:wrap; align-items:center; gap:10px;
  margin:0; padding:0; list-style:none;
}
.rm-tracks__path[hidden]{ display:none; }
.rm-tracks__path li{
  position:relative;
  padding:11px 20px; border-radius:999px;
  background:rgba(226,227,231,.08);
  border:1px solid rgba(226,227,231,.14);
  font-size:13px; color:var(--bg);
  opacity:0; transform:translateY(8px);
  animation:rm-pop .45s ease forwards;
  animation-delay:var(--d, 0ms);
}
.rm-tracks__path li:first-child{
  background:var(--accent); border-color:var(--accent); color:var(--primary); font-weight:700;
}
@keyframes rm-pop{ to{ opacity:1; transform:none; } }

/* ============================================================
   AI Route
   ============================================================ */
.rm-route-sec{ background:var(--white); }
.rm-route__opts{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:var(--dzf-space-md); }
.rm-route__opt{
  padding:10px 20px; border-radius:999px; cursor:pointer;
  background:transparent; border:1.5px solid var(--stroke);
  font-family:var(--dzf-font); font-size:13.5px; font-weight:600; color:var(--dzf-muted);
  transition:background-color .22s ease, color .22s ease, border-color .22s ease;
}
.rm-route__opt.is-on{ background:var(--primary); border-color:var(--primary); color:var(--bg); }

.rm-route__out{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr));
  gap:var(--dzf-space-sm);
  margin:0; padding:0; list-style:none;
}
.rm-route__out[hidden]{ display:none; }
.rm-route__out li{
  display:flex; align-items:flex-start; gap:14px;
  border:1px solid var(--stroke); border-radius:20px;
  padding:var(--dzf-space-md);
  opacity:0; transform:translateY(10px);
  animation:rm-pop .45s ease forwards;
  animation-delay:var(--d, 0ms);
}
.rm-route__n{
  display:flex; align-items:center; justify-content:center;
  width:32px; height:32px; flex-shrink:0; border-radius:999px;
  border:1.5px solid var(--accent); color:var(--primary);
  font-size:13px; font-weight:700;
  /* line-height:1 تا رقم فارسی دقیقاً وسط دایره بنشیند؛ ارتفاع خطِ
     ارث‌رسیده از بدنه، عدد را چند پیکسل پایین می‌برد. */
  line-height:1; margin-top:1px;
}
/* این دو قانون به div داخلی محدودند. قبلاً `.rm-route__out span` بودند و
   چون .rm-route__n هم یک span است، با ویژگی بالاتر رویش می‌نشستند:
   display:flex به block تبدیل می‌شد و مرکزچینی عدد از بین می‌رفت،
   line-height:1.85 عدد را از وسط دایره پایین می‌انداخت، و رنگ از تیره
   به خاکستری کم‌رنگ می‌رفت. همان اتفاقی که برای آیکون هرو افتاده بود. */
.rm-route__out li > div > b{ display:block; font-size:14.5px; color:var(--primary); }
.rm-route__out li > div > span{ display:block; margin-top:5px; font-size:12.5px; line-height:1.85; color:var(--dzf-muted-2); }
.rm-route__note{ margin:var(--dzf-space-md) 0 0; font-size:13px; color:var(--dzf-muted-2); }

/* ============================================================
   تاریخچه‌ی رشد
   ============================================================ */
.rm-tl{
  display:grid; grid-template-columns:repeat(5, minmax(0,1fr));
  gap:var(--dzf-space-sm);
  margin:0; padding:var(--dzf-space-md) 0 0; list-style:none; position:relative;
}
.rm-tl::before{
  content:""; position:absolute; top:5px; right:0; left:0; height:1px; background:var(--stroke);
}
.rm-tl li{ position:relative; padding-top:var(--dzf-space-md); }
.rm-tl__dot{
  position:absolute; top:0; inset-inline-start:0;
  width:11px; height:11px; border-radius:999px;
  background:var(--white); border:2px solid var(--dzf-muted-3);
}
.rm-tl li.is-now .rm-tl__dot{
  background:var(--accent); border-color:var(--accent);
  animation:rm-pulse 2.6s ease-in-out infinite;
}
.rm-tl__mo{ display:block; font-size:11px; font-weight:700; color:var(--dzf-muted-3); }
.rm-tl b{ display:block; margin-top:4px; font-size:14px; color:var(--primary); unicode-bidi:plaintext; }
.rm-tl p{ margin:6px 0 0; font-size:12.5px; line-height:1.8; color:var(--dzf-muted-2); }

/* ============================================================
   ماژول‌های متصل + CTA
   ============================================================ */
.rm-chain-sec{ background:var(--white); }
.rm-chain{
  display:grid; grid-template-columns:repeat(5, minmax(0,1fr));
  gap:var(--dzf-space-sm); margin:0; padding:0; list-style:none;
}
.rm-chain__c{
  display:block; height:100%;
  background:var(--white); border:1px solid var(--stroke);
  border-radius:20px; padding:var(--dzf-space-md);
  transition:border-color .22s ease, opacity .22s ease;
}
.rm-chain__c:hover{ border-color:var(--primary); }
.rm-chain__c.is-here{ background:var(--primary); border-color:var(--primary); }
.rm-chain.is-hot li:not(.is-lit) .rm-chain__c{ opacity:.42; }
.rm-chain li.is-lit .rm-chain__c{ border-color:var(--accent); }
.rm-chain__n{
  display:flex; align-items:center; justify-content:center;
  width:32px; height:32px; margin-bottom:12px;
  border-radius:999px; background:var(--bg); color:var(--primary);
  font-size:13px; font-weight:700;
}
.rm-chain__c.is-here .rm-chain__n{ background:var(--accent); }
.rm-chain__c strong{ display:block; font-size:14px; color:var(--primary); unicode-bidi:plaintext; }
.rm-chain__fa{ display:block; margin-top:2px; font-size:12px; color:var(--dzf-muted-2); }
.rm-chain__c.is-here strong{ color:var(--white); }
.rm-chain__c.is-here .rm-chain__fa{ color:var(--bg); opacity:.6; }
.rm-chain__flag{
  display:inline-block; margin-top:10px; font-style:normal;
  padding:4px 10px; border-radius:999px;
  background:var(--accent); color:var(--primary);
  font-size:10.5px; font-weight:700;
}

.rm-cta{ background:var(--primary); padding:var(--dzf-space-xxl) var(--dzf-gutter); text-align:center; }
.rm-cta__inner{ max-width:760px; margin:0 auto; }
.rm-cta h2{
  margin:0 0 var(--dzf-space-sm);
  font-size:clamp(1.4rem,2.8vw,2.1rem); font-weight:800; line-height:1.5;
  color:var(--white); text-wrap:balance;
}
.rm-cta p{ margin:0 auto var(--dzf-space-md); max-width:60ch; font-size:15px; line-height:2; color:var(--bg); opacity:.72; }
.rm-cta__btns{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }
.rm-cta .dzf-hbtn--solid{
  background:var(--accent) !important; color:var(--primary) !important; border-color:var(--accent) !important;
}
.rm-cta .dzf-hbtn--solid:hover{ background:var(--white) !important; border-color:var(--white) !important; }
.rm-cta .dzf-hbtn--ghost{ color:var(--bg) !important; border-color:rgba(226,227,231,.35) !important; }
/* ویژگی عمداً دوکلاسه است تا از `.rm-cta p` بالاتر بنشیند. قبلاً فقط
   margin با !important نجات پیدا کرده بود و font-size همچنان ۱۵px
   می‌ماند — یعنی خط پایانی هم‌اندازه‌ی متن اصلی دیده می‌شد. */
.rm-cta .rm-cta__sub{ margin:var(--dzf-space-md) 0 0; font-size:13.5px; opacity:.6; }
.rm-cta .rm-cta__sub a{ color:var(--accent); font-weight:600; }

/* ============================================================
   واکنش‌گرایی
   ============================================================ */
@media (max-width:1100px){
  .rm-hero__inner{ grid-template-columns:1fr; gap:var(--dzf-space-lg); }
  .rm-next{ grid-template-columns:1fr; }
  .rm-route__out{ grid-template-columns:1fr; }
  .rm-chain{ grid-template-columns:repeat(3, minmax(0,1fr)); }
  .rm-tl{ grid-template-columns:repeat(3, minmax(0,1fr)); row-gap:var(--dzf-space-lg); }
  .rm-tl::before{ display:none; }
}
@media (max-width:860px){
  .rm-sec, .rm-hero, .rm-cta{ padding-top:var(--dzf-space-xl); padding-bottom:var(--dzf-space-xl); }
  /* نقشه به سه ستون می‌رود؛ ریل افقی دیگر معنا ندارد */
  .rm-map{ grid-template-columns:repeat(3, minmax(0,1fr)); gap:var(--dzf-space-lg) 0; }
  .rm-node::before{ display:none; }
  .rm-tip{ width:180px; }
}
@media (max-width:560px){
  .rm-map{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .rm-chain, .rm-tl{ grid-template-columns:1fr; }
  .rm-next__btn{ width:100%; }
  .rm-tip{ width:160px; }
}

/* ============================================================
   احترام به prefers-reduced-motion
   ============================================================ */
@media (prefers-reduced-motion: reduce){
  .rm-rise{ opacity:1 !important; transform:none !important; transition:none !important; }
  .rm-node.is-now .rm-node__dot,
  .rm-tl li.is-now .rm-tl__dot{ animation:none !important; }
  .rm-tracks__path li,
  .rm-route__out li{ animation:none !important; opacity:1 !important; transform:none !important; }
  .rm-bar i, .rm-node__dot, .rm-tip{ transition:none !important; }
  .rm-next__btn:hover{ transform:none; }
}


/* ============================================================
   Brand Pulse — جریان اطلاعات
   الگو و اندازه‌ها عمداً همان bb-pulse در Brand Book است تا
   کاربر بین صفحات پلتفرم یک زبان بصری واحد ببیند.
   ============================================================ */
.rm-pulse{ background:var(--primary); padding:var(--dzf-space-md) var(--dzf-gutter); }
.rm-pulse__inner{ max-width:var(--dzf-container); margin:0 auto; }
.rm-pulse__flow{
  display:grid; grid-template-columns:repeat(4, minmax(0,1fr));
  gap:1px; background:rgba(226,227,231,.14);
  border-radius:16px; overflow:hidden;
  margin:0; padding:0; list-style:none;
  position:relative;
}
.rm-pulse__flow li{
  background:var(--primary);
  padding:14px 16px;
  position:relative; overflow:hidden;
}
.rm-pulse__flow span{ display:block; font-size:13px; font-weight:700; color:var(--bg); unicode-bidi:plaintext; }
.rm-pulse__flow em{ display:block; margin-top:2px; font-style:normal; font-size:11.5px; color:var(--bg); opacity:.5; }
.rm-pulse__flow li.is-here span{ color:var(--accent); }
/* خط نوری که یک‌بار از ابتدا تا انتهای زنجیره می‌رود */
.rm-pulse__flow li::after{
  content:""; position:absolute; inset-inline-start:0; bottom:0;
  width:100%; height:2px; background:var(--accent);
  transform:scaleX(0); transform-origin:right;
  transition:transform .5s ease;
}
.rm-pulse__flow.is-lit li::after{ transform:scaleX(1); }
.rm-pulse__flow.is-lit li:nth-child(2)::after{ transition-delay:.35s; }
.rm-pulse__flow.is-lit li:nth-child(3)::after{ transition-delay:.7s; }
.rm-pulse__flow.is-lit li:nth-child(4)::after{ transition-delay:1.05s; }

/* ============================================================
   مسیر صنفی — قاب و لینک راهکار
   ============================================================ */
.rm-tracks__panel[hidden]{ display:none; }
.rm-tracks__more{
  display:inline-flex; align-items:center; gap:8px;
  margin-top:var(--dzf-space-md);
  font-size:13px; font-weight:600; color:var(--accent);
}
.rm-tracks__more svg{ width:16px; height:16px; }
.rm-tracks__more:hover{ text-decoration:underline; text-underline-offset:4px; }

@media (max-width: 900px){
  .rm-pulse__flow{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (max-width: 560px){
  .rm-pulse__flow{ grid-template-columns:1fr; }
  .rm-pulse__flow li::after{ display:none; }
}
@media (prefers-reduced-motion: reduce){
  .rm-pulse__flow li::after{ transition:none !important; transform:scaleX(1) !important; }
}
