/* ============================================================
   DISIPHEE — مسیرهای ساخت (Guides)

   این صفحه باید حس Control Center بدهد، نه کتابخانه‌ی مقاله.
   پس چیدمان دور «انتخاب مسیر» می‌چرخد: هدف، مرحله، صنف، مجموعه.

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

.gd, .gd *{ box-sizing:border-box; }

.gd-sr{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

.gd-chip{
  display:inline-flex; align-items:center; gap:8px;
  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;
}
.gd-chip--accent{ background:var(--accent); border-color:var(--accent); }

/* ---------- مسیر ناوبری ---------- */
.gd-crumb{ background:var(--white); border-bottom:1px solid var(--stroke); padding:14px var(--dzf-gutter); }
.gd-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);
}
.gd-crumb a{ color:var(--dzf-muted); }
.gd-crumb a:hover{ color:var(--primary); }
.gd-crumb b{ color:var(--primary); font-weight:600; }

/* ---------- فراداده‌ی مشترک ---------- */
.gd-meta{ display:flex; flex-wrap:wrap; gap:8px; }
.gd-meta b{
  display:inline-flex; align-items:center; gap:5px;
  padding:5px 11px; border-radius:999px; background:var(--bg);
  font-size:11px; font-weight:600; color:var(--dzf-muted);
}
.gd-meta svg{ width:12px; height:12px; }
.gd-meta--light b{ background:rgba(226,227,231,.12); color:var(--bg); }

/* ============================================================
   هرو
   ============================================================ */
.gd-hero{
  background:var(--primary);
  padding:var(--dzf-space-xxl) var(--dzf-gutter);
}
.gd-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;
}
.gd-hero h1{
  margin:0 0 var(--dzf-space-sm);
  font-size:clamp(1.8rem, 4vw, 2.8rem);
  font-weight:800; line-height:1.45; color:var(--white);
}
.gd-hero__txt > p{
  margin:0 0 var(--dzf-space-lg); max-width:54ch;
  font-size:16px; line-height:2; color:var(--bg); opacity:.74;
}

/* ---------- جستجو ---------- */
.gd-search{
  position:relative; display:flex; align-items:center;
  background:var(--white); border:2px solid transparent; border-radius:999px;
  padding:0 8px;
  transition:border-color .22s ease;
}
.gd-search:focus-within{ border-color:var(--accent); }
.gd-search__ico{
  display:flex; width:20px; height:20px; flex-shrink:0; margin:0 10px;
  color:var(--dzf-muted-3);
}
.gd-search input{
  flex:1; min-width:0; border:0; outline:0; background:transparent;
  font-family:var(--dzf-font); font-size:15px; color:var(--primary);
  padding:15px 4px;
}
.gd-search input::placeholder{
  color:var(--dzf-muted-3);
  transition:opacity .22s ease;
}
.gd-search:focus-within input::placeholder{ opacity:.45; }
.gd-search input::-webkit-search-cancel-button{ -webkit-appearance:none; appearance:none; }
.gd-search__x{
  display:none; align-items:center; justify-content:center;
  width:30px; height:30px; flex-shrink:0;
  border:0; border-radius:999px; background:var(--bg);
  color:var(--dzf-muted); cursor:pointer;
}
.gd-search__x svg{ width:13px; height:13px; }
.gd-search.has-value .gd-search__x{ display:flex; }

.gd-hints{
  display:flex; flex-wrap:wrap; gap:8px;
  margin:var(--dzf-space-sm) 0 0; padding:0; list-style:none;
}
.gd-hint{
  padding:6px 14px; border-radius:999px;
  border:1px solid rgba(226,227,231,.24); background:rgba(226,227,231,.08);
  font-family:var(--dzf-font); font-size:11.5px; font-weight:600;
  color:var(--bg); cursor:pointer; unicode-bidi:plaintext;
  transition:background-color .2s ease, border-color .2s ease, color .2s ease;
}
.gd-hint:hover, .gd-hint.is-on{
  background:var(--accent); border-color:var(--accent); color:var(--primary);
}

.gd-quick{
  display:flex; flex-wrap:wrap; align-items:center; gap:8px;
  margin-top:var(--dzf-space-md);
}
.gd-quick__k{ font-size:12.5px; color:var(--bg); opacity:.55; }
.gd-quick__b{
  padding:8px 16px; border-radius:999px;
  border:1px solid rgba(226,227,231,.22);
  font-size:12.5px; font-weight:600; color:var(--white);
  transition:background-color .2s ease, border-color .2s ease, color .2s ease;
}
.gd-quick__b:hover{ background:var(--accent); border-color:var(--accent); color:var(--primary); }

