/* ═══════════════════════════════════════════════════
   LANDING EXTRA — провокационный визуал для roi.php и ops.php
   Подключается через header.php когда $landing_extra = true
   ═══════════════════════════════════════════════════ */

:root {
  --shock-red: #FF1F3F;
  --shock-red-dim: #B8132A;
  --warn-amber: #FFB838;
}

/* ─── ROI: shock-цифры с пульсацией ─── */
.hero-roi .hero-v2-num {
  font-size: clamp(56px, 9vw, 132px) !important;
  font-weight: 900 !important;
  letter-spacing: -0.04em;
  line-height: 0.9;
  color: #fff;
  text-shadow: 0 0 60px rgba(255,31,63,.25);
}
.hero-roi .hero-v2-eyebrow {
  color: var(--shock-red);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: clamp(13px, 1.5vw, 17px);
  padding: 8px 14px;
  border: 1px solid var(--shock-red);
  display: inline-block;
  background: rgba(255,31,63,.06);
  animation: roi-pulse 2s ease-in-out infinite;
}
@keyframes roi-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(255,31,63,.5); }
  50%      { box-shadow: 0 0 0 8px rgba(255,31,63,0); }
}

/* Провокационная плашка над калькулятором */
.hero-roi::after {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--shock-red), transparent);
  animation: roi-scan 4s linear infinite;
}
@keyframes roi-scan {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}

/* Калькулятор результат — крупнее, агрессивнее */
.calculator .calc-result-value {
  font-size: clamp(48px, 8vw, 96px) !important;
  font-weight: 900 !important;
  color: var(--shock-red) !important;
  text-shadow: 0 0 40px rgba(255,31,63,.4);
  line-height: 1;
  letter-spacing: -0.03em;
}
.calculator .calc-result-year strong {
  color: var(--shock-red);
  font-weight: 800;
  font-size: 1.2em;
  border-bottom: 2px solid var(--shock-red);
}

/* Cases-numbers — большие цифры с glow */
.cn-card-num {
  font-size: clamp(48px, 8vw, 84px) !important;
  text-shadow: 0 0 30px rgba(163,255,71,.4);
  background: linear-gradient(180deg, var(--green) 0%, #6BCC3C 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.cn-card-accent {
  position: relative;
}
.cn-card-accent::before {
  content: 'FACT';
  position: absolute;
  top: -10px; right: -10px;
  background: var(--green);
  color: #000;
  font-family: var(--mono,monospace);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 2px;
  padding: 6px 10px;
  border-radius: 4px;
  transform: rotate(8deg);
  box-shadow: 0 4px 20px rgba(163,255,71,.4);
}

/* Payback — пульсирующая средняя карточка */
.pb-card-accent .pb-card-time {
  position: relative;
  animation: pb-glow 3s ease-in-out infinite;
}
@keyframes pb-glow {
  0%, 100% { text-shadow: 0 0 20px rgba(163,255,71,.3); }
  50%      { text-shadow: 0 0 40px rgba(163,255,71,.6); }
}

/* ─── OPS: провокация на скорости ─── */
.hero-ops .hero-v2-num {
  font-size: clamp(64px, 10vw, 156px) !important;
  font-weight: 900 !important;
  letter-spacing: -0.05em;
  line-height: 0.85;
  background: linear-gradient(180deg, #fff 0%, var(--green) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.hero-ops .hero-v2-eyebrow {
  color: var(--warn-amber);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: clamp(13px, 1.5vw, 17px);
}
.hero-ops .hero-v2-eyebrow::before {
  content: '⚠ ';
  display: inline-block;
  margin-right: 4px;
}

/* Day comparison — провокационные timeline */
.dc-before {
  position: relative;
}
.dc-before::before {
  content: 'ХАОС';
  position: absolute;
  top: 16px; right: 20px;
  background: var(--shock-red);
  color: #fff;
  font-family: var(--mono,monospace);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 2px;
  padding: 4px 10px;
  border-radius: 4px;
  transform: rotate(-4deg);
  box-shadow: 0 2px 12px rgba(255,31,63,.4);
}
.dc-after::before {
  content: 'ПОРЯДОК';
  position: absolute;
  top: 16px; right: 20px;
  background: var(--green);
  color: #000;
  font-family: var(--mono,monospace);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 2px;
  padding: 4px 10px;
  border-radius: 4px;
  transform: rotate(4deg);
  box-shadow: 0 2px 12px rgba(163,255,71,.4);
}
.dc-after { position: relative; }

.dc-event-bad {
  background: linear-gradient(90deg, rgba(255,31,63,.08), transparent);
  margin-left: -8px;
  padding-left: 8px;
  border-left: 2px solid var(--shock-red);
}
.dc-event-good {
  background: linear-gradient(90deg, rgba(163,255,71,.08), transparent);
  margin-left: -8px;
  padding-left: 8px;
  border-left: 2px solid var(--green);
}

.dc-sum-before {
  text-decoration: line-through;
  text-decoration-thickness: 2px;
  text-decoration-color: var(--shock-red);
}
.dc-sum-after {
  font-size: 1.1em !important;
  text-shadow: 0 0 12px rgba(163,255,71,.4);
}

/* System anatomy — большие 01/02/03 */
.sa-num {
  font-size: 64px !important;
  font-weight: 900 !important;
  line-height: 0.8;
  background: linear-gradient(180deg, var(--green), transparent);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  opacity: .9;
}

/* Implementation — гипноз timeline */
.impl-step-date {
  font-size: 16px !important;
  font-weight: 800 !important;
  padding: 8px 14px;
  background: rgba(163,255,71,.08);
  border: 1px solid rgba(163,255,71,.2);
  border-radius: 6px;
  display: inline-block;
  height: fit-content;
}
.impl-step-accent .impl-step-date {
  background: var(--green);
  color: #000;
  border-color: var(--green);
  animation: impl-pulse 2.5s ease-in-out infinite;
}
@keyframes impl-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(163,255,71,.5); }
  50%      { box-shadow: 0 0 0 6px rgba(163,255,71,0); }
}

