/* ══════════════════════════════════════════════════════════════
   shared.css — базовые стили, общие для home.html и profile-company.html
   (токены, сброс, типография, логотип, official-bar, утилиты)
   ══════════════════════════════════════════════════════════════ */

/* ─── DESIGN TOKENS ────────────────────────────────────────── */
:root {
  /* Brand Blue (legacy — оставлено для обратной совместимости) */
  --brand-50:  #EFF6FF;
  --brand-100: #DBEAFE;
  --brand-200: #BFDBFE;
  --brand-300: #93C5FD;
  --brand-400: #60A5FA;
  --brand-500: #3B82F6;
  --brand-600: #2563EB;
  --brand-700: #1D4ED8;
  --brand-800: #1E40AF;
  --brand-900: #1E3A8A;

  /* Blue scale (новая, рекомендованная). --blue-600 — основной бренд. */
  --blue-25:  #F5F9FF;
  --blue-50:  #EFF6FF;
  --blue-100: #DBEAFE;
  --blue-200: #BFDBFE;
  --blue-300: #93C5FD;
  --blue-500: #3B82F6;
  --blue-600: #1D4ED8;
  --blue-700: #1E40AF;
  --blue-800: #1E3A8A;
  --blue-900: #0B2A6B;

  /* Ink (нейтральная шкала, чуть холоднее) */
  --ink-900: #0B1220;
  --ink-800: #1B2536;
  --ink-700: #334155;
  --ink-600: #475569;
  --ink-500: #64748B;
  --ink-400: #94A3B8;
  --ink-300: #CBD5E1;
  --ink-200: #E2E8F0;
  --ink-150: #EAEEF4;
  --ink-100: #F1F5F9;
  --ink-50:  #F8FAFC;

  /* Поверхности */
  --bg-page:    #F7F9FC;
  --bg-card:    #FFFFFF;
  --bg-subtle:  #F8FAFC;

  /* Семантика */
  --success-50:  #ECFDF5;
  --success-500: #10B981;
  --success-600: #059669;
  --success-700: #047857;
  --warning-50:  #FFFBEB;
  --warning-500: #F59E0B;
  --warning-600: #D97706;
  --warning-700: #B45309;
  --danger-50:   #FEF2F2;
  --danger-500:  #EF4444;
  --danger-600:  #DC2626;
  --danger-700:  #B91C1C;
  --info-50:     #EFF6FF;
  --info-700:    #1D4ED8;

  /* Spacing */
  --space-8:  8px;
  --space-12: 12px;
  --space-16: 16px;
  --space-20: 20px;
  --space-24: 24px;

  /* Радиусы — единый небольшой радиус на всём сайте */
  --r-xs:  4px;
  --r-sm:  4px;
  --r-md:  4px;
  --r-lg:  4px;
  --r-xl:  4px;
  --r-2xl: 4px;
  --r-pill: 4px;

  /* Тени — холодный синий оттенок (rgba 15,32,71) вместо нейтрального серого */
  --shadow-xs:   0 1px 2px rgba(15, 32, 71, 0.04);
  --shadow-sm:   0 2px 8px rgba(15, 32, 71, 0.06);
  --shadow-md:   0 8px 24px rgba(15, 32, 71, 0.08);
  --shadow-lg:   0 20px 48px -12px rgba(15, 32, 71, 0.12);
  --shadow-xl:   0 28px 64px -16px rgba(15, 32, 71, 0.18);
  --shadow-glow: 0 0 0 4px rgba(29, 78, 216, 0.10);
  /* legacy alias'ы — оставлены, чтобы не ломать существующие места использования */
  --shadow-glow-blue: var(--shadow-glow);
  --shadow-glow-blue-strong: 0 0 0 4px rgba(29, 78, 216, 0.18), 0 14px 32px rgba(29, 78, 216, 0.22);

  /* Easing */
  --ease-out:      cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out:   cubic-bezier(0.65, 0, 0.35, 1);
  /* legacy alias'ы */
  --ease-out-expo: var(--ease-out);
  --ease-smooth:   cubic-bezier(0.32, 0.72, 0, 1);
  --ease-emph:     cubic-bezier(0.4, 0, 0.2, 1);

  /* Длительности */
  --t-fast:  120ms;
  --t-base:  200ms;
  --t-slow:  360ms;

  /* Sticky offset */
  --header-h: 64px;
}

/* ─── RESET ────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }

html, body {
  margin: 0;
  padding: 0;
  font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif;
  color: var(--ink-900);
  background: var(--bg-page);
  font-size: 14px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "ss01", "cv11";
  text-rendering: optimizeLegibility;
}

button, input, textarea, select { font-family: inherit; color: inherit; caret-color: var(--brand-600); }
a { color: var(--brand-700); text-decoration: none; transition: text-decoration-color var(--t-fast) ease; }
a:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }

/* Заголовки — единый Inter, отличаются весом и letter-spacing */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif;
  margin: 0;
  letter-spacing: -0.018em;
  color: var(--ink-900);
  font-weight: 600;
}
h1 { letter-spacing: -0.025em; }
h2 { letter-spacing: -0.022em; }

/* Акценты внутри текстов — единый стиль для всех страниц */
strong, b {
  font-weight: 600;
  color: var(--ink-900);
}
mark {
  background: rgba(37, 99, 235, 0.10);
  color: var(--brand-700);
  padding: 0 4px;
  border-radius: 3px;
  font-weight: 600;
}
em { font-style: normal; color: var(--brand-700); font-weight: 500; }

/* Числовые/код-блоки — везде моноширинный */
code, samp, kbd, .num, .mono-num {
  font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif;
  font-variant-numeric: tabular-nums;
}

/* Utility-классы для выделения важного */
.text-emph    { color: var(--ink-900); font-weight: 600; }
.text-accent  { color: var(--brand-700); font-weight: 600; }
.text-muted   { color: var(--ink-500); }
.text-mono    { font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif; font-variant-numeric: tabular-nums; }
.text-display { font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif; font-weight: 600; letter-spacing: -0.022em; }

*:focus { outline: none; }
*:focus-visible {
  outline: 2px solid var(--brand-500);
  outline-offset: 2px;
}
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
[role="button"]:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(37,99,235,0.25) !important;
}

::selection { background: var(--brand-100); color: var(--brand-900); }

kbd {
  font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif;
  font-size: 12px;
  padding: 1px 6px;
  border-radius: var(--r-xs);
  background: var(--ink-100);
  border: 1px solid var(--ink-200);
  color: var(--ink-700);
}

body::-webkit-scrollbar { width: 0; height: 0; }
* { scrollbar-width: thin; scrollbar-color: var(--ink-300) transparent; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
  background: var(--ink-300);
  border-radius: 999px;
  border: 2px solid transparent;
  background-clip: padding-box;
}
::-webkit-scrollbar-thumb:hover { background: var(--ink-400); border: 2px solid transparent; background-clip: padding-box; }

/* ─── Анимации ─────────────────────────────────────────────── */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes pulse {
  0%, 100% { opacity: 1;    transform: scale(1); }
  50%      { opacity: 0.55; transform: scale(1.35); }
}
@keyframes hdrPop {
  from { opacity: 0; transform: translateY(-4px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes hdrDrawer {
  from { transform: translateX(-100%); }
  to   { transform: translateX(0); }
}
@keyframes hdrFade {
  from { opacity: 0; }
  to   { opacity: 1; }
}

.pulse { animation: pulse 1.8s ease-in-out infinite; }

.fu      { animation: fadeUp 500ms cubic-bezier(0.16, 1, 0.3, 1) both; }
.fu-1    { animation-delay:   0ms; }
.fu-2    { animation-delay:  80ms; }
.fu-3    { animation-delay: 160ms; }
.fu-4    { animation-delay: 240ms; }
.fu-5    { animation-delay: 320ms; }
.fu-6    { animation-delay: 400ms; }

button:disabled,
input:disabled,
textarea:disabled,
select:disabled,
[aria-disabled="true"] {
  opacity: 0.4 !important;
  cursor: not-allowed !important;
}

.cmdk-backdrop {
  position: fixed;
  inset: 0;
  z-index: 240;
  background: rgba(15,23,42,0.28);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 96px 16px 16px;
}
.cmdk-dialog {
  width: min(560px, 100%);
  background: #fff;
  border: 1px solid var(--ink-200);
  border-radius: 12px;
  box-shadow: var(--shadow-xl);
  overflow: hidden;
}
.cmdk-search {
  height: 52px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 12px;
  border-bottom: 1px solid var(--ink-150);
}
.cmdk-search input {
  flex: 1;
  border: 0;
  outline: 0;
  font-size: 14px;
  color: var(--ink-900);
}
.cmdk-ico { color: var(--ink-400); font-size: 18px; }
.cmdk-list { padding: 8px; display: grid; gap: 2px; }
.cmdk-list a {
  min-height: 44px;
  display: flex;
  align-items: center;
  padding: 0 12px;
  border-radius: 8px;
  color: var(--ink-700);
  font-weight: 500;
}
.cmdk-list a:hover { background: var(--ink-50); text-decoration: none; }

/* Глобальный brightness-hover убран:
   кнопки теперь используют чистые правила цвет/transform/shadow
   из секции .btn-primary / .btn-secondary / .btn-ghost ниже. */

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0ms !important;
    scroll-behavior: auto !important;
  }
  * {
    transition-property: opacity !important;
  }
}

/* ─── Логотип BePartner ────────────────────────────────────── */
.logo-lockup {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
}
.logo-slot {
  filter:
    drop-shadow(0 1px 1px rgba(29, 78, 216, 0.22))
    drop-shadow(0 5px 12px rgba(29, 78, 216, 0.28));
  transition: filter 180ms ease, transform 180ms ease;
}
.logo-lockup:hover .logo-slot {
  filter:
    drop-shadow(0 2px 2px rgba(29, 78, 216, 0.28))
    drop-shadow(0 7px 16px rgba(29, 78, 216, 0.34));
  transform: translateY(-1px);
}
.logo-flag,
.logo-flag-wrap {
  width: 22px;
  height: 15px;
  border-radius: 2px;
  box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.06), 0 1px 2px rgba(15, 23, 42, 0.04);
  flex-shrink: 0;
  overflow: hidden;
}

/* ─── KR-бейдж (красная рамка с флагом) ────────────────────── */
.kr-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px 6px 8px;
  border-radius: 100px;
  background: rgba(220, 38, 38, 0.06);
  border: 1px solid rgba(220, 38, 38, 0.14);
}
.kr-badge-flag {
  width: 18px;
  height: 12px;
  border-radius: 2px;
  overflow: hidden;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05);
}
.kr-badge-text {
  font-size: 12px;
  font-weight: 600;
  color: #991B1B;
  letter-spacing: 0.01em;
}

.kr-badge-pc {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 5px 12px 5px 8px;
  border-radius: 100px;
  background: rgba(220, 38, 38, 0.06);
  border: 1px solid rgba(220, 38, 38, 0.14);
}

/* ─── Официальная плашка сверху (government ribbon) ────────── */
.official-bar {
  height: 32px;
  background: var(--ink-50);
  color: var(--ink-500);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.01em;
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--ink-200);
  position: relative;
  z-index: 51;
}
.official-bar-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
}
.official-bar .sep {
  width: 1px;
  height: 12px;
  background: rgba(255, 255, 255, 0.18);
}
.official-link {
  color: var(--ink-500);
  transition: color 120ms ease;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.official-link:hover { color: var(--brand-700); }

/* ─── Кнопки (hover'ы применяются через JS className) ──────── */
/*  Чистый плоский фон, без градиентов и glow'ов по умолчанию.   */
/*  Тень и подъём появляются только на hover/focus — premium feel. */
.btn-primary {
  background: var(--blue-600) !important;
  box-shadow: none !important;
  transition:
    background 200ms var(--ease-out),
    transform 200ms var(--ease-out),
    box-shadow 200ms var(--ease-out) !important;
  will-change: transform;
}
.btn-primary:hover:not(:disabled) {
  background: var(--blue-700) !important;
  transform: translateY(-1px);
  box-shadow: var(--shadow-md) !important;
  filter: none;
}
.btn-primary:active:not(:disabled) {
  transform: translateY(0);
  background: var(--blue-800) !important;
  box-shadow: var(--shadow-sm) !important;
}
.btn-primary:focus-visible {
  outline: none;
  box-shadow: var(--shadow-glow) !important;
}

.btn-secondary {
  transition:
    background 200ms var(--ease-out),
    border-color 200ms var(--ease-out),
    color 200ms var(--ease-out),
    transform 200ms var(--ease-out),
    box-shadow 200ms var(--ease-out);
}
.btn-secondary:hover:not(:disabled) {
  background: var(--blue-50) !important;
  border-color: var(--blue-200) !important;
  color: var(--blue-700) !important;
  transform: translateY(-1px);
  box-shadow: var(--shadow-sm) !important;
  filter: none;
}
.btn-secondary:active:not(:disabled) {
  transform: translateY(0);
  box-shadow: none !important;
}
.btn-secondary:focus-visible {
  outline: none;
  box-shadow: var(--shadow-glow) !important;
}

.btn-ghost {
  transition:
    background 200ms var(--ease-out),
    color 200ms var(--ease-out);
}
.btn-ghost:hover:not(:disabled) {
  background: var(--blue-50) !important;
  color: var(--blue-700) !important;
  filter: none;
}
.btn-ghost:focus-visible {
  outline: none;
  box-shadow: var(--shadow-glow) !important;
}

.chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  border: 1px solid var(--ink-200);
  background: #fff;
  color: var(--ink-700);
  font-weight: 600;
  white-space: nowrap;
}
.chip-sm { height: 22px; padding: 0 8px; font-size: 11px; }
.chip-md { height: 26px; padding: 0 10px; font-size: 12px; }
.chip-lg { height: 30px; padding: 0 12px; font-size: 13px; }
.chip-neutral { background: #fff; color: var(--ink-700); border-color: var(--ink-200); }
.chip-info { background: var(--brand-50); color: var(--brand-700); border-color: var(--brand-200); }
.chip-success { background: var(--success-50); color: var(--success-700); border-color: #A7F3D0; }
.chip-warning { background: var(--warning-50); color: var(--warning-700); border-color: #FDE68A; }
.chip-danger { background: var(--danger-50); color: var(--danger-700); border-color: #FECACA; }
.chip-dot {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: currentColor;
}

/* legacy alias — оставлен на переход с inline-копий */
.btn-ghost-dark { transition: background var(--t-fast) var(--ease-smooth), color var(--t-fast) var(--ease-smooth); }
.btn-ghost-dark:hover { background: var(--brand-50); color: var(--brand-700); }

/* spinner для loading-кнопок */
@keyframes bp-spin {
  to { transform: rotate(360deg); }
}

/* ─── Скроллбары dropdown'ов ───────────────────────────────── */
.hdr-scroll { scrollbar-width: thin; scrollbar-color: var(--ink-300) transparent; }
.hdr-scroll::-webkit-scrollbar        { width: 6px; height: 6px; }
.hdr-scroll::-webkit-scrollbar-track  { background: transparent; }
.hdr-scroll::-webkit-scrollbar-thumb  { background: var(--ink-300); border-radius: 3px; }
.hdr-scroll::-webkit-scrollbar-thumb:hover { background: var(--ink-400); }

/* ─── Tabs edge-fade ───────────────────────────────────────── */
.tabs-scroll { scrollbar-width: none; }
.tabs-scroll::-webkit-scrollbar { display: none; }

/* ─── Контейнер + общие секционные отступы ────────────────── */
.container { max-width: 1280px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }
@media (max-width: 767px) { .container { padding-left: 16px; padding-right: 16px; } }

/* ─── Утилитарные классы типографики ───────────────────────── */
.display-xl   { font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif; font-size: clamp(40px, 5.5vw, 72px); font-weight: 600; line-height: 1.05; letter-spacing: -0.03em; color: var(--ink-900); }
.t-display    { font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif; font-size: clamp(36px, 5.2vw, 56px); font-weight: 600; line-height: 1.05; letter-spacing: -0.025em; color: var(--ink-900); }
.t-h1         { font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif; font-size: clamp(28px, 3.6vw, 40px); font-weight: 600; line-height: 1.15; letter-spacing: -0.02em; color: var(--ink-900); }
.t-h2         { font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif; font-size: 28px; font-weight: 600; line-height: 1.22; letter-spacing: -0.015em; color: var(--ink-900); }
.t-h3         { font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif; font-size: 20px; font-weight: 600; line-height: 1.3;  letter-spacing: -0.01em;  color: var(--ink-900); }
.t-body-l     { font-size: 16px; line-height: 1.55; color: var(--ink-700); }
.t-body       { font-size: 14px; line-height: 1.55; color: var(--ink-800); }
.t-caption    { font-size: 13px; line-height: 1.45; color: var(--ink-600); }
.t-eyebrow    { font-size: 11px; line-height: 1.2;  letter-spacing: 0.08em; text-transform: uppercase; font-weight: 600; color: var(--brand-700); }
.t-mono       { font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif; font-variant-numeric: tabular-nums; }

/* ─── Декоративные разделители секций ──────────────────────── */
.divider-gradient {
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, var(--ink-200) 30%, var(--ink-200) 70%, transparent 100%);
  border: none;
  margin: 0;
}

/* ─── Reduce motion ────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ─── Skeleton-загрузка (LoadingState из ui-data.jsx) ──────────
   Shimmer допустим ТОЛЬКО здесь и в data-locked плашках. */
.skeleton, .ui-skeleton {
  background: linear-gradient(90deg,
    var(--ink-100) 0%,
    var(--brand-50) 50%,
    var(--ink-100) 100%);
  background-size: 200% 100%;
  background-position: 100% 0;
  animation: ui-skeleton-shimmer 1500ms linear infinite;
  border-radius: var(--r-sm);
}
@keyframes ui-skeleton-shimmer {
  0%   { background-position: 100% 0; }
  100% { background-position: -100% 0; }
}
@media (prefers-reduced-motion: reduce) {
  .skeleton, .ui-skeleton {
    animation: none;
    background: var(--ink-100);
  }
}

/* ─── Responsive: hide official-bar on mobile ──────────────── */
@media (max-width: 767px) {
  .official-bar { display: none !important; }
  .official-bar-inner { padding: 0 16px; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .official-bar-inner { padding: 0 24px; }
}

/* ══════════════════════════════════════════════════════════════
   MASK SYSTEM — paywall masking mode
   html[data-mask-mode="on"]  = данные скрыты (default)
   html[data-mask-mode="off"] = данные раскрыты (demo/premium)
   ══════════════════════════════════════════════════════════════ */

/* ─── Паттерн A/B: dot-redaction (.data-locked / .data-blur) */
/*  Значение закрывается плотной строкой точек. Текст задаёт   */
/*  ширину, а поверх точек остаётся мягкий стеклянный блик.    */
html[data-mask-mode="on"] .data-locked,
html[data-mask-mode="on"] .data-blur {
  display: inline-block;
  vertical-align: baseline;
  position: relative;
  color: transparent !important;
  text-shadow: none !important;
  user-select: none;
  cursor: pointer;
  border-radius: 3px;
  padding: 0 3px;
  line-height: 1.18;
  letter-spacing: normal !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.54) 0%, rgba(255,255,255,0.16) 44%, rgba(255,255,255,0) 100%),
    radial-gradient(circle, rgba(15,23,42,0.78) 1.1px, transparent 1.45px) 1px 50% / 7px 7px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.48),
    inset 0 -1px 0 rgba(15,23,42,0.035),
    0 0 0 1px rgba(255,255,255,0.26);
  overflow: hidden;
  transition:
    opacity 160ms ease,
    box-shadow 160ms ease;
  -webkit-font-smoothing: antialiased;
}
html[data-mask-mode="on"] .data-locked::before,
html[data-mask-mode="on"] .data-blur::before {
  content: "";
  position: absolute;
  top: 0;
  left: -60%;
  width: 42%;
  height: 100%;
  background: linear-gradient(
    105deg,
    transparent 0%,
    rgba(255,255,255,0) 28%,
    rgba(255,255,255,0.78) 50%,
    rgba(255,255,255,0) 72%,
    transparent 100%
  );
  transform: skewX(-20deg);
  animation: bp-redaction-shine 3.4s ease infinite;
  pointer-events: none;
}
@keyframes bp-redaction-shine {
  0%   { left: -60%; opacity: 0; }
  10%  { opacity: 0.8; }
  42%  { left: 125%; opacity: 0.8; }
  43%  { opacity: 0; }
  100% { left: 130%; opacity: 0; }
}
html[data-mask-mode="on"] .data-locked:hover,
html[data-mask-mode="on"] .data-blur:hover {
  opacity: 0.88;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.62),
    inset 0 -1px 0 rgba(15,23,42,0.04);
}
html[data-mask-mode="on"] .data-locked > *,
html[data-mask-mode="on"] .data-blur > * { visibility: hidden; }