.gd-hero__vis{ min-width:0; }

/* ---------- جریان هرو ---------- */
.gd-flow{
  background:rgba(226,227,231,.06);
  border:1px solid rgba(226,227,231,.16);
  border-radius:24px; padding:var(--dzf-space-lg);
}
.gd-flow__nodes{
  position:relative; margin:0; padding:0 0 0 0; list-style:none;
}
/* خط عمودی که به‌آرامی کشیده می‌شود */
.gd-flow__nodes::before{
  content:""; position:absolute; top:12px; bottom:12px;
  inset-inline-start:11px; width:2px; background:rgba(226,227,231,.2);
}
.gd-flow__nodes::after{
  content:""; position:absolute; top:12px;
  inset-inline-start:11px; width:2px; height:calc(100% - 24px);
  background:var(--accent);
  transform:scaleY(0); transform-origin:top;
  transition:transform 2.2s cubic-bezier(.22,.8,.28,1) .2s;
}
.gd-flow.is-in .gd-flow__nodes::after{ transform:scaleY(1); }

.gd-flow__nodes li{
  position:relative; display:flex; align-items:center; gap:14px;
  padding:11px 0 11px 0;
  opacity:0; transform:translateY(8px);
  transition:opacity .5s ease, transform .5s ease;
  transition-delay:var(--i, 0ms);
}
.gd-flow.is-in .gd-flow__nodes li{ opacity:1; transform:none; }
.gd-flow__dot{
  position:relative; z-index:1;
  display:block; width:24px; height:24px; flex-shrink:0;
  border-radius:999px;
  background:var(--primary);
  border:2px solid rgba(226,227,231,.28);
  transition:background-color .4s ease, border-color .4s ease;
  transition-delay:calc(var(--i, 0ms) + 200ms);
}
.gd-flow.is-in .gd-flow__dot{ background:var(--accent); border-color:var(--accent); }
.gd-flow__nodes strong{ font-size:14.5px; color:var(--white); unicode-bidi:plaintext; }
.gd-flow__tag{
  display:block; margin-top:var(--dzf-space-md); text-align:center;
  font-size:12px; color:var(--bg); opacity:.55;
}

/* ============================================================
   بدنه
   ============================================================ */
.gd-body{ background:var(--white); padding:var(--dzf-space-xxl) var(--dzf-gutter); }
.gd-body__inner{ max-width:var(--dzf-container); margin:0 auto; }
.gd-body__inner--narrow{ max-width:880px; }

.gd-sec + .gd-sec{ margin-top:var(--dzf-space-xxl); }
.gd-sec[hidden]{ display:none; }
.gd-sec__head{ margin-bottom:var(--dzf-space-lg); }
.gd-sec__head[hidden]{ display:none; }
.gd-sec__head h2{
  margin:0; font-size:clamp(1.3rem, 2.5vw, 1.7rem);
  font-weight:800; line-height:1.5; color:var(--primary);
}
.gd-sec__n{
  display:block; margin-top:6px;
  font-size:13.5px; line-height:1.9; color:var(--dzf-muted-2);
}

/* ---------- مسیرهای شاخص ---------- */
.gd-feat{
  display:grid; grid-template-columns:repeat(4, minmax(0,1fr));
  gap:var(--dzf-space-sm);
}
.gd-fcard{
  display:flex; flex-direction:column;
  border:1px solid var(--stroke); border-radius:22px;
  padding:var(--dzf-space-lg);
  transition:border-color .24s ease, transform .24s ease;
}
.gd-fcard:hover{ border-color:var(--primary); transform:translateY(-8px); }
.gd-fcard__ico{
  display:flex; align-items:center; justify-content:center;
  width:46px; height:46px; margin-bottom:14px;
  border-radius:15px; background:var(--bg); color:var(--primary);
  transition:background-color .24s ease, transform .24s ease;
}
.gd-fcard:hover .gd-fcard__ico{ background:var(--accent); transform:rotate(5deg); }
.gd-fcard__ico svg{ width:22px; height:22px; }
.gd-fcard h3{
  margin:0 0 8px; font-size:1.02rem; font-weight:800;
  line-height:1.6; color:var(--primary);
}
.gd-fcard p{
  margin:0 0 var(--dzf-space-md); flex:1;
  font-size:13px; line-height:1.95; color:var(--dzf-muted-2);
}
.gd-fcard__go{
  display:inline-flex; align-items:center; gap:7px;
  margin-top:var(--dzf-space-md);
  font-size:12.5px; font-weight:700; color:var(--primary);
  opacity:0; transform:translateY(4px);
  transition:opacity .24s ease, transform .24s ease;
}
.gd-fcard:hover .gd-fcard__go{ opacity:1; transform:none; }
.gd-fcard__go svg{ width:14px; height:14px; }