.impl-honest {
  position: relative;
  overflow: hidden;
}
.impl-honest::before {
  content: 'БЕЗ МАРКЕТИНГА';
  position: absolute;
  top: 12px; right: 16px;
  background: var(--shock-red);
  color: #fff;
  font-family: var(--mono,monospace);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 2px;
  padding: 4px 10px;
  border-radius: 4px;
}

/* ─── MOBILE FIXES ─── */
@media (max-width: 768px) {
  .hero-roi .hero-v2-content,
  .hero-ops .hero-v2-content {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    padding: 24px 16px !important;
  }
  .hero-roi .hero-v2-right,
  .hero-ops .hero-v2-right {
    margin-top: 16px;
  }
  .hero-roi .hero-v2-num,
  .hero-ops .hero-v2-num {
    font-size: clamp(48px, 14vw, 84px) !important;
  }
  .hero-v2-bar {
    font-size: 11px !important;
    overflow-x: auto;
    white-space: nowrap;
    padding: 12px 16px !important;
  }

  /* Cases-numbers, payback — карточки на всю ширину */
  .cn-card, .pb-card, .sa-card {
    padding: 24px 20px !important;
  }
  .cn-card-num, .pb-card-time {
    font-size: 48px !important;
  }

  /* Day comparison: вертикальный стек */
  .dc-grid {
    grid-template-columns: 1fr !important;
  }
  .dc-event {
    grid-template-columns: 50px 1fr !important;
    gap: 10px !important;
  }
  .dc-time {
    font-size: 12px !important;
  }
  .dc-event-title {
    font-size: 13px !important;
  }
  .dc-event-desc {
    font-size: 12px !important;
  }
  .dc-sum-row {
    grid-template-columns: 1fr !important;
    gap: 2px !important;
    padding: 14px 0 !important;
  }
  .dc-sum-arrow { display: none !important; }

  /* System anatomy: 1 колонка */
  .sa-extra-grid {
    grid-template-columns: 1fr !important;
  }

  /* Implementation: вертикальные шаги */
  .impl-step {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 18px 20px !important;
  }
  .impl-step-date {
    font-size: 13px !important;
    padding: 6px 10px !important;
  }
  .impl-step h3 {
    font-size: 17px !important;
  }

  /* Badges не должны вылезать */
  .cn-card-accent::before,
  .dc-before::before,
  .dc-after::before {
    font-size: 9px !important;
    padding: 3px 8px !important;
  }

  /* Method-grid → 1 колонка */
  .pb-method-grid {
    grid-template-columns: 1fr !important;
  }
  .pb-method {
    padding: 20px !important;
  }
  .pb-cta {
    flex-direction: column !important;
  }
  .pb-cta a {
    width: 100% !important;
    text-align: center !important;
  }
}

