/* ============================================================
   OSNOVANO — Путь (roadmap)
   ============================================================ */

/* счётчик */
.counter{border:1px solid var(--line-hi);background:var(--panel);border-radius:14px;padding:clamp(28px,4vw,52px);position:relative;overflow:hidden}
.counter-top{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:flex-end;margin-bottom:30px}
.counter-num{font-family:var(--mono);font-weight:700;font-size:clamp(44px,9vw,110px);line-height:.9;letter-spacing:-.04em;color:var(--signal)}
.counter-num span{color:var(--paper)}
.counter-label{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--mute);margin-top:14px}
.counter-right{text-align:right;font-family:var(--mono)}
.counter-goal{font-size:clamp(20px,3vw,30px);font-weight:700;letter-spacing:-.01em;line-height:1}
.counter-bar{height:3px;background:var(--graphite);position:relative;border-radius:2px;overflow:hidden}
.counter-fill{position:absolute;left:0;top:0;bottom:0;background:var(--signal);width:0;transition:width 1.6s var(--ease);box-shadow:0 0 12px var(--signal)}

/* roadmap */
.roadmap{margin-top:16px}
.rmstep{display:grid;grid-template-columns:120px 1fr auto;gap:clamp(20px,4vw,48px);align-items:center;padding:34px 0;border-top:1px solid var(--line)}
.rmstep:last-child{border-bottom:1px solid var(--line)}
.rmstep .stage{font-family:var(--mono);font-size:12px;letter-spacing:.1em;color:var(--mute)}
.rmstep h3{font-family:var(--display);font-weight:700;font-size:clamp(20px,2.4vw,30px);letter-spacing:-.02em}
.rmstep .desc{color:var(--mute);font-size:15px;margin-top:8px;max-width:52ch}
.rmstep .state{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:8px 14px;border-radius:2px;white-space:nowrap}
.rmstep .state.now{background:var(--signal);color:#0A0500}
.rmstep .state.next{border:1px solid var(--line-hi);color:var(--mute)}
.rmstep .state.locked{border:1px solid var(--line);color:var(--mute)}
.rmstep.locked{opacity:.5}
.rmstep.locked h3::after{content:" ↳ заперто";font-family:var(--mono);font-size:11px;color:var(--mute);letter-spacing:.1em;font-weight:400}
.rmstep .lock{display:inline-block;vertical-align:-2px;margin-right:10px;color:var(--mute)}

@media(max-width:680px){
  .rmstep{grid-template-columns:1fr;gap:10px}
  .rmstep .state{justify-self:start}
  .counter-right{text-align:left}
}