/* ---------- من می‌خواهم… ---------- */
.gd-goals{
  display:grid; grid-template-columns:repeat(4, minmax(0,1fr));
  gap:var(--dzf-space-sm);
}
.gd-goal{
  border:1px solid var(--stroke); border-radius:22px;
  padding:var(--dzf-space-lg);
  scroll-margin-top:100px;
  transition:border-color .24s ease, background-color .24s ease;
}
.gd-goal:hover{ border-color:var(--primary); background:var(--bg); }
.gd-goal__ico{
  display:flex; align-items:center; justify-content:center;
  width:46px; height:46px; margin-bottom:14px;
  border-radius:15px; background:var(--accent); color:var(--primary);
  transition:transform .24s ease;
}
.gd-goal:hover .gd-goal__ico{ transform:scale(1.08); }
.gd-goal__ico svg{ width:22px; height:22px; }
.gd-goal h3{
  margin:0 0 var(--dzf-space-sm);
  font-size:15.5px; font-weight:700; line-height:1.6; color:var(--primary);
}
.gd-goal__chain{ margin:0; padding:0; list-style:none; }
.gd-goal__chain li + li{ margin-top:6px; }
.gd-goal__chain a{
  display:flex; align-items:center; gap:10px;
  font-size:12.5px; line-height:1.8; color:var(--dzf-muted);
  transition:color .2s ease;
}
.gd-goal__chain a:hover{ color:var(--primary); }
.gd-goal__n{
  display:flex; align-items:center; justify-content:center;
  width:20px; height:20px; flex-shrink:0;
  border-radius:999px; border:1px solid var(--stroke);
  font-size:10px; font-weight:700; color:var(--dzf-muted-3);
}

/* ---------- مرحله‌های برند ---------- */
.gd-stages{
  position:relative; margin:0; padding:0; list-style:none;
}
.gd-stages::before{
  content:""; position:absolute; top:16px; bottom:16px;
  inset-inline-start:17px; width:2px; background:var(--stroke);
}
.gd-stages::after{
  content:""; position:absolute; top:16px;
  inset-inline-start:17px; width:2px; height:calc(100% - 32px);
  background:var(--accent);
  transform:scaleY(0); transform-origin:top;
  transition:transform 1.8s cubic-bezier(.22,.8,.28,1) .2s;
}
.gd-stages.is-in::after{ transform:scaleY(1); }

.gd-stages > li{
  position:relative; display:flex; gap:var(--dzf-space-md);
  padding-bottom:12px;
  opacity:0; transform:translateY(24px);
  transition:opacity .55s ease, transform .55s ease;
  transition-delay:var(--i, 0ms);
}
.gd-stages.is-in > li{ opacity:1; transform:none; }
.gd-stages__dot{
  position:relative; z-index:1;
  display:flex; align-items:center; justify-content:center;
  width:36px; height:36px; flex-shrink:0;
  border-radius:999px; background:var(--accent);
  font-size:13px; font-weight:800; color:var(--primary);
}
.gd-stages__card{
  flex:1; border:1px solid var(--stroke); border-radius:20px;
  padding:var(--dzf-space-md) var(--dzf-space-lg);
  transition:border-color .22s ease;
}
.gd-stages > li:hover .gd-stages__card{ border-color:var(--primary); }
.gd-stages__card strong{ font-size:16px; font-weight:700; color:var(--primary); }
.gd-stages__en{
  display:block; font-size:11px; color:var(--dzf-muted-3); unicode-bidi:plaintext;
}
.gd-stages__card > p{
  margin:8px 0 12px; font-size:13px; line-height:1.9; color:var(--dzf-muted-2);
}
.gd-stages__card ul{ margin:0; padding:0; list-style:none; display:flex; flex-wrap:wrap; gap:8px; }
.gd-stages__card ul a{
  display:inline-block; padding:6px 14px; border-radius:999px;
  background:var(--bg); font-size:12px; color:var(--dzf-muted);
  transition:background-color .2s ease, color .2s ease;
}
.gd-stages__card ul a:hover{ background:var(--accent); color:var(--primary); }

