/* Витрина v3 — главная и «Возможности» по макету Claude Design 31.10.2026 («Две страницы с анимациями», Z-335).
 *
 * Всё под [data-v3]: слой касается только новых страниц и не трогает остальную витрину, биржу и jobs. Цвета — только
 * переменными из :root ниже (палитра макета, раздел 2 ТЗ); числами — нигде вне палитры. Анимации делает
 * public/js/none-motion.js (переносится из архива как есть) — он трогает только transform и opacity, поэтому
 * здесь нет ни одной анимации, меняющей раскладку. prefers-reduced-motion гасит переходы целиком. */

:root {
  --v3-ink: #131747;
  --v3-ink-deep: #0E1138;
  --v3-ink-black: #0B0D24;
  --v3-accent: #D64545;
  --v3-accent-soft: #FBEAEA;
  --v3-accent-softer: #FBEFEF;
  --v3-accent-ring: #E8A3A3;
  --v3-accent-on-dark: #F08A8A;
  --v3-accent-text: #B23636;
  --v3-text-2: #4A4E70;
  --v3-text-3: #5B5F7E;
  --v3-text-4: #6A6E8C;
  --v3-text-5: #8A8DA8;
  --v3-muted-mask: #A7AAC0;
  --v3-line: #E4E5EE;
  --v3-line-btn: #D9DAE6;
  --v3-line-soft: #ECEDF3;
  --v3-line-softer: #EEEFF4;
  --v3-line-faint: #F1F2F6;
  --v3-line-dash: #C9CBDA;
  --v3-surface: #F6F7FA;
  --v3-surface-2: #FAFAFC;
  --v3-surface-3: #F1F2F7;
  --v3-surface-nav: #EEEFF6;
  --v3-seg-bg: #EEEFF5;
  --v3-track: #DCDEEA;
  --v3-hatch-1: #E1E3EC;
  --v3-hatch-2: #EEF0F5;
  --v3-bg: #FCFCFD;
  --v3-white: #fff;
  --v3-success: #16784C;
  --v3-success-bg: #E3F3EA;
  --v3-on-dark-1: #C9CBE0;
  --v3-on-dark-2: #A9ACC9;
  --v3-on-dark-3: #8F93B8;
  --v3-on-dark-line: rgba(255, 255, 255, .18);
  --v3-on-dark-fill: rgba(255, 255, 255, .14);
  --v3-shadow-card: 0 24px 50px -30px rgba(19, 23, 71, .4);
  --v3-shadow-soft: 0 1px 2px rgba(19, 23, 71, .04);
  --v3-shadow-pop: 0 18px 40px -18px rgba(19, 23, 71, .35);
  --v3-shadow-deep: 0 30px 60px -24px rgba(19, 23, 71, .55);
  --v3-shadow-cta: 0 10px 24px -10px rgba(214, 69, 69, .6);
  --v3-backdrop: rgba(14, 17, 56, .35);
  --v3-ease: cubic-bezier(.2, .7, .2, 1);
}

[data-v3] { background: var(--v3-bg); color: var(--v3-ink); font-family: 'Montserrat', sans-serif; font-variant-numeric: tabular-nums; -webkit-font-smoothing: antialiased; }
[data-v3] *, [data-v3] *::before, [data-v3] *::after { box-sizing: border-box; }
[data-v3] a { color: var(--v3-ink); text-decoration: none; }
[data-v3] a:hover { color: var(--v3-accent); }
[data-v3] ::selection { background: #F6D5D5; }
[data-v3] input[type=range] { accent-color: var(--v3-accent); width: 100%; }
[data-v3] button { font-family: inherit; color: inherit; }
@keyframes v3-dot { 0%, 80%, 100% { opacity: .25 } 40% { opacity: 1 } }
@media (prefers-reduced-motion: reduce) { [data-v3] *, [data-v3] *::before, [data-v3] *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }

/* Каркас: контейнер, секции, заголовки */
.v3-wrap { max-width: 1240px; margin: 0 auto; padding: 0 clamp(16px, 4vw, 32px); }
.v3-wrap-wide { max-width: 1320px; }
.v3-sec { padding: clamp(72px, 10vw, 132px) 0; }
.v3-sec-m { padding: clamp(56px, 8vw, 112px) 0; }
.v3-sec-white { background: var(--v3-white); border-top: 1px solid var(--v3-line-soft); border-bottom: 1px solid var(--v3-line-soft); }
.v3-sec-white-top { background: var(--v3-white); border-top: 1px solid var(--v3-line-soft); }
.v3-head { max-width: 760px; }
.v3-eyebrow { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--v3-accent); }
.v3-eyebrow-grey { color: var(--v3-text-4); }
.v3-eyebrow-dark { color: var(--v3-accent-on-dark); }
.v3-eyebrow-dot { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.v3-h1 { margin: 22px 0 0; font-size: clamp(34px, 4.6vw, 58px); line-height: 1.04; letter-spacing: -.035em; font-weight: 700; text-wrap: balance; }
.v3-h2 { margin: 14px 0 0; font-size: clamp(28px, 3.6vw, 46px); line-height: 1.08; letter-spacing: -.03em; font-weight: 700; text-wrap: balance; }
.v3-h2-top { margin-top: 0; }
.v3-lead { margin: 18px 0 0; font-size: 17px; line-height: 1.6; color: var(--v3-text-2); text-wrap: pretty; }
.v3-dot { width: 8px; height: 8px; border-radius: var(--radius-round); background: var(--v3-accent); flex: none; display: inline-block; }
.v3-dot-s { width: 7px; height: 7px; }
.v3-dot-xs { width: 6px; height: 6px; }

/* Кнопки (прямоугольные, без овалов — правило проекта) */
.v3-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 16px 22px; border-radius: var(--radius); font-weight: 600; font-size: 15px; line-height: 1.2; cursor: pointer; transition: transform .2s var(--v3-ease); }
.v3-btn-main { background: var(--v3-accent); color: var(--v3-white) !important; box-shadow: var(--v3-shadow-cta); }
.v3-btn-main:hover { transform: translateY(-1px); }
.v3-btn-second { background: var(--v3-white); border: 1px solid var(--v3-line-btn); color: var(--v3-ink); }

.v3-link-accent { font-size: 14px; font-weight: 600; color: var(--v3-accent) !important; }
.v3-small { margin: 16px 0 0; font-size: 13px; line-height: 1.5; color: var(--v3-text-4); }

/* Сегмент-контрол */
.v3-seg { display: grid; grid-template-columns: 1fr 1fr; padding: 4px; border-radius: var(--radius); background: var(--v3-seg-bg); max-width: 100%; }
.v3-seg-auto { grid-template-columns: auto auto; }
.v3-seg button { padding: 9px 14px; border: 0; border-radius: var(--radius); cursor: pointer; font: 600 13px/1.25 'Montserrat', sans-serif; background: transparent; color: var(--v3-text-3); white-space: nowrap; min-width: 0; }
.v3-seg button[aria-pressed=true] { background: var(--v3-white); color: var(--v3-ink); box-shadow: 0 1px 3px rgba(19, 23, 71, .12); }
.v3-seg-wrap button { white-space: normal; line-height: 1.3; font-size: 12.5px; }
.v3-tag-accent { font-size: 10.5px; font-weight: 700; padding: 3px 7px; border-radius: var(--radius); background: var(--v3-accent); color: var(--v3-white); }

/* Чипы и метки */
.v3-chip { padding: 6px 11px; border: 1px solid var(--v3-line); border-radius: var(--radius-pill); font-size: 11.5px; font-weight: 500; color: var(--v3-text-3); background: var(--v3-white); white-space: nowrap; }
.v3-badge-ok { padding: 5px 10px; border-radius: var(--radius); background: var(--v3-success-bg); color: var(--v3-success); font-size: 11px; font-weight: 700; }
.v3-badge-back { padding: 5px 10px; border-radius: var(--radius); background: var(--v3-accent-soft); color: var(--v3-accent-text); font-size: 11px; font-weight: 700; }
.v3-ok { color: var(--v3-success); }
.v3-accent { color: var(--v3-accent); }
.v3-muted { color: var(--v3-text-4); }
.v3-text3 { color: var(--v3-text-3); }
.v3-nowrap { white-space: nowrap; }

