/* vavada-bonuses.cfd — архетип ledger, ns .vbf-, ведущий акцент --blue */

:root{
  --bg:#191929;        /* основной тёмно-синий фон */
  --surface:#1c2240;   /* панели, карточки */
  --surface-2:#212132; /* вложенные блоки, строки таблиц */
  --raise:#302e40;     /* приподнятые элементы, hover */
  --line:#40445a;      /* границы */
  --line-2:#4d5a85;    /* светлая граница, разделители */
  --crimson:#871628;   /* фирменный тёмно-красный */
  --red:#fe284a;       /* яркий акцент, CTA */
  --gold:#ffde26;      /* золото, цифры, выделения */
  --gold-2:#e8ce3a;    /* приглушённое золото */
  --blue:#30a2d9;      /* холодный акцент */
  --text:#ffffff;
  --muted:#b99e7c;     /* приглушённый текст */
  --muted-2:#646a87;   /* подписи, мелочь */
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:"Source Sans 3",system-ui,Arial,sans-serif;
  font-size:17px;
  line-height:1.62;
  -webkit-text-size-adjust:100%;
}

h1,h2,h3,.vbf-kpi-val,.vbf-tbl th,.vbf-brandmark{
  font-family:"Roboto Slab",Georgia,serif;
  font-weight:600;
  letter-spacing:.1px;
}

p{margin:0 0 14px}
a{color:var(--blue);text-decoration:none;border-bottom:1px solid rgba(48,162,217,.45)}
a:hover{color:var(--gold);border-bottom-color:var(--gold)}

img{max-width:100%;height:auto;display:block}

.vbf-wrap{max-width:1140px;margin:0 auto;padding:0 18px}