/* ---------- صنایع ---------- */
.gd-inds{
  display:grid; grid-template-columns:repeat(4, minmax(0,1fr));
  gap:10px; margin:0; padding:0; list-style:none;
}
.gd-ind{
  display:flex; align-items:center; gap:12px;
  padding:14px var(--dzf-space-md); border-radius:16px;
  border:1px solid var(--stroke);
  transition:border-color .22s ease;
}
.gd-ind:hover{ border-color:var(--primary); }
.gd-ind__ico{
  display:flex; align-items:center; justify-content:center;
  width:38px; height:38px; flex-shrink:0;
  border-radius:13px; background:var(--bg); color:var(--primary);
  transition:background-color .22s ease, transform .3s cubic-bezier(.22,.8,.28,1);
}
.gd-ind:hover .gd-ind__ico{ background:var(--accent); transform:translateY(-3px); }
.gd-ind__ico svg{ width:19px; height:19px; }
.gd-ind strong{ flex:1; font-size:13.5px; font-weight:600; color:var(--primary); }
.gd-ind em{ font-style:normal; font-size:11px; color:var(--dzf-muted-3); }

/* ---------- مجموعه‌ها ---------- */
.gd-colls{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr));
  gap:var(--dzf-space-sm);
}
.gd-coll{
  border:1px solid var(--stroke); border-radius:22px;
  padding:var(--dzf-space-lg);
  transition:border-color .22s ease;
}
.gd-coll:hover{ border-color:var(--primary); }
.gd-coll h3{
  margin:0 0 6px; font-size:16px; font-weight:800; color:var(--primary);
}
.gd-coll > p{
  margin:0 0 var(--dzf-space-md);
  font-size:13px; line-height:1.9; color:var(--dzf-muted-2);
}
.gd-coll__line{ position:relative; margin:0 0 var(--dzf-space-md); padding:0; list-style:none; }
.gd-coll__line::before{
  content:""; position:absolute; top:10px; bottom:10px;
  inset-inline-start:5px; width:2px; background:var(--stroke);
  transition:background-color .3s ease;
}
.gd-coll:hover .gd-coll__line::before{ background:var(--accent); }
.gd-coll__line li + li{ margin-top:8px; }
.gd-coll__line a{
  position:relative; display:flex; align-items:center; gap:12px;
  font-size:12.5px; line-height:1.8; color:var(--dzf-muted);
  transition:color .2s ease;
}
.gd-coll__line a:hover{ color:var(--primary); }
.gd-coll__dot{
  position:relative; z-index:1;
  display:block; width:12px; height:12px; flex-shrink:0;
  border-radius:999px; background:var(--white);
  border:2px solid var(--stroke);
  transition:border-color .3s ease, background-color .3s ease;
}
.gd-coll:hover .gd-coll__dot{ border-color:var(--accent); background:var(--accent); }
.gd-coll__sum{
  display:block; padding-top:var(--dzf-space-md);
  border-top:1px solid var(--stroke);
  font-size:11.5px; color:var(--dzf-muted-3);
}

/* ---------- فیلتر و کارت‌ها ---------- */
.gd-filters{
  display:flex; flex-wrap:wrap; gap:8px;
  margin:0 0 var(--dzf-space-lg); padding:0; list-style:none;
}
.gd-filter{
  padding:8px 18px; border-radius:999px;
  border:1px solid var(--stroke); background:var(--white);
  font-family:var(--dzf-font); font-size:13px; font-weight:600;
  color:var(--dzf-muted); cursor:pointer;
  transition:background-color .2s ease, border-color .2s ease, color .2s ease;
}
.gd-filter:hover{ border-color:var(--primary); color:var(--primary); }
.gd-filter.is-on{ background:var(--primary); border-color:var(--primary); color:var(--white); }