/* Карточки */
.v3-card { padding: 20px; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); box-shadow: var(--v3-shadow-soft); }

.v3-card-plain { padding: 16px; border-radius: var(--radius); border: 1px solid var(--v3-line); background: var(--v3-white); }
.v3-card-plain b { font-size: 14px; font-weight: 700; display: block; }
.v3-card-plain p { margin: 6px 0 0; font-size: 13px; line-height: 1.5; color: var(--v3-text-3); }
.v3-fill { padding: 10px; border-radius: var(--radius); background: var(--v3-surface); }
.v3-hatch { background: repeating-linear-gradient(135deg, var(--v3-hatch-1) 0 5px, var(--v3-hatch-2) 5px 10px); }
.v3-dark { background: var(--v3-ink); color: var(--v3-white); }

/* Шапка: уплотнение и прогресс чтения (none-motion.js, раздел 3) */
.v3-progress { position: fixed; top: 0; left: 0; right: 0; height: 2px; background: var(--v3-accent); transform: scaleX(0); transform-origin: 0 50%; z-index: 60; pointer-events: none; }

/* 01 Hero */
.v3-hero { padding: clamp(28px, 5vw, 64px) 0 clamp(56px, 8vw, 104px); overflow: hidden; }
.v3-hero-row { display: flex; flex-wrap: wrap; align-items: center; gap: clamp(32px, 5vw, 64px); }
.v3-hero-text { flex: 1 1 400px; min-width: 0; max-width: 560px; }
.v3-pill { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px 6px 8px; border: 1px solid var(--v3-line); border-radius: var(--radius-pill); background: var(--v3-white); font-size: 12px; font-weight: 500; color: var(--v3-text-2); white-space: nowrap; }
.v3-hero-lead { margin: 22px 0 0; font-size: clamp(16px, 1.4vw, 18px); line-height: 1.6; color: var(--v3-text-2); text-wrap: pretty; }
.v3-cta-row { margin-top: 32px; display: flex; flex-wrap: wrap; gap: 12px; }
.v3-stores { margin-top: 20px; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.v3-stores-label { font-size: 13px; font-weight: 600; color: var(--v3-text-2); margin-right: 4px; }
.v3-store { display: flex; flex-direction: column; justify-content: center; height: 44px; padding: 0 14px; border-radius: var(--radius); background: var(--v3-ink-black); color: var(--v3-white) !important; line-height: 1.1; }
.v3-store:hover { transform: translateY(-1px); }
.v3-store small { font-size: 9.5px; font-weight: 500; opacity: .8; }
.v3-store b { font-size: 14px; font-weight: 700; }

.v3-facts { margin-top: 36px; padding-top: 24px; border-top: 1px solid var(--v3-line); display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 18px; }
.v3-facts b { display: block; font-size: 20px; font-weight: 700; }
.v3-facts span { display: block; margin-top: 4px; font-size: 12px; line-height: 1.4; color: var(--v3-text-3); }
.v3-hero-scene { flex: 1 1 520px; min-width: 0; max-width: 620px; }
.v3-hero-steps { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 18px; }
.v3-hs { position: relative; }
.v3-hs-on { position: absolute; inset: -1px; border-radius: var(--radius-pill); background: var(--v3-ink); color: var(--v3-white); padding: 7px 12px; opacity: 0; white-space: nowrap; }
.v3-fit { position: relative; width: 100%; }
.v3-fit > div { position: absolute; left: 0; top: 0; transform-origin: 0 0; }
.v3-abs { position: absolute; }
.v3-tilt { perspective: 1400px; }
.v3-scene3d { position: relative; transform-style: preserve-3d; }
.v3-ai-tip { padding: 12px 14px; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); box-shadow: var(--v3-shadow-pop); }
.v3-ai-tip-h { display: flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 700; }
.v3-phone { padding: 8px; border-radius: var(--radius-telefon); background: var(--v3-ink); box-shadow: var(--v3-shadow-deep); }
.v3-phone-in { height: 100%; border-radius: var(--radius-telefon); background: var(--v3-white); padding: 16px 14px 14px; display: flex; flex-direction: column; gap: 10px; }
.v3-phone-tag { padding: 2px 7px; border-radius: var(--radius); background: var(--v3-surface-3); }
.v3-step-btns { display: flex; gap: 6px; }
.v3-step-btns span { flex: 1; height: 36px; border: 1px solid var(--v3-line); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; }
.v3-photo-ph { width: 52px; height: 52px; border-radius: var(--radius); display: flex; align-items: center; justify-content: center; font-size: 8px; color: var(--v3-text-5); }
.v3-send { height: 44px; border-radius: var(--radius); background: var(--v3-accent); color: var(--v3-white); display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; }
.v3-panel { padding: 12px; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); box-shadow: 0 14px 34px -18px rgba(19, 23, 71, .3); }
.v3-pto-card { position: absolute; left: 12px; right: 12px; top: 42px; height: 68px; padding: 10px 12px; border-radius: var(--radius); background: var(--v3-surface); border: 1px solid var(--v3-line); display: flex; align-items: center; gap: 10px; }
.v3-status-box { position: relative; width: 78px; height: 24px; flex: none; }
.v3-status-box-m { width: 84px; height: 26px; }
.v3-status { position: absolute; inset: 0; border-radius: var(--radius); font-size: 10.5px; display: flex; align-items: center; justify-content: center; }
.v3-status-wait { background: var(--v3-seg-bg); color: var(--v3-text-3); font-weight: 600; opacity: 0; }
.v3-status-ok { background: var(--v3-success-bg); color: var(--v3-success); font-weight: 700; }
.v3-ks { position: relative; padding: 16px 16px 14px; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); box-shadow: 0 24px 50px -22px rgba(19, 23, 71, .38); }
.v3-ks-grid { display: grid; grid-template-columns: 1fr 62px 84px; gap: 8px; }
.v3-ks-head { margin-top: 12px; font-size: 9.5px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--v3-text-5); padding-bottom: 6px; border-bottom: 1px solid var(--v3-line-softer); }
.v3-ks-row { position: relative; font-size: 11.5px; padding: 7px 0; border-bottom: 1px solid var(--v3-line-faint); }
.v3-ks-row:last-of-type { border-bottom: 0; }
.v3-ks-row > span { position: relative; }
.v3-r { text-align: right; }
.v3-row-hl { position: absolute !important; inset: 0 -8px; border-radius: var(--radius); background: var(--v3-accent-soft); opacity: .35; }
.v3-tots { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--v3-line); display: flex; flex-direction: column; gap: 5px; font-size: 11.5px; }
.v3-tots > div { display: flex; justify-content: space-between; align-items: baseline; }
.v3-stamp { position: absolute; padding: 6px 10px; border: 2px solid var(--v3-accent); border-radius: var(--radius); color: var(--v3-accent); transform: rotate(-8deg); background: rgba(255, 255, 255, .9); white-space: nowrap; }
.v3-stamp b { display: block; font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.v3-stamp small { display: block; font-size: 9px; font-weight: 600; margin-top: 1px; }
.v3-invoice { height: 48px; padding: 0 14px; border-radius: var(--radius); background: var(--v3-ink); color: var(--v3-white); display: flex; align-items: center; justify-content: space-between; gap: 10px; box-shadow: 0 16px 32px -14px rgba(19, 23, 71, .55); font-size: 12px; font-weight: 600; }
.v3-invoice em { font-style: normal; font-size: 10.5px; font-weight: 700; padding: 4px 9px; border-radius: var(--radius); background: var(--v3-on-dark-fill); }
.v3-only-desk { display: block; }
.v3-only-mob { display: none; }

/* 02 Казахстан */
.v3-kz { padding: clamp(28px, 4vw, 40px) clamp(16px, 4vw, 32px); }
.v3-kz-grid { margin-top: 20px; display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 24px; }
.v3-kz-item { display: flex; gap: 12px; align-items: flex-start; }
.v3-kz-ico { flex: none; width: 44px; height: 44px; border-radius: var(--radius); border: 1px solid var(--v3-line); display: flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 800; }
.v3-kz-item b { display: block; font-size: 14px; font-weight: 700; }
.v3-kz-item span { display: block; margin-top: 4px; font-size: 13px; line-height: 1.45; color: var(--v3-text-3); }

/* 03 Утечки */
.v3-ticker { margin-top: 40px; padding: clamp(20px, 3vw, 32px); border-radius: var(--radius); display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 20px; }
.v3-ticker p { margin: 0; max-width: 480px; font-size: 15px; line-height: 1.55; color: var(--v3-on-dark-1); }
.v3-ticker-num { text-align: right; font-size: clamp(30px, 4.4vw, 54px); font-weight: 700; letter-spacing: -.03em; line-height: 1; }
.v3-ticker-num i { font-style: normal; color: var(--v3-accent-on-dark); }
.v3-ticker small { display: block; margin-top: 8px; font-size: 13px; color: var(--v3-on-dark-2); text-align: right; }
.v3-leaks { margin-top: 20px; display: flex; flex-wrap: wrap; gap: 20px; align-items: stretch; }
.v3-budget { flex: 1 1 420px; min-width: 0; }
.v3-budget-h { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 4px 12px; }
.v3-budget-h b { font-size: 14px; }
.v3-th { margin-top: 14px; display: grid; grid-template-columns: 1fr auto; gap: 8px; font-size: 10.5px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--v3-text-5); padding: 0 12px 8px; border-bottom: 1px solid var(--v3-line-softer); }
.v3-brow { position: relative; padding: 14px 12px; border-bottom: 1px solid var(--v3-line-faint); cursor: default; }
.v3-brow-hl { position: absolute; inset: 0; background: var(--v3-accent-softer); box-shadow: inset 0 0 0 1.5px var(--v3-accent-ring); border-radius: var(--radius); opacity: 0; transition: opacity .4s var(--v3-ease); }
.v3-brow-in { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 12px; align-items: baseline; }
.v3-brow-in b { font-size: 13.5px; font-weight: 600; display: block; }
.v3-brow-in small { display: block; font-size: 11.5px; color: var(--v3-text-4); margin-top: 3px; }
.v3-brow-sum { text-align: right; font-size: 14px; font-weight: 600; white-space: nowrap; }
.v3-brow-note { position: relative; margin-top: 8px; display: inline-block; padding: 3px 9px; border-radius: var(--radius); background: var(--v3-accent); color: var(--v3-white); font-size: 11.5px; font-weight: 700; white-space: nowrap; opacity: 0; transform: translateY(4px); transition: opacity .35s var(--v3-ease), transform .35s var(--v3-ease); }
.v3-brow[data-on] .v3-brow-hl, .v3-brow[data-on] .v3-brow-note { opacity: 1; transform: none; }
.v3-leak-cards { flex: 1 1 420px; min-width: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; }
.v3-leak { position: relative; padding: 18px; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); cursor: pointer; }
.v3-leak-ring { position: absolute; inset: -1px; border-radius: var(--radius); box-shadow: 0 0 0 1.5px var(--v3-ink), 0 18px 40px -24px rgba(19, 23, 71, .45); opacity: 0; transition: opacity .4s var(--v3-ease); pointer-events: none; }
.v3-leak[data-on] .v3-leak-ring { opacity: 1; }
.v3-leak-h { position: relative; display: flex; align-items: center; gap: 8px; }
.v3-leak-h i { font-style: normal; font-size: 11px; font-weight: 700; color: var(--v3-accent); }
.v3-leak-h b { font-size: 15px; font-weight: 700; }
.v3-leak p { position: relative; margin: 10px 0 0; font-size: 13px; line-height: 1.5; color: var(--v3-text-3); }
.v3-leak p + p { margin-top: 8px; }
.v3-leak p b { color: var(--v3-ink); font-weight: 600; }
.v3-leak p b.v3-ok { color: var(--v3-success); }
.v3-calc { margin-top: 20px; padding: clamp(20px, 3vw, 32px); border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); display: flex; flex-wrap: wrap; gap: clamp(24px, 4vw, 48px); }
.v3-calc-in { flex: 1 1 360px; min-width: 0; display: flex; flex-direction: column; gap: 22px; }
.v3-calc-in > b { font-size: 20px; font-weight: 700; letter-spacing: -.02em; }
.v3-calc label { display: block; }
.v3-calc-lbl { display: flex; justify-content: space-between; gap: 12px; font-size: 13px; font-weight: 600; }
.v3-calc input { margin-top: 10px; }
.v3-calc-hint { font-size: 11.5px; color: var(--v3-text-4); margin-top: 4px; }
.v3-calc-out { flex: 1 1 320px; min-width: 0; padding: 24px; border-radius: var(--radius); background: var(--v3-surface); display: flex; flex-direction: column; gap: 18px; justify-content: center; }
.v3-calc-out small { display: block; font-size: 13px; color: var(--v3-text-3); }
.v3-calc-big { margin-top: 6px; font-size: clamp(26px, 3vw, 36px); font-weight: 700; letter-spacing: -.03em; color: var(--v3-accent); }
.v3-calc-mid { margin-top: 6px; font-size: 22px; font-weight: 700; letter-spacing: -.02em; }
.v3-bar { height: 8px; border-radius: var(--radius-pill); background: var(--v3-line); overflow: hidden; }
.v3-bar > div { height: 100%; width: 100%; background: var(--v3-accent); transform-origin: 0 50%; transition: transform .3s var(--v3-ease); }
.v3-calc-note { font-size: 13px; line-height: 1.5; color: var(--v3-text-2); }
.v3-calc-foot { font-size: 11.5px; color: var(--v3-text-5); }

