/* Крупные заголовки плавно меняют размер без скачков между контрольными ширинами */
html #organisation .event-viewer .event-element-head__title {
    font-size: clamp(24px, calc(18px + 1vw), 30px);
    line-height: 1.2;
    text-wrap: balance;
}

html #article > h1,
html #profile h1 {
    font-size: clamp(22px, calc(18px + 0.8vw), 28px);
    line-height: 1.25;
    text-wrap: balance;
}

/* Названия организаций повторяют размер и насыщенность заголовка основной карточки */
html #organisation > .head .organisation-head__name,
html #organisation .head .event-organisation-head__name,
html[lang="ru"] #elems-list.organisation.type_1 .elem h3 {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.35;
    overflow-wrap: break-word;
    text-wrap: wrap;
    word-break: normal;
    hyphens: none;
}

/* Даты, суммы и счётчики сохраняют постоянную ширину цифр при изменении значений */
#timer,
.order-timer,
.counter-tickets,
.marker,
.sessions,
.event-element-head__sessions,
.orderTotalPrices,
.reviews-list .count,
.loyalty__level {
    font-variant-numeric: tabular-nums;
}

/* Обычный русский текст переносится по словам и слогам без произвольного разрыва букв */
html[lang="ru"] #organisation > .head .organisation-head__identity,
html[lang="ru"] #organisation > .head .organisation-head__contacts .city,
html[lang="ru"] #organisation > .head .organisation-head__params,
html[lang="ru"] #elems-list .elem .c,
html[lang="ru"] #organisation .event-viewer .event-element-head__title,
html[lang="ru"] #organisation .event-organisation-head__identity,
html[lang="ru"] #organisation .event-organisation-head__contacts .city,
html[lang="ru"] #organisation .event-viewer .event-element-head__description,
html[lang="ru"] #organisation .organisation-informs .ck-content,
html[lang="ru"] #organisation .reviews-list .item .a,
html[lang="ru"] #organisation .reviews-list .item .c,
html[lang="ru"] .quick-tickets-filter-chip,
html[lang="ru"] #footer .quick-tickets-footer__meta-text {
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: auto;
}

/* Мелкий вторичный текст сохраняет достаточный контраст на светлых поверхностях */
#pageVerticalBlock #filter ul.values li label .count {
    color: #727272;
    font-size: 0.75em;
    opacity: 1;
}

/* Ссылка покупки в тёмной шапке остаётся читаемой во всех состояниях */
html #organisation .event-viewer .event-element-head__buy,
html #organisation .event-viewer .event-element-head__buy a {
    color: #d0d0d0;
}

/* Служебные подписи подвала читаются на тёмном фоне без конкуренции с основными ссылками */
#footer .quick-tickets-footer__meta {
    color: #a8a8a8;
}

#footer #copyright .quick-tickets-footer__meta-text span {
    color: #c2c2c2;
}