.gd-grid{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr));
  gap:var(--dzf-space-sm);
}
.gd-card{
  position:relative; display:flex; flex-direction:column;
  border:1px solid var(--stroke); border-radius:22px;
  padding:var(--dzf-space-lg) var(--dzf-space-lg) calc(var(--dzf-space-lg) + 6px);
  overflow:hidden;
  transition:border-color .24s ease, transform .24s ease;
}
.gd-card:hover{ border-color:var(--primary); transform:translateY(-6px); }
.gd-card[hidden]{ display:none; }
.gd-card__ico{
  display:flex; align-items:center; justify-content:center;
  width:44px; height:44px; margin-bottom:14px;
  border-radius:15px; background:var(--bg); color:var(--primary);
  transition:background-color .24s ease, transform .24s ease;
}
.gd-card:hover .gd-card__ico{ background:var(--accent); transform:rotate(5deg); }
.gd-card__ico svg{ width:21px; height:21px; }
.gd-card h3{
  margin:0 0 8px; font-size:1.02rem; font-weight:800;
  line-height:1.6; color:var(--primary);
}
.gd-card p{
  margin:0 0 var(--dzf-space-md); flex:1;
  font-size:13px; line-height:1.95; color:var(--dzf-muted-2);
}
.gd-card__out{
  display:flex; align-items:flex-start; gap:8px;
  margin-bottom:var(--dzf-space-md); padding:10px 14px;
  border-radius:14px; background:var(--bg);
  font-size:12px; line-height:1.8; color:var(--dzf-muted);
}
.gd-card__out svg{ width:14px; height:14px; flex-shrink:0; margin-top:3px; color:var(--primary); }
/* نوار پیشرفت پایین کارت — روی هاور پر می‌شود */
.gd-card__bar{
  position:absolute; inset-inline:0; bottom:0;
  display:block; height:4px; background:var(--bg);
}
.gd-card__bar i{
  display:block; height:100%; width:0; background:var(--accent);
  transition:width .5s cubic-bezier(.22,.8,.28,1);
}
.gd-card:hover .gd-card__bar i{ width:100%; }

.gd-empty{
  margin:var(--dzf-space-lg) 0 0; padding:var(--dzf-space-lg);
  border:1px dashed var(--stroke); border-radius:20px;
  text-align:center; font-size:14.5px; line-height:2; color:var(--dzf-muted-2);
}
.gd-empty[hidden]{ display:none; }

/* ---------- مسیر پیشنهادی ---------- */
.gd-me{
  background:var(--primary); border-radius:24px;
  padding:var(--dzf-space-xl);
}
.gd-me__head h2{
  margin:0 0 8px; font-size:1.35rem; font-weight:800; color:var(--white);
}
.gd-me__head p{
  margin:0 0 var(--dzf-space-lg);
  font-size:14px; line-height:1.9; color:var(--bg); opacity:.72;
}
.gd-me__steps{ margin:0; padding:0; list-style:none; }
.gd-me__steps li{
  display:flex; align-items:center; gap:12px;
  padding:13px var(--dzf-space-md); border-radius:16px;
  background:rgba(226,227,231,.08);
  border:1px solid rgba(226,227,231,.18);
}
.gd-me__steps li + li{ margin-top:8px; }
.gd-me__box{
  display:flex; align-items:center; justify-content:center;
  width:24px; height:24px; flex-shrink:0;
  border-radius:999px; border:1.5px solid rgba(226,227,231,.34);
  color:transparent;
}
.gd-me__box svg{ width:12px; height:12px; }
.gd-me__steps li.is-done .gd-me__box{
  background:var(--accent); border-color:var(--accent); color:var(--primary);
}
.gd-me__steps strong{ flex:1; font-size:13.5px; font-weight:600; color:var(--white); }
.gd-me__steps li.is-done strong{ opacity:.55; }
.gd-me__go{
  display:inline-flex; align-items:center; gap:6px; flex-shrink:0;
  padding:7px 14px; border-radius:999px; background:var(--accent);
  font-size:11.5px; font-weight:700; color:var(--primary);
}
.gd-me__go svg{ width:12px; height:12px; }

/* ---------- کمک ---------- */
.gd-help{
  display:flex; align-items:center; flex-wrap:wrap; gap:var(--dzf-space-md);
  border:1px solid var(--stroke); border-radius:24px;
  padding:var(--dzf-space-xl);
}
.gd-help__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);
}
.gd-help__ico svg{ width:23px; height:23px; }
.gd-help > div{ flex:1; min-width:220px; }
.gd-help h2{ margin:0 0 6px; font-size:1.15rem; font-weight:800; color:var(--primary); }
.gd-help p{ margin:0; font-size:13.5px; line-height:1.9; color:var(--dzf-muted-2); }
.gd-help__btns{ display:flex; flex-wrap:wrap; gap:10px; }

