/* ═══════════════════════════════════════
   RESET & BASE
═══════════════════════════════════════ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: 'Manrope', sans-serif; background: #ffffff; color: #111614; }

:root {
    --nv-green:       #6bb476;
    --nv-green-dark:  #4d9659;
    --nv-green-light: #edf6ef;
    --nv-black:       #111614;
    --nv-dark:        #0d1f1a;
    --nv-gray:        #6b7280;
    --nv-gray-light:  #f5f6f5;
    --nv-border:      #e5e7eb;
    --nv-red:         #c62828;
    --nv-orange:      #ef6c00;
}


ul.article-toc__list li::before{
    display: none;
}
.main > .container {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width:100% !important;
    padding-inline: 0px !important;
    width: 100% !important;
}
.container {
        margin-left: auto !important;
    margin-right: auto !important;
    max-width: calc(var(--theme-page-width, 1500px) + calc(var(--theme-page-width-padding, 32px) * 2) - var(--theme-page-width-diff, 0px)) !important;
    padding-inline: var(--theme-page-width-padding, 32px) !important;
    width: 100% !important;
}
.main > .container .maxwidth-theme.wide- {
    max-width: 100%;
    padding-inline: 0 !important;
}
.h1   { font-size: clamp(32px,4vw,58px); font-weight:900; line-height:1.1; letter-spacing:-0.03em; font-family:'Manrope',sans-serif; }
.lead { font-size:16px; line-height:1.8; color:var(--nv-gray); font-family:'Manrope',sans-serif; }

/* Анимации _anim-items */
.text-animate-1 { opacity:0; transform:translateY(32px); transition:transform 0.6s cubic-bezier(0.22,1,0.36,1),opacity 0.5s ease; }
.text-animate-1._active { opacity:1; transform:translateY(0); }
.text-animate-2 { opacity:0; transform:translateY(32px); transition:transform 0.6s cubic-bezier(0.22,1,0.36,1),opacity 0.5s ease; transition-delay:0.15s; }
.text-animate-2._active { opacity:1; transform:translateY(0); }

/* ═══════════════════════════════════════
   HERO
═══════════════════════════════════════ */
.vc-hero {
    background: var(--nv-dark);
    padding: 72px 0 80px;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid rgba(107,180,118,0.12);
}
.vc-hero__bg { position:absolute; inset:0; pointer-events:none; z-index:0; }
.vc-hero__grid {
    position:absolute; inset:0;
    background-image:
        linear-gradient(rgba(107,180,118,0.05) 1px,transparent 1px),
        linear-gradient(90deg,rgba(107,180,118,0.05) 1px,transparent 1px);
    background-size:80px 80px;
}
.vc-hero__glow {
    position:absolute; top:-180px; right:-100px;
    width:650px; height:650px; border-radius:50%;
    background:radial-gradient(circle,rgba(107,180,118,0.12) 0%,transparent 60%);
}
.vc-hero__glow--2 {
    top:auto; right:auto; bottom:-280px; left:-160px;
    width:480px; height:480px;
    background:radial-gradient(circle,rgba(107,180,118,0.06) 0%,transparent 60%);
}
.vc-hero .container { position:relative; z-index:1; }
.vc-hero__inner { max-width:820px; }

.vc-hero__breadcrumb {
    display:flex; align-items:center; gap:8px;
    font-size:12px; font-weight:600; color:rgba(255,255,255,0.3);
    font-family:'Manrope',sans-serif; margin-bottom:24px;
}
.vc-hero__breadcrumb a{
    color:rgba(255,255,255,0.3);
}
.vc-hero__bc-sep { color:rgba(107,180,118,0.4); }
.vc-hero__bc-cur { color:var(--nv-green); }