html[data-mask-mode="on"] .data-locked { min-width: 3em; }
html[data-mask-mode="on"] .data-blur   { min-width: 2.5em; }
html[data-mask-mode="on"] .mask-w-xs { min-width: 4.5em; }
html[data-mask-mode="on"] .mask-w-sm { min-width: 7em; }
html[data-mask-mode="on"] .mask-w-md { min-width: 10em; }
html[data-mask-mode="on"] .mask-w-lg { min-width: 14em; }
html[data-mask-mode="on"] .mask-w-xl { min-width: 18em; }
html[data-mask-mode="on"] .mask-w-full {
  width: 100%;
  max-width: 100%;
}

html[data-mask-mode="off"] .data-locked,
html[data-mask-mode="off"] .data-blur {
  display: inline;
  color: inherit !important;
  background: none;
  box-shadow: none;
  user-select: auto;
  cursor: auto;
  padding: 0;
  letter-spacing: inherit;
  overflow: visible;
}
html[data-mask-mode="off"] .data-locked::before,
html[data-mask-mode="off"] .data-blur::before { display: none; }
html[data-mask-mode="off"] .data-locked > *,
html[data-mask-mode="off"] .data-blur > * { visibility: visible; }

/* ─── Паттерн C: chart-плашка (data-blurred-when-masked) ──── */
/*  Контент чарта размывается реальным CSS filter: blur(),     */
/*  поверх — деликатный матовый слой и центрированный замок.   */
html[data-mask-mode="on"] [data-blurred-when-masked] {
  position: relative;
  overflow: hidden;
}
html[data-mask-mode="on"] [data-blurred-when-masked] > *:not(.chart-lock-overlay) {
  filter: blur(9px) saturate(0.85);
  opacity: 0.55;
  pointer-events: none;
  transition: filter 240ms ease, opacity 240ms ease;
}
html[data-mask-mode="on"] [data-blurred-when-masked]::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
    rgba(248,250,252,0.32) 0%,
    rgba(248,250,252,0.48) 100%);
  pointer-events: none;
  z-index: 1;
  border-radius: inherit;
}
html[data-mask-mode="off"] [data-blurred-when-masked] > * {
  filter: none;
  opacity: 1;
}
html[data-mask-mode="off"] [data-blurred-when-masked]::after { display: none; }

/* ─── ScoreRing: скрываем цветную дугу в режиме маски ───────── */
html[data-mask-mode="on"] .score-ring-arc { visibility: hidden; }

/* ─── Методология: кнопка-аккордеон должна работать даже в маске ─ */
html .methodology-toggle,
html .methodology-content,
html .methodology-content * {
  pointer-events: auto !important;
}
html[data-mask-mode="on"] .methodology-toggle:hover {
  background: #DBEAFE !important;
}

html[data-mask-mode="on"] .breakdown-bar__fill[data-blurred-when-masked] {
  filter: blur(3px) saturate(0.7);
  opacity: 0.55;
}
html[data-mask-mode="off"] .breakdown-bar__fill[data-blurred-when-masked] {
  filter: none;
  opacity: 1;
}

/* ─── Паттерн E: скрыть блок целиком при mask on ───────────── */
html[data-mask-mode="on"]  [data-premium-block] { display: none !important; }

/* ─── Паттерн P: премиум-секция ────────────────────────────── */
/*  Заголовки секции и структура полностью видны, значения     */
/*  внутри закрыты обычными inline-плашками (.data-locked /    */
/*  .data-blur). Контент НЕ размывается. Внизу секции —        */
/*  деликатная плашка с CTA «Доступно по подписке».            */
html[data-mask-mode="on"] .data-premium-section {
  position: relative;
}
html[data-mask-mode="on"] .data-premium-section > .data-premium-content {
  user-select: none;
}
html[data-mask-mode="on"] .data-premium-section .data-premium-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding: 8px 16px;
  background: linear-gradient(180deg, var(--ink-900) 0%, var(--ink-800) 100%);
  color: #fff;
  border: none;
  border-radius: 999px;
  font: 500 13px/1 'Inter', 'Onest', sans-serif;
  letter-spacing: 0.005em;
  white-space: nowrap;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.08) inset,
    0 0 0 1px rgba(15,23,42,0.6),
    0 6px 18px rgba(15,23,42,0.14),
    0 2px 4px rgba(15,23,42,0.08);
  cursor: pointer;
  transition: transform 220ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 220ms ease;
  -webkit-font-smoothing: antialiased;
  font-family: inherit;
}
html[data-mask-mode="on"] .data-premium-section .data-premium-cta:hover {
  transform: translateY(-1px);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(15,23,42,0.7),
    0 10px 24px rgba(15,23,42,0.18),
    0 3px 6px rgba(15,23,42,0.10);
}
html[data-mask-mode="on"] .data-premium-section .data-premium-cta::before {
  content: "";
  width: 14px; height: 14px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect width='18' height='11' x='3' y='11' rx='2'/><path d='M7 11V7a5 5 0 0 1 10 0v4'/></svg>") center / contain no-repeat;
  flex-shrink: 0;
}
html[data-mask-mode="on"] .data-premium-section .data-premium-cta-meta {
  display: inline-block;
  margin-left: 6px;
  padding-left: 8px;
  border-left: 1px solid rgba(255,255,255,0.18);
  font-size: 12px;
  color: rgba(255,255,255,0.7);
  font-weight: 400;
}
html[data-mask-mode="off"] .data-premium-section > .data-premium-content { user-select: auto; }
html[data-mask-mode="off"] .data-premium-section .data-premium-cta { display: none; }

/* Граф связей: показывать оверлей только в режиме скрытия */
html[data-mask-mode="off"] .graph-premium-overlay { display: none !important; }

/* ─── Паттерн F: блок-обёртка ──────────────────────────────── */
/*  .data-mask-block больше не накрывает весь контент плашкой. */
/*  Лейблы и заголовки внутри остаются видимыми; замазываются  */
/*  только конкретные значения, помеченные .data-locked /      */
/*  .data-blur / data-blurred-when-masked (см. паттерны A/B/C).*/
/*  Сам блок-обёртка просто отключает выделение и копирование. */
html[data-mask-mode="on"] .data-mask-block {
  user-select: none;
}
html[data-mask-mode="off"] .data-mask-block { user-select: auto; }

/* Замочек в углу + tooltip при hover родительского .data-mask-wrap */
html[data-mask-mode="on"] .data-mask-wrap {
  position: relative;
}
html[data-mask-mode="on"] .data-mask-wrap > .data-mask-block {
  pointer-events: none;
}
html[data-mask-mode="off"] .data-mask-wrap > .data-mask-block { pointer-events: auto; }

html[data-mask-mode="on"] .data-mask-wrap::before {
  content: "";
  position: absolute;
  top: 14px; right: 14px;
  z-index: 4;
  width: 24px; height: 24px;
  background: rgba(15,23,42,0.78) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect width='18' height='11' x='3' y='11' rx='2'/><path d='M7 11V7a5 5 0 0 1 10 0v4'/></svg>") center / 12px no-repeat;
  border-radius: 12px;
  pointer-events: none;
  box-shadow: 0 1px 3px rgba(15,23,42,0.18);
}
html[data-mask-mode="on"] .data-mask-wrap::after {
  content: "🔒 Доступно по подписке";
  position: absolute;
  top: 14px; right: 46px;
  z-index: 5;
  background: rgba(15,23,42,0.92);
  color: #fff;
  padding: 6px 12px;
  border-radius: 6px;
  font: 500 11px/1 'Inter', 'Onest', sans-serif;
  letter-spacing: 0.01em;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  transition: opacity 160ms ease;
  box-shadow: 0 4px 12px rgba(15,23,42,0.22);
}
html[data-mask-mode="on"] .data-mask-wrap:hover::after { opacity: 1; }
html[data-mask-mode="off"] .data-mask-wrap::before,
html[data-mask-mode="off"] .data-mask-wrap::after { display: none; }

