/* Программа "Носители языка": блок "Расписание".
   Десктоп - фрейм lUhRF (1440x398), мобильная - W36EB (390x403).
   Список строк расписания в макете нет (geometry сходится без остатка на
   список - см. комментарий в build/program/80-raspisanie.php), блок
   линейный: заголовок, абзац, кнопка записи и телефон с мессенджерами. */

.pg-raspisanie { background: var(--white); }

.pg-raspisanie__in {
  display: flex;
  flex-direction: column;
  gap: 28px;
  padding-block: 80px;
}

.pg-raspisanie__head {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.pg-raspisanie__kicker {
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 12px;
  line-height: 15px;   /* 12 x 1.21, высота строки в дампе не нарисована */
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--magenta-text);
}

.pg-raspisanie__h2 {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: 38px;
  /* В макете множитель 1.14, то есть 43.32 px. Высота строки держится
     целым числом (см. tools/README.md), иначе на телефоне набегает
     лишний пиксель. */
  line-height: 43px;
  letter-spacing: -1.6px;
  color: var(--ink);
}

.pg-raspisanie__text {
  font-family: var(--font-body);
  font-weight: 400;
  font-size: 17px;
  line-height: 30px;   /* 17 x 1.75 = 29.75, в дампе строка целая */
  color: var(--muted);
}

.pg-raspisanie__contacts {
  display: flex;
  align-items: center;
  gap: 20px;
}

.pg-raspisanie__btn {
  padding: 16px 28px;
  font-size: 15px;
  line-height: 18px;
}

.pg-raspisanie__phone {
  display: flex;
  align-items: center;
  gap: 10px;
}

.pg-raspisanie__tel {
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 15px;
  line-height: 18px;
  color: var(--ink);
  white-space: nowrap;
}

.pg-raspisanie__phone .ico {
  width: 17px;
  height: 17px;
  color: var(--ink);
  transition: color .15s ease;
}

.pg-raspisanie__phone .soc__link:hover .ico { color: var(--magenta-text); }

@media (max-width: 860px) {
  .pg-raspisanie__in {
    gap: 28px;
    padding-block: 40px;
  }

  .pg-raspisanie__kicker {
    font-size: 11px;
    line-height: 13px;   /* 11 x 1.21 */
  }

  .pg-raspisanie__h2 {
    font-size: 25px;
    /* Множитель 1.14 = 28.5 px. Геометрия заголовка в дампе (блок 55 px =
       кикер 13 + зазор 14 + строка h2) отдаёт ровно 28, не 29. */
    line-height: 28px;
    letter-spacing: -0.9px;
  }

  .pg-raspisanie__text {
    font-size: 15px;
    line-height: 26px;   /* 15 x 1.75 = 26.25 */
  }

  .pg-raspisanie__contacts {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
  }

  .pg-raspisanie__btn {
    width: 100%;
    font-size: 14px;
    line-height: 17px;
  }

  .pg-raspisanie__phone {
    font-size: 14px;
  }

  .pg-raspisanie__tel {
    font-size: 14px;
    line-height: 17px;
  }
}