/* ─── DESKTOP: усиление эффектов на крупных экранах ─── */
@media (min-width: 1200px) {
  .hero-roi .hero-v2-h1,
  .hero-ops .hero-v2-h1 {
    margin: 24px 0 32px !important;
  }
  .calculator .calc-result-value {
    letter-spacing: -0.04em;
  }
}

/* ─── BRAND on dark sections (cn-card, pb-card на тёмных карточках roi/ops) ─── */
.cn-card .brand-mark,
.pb-card .brand-mark {
  border-color: var(--green);
  color: var(--green);
}
.cn-card .brand-mark:hover,
.pb-card .brand-mark:hover { background: var(--green); color: #000; }

.cn-card .brand-wm,
.pb-card .brand-wm {
  color: rgba(255,255,255,0.95);
  background: rgba(163,255,71,0.08);
  border-bottom-color: rgba(163,255,71,0.4);
  padding: 1px 5px 2px;
}
.cn-card .brand-wm:hover,
.pb-card .brand-wm:hover {
  color: var(--green);
  background: rgba(163,255,71,0.16);
  border-bottom-color: var(--green);
}

/* cn-card-head не должен сжимать tag */
.cn-card-head { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
.cn-card-head .cn-card-tag { margin: 0; flex: 1; min-width: 0; }
.cn-card-head .brand-mark { flex-shrink: 0; }

@media (max-width: 768px) {
  .cn-card-head .brand-mark { width: 32px; height: 32px; font-size: 12px; }
  .cn-card-head .cn-card-tag { font-size: 10px; }
}

/* Accent-карточка с FACT-бейджем: monogram не должен наезжать */
.cn-card-accent .cn-card-head { padding-right: 50px; }
@media (max-width: 480px) {
  .cn-card-accent .cn-card-head { padding-right: 36px; }
}

/* ═══════════════════════════════════════════════════════════════
   HERO READABILITY FIX (roi/ops) — поверх видео нужен сильный контраст
   ═══════════════════════════════════════════════════════════════ */

/* Усиленный затемняющий overlay поверх видео */
.hero-roi::before,
.hero-ops::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,.75) 60%, rgba(0,0,0,.92) 100%),
    radial-gradient(ellipse at left center, rgba(0,0,0,.5) 0%, transparent 60%);
}
.hero-roi .hero-v2-content,
.hero-ops .hero-v2-content,
.hero-roi .hero-v2-bar,
.hero-ops .hero-v2-bar {
  position: relative;
  z-index: 2;
}

/* Eyebrow — плашка с явным фоном */
.hero-roi .hero-v2-eyebrow,
.hero-ops .hero-v2-eyebrow {
  display: inline-block;
  background: rgba(0,0,0,.55);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 2px;
  padding: 8px 14px;
  margin-bottom: 16px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-shadow: 0 2px 6px rgba(0,0,0,.5);
}
.hero-roi .hero-v2-eyebrow { color: #FF6B7A; border-color: rgba(255,107,122,.4); }
.hero-ops .hero-v2-eyebrow { color: #FFCB6B; border-color: rgba(255,203,107,.4); }

/* Sub-заголовок под H1 — белый с тенью */
.hero-roi .hero-v2-sub,
.hero-ops .hero-v2-sub {
  color: rgba(255,255,255,.95) !important;
  text-shadow: 0 2px 8px rgba(0,0,0,.6);
  font-weight: 500;
}

/* Positioning блок — плашка с background */
.hero-roi .hero-v2-positioning,
.hero-ops .hero-v2-positioning {
  background: rgba(0,0,0,.45);
  border-left: 3px solid var(--green);
  padding: 12px 18px;
  margin: 18px 0;
  color: rgba(255,255,255,.92) !important;
  border-radius: 2px;
  font-size: 14px;
  line-height: 1.5;
}

/* Lead — белый текст с тенью */
.hero-roi .hero-v2-lead,
.hero-ops .hero-v2-lead {
  color: rgba(255,255,255,.88) !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.5);
  background: rgba(0,0,0,.35);
  padding: 14px 18px;
  border-radius: 4px;
  margin: 16px 0;
  font-size: 14.5px;
  line-height: 1.6;
}

/* CTA note — белый с тенью */
.hero-roi .hero-v2-cta-note,
.hero-ops .hero-v2-cta-note {
  color: rgba(255,255,255,.85) !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.6);
}
.hero-roi .hero-v2-cta-note a,
.hero-ops .hero-v2-cta-note a { color: var(--green); border-bottom-color: var(--green); }

