/* ============================================================
   pay.css — внутренние страницы: программа, организатор,
   оплата, юридические документы.
   ============================================================ */

.page {
  padding-block: calc(var(--header-h) + 2.5rem) var(--space-section);
}
.page__lead {
  max-width: 44rem;
  margin-top: 1.1rem;
  font-size: 1.12rem;
  color: var(--c-ink-soft);
}
.page__in { max-width: 58rem; }
.page__narrow { max-width: 42rem; }

.page h1 { margin-top: .5rem; }

/* Программа целиком */
.page__sub { margin-top: 2.5rem; font-size: 1.5rem; }
.page__sub + .agenda--full { margin-top: 1.25rem; }
.agenda--full { margin-top: 2.5rem; }

/* Общий блок «купить» внизу внутренних страниц */
.page__cta {
  margin-top: 3rem;
  padding: clamp(1.75rem, 1.2rem + 2vw, 2.5rem);
  background: var(--c-bg-alt);
  border-radius: var(--radius-card);
  display: grid;
  justify-items: center;
  gap: .8rem;
  text-align: center;
}

/* Список ссылок на странице 404 */
.page__links {
  list-style: none;
  padding: 0;
  margin-top: 2rem;
  display: grid;
}

/* ---------- Страница организатора ---------- */
.author__grid--page { align-items: start; }

/* появление задано здесь, а не в scroll.js: это первый экран страницы,
   и ждать загрузки скрипта ему незачем */
.author__grid--page > * { --reveal-shift: 40px; }
.author__grid--page .portrait   { animation: reveal-left  1s var(--ease-reveal) backwards; }
.author__grid--page .author__text { animation: reveal-right 1s var(--ease-reveal) .12s backwards; }
@media (min-width: 880px) {
  .author__grid--page { grid-template-columns: .72fr 1.28fr; }
  /* письмо длиннее фотографии: без этого под портретом оставалась
     пустая колонка высотой в пол-экрана */
  .author__grid--page .portrait {
    position: sticky;
    top: calc(var(--header-h) + 2rem);
  }
}

.letter {
  margin-top: 1.6rem;
  display: grid;
  gap: 1rem;
  font-size: 1.05rem;
  line-height: 1.72;
  max-width: 40rem;
}
.letter__sign {
  margin-top: .6rem;
  padding-top: 1.2rem;
  border-top: 1px solid var(--c-line);
  /* без курсива: у гротеска Onest нет курсивного начертания,
     браузер подделал бы его наклоном */
  font-family: var(--f-display);
  font-weight: 600;
  line-height: 1.7;
}
.letter__sign span { font-size: .92rem; color: var(--c-ink-soft); }

.regalia {
  margin-top: 3rem;
  padding: clamp(1.5rem, 1rem + 2vw, 2.25rem);
  background: var(--c-sage-soft);
  border-radius: var(--radius-card);
  max-width: 46rem;
}
.regalia h2 { font-size: 1.35rem; }

/* ---------- Юридические страницы ---------- */
.legal { max-width: 44rem; }
.legal h2 {
  font-size: 1.25rem;
  margin-top: 2rem;
  margin-bottom: .6rem;
}
.legal p, .legal li { color: var(--c-ink-soft); }
/* строчные ссылки в договоре: отступы не двигают вёрстку,
   но по ссылке проще попасть пальцем */
.legal p a, .legal li a { padding-block: .5rem; }
.legal ul { padding-left: 1.2rem; display: grid; gap: .4rem; margin-top: .6rem; }

