/* --- .vg-hero-bg (фиксированный аврора-градиент фона) — копия 1:1 из docs-archive.css/home.css, разметка печатается в wp_body_open при is_singular('docs') --- */

.vg-hero-bg {
  pointer-events: none;
  position: fixed;
  inset: 0;
  z-index: -20;
  overflow: hidden;
  background: #FFF8DF;
}

.vg-hero-bg__mesh {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 52rem;
  opacity: .9;
}

.vg-hero-bg__beam {
  position: absolute;
  left: -10rem;
  top: -7rem;
  height: 40rem;
  width: 30rem;
  transform: rotate(12deg);
  opacity: .7;
}

.vg-hero-bg__noise {
  position: absolute;
  inset: 0;
}

.mesh-bg {
  background:
    radial-gradient(circle at -4% 4%, rgba(0,148,255,.98) 0%, rgba(0,154,255,.82) 15%, transparent 34%),
    radial-gradient(circle at 11% 10%, rgba(0,45,150,.9) 0%, rgba(0,83,200,.6) 12%, transparent 28%),
    radial-gradient(circle at 30% 9%, rgba(187,235,255,.96) 0%, rgba(216,246,255,.7) 19%, transparent 39%),
    radial-gradient(circle at 55% 8%, rgba(255,239,40,.98) 0%, rgba(255,226,35,.85) 26%, transparent 48%),
    radial-gradient(circle at 80% 10%, rgba(255,158,15,.92) 0%, rgba(255,110,34,.78) 24%, transparent 46%),
    radial-gradient(circle at 104% 8%, rgba(255,24,90,.92) 0%, rgba(255,92,128,.74) 26%, transparent 49%),
    radial-gradient(circle at 92% 45%, rgba(255,137,178,.55) 0%, rgba(255,200,210,.6) 28%, transparent 54%),
    linear-gradient(180deg, rgba(255,252,231,0) 0%, rgba(255,248,223,.76) 66%, #FFF8DF 100%);
  filter: blur(18px) saturate(1.16);
  transform: scale(1.06);
}

.left-blue-beam {
  background: radial-gradient(ellipse at center, rgba(0,32,128,.9) 0%, rgba(0,90,210,.55) 38%, transparent 72%);
  filter: blur(44px);
}

.soft-noise {
  background-image: radial-gradient(rgba(255,255,255,.8) 1px, transparent 1px);
  background-size: 3px 3px;
  opacity: .08;
  mix-blend-mode: soft-light;
}
/* docs-single.css — стили страницы /docs/{slug}/, по макету Site/v2/doc-post.html */

/* --- Hero --- */

.elementor-element-docs-single-hero-root {
  border-bottom: var(--vg-border-width) solid var(--vg-ink);
  background-color: rgba(255, 255, 255, .35);
  backdrop-filter: blur(12px);
  padding: 40px 16px !important;
}
@media (min-width: 640px) { .elementor-element-docs-single-hero-root { padding: 56px 24px !important; } }
@media (min-width: 1025px) { .elementor-element-docs-single-hero-root { padding: 56px 32px !important; } }

.elementor-element-docs-single-hero-root-html .elementor-shortcode { width: 100%; max-width: 1600px; margin: 0 auto; }

.vgdoc-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(22, 32, 50, .55);
}
.vgdoc-breadcrumb a { color: inherit; text-decoration: none; }
.vgdoc-breadcrumb a:hover { color: var(--vg-primary); }
.vgdoc-breadcrumb svg { width: 12px; height: 12px; flex-shrink: 0; }
.vgdoc-breadcrumb .is-current { color: var(--vg-ink); }