/* ============================================================
   صفحه‌ی یک مسیر
   ============================================================ */
.gd--single .gd-body__inner{ margin:0 auto; }

.gd-shero{
  background:var(--primary);
  padding:var(--dzf-space-xxl) var(--dzf-gutter);
  text-align:center;
}
.gd-shero__inner{ max-width:760px; margin:0 auto; }
.gd-shero__ico{
  display:flex; align-items:center; justify-content:center;
  width:60px; height:60px; margin:0 auto var(--dzf-space-md);
  border-radius:20px; background:var(--accent); color:var(--primary);
}
.gd-shero__ico svg{ width:28px; height:28px; }
.gd-shero .gd-chip{ background:rgba(226,227,231,.1); border-color:rgba(226,227,231,.2); color:var(--bg); }
.gd-shero h1{
  margin:0 0 12px; font-size:clamp(1.6rem, 3.6vw, 2.4rem);
  font-weight:800; line-height:1.45; color:var(--white);
}
.gd-shero__l{
  margin:0 auto var(--dzf-space-lg); max-width:52ch;
  font-size:15.5px; line-height:2; color:var(--bg); opacity:.74;
}
.gd-shero .gd-meta{ justify-content:center; }
.gd-shero__btns{
  display:flex; flex-wrap:wrap; gap:12px; justify-content:center;
  margin-top:var(--dzf-space-lg);
}

/* نوار پیشرفت مسیر */
.gd-prog{
  margin-top:var(--dzf-space-lg);
  padding:var(--dzf-space-md);
  border-radius:18px; background:rgba(226,227,231,.08);
  border:1px solid rgba(226,227,231,.18);
}
.gd-prog__bar{
  display:block; height:8px; border-radius:999px;
  background:rgba(226,227,231,.14); overflow:hidden;
}
.gd-prog__bar i{
  display:block; height:100%; width:0; border-radius:999px;
  background:var(--accent);
  transition:width .6s cubic-bezier(.22,.8,.28,1);
}
.gd-prog__t{
  display:block; margin-top:10px;
  font-size:12.5px; color:var(--bg); opacity:.72;
}
.gd-prog__reset{
  margin-top:8px; border:0; background:transparent;
  font-family:var(--dzf-font); font-size:11.5px; color:var(--accent);
  cursor:pointer; text-decoration:underline;
}
.gd-prog__reset[hidden]{ display:none; }

/* ---------- دو ستون بالای مرحله‌ها ---------- */
.gd-two{
  display:grid; grid-template-columns:1.2fr .8fr;
  gap:var(--dzf-space-sm);
}
.gd-panel{
  border:1px solid var(--stroke); border-radius:22px;
  padding:var(--dzf-space-lg);
}
.gd-panel--out{ background:var(--bg); border-color:var(--bg); }
.gd-panel h2{
  display:flex; align-items:center; gap:10px;
  margin:0 0 var(--dzf-space-md);
  font-size:1.05rem; font-weight:800; color:var(--primary);
}
.gd-panel h2 svg{ width:19px; height:19px; }
.gd-panel__out{
  margin:0 0 var(--dzf-space-md); padding:12px 16px;
  border-radius:14px; background:var(--white);
  font-size:14px; line-height:1.9; font-weight:600; color:var(--primary);
}
.gd-ticks, .gd-needs{ margin:0; padding:0; list-style:none; }
.gd-ticks li{
  display:flex; align-items:flex-start; gap:9px;
  font-size:13px; line-height:1.9; color:var(--dzf-muted);
}
.gd-ticks li + li, .gd-needs li + li{ margin-top:8px; }
.gd-ticks svg{ width:14px; height:14px; flex-shrink:0; margin-top:4px; color:var(--primary); }
.gd-needs li{
  position:relative; padding-inline-start:16px;
  font-size:13px; line-height:1.9; color:var(--dzf-muted);
}
.gd-needs li::before{
  content:""; position:absolute; inset-inline-start:0; top:11px;
  width:6px; height:6px; border-radius:999px; background:var(--accent);
}

