/* ==========================================================================
   زبان‌نگار — ویجت «تقویم آموزشی · نوع کلاس» (zn-cal-tiers)
   طرح مبدأ: 05-class-types.dc.html
   سه قالبِ گروهی/نیمه‌گروهی/خصوصی با شهریهٔ «شروع از» به تفکیک زبان.
   ========================================================================== */

.zntr {
  position: relative;
  padding-block: clamp(46px, 6vw, 84px);
  background: var(--zn-bg1);
  border-bottom: 1px solid rgba(var(--zn-line), .08);
}
.zntr-wrap { max-width: 1200px; margin: 0 auto; padding: 0 clamp(16px, 4vw, 40px); }

.zntr-head { text-align: center; max-width: 60ch; margin: 0 auto 36px; }
.zntr-chip {
  display: inline-block;
  background: rgba(217, 149, 0, .12);
  border: 1px solid rgba(217, 149, 0, .3);
  color: var(--zn-goldsoft);
  border-radius: 999px;
  padding: 6px 15px;
  font-size: 12px;
  font-weight: 800;
}
.zntr-title { margin: 14px 0 8px; font-size: clamp(24px, 3.2vw, 38px); font-weight: 900; color: var(--zn-t1); }
.zntr-title .zncal-activename { color: var(--zn-soft); }
.zntr-lead { margin: 0; font-size: 14px; line-height: 2; color: var(--zn-t5); }

.zntr-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }

.zntr-card {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  padding: 28px 24px 24px;
  border: 1px solid rgba(var(--zn-line), .14);
  background: var(--zn-card);
  box-shadow: var(--zn-cardsh);
}
.zntr-card.is-hot {
  border-color: transparent;
  background: linear-gradient(90deg,
    var(--zntr-hot-from, var(--zn-crim)),
    var(--zntr-hot-mid, var(--zn-rose)) 52%,
    var(--zntr-hot-to, var(--zn-rose2)));
  box-shadow: 0 24px 52px rgba(225, 29, 72, .34);
}
.zntr-bar {
  position: absolute;
  top: 0; right: 0; left: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--zn-crim), var(--zn-rose) 55%, var(--zn-gold));
}
.zntr-cap {
  display: inline-block;
  padding: 5px 13px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  background: rgba(var(--zn-line), .1);
  color: var(--zn-t3);
}
.zntr-card.is-hot .zntr-cap { background: rgba(255, 255, 255, .2); color: #fff; }
.zntr-name { margin: 14px 0 8px; font-size: 20px; font-weight: 900; color: var(--zn-t1); }
.zntr-card.is-hot .zntr-name { color: #fff; }
.zntr-desc { margin: 0 0 16px; font-size: 13px; line-height: 1.95; color: var(--zn-t5); }
.zntr-card.is-hot .zntr-desc { color: rgba(255, 255, 255, .9); }
.zntr-fromlbl { font-size: 12.5px; color: var(--zn-t5); }
.zntr-card.is-hot .zntr-fromlbl { color: rgba(255, 255, 255, .9); }
.zntr-from { font-size: 19px; font-weight: 900; color: var(--zn-soft); margin-top: 3px; }
.zntr-card.is-hot .zntr-from { color: #fff; }
.zntr-btn {
  display: inline-block;
  margin-top: 16px;
  padding: 11px 22px;
  border-radius: 12px;
  font-size: 13.5px;
  font-weight: 800;
  background: var(--zn-crim);
  color: #fff;
  transition: transform .2s ease;
}
.zntr-btn:hover { transform: translateY(-2px); color: #fff; }
.zntr-card.is-hot .zntr-btn { background: #fff; color: var(--zn-crim); }

/* بلوک‌های زبان (باس همگام‌سازی) */
.zncal-hidden { display: none !important; }

@media (max-width: 900px) {
  .zntr-grid { grid-template-columns: 1fr; }
}