/* Brand-strip — явный фон и border */
.hero-roi .hero-v2-trust--brands,
.hero-ops .hero-v2-trust--brands {
  background: rgba(0,0,0,.55);
  padding: 12px 14px;
  border-radius: 4px;
  border: 1px solid rgba(255,255,255,.08);
  margin-top: 20px;
}
.hero-roi .hv2-brand,
.hero-ops .hv2-brand {
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.18);
}
.hero-roi .hv2-brand-name,
.hero-ops .hv2-brand-name {
  color: #fff !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.5);
}
.hero-roi .hv2-brand-fact,
.hero-ops .hv2-brand-fact {
  color: rgba(255,255,255,.78);
  opacity: 1;
}
.hero-roi .trust-label,
.hero-ops .trust-label { color: rgba(255,255,255,.7); }

/* Hero-bar (нижняя полоса с цифрами) — явный фон, читаемые цифры */
.hero-roi .hero-v2-bar,
.hero-ops .hero-v2-bar {
  background: rgba(0,0,0,.7) !important;
  backdrop-filter: blur(8px);
  border-top: 1px solid rgba(255,255,255,.1);
  color: rgba(255,255,255,.92);
  padding: 14px 24px;
}
.hero-roi .hero-v2-bar b,
.hero-ops .hero-v2-bar b {
  color: var(--green);
  text-shadow: 0 1px 4px rgba(0,0,0,.5);
}
.hero-roi .hero-v2-bar .sep,
.hero-ops .hero-v2-bar .sep { color: rgba(255,255,255,.3); }

/* Trust-stat и trust-dot */
.hero-roi .hero-v2-trust-stat,
.hero-ops .hero-v2-trust-stat {
  color: rgba(255,255,255,.85) !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.5);
}

/* ─── Кнопка курсора на тёмных hero — обеспечить видимость через mix-blend ─── */
.hero-roi .hero-v2-content,
.hero-ops .hero-v2-content { isolation: auto; }

/* ─── BASE HERO (index): тот же контраст-фикс что для roi/ops ─── */
.hero-v2:not(.hero-roi):not(.hero-ops) .hero-v2-eyebrow {
  display: inline-block;
  background: rgba(0,0,0,.5);
  border: 1px solid rgba(163,255,71,.35);
  border-radius: 2px;
  padding: 8px 14px;
  margin-bottom: 16px;
  color: var(--gold);
  font-weight: 700;
  letter-spacing: 1.2px;
  text-shadow: 0 1px 4px rgba(0,0,0,.5);
}
.hero-v2:not(.hero-roi):not(.hero-ops) .hero-v2-sub {
  color: rgba(255,255,255,.95) !important;
  text-shadow: 0 2px 8px rgba(0,0,0,.6);
}
.hero-v2:not(.hero-roi):not(.hero-ops) .hero-v2-positioning {
  background: rgba(0,0,0,.45);
  border-left: 3px solid var(--gold);
  padding: 12px 18px;
  margin: 18px 0;
  color: rgba(255,255,255,.92) !important;
  border-radius: 2px;
}
.hero-v2:not(.hero-roi):not(.hero-ops) .hero-v2-lead {
  color: rgba(255,255,255,.88) !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.5);
  background: rgba(0,0,0,.35);
  padding: 14px 18px;
  border-radius: 4px;
  margin: 16px 0;
}
.hero-v2:not(.hero-roi):not(.hero-ops) .hero-v2-cta-note {
  color: rgba(255,255,255,.85) !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.6);
}
.hero-v2:not(.hero-roi):not(.hero-ops) .hero-v2-trust--brands {
  background: rgba(0,0,0,.55);
  padding: 12px 14px;
  border-radius: 4px;
  border: 1px solid rgba(255,255,255,.08);
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.hero-v2:not(.hero-roi):not(.hero-ops) .hv2-brand {
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.18);
}
.hero-v2:not(.hero-roi):not(.hero-ops) .hv2-brand-name {
  color: #fff !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.5);
}
.hero-v2:not(.hero-roi):not(.hero-ops) .hv2-brand-fact {
  color: rgba(255,255,255,.78);
  opacity: 1;
}
.hero-v2:not(.hero-roi):not(.hero-ops) .trust-label { color: rgba(255,255,255,.7); }

