/* Digital ruble case — Figma 161:41189. Shared layout and tokens: styles.css. */
.digital-ruble-case .tariff-heading,
.digital-ruble-case .tariff-section h2,
.digital-ruble-case .stakeholder-grid h3 {
  font-weight: 700;
}

.digital-ruble-case .tariff-section > div { min-width: 0; }
.digital-ruble-case .ruble-problem { border-bottom: 0; }
.digital-ruble-case .tariff-dark-panel { margin: 0; }
.digital-ruble-case .tariff-dark-panel > p { max-width: 1322px; }
.digital-ruble-case .tariff-facts strong { font-weight: 700; }

.digital-ruble-case .ruble-cover { aspect-ratio: 3 / 2; }

.digital-ruble-case .ruble-process { padding: 150px 0; }
.digital-ruble-case .ruble-process h2 {
  font-size: clamp(42px, 5.4vw, 80px);
  font-weight: 400; line-height: 1.05; letter-spacing: -.064em;
  margin-bottom: 75px;
}
.ruble-process-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 75px 32px; }
.ruble-process-grid article { border-top: 1px solid var(--rule); padding-top: 15px; }
.ruble-process-grid small { font-size: 11px; color: var(--muted); }
.ruble-process-grid h3 { margin: 40px 0 20px; font-size: clamp(25px, 2.35vw, 35px); font-weight: 400; letter-spacing: -.045em; line-height: 1.15; }
.ruble-process-grid p { max-width: 400px; margin: 0; font-size: 16px; line-height: 1.65; }

.ruble-visuals { display: flex; flex-direction: column; gap: 28px; }
.ruble-visuals figure { margin: 0; overflow: hidden; border-radius: 8px; }
.ruble-visuals a { display: block; }
.ruble-visuals img { display: block; }
.ruble-scenario {
  min-height: 0; aspect-ratio: 930 / 1033; background: var(--card);
  display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 15px;
}
.ruble-scenario img { width: 34.45%; height: auto; }
.ruble-scenario figcaption { color: var(--muted); font-size: 12px; padding: 15px 0 4px; text-align: center; }
.ruble-operations { background: rgba(0, 0, 0, .8); }
.ruble-operations img { width: 100%; height: auto; aspect-ratio: 930 / 1043; object-fit: contain; }
.ruble-consents img { width: 100%; height: auto; aspect-ratio: 930 / 885; object-fit: cover; }
.digital-ruble-case .ruble-results { border-bottom: 0; }
.digital-ruble-case .tariff-next { padding: 0 0 105px; }

@media (max-width: 800px) {
  .digital-ruble-case .tariff-section { padding: 70px 0; }
  .digital-ruble-case .ruble-process h2 { margin-bottom: 42px; }
  .ruble-process-grid { gap: 42px 24px; }
}
@media (max-width: 520px) {
  .ruble-process-grid { grid-template-columns: 1fr; }
  .ruble-process-grid h3 { margin-top: 28px; }
  .ruble-scenario { aspect-ratio: auto; padding: 30px 15px; }
  .ruble-scenario img { width: min(68%, 310px); }
  .digital-ruble-case .tariff-dark-panel { min-height: 0; }
  .digital-ruble-case .tariff-next { padding-bottom: 60px; }
}