/* 04 Scrollytelling */
.v3-scrolly { margin-top: clamp(24px, 4vw, 48px); display: flex; flex-direction: row-reverse; flex-wrap: wrap; gap: clamp(24px, 5vw, 72px); align-items: flex-start; }
.v3-scrolly-vis { flex: 1 1 460px; min-width: 0; position: sticky; top: max(84px, calc(50vh - 250px)); z-index: 2; background: var(--v3-white); padding: 8px 0; }
.v3-scrolly-fit { max-width: max(300px, calc(45vh * 1.13)); margin: 0 auto; }
.v3-stage { border-radius: var(--radius); background: var(--v3-surface); border: 1px solid #E9EAF1; overflow: hidden; }
.v3-layer { position: absolute; inset: 0; padding: 30px 28px; opacity: 0; }
.v3-layer-0 { display: flex; align-items: center; justify-content: center; opacity: 1; padding: 0; }
.v3-box { padding: 18px; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); box-shadow: 0 20px 44px -24px rgba(19, 23, 71, .35); position: relative; }
.v3-box-h { display: flex; justify-content: space-between; align-items: baseline; }
.v3-box-h b { font-size: 15px; font-weight: 700; }
.v3-box-h small { font-size: 11px; color: var(--v3-text-4); }
.v3-li { margin-top: 8px; padding: 12px; border-radius: var(--radius); border: 1px solid var(--v3-line-softer); display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.v3-li b { display: block; font-size: 13px; font-weight: 600; }
.v3-li small { display: block; font-size: 11px; color: var(--v3-text-4); margin-top: 2px; }
.v3-line { display: flex; justify-content: space-between; font-size: 12.5px; padding: 8px 0; border-bottom: 1px solid var(--v3-line-faint); }
.v3-pay { margin-top: 14px; padding: 14px; border-radius: var(--radius); background: var(--v3-surface); display: flex; justify-content: space-between; align-items: baseline; }
.v3-pay b:last-child { font-size: 24px; letter-spacing: -.02em; }
.v3-qr { position: relative; width: 72px; height: 72px; flex: none; padding: 4px; border-radius: var(--radius); border: 1px solid var(--v3-line); background: var(--v3-white); }
.v3-qr-dots { position: absolute; inset: 4px; background: repeating-conic-gradient(var(--v3-ink) 0 25%, var(--v3-white) 0 50%) 0 0 / 8px 8px; opacity: .9; }
.v3-qr-eye { position: absolute; width: 22px; height: 22px; background: var(--v3-white); border: 4px solid var(--v3-ink); display: flex; align-items: center; justify-content: center; }
.v3-qr-eye::after { content: ''; width: 6px; height: 6px; background: var(--v3-ink); }
.v3-esf { margin-top: 16px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.v3-esf span { padding: 10px 6px; border-radius: var(--radius); background: var(--v3-success-bg); color: var(--v3-success); font-size: 11px; font-weight: 700; text-align: center; }
.v3-esf span:last-child { background: var(--v3-ink); color: var(--v3-white); }
.v3-steps { flex: 1 1 380px; min-width: 0; position: relative; padding-left: 28px; }
.v3-rail { position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: var(--v3-line-soft); border-radius: var(--radius-check); }
.v3-rail > div { width: 100%; height: 100%; background: var(--v3-accent); transform: scaleY(.2); transform-origin: 50% 0; border-radius: var(--radius-check); }
.v3-step { min-height: 62vh; display: flex; flex-direction: column; justify-content: center; padding: 24px 0; opacity: .36; }
.v3-step:first-of-type { opacity: 1; }
.v3-step i { font-style: normal; font-size: 13px; font-weight: 700; color: var(--v3-accent); }
.v3-step h3 { margin: 10px 0 0; font-size: clamp(22px, 2.4vw, 30px); letter-spacing: -.02em; line-height: 1.15; }
.v3-step p { margin: 12px 0 0; font-size: 16px; line-height: 1.6; color: var(--v3-text-2); max-width: 440px; }

/* 05 Роли */
.v3-tabs { margin-top: 32px; display: flex; flex-wrap: wrap; gap: 6px; }
.v3-tab { flex: none; height: 40px; padding: 0 14px; border-radius: var(--radius); cursor: pointer; font: 600 13px 'Montserrat', sans-serif; border: 1px solid var(--v3-line); background: var(--v3-white); color: var(--v3-ink); transition: background .2s, color .2s; }
.v3-tab[aria-selected=true] { border-color: var(--v3-ink); background: var(--v3-ink); color: var(--v3-white); }
.v3-roles { margin-top: 18px; display: flex; flex-wrap: wrap; gap: 24px; align-items: stretch; }
.v3-stage-r { flex: 2 1 560px; min-width: 0; position: relative; height: 460px; }
.v3-shell { position: absolute; inset: 0; display: flex; justify-content: center; transition: opacity .45s var(--v3-ease), transform .45s var(--v3-ease); }
.v3-shell[data-off] { opacity: 0; transform: scale(.96) translateY(10px); pointer-events: none; }
.v3-shell-desk { display: block; }
.v3-window { height: 100%; display: flex; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); box-shadow: 0 24px 60px -30px rgba(19, 23, 71, .35); overflow: hidden; }
.v3-side { width: 184px; flex: none; border-right: 1px solid var(--v3-line-softer); padding: 18px 10px; background: var(--v3-surface-2); display: flex; flex-direction: column; gap: 2px; }
.v3-side img, .v3-side svg { height: 18px; align-self: flex-start; margin: 0 8px 14px; }
.v3-side div { padding: 8px 10px; border-radius: var(--radius); font-size: 12.5px; font-weight: 500; transition: opacity .25s; }
.v3-side div[data-on] { font-weight: 700; background: var(--v3-surface-nav); }
[data-mask] .v3-side div[data-money] { opacity: .35; }
.v3-win-body { flex: 1; min-width: 0; padding: 22px; display: flex; flex-direction: column; }
.v3-win-h { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.v3-win-h b { font-size: 16px; font-weight: 700; }
.v3-win-h small { font-size: 11px; color: var(--v3-text-5); }
.v3-kpis { margin-top: 18px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.v3-kpi { padding: 14px; border-radius: var(--radius); border: 1px solid var(--v3-line-softer); background: var(--v3-bg); min-height: 86px; }
.v3-kpi small { display: block; font-size: 11.5px; line-height: 1.35; color: var(--v3-text-3); }
.v3-kpi b { display: block; margin-top: 8px; font-size: 24px; font-weight: 700; letter-spacing: -.02em; }
.v3-kpi b[data-long] { font-size: 17px; }
.v3-kpi b .v3-mask { display: none; color: var(--v3-muted-mask); }
[data-mask] .v3-kpi b[data-money] .v3-val { display: none; }
[data-mask] .v3-kpi b[data-money] .v3-mask { display: inline; }
.v3-mask-note { margin-top: 14px; padding: 10px 12px; border-radius: var(--radius); background: var(--v3-surface); font-size: 12px; color: var(--v3-text-2); display: none; }
[data-mask] .v3-mask-note { display: block; }
.v3-phone-r { width: 236px; height: 460px; padding: 8px; border-radius: var(--radius-telefon); background: var(--v3-ink); box-shadow: 0 30px 60px -24px rgba(19, 23, 71, .5); }
.v3-phone-r > div { height: 100%; border-radius: var(--radius-telefon); background: var(--v3-white); padding: 18px 14px; display: flex; flex-direction: column; gap: 8px; }
.v3-phone-r .v3-kpi { min-height: 0; padding: 12px; border-radius: var(--radius); background: var(--v3-white); }
.v3-phone-r .v3-kpi b { margin-top: 4px; font-size: 17px; }
.v3-phone-cta { height: 48px; border-radius: var(--radius); background: var(--v3-accent); color: var(--v3-white); display: flex; align-items: center; justify-content: center; font-size: 13.5px; font-weight: 600; }
.v3-role-side { flex: 1 1 280px; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
.v3-bullets { display: flex; flex-direction: column; gap: 12px; }
.v3-bullet { display: flex; gap: 12px; font-size: 15px; line-height: 1.55; }
.v3-bullet::before { content: ''; flex: none; margin-top: 9px; width: 6px; height: 6px; border-radius: var(--radius-check); background: var(--v3-accent); }

.v3-maskbox { padding: 16px; border-radius: var(--radius); border: 1px solid var(--v3-line); background: var(--v3-white); display: flex; flex-direction: column; gap: 12px; }
.v3-maskbox > b { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--v3-text-4); }

/* 06 Гант */
.v3-gantt { margin-top: 36px; border-radius: var(--radius); border: 1px solid var(--v3-line); background: var(--v3-white); box-shadow: 0 20px 50px -34px rgba(19, 23, 71, .4); overflow: hidden; }
.v3-gantt-h { padding: 16px 20px; border-bottom: 1px solid var(--v3-line-softer); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; font-size: 14px; }
.v3-gantt-h > b { font-weight: 700; }
.v3-gantt-date { display: flex; align-items: center; gap: 8px; }
.v3-gold { position: relative; font-weight: 700; }
.v3-gstrike { position: absolute; left: -2px; right: -2px; top: 50%; height: 2px; background: var(--v3-ink); transform: scaleX(0); transform-origin: 0 50%; }
.v3-gnew { font-weight: 800; color: var(--v3-accent); opacity: 0; }
.v3-gantt-scroll { overflow-x: auto; }
.v3-gantt-in { min-width: 640px; padding: 12px 20px 20px; }
.v3-gantt-grid { display: grid; grid-template-columns: 150px 1fr; column-gap: 14px; position: relative; }
.v3-gantt-months { font-size: 11px; font-weight: 600; color: var(--v3-text-5); text-transform: uppercase; letter-spacing: .04em; }
.v3-gantt-months > div { position: relative; height: 22px; }
.v3-gantt-months > div span { position: absolute; }
.v3-gantt-lines { grid-column: 2; grid-row: 1 / span 8; position: relative; pointer-events: none; }
.v3-gantt-lines span { position: absolute; top: 0; bottom: 0; width: 1px; background: var(--v3-line-faint); }
.v3-gantt-name { grid-column: 1; height: 42px; display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 500; }
.v3-gantt-name-b { font-weight: 600; }
.v3-gantt-name-bb { font-weight: 700; }
.v3-gantt-track { grid-column: 2; position: relative; height: 42px; }
.v3-gbar { position: absolute; top: 10px; height: 22px; border-radius: var(--radius); background: var(--v3-ink); overflow: hidden; }
.v3-gbar-todo { background: var(--v3-track); }
.v3-gbar-todo > div { height: 100%; background: var(--v3-ink); }
.v3-gplan { position: absolute; top: 10px; height: 22px; border-radius: var(--radius); border: 1.5px dashed var(--v3-line-dash); }
.v3-gshift { position: absolute; inset: 0; }
.v3-gbadge { position: absolute; top: 12px; font-size: 11px; font-weight: 700; color: var(--v3-accent); white-space: nowrap; opacity: 0; }
.v3-gdiamond { position: absolute; top: 14px; width: 14px; height: 14px; transform: rotate(45deg); }
.v3-gdiamond-plan { border: 1.5px dashed var(--v3-line-dash); }
.v3-gdiamond-fact { background: var(--v3-accent); border-radius: var(--radius-check); }
.v3-gantt-f { padding: 16px 20px; border-top: 1px solid var(--v3-line-softer); background: var(--v3-surface-2); display: flex; flex-wrap: wrap; align-items: center; gap: 14px; justify-content: space-between; }
.v3-gantt-f > span { font-size: 14px; line-height: 1.5; color: var(--v3-text-2); max-width: 560px; }
.v3-legend { display: flex; gap: 14px; font-size: 11.5px; color: var(--v3-text-4); }
.v3-legend span { display: flex; align-items: center; gap: 6px; }
.v3-legend i { width: 14px; height: 8px; border-radius: var(--radius-check); background: var(--v3-ink); }
.v3-legend i.v3-legend-plan { background: none; border: 1.5px dashed var(--v3-line-dash); }
.v3-gtoggle { height: 40px; padding: 0 16px; border-radius: var(--radius); border: 1px solid var(--v3-ink); background: var(--v3-ink); color: var(--v3-white) !important; font: 600 13px 'Montserrat', sans-serif; cursor: pointer; }

/* 07 noneAI */
.v3-ai { display: flex; flex-wrap: wrap; gap: clamp(32px, 5vw, 64px); align-items: flex-start; }
.v3-ai-text { flex: 1 1 440px; min-width: 0; }
.v3-ai-cards { margin-top: 32px; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px; }
.v3-ai-chat { flex: 1 1 420px; min-width: 0; position: sticky; top: 96px; }
.v3-chat { border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); box-shadow: 0 30px 70px -36px rgba(19, 23, 71, .45); overflow: hidden; }
.v3-chat-h { padding: 14px 18px; border-bottom: 1px solid var(--v3-line-softer); display: flex; align-items: center; justify-content: space-between; }
.v3-chat-h b { display: flex; align-items: center; gap: 8px; font-size: 14px; }
.v3-chat-h small { font-size: 11px; color: var(--v3-text-5); }
.v3-chat-body { padding: 18px; min-height: 460px; display: flex; flex-direction: column; gap: 12px; background: var(--v3-bg); }
.v3-msg { max-width: 88%; padding: 11px 14px; font-size: 13.5px; line-height: 1.5; }
.v3-msg-user { align-self: flex-end; max-width: 84%; border-radius: var(--radius); background: var(--v3-ink); color: var(--v3-white); }
.v3-msg-ai { align-self: flex-start; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); }
.v3-msg-wide { width: 88%; }
.v3-draft { margin-top: 10px; padding: 12px; border-radius: var(--radius); background: var(--v3-surface); border: 1px solid #E9EAF1; }
.v3-draft small { display: block; font-size: 11px; color: var(--v3-text-4); }
.v3-draft b { display: block; margin-top: 4px; font-size: 14px; }
.v3-draft span { display: block; font-size: 12px; color: var(--v3-text-3); margin-top: 2px; }
.v3-draft-btns { margin-top: 10px; display: flex; gap: 6px; }
.v3-draft-btns em { font-style: normal; padding: 8px 12px; border-radius: var(--radius); border: 1px solid var(--v3-line-btn); font-size: 12px; font-weight: 600; }
.v3-draft-btns em:first-child { background: var(--v3-ink); color: var(--v3-white); border-color: var(--v3-ink); }
.v3-typing { display: none; align-self: flex-start; padding: 12px 14px; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); }
.v3-typing span { display: inline-block; width: 6px; height: 6px; margin-right: 4px; border-radius: var(--radius-round); background: var(--v3-ink); animation: v3-dot 1s infinite; }
.v3-typing span:nth-child(2) { animation-delay: .15s; }
.v3-typing span:nth-child(3) { animation-delay: .3s; margin-right: 0; }
.v3-chat-f { padding: 12px 18px; border-top: 1px solid var(--v3-line-softer); font-size: 12px; line-height: 1.5; color: var(--v3-text-3); }

/* 08 Заказы и Магазин */
.v3-eco { margin-top: 36px; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: 20px; }
.v3-eco-card { padding: clamp(20px, 3vw, 28px); border-radius: var(--radius); border: 1px solid var(--v3-line); background: var(--v3-bg); display: flex; flex-direction: column; gap: 18px; }
.v3-eco-card small { display: block; font-size: 12px; font-weight: 700; color: var(--v3-text-4); }
.v3-eco-card h3 { margin: 6px 0 0; font-size: 22px; font-weight: 700; letter-spacing: -.02em; }
.v3-eco-card h3 + p { margin: 8px 0 0; font-size: 15px; line-height: 1.55; color: var(--v3-text-2); }
.v3-lot { padding: 16px; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); }
.v3-lot-h { display: flex; justify-content: space-between; gap: 10px; }
.v3-lot-h b { font-size: 14px; }
.v3-lot-h span { font-size: 11px; font-weight: 600; padding: 3px 8px; border-radius: var(--radius); background: var(--v3-success-bg); color: var(--v3-success); }
.v3-lot-grid { margin-top: 12px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.v3-lot-grid small { font-size: 11px; color: var(--v3-text-3); font-weight: 400; }
.v3-lot-grid b { display: block; font-size: 22px; font-weight: 700; }
.v3-lot-grid b.v3-lot-date { font-size: 16px; margin-top: 4px; }
.v3-shop-q { height: 40px; border-radius: var(--radius); border: 1px solid var(--v3-line); display: flex; align-items: center; padding: 0 12px; font-size: 13px; color: var(--v3-text-3); }
.v3-shop-cats { margin-top: 12px; display: flex; flex-wrap: wrap; gap: 6px; }
.v3-shop-cats span { padding: 6px 10px; border-radius: var(--radius); border: 1px solid var(--v3-line); font-size: 12px; font-weight: 600; }
.v3-shop-cats span:first-child { background: var(--v3-ink); color: var(--v3-white); border-color: var(--v3-ink); }
.v3-ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; font-size: 14px; }
.v3-ol li { display: flex; gap: 10px; }
.v3-ol b { color: var(--v3-accent); }
.v3-eco-note { font-size: 13px; line-height: 1.5; color: var(--v3-text-3); }
.v3-grow { flex: 1; }

