/* cn3-plus / typography: единый стандарт шрифтов.
 * Файл собран автоматически по всем стилям темы: каждому заголовку, подписи и мета-строке назначена роль,
 * а роль задаёт размер, вес и межстрочный интервал. Размеры берутся из переменных --t-* (foundation.css),
 * поэтому всю шкалу можно поменять в одном месте.
 * Селекторы начинаются с «body», чтобы перебить и стили файлов, и встроенные стили шаблонов. */

/* Крупный заголовок (обложки, главные страницы разделов) */
body .cn3-evt-title,
body .cn3-folio-title,
body .cn3-thub-arc-head__title,
body .cn3-trend-hero__title,
body .error-section__title,
body .object-blocks .page-header h1,
body .object-glassy .hero h1,
body .single-post--l2 .cn3-l2-hero__title,
body .submit-rating .hero-content h1,
body .versal-hero h1,
body .wg2-hero__title {
  font-size: var(--t-display); font-weight: var(--bold, 600); line-height: var(--lh-tight, 1.15);
}

/* Заголовок страницы */
body .cn3-arc-head__title,
body .cn3-single-title,
body .cn3-thub-hero__title,
body .cn3-thub-tile--feature .cn3-thub-tile__name,
body .cta-section h2,
body .evt-head__title,
body .expert-section h2,
body .feedback-title,
body .issue-meta h1,
body .kk-arc-head__title,
body .mk-profile__title,
body .object-blocks .rating-block h2,
body .object-clean h1,
body .object-template h1,
body .re-single-title,
body .section-title,
body .single-post--l3 .cn3-l3-title,
body .single-post__title,
body .submit-rating .rating-block h2,
body .tag-title {
  font-size: var(--t-h1); font-weight: var(--bold, 600); line-height: var(--lh-tight, 1.15);
}

/* Заголовок раздела */
body .cat-header__title,
body .cn3-evt-body > h2,
body .cn3-feat-hero__title,
body .cn3-single-body h2,
body .cn3-thub-section__title,
body .container__title,
body .expert-name,
body .feedback-title,
body .issue-meta h1,
body .object-blocks .section-title,
body .post-archive__title,
body .production-card h3,
body .re-archive-title,
body .re-breadcrumbs-title,
body .re-section-title,
body .search__title,
body .section-title,
body .single-post__title,
body .submit-rating .hero-form-section h2,
body .submit-rating .process-card h2 {
  font-size: var(--t-h2); font-weight: var(--bold, 600); line-height: var(--lh-snug, 1.3);
}

/* Крупный заголовок карточки / подраздела */
body .cat-header__title,
body .cn3-arc-group__title,
body .cn3-etl-group__title,
body .cn3-evt-body > h3,
body .cn3-hsec__title,
body .cn3-related__title,
body .cn3-tcard--big .cn3-tcard__title,
body .cn3-thub-tile__name,
body .cn3-tsec__title,
body .container__title,
body .evt-sec__title,
body .feat-article__title,
body .home-news-events .hne-title,
body .kk-group__title,
body .konkursy-block .kk-head__title,
body .mk-works__title,
body .object-blocks .criteria-card h3,
body .page-header h1,
body .product-card h3,
body .random-item__title,
body .re-card-title,
body .recommendations-title,
body .related-posts__title,
body .submit-rating .info-card h3,
body .submit-rating .warning-card h3 {
  font-size: var(--t-h3); font-weight: var(--bold, 600); line-height: var(--lh-snug, 1.3);
}

/* Заголовок карточки */
body .article-card h3,
body .card-title,
body .cn3-card__title,
body .cn3-etl__title,
body .cn3-feat-card__title,
body .cn3-folio-card__title,
body .cn3-hcard__title,
body .cn3-mfr-li__name,
body .cn3-single-body h3,
body .cn3-tcard__title,
body .evt-card__title,
body .featured-artice__title,
body .home-category-item__title,
body .home-news-events .hne-event-title,
body .kk-archive .kk-card__title,
body .konkursy-block .kk-card__title,
body .last-news__title,
body .magazine-issue-title,
body .object-card-title,
body .obzor-box-title,
body .project-card h4,
body .re-detail-block-title,
body .re-post-nav-title,
body .recent-artice__title,
body .recommendations-title,
body .section-title,
body .share-btns__title,
body .submit-rating .step-content h4,
body .top-block__title,
body .wg2-card__title,
body .wg2-feat h3,
body .widget__title,
body .widget_block h2 {
  font-size: var(--t-card); font-weight: var(--bold, 600); line-height: var(--lh-snug, 1.3);
}

/* Текст интерфейса */
body .authors-item__descr,
body .cn3-single-date,
body .comment__meta,
body .footer-content__text,
body .footer-menu li,
body .footer__widget li,
body .footer__widget p,
body .re-meta-item,
body .recent-artice__footer,
body figcaption {
  font-size: var(--t-ui); line-height: var(--lh-base, 1.6);
}