.hero-v2:not(.hero-roi):not(.hero-ops) .hero-v2-bar {
  background: rgba(0,0,0,.7) !important;
  backdrop-filter: blur(8px);
  border-top: 1px solid rgba(255,255,255,.1);
  color: rgba(255,255,255,.92);
  padding: 14px 24px;
}
.hero-v2:not(.hero-roi):not(.hero-ops) .hero-v2-bar b {
  color: var(--gold);
  text-shadow: 0 1px 4px rgba(0,0,0,.5);
}
.hero-v2:not(.hero-roi):not(.hero-ops) .hero-v2-bar .sep { color: rgba(255,255,255,.3); }

.hero-v2:not(.hero-roi):not(.hero-ops) .hero-v2-trust-stat {
  color: rgba(255,255,255,.85) !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.5);
}

/* Затемняющий overlay поверх hero-видео для index */
.hero-v2:not(.hero-roi):not(.hero-ops)::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,.65) 60%, rgba(0,0,0,.88) 100%),
    radial-gradient(ellipse at left center, rgba(0,0,0,.4) 0%, transparent 60%);
}
.hero-v2:not(.hero-roi):not(.hero-ops) .hero-v2-content,
.hero-v2:not(.hero-roi):not(.hero-ops) .hero-v2-bar { position: relative; z-index: 2; }

/* ═══════════════════════════════════════════════════════════════
   ROI/OPS: тёмный body чтобы тёмные секции не «вылазили островами»
   ═══════════════════════════════════════════════════════════════ */

body.page-roi,
body.page-ops {
  background: #0a0a0a !important;
  color: rgba(255,255,255,.92);
}