/* 09 Демо */
.v3-demo-sec { padding: clamp(24px, 4vw, 48px) clamp(12px, 3vw, 24px); }
.v3-demo { max-width: 1280px; margin: 0 auto; border-radius: var(--radius); padding: clamp(28px, 5vw, 64px); display: flex; flex-wrap: wrap; gap: clamp(28px, 5vw, 64px); align-items: center; overflow: hidden; }
.v3-demo-text { flex: 1 1 380px; min-width: 0; }
.v3-demo .v3-h2 { color: var(--v3-white); }
.v3-demo .v3-lead { color: var(--v3-on-dark-1); }
.v3-demo-roles { margin-top: 24px; display: flex; flex-wrap: wrap; gap: 6px; }
.v3-demo-roles a { padding: 8px 12px; border-radius: var(--radius); border: 1px solid var(--v3-on-dark-line); color: var(--v3-white) !important; font-size: 13px; font-weight: 500; }
.v3-demo-roles a:hover { background: rgba(255, 255, 255, .1); }
.v3-demo-cta { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.v3-demo-cta span { font-size: 13px; color: var(--v3-on-dark-2); }
.v3-demo-cta span b { color: var(--v3-white); }
.v3-demo-prev { flex: 1 1 420px; min-width: 0; }
.v3-demo-card { border-radius: var(--radius); background: var(--v3-white); color: var(--v3-ink); padding: 18px; box-shadow: 0 40px 80px -30px rgba(0, 0, 0, .5); }
.v3-demo-card-h { display: flex; justify-content: space-between; align-items: center; }
.v3-demo-card-h b { font-size: 14px; }
.v3-demo-card-h span { font-size: 11px; padding: 3px 8px; border-radius: var(--radius); background: var(--v3-surface-3); color: var(--v3-text-3); }
.v3-objs { margin-top: 14px; display: flex; flex-direction: column; gap: 8px; }
.v3-obj { padding: 12px; border-radius: var(--radius); border: 1px solid var(--v3-line-softer); }
.v3-obj > div:first-child { display: flex; justify-content: space-between; font-size: 13px; }
.v3-obj-bar { margin-top: 8px; height: 6px; border-radius: var(--radius-pill); background: var(--v3-line-soft); overflow: hidden; }
.v3-obj-bar > div { height: 100%; background: var(--v3-ink); }
.v3-demo-tiles { margin-top: 14px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; font-size: 11px; color: var(--v3-text-3); }
.v3-demo-tiles div { padding: 10px; border-radius: var(--radius); background: var(--v3-surface); }
.v3-demo-tiles b { display: block; font-size: 12px; color: var(--v3-ink); margin-top: 2px; }

/* 10 Тарифы */
.v3-plans-top { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 24px; }
.v3-plans-top > div:first-child { max-width: 640px; }
.v3-plans-top p { margin: 16px 0 0; font-size: 16px; line-height: 1.6; color: var(--v3-text-2); }
.v3-plans-sw { display: flex; flex-wrap: wrap; gap: 10px; max-width: 100%; }
.v3-plans { margin-top: 32px; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 16px; align-items: stretch; }
.v3-plan { padding: 24px; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); box-shadow: var(--v3-shadow-soft); display: flex; flex-direction: column; }
.v3-plan-rec { border: 1.5px solid var(--v3-ink); box-shadow: 0 30px 60px -30px rgba(19, 23, 71, .45); }
.v3-plan-h { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.v3-plan-h b { font-size: 18px; font-weight: 700; }
.v3-plan-h span { font-size: 11px; font-weight: 700; padding: 4px 9px; border-radius: var(--radius); background: var(--v3-accent); color: var(--v3-white); }
.v3-price { margin-top: 18px; display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.v3-price b { font-size: 34px; font-weight: 700; letter-spacing: -.03em; white-space: nowrap; }
.v3-price span { font-size: 14px; color: var(--v3-text-3); }
.v3-save { margin-top: 6px; min-height: 20px; font-size: 13px; font-weight: 600; color: var(--v3-accent); }
.v3-lims { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--v3-line-softer); display: flex; flex-direction: column; gap: 9px; flex: 1; }
.v3-lims div { display: flex; justify-content: space-between; gap: 12px; font-size: 13.5px; }
.v3-lims span { color: var(--v3-text-3); }
.v3-lims b { font-weight: 600; text-align: right; }
.v3-plan-btn { margin-top: 22px; height: 48px; border-radius: var(--radius); display: flex; align-items: center; justify-content: center; font-weight: 600; font-size: 14px; background: var(--v3-white); color: var(--v3-ink); border: 1px solid var(--v3-line-btn); }
.v3-plan-rec .v3-plan-btn { background: var(--v3-accent); color: var(--v3-white) !important; border: 0; }
.v3-plan[hidden], [data-v3] [hidden] { display: none !important; }
.v3-extra { margin-top: 40px; display: flex; flex-wrap: wrap; gap: 20px; }
.v3-addons { flex: 3 1 520px; min-width: 0; padding: 24px; border-radius: var(--radius); border: 1px solid var(--v3-line); background: var(--v3-white); }
.v3-addons > b, .v3-exts > b { font-size: 17px; font-weight: 700; display: block; }
.v3-addons > p, .v3-exts > p { margin: 6px 0 0; font-size: 13.5px; line-height: 1.55; color: var(--v3-text-3); }
.v3-addon { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 14px; align-items: baseline; padding: 11px 0; border-top: 1px solid var(--v3-line-faint); }
.v3-addon b { display: block; font-size: 13.5px; font-weight: 600; }
.v3-addon small { display: block; font-size: 12px; line-height: 1.45; color: var(--v3-text-4); margin-top: 2px; }
.v3-addon > span { font-size: 12.5px; color: var(--v3-text-3); white-space: nowrap; }
.v3-addon > strong { font-size: 13.5px; white-space: nowrap; }
[data-v3] .dop-tablica { margin-top: 14px; display: flex; flex-direction: column; }
.v3-addons-foot { margin-top: 10px; font-size: 12px; color: var(--v3-text-4); }
.v3-exts { flex: 2 1 340px; min-width: 0; display: flex; flex-direction: column; gap: 12px; }
.v3-exts > b, .v3-exts > p { padding: 0 4px; }
.v3-ext-slovo { padding: 0 4px; font-size: 12px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--v3-text-4); }
.v3-ext { padding: 18px; border-radius: var(--radius); border: 1px solid var(--v3-line); background: var(--v3-white); }
.v3-ext-h { display: flex; justify-content: space-between; gap: 10px; align-items: baseline; }
.v3-ext-h b { font-size: 15px; }
.v3-ext-h span { font-size: 13px; font-weight: 700; white-space: nowrap; }
.v3-ext small { display: block; font-size: 12px; color: var(--v3-text-4); margin-top: 2px; text-align: right; }
.v3-ext p { margin: 8px 0 0; font-size: 12.5px; line-height: 1.55; color: var(--v3-text-3); }