/* ——— шапка-ведомость ——— */
.vbf-ledgerbar{
  border-bottom:1px solid var(--line-2);
  background:linear-gradient(180deg,#4d5a85,rgba(70,82,121,0));
}
.vbf-ledgerbar-in{
  display:flex;flex-wrap:wrap;align-items:center;gap:14px;
  padding:12px 0;
}
.vbf-brandmark{
  display:flex;align-items:center;gap:9px;
  font-size:20px;color:var(--text);
}
.vbf-brandmark svg{flex:none}
.vbf-stampline{
  margin-left:auto;font-size:13px;color:var(--text);
  letter-spacing:.4px;text-transform:uppercase;
}
.vbf-stampline span{color:var(--gold)}

/* ——— общая разграфка ——— */
.vbf-sheet{
  background:
    repeating-linear-gradient(180deg,transparent 0 33px,rgba(77,90,133,.16) 33px 34px);
}
.vbf-sec{
  border-top:1px solid var(--line);
  padding:34px 0 30px;
}
.vbf-sec-head{
  display:grid;grid-template-columns:74px 1fr;gap:0;
  border:1px solid var(--line);
  border-left:3px solid var(--blue);
  background:var(--surface);
  margin-bottom:20px;
}
.vbf-sec-no{
  display:flex;align-items:center;justify-content:center;
  border-right:1px solid var(--line);
  font-family:"Roboto Slab",Georgia,serif;
  font-size:22px;color:var(--blue);
  background:var(--surface-2);
  font-variant-numeric:tabular-nums;
}
.vbf-sec-head h2{
  margin:0;padding:14px 18px;font-size:25px;line-height:1.24;
}
h3{
  font-size:19px;margin:24px 0 10px;padding-left:12px;
  border-left:2px solid var(--gold-2);color:var(--text);
}

/* ——— первый экран ——— */
.vbf-hero{
  border-bottom:1px solid var(--line);
  padding:30px 0 34px;
}
.vbf-hero-grid{
  display:grid;grid-template-columns:1.25fr .95fr;gap:26px;align-items:start;
}
.vbf-hero h1{
  margin:0 0 14px;font-size:35px;line-height:1.18;
}
.vbf-hero h1 em{font-style:normal;color:var(--blue)}
.vbf-lead{color:#e4e6f2;font-size:18px;margin-bottom:18px}
.vbf-hero-shot{
  border:1px solid var(--line-2);
  background:var(--surface);
  padding:7px;
}
.vbf-hero-shot img{width:100%}
.vbf-cap{
  font-size:13px;color:var(--muted-2);
  border-top:1px solid var(--line);
  margin-top:7px;padding-top:6px;
}

/* ——— KPI: пять граф ——— */
.vbf-kpi{
  display:grid;grid-template-columns:repeat(5,1fr);
  border:1px solid var(--line-2);
  margin:0 0 20px;
}
.vbf-kpi-cell{
  padding:12px 13px;
  border-right:1px solid var(--line);
  background:var(--surface-2);
}
.vbf-kpi-cell:last-child{border-right:0}
.vbf-kpi-key{
  display:block;font-size:11px;letter-spacing:1.1px;text-transform:uppercase;
  color:var(--muted-2);margin-bottom:5px;
}
.vbf-kpi-val{
  display:block;font-size:22px;color:var(--gold);
  font-variant-numeric:tabular-nums;line-height:1.2;
}
.vbf-kpi-cell--lead .vbf-kpi-val{color:var(--blue)}

/* ——— кнопки ——— */
.vbf-cta{
  display:inline-block;padding:14px 26px;
  background:var(--red);color:var(--text);
  border:0;border-bottom:3px solid var(--crimson);
  font-family:"Roboto Slab",Georgia,serif;font-size:17px;
  letter-spacing:.3px;
}
.vbf-cta:hover{background:var(--crimson);color:var(--gold);border-bottom-color:var(--red)}
.vbf-cta-line{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:8px}
.vbf-cta-note{font-size:13px;color:var(--muted)}

/* ——— таблицы, ядро архетипа ——— */
.vbf-tw{overflow-x:auto;border:1px solid var(--line-2);margin:0 0 16px}
.vbf-tbl{
  border-collapse:collapse;width:100%;min-width:560px;
  font-size:15.5px;font-variant-numeric:tabular-nums;
}
.vbf-tbl caption{
  text-align:left;padding:10px 12px;font-size:13px;color:var(--muted-2);
  border-bottom:1px solid var(--line);background:var(--surface);
  letter-spacing:.6px;text-transform:uppercase;
}
.vbf-tbl th,.vbf-tbl td{
  border:1px solid var(--line);
  padding:9px 12px;text-align:left;vertical-align:top;
}
.vbf-tbl th{
  background:var(--surface);color:var(--blue);
  font-size:13px;letter-spacing:.5px;text-transform:uppercase;font-weight:600;
}
.vbf-tbl tbody tr:nth-child(odd){background:var(--surface-2)}
.vbf-tbl tbody tr:nth-child(even){background:rgba(28,34,64,.55)}
.vbf-tbl tbody tr:hover{background:var(--raise)}
.vbf-tbl tfoot td{
  background:var(--surface);color:var(--gold);
  border-top:2px solid var(--line-2);
}
.vbf-num{color:var(--gold);font-variant-numeric:tabular-nums;white-space:nowrap}
.vbf-acc{color:var(--blue)}
.vbf-warm{color:var(--muted)}
.vbf-key{color:var(--gold-2);font-weight:600}

/* ——— каталог-галерея: таблица с колонками ——— */
.vbf-cat .vbf-tbl{min-width:760px}
.vbf-cat td:first-child{width:158px;padding:8px}
.vbf-shot{
  border:1px solid var(--line-2);
  background:#0f1020;
  padding:4px;
}
.vbf-shot img{width:100%}
.vbf-catnote{font-size:13.5px;color:var(--muted-2);margin-top:3px}

/* ——— полосы-графы ——— */
.vbf-lines{border:1px solid var(--line);background:var(--surface)}
.vbf-line{
  display:grid;grid-template-columns:200px 1fr;
  border-bottom:1px solid var(--line);
}
.vbf-line:last-child{border-bottom:0}
.vbf-line dt{
  padding:11px 14px;border-right:1px solid var(--line);
  background:var(--surface-2);color:var(--blue);font-size:14.5px;
  letter-spacing:.3px;
}
.vbf-line dd{margin:0;padding:11px 14px;font-size:16px}

/* ——— врезки ——— */
.vbf-band{
  border:1px solid var(--line-2);border-left:3px solid var(--gold-2);
  background:var(--surface);padding:14px 16px;margin:0 0 16px;
}
.vbf-band p:last-child{margin-bottom:0}
.vbf-split{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.vbf-banner{border:1px solid var(--line-2);background:var(--surface);padding:7px}

.vbf-review{
  border:1px solid var(--line);border-top:3px solid var(--blue);
  background:var(--surface-2);padding:15px 17px;
}
.vbf-review-sign{font-size:13.5px;color:var(--muted);margin-top:8px}

/* ——— FAQ ——— */
.vbf-faq details{
  border:1px solid var(--line);border-left:3px solid var(--crimson);
  background:var(--surface-2);margin-bottom:8px;
}
.vbf-faq summary{
  cursor:pointer;padding:12px 15px;font-size:16.5px;color:var(--text);
  list-style:none;font-family:"Roboto Slab",Georgia,serif;
}
.vbf-faq summary::-webkit-details-marker{display:none}
.vbf-faq summary::before{content:"№ ";color:var(--blue)}
.vbf-faq details[open]{border-left-color:var(--blue);background:var(--surface)}
.vbf-faq p{padding:0 15px 13px;margin:0;color:#e2e4f0;font-size:16px}

/* ——— подвал ——— */
.vbf-foot{
  border-top:1px solid var(--line-2);
  background:var(--surface);
  padding:24px 0 30px;font-size:14.5px;color:#cfd3e4;
}
.vbf-foot-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.vbf-foot dl{margin:0}
.vbf-age{
  margin-top:16px;padding:11px 14px;
  border:1px solid var(--line);border-left:3px solid var(--red);
  background:var(--surface-2);color:var(--muted);font-size:14px;
}
.vbf-copy{margin-top:12px;color:var(--muted-2);font-size:13px}

/* ——— мобильная раскладка ——— */
@media (max-width:640px){
  body{font-size:16.5px}
  .vbf-wrap{padding:0 14px}
  .vbf-hero-grid{grid-template-columns:1fr;gap:18px}
  .vbf-hero h1{font-size:26px}
  .vbf-lead{font-size:17px}
  .vbf-kpi{grid-template-columns:1fr 1fr}
  .vbf-kpi-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
  .vbf-kpi-cell:nth-child(2n){border-right:0}
  .vbf-kpi-cell:last-child{grid-column:1/-1;border-bottom:0}
  .vbf-sec-head{grid-template-columns:52px 1fr}
  .vbf-sec-head h2{font-size:21px;padding:11px 13px}
  .vbf-sec-no{font-size:18px}
  .vbf-split{grid-template-columns:1fr}
  .vbf-line{grid-template-columns:1fr}
  .vbf-line dt{border-right:0;border-bottom:1px solid var(--line)}
  .vbf-foot-grid{grid-template-columns:1fr}
  .vbf-stampline{margin-left:0;width:100%;font-size:12px}
  .vbf-cta{width:100%;text-align:center}
}