/* Header на тёмном body */
body.page-roi .header,
body.page-ops .header {
  background: rgba(10,10,10,.85);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
body.page-roi .header .nav a,
body.page-ops .header .nav a,
body.page-roi .header .logo,
body.page-ops .header .logo { color: #fff; }

/* Footer на тёмном body — фон контрастный */
body.page-roi .footer,
body.page-ops .footer {
  background: #050505;
  color: rgba(255,255,255,.82);
  border-top: 1px solid rgba(255,255,255,.08);
}
body.page-roi .footer h5,
body.page-ops .footer h5 { color: #fff; }
body.page-roi .footer a,
body.page-ops .footer a { color: rgba(255,255,255,.78); }
body.page-roi .footer a:hover,
body.page-ops .footer a:hover { color: var(--gold-soft); }
body.page-roi .footer-bottom,
body.page-ops .footer-bottom { border-top-color: rgba(255,255,255,.08); }

/* Cookie banner на тёмном */
body.page-roi .cookie-banner,
body.page-ops .cookie-banner {
  background: #1a1a1a;
  border-color: rgba(255,255,255,.12);
  color: rgba(255,255,255,.88);
}

/* Calculator на тёмном body */
body.page-roi .calculator,
body.page-ops .calculator {
  background: #0d0d0d !important;
}
body.page-roi .calc-title,
body.page-ops .calc-title { color: #fff; }
body.page-roi .calc-eyebrow,
body.page-ops .calc-eyebrow { color: var(--green); }
body.page-roi .calc-input label,
body.page-ops .calc-input label,
body.page-roi .calc-input-value,
body.page-ops .calc-input-value { color: rgba(255,255,255,.85); }
body.page-roi .calc-result,
body.page-ops .calc-result {
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.08);
}
body.page-roi .calc-result-label,
body.page-ops .calc-result-label,
body.page-roi .calc-result-year,
body.page-ops .calc-result-year { color: rgba(255,255,255,.85); }
body.page-roi .calc-cta-note,
body.page-ops .calc-cta-note { color: rgba(255,255,255,.7); }
body.page-roi .calc-disclaimer,
body.page-ops .calc-disclaimer { color: rgba(255,255,255,.55); }

/* Pricing на тёмном */
body.page-roi .pricing-v2,
body.page-ops .pricing-v2 { background: #0d0d0d !important; }
body.page-roi .pricing-v2 h2,
body.page-ops .pricing-v2 h2,
body.page-roi .price-card-title,
body.page-ops .price-card-title { color: #fff; }
body.page-roi .price-card,
body.page-ops .price-card {
  background: rgba(255,255,255,.03);
  border-color: rgba(255,255,255,.1);
  color: rgba(255,255,255,.85);
}

/* Decision на тёмном */
body.page-roi .decision,
body.page-ops .decision {
  background: #050505;
  color: rgba(255,255,255,.88);
}
body.page-roi .decision h2,
body.page-ops .decision h2 { color: #fff; }

/* Form на тёмном */
body.page-roi .form-section,
body.page-ops .form-section { background: #0d0d0d !important; }
body.page-roi .form-section h2,
body.page-ops .form-section h2 { color: #fff; }
body.page-roi .form-section p,
body.page-ops .form-section p { color: rgba(255,255,255,.78); }
body.page-roi .form-section input,
body.page-ops .form-section input,
body.page-roi .form-section textarea,
body.page-ops .form-section textarea {
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.12);
  color: #fff;
}
body.page-roi .form-section label,
body.page-ops .form-section label { color: rgba(255,255,255,.82); }
body.page-roi .form-contacts .l,
body.page-ops .form-contacts .l { color: rgba(255,255,255,.6); }
body.page-roi .form-contacts .v,
body.page-ops .form-contacts .v { color: #fff; }

/* PCB Anchor на тёмном body — переопределение из style.css */
body.page-roi .pcb-anchor,
body.page-ops .pcb-anchor {
  background: #0d0d0d !important;
  border-color: rgba(255,255,255,.08);
}
body.page-roi .pcb-title,
body.page-ops .pcb-title,
body.page-roi .pcb-lead,
body.page-ops .pcb-lead { color: #fff; }
body.page-roi .pcb-lead,
body.page-ops .pcb-lead { color: rgba(255,255,255,.82); }
body.page-roi .pcb-bullets li,
body.page-ops .pcb-bullets li { color: rgba(255,255,255,.82); }

/* Day-comparison и др. тёмные секции — раньше fallback'ом ставили #0a0a0a */
body.page-roi .day-comparison,
body.page-ops .day-comparison,
body.page-roi .system-anatomy,
body.page-ops .system-anatomy,
body.page-roi .implementation,
body.page-ops .implementation,
body.page-roi .cases-numbers,
body.page-ops .cases-numbers,
body.page-roi .payback,
body.page-ops .payback { background: #0a0a0a !important; }
body.page-roi .day-comparison h2,
body.page-roi .system-anatomy h2,
body.page-roi .implementation h2,
body.page-roi .cases-numbers h2,
body.page-roi .payback h2,
body.page-ops .day-comparison h2,
body.page-ops .system-anatomy h2,
body.page-ops .implementation h2,
body.page-ops .cases-numbers h2,
body.page-ops .payback h2 { color: #fff; }

/* FAQ на тёмном */
body.page-roi .faq,
body.page-ops .faq { background: #0d0d0d !important; }
body.page-roi .faq h2,
body.page-ops .faq h2 { color: #fff; }
body.page-roi .faq-item,
body.page-ops .faq-item {
  border-color: rgba(255,255,255,.08);
  color: rgba(255,255,255,.85);
}
body.page-roi .faq-q,
body.page-ops .faq-q { color: #fff; }

/* Process на тёмном */
body.page-roi .hproc,
body.page-ops .hproc { background: #0d0d0d !important; }
body.page-roi .hproc h2,
body.page-ops .hproc h2 { color: #fff; }

/* Functionality на тёмном (только ops) */
body.page-ops .functionality { background: #0d0d0d !important; }
body.page-ops .functionality h2 { color: #fff; }
body.page-ops .func-card {
  background: rgba(255,255,255,.03);
  border-color: rgba(255,255,255,.08);
  color: rgba(255,255,255,.85);
}
body.page-ops .func-card h3 { color: #fff; }