/* 11 Вопросы */
.v3-faq { display: flex; flex-wrap: wrap; gap: clamp(24px, 5vw, 64px); }
.v3-faq-h { flex: 1 1 280px; }
.v3-faq-h h2 { position: sticky; top: 100px; }
.v3-faq-list { flex: 2 1 520px; min-width: 0; border-top: 1px solid var(--v3-line); }
.v3-faq-item { border-bottom: 1px solid var(--v3-line); }
.v3-faq-q { width: 100%; padding: 22px 0; border: 0; background: none; display: flex; justify-content: space-between; align-items: center; gap: 16px; text-align: left; cursor: pointer; font: 600 16px/1.4 'Montserrat', sans-serif; color: var(--v3-ink); }
.v3-faq-plus { flex: none; width: 28px; height: 28px; border-radius: var(--radius-round); border: 1px solid var(--v3-line); display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 500; transition: transform .3s var(--v3-ease); }
.v3-faq-q[aria-expanded=true] .v3-faq-plus { transform: rotate(45deg); }
.v3-faq-a { padding: 0 0 22px; display: flex; flex-direction: column; gap: 12px; max-width: 720px; }
.v3-faq-a p { margin: 0; font-size: 15px; line-height: 1.65; color: var(--v3-text-2); }

/* 12 Финал */
.v3-final { padding: clamp(72px, 10vw, 128px) 0; text-align: center; }
.v3-final > div { max-width: 760px; }
.v3-final h2 { margin: 0; font-size: clamp(30px, 4.4vw, 56px); line-height: 1.05; letter-spacing: -.035em; font-weight: 700; text-wrap: balance; }
.v3-final p { margin: 20px auto 0; font-size: 17px; line-height: 1.6; color: var(--v3-text-2); max-width: 560px; }
.v3-final .v3-cta-row { justify-content: center; }