.vc-hero__title { color:#fff !important; margin-bottom:18px; }
.vc-hero__title-bracket { color:rgba(107,180,118,0.45); font-weight:900; }
.vc-hero__title em { font-style:normal; color:var(--nv-green); display:block; }
.vc-hero__sub { color:rgba(255,255,255,0.45) !important; margin-bottom:24px; }

.vc-instruction {
    display:flex; align-items:flex-start; gap:14px;
    background:rgba(107,180,118,0.08); border:1px solid rgba(107,180,118,0.2);
    border-radius:14px; padding:18px 22px; max-width:740px;
}
.vc-instruction__icon { width:20px; height:20px; flex-shrink:0; color:var(--nv-green); margin-top:2px; }
.vc-instruction__icon svg { width:20px; height:20px; }
.vc-instruction__text { font-size:14px; color:rgba(255,255,255,0.5); line-height:1.7; font-family:'Manrope',sans-serif; }
.vc-instruction__text strong { color:rgba(255,255,255,0.8); font-weight:700; }

/* ═══════════════════════════════════════
   STICKY ПРОГРЕСС-БАР
═══════════════════════════════════════ */
.vc-sticky {
    position: sticky;
    top: 65px;
    z-index: 200;
    background: rgba(13,31,26,0.97);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(107,180,118,0.18);
    transform: translateY(-100%);
    transition: transform 0.35s cubic-bezier(0.22,1,0.36,1);
    will-change: transform;
}
@media (max-width: 991px){
      .vc-sticky {
    
    top: 60px;
}
}
.vc-sticky.is-visible {
    transform: translateY(0);
}

.vc-sticky__inner {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 10px 0;
}

/* Блок-индикатор */
.vc-sticky__block {
    display:flex; align-items:center; gap:7px;
    font-size:12px; font-weight:700; color:rgba(255,255,255,0.5);
    font-family:'Manrope',sans-serif;
    white-space:nowrap; flex-shrink:0;
    min-width:180px;
    transition: color 0.3s;
}
.vc-sticky__block svg { width:14px; height:14px; flex-shrink:0; color:var(--nv-green); opacity:0.6; }
.vc-sticky__block.is-active { color:var(--nv-green); }
.vc-sticky__block.is-active svg { opacity:1; }

/* Полоса */
.vc-sticky__bar {
    flex:1; height:4px;
    background:rgba(255,255,255,0.08); border-radius:4px; overflow:hidden;
}
.vc-sticky__fill {
    height:100%; border-radius:4px;
    transition: width 0.4s cubic-bezier(0.22,1,0.36,1), background-color 0.6s ease;
    /* Цвет управляется JS через CSS-переменную */
    background: var(--progress-color, #6bb476);
}

/* Статистика справа */
.vc-sticky__stat {
    display:flex; flex-direction:column; align-items:flex-end;
    flex-shrink:0; gap:1px;
}
.vc-sticky__pct {
    font-size:16px; font-weight:900; color:#fff;
    font-family:'Manrope',sans-serif; line-height:1;
    transition: color 0.4s;
}
.vc-sticky__left {
    font-size:11px; font-weight:600; color:rgba(255,255,255,0.3);
    font-family:'Manrope',sans-serif; white-space:nowrap;
}

/* ═══════════════════════════════════════
   ФОРМА СЕКЦИЯ
═══════════════════════════════════════ */
.vc-form-section {
    padding: 40px 0 72px;
    background: var(--nv-gray-light);
}
.vc-form { display:flex; flex-direction:column; gap:20px; }

/* ═══════════════════════════════════════
   БЛОК
═══════════════════════════════════════ */
.vc-block {
    background:#fff;
    border:1.5px solid var(--nv-border);
    border-radius:20px;
    overflow:hidden;
}
.vc-block--dark {
    background:var(--nv-dark);
    border-color:rgba(107,180,118,0.15);
}

.vc-block__header {
    display:flex; align-items:flex-start; gap:18px;
    padding:26px 32px 22px;
    border-bottom:1px solid var(--nv-border);
    background:var(--nv-gray-light);
}
.vc-block--dark .vc-block__header {
    border-bottom-color:rgba(107,180,118,0.1);
    background:rgba(255,255,255,0.025);
}
.vc-block__num {
    font-size:10px; font-weight:800; letter-spacing:0.14em;
    color:rgba(0,0,0,0.12); font-family:'Manrope',sans-serif;
    flex-shrink:0; padding-top:5px; min-width:24px;
}
.vc-block__num--accent { color:var(--nv-green) !important; }
.vc-block__num--green  { color:var(--nv-green-dark) !important; }
.vc-block__title {
    font-size:clamp(17px,1.6vw,24px); font-weight:800;
    color:var(--nv-black); line-height:1.2;
    font-family:'Manrope',sans-serif; margin-bottom:5px;
}
.vc-block__title--light { color:#fff !important; }
.vc-block__desc { font-size:13px; color:var(--nv-gray); font-family:'Manrope',sans-serif; line-height:1.4; }
.vc-block__desc--light { color:rgba(255,255,255,0.3) !important; }

/* ═══════════════════════════════════════
   ПОЛЯ
═══════════════════════════════════════ */
.vc-fields { padding:24px 32px 28px; display:flex; flex-direction:column; gap:14px; }

.vc-field-row { display:grid; gap:14px; }
.vc-field-row--1 { grid-template-columns:1fr; }
.vc-field-row--2 { grid-template-columns:1fr 1fr; }
.vc-field-row--3 { grid-template-columns:1fr 1fr 1fr; }

.vc-field { display:flex; flex-direction:column; gap:5px; }
.vc-field__label {
    font-size:11px; font-weight:700; color:var(--nv-gray);
    font-family:'Manrope',sans-serif; letter-spacing:0.04em; text-transform:uppercase;
}
.vc-req { color:var(--nv-green-dark); }

.vc-input {
    width:100%; height:44px; padding:0 14px;
    background:#fff; border:1.5px solid var(--nv-border);
    border-radius:10px;
    font-size:15px; font-weight:500; color:var(--nv-black);
    font-family:'Manrope',sans-serif; outline:none;
    transition:border-color 0.2s, box-shadow 0.2s;
    -webkit-appearance:none;
}
.vc-input::placeholder { color:rgba(107,114,128,0.45); }
.vc-input:focus {
    border-color:var(--nv-green);
    box-shadow:0 0 0 3px rgba(107,180,118,0.14);
}
.vc-input[type="number"] { -moz-appearance:textfield; }
.vc-input[type="number"]::-webkit-inner-spin-button,
.vc-input[type="number"]::-webkit-outer-spin-button { -webkit-appearance:none; }

/* Состояние ошибки поля */
.vc-field.has-error .vc-input { border-color:#e53935; box-shadow:0 0 0 3px rgba(229,57,53,0.1); }
.vc-field.has-error .vc-field__err { display:block; }
.vc-field__err { display:none; font-size:11px; font-weight:600; color:#e53935; font-family:'Manrope',sans-serif; }

/* Успешное поле */
.vc-field.is-ok .vc-input { border-color:rgba(107,180,118,0.5); }

/* ═══════════════════════════════════════
   ЛЕГЕНДА ШКАЛЫ
═══════════════════════════════════════ */
.vc-legend {
    display:flex; align-items:center; gap:14px;
    padding:14px 32px;
    border-bottom:1px solid var(--nv-border);
    background:#fafafa;
}
.vc-legend--dark {
    background:rgba(255,255,255,0.02);
    border-bottom-color:rgba(107,180,118,0.09);
}

.vc-legend__end {
    display:flex; flex-direction:column; align-items:center; gap:3px;
    min-width:40px; flex-shrink:0;
}
.vc-legend__end--right { align-items:flex-end; text-align:right; }

.vc-legend__val {
    font-size:18px; font-weight:900;
    font-family:'Manrope',sans-serif; line-height:1;
}
/* 1 — нейтральный серый */
.vc-legend__val--lo  { color:rgba(107,114,128,0.7); }
/* −3 — красный */
.vc-legend__val--neg { color:rgba(198,40,40,0.75); }
/* 10 / +3 — зелёный */
.vc-legend__val--hi  { color:var(--nv-green); }

.vc-legend__label {
    font-size:10px; font-weight:600; color:var(--nv-gray);
    font-family:'Manrope',sans-serif; text-align:center; line-height:1.3;
}
.vc-legend--dark .vc-legend__label { color:rgba(255,255,255,0.28); }

.vc-legend__track { flex:1; position:relative; height:20px; display:flex; align-items:center; }
.vc-legend__line {
    position:absolute; left:0; right:0; top:50%; height:1px; margin-top:-0.5px;
    background:var(--nv-border);
}
.vc-legend--dark .vc-legend__line { background:rgba(255,255,255,0.07); }
.vc-legend__pips {
    position:relative; z-index:1; width:100%;
    display:flex; justify-content:space-between; align-items:center;
}
.vc-legend__pips span { display:block; width:3px; height:3px; border-radius:50%; background:var(--nv-border); }
.vc-legend--dark .vc-legend__pips span { background:rgba(255,255,255,0.1); }

/* ═══════════════════════════════════════
   ВОПРОСЫ
═══════════════════════════════════════ */
.vc-questions { padding:4px 32px 24px; display:flex; flex-direction:column; }

.vc-q {
    display:flex; align-items:flex-start; gap:16px;
    padding:15px 0;
    border-bottom:1px solid rgba(0,0,0,0.055);
    transition:background 0.15s;
}
.vc-q:last-child { border-bottom:none; }
.vc-block--dark .vc-q { border-bottom-color:rgba(255,255,255,0.045); }

/* Ошибка вопроса */
.vc-q--error .vc-q__text { color:#e53935 !important; }
.vc-q--error .vc-q__num  { color:rgba(229,57,53,0.5) !important; }
.vc-q--error .vc-scale__btn:not(.is-selected) { border-color:rgba(229,57,53,0.25) !important; }

.vc-q__num {
    font-size:10px; font-weight:800; color:rgba(0,0,0,0.15);
    font-family:'Manrope',sans-serif; min-width:22px; flex-shrink:0; padding-top:3px; line-height:1;
}
.vc-block--dark .vc-q__num { color:rgba(255,255,255,0.18); }

.vc-q__body { flex:1; min-width:0; }
.vc-q__text {
    font-size:14px; font-weight:500; color:var(--nv-black);
    font-family:'Manrope',sans-serif; line-height:1.6; margin-bottom:12px;
    transition:color 0.2s;
}
.vc-block--dark .vc-q__text { color:rgba(255,255,255,0.78); }

/* ═══════════════════════════════════════
   ШКАЛА 1–10
═══════════════════════════════════════ */
.vc-scale { display:flex; gap:5px; flex-wrap:wrap; }

.vc-scale__btn {
    position:relative;
    width:48px; height:40px;
    display:flex; align-items:center; justify-content:center;
    font-size:14px; font-weight:700; font-family:'Manrope',sans-serif;
    color:var(--nv-gray);
    background:#fff; border:1.5px solid var(--nv-border);
    border-radius:9px; cursor:pointer;
    transition:all 0.14s;
    -webkit-tap-highlight-color:transparent;
    user-select:none;
}
.vc-scale__btn:hover {
    border-color:var(--nv-green);
    color:var(--nv-green-dark);
    background:var(--nv-green-light);
    transform:translateY(-1px);
}
.vc-scale__btn input[type="radio"] {
    position:absolute; inset:0; opacity:0; margin:0; cursor:pointer; width:100%; height:100%;
}
.vc-scale__btn.is-selected {
    background:var(--nv-green);
    border-color:var(--nv-green-dark);
    color:#fff;
    box-shadow:0 3px 10px rgba(107,180,118,0.35);
    transform:translateY(-1px);
}

/* Тёмный фон (тест 1) */
.vc-block--dark .vc-scale__btn {
    /* Цифры хорошо видны на тёмном — белые */
    background:rgba(255,255,255,0.07);
    border-color:rgba(255,255,255,0.13);
    color:rgba(255,255,255,0.72);
}
.vc-block--dark .vc-scale__btn:hover {
    background:rgba(107,180,118,0.18);
    border-color:rgba(107,180,118,0.45);
    color:#fff;
}
.vc-block--dark .vc-scale__btn.is-selected {
    background:var(--nv-green);
    border-color:var(--nv-green-dark);
    color:#fff;
}

/* ═══════════════════════════════════════
   ШКАЛА −3…+3 (тест 2, 7 кнопок)
═══════════════════════════════════════ */
.vc-scale--7 { flex-wrap:nowrap; }
.vc-scale--7 .vc-scale__btn { flex:1; min-width:0; width:auto; height:42px; }

/* Цвета выбранных кнопок по значению */
.vc-scale--7 .vc-scale__btn[data-val="-3"].is-selected { background:#c62828; border-color:#b71c1c; box-shadow:0 3px 10px rgba(198,40,40,0.3); }
.vc-scale--7 .vc-scale__btn[data-val="-2"].is-selected { background:#d84315; border-color:#bf360c; box-shadow:0 3px 10px rgba(216,67,21,0.3); }
.vc-scale--7 .vc-scale__btn[data-val="-1"].is-selected { background:#ef6c00; border-color:#e65100; box-shadow:0 3px 10px rgba(239,108,0,0.3); }
.vc-scale--7 .vc-scale__btn[data-val="0"].is-selected  { background:#607d8b; border-color:#455a64; box-shadow:0 3px 10px rgba(96,125,139,0.3); }
/* +1, +2, +3 — зелёные (базовый .is-selected) */

/* Обёртка с подписями */
.vc-scale--7-wrap { display:flex; flex-direction:column; gap:5px; }
.vc-scale__sublabels {
    display:flex; justify-content:space-between;
    font-size:10px; font-weight:600;
    font-family:'Manrope',sans-serif; padding:0 1px;
}
.vc-scale__sublabels span:first-child { color:rgba(198,40,40,0.65); }
.vc-scale__sublabels span:last-child  { color:var(--nv-green-dark); }

/* Тултип значения при наведении/выборе */
.vc-scale__btn { position:relative; }
.vc-scale__tip {
    position:absolute; bottom:calc(100% + 6px); left:50%; transform:translateX(-50%);
    background:var(--nv-dark); color:#fff;
    font-size:10px; font-weight:600; font-family:'Manrope',sans-serif;
    padding:3px 8px; border-radius:5px; white-space:nowrap;
    pointer-events:none; opacity:0;
    transition:opacity 0.15s;
    z-index:10;
}
.vc-scale__tip::after {
    content:''; position:absolute; top:100%; left:50%; transform:translateX(-50%);
    border:4px solid transparent; border-top-color:var(--nv-dark);
}
.vc-scale__btn:hover .vc-scale__tip,
.vc-scale__btn.is-selected .vc-scale__tip { opacity:1; }

/* ═══════════════════════════════════════
   SUBMIT
═══════════════════════════════════════ */
.vc-submit {
    display:flex; flex-direction:column; align-items:center; gap:14px;
    padding:32px;
    background:#fff; border:1.5px solid var(--nv-border); border-radius:20px;
}

.vc-btn {
    display:inline-flex; align-items:center; gap:10px;
    padding:15px 40px;
    background:var(--nv-green-dark); color:#fff;
    border:none; border-radius:12px;
    font-size:16px; font-weight:700; font-family:'Manrope',sans-serif;
    cursor:pointer; line-height:1;
    transition:background 0.2s, transform 0.15s, box-shadow 0.2s;
    box-shadow:0 4px 18px rgba(77,150,89,0.3);
}
.vc-btn:hover { background:var(--nv-green); transform:translateY(-2px); box-shadow:0 8px 24px rgba(107,180,118,0.35); }
.vc-btn:active { transform:translateY(0); }
.vc-btn[disabled] { opacity:0.5; cursor:not-allowed; transform:none; box-shadow:none; }
.vc-btn__icon { display:flex; align-items:center; }
.vc-btn__icon svg { width:17px; height:17px; }

.vc-submit__note {
    font-size:12px; color:var(--nv-gray);
    font-family:'Manrope',sans-serif; text-align:center;
}
.vc-submit__note--error { color:#e53935 !important; }

/* Loading */
.vc-btn--loading { pointer-events:none; }
.vc-btn--loading .vc-btn__text::after {
    content:''; display:inline-block; width:12px; height:12px;
    border:2px solid rgba(255,255,255,0.4); border-top-color:#fff;
    border-radius:50%; animation:vc-spin 0.7s linear infinite;
    margin-left:8px; vertical-align:middle;
}
@keyframes vc-spin { to { transform:rotate(360deg); } }

/* ═══════════════════════════════════════
   УСПЕХ
═══════════════════════════════════════ */
.vc-success {
    position:fixed; inset:0; z-index:1000;
    display:flex; align-items:center; justify-content:center;
    background:rgba(13,31,26,0.93); backdrop-filter:blur(10px);
}
.vc-success__card {
    background:#fff; border-radius:24px;
    padding:56px 52px; max-width:440px; width:90%;
    text-align:center; border:1.5px solid var(--nv-border);
    animation:vc-pop 0.4s cubic-bezier(0.22,1,0.36,1);
}
@keyframes vc-pop {
    from { opacity:0; transform:scale(0.88) translateY(20px); }
    to   { opacity:1; transform:scale(1) translateY(0); }
}
.vc-success__icon { width:64px; height:64px; margin:0 auto 20px; color:var(--nv-green); }
.vc-success__icon svg { width:64px; height:64px; }
.vc-success__title {
    font-size:38px; font-weight:900; color:var(--nv-black);
    font-family:'Manrope',sans-serif; letter-spacing:-0.03em; margin-bottom:10px;
}
.vc-success__text { font-size:15px; color:var(--nv-gray); font-family:'Manrope',sans-serif; line-height:1.7; }

/* ═══════════════════════════════════════
   АДАПТИВ
═══════════════════════════════════════ */
@media (max-width:1100px) {
    .container { padding:0 24px; }
}

@media (max-width:900px) {
    .vc-block__header { padding:22px 24px 18px; }
    .vc-fields { padding:18px 24px 22px; }
    .vc-questions { padding:4px 24px 20px; }
    .vc-legend { padding:12px 24px; }
    .vc-sticky__block { min-width:120px; }
}

@media (max-width:700px) {
    .vc-field-row--3,
    .vc-field-row--2 { grid-template-columns:1fr; }
    .vc-scale { gap:4px; }
    .vc-scale__btn { width:38px; height:38px; font-size:13px; border-radius:8px; }
    .vc-scale--7 .vc-scale__btn { height:40px; font-size:12px; }
    .vc-legend__label { font-size:9px; }
    .vc-q__text { font-size:14px; }
    .vc-sticky__block { display:none; }
}

@media (max-width:480px) {
    .container { padding:0 14px; }
    .vc-hero { padding:52px 0 60px; }
    .vc-form-section { padding:28px 0 56px; }
    .vc-block__header { padding:18px 18px 14px; gap:12px; }
    .vc-block__num { display:none; }
    .vc-fields { padding:14px 18px 18px; gap:12px; }
    .vc-questions { padding:4px 14px 16px; }
    .vc-legend { padding:10px 14px; gap:10px; }
    .vc-legend__label { display:none; }
    .vc-submit { padding:24px 18px; }
    .vc-btn { width:100%; justify-content:center; padding:15px 24px; }
    .vc-success__card { padding:36px 24px; }
    .vc-success__title { font-size:30px; }
    .vc-scale__btn { height:44px; }
    .vc-scale--7 .vc-scale__btn { font-size:11px; }
}

@media (max-width: 991px){
    label.vc-scale__btn.is-selected:last-child span.vc-scale__tip {
        left: 30px;
    }
     label.vc-scale__btn.is-selected:last-child span.vc-scale__tip.vc-scale__tip::after {
    left: 80%;
}

   label.vc-scale__btn.is-selected:first-child span.vc-scale__tip {
        left: -15px;
    }
     label.vc-scale__btn.is-selected:first-child span.vc-scale__tip.vc-scale__tip::after {
        left: 43%;
    }
}