.oplata-shapka { padding: 34px 0 24px; }
.oplata-shapka h1 { font-size: 30px; font-weight: 600; letter-spacing: -.02em; margin: 0 0 8px; }
.oplata-shapka p { color: var(--fg-2); margin: 0 0 10px; }
.oplata-period, .oplata-deystviya { display: flex; flex-wrap: wrap; gap: 12px; }
.oplata-period { margin-bottom: 24px; }
.oplata-setka { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.oplata-tarif { display: flex; flex-direction: column; padding: 24px; min-width: 0; margin: 0; }
.oplata-tarif h2, .oplata-tarif h3, .oplata-svodka h2 { margin: 0 0 12px; font-size: 20px; }
.oplata-tarif p { margin: 0 0 16px; }
.oplata-tarif ul { padding-left: 20px; margin: 0 0 24px; }
.oplata-tarif li + li { margin-top: 8px; }
.oplata-tarif form { margin-top: auto; }
.oplata-tarif .btn { width: 100%; white-space: normal; }
.oplata-cena { font-size: 28px; font-weight: 600; }
.oplata-cena span { font-size: 14px; font-weight: 400; color: var(--fg-2); }
.oplata-komu { color: var(--fg-2); }
.oplata-tekushchiy { border-color: var(--accent-ink); }
.oplata-metka { color: var(--accent-ink); font-size: 13px; margin-bottom: 12px; }
.oplata-razdel { margin: 32px 0; }
.oplata-razdel > h2 { font-size: 20px; margin: 0 0 12px; }
.oplata-svodka { padding: 24px; }
.oplata-ostatok { width: 100%; height: 14px; accent-color: var(--accent-ink); }
.oplata-tablica { overflow-x: auto; }
.oplata-tablica td { overflow-wrap: anywhere; }
.oplata-deystviya .btn { white-space: normal; }
@media (max-width: 640px) {
  .oplata-shapka h1 { font-size: 25px; }
  .oplata-setka { grid-template-columns: 1fr; }
  .oplata-tarif, .oplata-svodka { padding: 20px; }
}