/* Шторка «Скачать приложение» (только Android/iOS) */
.v3-sheet-bg { position: fixed; inset: 0; z-index: 69; background: var(--v3-backdrop); opacity: 0; transition: opacity .3s var(--v3-ease); }
.v3-sheet { position: fixed; left: 0; right: 0; bottom: 0; z-index: 70; max-width: 520px; margin: 0 auto; padding: 10px 20px calc(20px + env(safe-area-inset-bottom)); border-radius: var(--radius); background: var(--v3-white); box-shadow: 0 -20px 50px -20px rgba(19, 23, 71, .4); transform: translateY(110%); transition: transform .38s var(--v3-ease); color: var(--v3-ink); font-family: 'Montserrat', sans-serif; }
.v3-sheet[data-in] { transform: none; }
.v3-sheet-bg[data-in] { opacity: 1; }
.v3-sheet-grip { width: 40px; height: 4px; border-radius: var(--radius-check); background: var(--v3-track); margin: 0 auto 16px; }
.v3-sheet-row { display: flex; gap: 14px; align-items: center; }
.v3-sheet-ico { width: 56px; height: 56px; border-radius: var(--radius); background: var(--v3-ink); flex: none; display: flex; align-items: center; justify-content: center; color: var(--v3-white); font-size: 22px; font-weight: 800; letter-spacing: -.04em; }
.v3-sheet-row b { display: block; font-size: 16px; }
.v3-sheet-row span { display: block; margin-top: 3px; font-size: 13px; line-height: 1.45; color: var(--v3-text-3); }
.v3-sheet-go { margin-top: 18px; height: 52px; border-radius: var(--radius); background: var(--v3-accent); color: var(--v3-white) !important; display: flex; align-items: center; justify-content: center; font-size: 15px; font-weight: 700; }
.v3-sheet-no { margin-top: 6px; width: 100%; height: 48px; border: 0; background: none; font: 600 14px 'Montserrat', sans-serif; color: var(--v3-text-3) !important; cursor: pointer; }