/* ─── Заглушка .mask-gate: видна только при mask on ─────────── */
html[data-mask-mode="on"]  .mask-gate {
  display: block !important;
  animation: maskGateIn 240ms cubic-bezier(0.16,1,0.3,1) both;
}
html[data-mask-mode="off"] .mask-gate { display: none !important; }
@keyframes maskGateIn {
  from { opacity: 0; transform: translateY(4px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ─── Адаптация .mask-gate на мобильных ────────────────────── */
@media (max-width: 767px) {
  .mask-gate { padding: 20px 16px !important; }
}

/* ─── Lock-overlay на chart ────────────────────────────────── */
.chart-container { position: relative; }
.chart-lock-overlay {
  position: absolute;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  background: transparent;
  cursor: pointer;
  border-radius: inherit;
  z-index: 4;
}
.chart-lock-overlay > svg {
  width: 48px;
  height: 48px;
  padding: 13px;
  border-radius: 50%;
  background: rgba(15,23,42,0.92);
  stroke: #fff !important;
  color: #fff;
  box-shadow:
    0 10px 24px rgba(15,23,42,0.32),
    0 3px 8px rgba(15,23,42,0.18),
    0 0 0 4px rgba(255,255,255,0.6);
  transition: transform 160ms ease, box-shadow 160ms ease;
  box-sizing: border-box;
}
.chart-lock-overlay:hover > svg {
  transform: scale(1.06);
  box-shadow:
    0 14px 30px rgba(15,23,42,0.38),
    0 4px 10px rgba(15,23,42,0.22),
    0 0 0 4px rgba(255,255,255,0.7);
}
html[data-mask-mode="on"]  .chart-lock-overlay { display: flex; }
html[data-mask-mode="on"] [data-blurred-when-masked] > .chart-lock-overlay { visibility: visible !important; }
html[data-mask-mode="off"] .chart-lock-overlay { display: none !important; }

/* ─── Паттерн D: inline-bar маска ──────────────────────────── */
.breakdown-item { list-style: none; padding: 0; }
.breakdown-top {
  display: flex;
  justify-content: space-between;
  margin-bottom: 5px;
  font-size: 13px;
  color: var(--ink-700);
}
.breakdown-label { color: var(--ink-700); }
.breakdown-value { font-family: 'Inter', 'Onest', -apple-system, system-ui, sans-serif; font-weight: 500; font-variant-numeric: tabular-nums; }
.breakdown-bar {
  height: 4px;
  background: var(--ink-150);
  border-radius: 2px;
  overflow: hidden;
}
.breakdown-bar__fill {
  height: 100%;
  background: #1D4ED8;
  border-radius: 2px;
  transition: filter 200ms ease, opacity 200ms ease, width 600ms cubic-bezier(0.16,1,0.3,1);
}

/* ─── Upsell-баннер ────────────────────────────────────────── */
.upsell-banner {
  max-width: 1440px;
  margin: 8px auto 0;
  padding: 7px 16px;
  background: var(--ink-50);
  border: 1px solid var(--ink-150);
  border-radius: 6px;
  display: flex;
  align-items: center;
  gap: 8px;
}
html[data-mask-mode="off"] .upsell-banner,
.banner-dismissed .upsell-banner { display: none !important; }

/* ─── Toast уведомление ────────────────────────────────────── */
.bp-toast {
  position: fixed;
  bottom: 24px;
  right: 24px;
  background: var(--ink-900);
  color: #fff;
  padding: 12px 16px;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(15,23,42,0.2);
  max-width: 380px;
  font: 400 13px/1.5 'Inter', 'Onest', sans-serif;
  z-index: 9999;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  animation: toastIn 180ms ease both;
}
@keyframes toastIn {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}
.bp-toast.is-exiting {
  animation: toastOut 180ms ease both;
}
@keyframes toastOut {
  from { opacity: 1; transform: translateY(0); }
  to   { opacity: 0; transform: translateY(8px); }
}
.bp-toast-close {
  background: none; border: none; cursor: pointer;
  color: rgba(255,255,255,0.55); padding: 0; flex-shrink: 0; margin-top: 1px;
  transition: color 120ms ease;
}
.bp-toast-close:hover { color: #fff; }

/* ─── Upsell-модалка ───────────────────────────────────────── */
.upsell-backdrop {
  position: fixed; inset: 0;
  background: rgba(15,23,42,0.5);
  z-index: 1000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  animation: backdropIn 120ms ease both;
}
@keyframes backdropIn { from { opacity:0; } to { opacity:1; } }
.upsell-backdrop.is-open { display: flex; }

.upsell-dialog {
  background: #fff;
  border-radius: 8px;
  max-width: 520px;
  width: 100%;
  padding: 32px;
  box-shadow: 0 20px 40px rgba(15,23,42,0.15);
  position: relative;
  animation: dialogIn 200ms cubic-bezier(0.16,1,0.3,1) both;
  max-height: 90vh;
  overflow-y: auto;
}
@keyframes dialogIn {
  from { opacity:0; transform: translateY(12px); }
  to   { opacity:1; transform: translateY(0); }
}

/* ─── Segmented mask-toggle ────────────────────────────────── */
.mask-toggle {
  display: inline-flex;
  align-items: center;
  height: 36px;
  gap: 6px;
  flex-shrink: 0;
}
.mask-toggle-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0 12px;
  height: 36px;
  border: none;
  border-radius: 10px;
  font: 600 13px/1 'Inter', 'Onest', sans-serif;
  cursor: pointer;
  transition: background 120ms ease, color 120ms ease, box-shadow 120ms ease;
  white-space: nowrap;
}
.mask-toggle-btn.is-active {
  background: transparent;
  color: var(--brand-700);
  box-shadow: none;
}
.mask-toggle-btn.is-inactive {
  background: transparent;
  color: var(--brand-700);
}
.mask-toggle-btn.is-inactive:hover { color: var(--ink-700); }

/* ─── Score blur overlay (для CircularScore) ────────────────── */
.score-blur-wrap { position: relative; display: inline-block; }
html[data-mask-mode="on"] .score-blur-wrap .score-ring,
html[data-mask-mode="on"] .score-blur-wrap .score-number {
  filter: blur(8px) saturate(0.85);
  opacity: 0.6;
  transition: filter 240ms ease, opacity 240ms ease;
}
html[data-mask-mode="on"] .score-blur-wrap::after {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(180deg,
    rgba(248,250,252,0.28) 0%,
    rgba(248,250,252,0.4) 100%);
  border-radius: 50%;
  z-index: 1;
  pointer-events: none;
}
html[data-mask-mode="off"] .score-blur-wrap .score-ring,
html[data-mask-mode="off"] .score-blur-wrap .score-number {
  filter: none;
  opacity: 1;
}
html[data-mask-mode="off"] .score-blur-wrap::after { display: none; }
html[data-mask-mode="on"] .score-blur-wrap .score-lock-overlay { display: flex; }
html[data-mask-mode="off"] .score-blur-wrap .score-lock-overlay { display: none; }
.score-lock-overlay {
  position: absolute; inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 4;
}
.score-lock-overlay > svg {
  width: 44px;
  height: 44px;
  padding: 12px;
  border-radius: 50%;
  background: rgba(15,23,42,0.92);
  stroke: #fff !important;
  color: #fff;
  box-shadow:
    0 10px 24px rgba(15,23,42,0.32),
    0 3px 8px rgba(15,23,42,0.18),
    0 0 0 4px rgba(255,255,255,0.6);
  transition: transform 160ms ease, box-shadow 160ms ease;
  box-sizing: border-box;
}
.score-lock-overlay:hover > svg {
  transform: scale(1.06);
  box-shadow:
    0 14px 30px rgba(15,23,42,0.38),
    0 4px 10px rgba(15,23,42,0.22),
    0 0 0 4px rgba(255,255,255,0.7);
}

/* ─── Charts responsive scroll ─────────────────────────────── */
.chart-scroll-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.chart-scroll-wrap figure { min-width: 300px; }

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE TOKENS & UNIVERSAL ADAPTIVE FIXES
   Добавлены для идеальной адаптивки. Только дописывают правила,
   не ломая существующие.
   ══════════════════════════════════════════════════════════════ */

:root {
  --bp-ultra: 359px;
  --bp-mobile: 767px;
  --bp-tablet: 1023px;
  --pad-x: 32px;
  --pad-y: 24px;
  --gap: 24px;
  --header-h: 64px;
  --tap-min: 44px;
  --safe-top: env(safe-area-inset-top, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  --safe-left: env(safe-area-inset-left, 0px);
  --safe-right: env(safe-area-inset-right, 0px);
}

@media (max-width: 1023px) {
  :root {
    --pad-x: 24px;
    --gap: 16px;
    --header-h: 56px;
  }
}
@media (max-width: 767px) {
  :root {
    --pad-x: 16px;
    --pad-y: 16px;
    --gap: 12px;
  }
}
@media (max-width: 359px) {
  :root {
    --pad-x: 12px;
    --pad-y: 12px;
  }
}

/* ─── Запрет горизонтального скролла страницы ──────────────── */
/* overflow-x: clip — не создаёт scroll-контейнер, sticky-header работает. */
html, body { max-width: 100%; overflow-x: clip; }
img, svg, video { max-width: 100%; height: auto; }
img { display: block; }

/* ─── Длинные слова не должны рвать вёрстку ────────────────── */
.result-title, .partner-name, .pf-name, .hero-h1,
.hero-company-title, .page-title-h1, .modal-title,
.def-row-value, .breakdown-label {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* ─── Toast — не вылезает на мобильных ─────────────────────── */
@media (max-width: 767px) {
  .bp-toast {
    left: 16px;
    right: 16px;
    bottom: calc(16px + var(--safe-bottom));
    max-width: calc(100vw - 32px);
    font-size: 13px;
  }
}

/* ─── Upsell modal — адаптив ───────────────────────────────── */
@media (max-width: 767px) {
  .upsell-backdrop { padding: 16px; }
  .upsell-dialog {
    padding: 24px;
    max-height: calc(100dvh - 32px);
    border-radius: 12px;
  }
}
@media (max-width: 359px) {
  .upsell-dialog { padding: 16px; border-radius: 10px; }
}

/* ─── Mask-toggle — touch-safe на мобильных ────────────────── */
@media (max-width: 767px) {
  .mask-toggle { height: 36px; }
  .mask-toggle-btn { height: 30px; padding: 0 12px; font-size: 13px; }
}

/* ─── Charts — адаптивный min-width ────────────────────────── */
@media (max-width: 767px) {
  .chart-scroll-wrap figure { min-width: 280px; }
}
@media (max-width: 359px) {
  .chart-scroll-wrap figure { min-width: 240px; }
}

/* ─── Скроллбар чуть шире на тач-устройствах ──────────────── */
@media (max-width: 767px) {
  .hdr-scroll::-webkit-scrollbar { width: 8px; height: 8px; }
}

/* ─── Логотип — компактно на ультра-малых ──────────────────── */
@media (max-width: 359px) {
  .logo-flag, .logo-flag-wrap { width: 18px; height: 12px; }
  .logo-lockup { gap: 8px; }
  .kr-badge, .kr-badge-pc { padding: 5px 8px 5px 7px; gap: 6px; }
  .kr-badge-text { font-size: 11px; }
}

/* ─── Touch-safe утилитарный класс ─────────────────────────── */
@media (max-width: 767px) {
  .touch-target,
  .icon-btn,
  .pager-btn,
  .modal-close,
  .upsell-close,
  .bp-toast-close {
    min-width: var(--tap-min);
    min-height: var(--tap-min);
  }
}

/* ─── Safe-area для iPhone с челкой ────────────────────────── */
.safe-pad-top    { padding-top: max(0px, var(--safe-top)); }
.safe-pad-bottom { padding-bottom: max(0px, var(--safe-bottom)); }

/* ─── Reduce motion для пользователей с настройкой ─────────── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ─── Scroll-snap для горизонтальных скроллеров ────────────── */
.tabs-scroll, .scope-chips-scroll, .bc-inner {
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  scroll-padding-inline: 16px;
}
.tabs-scroll > *, .scope-chips-scroll > *, .bc-inner > * {
  scroll-snap-align: start;
}

/* ─── Запрет вертикальной прокрутки на body когда открыт меню/модалка ── */
html.no-scroll, html.no-scroll body { overflow: hidden; }

/* ─── Универсальная стабилизация контейнеров ───────────────── */
.bc-wrap > .bc-inner,
.bp-toast { box-sizing: border-box; }

/* ─── Site footer (общий) — адаптивный padding ─────────────── */
@media (max-width: 1023px) {
  .site-footer { padding: 48px 24px !important; }
}
@media (max-width: 767px) {
  .site-footer { padding: 36px 16px !important; }
}
@media (max-width: 359px) {
  .site-footer { padding: 28px 12px !important; }
}

/* ══════════════════════════════════════════════════════════════
   HEADER (top nav) — flat sticky-header
   ══════════════════════════════════════════════════════════════ */
.bp-header {
  position: sticky;
  top: 0;
  z-index: 100;
  height: 64px;
  background: #FFFFFF;
  border-bottom: 1px solid #EEF1F5;
  box-shadow: none;
  transition:
    border-color 200ms ease,
    box-shadow 200ms ease;
}
.bp-header.is-scrolled {
  background: #FFFFFF;
  border-bottom-color: #E2E8F0;
  box-shadow: 0 1px 0 rgba(15, 23, 42, 0.04);
}
.bp-header-inner {
  max-width: 1280px;
  height: 100%;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  align-items: center;
  gap: 32px;
}

/* ─── Логотип ─────────────────────────────────────────────── */
.bp-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: inherit;
  flex-shrink: 0;
  transition: transform 200ms var(--ease-out);
  transform-origin: left center;
}
.bp-logo:hover { transform: scale(1.03); text-decoration: none; }
.bp-logo:focus-visible {
  outline: 2px solid var(--blue-600);
  outline-offset: 4px;
  border-radius: 6px;
}
.bp-logo-img { display: inline-block; flex-shrink: 0; }
/* Логотип без подложки: два PNG-слоя служат масками, цвет — фон.
   is-blue — «B» и «Be», is-navy — «Partner». На светлом фоне —
   цвета оригинала, над фото — светлые (ниже, html.page-space). */
.bp-logo-mark { position: relative; display: inline-block; flex-shrink: 0; }
.bp-logo-l {
  position: absolute; inset: 0;
  -webkit-mask: center / contain no-repeat;
          mask: center / contain no-repeat;
}
.bp-logo-l.is-blue {
  background: linear-gradient(160deg, #2563EB 0%, #1D4ED8 100%);
  -webkit-mask-image: url(../img/logo-blue.png);
          mask-image: url(../img/logo-blue.png);
}
.bp-logo-l.is-navy {
  background: #0F172A;
  -webkit-mask-image: url(../img/logo-navy.png);
          mask-image: url(../img/logo-navy.png);
}
/* футер на тёмном фоне (html.ds / page-space): как шапка над фото */
html.ds .site-footer .bp-logo-l.is-blue,
html.page-space .site-footer .bp-logo-l.is-blue { background: linear-gradient(160deg, #FFFFFF 0%, #DBEAFE 45%, #BFDBFE 100%); }
html.ds .site-footer .bp-logo-l.is-navy,
html.page-space .site-footer .bp-logo-l.is-navy { background: #FFFFFF; }
.site-footer .footer-logo { display: inline-flex; text-decoration: none; }
.bp-logo-text {
  font-family: 'Inter', 'Onest', sans-serif;
  font-size: 20px;
  letter-spacing: -0.015em;
  white-space: nowrap;
  display: inline-flex;
  align-items: baseline;
}
.bp-logo-be      { font-weight: 600; color: #1D4ED8; }
.bp-logo-partner { font-weight: 600; color: #0F172A; }

/* ─── Центральная навигация — flat (без pill-обёртки) ─────── */
.bp-nav {
  display: flex;
  align-items: center;
  gap: 2px;
  margin: 0 auto;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
}
.bp-nav-item { position: relative; }
.bp-nav-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 40px;
  padding: 0 14px;
  border-radius: 6px;
  font-family: 'Inter', 'Onest', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #475569;
  text-decoration: none;
  background: transparent;
  border: none;
  cursor: pointer;
  white-space: nowrap;
  position: relative;
  transition: color 160ms var(--ease-out);
}
.bp-nav-link:hover {
  color: #0F172A;
  background: transparent;
  text-decoration: none;
}
.bp-nav-link.is-active,
.bp-nav-item.is-open .bp-nav-link {
  color: #0F172A;
  background: transparent;
  font-weight: 600;
}
.bp-nav-link.is-active::after {
  content: "";
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 4px;
  height: 2px;
  background: #2563EB;
  border-radius: 2px;
}
.bp-nav-chev {
  display: inline-flex;
  transition: transform 200ms var(--ease-out);
}
.bp-nav-item.is-open .bp-nav-chev { transform: rotate(180deg); }

/* ─── Правый блок ─────────────────────────────────────────── */
.bp-right {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}

/* язык — компактная кнопка (flat) */
.bp-lang { position: relative; }
.bp-lang-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 36px;
  padding: 0 10px;
  background: transparent;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  font-family: 'Inter', 'Onest', sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: #475569;
  box-shadow: none;
  transition: background 160ms var(--ease-out), color 160ms var(--ease-out);
}
.bp-lang-btn:hover { background: #F1F5F9; color: #0F172A; }
.bp-lang-btn .bp-lang-flag { font-size: 14px; line-height: 1; }
.bp-lang-btn .bp-lang-chev { transition: transform 200ms var(--ease-out); display: inline-flex; }
.bp-lang.is-open .bp-lang-chev { transform: rotate(180deg); }
.bp-lang-menu {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  min-width: 160px;
  background: #fff;
  border: 1px solid #E5E7EB;
  border-radius: 10px;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08);
  padding: 4px;
  z-index: 120;
  opacity: 0;
  transform: translateY(4px);
  pointer-events: none;
  transition: opacity 180ms var(--ease-out), transform 200ms var(--ease-out);
}
.bp-lang.is-open .bp-lang-menu {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.bp-lang-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 8px 12px;
  background: transparent;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  font-family: inherit;
  font-size: 13px;
  color: #334155;
  text-align: left;
  transition: background 140ms var(--ease-out);
}
.bp-lang-item:hover { background: #F1F5F9; }
.bp-lang-item.is-active { background: #EFF6FF; color: #1D4ED8; font-weight: 600; }
.bp-lang-item-flag { font-size: 14px; }

/* кнопка «Войти» — ghost */
.bp-btn-ghost {
  display: inline-flex;
  align-items: center;
  height: 36px;
  padding: 0 16px;
  background: transparent;
  border: none;
  border-radius: 8px;
  font-family: 'Inter', 'Onest', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #475569;
  cursor: pointer;
  transition: background 160ms var(--ease-out), color 160ms var(--ease-out);
}
.bp-btn-ghost:hover { background: #F1F5F9; color: #0F172A; text-decoration: none; }

/* CTA «Начать бесплатно» */
.bp-btn-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 36px;
  padding: 0 16px;
  background: #2563EB;
  color: #fff;
  border: none;
  border-radius: 6px;
  font-family: 'Inter', 'Onest', sans-serif;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: background 160ms var(--ease-out);
}
.bp-btn-cta:hover {
  background: #1D4ED8;
  text-decoration: none;
  color: #fff;
}
.bp-btn-cta:active {
  background: #1E40AF;
}

/* ─── Mobile-меню ─────────────────────────────────────────── */
.bp-burger {
  display: none;
  width: 40px;
  height: 40px;
  background: transparent;
  border: none;
  cursor: pointer;
  color: #0F172A;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  margin-left: auto;
  flex-shrink: 0;
  transition: background 160ms var(--ease-out);
}
.bp-burger:hover { background: #F1F5F9; }

.bp-mobile-overlay {
  position: fixed;
  inset: 0;
  z-index: 200;
  background: #fff;
  display: flex;
  flex-direction: column;
  transform: translateY(-100%);
  transition: transform 320ms cubic-bezier(0.16, 1, 0.3, 1);
}
.bp-mobile-overlay.is-open { transform: translateY(0); }
.bp-mobile-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  height: 60px;
  border-bottom: 1px solid #F1F5F9;
  flex-shrink: 0;
}
.bp-mobile-close {
  width: 40px;
  height: 40px;
  background: transparent;
  border: none;
  cursor: pointer;
  color: #0F172A;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  transition: background 160ms var(--ease-out);
}
.bp-mobile-close:hover { background: #F1F5F9; }
.bp-mobile-nav {
  flex: 1;
  overflow-y: auto;
  padding: 32px 24px 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.bp-mobile-link {
  font-family: 'Inter', 'Onest', sans-serif;
  font-size: 20px;
  font-weight: 600;
  color: #0F172A;
  text-decoration: none;
  padding: 4px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #F1F5F9;
  padding-bottom: 16px;
}
.bp-mobile-link:hover { color: #2563EB; text-decoration: none; }
.bp-mobile-foot {
  padding: 24px;
  border-top: 1px solid #F1F5F9;
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex-shrink: 0;
}
.bp-mobile-foot .bp-btn-cta {
  width: 100%;
  height: 48px;
  justify-content: center;
  font-size: 15px;
}
.bp-mobile-foot .bp-btn-ghost {
  width: 100%;
  height: 44px;
  justify-content: center;
  background: #F8FAFC;
}
.bp-mobile-lang {
  display: flex;
  gap: 8px;
}
.bp-mobile-lang button {
  flex: 1;
  height: 40px;
  background: #F8FAFC;
  border: 1px solid #E5E7EB;
  border-radius: 8px;
  font-family: 'Inter', 'Onest', sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: #475569;
  cursor: pointer;
  transition: background 160ms var(--ease-out), color 160ms var(--ease-out), border-color 160ms var(--ease-out);
}
.bp-mobile-lang button.is-active {
  background: #EFF6FF;
  border-color: #BFDBFE;
  color: #1D4ED8;
}

/* ─── Адаптив шапки ───────────────────────────────────────── */
/* Большие десктопы: всё видно */
@media (min-width: 1280px) {
  .bp-header-inner { padding: 0 40px; gap: 40px; }
  .bp-nav { gap: 4px; }
}

/* Десктоп: 1024-1279 — компактнее */
@media (min-width: 1024px) and (max-width: 1279px) {
  .bp-header-inner { padding: 0 24px; gap: 20px; }
  .bp-nav { gap: 0; }
  .bp-nav-link { font-size: 13px; padding: 0 10px; }
  .bp-btn-ghost { padding: 0 12px; font-size: 13px; }
}

/* Планшеты: 768-1023 — навигация уезжает в burger */
@media (max-width: 1023px) {
  .bp-header { height: 60px; }
  .bp-header-inner { padding: 0 24px; gap: 16px; }
  .bp-nav { display: none; }
  .bp-right { display: none; }
  .bp-burger { display: inline-flex; }
}

/* Мобильные */
@media (max-width: 767px) {
  .bp-header { height: 56px; }
  .bp-header-inner { padding: 0 16px; gap: 12px; }
}

/* Ультра-малые */
@media (max-width: 359px) {
  .bp-header { height: 52px; }
  .bp-header-inner { padding: 0 12px; gap: 8px; }
  .bp-logo-text { font-size: 17px; }
}

/* ══════════════════════════════════════════════════════════════
   THEME TOGGLE BUTTON (desktop + mobile)
   ══════════════════════════════════════════════════════════════ */
.bp-theme-btn {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  color: #475569;
  flex-shrink: 0;
  box-shadow: none;
  transition:
    background 160ms var(--ease-out),
    color 160ms var(--ease-out);
}
.bp-theme-btn:hover {
  background: #F1F5F9;
  color: #0F172A;
}
.bp-theme-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(37,99,235,0.25);
}

.bp-mobile-theme {
  width: 100%;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #F8FAFC;
  border: 1px solid #E5E7EB;
  border-radius: 8px;
  cursor: pointer;
  color: #0F172A;
  font-family: 'Inter', 'Onest', sans-serif;
  font-size: 14px;
  font-weight: 500;
  transition: background 160ms var(--ease-out), color 160ms var(--ease-out);
}
.bp-mobile-theme:hover { background: #F1F5F9; }

/* Disabled state — кнопка темы временно недоступна */
.bp-theme-btn:disabled,
.bp-theme-btn[aria-disabled="true"],
.bp-mobile-theme:disabled,
.bp-mobile-theme[aria-disabled="true"] {
  opacity: 0.45 !important;
  cursor: not-allowed !important;
  pointer-events: none;
  transform: none !important;
}
.bp-theme-btn:disabled:hover,
.bp-theme-btn[aria-disabled="true"]:hover {
  background: #FFFFFF !important;
  color: #475569 !important;
  transform: none !important;
}

/* ══════════════════════════════════════════════════════════════
   DARK THEME — Deep Brand (BePartner signature).
   Глубокий бренд-синий с золотым акцентом. Карточки темнее фона,
   бордеры контрастные. Golden accent (#F2D08A) для CTA/focus/links.
   ══════════════════════════════════════════════════════════════ */
html[data-theme="dark"] {
  /* Ink — текстовая шкала: высокий контраст на средне-синем */
  --ink-900: #FFFFFF;
  --ink-800: #F4F7FC;
  --ink-700: #E5EBF5;
  --ink-600: #CDD8EA;
  --ink-500: #A6B6D2;
  --ink-400: #7088B0;
  --ink-300: #4682E0;
  --ink-200: #2C6FCC;
  --ink-150: #2360C2;
  --ink-100: #1F58B8;
  --ink-50:  #1A4FA8;

  /* Поверхности — СРЕДНЕ-СИНИЙ (не тёмный пещерный), яркость +35% */
  --bg-page:   #1E3A8A;
  --bg-card:   #2360C2;
  --bg-subtle: #1F58B8;

  /* Brand: золотой акцент (premium gold) — CTA / ссылки / focus / numbers */
  --brand-50:  #2C66BE;
  --brand-100: #3E78D0;
  --brand-200: #5089DC;
  --brand-300: #F2D08A;
  --brand-400: #F2D08A;
  --brand-500: #F2D08A;
  --brand-600: #F2D08A;
  --brand-700: #FFE0A0;
  --brand-800: #FFE9C0;
  --brand-900: #FFF2DA;

  --blue-25:  #143F87;
  --blue-50:  #1A4FA8;
  --blue-100: #1F58B8;
  --blue-200: #2C66BE;
  --blue-300: #3E78D0;
  --blue-500: #F2D08A;
  --blue-600: #F2D08A;
  --blue-700: #FFE0A0;
  --blue-800: #FFE9C0;
  --blue-900: #FFF2DA;

  /* Semantic — на тёмно-синем фоне читаемые */
  --success-50:  #0E3F2A;
  --success-500: #4ADE80;
  --success-600: #6EE7A0;
  --success-700: #A7F3C8;
  --warning-50:  #3E2E0A;
  --warning-500: #FBBF24;
  --warning-600: #FCD34D;
  --warning-700: #FDE68A;
  --danger-50:   #3E1A1A;
  --danger-500:  #F87171;
  --danger-600:  #FCA5A5;
  --danger-700:  #FECACA;
  --info-50:     #143F87;
  --info-700:    #F2D08A;

  /* Тени — глубокие синие */
  --shadow-xs:   0 1px 2px rgba(5, 18, 48, 0.55);
  --shadow-sm:   0 2px 6px rgba(5, 18, 48, 0.55);
  --shadow-md:   0 6px 20px rgba(5, 18, 48, 0.60);
  --shadow-lg:   0 16px 40px -10px rgba(5, 18, 48, 0.70);
  --shadow-xl:   0 24px 56px -14px rgba(5, 18, 48, 0.78);
  --shadow-glow: 0 0 0 3px rgba(242, 208, 138, 0.40);

  color-scheme: dark;
}

/* ─── Базовая поверхность ──────────────────────────────────── */
html[data-theme="dark"] body {
  background: var(--bg-page);
  color: var(--ink-900);
}

/* ─── Selection ────────────────────────────────────────────── */
html[data-theme="dark"] ::selection {
  background: rgba(96, 165, 250, 0.28);
  color: #FFFFFF;
}

/* ─── Ссылки и kbd ─────────────────────────────────────────── */
html[data-theme="dark"] a { color: var(--brand-700); }
html[data-theme="dark"] kbd {
  background: var(--ink-100);
  border-color: var(--ink-300);
  color: var(--ink-700);
}

/* ─── Скроллбар ─────────────────────────────────────────────── */
html[data-theme="dark"] * { scrollbar-color: #2C66BE transparent; }
html[data-theme="dark"] ::-webkit-scrollbar-thumb { background: #2C66BE; }
html[data-theme="dark"] ::-webkit-scrollbar-thumb:hover { background: #2C66BE; }

/* ─── Логотип BePartner ────────────────────────────────────── */
html[data-theme="dark"] .bp-logo-be      { color: #EAF0FA; }
html[data-theme="dark"] .bp-logo-partner { color: #FFFFFF; }
html[data-theme="dark"] .logo-slot {
  filter:
    drop-shadow(0 1px 1px rgba(244, 244, 245, 0.22))
    drop-shadow(0 5px 12px rgba(244, 244, 245, 0.18));
}

/* ─── KR-бейдж ─────────────────────────────────────────────── */
html[data-theme="dark"] .kr-badge,
html[data-theme="dark"] .kr-badge-pc {
  background: rgba(220, 38, 38, 0.15);
  border-color: rgba(220, 38, 38, 0.3);
}
html[data-theme="dark"] .kr-badge-text { color: #F87171; }

/* ─── Official ribbon ──────────────────────────────────────── */
html[data-theme="dark"] .official-bar {
  background: var(--ink-50);
  color: var(--ink-500);
  border-bottom-color: var(--ink-300);
}
html[data-theme="dark"] .official-link { color: var(--ink-500); }
html[data-theme="dark"] .official-link:hover { color: var(--brand-700); }

/* ─── Header ────────────────────────────────────────────────── */
html[data-theme="dark"] .bp-header {
  background: transparent;
  border-bottom-color: rgba(255, 255, 255, 0.06);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}
html[data-theme="dark"] .bp-header.is-scrolled {
  background: rgba(11, 18, 32, 0.85);
  border-bottom-color: rgba(255, 255, 255, 0.08);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4), 0 1px 2px rgba(0, 0, 0, 0.3);
}

/* ─── Pill-навигация ───────────────────────────────────────── */
html[data-theme="dark"] .bp-nav {
  background: #143F87;
  border-color: #143F87;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}
html[data-theme="dark"] .bp-nav-link {
  color: #B8C5DE;
}
html[data-theme="dark"] .bp-nav-link:hover {
  color: #FFFFFF;
  background: rgba(255, 255, 255, 0.05);
}
html[data-theme="dark"] .bp-nav-link.is-active,
html[data-theme="dark"] .bp-nav-item.is-open .bp-nav-link {
  color: #EAF0FA;
  background: rgba(244, 244, 245, 0.06);
}

/* ─── Lang-pill ─────────────────────────────────────────────── */
html[data-theme="dark"] .bp-lang-btn {
  background: #143F87;
  border-color: #143F87;
  color: #D6DFEE;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}
html[data-theme="dark"] .bp-lang-btn:hover {
  background: #143F87;
  color: #FFFFFF;
}
html[data-theme="dark"] .bp-lang-menu {
  background: #143F87;
  border-color: #143F87;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.55);
}
html[data-theme="dark"] .bp-lang-item { color: #D6DFEE; }
html[data-theme="dark"] .bp-lang-item:hover { background: rgba(255, 255, 255, 0.05); }
html[data-theme="dark"] .bp-lang-item.is-active {
  background: rgba(244, 244, 245, 0.08);
  color: #EAF0FA;
}

/* ─── Theme-btn (тёмный режим) ─────────────────────────────── */
html[data-theme="dark"] .bp-theme-btn {
  background: #143F87;
  border-color: #143F87;
  color: #FCD34D;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}
html[data-theme="dark"] .bp-theme-btn:hover {
  background: #143F87;
  color: #FCD34D;
}

/* ─── Ghost / CTA-кнопки ───────────────────────────────────── */
html[data-theme="dark"] .bp-btn-ghost {
  color: #D6DFEE;
}
html[data-theme="dark"] .bp-btn-ghost:hover {
  background: rgba(255, 255, 255, 0.06);
  color: #FFFFFF;
}
html[data-theme="dark"] .bp-btn-cta {
  background: #F2D08A !important;
  color: #0F2E63 !important;
}
html[data-theme="dark"] .bp-btn-cta:hover {
  background: #FFE0A0 !important;
  color: #0F2E63 !important;
  box-shadow: 0 8px 20px rgba(242, 208, 138, 0.35);
}

/* ─── Burger / mobile overlay ──────────────────────────────── */
html[data-theme="dark"] .bp-burger { color: #FFFFFF; }
html[data-theme="dark"] .bp-burger:hover { background: rgba(255, 255, 255, 0.06); }
html[data-theme="dark"] .bp-mobile-overlay { background: #1A4FA8; }
html[data-theme="dark"] .bp-mobile-head { border-bottom-color: #143F87; }
html[data-theme="dark"] .bp-mobile-close { color: #FFFFFF; }
html[data-theme="dark"] .bp-mobile-close:hover { background: rgba(255, 255, 255, 0.06); }
html[data-theme="dark"] .bp-mobile-link {
  color: #FFFFFF;
  border-bottom-color: #143F87;
}
html[data-theme="dark"] .bp-mobile-link:hover { color: #EAF0FA; }
html[data-theme="dark"] .bp-mobile-foot { border-top-color: #143F87; }
html[data-theme="dark"] .bp-mobile-foot .bp-btn-ghost { background: #143F87; }
html[data-theme="dark"] .bp-mobile-theme {
  background: #143F87;
  border-color: #143F87;
  color: #FFFFFF;
}
html[data-theme="dark"] .bp-mobile-theme:hover { background: #143F87; }
html[data-theme="dark"] .bp-mobile-lang button {
  background: #143F87;
  border-color: #143F87;
  color: #D6DFEE;
}
html[data-theme="dark"] .bp-mobile-lang button.is-active {
  background: rgba(244, 244, 245, 0.08);
  border-color: rgba(244, 244, 245, 0.22);
  color: #EAF0FA;
}

/* ─── CommandK ─────────────────────────────────────────────── */
html[data-theme="dark"] .cmdk-backdrop { background: rgba(0, 0, 0, 0.6); }
html[data-theme="dark"] .cmdk-dialog {
  background: var(--bg-card);
  border-color: var(--ink-300);
  box-shadow: var(--shadow-xl);
}
html[data-theme="dark"] .cmdk-search { border-bottom-color: var(--ink-300); }
html[data-theme="dark"] .cmdk-search input {
  color: var(--ink-900);
  background: transparent;
}
html[data-theme="dark"] .cmdk-list a { color: var(--ink-700); }
html[data-theme="dark"] .cmdk-list a:hover { background: rgba(255, 255, 255, 0.04); }

/* ─── Chips ────────────────────────────────────────────────── */
html[data-theme="dark"] .chip {
  background: #143F87;
  border-color: #143F87;
  color: #D6DFEE;
}
html[data-theme="dark"] .chip-neutral {
  background: #143F87;
  border-color: #143F87;
  color: #D6DFEE;
}
html[data-theme="dark"] .chip-info {
  background: rgba(244, 244, 245, 0.06);
  border-color: rgba(244, 244, 245, 0.18);
  color: #EAF0FA;
}
html[data-theme="dark"] .chip-success {
  background: rgba(16, 185, 129, 0.14);
  border-color: rgba(16, 185, 129, 0.32);
  color: #86EFAC;
}
html[data-theme="dark"] .chip-warning {
  background: rgba(245, 158, 11, 0.14);
  border-color: rgba(245, 158, 11, 0.32);
  color: #FCD34D;
}
html[data-theme="dark"] .chip-danger {
  background: rgba(239, 68, 68, 0.14);
  border-color: rgba(239, 68, 68, 0.32);
  color: #F87171;
}

/* ─── Btn secondary/ghost ──────────────────────────────────── */
html[data-theme="dark"] .btn-secondary:hover:not(:disabled) {
  background: rgba(244, 244, 245, 0.06) !important;
  border-color: rgba(244, 244, 245, 0.22) !important;
  color: #EAF0FA !important;
}
html[data-theme="dark"] .btn-ghost:hover:not(:disabled) {
  background: rgba(244, 244, 245, 0.06) !important;
  color: #EAF0FA !important;
}

/* ─── Toast ─────────────────────────────────────────────────── */
html[data-theme="dark"] .bp-toast {
  background: #143F87;
  color: #FFFFFF;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.6);
}

/* ─── Upsell modal ─────────────────────────────────────────── */
html[data-theme="dark"] .upsell-backdrop { background: rgba(0, 0, 0, 0.65); }
html[data-theme="dark"] .upsell-dialog {
  background: var(--bg-card);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.55);
}

/* ─── Divider ───────────────────────────────────────────────── */
html[data-theme="dark"] .divider-gradient {
  background: linear-gradient(90deg, transparent 0%, var(--ink-300) 30%, var(--ink-300) 70%, transparent 100%);
}

/* ─── Skeleton ─────────────────────────────────────────────── */
html[data-theme="dark"] .skeleton,
html[data-theme="dark"] .ui-skeleton {
  background: linear-gradient(90deg,
    #143F87 0%,
    rgba(59, 130, 246, 0.10) 50%,
    #143F87 100%);
  background-size: 200% 100%;
}

/* ─── Mask-toggle (segmented) ──────────────────────────────── */
html[data-theme="dark"] .mask-toggle-btn.is-active,
html[data-theme="dark"] .mask-toggle-btn.is-inactive { color: #EAF0FA; }
html[data-theme="dark"] .mask-toggle-btn.is-inactive:hover { color: #FFFFFF; }

/* ─── Inline-styles override: универсальные белые фоны ───────
   JSX-инлайны часто пишут background:'#fff' / '#FFFFFF'.
   Атрибут-селектор позволяет перебить их без правки JSX. */
html[data-theme="dark"] [style*="background:#fff"],
html[data-theme="dark"] [style*="background: #fff"],
html[data-theme="dark"] [style*="background:#FFF"],
html[data-theme="dark"] [style*="background: #FFF"],
html[data-theme="dark"] [style*="background-color:#fff"],
html[data-theme="dark"] [style*="background-color: #fff"],
html[data-theme="dark"] [style*="background:white"],
html[data-theme="dark"] [style*="background: white"] {
  background-color: var(--bg-card) !important;
}

/* Тёмные текстовые inline-styles переключаем на светлый */
html[data-theme="dark"] [style*="color:#0F172A"],
html[data-theme="dark"] [style*="color: #0F172A"],
html[data-theme="dark"] [style*="color:#0f172a"],
html[data-theme="dark"] [style*="color: #0f172a"],
html[data-theme="dark"] [style*="color:#111827"],
html[data-theme="dark"] [style*="color: #111827"],
html[data-theme="dark"] [style*="color:#1E293B"],
html[data-theme="dark"] [style*="color: #1E293B"] {
  color: var(--ink-900) !important;
}
html[data-theme="dark"] [style*="color:#0B1220"],
html[data-theme="dark"] [style*="color: #0B1220"] {
  color: var(--ink-900) !important;
}
html[data-theme="dark"] [style*="color:#2C66BE"],
html[data-theme="dark"] [style*="color: #2C66BE"],
html[data-theme="dark"] [style*="color:#2C66BE"],
html[data-theme="dark"] [style*="color: #2C66BE"] {
  color: var(--ink-600) !important;
}
html[data-theme="dark"] [style*="color:#64748B"],
html[data-theme="dark"] [style*="color: #64748B"],
html[data-theme="dark"] [style*="color:#B8C5DE"],
html[data-theme="dark"] [style*="color: #B8C5DE"] {
  color: var(--ink-500) !important;
}

/* Светлые рамки → тёмные */
html[data-theme="dark"] [style*="border:1px solid #E5E7EB"],
html[data-theme="dark"] [style*="border: 1px solid #E5E7EB"],
html[data-theme="dark"] [style*="border:1px solid #E2E8F0"],
html[data-theme="dark"] [style*="border: 1px solid #E2E8F0"],
html[data-theme="dark"] [style*="border:1px solid #EEF1F5"],
html[data-theme="dark"] [style*="border: 1px solid #EEF1F5"],
html[data-theme="dark"] [style*="border:1px solid #FFFFFF"],
html[data-theme="dark"] [style*="border: 1px solid #FFFFFF"] {
  border-color: var(--ink-300) !important;
}

/* Светлые подложки EFF6FF (info-tint) → тёмно-синие */
html[data-theme="dark"] [style*="background:#EFF6FF"],
html[data-theme="dark"] [style*="background: #EFF6FF"],
html[data-theme="dark"] [style*="background:#F8FAFC"],
html[data-theme="dark"] [style*="background: #F8FAFC"],
html[data-theme="dark"] [style*="background:#FFFFFF"],
html[data-theme="dark"] [style*="background: #FFFFFF"] {
  background-color: var(--ink-100) !important;
}

/* ─── Score-blur и mask-overlay — подложки на rgba(255,...) ──
   Эти оставляем (нейтральные плашки выглядят ок и в тёмной теме),
   но осветляем border, чтобы плашка не сливалась. */
html[data-theme="dark"] html[data-mask-mode="on"] .data-mask-wrap::before {
  background-color: rgba(15,23,42,0.85);
}
html[data-theme="dark"] html[data-mask-mode="on"] .data-mask-wrap::after {
  background: rgba(15,23,42,0.95);
}

/* ─── Контейнер карточек, если есть общий класс ────────────── */
html[data-theme="dark"] .card {
  background: var(--bg-card);
  border-color: var(--ink-300);
}

/* ══════════════════════════════════════════════════════════════
   DARK THEME — расширенные universal inline-style overrides
   Покрывают цвета, которые часто встречаются в JSX-инлайнах
   (Tailwind-like серые, blue-50/700, и т.д.). Без !important
   эти селекторы не перебили бы inline style, поэтому везде он.
   ══════════════════════════════════════════════════════════════ */

/* ── Фон: белые поверхности → bg-card ─────────────────────── */
html[data-theme="dark"] [style*="background:#FFFFFF"],
html[data-theme="dark"] [style*="background: #FFFFFF"],
html[data-theme="dark"] [style*="background:#ffffff"],
html[data-theme="dark"] [style*="background: #ffffff"],
html[data-theme="dark"] [style*="background-color:#FFFFFF"],
html[data-theme="dark"] [style*="background-color: #FFFFFF"],
html[data-theme="dark"] [style*="background:#FFFFFF"],
html[data-theme="dark"] [style*="background: #FFFFFF"],
html[data-theme="dark"] [style*="background:#F9FAFB"],
html[data-theme="dark"] [style*="background: #F9FAFB"],
html[data-theme="dark"] [style*="background:#F3F4F6"],
html[data-theme="dark"] [style*="background: #F3F4F6"],
html[data-theme="dark"] [style*="background:#F7F9FC"],
html[data-theme="dark"] [style*="background: #F7F9FC"] {
  background-color: var(--bg-card) !important;
}

/* ── Фон: голубые подложки (EFF6FF, DBEAFE, EAEEF4) ────────── */
html[data-theme="dark"] [style*="background:#DBEAFE"],
html[data-theme="dark"] [style*="background: #DBEAFE"],
html[data-theme="dark"] [style*="background:#EAEEF4"],
html[data-theme="dark"] [style*="background: #EAEEF4"],
html[data-theme="dark"] [style*="background:#E0E7FF"],
html[data-theme="dark"] [style*="background: #E0E7FF"] {
  background-color: rgba(96, 165, 250, 0.14) !important;
}

/* ── Текст: тёмные хексы → светлые ─────────────────────────── */
html[data-theme="dark"] [style*="color:#0F172A"],
html[data-theme="dark"] [style*="color: #0F172A"],
html[data-theme="dark"] [style*="color:#0f172a"],
html[data-theme="dark"] [style*="color: #0f172a"],
html[data-theme="dark"] [style*="color:#0B1220"],
html[data-theme="dark"] [style*="color: #0B1220"],
html[data-theme="dark"] [style*="color:#111827"],
html[data-theme="dark"] [style*="color: #111827"],
html[data-theme="dark"] [style*="color:#0F1729"],
html[data-theme="dark"] [style*="color: #0F1729"],
html[data-theme="dark"] [style*="color:#1B2536"],
html[data-theme="dark"] [style*="color: #1B2536"],
html[data-theme="dark"] [style*="color:#1E293B"],
html[data-theme="dark"] [style*="color: #1E293B"],
html[data-theme="dark"] [style*="color:#000"],
html[data-theme="dark"] [style*="color: #000"],
html[data-theme="dark"] [style*="color:black"],
html[data-theme="dark"] [style*="color: black"] {
  color: #FFFFFF !important;
}

/* Серые средние (#2C66BE, #2C66BE, #4B5563, #6B7280) → светлый */
html[data-theme="dark"] [style*="color:#2C66BE"],
html[data-theme="dark"] [style*="color: #2C66BE"],
html[data-theme="dark"] [style*="color:#2C66BE"],
html[data-theme="dark"] [style*="color: #2C66BE"],
html[data-theme="dark"] [style*="color:#4B5563"],
html[data-theme="dark"] [style*="color: #4B5563"],
html[data-theme="dark"] [style*="color:#6B7280"],
html[data-theme="dark"] [style*="color: #6B7280"] {
  color: #D6DFEE !important;
}

/* Серые мутные (#64748B, #B8C5DE, #9CA3AF) → среднесветлые */
html[data-theme="dark"] [style*="color:#64748B"],
html[data-theme="dark"] [style*="color: #64748B"],
html[data-theme="dark"] [style*="color:#B8C5DE"],
html[data-theme="dark"] [style*="color: #B8C5DE"],
html[data-theme="dark"] [style*="color:#9CA3AF"],
html[data-theme="dark"] [style*="color: #9CA3AF"] {
  color: #B8C5DE !important;
}

/* Brand-синий текст (#F2D08A, #2563EB, #1E40AF) → светлый акцент */
html[data-theme="dark"] [style*="color:#F2D08A"],
html[data-theme="dark"] [style*="color: #F2D08A"],
html[data-theme="dark"] [style*="color:#2563EB"],
html[data-theme="dark"] [style*="color: #2563EB"],
html[data-theme="dark"] [style*="color:#1E40AF"],
html[data-theme="dark"] [style*="color: #1E40AF"],
html[data-theme="dark"] [style*="color:#1E40AF"],
html[data-theme="dark"] [style*="color: #1E40AF"],
html[data-theme="dark"] [style*="color:#3B82F6"],
html[data-theme="dark"] [style*="color: #3B82F6"] {
  color: #EAF0FA !important;
}

/* ── Бордеры ───────────────────────────────────────────────── */
html[data-theme="dark"] [style*="border:1px solid #E2E8F0"],
html[data-theme="dark"] [style*="border: 1px solid #E2E8F0"],
html[data-theme="dark"] [style*="border:1px solid #E5E7EB"],
html[data-theme="dark"] [style*="border: 1px solid #E5E7EB"],
html[data-theme="dark"] [style*="border:1px solid #EAECF0"],
html[data-theme="dark"] [style*="border: 1px solid #EAECF0"],
html[data-theme="dark"] [style*="border:1px solid #EEF1F5"],
html[data-theme="dark"] [style*="border: 1px solid #EEF1F5"],
html[data-theme="dark"] [style*="border:1px solid #FFFFFF"],
html[data-theme="dark"] [style*="border: 1px solid #FFFFFF"],
html[data-theme="dark"] [style*="border:1px solid #F3F4F6"],
html[data-theme="dark"] [style*="border: 1px solid #F3F4F6"],
html[data-theme="dark"] [style*="border-color:#E2E8F0"],
html[data-theme="dark"] [style*="border-color: #E2E8F0"] {
  border-color: #143F87 !important;
}

/* ── BorderTop / BorderBottom (часто #FFFFFF) ──────────────── */
html[data-theme="dark"] [style*="borderTop:'1px solid #FFFFFF"],
html[data-theme="dark"] [style*="borderTop: '1px solid #FFFFFF"],
html[data-theme="dark"] [style*="borderBottom:'1px solid #FFFFFF"],
html[data-theme="dark"] [style*="borderBottom: '1px solid #FFFFFF"],
html[data-theme="dark"] [style*="borderTop:'1px solid #E2E8F0"],
html[data-theme="dark"] [style*="borderBottom:'1px solid #E2E8F0"] {
  border-color: #143F87 !important;
}

/* ── Боксы с темной подложкой (#0F172A в bg) → инверсия не нужна,
   они и так задумывались как тёмные — оставляем как есть. */

/* ── Тонкие линии-разделители — не сливаются с фоном ───────── */
html[data-theme="dark"] hr {
  border-color: var(--ink-300);
}

/* ── Meta items (ИНН / ОКПО / Рег. номер / Дата / Возраст) ── */
html[data-theme="dark"] .meta-label,
html[data-theme="dark"] .t-eyebrow {
  color: #EAF0FA;
}
html[data-theme="dark"] .meta-value {
  color: var(--ink-900);
}

/* ── Hero — текст должен быть на тёмном виден ──────────────── */
html[data-theme="dark"] .hero-h1,
html[data-theme="dark"] .hero-title,
html[data-theme="dark"] .hero-company-title,
html[data-theme="dark"] .display-xl,
html[data-theme="dark"] .t-display,
html[data-theme="dark"] .t-h1,
html[data-theme="dark"] .t-h2,
html[data-theme="dark"] .t-h3,
html[data-theme="dark"] .page-title-h1 {
  color: var(--ink-900);
}
html[data-theme="dark"] .hero-desc,
html[data-theme="dark"] .section-desc,
html[data-theme="dark"] .t-body,
html[data-theme="dark"] .t-body-l,
html[data-theme="dark"] .t-caption {
  color: var(--ink-700);
}

/* ── Force body тёмный в любой странице ────────────────────── */
html[data-theme="dark"] body {
  background: var(--bg-page) !important;
  color: var(--ink-900);
}

/* ── Любая section/article/main внутри body без явного фона
      получит тёмную поверхность, если использует --bg-card */
html[data-theme="dark"] section.card,
html[data-theme="dark"] article.card {
  background: var(--bg-card) !important;
  border-color: var(--ink-300) !important;
}

/* ══════════════════════════════════════════════════════════════
   DARK — ГЛОБАЛЬНЫЕ FALL-BACK ПРАВИЛА
   ══════════════════════════════════════════════════════════════ */

/* Все заголовки в dark — основной цвет ink-900 */
html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] h5,
html[data-theme="dark"] h6 {
  color: var(--ink-900) !important;
}

/* Все .card / .pf-section / aside.card / section.card / .card-interactive */
html[data-theme="dark"] .card,
html[data-theme="dark"] .card-interactive,
html[data-theme="dark"] .pf-section,
html[data-theme="dark"] .pf-card,
html[data-theme="dark"] .stat-card,
html[data-theme="dark"] .kpi-card,
html[data-theme="dark"] aside.card,
html[data-theme="dark"] article.card,
html[data-theme="dark"] section.card {
  background: var(--bg-card) !important;
  border-color: var(--ink-300) !important;
  color: var(--ink-900);
}

/* Header внутри карточки (Card компонент рендерит header) */
html[data-theme="dark"] .card > header h3,
html[data-theme="dark"] .card-interactive > header h3,
html[data-theme="dark"] .pf-section > header h3,
html[data-theme="dark"] section > header h3,
html[data-theme="dark"] section > header h2 {
  color: var(--ink-900) !important;
}

/* Inline-style варианты для #fff */
html[data-theme="dark"] [style*="background:'#fff'"],
html[data-theme="dark"] [style*='background:"#fff"'],
html[data-theme="dark"] [style*="rgb(255, 255, 255)"],
html[data-theme="dark"] [style*="rgb(255,255,255)"] {
  background-color: var(--bg-card) !important;
}

/* Текст: tailwind-grays */
html[data-theme="dark"] [style*="color:#374151"],
html[data-theme="dark"] [style*="color: #374151"],
html[data-theme="dark"] [style*="color:#1F2937"],
html[data-theme="dark"] [style*="color: #1F2937"] {
  color: var(--ink-900) !important;
}

/* Border-bottom разделители из inline */
html[data-theme="dark"] [style*="border-bottom:1px solid #F1F5F9"],
html[data-theme="dark"] [style*="border-bottom: 1px solid #F1F5F9"],
html[data-theme="dark"] [style*="borderBottom:1px solid #F1F5F9"],
html[data-theme="dark"] [style*="borderBottom: 1px solid #F1F5F9"] {
  border-bottom-color: var(--ink-300) !important;
}

/* Hero-wrap (home) — основная hero-секция с белым фоном */
html[data-theme="dark"] .hero-wrap,
html[data-theme="dark"] .partnet-section,
html[data-theme="dark"] .stats-section,
html[data-theme="dark"] .how-section,
html[data-theme="dark"] .pricing-section,
html[data-theme="dark"] .faq-section,
html[data-theme="dark"] .contacts-section,
html[data-theme="dark"] .sources-section {
  background: var(--bg-page) !important;
}

/* Линейные градиенты с белым */
html[data-theme="dark"] [style*="linear-gradient(180deg, #FFFFFF"],
html[data-theme="dark"] [style*="linear-gradient(180deg,#FFFFFF"],
html[data-theme="dark"] [style*="linear-gradient(180deg, #fff"],
html[data-theme="dark"] [style*="linear-gradient(180deg,#fff"] {
  background: var(--bg-card) !important;
}

/* Btn-secondary / btn-ghost в hero профиля */
html[data-theme="dark"] .btn-secondary,
html[data-theme="dark"] .btn-ghost {
  color: var(--ink-700) !important;
}
html[data-theme="dark"] .btn-secondary {
  background: var(--bg-card) !important;
  border-color: var(--ink-300) !important;
}
html[data-theme="dark"] .btn-secondary:hover:not(:disabled) {
  background: var(--ink-200) !important;
  border-color: var(--ink-400) !important;
  color: var(--ink-900) !important;
}
html[data-theme="dark"] .btn-ghost:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.06) !important;
  color: var(--ink-900) !important;
}

/* Tab-кнопки */
html[data-theme="dark"] .tab-btn,
html[data-theme="dark"] .ind-tab-btn {
  color: var(--ink-600) !important;
}
html[data-theme="dark"] .tab-btn:hover,
html[data-theme="dark"] .ind-tab-btn:hover {
  color: var(--ink-900) !important;
}
html[data-theme="dark"] .tab-btn.is-active,
html[data-theme="dark"] .ind-tab-btn.is-active {
  color: var(--ink-900) !important;
  border-bottom-color: var(--brand-500) !important;
}

/* Ссылки внутри карточек */
html[data-theme="dark"] .card a,
html[data-theme="dark"] .pf-section a,
html[data-theme="dark"] section.card a {
  color: var(--brand-500);
}
html[data-theme="dark"] .card a:hover {
  color: var(--brand-700);
}

/* Подложки success/danger/warning */
html[data-theme="dark"] [style*="background:#ECFDF5"],
html[data-theme="dark"] [style*="background: #ECFDF5"],
html[data-theme="dark"] [style*="background:#DCFCE7"],
html[data-theme="dark"] [style*="background: #DCFCE7"] {
  background-color: var(--success-50) !important;
}
html[data-theme="dark"] [style*="background:#FEF2F2"],
html[data-theme="dark"] [style*="background: #FEF2F2"],
html[data-theme="dark"] [style*="background:#FEE2E2"] {
  background-color: var(--danger-50) !important;
}
html[data-theme="dark"] [style*="background:#FFFBEB"],
html[data-theme="dark"] [style*="background: #FFFBEB"],
html[data-theme="dark"] [style*="background:#FEF3C7"] {
  background-color: var(--warning-50) !important;
}

/* Семантические цвета текста */
html[data-theme="dark"] [style*="color:#047857"],
html[data-theme="dark"] [style*="color: #047857"],
html[data-theme="dark"] [style*="color:#059669"],
html[data-theme="dark"] [style*="color: #059669"],
html[data-theme="dark"] [style*="color:#10B981"] {
  color: var(--success-500) !important;
}
html[data-theme="dark"] [style*="color:#B91C1C"],
html[data-theme="dark"] [style*="color: #B91C1C"],
html[data-theme="dark"] [style*="color:#DC2626"],
html[data-theme="dark"] [style*="color: #DC2626"] {
  color: var(--danger-500) !important;
}
html[data-theme="dark"] [style*="color:#B45309"],
html[data-theme="dark"] [style*="color: #B45309"],
html[data-theme="dark"] [style*="color:#D97706"] {
  color: var(--warning-500) !important;
}

/* Inputs */
html[data-theme="dark"] input,
html[data-theme="dark"] textarea,
html[data-theme="dark"] select {
  background-color: var(--bg-card);
  color: var(--ink-900);
  border-color: var(--ink-300);
}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder {
  color: var(--ink-500);
}

/* Logo */
html[data-theme="dark"] .bp-logo-be { color: var(--brand-500) !important; }
html[data-theme="dark"] .bp-logo-partner { color: var(--ink-900) !important; }

/* ══════════════════════════════════════════════════════════════
   DARK — ДОТОШНЫЕ ПРАВИЛА: числа, бейджи, иконки, hero-title
   ══════════════════════════════════════════════════════════════ */

/* Числа в карточках сервисов («217 000», «4,8 млн», «340») — золотые */
html[data-theme="dark"] .svc-card-num,
html[data-theme="dark"] .stats-val,
html[data-theme="dark"] .price-amount,
html[data-theme="dark"] .num-mono,
html[data-theme="dark"] .breakdown-value {
  color: var(--brand-500) !important;
}

/* Лейблы рядом с числами — приглушённо-белые */
html[data-theme="dark"] .svc-card-lbl,
html[data-theme="dark"] .stats-lbl,
html[data-theme="dark"] .stats-sub,
html[data-theme="dark"] .price-unit {
  color: var(--ink-600) !important;
}

/* Hero-title и display заголовки — белые с акцентом на ключевом слове */
html[data-theme="dark"] .hero-title,
html[data-theme="dark"] .hero-title b,
html[data-theme="dark"] .hero-title strong,
html[data-theme="dark"] .hero-h1,
html[data-theme="dark"] .display-xl,
html[data-theme="dark"] .t-display,
html[data-theme="dark"] .t-h1,
html[data-theme="dark"] .hero-company-title {
  color: var(--ink-900) !important;
}

/* Hero-title подчёркнутое слово / акцент — золото */
html[data-theme="dark"] .hero-title .hl-wavy,
html[data-theme="dark"] .hero-desc .hl-wavy,
html[data-theme="dark"] .hl-wavy {
  color: var(--brand-500) !important;
}

/* Описания / параграфы — мягкий белый */
html[data-theme="dark"] .hero-desc,
html[data-theme="dark"] .section-desc,
html[data-theme="dark"] .t-body,
html[data-theme="dark"] .t-body-l {
  color: var(--ink-700) !important;
}

/* Status-бейджи "Действующая" / "В процессе" / "Иностр. участие" / "НДС" / "Госзакупки" */
html[data-theme="dark"] [class*="badge"]:not(.kr-badge):not(.kr-badge-pc),
html[data-theme="dark"] .chip-success {
  background: rgba(74, 222, 128, 0.18) !important;
  border-color: rgba(74, 222, 128, 0.40) !important;
  color: var(--success-700) !important;
}

/* Иконки слева "АТ", "КТЛ" — golden акцент */
html[data-theme="dark"] [class*="result-avatar"],
html[data-theme="dark"] [class*="entity-avatar"] {
  background: var(--brand-500) !important;
  color: #0E2A5E !important;
}

/* Все ссылки и интерактивные акценты — золото */
html[data-theme="dark"] a:not(.bp-logo):not(.bp-btn-cta) {
  color: var(--brand-500);
}
html[data-theme="dark"] a:hover { color: var(--brand-700); }

/* Чисто синие inline-styled цифры (raw hex #1D4ED8 / #2563EB в jsx через 'var(--blue-600)' = золото) */
html[data-theme="dark"] [style*="color:#1D4ED8"],
html[data-theme="dark"] [style*="color: #1D4ED8"],
html[data-theme="dark"] [style*="color:#2563EB"],
html[data-theme="dark"] [style*="color: #2563EB"] {
  color: var(--brand-500) !important;
}

/* Числовые spans с .num-mono в карточках */
html[data-theme="dark"] .svc-card .num-mono,
html[data-theme="dark"] .stats-strip .num-mono {
  color: var(--brand-500) !important;
}

/* Pricing — «9 990», «49 990» итд */
html[data-theme="dark"] .price-amount {
  color: var(--ink-900) !important;
}
html[data-theme="dark"] .price-tier {
  color: var(--brand-500) !important;
}

/* Tags «СЕРВИС» (eyebrow over titles) — голубой → золото */
html[data-theme="dark"] .t-eyebrow,
html[data-theme="dark"] .section-label,
html[data-theme="dark"] .hero-eyebrow {
  color: var(--brand-500) !important;
}

/* Карточки получают мягкое выделение при hover */
html[data-theme="dark"] .svc-card:hover,
html[data-theme="dark"] .price-card:hover,
html[data-theme="dark"] .partner-card:hover,
html[data-theme="dark"] .inv-card:hover,
html[data-theme="dark"] .proj-card:hover,
html[data-theme="dark"] .ch-card:hover,
html[data-theme="dark"] .result-card:hover {
  background: var(--bg-subtle) !important;
  border-color: var(--brand-500) !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(5, 18, 48, 0.45);
}

/* Footer — самый тёмный */
html[data-theme="dark"] .site-footer,
html[data-theme="dark"] footer.site-footer,
html[data-theme="dark"] .footer-pc {
  background: #08204A !important;
  border-top: 1px solid var(--ink-300) !important;
}

/* Tab-pill active — золотая подсветка */
html[data-theme="dark"] .bp-nav-link.is-active,
html[data-theme="dark"] .bp-nav-item.is-open .bp-nav-link {
  color: var(--brand-500) !important;
  background: rgba(242, 208, 138, 0.10) !important;
}

/* Лого «Be» — белый, «Partner» — белый (читаемо на синем) */
html[data-theme="dark"] .bp-logo-be {
  color: var(--brand-500) !important;
}
html[data-theme="dark"] .bp-logo-partner {
  color: var(--ink-900) !important;
}

/* Header — чуть темнее страницы для выделения */
html[data-theme="dark"] .bp-header {
  background: rgba(8, 32, 74, 0.85) !important;
  border-bottom-color: var(--ink-300) !important;
}
html[data-theme="dark"] .bp-header.is-scrolled {
  background: rgba(8, 32, 74, 0.95) !important;
  -webkit-backdrop-filter: blur(12px) saturate(180%);
  backdrop-filter: blur(12px) saturate(180%);
}

/* Official ribbon */
html[data-theme="dark"] .official-bar {
  background: #08204A !important;
  border-bottom-color: var(--ink-300) !important;
}

/* Tab badges (счётчик "14", "3", "7") — золотой */
html[data-theme="dark"] .tab-btn .tab-count,
html[data-theme="dark"] .tab-btn span:not(:first-child) {
  background: rgba(242, 208, 138, 0.16) !important;
  color: var(--brand-500) !important;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 600;
}

/* Бейдж "СЕРВИС" в page-hero — золотая обводка */
html[data-theme="dark"] .ph-eyebrow,
html[data-theme="dark"] [class*="page-hero"] [class*="eyebrow"] {
  background: rgba(242, 208, 138, 0.14) !important;
  color: var(--brand-500) !important;
  border-color: rgba(242, 208, 138, 0.32) !important;
}

/* ══════════════════════════════════════════════════════════════
   DARK — ПОЛИРОВКА КОНТРАСТА И ВИДИМОСТИ
   ══════════════════════════════════════════════════════════════ */

/* 1. Result-card, partner-card и пр. — выраженная карточка с тенью */
html[data-theme="dark"] .result-card,
html[data-theme="dark"] .partner-card,
html[data-theme="dark"] .inv-card,
html[data-theme="dark"] .proj-card,
html[data-theme="dark"] .ch-card,
html[data-theme="dark"] .ch-doc,
html[data-theme="dark"] .ch-preset,
html[data-theme="dark"] .ch-ten,
html[data-theme="dark"] .donor-card,
html[data-theme="dark"] .crowd-card,
html[data-theme="dark"] .filter-card,
html[data-theme="dark"] .sf-card,
html[data-theme="dark"] .modal-dialog,
html[data-theme="dark"] .lc-card,
html[data-theme="dark"] .pf-section,
html[data-theme="dark"] .pf-card,
html[data-theme="dark"] .stat-card,
html[data-theme="dark"] .kpi-card,
html[data-theme="dark"] section.card,
html[data-theme="dark"] article.card,
html[data-theme="dark"] aside.card,
html[data-theme="dark"] .card {
  background: var(--bg-card) !important;
  border: 1px solid var(--ink-300) !important;
  box-shadow: 0 4px 16px rgba(5, 18, 48, 0.50) !important;
  color: var(--ink-900);
}

/* 2. Hover карточек — ещё светлее + золотой бордер */
html[data-theme="dark"] .result-card:hover,
html[data-theme="dark"] .partner-card:hover,
html[data-theme="dark"] .inv-card:hover,
html[data-theme="dark"] .proj-card:hover,
html[data-theme="dark"] .ch-card:hover,
html[data-theme="dark"] .donor-card:hover,
html[data-theme="dark"] .svc-card:hover,
html[data-theme="dark"] .price-card:hover {
  background: #2C6FCC !important;
  border-color: var(--brand-500) !important;
}

/* 3. Все описания / параграфы — нормальный контраст */
html[data-theme="dark"] .svc-card-desc,
html[data-theme="dark"] .stats-sub,
html[data-theme="dark"] .partner-desc,
html[data-theme="dark"] .inv-desc,
html[data-theme="dark"] .proj-desc,
html[data-theme="dark"] .ch-card-desc,
html[data-theme="dark"] .price-tier-desc,
html[data-theme="dark"] .how-step-desc,
html[data-theme="dark"] p:not([class]) {
  color: var(--ink-700) !important;
}

/* 4. Лейблы рядом с числами — чуть ярче чем были */
html[data-theme="dark"] .svc-card-lbl,
html[data-theme="dark"] .stats-lbl,
html[data-theme="dark"] .price-unit,
html[data-theme="dark"] .meta-label {
  color: var(--ink-600) !important;
  font-weight: 500;
}

/* 5. KR-бейдж "ЗАРЕГИСТРИРОВАНО В КР" — яркий красный */
html[data-theme="dark"] .kr-badge,
html[data-theme="dark"] .kr-badge-pc {
  background: rgba(248, 113, 113, 0.20) !important;
  border: 1px solid rgba(248, 113, 113, 0.50) !important;
}
html[data-theme="dark"] .kr-badge-text {
  color: #FCA5A5 !important;
  font-weight: 600;
}

/* 6. Tab-bar в профиле — активная вкладка с золотой подложкой */
html[data-theme="dark"] .tab-btn {
  color: var(--ink-600) !important;
  background: transparent !important;
}
html[data-theme="dark"] .tab-btn:hover {
  color: var(--ink-900) !important;
  background: rgba(255, 255, 255, 0.05) !important;
}
html[data-theme="dark"] .tab-btn.is-active,
html[data-theme="dark"] .tab-btn[aria-selected="true"] {
  color: #0A2350 !important;
  background: var(--brand-500) !important;
  border-bottom-color: var(--brand-500) !important;
  font-weight: 600;
}
/* Tab активная: счётчик (14, 3, 7) — синий на золотом фоне */
html[data-theme="dark"] .tab-btn.is-active span:not(:first-child),
html[data-theme="dark"] .tab-btn.is-active [class*="count"] {
  background: rgba(10, 35, 80, 0.30) !important;
  color: #0A2350 !important;
}

/* 7. Sidebar фильтров на search-entities — отличный от страницы */
html[data-theme="dark"] .sf-card,
html[data-theme="dark"] .pt-filters-grid,
html[data-theme="dark"] .filter-card {
  background: var(--bg-card) !important;
  border: 1px solid var(--ink-300) !important;
  box-shadow: var(--shadow-md);
}

/* 8. Input в фильтрах — глубокий тёмный, контрастно белый текст */
html[data-theme="dark"] .f-input,
html[data-theme="dark"] .f-input input,
html[data-theme="dark"] .f-input select,
html[data-theme="dark"] .sf-input,
html[data-theme="dark"] .sf-card .f-input {
  background: var(--bg-page) !important;
  border: 1px solid var(--ink-300) !important;
  color: var(--ink-900) !important;
}
html[data-theme="dark"] .f-input::placeholder,
html[data-theme="dark"] .f-input input::placeholder {
  color: var(--ink-500) !important;
}

/* 9. Checkbox-rows в фильтрах */
html[data-theme="dark"] .f-check-box {
  background: var(--bg-page) !important;
  border-color: var(--ink-300) !important;
}
html[data-theme="dark"] .f-check-box[checked],
html[data-theme="dark"] .f-check-row.is-checked .f-check-box {
  background: var(--brand-500) !important;
  border-color: var(--brand-500) !important;
}

/* 10. Чипы организационных форм (ОсОО, АО, ЗАО, ГП, ИП, Филиал, НКО) */
html[data-theme="dark"] .qf-pill,
html[data-theme="dark"] [class*="form-chip"] {
  background: var(--bg-subtle) !important;
  border: 1px solid var(--ink-300) !important;
  color: var(--ink-700) !important;
}
html[data-theme="dark"] .qf-pill.is-active {
  background: var(--brand-500) !important;
  border-color: var(--brand-500) !important;
  color: #0A2350 !important;
  font-weight: 600;
}

/* 11. Применить фильтры — золотая кнопка */
html[data-theme="dark"] button[class*="apply"],
html[data-theme="dark"] .sf-apply-btn,
html[data-theme="dark"] .btn-apply {
  background: var(--brand-500) !important;
  color: #0A2350 !important;
  border: none !important;
  font-weight: 600;
}
html[data-theme="dark"] button[class*="apply"]:hover,
html[data-theme="dark"] .sf-apply-btn:hover {
  background: var(--brand-700) !important;
}

/* 12. «Найдено: 2 347 организаций» — заголовок */
html[data-theme="dark"] .sl-pager-info,
html[data-theme="dark"] .sl-result-count {
  color: var(--ink-900) !important;
}
html[data-theme="dark"] .sl-pager-info b,
html[data-theme="dark"] .sl-result-count b,
html[data-theme="dark"] .sl-result-count strong {
  color: var(--brand-500) !important;
}

/* 13. Выпадайки сортировки и пагинации */
html[data-theme="dark"] .sl-sort,
html[data-theme="dark"] .sl-view-btn {
  background: var(--bg-card) !important;
  border: 1px solid var(--ink-300) !important;
  color: var(--ink-900) !important;
}
html[data-theme="dark"] .sl-view-btn.is-active {
  background: var(--brand-500) !important;
  color: #0A2350 !important;
  border-color: var(--brand-500) !important;
}

/* 14. Иконки entity (AT, КТЛ, ТТ, IT) — золотой фон с тёмным текстом */
html[data-theme="dark"] .result-avatar,
html[data-theme="dark"] [class*="entity-avatar"],
html[data-theme="dark"] [class*="-avatar"]:not(.bp-avatar):not(.pf-avatar) {
  background: var(--brand-500) !important;
  color: #0A2350 !important;
  font-weight: 600;
}

/* 15. Кнопка «Экспорт в Excel» */
html[data-theme="dark"] .sl-export-btn,
html[data-theme="dark"] [class*="export"] {
  background: var(--bg-card) !important;
  border: 1px solid var(--ink-300) !important;
  color: var(--ink-800) !important;
}

/* 16. Hero-eyebrow «Платформа проверки контрагентов» — золотой акцент */
html[data-theme="dark"] .hero-eyebrow {
  background: rgba(242, 208, 138, 0.12) !important;
  border-color: rgba(242, 208, 138, 0.38) !important;
  color: var(--brand-500) !important;
}

/* 17. Метаданные результата (23 сотр, УК, суд.дела) — мягкий читаемый */
html[data-theme="dark"] [class*="meta-item"],
html[data-theme="dark"] [class*="card-meta"] span,
html[data-theme="dark"] .result-meta span {
  color: var(--ink-700) !important;
}

/* 18. Чипы статуса (Действующая) — зелёный заметный */
html[data-theme="dark"] [class*="status-active"],
html[data-theme="dark"] .chip-success,
html[data-theme="dark"] .chip-status:not(.chip-warning):not(.chip-danger) {
  background: rgba(74, 222, 128, 0.20) !important;
  border: 1px solid rgba(74, 222, 128, 0.50) !important;
  color: #86EFAC !important;
}

/* 19. Чипы инфо (НДС, Госзакупки, Иностр.участие) — синий тонированный */
html[data-theme="dark"] .chip-info,
html[data-theme="dark"] .chip-neutral,
html[data-theme="dark"] [class*="chip-vat"],
html[data-theme="dark"] [class*="chip-tag"] {
  background: rgba(54, 130, 224, 0.20) !important;
  border: 1px solid rgba(54, 130, 224, 0.45) !important;
  color: #8FB4EF !important;
}

/* 20. SVG-иконки в карточках сервисов — золотые */
html[data-theme="dark"] .svc-card svg:not([fill]),
html[data-theme="dark"] .svc-card-arr svg {
  color: var(--brand-500);
}

/* 21. Логотип Be — золотая, "Partner" — белая */
html[data-theme="dark"] .bp-logo-be { color: var(--brand-500) !important; }
html[data-theme="dark"] .bp-logo-partner { color: #FFFFFF !important; }

/* 22. Number-mono / счётчики в стате — золотые крупные */
html[data-theme="dark"] .stats-val,
html[data-theme="dark"] .svc-card-num,
html[data-theme="dark"] .price-amount,
html[data-theme="dark"] .num-mono,
html[data-theme="dark"] [class*="-value"]:not(.def-row-value):not(.meta-value) {
  color: var(--brand-500) !important;
  font-weight: 600;
}

/* 23. Hero search box (homepage поиск) */
html[data-theme="dark"] .hsearch-wrap {
  background: var(--bg-card) !important;
  border: 1px solid var(--ink-300) !important;
  box-shadow: 0 16px 48px rgba(5, 18, 48, 0.60) !important;
}

/* 24. Иконки сервисов в hero/sections — 3D-эффект без фильтра в dark */
html[data-theme="dark"] [class*="svc-card-icon"] img,
html[data-theme="dark"] [class*="page-hero-icon"] img {
  /* оставляем как есть — pict дёт цвета сам */
}

/* 25. Sidebar headings (ИДЕНТИФИКАТОРЫ, ДЕЯТЕЛЬНОСТЬ И РЕГИОН, и т.д.) */
html[data-theme="dark"] .sf-block-title,
html[data-theme="dark"] [class*="block-title"],
html[data-theme="dark"] [class*="filter-section-title"] {
  color: var(--ink-600) !important;
  font-weight: 600;
  letter-spacing: 0.04em;
}

/* 26. «Часть данных доступна только в Premium» — premium-баннер */
html[data-theme="dark"] .upsell-banner {
  background: rgba(242, 208, 138, 0.12) !important;
  border: 1px solid rgba(242, 208, 138, 0.32) !important;
  color: var(--ink-900) !important;
}
html[data-theme="dark"] .upsell-banner a,
html[data-theme="dark"] .upsell-banner button {
  color: var(--brand-500) !important;
  font-weight: 600;
}

/* 27. Карточка профиля «Количество сотрудников / Средняя З/П» */
html[data-theme="dark"] [class*="hero-meta-grid"],
html[data-theme="dark"] [class*="meta-grid"] {
  /* Сам контейнер прозрачный — meta-item рисуется на этом контексте */
}
html[data-theme="dark"] [class*="meta-item"] {
  background: var(--bg-subtle) !important;
  border: 1px solid var(--ink-300) !important;
  border-radius: 8px;
}

/* 28. «Источники данных» в правой колонке профиля */
html[data-theme="dark"] [class*="sources-aside"],
html[data-theme="dark"] [class*="aside-sources"] {
  background: var(--bg-card) !important;
  border: 1px solid var(--ink-300) !important;
}

/* 29. Зебра в таблицах */
html[data-theme="dark"] tbody tr:nth-child(even) {
  background: rgba(255, 255, 255, 0.03);
}
html[data-theme="dark"] tbody tr:hover {
  background: rgba(242, 208, 138, 0.06);
}

/* 30. Breadcrumbs — ссылки золотые */
html[data-theme="dark"] [class*="breadcrumb"] a {
  color: var(--brand-500);
}
html[data-theme="dark"] [class*="breadcrumb"] span:not(:has(a)) {
  color: var(--ink-600);
}

/* ══════════════════════════════════════════════════════════════
   DARK — УБИРАЕМ ВСЕ ГРАДИЕНТЫ (flat-design)
   Перебивает любые linear-gradient/radial-gradient на flat
   ══════════════════════════════════════════════════════════════ */

/* 1. Hero-wrap home — flat фон (был светлый radial+linear) */
html[data-theme="dark"] .hero-wrap,
html[data-theme="dark"] .hero-wrap::before,
html[data-theme="dark"] .hero-wrap::after {
  background: var(--bg-page) !important;
  background-image: none !important;
}

/* 2. Все CSS-классы с белыми/голубыми градиентами → flat var(--bg-card) */
html[data-theme="dark"] .svc-card,
html[data-theme="dark"] .svc-card-icon,
html[data-theme="dark"] .svc-card-arr,
html[data-theme="dark"] .trust-wrap,
html[data-theme="dark"] .how-step,
html[data-theme="dark"] .price-card,
html[data-theme="dark"] .pricing-section,
html[data-theme="dark"] .stats-section,
html[data-theme="dark"] .footer-coat-card,
html[data-theme="dark"] .hero-eyebrow-shield,
html[data-theme="dark"] .hero-hint-link,
html[data-theme="dark"] .hsearch-wrap,
html[data-theme="dark"] .hsearch-bar,
html[data-theme="dark"] .hsearch-tab,
html[data-theme="dark"] .hsearch-drop,
html[data-theme="dark"] .src-card,
html[data-theme="dark"] .src-more-pill,
html[data-theme="dark"] .info-strip,
html[data-theme="dark"] .partnet-section,
html[data-theme="dark"] .partnet-section .board,
html[data-theme="dark"] .partnet-section .src-card,
html[data-theme="dark"] .partnet-section .search-row,
html[data-theme="dark"] .partnet-section .chip,
html[data-theme="dark"] .partnet-section .scan-strip,
html[data-theme="dark"] .partnet-section .src-card.done,
html[data-theme="dark"] .partnet-section .tab.active,
html[data-theme="dark"] .partnet-section .sources-pill-row,
html[data-theme="dark"] .page-hero,
html[data-theme="dark"] .ch-hero,
html[data-theme="dark"] .ind-hero,
html[data-theme="dark"] .pf-header,
html[data-theme="dark"] .hero-pad,
html[data-theme="dark"] .breadcrumbs-pad,
html[data-theme="dark"] .tabs-sticky,
html[data-theme="dark"] .upsell-modal,
html[data-theme="dark"] .modal-dialog {
  background: var(--bg-card) !important;
  background-image: none !important;
  border-color: var(--ink-300) !important;
}

/* 3. Иконки сервисов с синим градиентом (180deg #3B82F6→#2563EB) → flat золотой */
html[data-theme="dark"] [class*="-icon"][class*="svc"],
html[data-theme="dark"] [class*="-icon"][class*="price"] {
  background: var(--brand-500) !important;
  background-image: none !important;
  color: #0A2350 !important;
}

/* 4. Голубые градиенты-подложки (180deg #DBEAFE→#EFF6FF) → подложка subtle */
html[data-theme="dark"] [style*="DBEAFE"][style*="EFF6FF"],
html[data-theme="dark"] [style*="F8FAFF"],
html[data-theme="dark"] [style*="F4F8FF"],
html[data-theme="dark"] [style*="F1F5F9"] {
  background: var(--bg-subtle) !important;
  background-image: none !important;
}

/* 5. ЛЮБОЙ inline-style с linear-gradient → flat var(--bg-card) */
html[data-theme="dark"] [style*="linear-gradient(180deg, #FFFFFF"],
html[data-theme="dark"] [style*="linear-gradient(180deg,#FFFFFF"],
html[data-theme="dark"] [style*="linear-gradient(180deg, #fff"],
html[data-theme="dark"] [style*="linear-gradient(180deg,#fff"],
html[data-theme="dark"] [style*="linear-gradient(180deg, #FBFBFC"],
html[data-theme="dark"] [style*="linear-gradient(180deg, #F8FAFF"],
html[data-theme="dark"] [style*="linear-gradient(180deg, #F4F8FF"],
html[data-theme="dark"] [style*="linear-gradient(180deg, #F7F9FC"],
html[data-theme="dark"] [style*="linear-gradient(180deg, #DBEAFE"],
html[data-theme="dark"] [style*="linear-gradient(180deg, #EFF6FF"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #1E3A8A"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #BFDBFE"] {
  background: var(--bg-card) !important;
  background-image: none !important;
}

/* 6. Синий-синий градиент кнопок (180deg #3B82F6→#2563EB) → flat синий */
html[data-theme="dark"] [style*="linear-gradient(180deg, #3B82F6"],
html[data-theme="dark"] [style*="linear-gradient(180deg,#3B82F6"],
html[data-theme="dark"] [style*="linear-gradient(180deg, #3b82f6"],
html[data-theme="dark"] [style*="linear-gradient(90deg, #3B82F6"],
html[data-theme="dark"] [style*="linear-gradient(180deg, #3b82f6"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #2563eb"] {
  background: #2563EB !important;
  background-image: none !important;
  color: #FFFFFF !important;
}

/* 7. Radial-decoration (hero blobs/auras) — приглушить или убрать */
html[data-theme="dark"] [style*="radial-gradient(800px"],
html[data-theme="dark"] [style*="radial-gradient(1200px"],
html[data-theme="dark"] [style*="radial-gradient(900px"],
html[data-theme="dark"] [style*="radial-gradient(120%"],
html[data-theme="dark"] [style*="radial-gradient(circle, rgba(59"] {
  background: transparent !important;
  background-image: none !important;
}

/* 8. Все CSS-классы где linear-gradient(180deg, #3B82F6 → #2563EB) — кнопочные синие */
html[data-theme="dark"] .price-popular-badge,
html[data-theme="dark"] .ch-stage-dot,
html[data-theme="dark"] [class*="badge-primary"],
html[data-theme="dark"] .step-num,
html[data-theme="dark"] .how-num {
  background: #2563EB !important;
  background-image: none !important;
  color: #FFFFFF !important;
}

/* 9. Hero на home специально — без декорации */
html[data-theme="dark"] .hero-wrap {
  background: var(--bg-page) !important;
  background-image: none !important;
}
html[data-theme="dark"] .hero-wrap::before,
html[data-theme="dark"] .hero-wrap::after,
html[data-theme="dark"] .net-bg-aurora,
html[data-theme="dark"] .net-bg-vignette,
html[data-theme="dark"] .net-bg-fade,
html[data-theme="dark"] .mesh-bg {
  background: transparent !important;
  background-image: none !important;
  opacity: 0 !important;
}

/* 10. Partnet PCB section — flat dark */
html[data-theme="dark"] .partnet-section,
html[data-theme="dark"] .partnet-section::before,
html[data-theme="dark"] .partnet-section::after {
  background: var(--bg-page) !important;
  background-image: none !important;
}

/* 11. Decorative dot-grid в hero — убрать */
html[data-theme="dark"] .net-bg-grid,
html[data-theme="dark"] [class*="dot-grid"] {
  background-image: none !important;
}

/* 12. Footer всех страниц — flat без градиентов */
html[data-theme="dark"] .site-footer,
html[data-theme="dark"] .footer-pc,
html[data-theme="dark"] footer[class*="footer"] {
  background: #0F2E63 !important;
  background-image: none !important;
  border-top: 1px solid var(--ink-300) !important;
}

/* 13. CTA grad-bar (декоративная горизонтальная линия) */
html[data-theme="dark"] .cta-grad-bar {
  background: linear-gradient(90deg, transparent 0%, var(--brand-500) 50%, transparent 100%) !important;
  height: 1px !important;
}

/* 14. Sections с inline background — все на flat */
html[data-theme="dark"] section[style*="background"],
html[data-theme="dark"] div[style*="background:linear-gradient"],
html[data-theme="dark"] div[style*="background: linear-gradient"] {
  background-image: none !important;
}
html[data-theme="dark"] section[style*="background:#"],
html[data-theme="dark"] section[style*="background: #"] {
  background-color: var(--bg-page) !important;
}

/* 15. .stats-section и подобные — flat */
html[data-theme="dark"] .stats-section,
html[data-theme="dark"] .stats-strip {
  background: var(--bg-card) !important;
  background-image: none !important;
}

/* 16. Score-blur и mask декорации (оставить как есть для функциональности masking) */
/* html[data-mask-mode="on"] паттерны не трогаем */

/* 17. .upsell-modal (profile-individual) — flat */
html[data-theme="dark"] .upsell-modal {
  background: var(--bg-card) !important;
  background-image: none !important;
  border: 1px solid var(--ink-300) !important;
}

/* 18. Header backdrop-blur (стеклянный) — мягкий синий, не градиент */
html[data-theme="dark"] .bp-header {
  background: rgba(15, 46, 99, 0.85) !important;
  background-image: none !important;
  border-bottom-color: var(--ink-300) !important;
}
html[data-theme="dark"] .bp-header.is-scrolled {
  background: rgba(15, 46, 99, 0.95) !important;
}

/* 19. Official ribbon */
html[data-theme="dark"] .official-bar {
  background: #0F2E63 !important;
  background-image: none !important;
  border-bottom-color: var(--ink-300) !important;
}

/* 20. Cards background — гарантируем flat var(--bg-card) */
html[data-theme="dark"] .card,
html[data-theme="dark"] section.card,
html[data-theme="dark"] article.card,
html[data-theme="dark"] aside.card {
  background: var(--bg-card) !important;
  background-image: none !important;
}

/* 21. Body — flat */
html[data-theme="dark"] body {
  background: var(--bg-page) !important;
  background-image: none !important;
}

/* ══════════════════════════════════════════════════════════════
   DARK — ВНУТРЕННИЕ PILL-БЛОКИ В КАРТОЧКАХ
   Перебиваем светло-голубые rgba(239,246,255,X) подложки
   ══════════════════════════════════════════════════════════════ */

/* Pill-зона "217 000 организаций", "4,8 млн записей", "340 активных" */
html[data-theme="dark"] .svc-card-bottom {
  background: rgba(255, 255, 255, 0.10) !important;
  border-color: rgba(255, 255, 255, 0.15) !important;
  border-top-color: rgba(255, 255, 255, 0.15) !important;
}
html[data-theme="dark"] .svc-card-num,
html[data-theme="dark"] .svc-card-meta > .svc-card-num {
  color: var(--brand-500) !important;
}
html[data-theme="dark"] .svc-card-lbl,
html[data-theme="dark"] .svc-card-meta > .svc-card-lbl,
html[data-theme="dark"] .svc-card-meta > .svc-card-lbl:only-child {
  color: var(--ink-700) !important;
}
html[data-theme="dark"] .svc-card-arr {
  background: rgba(255, 255, 255, 0.15) !important;
  color: #FFFFFF !important;
  border-color: rgba(255, 255, 255, 0.18) !important;
}
html[data-theme="dark"] .svc-card:hover .svc-card-arr {
  background: var(--brand-500) !important;
  color: #0F2E63 !important;
  border-color: var(--brand-500) !important;
}

/* Все pill-блоки внутри карточек pages.css */
html[data-theme="dark"] [class*="card"] [style*="rgba(239, 246, 255"],
html[data-theme="dark"] [class*="card"] [style*="rgba(239,246,255"] {
  background: rgba(255, 255, 255, 0.10) !important;
}

/* Meta-chips в карточках результатов: "23 сотр", "УК 1 000 000 сом", "3 суд.дела", "Средний риск" */
html[data-theme="dark"] [class*="meta-chip"],
html[data-theme="dark"] [class*="-chip"]:not(.chip-success):not(.chip-info):not(.chip-warning):not(.chip-danger):not(.qf-pill),
html[data-theme="dark"] .result-meta-item,
html[data-theme="dark"] [class*="result-meta"] > *,
html[data-theme="dark"] [class*="card-meta"] > * {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  color: var(--ink-800) !important;
}

/* Все backgrounds типа rgba(239,246,255,...) */
html[data-theme="dark"] [class] {
  /* применяется через прямой селектор внутри pages.css overrides */
}

/* ══════════════════════════════════════════════════════════════
   DARK — ТОЧЕЧНЫЕ overrides светло-голубых pill из home/pages
   ══════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .page-title-eyebrow,
html[data-theme="dark"] .seg-tab.is-active .seg-meta,
html[data-theme="dark"] .result-toolbar-count b,
html[data-theme="dark"] .result-card:hover .result-stat,
html[data-theme="dark"] .pager-btn:hover,
html[data-theme="dark"] .ch-doc:hover,
html[data-theme="dark"] .ch-preset:hover,
html[data-theme="dark"] .price-cta-secondary:hover {
  background: rgba(255, 255, 255, 0.10) !important;
  color: var(--ink-900) !important;
}

/* Result-stat / meta-chip в карточках результатов */
html[data-theme="dark"] .result-stat,
html[data-theme="dark"] .result-meta-item,
html[data-theme="dark"] .result-card-stat,
html[data-theme="dark"] .partner-card-stat,
html[data-theme="dark"] .inv-card-stat,
html[data-theme="dark"] [class*="-stat-pill"] {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: var(--ink-800) !important;
}
html[data-theme="dark"] .result-stat svg,
html[data-theme="dark"] .result-meta-item svg {
  color: var(--ink-600) !important;
}

/* Pager-btn — flat */
html[data-theme="dark"] .pager-btn {
  background: rgba(255, 255, 255, 0.05) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: var(--ink-700) !important;
}
html[data-theme="dark"] .pager-btn.is-active {
  background: var(--brand-500) !important;
  color: #0F2E63 !important;
  border-color: var(--brand-500) !important;
}

/* svc-card-icon — фон тёмный */
html[data-theme="dark"] .svc-card-icon,
html[data-theme="dark"] .svc-card-glyph {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(255, 255, 255, 0.10) !important;
}

/* ══════════════════════════════════════════════════════════════
   DARK — ПОЛНОЕ ОТКЛЮЧЕНИЕ ДЕКОРАТИВНЫХ СЛОЁВ
   Hero-wrap и Partnet-section имеют светлые radial/linear gradients,
   которые создают видимые стыки в тёмной теме. Полностью прячем.
   ══════════════════════════════════════════════════════════════ */

/* 1. Все декоративные слои hero — полностью скрыть */
html[data-theme="dark"] .net-bg,
html[data-theme="dark"] .net-bg-aurora,
html[data-theme="dark"] .net-bg-vignette,
html[data-theme="dark"] .net-bg-fade,
html[data-theme="dark"] .net-bg-grid,
html[data-theme="dark"] .net-bg-canvas,
html[data-theme="dark"] .net-bg-canvas-far,
html[data-theme="dark"] .net-bg-canvas-mid,
html[data-theme="dark"] .net-bg-canvas-near,
html[data-theme="dark"] .mesh-bg,
html[data-theme="dark"] .hero-wrap > .net-bg {
  display: none !important;
}

/* 2. Hero-wrap — гарантированно один цвет, никаких градиентов */
html[data-theme="dark"] .hero-wrap {
  background: var(--bg-page) !important;
  background-color: var(--bg-page) !important;
  background-image: none !important;
}
html[data-theme="dark"] .hero-wrap::before,
html[data-theme="dark"] .hero-wrap::after {
  background: transparent !important;
  background-image: none !important;
  display: none !important;
}

/* 3. Partnet-section — тоже единый фон */
html[data-theme="dark"] .partnet-section {
  background: var(--bg-page) !important;
  background-color: var(--bg-page) !important;
  background-image: none !important;
}
html[data-theme="dark"] .partnet-section::before,
html[data-theme="dark"] .partnet-section::after {
  background: transparent !important;
  background-image: none !important;
}
/* .partnet-section .board — pcb-сцена */
html[data-theme="dark"] .partnet-section .board {
  background: transparent !important;
}

/* 4. .hero-inner / hero-fold — прозрачные, наследуют hero-wrap */
html[data-theme="dark"] .hero-inner,
html[data-theme="dark"] .hero-inner-centered,
html[data-theme="dark"] .hero-head,
html[data-theme="dark"] .hero-fold,
html[data-theme="dark"] .hero-services {
  background: transparent !important;
}

/* 5. ВСЕ потомки внутри hero-wrap которые имеют свой background-color
       НЕ должны иметь decoration-фон (только настоящие cards) */
html[data-theme="dark"] .hero-wrap > div:not([class*="card"]):not([class*="chip"]):not(.hsearch-wrap):not([class*="search"]) {
  /* не накладываем background, чтобы не перебить нужные карточки */
}

/* 6. Body fallback */
html[data-theme="dark"] html,
html[data-theme="dark"] body {
  background-color: var(--bg-page) !important;
  background-image: none !important;
}

/* 7. Section.section-pad / .section-pad-sm — прозрачные */
html[data-theme="dark"] section.section-pad,
html[data-theme="dark"] section.section-pad-sm,
html[data-theme="dark"] .section-pad,
html[data-theme="dark"] .section-pad-sm {
  background: var(--bg-page) !important;
  background-color: var(--bg-page) !important;
  background-image: none !important;
}

/* 8. Все divider'ы / fade'ы / vignette'ы — скрыть */
html[data-theme="dark"] [class*="-fade"],
html[data-theme="dark"] [class*="-vignette"],
html[data-theme="dark"] [class*="-aurora"] {
  display: none !important;
}

/* ─── ГЛОБАЛЬНЫЙ РАДИУС ──────────────────────────────────────
   Унифицируем все border-radius на сайте до одного небольшого
   значения. Перебивает любые хардкод-значения в CSS, HTML inline
   и JSX inline-стилях (включая 50%, 999px, шорткаты на углы). */
*,
*::before,
*::after {
  border-radius: 4px !important;
}

/* ══════════════════════════════════════════════════════════════
   HEADER v2
   • Шапка прозрачная поверх фона страницы; после 20px скролла —
     матовое стекло + тонкая линия снизу; при скролле вниз уезжает.
   • Кнопки-«пилюли»: радиусы через !important, т.к. выше стоит
     глобальное правило *{border-radius:4px !important}.
   ══════════════════════════════════════════════════════════════ */
:root {
  --hdr-fg:      #0B1220;
  --hdr-muted:   #5B6474;
  --hdr-line:    rgba(15, 23, 42, 0.10);
}

#root { position: relative; z-index: 1; }

.bp-header.bp-header-v2 {
  position: sticky;
  top: 0;
  z-index: 100;
  height: 76px;
  background: transparent;
  border-bottom: 1px solid transparent;
  box-shadow: none;
  transform: translateY(0);
  transition:
    transform 450ms cubic-bezier(0.22, 1, 0.36, 1),
    background-color 300ms ease,
    border-color 300ms ease,
    height 300ms ease;
}
.bp-header.bp-header-v2.is-scrolled {
  height: 64px;
  background: rgba(247, 249, 252, 0.78);
  -webkit-backdrop-filter: blur(14px) saturate(160%);
          backdrop-filter: blur(14px) saturate(160%);
  border-bottom-color: var(--hdr-line);
  box-shadow: none;
}
.bp-header.bp-header-v2.is-hidden { transform: translateY(-100%); }

.bp-header-v2 .bp-header-inner {
  max-width: 1320px;
  padding: 0 40px;
  gap: 24px;
  justify-content: space-between;
}

/* Навигация: приглушённые ссылки, подчёркивание «вырастает» слева */
.bp-header-v2 .bp-nav { gap: 26px; margin: 0 auto; }
.bp-header-v2 .bp-nav-link {
  height: auto;
  padding: 6px 0;
  gap: 5px;
  font-size: 14px;
  font-weight: 450;
  color: var(--hdr-muted);
  background: none;
}
.bp-header-v2 .bp-nav-link::after,
.bp-header-v2 .bp-nav-link.is-active::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: right center;
  transition: transform 350ms cubic-bezier(0.22, 1, 0.36, 1);
  border-radius: 0 !important;
}
.bp-header-v2 .bp-nav-link:hover,
.bp-header-v2 .bp-nav-link.is-active,
.bp-header-v2 .bp-nav-item.is-open .bp-nav-link { color: var(--hdr-fg); font-weight: 450; }
.bp-header-v2 .bp-nav-link:hover::after,
.bp-header-v2 .bp-nav-link.is-active::after { transform: scaleX(1); transform-origin: left center; }
.bp-header-v2 .bp-nav-chev { transition: transform 250ms ease; opacity: .8; }
.bp-header-v2 .bp-nav-item.is-open .bp-nav-chev { transform: rotate(180deg); }

/* Выпадающее меню «Источники» */
.bp-header-v2 .bp-dd {
  position: absolute;
  top: 100%;
  left: 50%;
  padding-top: 18px;
  transform: translate(-50%, 6px);
  opacity: 0;
  visibility: hidden;
  transition: opacity 200ms ease, transform 200ms ease, visibility 200ms;
  z-index: 120;
}
.bp-header-v2 .bp-nav-item.is-open .bp-dd {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}
.bp-header-v2 .bp-dd-panel {
  width: 440px;
  padding: 8px;
  background: #ffffff;
  border: 1px solid var(--hdr-line);
  border-radius: 18px !important;
  box-shadow: 0 24px 60px -20px rgba(15, 23, 42, 0.30);
}
.bp-header-v2 .bp-dd-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 14px;
  font-size: 14px;
  font-weight: 500;
  color: var(--hdr-fg);
  text-decoration: none;
  border-radius: 12px !important;
  transition: background 160ms ease;
}
.bp-header-v2 .bp-dd-head:hover { background: #F1F4F9; text-decoration: none; }
.bp-header-v2 .bp-dd-sep { height: 1px; margin: 4px 14px; background: var(--hdr-line); }
.bp-header-v2 .bp-dd-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px;
  padding-top: 4px;
}
.bp-header-v2 .bp-dd-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  font-size: 13.5px;
  color: var(--hdr-muted);
  text-decoration: none;
  border-radius: 12px !important;
  transition: background 160ms ease, color 160ms ease;
}
.bp-header-v2 .bp-dd-item:hover { background: #F1F4F9; color: var(--hdr-fg); text-decoration: none; }
.bp-header-v2 .bp-dd-item img { width: 26px; height: 26px; object-fit: contain; flex: none; }

/* Правый блок */
.bp-header-v2 .bp-right { gap: 10px; }

.bp-lang-seg {
  display: inline-flex;
  align-items: center;
  padding: 3px;
  border: 1px solid var(--hdr-line);
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.5);
}
.bp-lang-seg button {
  height: 32px;
  min-width: 40px;
  padding: 0 11px;
  border: none;
  background: transparent;
  border-radius: 999px !important;
  font-family: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
  font-size: 11.5px;
  letter-spacing: 0.08em;
  color: var(--hdr-muted);
  cursor: pointer;
  transition: background 200ms ease, color 200ms ease;
}
.bp-lang-seg button:hover { color: var(--hdr-fg); }
.bp-lang-seg button.is-active { background: var(--hdr-fg); color: #fff; }

.bp-header-v2 .bp-theme-btn,
.bp-mobile-overlay .bp-theme-btn {
  width: 40px;
  height: 40px;
  border: 1px solid var(--hdr-line);
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.5);
  color: var(--hdr-fg);
}

.bp-header-v2 .bp-btn-ghost {
  height: 40px;
  padding: 0 14px;
  color: var(--hdr-fg);
  border-radius: 999px !important;
}
.bp-header-v2 .bp-btn-ghost:hover { background: rgba(15, 23, 42, 0.05); }

.bp-header-v2 .bp-btn-cta,
.bp-mobile-overlay .bp-btn-cta {
  height: 44px;
  padding: 0 20px 0 22px;
  gap: 8px;
  border-radius: 999px !important;
  background: #1D4ED8;
  font-weight: 500;
  box-shadow: 0 8px 20px -10px rgba(29, 78, 216, 0.7);
  transition: background 250ms ease, box-shadow 250ms ease;
}
.bp-header-v2 .bp-btn-cta svg,
.bp-mobile-overlay .bp-btn-cta svg { transition: transform 250ms cubic-bezier(0.22, 1, 0.36, 1); }
.bp-header-v2 .bp-btn-cta:hover,
.bp-mobile-overlay .bp-btn-cta:hover { background: #1E40AF; box-shadow: 0 10px 24px -10px rgba(29, 78, 216, 0.85); }
.bp-header-v2 .bp-btn-cta:hover svg,
.bp-mobile-overlay .bp-btn-cta:hover svg { transform: translateX(3px); }

.bp-header-v2 .bp-burger {
  width: 42px;
  height: 42px;
  border: 1px solid var(--hdr-line);
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.5);
}

/* Мобильное меню */
.bp-mobile-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.bp-mobile-overlay .bp-btn-cta { width: 100%; height: 50px; justify-content: center; }
.bp-mobile-overlay .bp-btn-ghost { border-radius: 999px !important; }
.bp-mobile-overlay .bp-mobile-close { border: 1px solid var(--hdr-line); border-radius: 999px !important; }

@media (min-width: 1024px) and (max-width: 1279px) {
  .bp-header-v2 .bp-header-inner { padding: 0 24px; gap: 16px; }
  .bp-header-v2 .bp-nav { gap: 18px; }
  .bp-header-v2 .bp-nav-link { font-size: 13.5px; padding: 6px 0; }
  .bp-header-v2 .bp-btn-ghost { display: none; }
}
@media (max-width: 1023px) {
  .bp-header.bp-header-v2,
  .bp-header.bp-header-v2.is-scrolled { height: 60px; }
  .bp-header-v2 .bp-header-inner { padding: 0 20px; }
}
@media (max-width: 767px) {
  .bp-header.bp-header-v2,
  .bp-header.bp-header-v2.is-scrolled { height: 56px; }
  .bp-header-v2 .bp-header-inner { padding: 0 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .bp-header.bp-header-v2 { transition: none; }
}

/* ══════════════════════════════════════════════════════════════
   HEADER v4 — лёгкая строка в тон странице
   Прозрачная во всю ширину; ссылки тонкие серые, у наведённой —
   синяя точка снизу (как точки на линиях платы); CTA синяя, как
   «Найти». При скролле — белый фон и тонкая линия снизу.
   ══════════════════════════════════════════════════════════════ */
.bp-header.bp-header-v4 { height: 72px; }
.bp-header.bp-header-v4.is-scrolled {
  height: 64px;
  background: rgba(255, 255, 255, 0.86);
  -webkit-backdrop-filter: blur(14px) saturate(160%);
          backdrop-filter: blur(14px) saturate(160%);
  border-bottom-color: #EEF2F7;
}
.bp-header-v4 .bp-header-inner { max-width: 1240px; padding: 0 32px; }
.bp-header-v4 .bp-nav { gap: 36px; }
.bp-header-v4 .bp-nav-link {
  height: 40px;
  padding: 0;
  font-size: 14.5px;
  font-weight: 450;
  color: #5B6474;
  background: none;
}
.bp-header-v4 .bp-nav-link::after,
.bp-header-v4 .bp-nav-link.is-active::after {
  content: "";
  position: absolute;
  left: 50%; right: auto; bottom: 2px;
  width: 4px; height: 4px;
  margin-left: -2px;
  background: #2563EB;
  border-radius: 999px !important;
  transform: scale(0);
  transition: transform 250ms cubic-bezier(.22,1,.36,1);
}
.bp-header-v4 .bp-nav-link:hover,
.bp-header-v4 .bp-nav-link.is-active { color: #0B1220; background: none; font-weight: 450; }
.bp-header-v4 .bp-nav-link:hover::after,
.bp-header-v4 .bp-nav-link.is-active::after { transform: scale(1); }

.bp-header-v4 .bp-right { gap: 8px; }
.bp-right-sep { width: 1px; height: 20px; margin: 0 8px; background: #E2E8F0; }
.bp-lang-dd { position: relative; }
.bp-lang-dd-btn {
  display: inline-flex; align-items: center; gap: 4px;
  height: 36px; padding: 0 6px;
  font: inherit; font-size: 13.5px; font-weight: 500;
  color: #5B6474;
  background: transparent; border: 0; cursor: pointer;
}
.bp-lang-dd-btn:hover, .bp-lang-dd.is-open .bp-lang-dd-btn { color: #0B1220; }
.bp-lang-dd-btn svg { transition: transform 200ms ease; }
.bp-lang-dd.is-open .bp-lang-dd-btn svg { transform: rotate(180deg); }
.bp-lang-dd-menu {
  position: absolute; top: calc(100% + 10px); right: 0;
  min-width: 168px; padding: 6px;
  background: #FFFFFF;
  border: 1px solid #E8EDF5;
  border-radius: 14px !important;
  box-shadow: 0 20px 44px -18px rgba(15, 23, 42, 0.3);
  opacity: 0; visibility: hidden; transform: translateY(4px);
  transition: opacity 160ms ease, transform 160ms ease, visibility 160ms;
  z-index: 130;
}
.bp-lang-dd.is-open .bp-lang-dd-menu { opacity: 1; visibility: visible; transform: none; }
.bp-lang-dd-menu button {
  display: flex; width: 100%; align-items: center; justify-content: space-between;
  padding: 9px 10px;
  font: inherit; font-size: 13.5px; color: #334155;
  background: transparent; border: 0; border-radius: 9px !important; cursor: pointer;
}
.bp-lang-dd-menu button b { font-size: 11px; font-weight: 600; color: #94A3B8; letter-spacing: .06em; }
.bp-lang-dd-menu button:hover { background: #F1F5F9; }
.bp-lang-dd-menu button.is-active { color: #1D4ED8; background: #EFF6FF; }
.bp-lang-dd-menu button.is-active b { color: #1D4ED8; }

.bp-header-v4 .bp-btn-ghost {
  height: 40px; padding: 0 10px;
  font-size: 14.5px; font-weight: 500; color: #0B1220;
  background: none;
}
.bp-header-v4 .bp-btn-ghost:hover { background: none; color: #2563EB; }
.bp-header-v4 .bp-btn-cta {
  height: 42px; padding: 0 18px 0 20px;
  font-size: 14.5px; font-weight: 600;
  background: #2563EB;
  border-radius: 12px !important;
  box-shadow: 0 10px 20px -10px rgba(37, 99, 235, 0.7);
}
.bp-header-v4 .bp-btn-cta:hover { background: #1D4ED8; }
@media (max-width: 1023px) {
  .bp-header.bp-header-v4, .bp-header.bp-header-v4.is-scrolled { height: 60px; }
  .bp-header-v4 .bp-header-inner { padding: 0 16px; }
  .bp-header-v4 .bp-burger { border-radius: 12px !important; }
}
/* Inter: шапка (как orqun.kg) */
.bp-logo-text { font-family: 'Inter', 'Onest', sans-serif; font-weight: 800; letter-spacing: -0.02em; }
.bp-header-v4 .bp-nav-link { font-size: 14px; font-weight: 500; letter-spacing: 0; color: #4B5563; }
.bp-header-v4 .bp-nav-link:hover, .bp-header-v4 .bp-nav-link.is-active { font-weight: 500; color: #111827; }
.bp-header-v4 .bp-btn-cta, .bp-header-v4 .bp-btn-ghost { font-size: 14px; font-weight: 600; letter-spacing: 0; }
.bp-lang-dd-btn { font-weight: 600; }
.bp-logo-be, .bp-logo-partner { font-weight: 800; }
.bp-header.bp-header-v4.is-scrolled { background: rgba(245, 247, 250, 0.86); }

/* шапка над светлым «космосом» — прозрачная, при скролле светлое стекло */
html.page-space .bp-header.bp-header-v4 { background: transparent; }
html.page-space .bp-header.bp-header-v4.is-scrolled { background: rgba(245, 247, 250, 0.86); }
/* «Начать бесплатно» — просто текст со стрелкой */
.bp-header-v4 .bp-btn-cta,
.bp-header-v4 .bp-btn-cta:hover {
  height: 40px;
  padding: 0 4px;
  color: #0B1220;
  background: none;
  box-shadow: none;
}
.bp-header-v4 .bp-btn-cta:hover { color: #2563EB; }
.bp-header-v4 .bp-btn-cta svg { transition: transform 200ms ease; }
.bp-header-v4 .bp-btn-cta:hover svg { transform: translateX(3px); }
/* шапка над фото (главная) — белый текст до прокрутки */
html.page-space .bp-header-v4:not(.is-scrolled) .bp-logo-partner,
html.page-space .bp-header-v4:not(.is-scrolled) .bp-btn-ghost,
html.page-space .bp-header-v4:not(.is-scrolled) .bp-btn-cta,
html.page-space .bp-header-v4:not(.is-scrolled) .bp-nav-link:hover { color: #FFFFFF; }
html.page-space .bp-header-v4:not(.is-scrolled) .bp-logo-be { color: #BFDBFE; }
html.page-space .bp-header-v4:not(.is-scrolled) .bp-nav-link,
html.page-space .bp-header-v4:not(.is-scrolled) .bp-lang-dd-btn { color: rgba(255,255,255,.82); }
html.page-space .bp-header-v4:not(.is-scrolled) .bp-nav-link::after { background: #FFFFFF; }
html.page-space .bp-header-v4:not(.is-scrolled) .bp-right-sep { background: rgba(255,255,255,.3); }
html.page-space .bp-header-v4:not(.is-scrolled) .bp-burger { color: #FFFFFF; background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.3); }
/* главная: шапка после прокрутки — тёмное дымчатое стекло, белый текст */
html.page-space .bp-header.bp-header-v4.is-scrolled {
  background: rgba(12, 20, 36, 0.62);
  -webkit-backdrop-filter: blur(20px) saturate(140%);
          backdrop-filter: blur(20px) saturate(140%);
  border-bottom-color: rgba(255, 255, 255, 0.10);
}
html.page-space .bp-header-v4 .bp-logo-partner,
html.page-space .bp-header-v4 .bp-btn-ghost,
html.page-space .bp-header-v4 .bp-btn-cta,
html.page-space .bp-header-v4 .bp-nav-link:hover { color: #FFFFFF; }
html.page-space .bp-header-v4 .bp-logo-be { color: #BFDBFE; }
/* логотип над фото и на тёмном стекле: «B» и «Be» — голубые, «Partner» — белый */
html.page-space .bp-header-v4 .bp-logo-mark { filter: drop-shadow(0 2px 10px rgba(10, 20, 40, 0.35)); }
html.page-space .bp-header-v4 .bp-logo-l.is-blue { background: linear-gradient(160deg, #FFFFFF 0%, #DBEAFE 45%, #BFDBFE 100%); }
html.page-space .bp-header-v4 .bp-logo-l.is-navy { background: #FFFFFF; }
html.page-space .bp-header-v4 .bp-nav-link,
html.page-space .bp-header-v4 .bp-lang-dd-btn { color: rgba(255, 255, 255, .82); }
html.page-space .bp-header-v4 .bp-nav-link::after { background: #FFFFFF; }
html.page-space .bp-header-v4 .bp-right-sep { background: rgba(255, 255, 255, .25); }
html.page-space .bp-header-v4 .bp-btn-cta:hover, html.page-space .bp-header-v4 .bp-btn-ghost:hover { color: #BFDBFE; }