/* ---------- مرحله‌ها ---------- */
.gd-steps{ margin:0; padding:0; list-style:none; }
.gd-step{
  display:flex; gap:var(--dzf-space-md);
  border:1px solid var(--stroke); border-radius:22px;
  padding:var(--dzf-space-lg);
  scroll-margin-top:100px;
  transition:border-color .22s ease, background-color .3s ease;
}
.gd-step + .gd-step{ margin-top:10px; }
.gd-step.is-done{ border-color:var(--accent); background:var(--bg); }
.gd-step__n{
  display:flex; align-items:center; justify-content:center;
  width:36px; height:36px; flex-shrink:0;
  border-radius:999px; background:var(--primary);
  font-size:14px; font-weight:800; color:var(--white);
  transition:background-color .3s ease, color .3s ease;
}
.gd-step.is-done .gd-step__n{ background:var(--accent); color:var(--primary); }
.gd-step__body{ flex:1; min-width:0; }
.gd-step__body h3{
  margin:0 0 8px; font-size:1.05rem; font-weight:800;
  line-height:1.6; color:var(--primary);
}
.gd-step__body > p{
  margin:0; font-size:14px; line-height:2.05; color:var(--dzf-muted-2);
}
.gd-step__foot{
  display:flex; flex-wrap:wrap; align-items:center; gap:10px;
  margin-top:var(--dzf-space-md);
}
.gd-step__do{
  display:inline-flex; align-items:center; gap:8px;
  padding:9px 18px; border-radius:999px; background:var(--accent);
  font-size:12.5px; font-weight:700; color:var(--primary);
}
.gd-step__do svg{ width:14px; height:14px; transition:transform .22s ease; }
.gd-step__do:hover svg{ transform:translateX(-4px); }
.gd-step__tick{
  display:inline-flex; align-items:center; gap:8px;
  padding:9px 18px; border-radius:999px;
  border:1px solid var(--stroke); background:var(--white);
  font-family:var(--dzf-font); font-size:12.5px; font-weight:600;
  color:var(--dzf-muted); cursor:pointer;
  transition:border-color .2s ease, color .2s ease;
}
.gd-step__tick:hover{ border-color:var(--primary); color:var(--primary); }
.gd-step__tick span{
  display:flex; align-items:center; justify-content:center;
  width:18px; height:18px; border-radius:999px;
  border:1.5px solid var(--stroke); color:transparent;
  transition:background-color .3s ease, border-color .3s ease, color .3s ease;
}
.gd-step__tick svg{ width:10px; height:10px; }
.gd-step.is-done .gd-step__tick{ border-color:var(--accent); color:var(--primary); }
.gd-step.is-done .gd-step__tick span{
  background:var(--primary); border-color:var(--primary); color:var(--accent);
}

/* ---------- پایان مسیر ---------- */
.gd-done{
  text-align:center; padding:var(--dzf-space-xl);
  border:1px dashed var(--stroke); border-radius:24px;
  transition:border-color .3s ease, background-color .3s ease;
}
.gd-done.is-done{ border-style:solid; border-color:var(--accent); background:var(--bg); }
.gd-done__ico{
  display:flex; align-items:center; justify-content:center;
  width:52px; height:52px; margin:0 auto var(--dzf-space-md);
  border-radius:999px; background:var(--stroke); color:var(--white);
  transition:background-color .3s ease, transform .4s cubic-bezier(.22,.8,.28,1);
}
.gd-done.is-done .gd-done__ico{ background:var(--accent); color:var(--primary); transform:scale(1.08); }
.gd-done__ico svg{ width:24px; height:24px; }
.gd-done h2{ margin:0 0 8px; font-size:1.25rem; font-weight:800; color:var(--primary); }
.gd-done p{
  margin:0 auto var(--dzf-space-md); max-width:48ch;
  font-size:14px; line-height:2; color:var(--dzf-muted-2);
}