/* Телефон: другая разметка, а не сжатие (раздел 2 ТЗ, ≤ 760px) */
@media (max-width: 760px) {
  .v3-only-desk { display: none; }
  .v3-only-mob { display: block; }
  .v3-tabs { margin: 24px -16px 0; padding: 0 16px 4px; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
  .v3-stage-r { flex: 1 1 100%; height: auto; }
  .v3-shell { position: relative; inset: auto; }
  .v3-shell-desk[data-off] { opacity: 1; transform: none; pointer-events: auto; }
  .v3-shell-phone { display: none; }
  .v3-side { display: none; }
  .v3-seg button { white-space: normal; }
  .v3-plans-sw .v3-seg { grid-template-columns: 1fr 1fr; width: 100%; }
  .v3-ai-chat, .v3-faq-h h2 { position: relative; top: auto; }
  .v3-ticker-num, .v3-ticker small { text-align: left; }
  .v3-btn { min-height: 44px; }
}

/* Вопросы — <details>: без стрелки браузера, плюс поворачивается по [open] */
.v3-faq-q { list-style: none; }
.v3-faq-q::-webkit-details-marker { display: none; }
.v3-faq-q::before, .v3-faq-q::after { content: none !important; display: none !important; }
.v3-faq-item[open] .v3-faq-plus { transform: rotate(45deg); }

/* Скругления блоков витрины по макету (переносятся из разметки классами — правило шкалы для видов) */
.v3-r8 { border-radius: var(--radius); }
.v3-r10 { border-radius: var(--radius); }
.v3-r12 { border-radius: var(--radius); }
.v3-r14 { border-radius: var(--radius); }
[data-v3] [data-ramka] { border: 1px solid var(--v3-line-softer); }
[data-v3] [data-belyy] { background: var(--v3-white); }
[data-v3] [data-cherta] { border-top: 1px solid var(--v3-line-softer); }
.v3-plus-ph { border: 1px dashed var(--v3-line-dash); }

/* Дополнения со счётчиками («Добавить к тарифу») */
.v3-addon-dop { grid-template-columns: minmax(0, 1fr) auto auto auto; }
.v3-shagi { display: inline-flex; align-items: center; border: 1px solid var(--v3-line); border-radius: var(--radius); overflow: hidden; }
.v3-shagi button { width: 32px; height: 32px; border: 0; background: var(--v3-surface); cursor: pointer; font: 600 15px 'Montserrat', sans-serif; color: var(--v3-ink); }
.v3-shagi input { width: 40px; height: 32px; border: 0; text-align: center; font: 600 13px 'Montserrat', sans-serif; color: var(--v3-ink); -moz-appearance: textfield; }
.v3-shagi input::-webkit-outer-spin-button, .v3-shagi input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.v3-addons-itog { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--v3-line-faint); display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; }
.v3-addons-itog p { margin: 0; flex: 1 1 260px; font-size: 13px; line-height: 1.5; color: var(--v3-text-2); }
.v3-addons-itog button[disabled] { opacity: .45; cursor: default; box-shadow: none; }
@media (max-width: 760px) { .v3-addon-dop { grid-template-columns: minmax(0, 1fr) auto; } }

