/* ==================================================================
   COLCHUGA — раздел «Новости» (03.11.2026, правки Вероники, креативный директор «Щит и Меч»):
   фон серый «асфальт», темы статей кнопками, «Смотреть все статьи» сверху,
   новости горизонтальными строками по одной, раздел видео.
   .nh-*  — блок «Новости» на главной;  .cb-page--news / .nw-* — /nash-blog, темы, видео.
   Статьи (/blog/{slug}) этот файл не трогает.
   ================================================================== */

/* асфальтовое зерно: лёгкий шум поверх серого */
.nh, .cb-page--news {
    --nw-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------------- /nash-blog: асфальт вместо почти чёрного ---------------- */
.cb-page--news { background: #393b3e; }
.cb-page--news .cb {
    --cb-bg: #393b3e;
    --cb-bg2: #2f3134;
    --cb-bg3: #46494d;
    --cb-line: rgba(238, 236, 228, .14);
    --cb-line2: rgba(238, 236, 228, .26);
    --cb-text: #f0eee6;
    --cb-soft: #d3d1c6;
    --cb-mute: #aeaca1;
    background: var(--nw-grain), var(--cb-bg);
}
.cb-page--news .cb-hero {
    background:
        linear-gradient(rgba(238,236,228,.04) 1px, transparent 1px) 0 0 / 100% 64px,
        radial-gradient(120% 90% at 85% 0%, rgba(120,124,128,.35) 0%, rgba(57,59,62,0) 60%),
        var(--nw-grain);
}
.cb-page--news .cb-band { background: radial-gradient(90% 120% at 0% 100%, rgba(120,124,128,.28) 0%, rgba(47,49,52,0) 65%), var(--nw-grain), var(--cb-bg2); }
.cb-page--news .cb-meta span + span::before { background: #77776d; }
.cb-page--news .cb .breadcrumb li:not(:last-child)::after { color: #77776d; }
.cb-hero--topic .cb-hero__title { font-size: clamp(56px, 8vw, 128px); }
.cb-hero__lead--topic { margin-top: clamp(20px, 2.4vw, 32px); }

/* ---------------- темы ---------------- */
.nw-topics { display: flex; flex-wrap: wrap; gap: 10px; padding-top: clamp(28px, 3.4vw, 48px); padding-bottom: clamp(28px, 3.4vw, 44px); }
.nw-chip, .nh__chip {
    display: inline-flex; align-items: center; gap: 6px; min-height: 42px; padding: 0 18px;
    border: 1px solid rgba(238, 236, 228, .26); color: #f0eee6 !important;
    font: 600 13px/1 'Futura PT', 'Inter', sans-serif; letter-spacing: .1em; text-transform: uppercase;
    text-decoration: none; white-space: nowrap; transition: background .2s, color .2s, border-color .2s;
}
.nw-chip sup { font-size: 10px; letter-spacing: 0; color: #c7b27c; top: -.6em; }
.nw-chip:hover, .nh__chip:hover { border-color: #f0eee6; }
.nw-chip.is-active, .nw-chip--all.is-active { background: #f0eee6; border-color: #f0eee6; color: #1d1f21 !important; }
.nw-chip.is-active sup { color: #6d6440; }
.nw-chip--all { border-color: #c7b27c; }
.nw-chip--video i, .nh__chip--video i { width: 0; height: 0; border-left: 8px solid #c7b27c; border-top: 5px solid transparent; border-bottom: 5px solid transparent; margin-right: 2px; }
.nw-chip--video.is-active i { border-left-color: #1d1f21; }

/* ---------------- список: одна новость в строку ---------------- */
.nw-list { border-top: 1px solid var(--cb-line); }
.nw-row { display: grid; grid-template-columns: minmax(0, 420px) minmax(0, 1fr); gap: clamp(24px, 3.6vw, 56px); align-items: center; padding: clamp(22px, 2.6vw, 36px) 0; border-bottom: 1px solid var(--cb-line); transition: background .3s; }
.nw-row:hover { background: linear-gradient(90deg, rgba(238,236,228,.045), rgba(238,236,228,0) 70%); }
.nw-row__media { position: relative; overflow: hidden; aspect-ratio: 16 / 10; background: var(--cb-bg3); }
.nw-row__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.nw-row:hover .nw-row__media img { transform: scale(1.04); }
.nw-row__badge { position: absolute; left: 0; top: 0; padding: 9px 14px; background: #c7b27c; color: #1d1f21; font: 600 11px/1 'Futura PT', sans-serif; letter-spacing: .18em; text-transform: uppercase; }
.nw-row__body { display: flex; flex-direction: column; gap: 16px; min-width: 0; max-width: 820px; }
.nw-row__title { margin: 0; font: 400 clamp(30px, 3vw, 46px)/1 var(--cb-head); text-transform: uppercase; letter-spacing: .005em; color: var(--cb-text); }
.nw-row__text { margin: 0; font: 400 17px/1.55 var(--cb-body); color: var(--cb-mute); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.nw-row .cb-more { margin-top: 4px; }

/* ---------------- видео ---------------- */
.nw-videos-wrap { padding-top: clamp(56px, 6vw, 96px); }
.nw-videos { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 20px; }
.nw-video { margin: 0; min-width: 0; }
.nw-video--long { grid-column: span 3; }
.nw-video__play, .nw-video__frame { position: relative; display: block; width: 100%; aspect-ratio: 9 / 16; padding: 0; border: 0; background: var(--cb-bg3, #46494d); cursor: pointer; overflow: hidden; }
.nw-video--long .nw-video__play, .nw-video--long .nw-video__frame { aspect-ratio: 16 / 9; }
.nw-video__play img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s cubic-bezier(.2,.7,.2,1); }
.nw-video__play:hover img { transform: scale(1.04); }
.nw-video__btn { position: absolute; left: 50%; top: 50%; width: 64px; height: 64px; margin: -32px 0 0 -32px; border-radius: 50%; background: rgba(20, 21, 23, .62); border: 1px solid rgba(240, 238, 230, .5); backdrop-filter: blur(4px); transition: background .2s; }
.nw-video__btn::after { content: ''; position: absolute; left: 26px; top: 21px; border-left: 18px solid #f0eee6; border-top: 11px solid transparent; border-bottom: 11px solid transparent; }
.nw-video__play:hover .nw-video__btn { background: #c7b27c; }
.nw-video__time { position: absolute; right: 10px; bottom: 10px; padding: 5px 8px; background: rgba(20,21,23,.75); color: #f0eee6; font: 600 12px/1 'Futura PT', sans-serif; letter-spacing: .06em; }
.nw-video figcaption { display: flex; flex-direction: column; gap: 6px; padding-top: 12px; }
.nw-video__title { font: 500 16px/1.3 var(--cb-body, 'Futura PT', sans-serif); color: var(--cb-text, #f0eee6); }
.nw-video__yt { font: 600 11px/1 'Futura PT', sans-serif; letter-spacing: .14em; text-transform: uppercase; color: var(--cb-mute, #aeaca1) !important; }
.nw-video__yt:hover { color: #c7b27c !important; }

@media (max-width: 1100px) {
    .nw-videos { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .nw-video--long { grid-column: span 4; }
}
@media (max-width: 768px) {
    .nw-topics { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; padding-left: var(--cb-pad); padding-right: var(--cb-pad); gap: 8px; }
    .nw-topics::-webkit-scrollbar { display: none; }
    .nw-chip { min-height: 38px; padding: 0 14px; font-size: 12px; flex: 0 0 auto; }
    .nw-row { grid-template-columns: 128px minmax(0, 1fr); gap: 16px; align-items: start; padding: 18px 0; }
    .nw-row__media { aspect-ratio: 1 / 1; }
    .nw-row__badge { padding: 6px 8px; font-size: 9px; letter-spacing: .12em; }
    .nw-row__body { gap: 8px; }
    .nw-row .cb-meta { font-size: 10px; gap: 4px 10px; letter-spacing: .1em; }
    .nw-row .cb-meta span + span::before { margin-right: 10px; }
    .nw-row__title { font-size: 26px; line-height: 1.02; }
    .nw-row__text { font-size: 14px; -webkit-line-clamp: 2; }
    .nw-row .cb-more { display: none; }
    .nw-videos { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .nw-video--long { grid-column: span 2; }
    .nw-video__title { font-size: 14px; }
    .nw-video__btn { width: 52px; height: 52px; margin: -26px 0 0 -26px; }
    .nw-video__btn::after { left: 21px; top: 17px; border-left-width: 14px; border-top-width: 9px; border-bottom-width: 9px; }
}

/* ================================================================
   Главная: блок «Новости»
   ================================================================ */
.nh { background: var(--nw-grain), #393b3e; color: #f0eee6; padding: clamp(48px, 6vw, 96px) 0; margin-top: clamp(24px, 4vw, 64px); }
.nh *, .nh *::before, .nh *::after { box-sizing: border-box; }
.nh a { text-decoration: none; }
.nh__wrap { min-width: 0; }
.nh__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }
.nh__title { margin: 0; font: 600 clamp(26px, 4.6vw, 44px)/1 'Futura PT', sans-serif; letter-spacing: .02em; color: #f0eee6; }
.nh__all { display: inline-flex; align-items: center; gap: 12px; min-height: 48px; padding: 0 22px; background: #f0eee6; color: #1d1f21 !important; font: 600 13px/1 'Futura PT', sans-serif; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap; transition: background .2s; }
.nh__all:hover { background: #c7b27c; }
.nh__all i { position: relative; width: 22px; height: 1px; background: currentColor; }
.nh__all i::after { content: ''; position: absolute; right: 0; top: -3px; width: 7px; height: 7px; border-top: 1px solid currentColor; border-right: 1px solid currentColor; transform: rotate(45deg); }
.nh__topics { display: flex; flex-wrap: wrap; gap: 10px; margin: 28px 0 8px; }
.nh__chip { min-height: 40px; padding: 0 12px; font-size: 12px; letter-spacing: .07em; }
.nh__topics { gap: 8px; }
.nh__list { margin-top: 24px; border-top: 1px solid rgba(238, 236, 228, .14); }
.nh__row { display: grid; grid-template-columns: minmax(0, 360px) minmax(0, 1fr); gap: clamp(20px, 3vw, 48px); align-items: center; padding: 26px 0; border-bottom: 1px solid rgba(238, 236, 228, .14); color: #f0eee6 !important; transition: background .3s; }
.nh__row:hover { background: linear-gradient(90deg, rgba(238,236,228,.05), rgba(238,236,228,0) 70%); }
.nh__media { overflow: hidden; aspect-ratio: 16 / 10; background: #46494d; }
.nh__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.nh__row:hover .nh__media img { transform: scale(1.04); }
.nh__body { display: flex; flex-direction: column; gap: 12px; min-width: 0; max-width: 760px; }
.nh__meta { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 0; font: 600 12px/1.2 'Futura PT', sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #c7b27c; }
.nh__meta span + span { color: #aeaca1; }
.nh__name { margin: 0; font: 600 clamp(22px, 2.2vw, 30px)/1.15 'Futura PT', sans-serif; color: #f0eee6; }
.nh__text { margin: 0; font: 400 16px/1.5 'Futura PT', sans-serif; color: #c3c1b6; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.nh__more { display: inline-flex; align-items: center; gap: 12px; font: 600 12px/1 'Futura PT', sans-serif; letter-spacing: .18em; text-transform: uppercase; color: #f0eee6; }
.nh__more i { position: relative; width: 34px; height: 1px; background: currentColor; transition: width .3s; }
.nh__more i::after { content: ''; position: absolute; right: 0; top: -3px; width: 7px; height: 7px; border-top: 1px solid currentColor; border-right: 1px solid currentColor; transform: rotate(45deg); }
.nh__row:hover .nh__more i { width: 52px; }

@media (max-width: 768px) {
    .nh__head { flex-direction: column; align-items: stretch; gap: 16px; }
    .nh__all { justify-content: center; }
    .nh__topics { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin: 20px -16px 4px; padding: 0 16px; gap: 8px; }
    .nh__topics::-webkit-scrollbar { display: none; }
    .nh__chip { flex: 0 0 auto; min-height: 36px; padding: 0 13px; font-size: 11px; }
    .nh__row { grid-template-columns: 112px minmax(0, 1fr); gap: 14px; align-items: start; padding: 16px 0; }
    .nh__media { aspect-ratio: 1 / 1; }
    .nh__body { gap: 6px; }
    .nh__meta { font-size: 10px; letter-spacing: .1em; }
    .nh__name { font-size: 18px; line-height: 1.2; }
    .nh__text { font-size: 14px; }
    .nh__more { display: none; }
}

/* без автопереносов по слогам в заголовках карточек */
.nw-row__title, .nh__name, .nw-video__title { -webkit-hyphens: manual; hyphens: manual; overflow-wrap: break-word; }
@media (max-width: 768px) { .nw-row__title { font-size: 23px; } }