.vgdoc-single-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 32px 0 0;
  padding: 8px 16px;
  border-radius: var(--vg-radius-pill);
  border: 1px solid var(--vg-ink);
  background-color: var(--vg-yellow);
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--vg-ink) !important;
  text-decoration: none !important;
  transition: background-color .15s ease, color .15s ease;
}
.vgdoc-single-badge:hover { background-color: var(--vg-ink); color: #FFFFFF !important; }
.vgdoc-single-badge svg { width: 17px; height: 17px; }

.vgdoc-single-h1 {
  margin: 28px 0 0;
  max-width: 64rem;
  font-family: var(--vg-font-body);
  font-size: 48px;
  font-weight: 500;
  line-height: .92;
  letter-spacing: -0.06em;
  color: var(--vg-ink);
}
@media (min-width: 640px) { .vgdoc-single-h1 { font-size: 72px; } }
@media (min-width: 1025px) { .vgdoc-single-h1 { font-size: 96px; } }

.vgdoc-single-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 28px 0 0;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: rgba(22, 32, 50, .6);
}
.vgdoc-single-meta span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: var(--vg-radius-pill);
  border: 1px solid rgba(22, 32, 50, .3);
  background-color: rgba(255, 255, 255, .55);
}
.vgdoc-single-meta svg { width: 16px; height: 16px; }

.vgdoc-single-lead {
  margin: 28px 0 0;
  max-width: 48rem;
  padding-left: 20px;
  border-left: var(--vg-border-width) solid var(--vg-ink);
  font-family: var(--vg-font-body);
  font-size: 16px;
  line-height: 1.625;
  color: rgba(22, 32, 50, .7);
}
@media (min-width: 640px) { .vgdoc-single-lead { font-size: 18px; } }

/* --- Body grid wrapper --- */

.elementor-element-docs-single-body-root {
  background-color: rgba(255, 248, 223, .8);
  padding: 48px 16px !important;
}
@media (min-width: 640px) { .elementor-element-docs-single-body-root { padding: 64px 24px !important; } }
@media (min-width: 1025px) { .elementor-element-docs-single-body-root { padding: 64px 32px !important; } }

.vgdoc-single-grid {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  display: grid;
  gap: 32px;
}
@media (min-width: 1025px) {
  .vgdoc-single-grid { grid-template-columns: minmax(0,3fr) minmax(0,6fr) minmax(0,3fr); gap: 40px; align-items: start; }
}

/* --- Left sidebar: category map (native betterdocs_sidebar_list, recolored) --- */

.vgdoc-single-sidebar-left { display: block; }
@media (min-width: 1025px) { .vgdoc-single-sidebar-left { position: sticky; top: 112px; } }

.vgdoc-single-sidebar-left .betterdocs-sidebar-list-wrapper {
  overflow: hidden;
  border-radius: var(--vg-radius-card);
  border: var(--vg-border-width) solid var(--vg-ink);
  background-color: rgba(255, 255, 255, .6);
  backdrop-filter: blur(12px);
}
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list {
  border-bottom: 1px solid rgba(22, 32, 50, .2);
}
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list:last-child { border-bottom: none; }
.vgdoc-single-sidebar-left .betterdocs-category-header-inner {
  padding: 16px 20px;
  font-family: var(--vg-font-body);
  font-size: 14px;
  font-weight: 500;
  color: var(--vg-ink);
}
.vgdoc-single-sidebar-left .betterdocs-category-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer; }
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list:not(.active) .betterdocs-category-header-inner:hover { background-color: rgba(22, 32, 50, .05); }
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.active .betterdocs-category-header-inner:hover { background-color: rgba(255, 255, 255, .06); }
.vgdoc-single-sidebar-left .betterdocs-category-title { flex: 1 1 auto; margin: 0; font-size: 14px; font-weight: 500; }
.vgdoc-single-sidebar-left .betterdocs-category-title a { color: inherit; text-decoration: none; }
.vgdoc-single-sidebar-left .betterdocs-category-title a:hover { text-decoration: underline; }
.vgdoc-single-sidebar-left .betterdocs-category-items-counts { font-family: var(--vg-font-mono); font-size: 12px; opacity: .45; }
.vgdoc-single-sidebar-left .vgdoc-sidebar-chevron { width: 14px; height: 14px; flex-shrink: 0; margin-left: 4px; opacity: .4; transition: transform .2s ease; }
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.is-open .vgdoc-sidebar-chevron { transform: rotate(180deg); }
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.active .vgdoc-sidebar-chevron { opacity: 1; color: var(--vg-yellow); }