/* ---------- مسیر بعدی ---------- */
.gd-next{
  display:flex; align-items:center; gap:var(--dzf-space-md);
  border:1px solid var(--stroke); border-radius:22px;
  padding:var(--dzf-space-lg);
  transition:border-color .22s ease;
}
.gd-next:hover{ border-color:var(--primary); }
.gd-next__ico{
  display:flex; align-items:center; justify-content:center;
  width:48px; height:48px; flex-shrink:0;
  border-radius:16px; background:var(--bg); color:var(--primary);
  transition:background-color .22s ease;
}
.gd-next:hover .gd-next__ico{ background:var(--accent); }
.gd-next__ico svg{ width:23px; height:23px; }
.gd-next > div{ flex:1; min-width:0; }
.gd-next strong{ display:block; font-size:15.5px; font-weight:800; color:var(--primary); }
.gd-next p{ margin:6px 0 10px; font-size:13px; line-height:1.9; color:var(--dzf-muted-2); }
.gd-next__go{
  display:flex; flex-shrink:0; width:20px; height:20px; color:var(--primary);
  transition:transform .22s ease;
}
.gd-next:hover .gd-next__go{ transform:translateX(-5px); }

/* ---------- مرتبط ---------- */
.gd-rel{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr));
  gap:10px;
}
.gd-rel__c{
  display:flex; flex-direction:column; align-items:flex-start; gap:4px;
  border:1px solid var(--stroke); border-radius:18px;
  padding:var(--dzf-space-md);
  transition:border-color .22s ease;
}
.gd-rel__c:hover{ border-color:var(--primary); }
.gd-rel__c > span{
  display:flex; align-items:center; justify-content:center;
  width:34px; height:34px; margin-bottom:8px;
  border-radius:12px; background:var(--bg); color:var(--primary);
}
.gd-rel__c svg{ width:17px; height:17px; }
.gd-rel__c strong{ font-size:11px; font-weight:700; color:var(--dzf-muted-3); }
.gd-rel__c em{ font-style:normal; font-size:13.5px; font-weight:600; color:var(--primary); unicode-bidi:plaintext; }

/* ============================================================
   CTA
   ============================================================ */
.gd-cta{
  background:var(--accent);
  padding:var(--dzf-space-xxl) var(--dzf-gutter);
  text-align:center;
}
.gd-cta[hidden]{ display:none; }
.gd-cta__inner{ max-width:640px; margin:0 auto; }
.gd-cta h2{
  margin:0 0 12px; font-size:clamp(1.4rem, 3vw, 2rem);
  font-weight:800; line-height:1.5; color:var(--primary);
}
.gd-cta p{
  margin:0 auto var(--dzf-space-lg); max-width:48ch;
  font-size:15.5px; line-height:2; color:var(--primary); opacity:.76;
}
.gd-cta__btns{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }

/* تپش بسیار آرام دکمه — یک بار هر شش ثانیه، فقط مقیاس */
@keyframes gd-pulse{
  0%, 92%, 100% { transform:scale(1); }
  96%           { transform:scale(1.035); }
}
.gd-pulse.is-in{ animation:gd-pulse 6s ease-in-out infinite; }

/* ============================================================
   واکنش‌گرایی
   ============================================================ */
@media (max-width:1100px){
  .gd-hero__inner{ grid-template-columns:1fr; }
  .gd-feat, .gd-goals{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .gd-grid, .gd-colls, .gd-rel{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .gd-inds{ grid-template-columns:repeat(3, minmax(0,1fr)); }
  .gd-two{ grid-template-columns:1fr; }
}

@media (max-width:640px){
  .gd-feat, .gd-goals, .gd-grid, .gd-colls, .gd-rel, .gd-inds{ grid-template-columns:1fr; }
  .gd-fcard__go{ opacity:1; transform:none; }
  .gd-step{ flex-direction:column; gap:12px; }
  .gd-next{ flex-wrap:wrap; }
  .gd-next__go{ display:none; }
}

@media (prefers-reduced-motion:reduce){
  .gd-flow__nodes li, .gd-stages > li{
    opacity:1 !important; transform:none !important; transition:none !important;
  }
  .gd-flow__nodes::after, .gd-stages::after{
    transform:scaleY(1) !important; transition:none !important;
  }
  .gd-flow__dot{ background:var(--accent) !important; border-color:var(--accent) !important; }
  .gd-fcard:hover, .gd-card:hover{ transform:none; }
  .gd-fcard:hover .gd-fcard__ico, .gd-card:hover .gd-card__ico{ transform:none; }
  .gd-goal:hover .gd-goal__ico, .gd-ind:hover .gd-ind__ico{ transform:none; }
  .gd-fcard__go{ opacity:1; transform:none; }
  .gd-card__bar i, .gd-prog__bar i{ transition:none; }
  .gd-pulse.is-in{ animation:none; }
  .gd-done.is-done .gd-done__ico{ transform:none; }
}
