/* Final dialogue CTA — scoped under .kovalchuk-final-dialogue */

/* display:flex ниже перебивает HTML [hidden] — архив обязан быть скрыт */
.kovalchuk-final-dialogue[hidden],
.kovalchuk-final-dialogue[data-enabled="false"] {
  display: none !important;
}

.kovalchuk-final-dialogue {
  --kfd-bg: #191815;
  --kfd-ink: #f5f2ec;
  --kfd-muted: rgba(245, 242, 236, 0.74);
  --kfd-soft: rgba(245, 242, 236, 0.5);
  --kfd-line: rgba(245, 242, 236, 0.35);
  position: relative;
  background:
    radial-gradient(ellipse 70% 55% at 88% 12%, rgba(255, 255, 255, 0.045), transparent 60%),
    var(--kfd-bg);
  color: var(--kfd-ink);
  min-height: 78vh;
  display: flex;
  align-items: center;
  padding: 140px 0;
  box-sizing: border-box;
}

.kovalchuk-final-dialogue__inner {
  width: calc(100% - 96px);
  max-width: 1100px;
  margin: 0 auto;
  box-sizing: border-box;
}

.kovalchuk-final-dialogue__label {
  /* Typography delegated to .kovalchuk-section-label */
  display: block;
}

.kovalchuk-final-dialogue__title {
  font-family: "room", sans-serif;
  font-size: clamp(48px, 6vw, 84px);
  font-weight: 300;
  line-height: 1.08;
  letter-spacing: -0.02em;
  color: var(--kfd-ink);
  margin: 0 0 28px;
  max-width: 14ch;
  text-transform: none;
}

.kovalchuk-final-dialogue__lead {
  font-family: "Inter", sans-serif;
  font-size: clamp(17px, 1.2vw, 19px);
  line-height: 1.65;
  color: var(--kfd-muted);
  margin: 0 0 40px;
  max-width: 42ch;
}

.kovalchuk-final-dialogue__action {
  appearance: none;
  background: none;
  border: 0;
  border-bottom: 1px solid var(--kfd-line);
  padding: 0 0 8px;
  margin: 0;
  font-family: "Inter", sans-serif;
  font-size: 20px;
  letter-spacing: 0.02em;
  color: var(--kfd-ink);
  cursor: pointer;
  display: inline-flex;
  gap: 12px;
  align-items: center;
  transition: gap 240ms ease, border-color 240ms ease;
}

.kovalchuk-final-dialogue__action:hover {
  gap: 18px;
  border-bottom-color: rgba(245, 242, 236, 0.7);
}

.kovalchuk-final-dialogue__action:focus-visible {
  outline: 1px solid rgba(245, 242, 236, 0.55);
  outline-offset: 4px;
}

.kovalchuk-final-dialogue__extra {
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: var(--kfd-soft);
  margin: 28px 0 0;
  max-width: 40ch;
}

/* Keep existing overlay markup/handlers; restyle for dark page context */
.kovalchuk-final-dialogue .kbs-cta-overlay {
  background: rgba(16, 15, 13, 0.72);
}

.kovalchuk-final-dialogue .kbs-cta-overlay__panel {
  background: #f7f5f0;
  color: #1c1b17;
}

@media (prefers-reduced-motion: reduce) {
  .kovalchuk-final-dialogue__action {
    transition: none !important;
  }
}

@media (max-width: 1100px) {
  .kovalchuk-final-dialogue__inner {
    width: calc(100% - 72px);
  }
}

@media (max-width: 767px) {
  .kovalchuk-final-dialogue {
    min-height: 0;
    padding: 96px 0 88px;
  }

  .kovalchuk-final-dialogue__inner {
    width: calc(100% - 44px);
  }

  .kovalchuk-final-dialogue__title {
    font-size: clamp(40px, 10vw, 48px);
    max-width: none;
  }

  .kovalchuk-final-dialogue__lead {
    font-size: 16px;
    margin-bottom: 32px;
  }

  .kovalchuk-final-dialogue__action {
    font-size: 18px;
  }
}