.vgdoc-single-sidebar-left .betterdocs-body { display: none; padding: 0 20px 16px; }
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.active .betterdocs-body,
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.is-open .betterdocs-body { display: block; }
.vgdoc-single-sidebar-left .betterdocs-articles-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid rgba(255, 255, 255, .2); padding-top: 8px; }
.vgdoc-single-sidebar-left .betterdocs-articles-list li { margin: 0; }
.vgdoc-single-sidebar-left .betterdocs-articles-list li svg { display: none; }
.vgdoc-single-sidebar-left .betterdocs-articles-list a {
  display: block;
  padding: 8px 0;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  color: rgba(22, 32, 50, .65) !important;
  text-decoration: none !important;
}
.vgdoc-single-sidebar-left .betterdocs-articles-list a:hover { color: var(--vg-ink) !important; }

/* активная категория текущей статьи выделяется ink-фоном, как в макете */
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.active {
  background-color: var(--vg-ink);
}
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.active .betterdocs-category-header-inner,
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.active .betterdocs-category-title { color: #FFFFFF; }
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.active .betterdocs-category-items-counts { color: var(--vg-yellow); opacity: 1; }
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.active .betterdocs-articles-list { border-top-color: rgba(255,255,255,.2); }
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.active .betterdocs-articles-list a { color: rgba(255,255,255,.65) !important; }
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.active .betterdocs-articles-list a:hover,
.vgdoc-single-sidebar-left article.betterdocs-sidebar-list.active .betterdocs-articles-list a.active { color: #64C8FF !important; font-weight: 600; }

/* --- Middle column: article --- */

.vgdoc-single-content { min-width: 0; display: flex; flex-direction: column; gap: 32px; }

.vgdoc-single-article {
  display: block;
  border-radius: var(--vg-radius-card);
  border: var(--vg-border-width) solid var(--vg-ink);
  background-color: rgba(255, 255, 255, .8);
  backdrop-filter: blur(12px);
  box-shadow: var(--vg-shadow);
  padding: 24px;
}
@media (min-width: 640px) { .vgdoc-single-article { padding: 40px; } }

.vgdoc-single-article > * + * { margin-top: 20px; }
.vgdoc-single-article > h2:not(:first-child) {
  margin-top: 56px;
  padding-top: 40px;
  border-top: 1px solid rgba(22, 32, 50, .15);
}
.vgdoc-single-article .vgdoc-eyebrow {
  display: block;
  margin: 0 0 12px;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: var(--vg-primary);
}
.vgdoc-single-article h2 {
  margin: 0;
  font-family: var(--vg-font-body);
  font-size: 30px;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--vg-ink);
}
@media (min-width: 640px) { .vgdoc-single-article h2 { font-size: 36px; } }
.vgdoc-single-article p { margin: 0; line-height: 1.625; color: rgba(22, 32, 50, .75); }
.vgdoc-single-article a { color: var(--vg-primary); font-weight: 600; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
.vgdoc-single-article a:hover { color: var(--vg-ink); }

.vgdoc-checklist { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; font-size: 14px; line-height: 1.625; color: rgba(22, 32, 50, .75); }
@media (min-width: 640px) { .vgdoc-checklist { font-size: 16px; } }
.vgdoc-checklist li { display: flex; gap: 12px; }
.vgdoc-checklist svg { width: 22px; height: 22px; flex-shrink: 0; margin-top: 2px; color: var(--vg-green); }
.vgdoc-checklist strong { font-weight: 600; color: var(--vg-ink); }

.vgdoc-steps { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 20px; counter-reset: vgdoc-step; }
.vgdoc-steps li { display: flex; gap: 16px; }
.vgdoc-steps .vgdoc-step-num {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: var(--vg-radius-control);
  border: var(--vg-border-width) solid var(--vg-ink);
  background-color: var(--vg-yellow);
  font-size: 14px;
  font-weight: 600;
  color: var(--vg-ink);
}
.vgdoc-steps p { padding-top: 4px; margin: 0; font-size: 14px; line-height: 1.625; color: rgba(22, 32, 50, .75); }
@media (min-width: 640px) { .vgdoc-steps p { font-size: 16px; } }

.vgdoc-callout {
  border-radius: var(--vg-radius-control);
  border: var(--vg-border-width) solid;
  padding: 20px;
}
.vgdoc-callout p { margin: 0; }
.vgdoc-callout p + p { margin-top: 8px; }
.vgdoc-callout-label {
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .14em;
}
.vgdoc-callout--tip { border-color: var(--vg-green); background-color: rgba(22, 164, 119, .1); }
.vgdoc-callout--tip .vgdoc-callout-label { color: var(--vg-green); }
.vgdoc-callout--warn { border-color: var(--vg-orange); background-color: rgba(255, 118, 24, .1); }
.vgdoc-callout--warn .vgdoc-callout-label { color: var(--vg-orange); }

.vgdoc-single-article .vgdoc-updated {
  margin-top: 48px !important;
  padding-top: 24px;
  border-top: 1px solid rgba(22, 32, 50, .15);
  font-family: var(--vg-font-mono);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(22, 32, 50, .45);
}

/* --- Feedback box --- */

.vgdoc-single-feedback-box {
  border-radius: var(--vg-radius-card);
  border: var(--vg-border-width) solid var(--vg-ink);
  background-color: rgba(255, 255, 255, .65);
  padding: 24px;
}
@media (min-width: 640px) { .vgdoc-single-feedback-box { padding: 32px; } }
.vgdoc-single-feedback-label {
  margin: 0;
  font-family: var(--vg-font-mono);
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(22, 32, 50, .65);
}
.vgdoc-feedback-buttons { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.vgdoc-feedback-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 16px;
  border-radius: var(--vg-radius-control);
  border: var(--vg-border-width) solid var(--vg-ink);
  background-color: #FFFFFF;
  font-family: var(--vg-font-body);
  font-size: 14px;
  font-weight: 500;
  color: var(--vg-ink);
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease;
}
.vgdoc-feedback-btn svg { width: 20px; height: 20px; }
.vgdoc-feedback-btn[data-feedback="good"]:hover, .vgdoc-feedback-btn[data-feedback="good"][aria-pressed="true"] { background-color: var(--vg-green); color: #FFFFFF; }
.vgdoc-feedback-btn[data-feedback="okay"]:hover, .vgdoc-feedback-btn[data-feedback="okay"][aria-pressed="true"] { background-color: var(--vg-orange); color: #FFFFFF; }
.vgdoc-feedback-btn[data-feedback="bad"]:hover, .vgdoc-feedback-btn[data-feedback="bad"][aria-pressed="true"] { background-color: var(--vg-red); color: #FFFFFF; }
.vgdoc-feedback-message { margin: 16px 0 0; min-height: 20px; font-size: 14px; color: rgba(22, 32, 50, .65); }

/* --- Prev/next --- */

.vgdoc-single-prevnext { display: grid; gap: 16px; }
@media (min-width: 640px) { .vgdoc-single-prevnext { grid-template-columns: 1fr 1fr; } }
.vgdoc-pn-card {
  display: flex;
  min-height: 112px;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  border-radius: var(--vg-radius-card);
  border: var(--vg-border-width) solid var(--vg-ink);
  background-color: rgba(255, 255, 255, .65);
  padding: 20px;
  text-decoration: none !important;
  transition: background-color .15s ease, color .15s ease;
}
.vgdoc-pn-card:hover { background-color: var(--vg-ink); color: #FFFFFF; }
.vgdoc-pn-card.is-empty { border-color: rgba(22, 32, 50, .2); background-color: rgba(255, 255, 255, .35); color: rgba(22, 32, 50, .4); }
.vgdoc-pn-label {
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .12em;
}
.vgdoc-pn-title { font-family: var(--vg-font-body); font-size: 14px; font-weight: 500; color: inherit; }

/* --- Also in category --- */

.vgdoc-single-related { margin: 0; }
.vgdoc-single-related h2 {
  margin: 0 0 20px;
  font-family: var(--vg-font-body);
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--vg-ink);
}
.vgdoc-single-related ul {
  list-style: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border-radius: var(--vg-radius-card);
  border: var(--vg-border-width) solid var(--vg-ink);
  background-color: rgba(255, 255, 255, .6);
}
.vgdoc-single-related li { border-bottom: 1px solid rgba(22, 32, 50, .25); }
.vgdoc-single-related li:last-child { border-bottom: none; }
.vgdoc-single-related a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px;
  text-decoration: none !important;
  transition: background-color .15s ease;
}
.vgdoc-single-related a:hover { background-color: #FFFFFF; }
.vgdoc-single-related a span:first-child { font-family: var(--vg-font-body); font-size: 14px; font-weight: 500; color: var(--vg-ink); }
.vgdoc-single-related-time { font-family: var(--vg-font-mono); font-size: 12px; text-transform: uppercase; letter-spacing: .1em; opacity: .5; color: var(--vg-ink); flex-shrink: 0; }

/* --- Right sidebar --- */

.vgdoc-single-sidebar-right { display: flex; flex-direction: column; gap: 24px; }
@media (min-width: 1025px) { .vgdoc-single-sidebar-right { position: sticky; top: 112px; } }

.vgdoc-single-toc:empty { display: none; }
.vgdoc-single-toc .betterdocs-toc {
  border-radius: var(--vg-radius-card);
  border: var(--vg-border-width) solid var(--vg-ink);
  background-color: rgba(255, 255, 255, .6);
  backdrop-filter: blur(12px);
  padding: 20px;
}
.vgdoc-single-toc .toc-title {
  display: block;
  margin: 0 0 16px;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .16em;
  color: rgba(22, 32, 50, .55);
}
.vgdoc-single-toc .toc-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.vgdoc-single-toc .toc-list li { margin: 0; }
.vgdoc-single-toc .toc-list a {
  display: block;
  padding: 8px 12px;
  border-left: 2px solid transparent;
  border-radius: 8px;
  font-size: 14px;
  color: var(--vg-ink) !important;
  text-decoration: none !important;
}
.vgdoc-single-toc .toc-list a:hover { background-color: #FFFFFF; }
.vgdoc-single-toc .toc-list a.active {
  border-left-color: var(--vg-primary);
  background-color: #FFFFFF;
  font-weight: 600;
  color: var(--vg-primary) !important;
}

.vgdoc-single-catcard {
  border-radius: var(--vg-radius-card);
  border: var(--vg-border-width) solid var(--vg-ink);
  background-color: var(--vg-yellow);
  padding: 20px;
}
.vgdoc-single-catcard-head { display: flex; align-items: center; gap: 12px; }
.vgdoc-single-catcard-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: var(--vg-radius-control);
  border: var(--vg-border-width) solid var(--vg-ink);
  background-color: var(--vg-red);
  color: #FFFFFF;
}
.vgdoc-single-catcard-icon svg { width: 22px; height: 22px; }
.vgdoc-single-catcard-name { margin: 0; font-family: var(--vg-font-body); font-size: 14px; font-weight: 500; color: var(--vg-ink); }
.vgdoc-single-catcard-count { margin: 2px 0 0; font-family: var(--vg-font-mono); font-size: 12px; text-transform: uppercase; letter-spacing: .1em; opacity: .55; color: var(--vg-ink); }
.vgdoc-single-catcard-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 20px;
  font-family: var(--vg-font-body);
  font-size: 14px;
  font-weight: 500;
  color: var(--vg-ink) !important;
  text-decoration: none !important;
}
.vgdoc-single-catcard-link:hover { color: var(--vg-primary) !important; }

.vgdoc-single-share-box {
  border-radius: var(--vg-radius-card);
  border: var(--vg-border-width) solid var(--vg-ink);
  background-color: rgba(255, 255, 255, .6);
  padding: 20px;
}
.vgdoc-single-share-label {
  margin: 0 0 16px;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .16em;
  color: rgba(22, 32, 50, .55);
}
.vgdoc-share-links { display: flex; flex-direction: column; gap: 8px; }
.vgdoc-share-link {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  padding: 0 12px;
  border-radius: var(--vg-radius-control);
  border: 1px solid rgba(22, 32, 50, .3);
  background: none;
  font-family: var(--vg-font-body);
  font-size: 14px;
  color: var(--vg-ink) !important;
  text-decoration: none !important;
  cursor: pointer;
  text-align: left;
  transition: background-color .15s ease, color .15s ease;
}
.vgdoc-share-link svg { width: 18px; height: 18px; flex-shrink: 0; }
.vgdoc-share-link:hover { background-color: var(--vg-ink); color: #FFFFFF !important; }

/* --- CTA (переиспользует [vg_docs_cta], контейнер отдельный от архива) --- */

.elementor-element-docs-single-cta-root {
  position: relative;
  overflow: hidden;
  background-color: var(--vg-yellow) !important;
  border-top: var(--vg-border-width) solid var(--vg-ink);
  padding: 56px 16px !important;
}
.elementor-element-docs-single-cta-root::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: .6;
  background:
    radial-gradient(circle at 15% 10%, rgba(0,148,255,.8), transparent 35%),
    radial-gradient(circle at 90% 70%, rgba(255,24,90,.7), transparent 38%);
  filter: blur(40px);
  pointer-events: none;
}
@media (min-width: 640px) { .elementor-element-docs-single-cta-root { padding: 64px 24px !important; } }
@media (min-width: 1025px) { .elementor-element-docs-single-cta-root { padding: 64px 32px !important; } }

/* --- Mobile: сайдбары после статьи, порядок из макета сохраняется через grid --- */

@media (max-width: 1024px) {
  .vgdoc-single-grid { grid-template-columns: 1fr; }
  .vgdoc-single-sidebar-right { position: static; }
}

.vgdoc-cta-in {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
@media (min-width: 1025px) { .vgdoc-cta-in { flex-direction: row; align-items: center; justify-content: space-between; } }

.vgdoc-cta-eyebrow {
  margin: 0 0 12px;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .16em;
  color: rgba(22, 32, 50, .7);
}
.vgdoc-cta-h2 {
  margin: 0;
  font-family: var(--vg-font-body);
  font-size: 34px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.055em;
  color: var(--vg-ink);
}
@media (min-width: 640px) { .vgdoc-cta-h2 { font-size: 52px; } }
.vgdoc-cta-h2 em { font-family: var(--vg-font-serif); font-style: italic; font-weight: 500; }
.vgdoc-cta-lead { margin: 16px 0 0; max-width: 40rem; font-family: var(--vg-font-body); font-size: 15px; line-height: 1.6; color: rgba(22, 32, 50, .7); }

.vgdoc-cta-btn {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  min-height: 64px;
  padding: 0 24px;
  border-radius: var(--vg-radius-control);
  border: var(--vg-border-width) solid var(--vg-ink);
  background-color: var(--vg-ink);
  box-shadow: var(--vg-shadow);
  font-family: var(--vg-font-body);
  font-size: 14px;
  font-weight: 500;
  color: #FFFFFF !important;
  text-decoration: none !important;
  transition: background-color .15s ease, transform .15s ease;
}
.vgdoc-cta-btn:hover { background-color: var(--vg-primary); transform: translate(2px, 2px); box-shadow: calc(var(--vg-shadow-offset) - 2px) calc(var(--vg-shadow-offset) - 2px) 0 var(--vg-ink); }
.vgdoc-cta-btn svg { width: 22px; height: 22px; flex-shrink: 0; }