/* ============================================================
   СПРК · WordPress: блоки редактора внутри страниц, формы, пагинация
   ============================================================ */

/* секции на страницах (блок «Группа» с классом kz-section) */
.kz-content > .kz-section,
.kz-content > .wp-block-group.kz-section { margin-bottom: clamp(56px, 6vw, 110px); }
.kz-content > .kz-section:last-child { margin-bottom: 0; }
.kz-content > *:first-child { margin-top: 0; }

/* надзаголовок как на главной */
.kz-content .kz-eyebrow {
  display: inline-flex; align-items: center; gap: 10px;
  color: var(--ul-primary); font-family: var(--font-quicksand); font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase; font-size: clamp(13px, .85vw, 15px);
  margin: 0 0 12px;
}
.kz-content .kz-eyebrow::before { content: ""; width: 26px; height: 2px; background: var(--kz-gold-grad); border-radius: 2px; }

/* заголовки секций на страницах (не в статье) */
.kz-content:not(.kz-prose) > h2,
.kz-content:not(.kz-prose) .kz-section > h2,
.kz-content:not(.kz-prose) .wp-block-column > h2,
.kz-content:not(.kz-prose) .wp-block-group > h2 {
  font-family: var(--font-quicksand); font-weight: 800; letter-spacing: -0.02em;
  font-size: clamp(26px, 2.3vw, 44px); line-height: 1.2; color: var(--ul-black);
  margin: 0 0 18px;
}
.kz-content h3 { font-family: var(--font-quicksand); font-weight: 700; color: var(--ul-black); font-size: clamp(18px, 1.25vw, 22px); line-height: 1.3; margin: 0 0 10px; }
.kz-content:not(.kz-prose) p { color: var(--ul-p); line-height: 1.7; font-size: clamp(16px, 1vw, 18px); }
.kz-content .kz-intro-text { max-width: 860px; }

/* колонки */
.kz-content .wp-block-columns { gap: clamp(20px, 2vw, 32px); margin-bottom: 0; }
.kz-content .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column { flex-basis: 0; }
.kz-content .wp-block-columns.are-vertically-aligned-center { align-items: center; }

