/* Сетка страниц с боковой колонкой (рубрика, карточка, поиск, 404) — как в макетах: основная колонка + 300 px справа.
   Root задаёт #content.container фиксированной ширины; внутри — наша сетка вместо его #primary/#secondary. */
body.vk-new #content.site-content { width: auto; max-width: 1248px; margin: 0 auto; padding: 0 24px; box-sizing: border-box; }
body.vk-new.home #content.site-content { max-width: none; padding: 0; }
.vk-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 40px; align-items: start; padding: 4px 0 56px; }
.vk-main { min-width: 0; }
.vk-side { min-width: 0; padding-top: 22px; align-self: stretch; }
body.vk-new .vk-side #secondary, body.vk-new .vk-side .widget-area { width: auto; float: none; margin: 0; padding: 0; position: static; }
body.vk-new .vk-side .widget { margin: 0 0 20px; }
body.vk-new .vk-side .widget_search { display: none; } /* поиск уже в шапке */
body.vk-new .vk-side .vk-ad--sidebar { position: sticky; top: 16px; }
@media (max-width: 1000px) {
	.vk-layout { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.vk-side { display: none; }
}
@media (max-width: 640px) { body.vk-new #content.site-content { padding: 0 16px; } }

/* хлебные крошки и заголовки */
body.vk-new .breadcrumb { padding: 22px 0 14px; margin: 0; font-size: 14px; color: var(--vk-muted); }
body.vk-new .breadcrumb a, body.vk-new .breadcrumb span { color: var(--vk-blue); text-decoration: none; }
body.vk-new .breadcrumb .breadcrumb-separator { color: var(--vk-muted); margin: 0 6px; }
body.vk-new .vk-h1 { font: 600 clamp(26px, 3.2vw, 40px)/1.12 var(--vk-head); letter-spacing: -.03em; color: var(--vk-ink); margin: 0 0 14px; }
.vk-archive-head { margin-bottom: 8px; }

/* сетка выкроек в рубрике и поиске */
.vk-grid.vk-grid-3 { grid-template-columns: repeat(3, 1fr); margin-top: 22px; }
body.vk-new .vk-pc-title { font: 600 16px/1.35 var(--vk-text); letter-spacing: 0; margin: 10px 0 0; }
body.vk-new .vk-pc-title a { color: var(--vk-ink); text-decoration: none; }
body.vk-new .vk-pc:hover .vk-pc-title a { color: var(--vk-blue); }
.vk-pc .vk-pc-img { display: block; }
@media (max-width: 1000px) { .vk-grid.vk-grid-3 { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 680px) { .vk-grid.vk-grid-3 { grid-template-columns: repeat(2, 1fr); } body.vk-new .vk-pc-title { font-size: 14.5px; } }

/* пагинация */
body.vk-new .navigation.pagination { margin: 40px 0; }
body.vk-new .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
body.vk-new .nav-links .page-numbers { min-width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border-radius: 12px; border: 1px solid var(--vk-line); padding: 0 12px; color: var(--vk-ink); text-decoration: none; font-weight: 500; background: #fff; }
body.vk-new .nav-links .page-numbers.current { background: var(--vk-ink); color: #fff; border-color: var(--vk-ink); }
body.vk-new .nav-links .page-numbers.dots { border: 0; }
body.vk-new .nav-links a.page-numbers:hover { border-color: var(--vk-blue); color: var(--vk-blue); }

/* текст рубрики внизу и текст записи */
body.vk-new .vk-seo, body.vk-new .vk-content { color: var(--vk-ink2); font-size: 16px; line-height: 1.65; }
body.vk-new .vk-seo h2, body.vk-new .vk-content h2 { font: 600 22px/1.25 var(--vk-head); color: var(--vk-ink); margin: 28px 0 10px; letter-spacing: -.02em; }
body.vk-new .vk-seo h3, body.vk-new .vk-content h3 { font: 600 18px/1.3 var(--vk-text); color: var(--vk-ink); margin: 22px 0 8px; }
body.vk-new .vk-content a, body.vk-new .vk-seo a { color: var(--vk-blue); }
body.vk-new .vk-content { padding: 0; }
body.vk-new .vk-content p { margin: 0 0 12px; }
body.vk-new .vk-content img { border-radius: 12px; }

/* карточка: две колонки сверху — фото и описание со скачиванием */
@media (min-width: 1001px) { .vk-card-top { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); } }
.vk-archive-lead { color: var(--vk-ink2); font-size: 17px; margin: -4px 0 14px; max-width: 64ch; }
.vk-list-head { display: flex; justify-content: space-between; align-items: baseline; margin: 26px 0 0; }
.vk-list-head b { font: 600 19px/1.2 var(--vk-head); color: var(--vk-ink); }
.vk-list-head span { color: var(--vk-muted); font-size: 14px; }