/* «Возможности» (витрина v3, раздел 5 ТЗ) */
.v3-btn-ghost { border: 1px solid rgba(255, 255, 255, .25); color: var(--v3-white) !important; }
.v3-voz-hero { padding: clamp(32px, 6vw, 72px) 0 clamp(24px, 4vw, 40px); }
.v3-voz-h1 { margin: 0; font-size: clamp(34px, 5vw, 64px); line-height: 1.02; letter-spacing: -.035em; font-weight: 700; }
.v3-voz-roli { margin-top: 28px; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.v3-voz-ya { font-size: 14px; font-weight: 700; margin-right: 6px; }
a.v3-voz-chip { display: inline-flex; align-items: center; }
a.v3-voz-chip[aria-pressed=true] { border-color: var(--v3-ink); background: var(--v3-ink); color: var(--v3-white) !important; }
.v3-voz-poisk { margin-top: 28px; position: relative; max-width: 720px; }
.v3-voz-poisk-h { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; margin-bottom: 10px; }
.v3-voz-poisk-h b { font-size: 14px; }
.v3-voz-poisk-h span { font-size: 13px; color: var(--v3-text-3); }
.v3-voz-pole { display: flex; align-items: center; gap: 10px; height: 56px; padding: 0 18px; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line-btn); box-shadow: 0 10px 30px -20px rgba(19, 23, 71, .35); }
.v3-voz-pole input { flex: 1; min-width: 0; height: 100%; border: 0; outline: 0; background: none; font: 500 15px 'Montserrat', sans-serif; color: var(--v3-ink); }
.v3-voz-lupa { position: relative; width: 18px; height: 18px; flex: none; }
.v3-voz-lupa::before { content: ''; position: absolute; left: 0; top: 0; width: 13px; height: 13px; border-radius: var(--radius-round); border: 2px solid var(--v3-ink); }
.v3-voz-lupa::after { content: ''; position: absolute; left: 11px; top: 12px; width: 7px; height: 2px; border-radius: var(--radius-check); background: var(--v3-ink); transform: rotate(45deg); }
.v3-voz-naydeno { position: absolute; left: 0; right: 0; top: calc(100% + 8px); z-index: 30; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); box-shadow: 0 30px 60px -24px rgba(19, 23, 71, .4); padding: 8px; max-height: 420px; overflow: auto; }
.v3-voz-nashel { width: 100%; display: block; text-align: left; padding: 12px 14px; border: 0; border-radius: var(--radius); background: none; cursor: pointer; font-family: 'Montserrat', sans-serif; color: var(--v3-ink); }
.v3-voz-nashel:hover, .v3-voz-nashel:focus { background: var(--v3-surface); }
.v3-voz-nashel span { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; }
.v3-voz-nashel b { font-size: 14px; }
.v3-voz-nashel small { font-size: 11.5px; color: var(--v3-text-4); white-space: nowrap; }
.v3-voz-nashel em { display: block; margin-top: 3px; font-style: normal; font-size: 12.5px; line-height: 1.45; color: var(--v3-text-3); }
.v3-voz-nichego { padding: 14px; font-size: 14px; line-height: 1.5; color: var(--v3-text-2); }
.v3-voz-telo { padding-top: clamp(16px, 3vw, 32px); display: flex; gap: 48px; align-items: flex-start; }
.v3-voz-oglav { flex: none; width: 236px; position: sticky; top: 96px; max-height: calc(100vh - 112px); overflow: auto; }
.v3-voz-oglav-h { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--v3-text-5); padding: 0 10px 8px; }
.v3-voz-oglav nav { display: flex; flex-direction: column; gap: 1px; }
.v3-voz-oglav-p { position: relative; display: flex; align-items: center; gap: 6px; padding: 8px 10px; border-radius: var(--radius); font-size: 13px; line-height: 1.3; font-weight: 500; transition: opacity .4s var(--v3-ease); }
.v3-voz-oglav-p::before { content: ''; position: absolute; left: 0; top: 8px; bottom: 8px; width: 2px; border-radius: var(--radius-check); background: var(--v3-accent); opacity: 0; transform: scaleY(.3); transition: opacity .3s, transform .3s var(--v3-ease); }
.v3-voz-oglav-p[aria-current=true] { font-weight: 700; background: var(--v3-surface-3); }
.v3-voz-oglav-p[aria-current=true]::before { opacity: 1; transform: none; }
.v3-voz-oglav-p i, .v3-voz-list-p i { font-style: normal; width: 22px; font-size: 11px; font-weight: 700; color: var(--v3-text-5); }
.v3-voz-oglav-p span, .v3-voz-list-p span { flex: 1; }
.v3-voz-oglav-p small, .v3-voz-list-p small { font-size: 11px; color: var(--v3-text-5); }
.v3-voz-oglav-p[data-chuzhoy], .v3-voz-list-p[data-chuzhoy] { opacity: .38; }
.v3-voz-tarify { margin: 18px 10px 0; display: block; font-size: 13px; }
.v3-voz-ya-rol { margin-bottom: 14px; padding: 10px 12px; border-radius: var(--radius); background: var(--v3-ink); color: var(--v3-white); display: flex; justify-content: space-between; align-items: center; gap: 8px; font-size: 12.5px; }
.v3-voz-ya-rol b { flex: 1; }
.v3-voz-ya-rol a { color: var(--v3-white) !important; background: var(--v3-on-dark-fill); border-radius: var(--radius); padding: 5px 8px; font-weight: 600; font-size: 11px; }
.v3-voz-razdely { flex: 1; min-width: 0; }
.v3-voz-razdel { padding: clamp(40px, 6vw, 72px) 0; border-top: 1px solid var(--v3-line-soft); transform-origin: 50% 0; transition: opacity .5s var(--v3-ease), transform .5s var(--v3-ease); scroll-margin-top: 96px; }
.v3-voz-razdel:first-child { border-top: 0; }
.v3-voz-razdel[data-chuzhoy] { opacity: .32; transform: scale(.99); }
.v3-voz-razdel-verh { display: flex; flex-wrap: wrap; gap: clamp(20px, 3vw, 40px); align-items: flex-start; }
.v3-voz-razdel-tekst { flex: 1 1 300px; min-width: 0; }
.v3-voz-razdel-tekst p { margin: 12px 0 0; font-size: 16px; line-height: 1.6; color: var(--v3-text-2); max-width: 440px; }
.v3-voz-nomer { display: flex; align-items: center; gap: 10px; }
.v3-voz-nomer i { font-style: normal; font-size: 13px; font-weight: 800; color: var(--v3-accent); }
.v3-voz-dlya { font-size: 11px; font-weight: 700; padding: 3px 9px; border-radius: var(--radius); background: var(--v3-accent-soft); color: var(--v3-accent-text); }
.v3-voz-h2 { margin: 10px 0 0; font-size: clamp(26px, 3vw, 38px); line-height: 1.1; letter-spacing: -.03em; font-weight: 700; }
.v3-voz-mini { flex: 1 1 360px; min-width: 0; max-width: 520px; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); box-shadow: var(--v3-shadow-card); overflow: hidden; }
.v3-voz-mini-h { padding: 14px 16px; border-bottom: 1px solid var(--v3-line-softer); display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.v3-voz-mini-h b { font-size: 13.5px; }
.v3-voz-mini-h small { font-size: 10.5px; color: var(--v3-text-5); }
.v3-voz-mini-telo { padding: 8px 16px 14px; }
.v3-voz-mini-s { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--v3-line-faint); }
.v3-voz-mini-s:last-child { border-bottom: 0; }
.v3-voz-mini-s span { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--v3-text-2); min-width: 0; }
.v3-voz-mini-s b { font-size: 14px; text-align: right; white-space: nowrap; }
.v3-voz-plokho { color: var(--v3-accent); }
.v3-voz-tochka { flex: none; width: 8px; height: 8px; border-radius: var(--radius-round); background: var(--v3-line-dash); }
.v3-voz-tochka-plokho { background: var(--v3-accent); }
.v3-voz-tochka-horosho { background: var(--v3-success); }
.v3-voz-karty { margin-top: 28px; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); gap: 10px; }
.v3-voz-karta { display: flex; flex-direction: column; padding: 16px; border-radius: var(--radius); background: var(--v3-white); border: 1px solid var(--v3-line); transition: box-shadow .3s, border-color .2s, opacity .4s; }
.v3-voz-karta[data-tiho] { opacity: .55; }
.v3-voz-karta[data-svoya] { border-color: var(--v3-ink); }
.v3-voz-karta[data-vspyshka] { border-color: var(--v3-accent); box-shadow: 0 0 0 3px rgba(214, 69, 69, .3); }
.v3-voz-karta h3 { margin: 0; font-size: 14px; font-weight: 700; line-height: 1.35; }
.v3-voz-karta p { margin: 6px 0 0; font-size: 13px; line-height: 1.5; color: var(--v3-text-3); flex: 1; }
.v3-voz-gde { margin-top: 12px; display: flex; gap: 6px; flex-wrap: wrap; }
.v3-voz-gde span { font-size: 11px; font-weight: 600; padding: 3px 8px; border-radius: var(--radius); background: var(--v3-surface-3); color: var(--v3-text-2); }
.v3-voz-plashka, .v3-voz-list, .v3-voz-list-fon { display: none; }
@media (max-width: 900px) {
  .v3-voz-oglav { display: none; }
  .v3-voz-razdel { scroll-margin-top: 128px; }
  .v3-voz-plashka { display: block; position: fixed; top: 64px; left: 0; right: 0; z-index: 40; padding: 8px 16px; background: rgba(252, 252, 253, .94); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid var(--v3-line-soft); opacity: 0; transform: translateY(-110%); pointer-events: none; transition: opacity .3s var(--v3-ease), transform .3s var(--v3-ease); }
  .v3-voz-plashka[data-vidna] { opacity: 1; transform: none; pointer-events: auto; }
  .v3-voz-plashka button { width: 100%; height: 44px; padding: 0 14px; border-radius: var(--radius); border: 1px solid var(--v3-line); background: var(--v3-white); display: flex; align-items: center; gap: 10px; cursor: pointer; font-family: 'Montserrat', sans-serif; color: var(--v3-ink); }
  .v3-voz-plashka i { font-style: normal; font-size: 11px; font-weight: 800; color: var(--v3-accent); }
  .v3-voz-plashka span { flex: 1; min-width: 0; text-align: left; font-size: 14px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .v3-voz-plashka small { font-size: 11.5px; color: var(--v3-text-5); white-space: nowrap; }
  .v3-voz-list-fon { display: block; position: fixed; inset: 0; z-index: 69; background: var(--v3-backdrop); }
  .v3-voz-list { display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 70; max-height: 78vh; overflow: auto; padding: 10px 12px calc(16px + env(safe-area-inset-bottom)); border-radius: var(--radius); background: var(--v3-white); box-shadow: 0 -20px 50px -20px rgba(19, 23, 71, .4); }
  .v3-voz-list-p { display: flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 12px; border-radius: var(--radius); font-size: 15px; line-height: 1.3; font-weight: 500; }
  .v3-voz-list-p[aria-current=true] { font-weight: 700; background: var(--v3-surface-3); }
  .v3-voz-list-fon[hidden], .v3-voz-list[hidden] { display: none !important; }
}