/* карточки: колонки/группы с классом kz-card */
.kz-content .wp-block-column.kz-card,
.kz-content .wp-block-group.kz-card { height: auto; }
.kz-content .kz-cards { flex-wrap: wrap !important; }
.kz-content .kz-cards > .wp-block-column { flex: 1 1 calc(33.333% - 32px) !important; min-width: 260px; }
.kz-content .kz-cards.kz-cards-2 > .wp-block-column { flex-basis: calc(50% - 32px) !important; }
.kz-content .kz-card > *:last-child { margin-bottom: 0; }
.kz-content .kz-card--dark h2, .kz-content .kz-card--dark h3 { color: #fff; }
.kz-content .kz-card--dark p { color: #EAF6F9; }
.kz-content .kz-card--dark .kz-eyebrow { color: var(--kz-gold-2); }
.kz-content .kz-card .kz-card-num { margin-bottom: 14px; }

/* лента истории: колонки с классом kz-timeline */
.kz-content .kz-timeline { display: flex; gap: 0 !important; border-top: 2px solid #D5EEF1; }
.kz-content .kz-timeline > .wp-block-column { padding: 26px 24px 0 0; position: relative; }
.kz-content .kz-timeline > .wp-block-column::before {
  content: ""; position: absolute; top: -8px; left: 0; width: 14px; height: 14px; border-radius: 50%;
  background: #fff; border: 3px solid var(--ul-primary);
}
.kz-content .kz-year { font-family: var(--font-quicksand); font-weight: 800 !important; font-size: clamp(26px, 2vw, 36px) !important; color: var(--ul-primary) !important; margin: 0 0 6px; line-height: 1.2; }
@media (max-width: 781px) {
  .kz-content .kz-timeline { border-top: 0; flex-direction: column; gap: 28px !important; }
  .kz-content .kz-timeline > .wp-block-column { border-top: 2px solid #D5EEF1; }
}

/* картинки в контенте */
.kz-content .wp-block-image img { border-radius: 22px; width: 100%; height: auto; object-fit: cover; }
.kz-content .wp-block-image { margin: 0 0 20px; }
.kz-content .kz-founder-card .wp-block-image img { aspect-ratio: 5 / 6; }

/* таблицы */
.kz-content .wp-block-table { margin: 6px 0 18px; overflow-x: auto; }
.kz-content .wp-block-table table { width: 100%; border-collapse: collapse; font-size: 16px; table-layout: auto; }
.kz-content .wp-block-table td, .kz-content .wp-block-table th { border: 1px solid #DCEBEE; padding: 13px 16px; text-align: left; vertical-align: top; color: var(--ul-p); word-break: break-word; }
.kz-content .wp-block-table tr td:first-child { background: #F3F6F7; color: var(--ul-black); font-weight: 600; width: 32%; }

/* цитаты */
.kz-content .wp-block-quote {
  margin: 0 0 18px; padding: clamp(20px, 1.8vw, 30px); background: var(--ul-c4); border-radius: 20px; border: 0;
  font-size: clamp(17px, 1.15vw, 20px); color: var(--ul-black); line-height: 1.55;
}
.kz-content .wp-block-quote p { color: var(--ul-black) !important; margin: 0; }
.kz-content .wp-block-quote cite { display: block; margin-top: 10px; font-size: 15px; font-style: normal; color: var(--ul-p); }

/* списки */
.kz-content ul.wp-block-list:not(.kz-checks) { padding-left: 1.2em; }
.kz-content ul.wp-block-list li { margin-bottom: 8px; }

/* шорткоды команды внутри страниц */
.kz-content .kz-sc-team { margin-top: 0; }
.kz-content .ul-team-member-name, .kz-content .ul-team-member-name a { color: var(--ul-black); }

/* пагинация */
.kz-pagination { display: flex; gap: 8px; justify-content: center; margin-top: 40px; flex-wrap: wrap; }
.kz-pagination .page-numbers {
  min-width: 44px; height: 44px; padding: 0 10px; display: inline-flex; align-items: center; justify-content: center;
  border: 1px solid #DCEBEE; border-radius: 12px; color: var(--ul-black); font-weight: 600;
}
.kz-pagination .page-numbers.current, .kz-pagination .page-numbers:hover { background: var(--ul-primary); border-color: var(--ul-primary); color: #fff; }

/* формы */
.kz-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.kz-form-msg { padding: 14px 18px; border-radius: 12px; margin-bottom: 18px; font-weight: 600; }
.kz-form-msg--ok { background: #E7F6EC; color: #1C6B3A; }
.kz-form-msg--err { background: #FDECEA; color: #A33A2E; }
.kz-sub-msg { color: #fff; margin: 6px 0; }

/* поиск */
.kz-search-list { list-style: none; padding: 0; margin: 0; }
.kz-search-list li { padding: 18px 0; border-bottom: 1px solid #EDF3F4; }
.kz-search-list a { font-family: var(--font-quicksand); font-weight: 700; font-size: 20px; color: var(--ul-black); }
.kz-search-list p { margin: 6px 0 0; }

/* админ-панель WP не перекрывает липкую шапку */
.admin-bar .ul-header-bottom.sticky { top: 32px; }
@media (max-width: 782px) { .admin-bar .ul-header-bottom.sticky { top: 46px; } }

/* полоса-призыв внутри контента: светлый текст */
.kz-content .kz-cta-band p { color: #C9DDE2 !important; margin: 0; }
.kz-content .kz-cta-band h2 { color: #fff !important; }

/* фото записи: фиксированная пропорция, атрибут height не растягивает */
.kz-prose-img img { height: auto !important; aspect-ratio: 16 / 9; object-fit: cover; }

/* таблицы на телефоне: строки в столбик */
@media (max-width: 575px) {
  .kz-content .wp-block-table tr, .kz-table tr { display: block; border: 1px solid #DCEBEE; border-bottom: 0; }
  .kz-content .wp-block-table tr:last-child, .kz-table tr:last-child { border-bottom: 1px solid #DCEBEE; }
  .kz-content .wp-block-table td, .kz-table th, .kz-table td { display: block; width: 100% !important; border: 0; padding: 8px 14px; }
  .kz-content .wp-block-table tr td:first-child { padding-bottom: 4px; }
}

/* первый экран на телефоне: подпись не наезжает на аватарки */
.ul-banner-stat .imgs { flex-shrink: 0; }
@media (max-width: 575px) { .ul-banner-stat { flex-wrap: wrap; } }
