/* Подписка (redesign-kit: screens/11-subscribe, Page-Subscribe). */

.sp-sub__badge { display: inline-flex; align-items: center; gap: 10px; margin: 24px 0 0; padding: 8px 16px 8px 14px; border-radius: var(--radius-pill); background: var(--accent-soft); color: var(--accent-text); font-size: 14px; line-height: 20px; font-weight: 600; }
.sp-sub__cta { margin-top: 32px; }

.sp-sub { padding-top: 88px; padding-bottom: 120px; }
.sp-sub > * { max-width: var(--content-max); }

/* Заголовок слева — текст справа */
.sp-sub__split { display: grid; grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr); gap: 24px 48px; align-items: start; }
.sp-sub__h2 { margin: 0; font-family: var(--font-display); font-size: clamp(30px, 2.6vw, 36px); line-height: 1.2; font-weight: 500; }
.sp-sub__text p { margin: 0; font-size: 16px; line-height: 1.7; color: var(--ink-2); }
.sp-sub__text p + p { margin-top: 14px; }

/* Тарифы */
.sp-tariffs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 88px; }
.sp-tariff { box-sizing: border-box; display: flex; flex-direction: column; padding: 32px 30px 34px; border: 1px solid var(--line-strong); border-radius: var(--radius-3xl); }
.sp-tariff--accent { border-color: var(--accent); background: linear-gradient(180deg, rgba(240, 86, 106, 0.08), rgba(240, 86, 106, 0.03)); }
.sp-tariff--accent .sp-label { color: var(--accent-text); }
.sp-tariff .sp-label { margin: 0; }
.sp-tariff__price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; margin: 18px 0 0; font-family: var(--font-display); font-size: 20px; font-weight: 500; }
.sp-tariff__price .sp-num { font-size: clamp(36px, 3.4vw, 48px); line-height: 1.05; font-weight: 500; font-variant-numeric: normal; }
.sp-tariff__note { margin: 10px 0 0; font-size: 14px; color: var(--ink-muted); }
.sp-tariff__more, .sp-tariff__row { margin: 28px 0 0; padding-top: 28px; border-top: 1px solid var(--line); font-size: 14px; line-height: 1.55; color: var(--ink-2); }
.sp-tariff__row { display: flex; justify-content: space-between; gap: 12px; }
.sp-tariff__row b { color: var(--ink); font-weight: 600; text-align: right; }
.sp-tariff__btn { margin-top: auto; align-self: stretch; justify-content: center; }
.sp-tariff__more, .sp-tariff__row { margin-bottom: 32px; }
.sp-tariffs { align-items: stretch; }
.sp-sub__vat { margin: 18px 0 0; font-size: 13px; color: var(--ink-muted); }
.sp-sub__vat b { color: var(--ink); font-weight: 600; }

/* Способы оплаты */
.sp-sub__pay { margin-top: 104px; }
.sp-sub__methods { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.sp-sub__methods li { display: flex; align-items: center; gap: 12px; min-height: 62px; box-sizing: border-box; padding: 0 18px; border-radius: var(--radius-xl); background: var(--surface); font-size: 15px; font-weight: 500; }
.sp-sub__methods svg { flex: none; color: var(--accent); }
.sp-sub__methodsnote { margin: 22px 0 0; font-size: 14px; line-height: 1.6; color: var(--ink-muted); }

/* Помощь */
.sp-sub__help { display: flex; align-items: center; justify-content: space-between; gap: 24px 40px; margin-top: 104px; box-sizing: border-box; padding: 44px 46px; border-radius: var(--radius-3xl); background: var(--surface); }
.sp-sub__help p { margin: 0; max-width: 680px; font-size: 19px; line-height: 1.55; color: var(--ink-2); }
.sp-sub__help b { color: var(--ink); font-weight: 600; }
.sp-sub__helpbtns { display: flex; flex-wrap: wrap; gap: 12px; flex: none; }
.sp-sub__helpbtns .sp-btn { gap: 10px; }

@media (max-width: 1100px) {
  .sp-tariffs { grid-template-columns: minmax(0, 1fr); max-width: 560px; }
  .sp-sub__help { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 760px) {
  .sp-sub__badge { align-items: flex-start; }
  .sp-sub__badge svg { margin-top: 2px; }
  .sp-sub { padding-top: 56px; padding-bottom: 72px; }
  .sp-sub__split { grid-template-columns: minmax(0, 1fr); }
  .sp-tariffs { margin-top: 48px; }
  .sp-tariff { padding: 26px 22px 24px; border-radius: var(--radius-2xl); }
  .sp-sub__pay { margin-top: 64px; }
  .sp-sub__methods { grid-template-columns: minmax(0, 1fr); }
  .sp-sub__help { margin-top: 64px; padding: 32px 24px; border-radius: var(--radius-2xl); }
  .sp-sub__help p { font-size: 17px; }
  .sp-sub__helpbtns { flex-direction: column; align-items: flex-start; }
}
