/* ───────────────────────────────────────────────────────────────
 * K-Promo — PATCH 1.6
 * ───────────────────────────────────────────────────────────────
 * Финальный фикс расхождений с дизайном (после попиксельного сравнения):
 *
 *   1. Точки слайдера складываются в столбик, должны быть в ряд
 *      Причина: WoodMart грузит на button-элементах внутри hero
 *      flex-direction: column через какой-то родительский селектор,
 *      либо overflow родителя обрезает их позиционирование.
 *      Фикс: жёсткий flex-direction:row + overflow:visible на hero.
 *
 *   2. "ВСЕ КАТЕГОРИИ" блёкло-серое вместо чисто белого
 *      Причина: WoodMart ставит color на button-элементах.
 *      Фикс: цвет белый с !important на всех вложенных элементах.
 *
 *   3. "Заказать звонок" и "0 ₽" — не должны быть uppercase.
 *
 *   4. Точки слайдера обрезаются из-за overflow:hidden у hero.
 *
 * Подключается ПОСЛЕ patch-1.5.css.
 * ─────────────────────────────────────────────────────────────── */


/* ═══════════════════════════════════════════════════════════════
 * FIX 1 — Точки слайдера: горизонтальный ряд
 * ═══════════════════════════════════════════════════════════════ */

body.kp-body .kp-hero-dots {
  position: absolute !important;
  bottom: -20px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  z-index: 5 !important;
  width: auto !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.kp-body .kp-hero-dots > button,
body.kp-body .kp-hero-dots .kp-dot,
body.kp-body .kp-hero-dots .dot {
  flex: 0 0 auto !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: var(--ink) !important;
  opacity: 0.18 !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  cursor: pointer !important;
  transition: all .2s !important;
  display: block !important;
  outline: 0 !important;
  box-shadow: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  line-height: 0 !important;
}

body.kp-body .kp-hero-dots > button.is-active,
body.kp-body .kp-hero-dots .kp-dot.is-active,
body.kp-body .kp-hero-dots .dot.is-active {
  opacity: 1 !important;
  width: 24px !important;
  border-radius: 4px !important;
}

body.kp-body .kp-hero-dots > button:hover,
body.kp-body .kp-hero-dots .kp-dot:hover,
body.kp-body .kp-hero-dots .dot:hover {
  opacity: 0.5 !important;
}


/* ═══════════════════════════════════════════════════════════════
 * FIX 2 — "ВСЕ КАТЕГОРИИ" — чисто белый
 * ═══════════════════════════════════════════════════════════════ */

body.kp-body .kp-snav-allcats {
  background: var(--ink) !important;
  color: #fff !important;
}
body.kp-body .kp-snav-allcats,
body.kp-body .kp-snav-allcats *,
body.kp-body .kp-snav-allcats span,
body.kp-body .kp-snav-allcats svg {
  color: #fff !important;
  fill: currentColor;
}
body.kp-body .kp-snav-allcats svg {
  stroke: #fff !important;
}
body.kp-body .kp-snav-allcats:hover,
body.kp-body .kp-snav-allcats.is-open {
  background: #1a1a1a !important;
  color: #fff !important;
}


/* ═══════════════════════════════════════════════════════════════
 * FIX 3 — "Заказать звонок" и "0 ₽" — НЕ uppercase
 * ═══════════════════════════════════════════════════════════════ */

body.kp-body .kp-cta-call,
body.kp-body button.kp-cta-call {
  text-transform: none !important;
  letter-spacing:normal!important;
  font-weight: 700 !important;
  font-size: 15px !important;
}

body.kp-body .kp-snav-cart,
body.kp-body .kp-snav-cart-sum {
  text-transform: none !important;
  letter-spacing:normal!important;
  font-weight: 800 !important;
}


/* ═══════════════════════════════════════════════════════════════
 * FIX 4 — Заголовок hero
 * ═══════════════════════════════════════════════════════════════ */

body.kp-body .kp-hero-title {
  font-weight: 900 !important;
  font-size: 64px !important;
  line-height: 0.98 !important;
  letter-spacing:normal!important;
  text-transform: uppercase !important;
  white-space: normal !important;
  word-break: keep-all;
  hyphens: none;
  max-width: 100%;
  margin: 0 0 32px !important;
}


/* ═══════════════════════════════════════════════════════════════
 * FIX 5 — Защита от overflow:hidden, который резал точки
 * ═══════════════════════════════════════════════════════════════ */

body.kp-body .kp-hero {
  overflow: visible !important;
}
body.kp-body .kp-hero-right {
  overflow: visible !important;
}