/* Мета-строки: даты, города, счётчики */
body ' . '.cn3-trend-chip,
body ' . '.cn3-trends__label,
body .acf-postbox h2.hndle,
body .add-form-title,
body .article-card .meta,
body .cn3-arc-group__count,
body .cn3-card__meta,
body .cn3-chip,
body .cn3-etl__city,
body .cn3-etl__deadline,
body .cn3-fact-card__title,
body .cn3-feat-card__meta,
body .cn3-folio-card__meta,
body .cn3-folio-kicker,
body .cn3-hcard__meta,
body .cn3-meta-grid dd,
body .cn3-mfrate__count,
body .cn3-mfrate__label,
body .cn3-single-kicker,
body .cn3-status-badge,
body .cn3-tcard__meta,
body .cn3-thub-arc-head__kicker,
body .cn3-thub-hero__kicker,
body .cn3-tpill__name,
body .cn3-trend-hero__count,
body .cn3-trend-hero__kicker,
body .cn3-trendbar__label,
body .contact-label,
body .credits__copy,
body .credits__site-descr,
body .evt-sec__count,
body .expert-badge,
body .file-input-label,
body .file-name,
body .form-label,
body .gallery-caption,
body .home-news-events .hne-event-date,
body .item-footer,
body .kk-archive .kk-card__deadline,
body .kk-archive .kk-card__meta,
body .kk-archive .kk-chip,
body .kk-group__count,
body .konkursy-block .kk-card__deadline,
body .konkursy-block .kk-card__meta,
body .last-news__date,
body .magazine-issue-meta,
body .mk-works__name,
body .more-article-item .meta,
body .next-floating-block .next-label,
body .object-blocks .meta,
body .object-clean .meta,
body .object-clean .next-post-title,
body .object-glassy .meta,
body .object-glassy .next-post-title,
body .object-template .meta,
body .popular-footer__date,
body .post-navigation .nav-links__label,
body .random-item__label,
body .re-card-date,
body .re-detail-item-label,
body .re-score-label,
body .re-single-footer-date,
body .stat-label,
body .sub-title,
body .wg2-stat__label,
body .widget #wp-calendar caption,
body .widget_categories .cat-item__count,
body .wp-caption,
body .wp-caption-text {
  font-size: var(--t-meta); line-height: 1.4;
}

/* Метки над заголовками */
body .acf-label label,
body .chip-copy,
body .chip-rank,
body .cn3-card__img .cn3-status-badge,
body .cn3-card__kicker,
body .cn3-etl__kicker,
body .cn3-evt-facts__title,
body .cn3-evt-kicker,
body .cn3-feat-card__kicker,
body .cn3-feat-hero__kicker,
body .cn3-hbadge,
body .cn3-hcard__kicker,
body .cn3-meta-grid dt,
body .cn3-mfr-li__cat,
body .cn3-mfrate__hint,
body .cn3-tcard__kicker,
body .cn3-thub-badge,
body .ex-chip,
body .ex-title,
body .kk-archive .kk-badge,
body .konkursy-block .kk-badge,
body .makers-block .mk-meta,
body .match-label,
body .meta-hex,
body .meta-poetic,
body .meta-title,
body .mfr-cats__count,
body .object-views-badge,
body .re-info-title,
body .re-post-nav-label,
body .re-rating-badge,
body .re-rating-badge-link,
body .re-score-col-title,
body .results-label,
body .saved-date,
body .saved-name,
body .table-toolbar .mode-label {
  font-size: var(--t-label); font-weight: var(--bold, 600); letter-spacing: .05em; line-height: 1.3;
}

/* ---- Заголовки внутри статей: одна иерархия для всех макетов ---- */
body .post-content h2,
body .cn3-single-body h2,
body .cn3-evt-body h2,
body .cn3-content-narrow h2,
body .cn3-thub-body h2 { font-size: var(--t-c-h2); font-weight: var(--bold, 600); line-height: var(--lh-snug, 1.3); }
body .post-content h3,
body .cn3-single-body h3,
body .cn3-evt-body h3,
body .cn3-content-narrow h3,
body .cn3-thub-body h3 { font-size: var(--t-c-h3); font-weight: var(--bold, 600); line-height: var(--lh-snug, 1.3); }
body .post-content h4,
body .post-content h5,
body .post-content h6,
body .cn3-single-body h4,
body .cn3-evt-body h4,
body .cn3-content-narrow h4 { font-size: var(--t-c-h4); font-weight: var(--bold, 600); line-height: var(--lh-snug, 1.3); }

/* ---- Подвал сайта: одинаковые размеры вместо .8 / .88 / .9 / .94 ---- */
body .footer__widget li,
body .footer__widget p { font-size: var(--t-ui) !important; }
body .footer-menu li,
body .footer-menu .menu-item a,
body .footer-content__text,
body .footer-content__text p { font-size: var(--t-ui); }
body .credits__copy,
body .credits__site-descr,
body .credits__link,
body .credits__counter { font-size: var(--t-meta); }
body .footer-site-title,
body .footer .widget__title { font-size: var(--t-h3); font-weight: var(--bold, 600); line-height: var(--lh-snug, 1.3); }
body .footer,
body .footer * { font-family: var(--primeFont); }

/* ---- Длинные заголовки в карточках обрезаются многоточием (не больше трёх строк), чтобы сетка не «гуляла» ---- */
body .cn3-card__title,
body .home-category-item__title,
body .last-news__title,
body .featured-artice__title,
body .recent-artice__title,
body .random-item__title,
body .evt-card__title,
body .kk-card__title,
body .cn3-hcard__title,
body .cn3-feat-card__title,
body .cn3-tcard__title,
body .cn3-folio-card__title,
body .re-card-title,
body .article-card h3,
body .project-card h4 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow-wrap: anywhere;
}

/* ---- Карточки «Читайте также»: заголовок не длиннее двух строк, мета-строка в одну строку ---- */
body .cn3-tcard__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow-wrap: anywhere;
}
body .cn3-tcard__meta,
body .cn3-tcard__kicker {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body .cn3-related { margin-top: 2rem; }
