/* ═══ ФУТЕР ПО МАКЕТУ 7В-1 ══════════════════════════════════════════════════
   Перенесён 04.09.2026 по ТЗ поток/тз/2026-09-04-футер-по-образцу-7В-1.md из
   макета Павла «Футер - живой 7В-1.dc.html» (Claude Design). Числа — дословно из
   макета: отступы, кегли, цвета, сетки. Эталон нарисован под 1280 и адаптива не
   содержит; всё, что ниже 1180, придумано здесь с сохранением замысла.
   🚨 Прежний футер (футер.css, футер.js) НЕ удалён: его подключают четыре стенда
   в эксперименты/. На сайт он больше не идёт — v1.html грузит этот файл и
   футер-7в1.js. Бэкап макета до замены — эталоны/v1-бэкап-2026-09-04-до-футера-7в1.html.
   🚨 Маяк, нулевой километр, силуэт Москвы и координатная режиссура перенесены
   как есть — Павел их принял, вид не менялся. Их правила помечены «принято». */

/* ── корень ───────────────────────────────────────────────────────────────── */
#футер8{--бумага:560px;--поле:52px;
  /* --мягкий держит цвет силуэта Москвы: инлайновый svg красится через
     color:var(--мягкий). Значение то же, что было в прежнем футере, — принято */
  --мягкий:oklch(0.7716 0.028 262.04);
  position:relative;width:100%;background:#1a1916;color:#f3f1ea;
  /* 🚨 Футер лежит НАД предыдущим слоем и обязан от него отделяться (Павел, 04.09:
     «нет линии разграничения»). Бумажная половина того же цвета, что страница, и без
     тени их граница пропадала. Тень вверх плюс волосяная линия — сдержанно, но видно. */
  box-shadow:0 -14px 36px -10px rgba(26,25,22,.30),0 -1px 0 rgba(26,25,22,.16);
  -webkit-font-smoothing:antialiased}
#футер8 p{margin:0}
#футер8 .разворот{position:relative;display:grid;grid-template-columns:var(--бумага) 1fr;background:#1a1916;overflow:hidden}

/* ── бумага ───────────────────────────────────────────────────────────────── */
#футер8 .полбумага{position:relative;background:#f8f4ec;color:#1a1916;
  padding:48px 48px 44px 56px;display:flex;flex-direction:column;gap:36px}
/* засечки половин: 14×14, толщина 1px, в 12px от углов. Бумага — слева, чернила — справа */
#футер8 .полбумага::before,#футер8 .полбумага::after,
#футер8 .полчернила::before,#футер8 .полчернила::after{content:"";position:absolute;width:14px;height:14px;pointer-events:none;z-index:3}
#футер8 .полбумага::before{top:12px;left:12px;border-top:1px solid #c9971f;border-left:1px solid #c9971f}
#футер8 .полбумага::after{bottom:12px;left:12px;border-bottom:1px solid #c9971f;border-left:1px solid #c9971f}
#футер8 .полчернила::before{top:12px;right:12px;border-top:1px solid #e0ad31;border-right:1px solid #e0ad31}
#футер8 .полчернила::after{bottom:12px;right:12px;border-bottom:1px solid #e0ad31;border-right:1px solid #e0ad31}
/* линия стыка: 2px золота на границе половин, в макете left:559px при бумаге 560 */
#футер8 .стык{position:absolute;top:0;bottom:0;right:-1px;width:2px;background:#e0ad31;z-index:2;pointer-events:none}

/* ── рубрики: тихая моноширинная подпись с засечками, НЕ плашка ─────────── */
#футер8 .блок{position:relative}
/* 🚨 block с шириной по содержимому, а не inline-block, как в макете: inline-block
   встаёт в строку и наследует line-height страницы (28.9px при кегле 17), строка
   выше подписи на 6px, и каждая рубрика сдвигала всё ниже неё — к подвалу набегало
   18px против макета. В самом макете body без line-height, там этой добавки нет. */
#футер8 .руб{display:block;width:max-content;padding:7px 11px;font:500 9px/1 'IBM Plex Mono',monospace;
  letter-spacing:.26em;text-transform:uppercase;color:rgba(26,25,22,.7)}
#футер8 .полчернила .руб{color:rgba(243,241,234,.62)}
/* засечки рубрики 7×7. Левая верхняя стоит у подписи всегда. Правая нижняя в покое
   обнимает подпись (сдвиг на её ширину и высоту), при наведении на блок уезжает в
   дальний угол блока. Размеры подписи и блока меряет футер-7в1.js и кладёт в
   переменные — иначе засечке не откуда знать, где угол. */
#футер8 .уг{position:absolute;left:0;top:0;width:7px;height:7px;pointer-events:none;--цв:#1a1916}
#футер8 .полчернила .уг{--цв:#f3f1ea}
#футер8 .уг-тл{border-top:1px solid var(--цв);border-left:1px solid var(--цв)}
#футер8 .уг-бр{border-bottom:1px solid var(--цв);border-right:1px solid var(--цв);
  transform:translate(calc(var(--hw,96px) - 7px),calc(var(--hh,23px) - 7px));
  transition:transform .6s cubic-bezier(.2,.7,.15,1);will-change:transform}
#футер8 .блок.далеко .уг-бр{transform:translate(calc(var(--bw,456px) - 7px),calc(var(--bh,140px) - 7px))}
@keyframes футер-морг{0%,100%{opacity:1}12%,37%,62%{opacity:0}25%,50%,75%{opacity:1}}
#футер8 .блок.моргает .уг{animation:футер-морг 420ms steps(1,end) 1 both}

/* ── НАПИСАТЬ: плашка телеграма ─────────────────────────────────────────── */
#футер8 .тгпанель{display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:#1a1916;padding:20px 22px;margin-top:10px;text-decoration:none;transition:background-color .2s ease}
#футер8 .тгпанель:hover{background:#26241f}
#футер8 .тгпанель:hover .стрелка{transform:translate(2px,-2px)}
#футер8 .тгпанель:active{background:#0f0e0c;transform:translateY(1px)}
#футер8 .тгпанель>span:first-child{display:flex;flex-direction:column;gap:6px}
#футер8 .тгимя{font:200 26px/1 'Inter Tight',sans-serif;letter-spacing:-0.01em;color:#f3f1ea}
#футер8 .тгник{font:400 11.5px/1 'IBM Plex Mono',monospace;letter-spacing:.06em;color:rgba(248,244,236,.55)}
#футер8 .стрелка{font:400 16px/1 'IBM Plex Mono',monospace;color:#e0ad31;transition:transform .18s ease}

/* ── СКАЧАТЬ: четыре строки с палочкой ──────────────────────────────────── */
#футер8 .кн-список{display:flex;flex-direction:column;margin-top:4px}
/* Наведение и нажатие (Павел, 04.09: «хоть какой-то эффект, чтобы видно было, что мышка
   на поле»). Строка получает лёгкую подложку, палочка разгорается золотом и растёт,
   стрелка PDF опускается на 2px; нажатие вдавливает строку на 1px и темнит подложку.
   Подложка шире содержимого на 10px в стороны через отрицательные поля — координаты
   текста не меняются, сверка с макетом держится. */
#футер8 .кн{display:flex;align-items:center;gap:14px;padding:11px 10px;margin:0 -10px;text-decoration:none;
  transition:background-color .18s ease,transform .12s ease}
#футер8 .кн i{width:2px;height:16px;background:#c9971f;flex:none;transition:background-color .18s ease,height .18s ease}
#футер8 .кн:hover{background:rgba(26,25,22,.05)}
#футер8 .кн:hover i{background:#e0ad31;height:22px}
#футер8 .кн:hover .кн-тип{color:#1a1916;transform:translateY(2px)}
#футер8 .кн:active{background:rgba(26,25,22,.10);transform:translateY(1px)}
#футер8 .кн-имя{flex:1;font:400 13.5px/1.3 'Inter',sans-serif;color:#1a1916}
#футер8 .кн-тип{font:500 10px/1 'IBM Plex Mono',monospace;letter-spacing:.14em;color:#c9971f;white-space:nowrap;
  transition:color .18s ease,transform .18s ease}

/* ── РАЗДЕЛЫ: 3 колонки, заполнение по строкам ─────────────────────────────
   🚨 Было «3×2, заполнение по колонкам» — ровно, пока пунктов было шесть.
   10.09.2026 добавился седьмой, «Публикации», и заполнение по колонкам увело
   его в четвёртую колонку одиночкой: Павел прислал кадр со словами «с футером
   ты опять обосрался». Заполнение по строкам сажает седьмой пункт в начало
   третьей строки, а видимый порядок первых шести не меняется — для этого
   переставлен и порядок ссылок в разметке. */
#футер8 .пункт{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px 24px;margin-top:10px;padding-bottom:4px}
#футер8 .пункт a{font:300 15px/1.3 'Inter Tight',sans-serif;color:#4f4b43;text-decoration:none;transition:color .2s ease}
#футер8 .пункт a:hover{color:#1a1916}
#футер8 .пункт a:active{color:#c9971f}

/* ── подвал бумаги: прижат к низу ───────────────────────────────────────── */
#футер8 .бум-подвал{margin-top:auto;display:flex;flex-direction:column;gap:14px;padding-top:6px}
/* 🚨 Левая колонка садится на ту же землю, что метаблок и силуэт Москвы: последняя
   строка кончается там же, где низ города. Павел 09.09.2026: «слева текст хуй пойми
   как висит относительно блока метаданных… оно же как-то должно быть по сетке».
   Тридцать пять пикселей — замер расхождения на широком экране: текст проваливался
   ниже земли, и две половины футера жили каждая своей высотой.
   ⚠️ Только для широких: ниже 900px половины встают друг под другом, общей земли
   между ними нет и выравнивать нечего. */
@media (min-width:901px){ #футер8 .бум-подвал{padding-bottom:35px} }
#футер8 .бум-подвал .ряд{display:flex;align-items:center;gap:13px}
#футер8 .монограмма{width:32px;height:32px;flex:none;background:#1a1916;display:flex;align-items:center;
  justify-content:center;font:500 13px/1 'Inter',sans-serif;color:#f8f4ec}
#футер8 .мелко{font:400 10.5px/1.6 'Inter',sans-serif;color:#4f4b43}
/* ссылки политики — без точек-разделителей, делим зазором (требование Павла) */
#футер8 .мелко .моно{display:flex;gap:14px;font:400 10px/1.6 'IBM Plex Mono',monospace}
#футер8 .мелко .моно a{color:#4f4b43;text-decoration:none;transition:color .2s ease}
#футер8 .мелко .моно a:hover{color:#c9971f}
#футер8 .мелко .моно a:active{color:#e0ad31}
#футер8 .мелко .студия{color:#a29b8e}
#футер8 .право{font:400 10px/1.6 'Inter',sans-serif;color:#a29b8e}

/* ── чернила ──────────────────────────────────────────────────────────────── */
#футер8 .полчернила{position:relative;background:#1a1916;padding:48px 56px 58px 52px;
  display:flex;flex-direction:column;overflow:hidden}
/* точки: сетка 8px, к краям гаснут овальной маской */
#футер8 .фон-точки{position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(243,241,234,.26) .5px,transparent .5px);background-size:8px 8px;
  -webkit-mask-image:radial-gradient(ellipse 90% 80% at 55% 45%,#000 20%,transparent 100%);
  mask-image:radial-gradient(ellipse 90% 80% at 55% 45%,#000 20%,transparent 100%)}
/* дыхание: два слоя ярких точек под круглыми масками, маски ползут по разным путям
   с периодами 18 и 25 секунд — числа взаимно простые, петля на глаз не читается */
@keyframes футер-вдох1{0%{mask-position:-12% 8%;-webkit-mask-position:-12% 8%;opacity:.55}
  30%{mask-position:55% 78%;-webkit-mask-position:55% 78%;opacity:1}
  60%{mask-position:96% 30%;-webkit-mask-position:96% 30%;opacity:.7}
  100%{mask-position:-12% 8%;-webkit-mask-position:-12% 8%;opacity:.55}}
@keyframes футер-вдох2{0%{mask-position:84% 92%;-webkit-mask-position:84% 92%;opacity:.8}
  45%{mask-position:22% 24%;-webkit-mask-position:22% 24%;opacity:.5}
  75%{mask-position:60% 55%;-webkit-mask-position:60% 55%;opacity:1}
  100%{mask-position:84% 92%;-webkit-mask-position:84% 92%;opacity:.8}}
#футер8 .дых{position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(243,241,234,.62) .6px,transparent .6px);background-size:8px 8px;
  -webkit-mask-image:radial-gradient(circle,rgba(0,0,0,1) 0%,rgba(0,0,0,.5) 38%,rgba(0,0,0,0) 70%);
  mask-image:radial-gradient(circle,rgba(0,0,0,1) 0%,rgba(0,0,0,.5) 38%,rgba(0,0,0,0) 70%);
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:50% 50%;mask-position:50% 50%}
#футер8 .дых-1{-webkit-mask-size:460px 460px;mask-size:460px 460px;animation:футер-вдох1 18s ease-in-out infinite}
#футер8 .дых-2{-webkit-mask-size:340px 340px;mask-size:340px 340px;animation:футер-вдох2 25s ease-in-out infinite}
/* 🚨 Под «уменьшить движение» дыхание НЕ гасим — замедляем втрое. У Павла эта
   настройка включена всегда; полное отключение означало бы, что он единственный,
   кто своего футера не увидит. Яркость точек — не движение, от неё не укачивает. */
@media (prefers-reduced-motion:reduce){
  #футер8 .дых-1{animation-duration:54s}
  #футер8 .дых-2{animation-duration:75s}}

/* ── координаты и пунктиры (принято: режиссура поиска из футер-7в1.js) ──────
   Линии рыщут по чернильной половине, пока читатель подходит, и сходятся на
   Спасской башне, когда город целиком в кадре. Цвета и прозрачности — из макета:
   пунктир rgba(243,241,234,.7) шагом 7px при opacity .35, цифры #a29b8e при .75. */
/* 🚨 z-index:0, а не 1, и у блоков контента z-index не задаётся вовсе. Иначе блок соцсетей
   становится контекстом наложения, и z-index:61 активного слова живёт внутри него, а
   плашка с z-index:60 — снаружи и накрывает слово целиком (Павел, 04.09: «имя пропадает
   на плашке»). При z-index:0 линии рисуются в порядке разметки — раньше контента, то
   есть под ним, а слово и плашка спорят в одном контексте: 61 выше 60. */
#футер8 .иск{position:absolute;z-index:0;pointer-events:none;opacity:.35;transition:opacity .6s ease}
#футер8 .иск-гор{left:0;right:0;height:1px;background-image:linear-gradient(to right,rgba(243,241,234,.7) 50%,transparent 0);background-size:7px 1px}
/* 🚨 Долгота идёт от верхнего среза чернил до низа (Павел, 04.09: «линия долготы
   начинается не от верхнего среза футера»). Макетный старт ниже соцсетей снят. */
#футер8 .иск-верт{top:0;bottom:0;width:1px;background-image:linear-gradient(rgba(243,241,234,.7) 50%,transparent 0);background-size:1px 7px}
#футер8 .иск-цифра{position:absolute;z-index:0;font:400 8.5px/1 'IBM Plex Mono',monospace;letter-spacing:.1em;
  color:#a29b8e;pointer-events:none;white-space:nowrap;opacity:.75;transition:opacity .6s ease}
#футер8[data-поиск="найдено"] .иск{opacity:.22}

/* ── СОЦСЕТИ: 2×3, заполнение по колонкам, зазоры под плашку ────────────── */
#футер8 .соцблок{position:relative;width:max-content}
#футер8 .соцсетка{display:grid;grid-template-columns:repeat(2,max-content);grid-auto-flow:column;
  grid-template-rows:repeat(3,auto);gap:64px 72px;width:max-content;margin-top:26px;padding:0 12px 10px 0}
#футер8 .соцузел{display:block;width:max-content;justify-self:start}
#футер8 .социмя{display:block;font:200 28px/1.1 'Inter Tight',sans-serif;letter-spacing:-0.012em;color:#f3f1ea;
  text-decoration:none;white-space:nowrap;width:max-content;transition:opacity .25s ease,color .18s ease}
/* остальные слова гаснут до 30%, активное — белое и выше плашки */
#футер8 .соцсетка.наведено .социмя{opacity:.3}
#футер8 .соцсетка.наведено .соцузел.активен .социмя{opacity:1;color:#ffffff;position:relative;z-index:61}
/* 🚨 Подпись действия под ссылкой — только там, где курсора нет (принято 03.09).
   На мыши она не существует: ни места не занимает, ни вида не меняет. */
#футер8 .соцподпись{display:none}

/* ── плашка соцсети: плотная заливка, рамка цвета сети ───────────────────── */
#футер8 .соцкарта{position:absolute;left:0;top:0;z-index:60;display:block;text-decoration:none;color:#f3f1ea;
  background:#22201c;border:1px solid var(--неон,rgba(255,255,255,.25));
  box-shadow:0 0 0 1px color-mix(in srgb,var(--неон,#fff) 18%,transparent),
             0 0 32px -6px color-mix(in srgb,var(--неон,#fff) 55%,transparent),
             0 30px 60px -30px rgba(0,0,0,.8);
  opacity:0;transform:scale(.985);transition:opacity .2s ease,transform .2s cubic-bezier(.2,.7,.2,1);pointer-events:none}
#футер8 .соцкарта.видна{opacity:1;transform:scale(1)}
/* верх плашки пропускает курсор к слову, кликабельна строка действия */
#футер8 .соцверх{display:block;pointer-events:none;border-bottom:1px solid color-mix(in srgb,var(--неон,#fff) 32%,transparent)}
#футер8 .соцниз{display:flex;align-items:center;gap:10px;padding:10px 14px 12px;white-space:nowrap;background:#2b2823;
  font:500 12.5px/1 'Inter',sans-serif;color:#a29b8e;pointer-events:auto;transition:color .2s ease}
#футер8 .соцкарта:hover .соцниз{color:#f3f1ea}
#футер8 .соцниз i{width:20px;height:20px;border-radius:6px;background:color-mix(in srgb,var(--неон,#fff) 24%,transparent);
  display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-size:10px;color:#fff;flex:none}
/* слой значков: над плашкой и над футером, за верхнюю кромку не режется */
#футер8 .залп{position:absolute;inset:0;pointer-events:none;z-index:61;overflow:visible}

/* ── низ чернил: метаданные слева, Москва справа ─────────────────────────── */
#футер8 .черн-низ{position:relative;margin-top:auto;display:flex;justify-content:space-between;
  align-items:flex-end;gap:32px;padding-top:48px}
/* 🚨 Метаблок стоит на той же земле, что силуэт Москвы. 09.09.2026 Павел: «блок
   метаданных висит в воздухе… оно же как-то должно быть по сетке». Было 28 —
   рамка кончалась на семь пикселей выше низа силуэта и ни к чему не крепилась.
   21 сажает её ровно на линию, по которой стоит город и вдоль которой идёт широта. */
#футер8 .метблок{padding-bottom:21px}
#футер8 .метблок .блок{width:max-content;min-width:150px}
#футер8 .мет{display:flex;flex-direction:column;gap:5px;margin-top:12px;padding:0 11px 8px}
#футер8 .мет-имя{font:500 11.5px/1 'Inter',sans-serif;color:#f3f1ea}
#футер8 .мет-знач{font:400 11.5px/1 'IBM Plex Mono',monospace;color:#a29b8e}
/* 🚨 Числитель графиком (09.09.2026). Ширина держится шире остального метаблока:
   блок задан `width:max-content`, и без явной ширины поле схлопнулось бы до нуля —
   у svg нет собственного содержимого, которое его распирает. 236px подобраны так,
   чтобы на 320px экрана график не упирался в правый уголок-засечку. */
/* 🚨 Числитель — кнопка, а выглядит строкой. График по клику уезжает в поп-ап
   (замысел Павла 09.09.2026), потому что в подвале он спорил с Москвой и раздувал
   метаблок: тот переставал стоять на линии широты и висел в воздухе. */
#футер8 .мет-числитель{appearance:none;-webkit-appearance:none;background:none;border:0;padding:0;
  margin:0;text-align:left;cursor:pointer;color:#a29b8e;
  /* 🚨 Шрифт задаётся явно, как у соседней строки со значением версии. С `font:inherit`
     кнопка наследовала кегль метаблока и вырастала вдвое против «v20.0» — Павел 09.09:
     «надпись числитель сделай того же размера как и версию макета». */
  font:400 11.5px/1 'IBM Plex Mono',monospace;
  border-bottom:1px dashed rgba(162,155,142,.45);align-self:start;transition:color .2s ease,border-color .2s ease}
#футер8 .мет-числитель:hover{color:#f3f1ea;border-bottom-color:rgba(243,241,234,.7)}

/* ── Москва 340×118 (принято; вертикали переведены в доли от 118) ────────── */
#футер8 .москва{position:relative;width:340px;height:118px;flex:none}
#футер8 .мск-город{position:absolute;overflow:visible;left:50%;top:81.67%;transform:translate(-50%,-100%);width:100%;height:81.67%}
#футер8 .мск-город svg{display:block;width:100%;height:100%}
/* звёзды на башнях не гаснут: базовая яркость постоянная, маяк добавляет свечение */
@keyframes маяк{
  0%,42%{opacity:.82;filter:drop-shadow(0 0 1px rgba(218,41,41,.35))}
  62%{opacity:.92;filter:drop-shadow(0 0 4px rgba(218,41,41,.6))}
  70%{opacity:1;filter:drop-shadow(0 0 13px rgba(218,41,41,1)) drop-shadow(0 0 26px rgba(218,41,41,.6))}
  78%{opacity:.95;filter:drop-shadow(0 0 6px rgba(218,41,41,.5))}
  100%{opacity:.82;filter:drop-shadow(0 0 1px rgba(218,41,41,.35))}}
@keyframes ореол{
  0%,42%{opacity:0;transform:translate(-50%,-50%) scale(.5)}
  62%{opacity:.45;transform:translate(-50%,-50%) scale(.9)}
  70%{opacity:1;transform:translate(-50%,-50%) scale(1.5)}
  80%{opacity:.4;transform:translate(-50%,-50%) scale(1.1)}
  100%{opacity:0;transform:translate(-50%,-50%) scale(.5)}}
#футер8 .мск-город path[fill="#DA2929"]{opacity:.82;animation:none;transform-box:fill-box;transform-origin:center}
#футер8 .мск-ореол{position:absolute;left:48.4%;top:3%;width:26px;height:26px;transform:translate(-50%,-50%);opacity:0;
  border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(218,41,41,.95) 0%,rgba(218,41,41,.35) 26%,rgba(218,41,41,0) 68%)}
#футер8[data-поиск="найдено"] .мск-город path[fill="#DA2929"]{animation:маяк 6s ease-in-out .4s infinite}
#футер8[data-поиск="найдено"] .мск-ореол{animation:ореол 6s ease-in-out .4s infinite}
/* 🚨 Маяк под «уменьшить движение» не гасим (та же причина, что у дыхания);
   явный отказ — только ?движение=нет, метка на <html> */
html[data-движение="нет"] #футер8 .мск-ореол{animation:none;opacity:0}
html[data-движение="нет"] #футер8 .мск-город path[fill="#DA2929"]{animation:none;opacity:1}
#футер8 .мск-точка{position:absolute;left:50%;top:81.67%;width:4px;height:4px;border-radius:50%;background:#1a1916;transform:translate(-50%,-50%)}
#футер8 .мск-коорд{display:none}
/* указатель нулевого километра: черта не касается точки, подпись и черта белые */
#футер8 .мск-черта{position:absolute;left:calc(50% + 12px);top:86.44%;width:32px;height:1px;background:#f3f1ea;transform:rotate(20deg);transform-origin:0 0}
#футер8 .мск-подпись{position:absolute;left:calc(50% + 54px);top:98.3%;font:400 8px/1.45 'IBM Plex Mono',monospace;
  letter-spacing:.12em;color:#f3f1ea;white-space:nowrap}
/* подпись и черта проявляются, когда линии нашли точку */
#футер8 .мск-черта,#футер8 .мск-подпись{opacity:0;transition:opacity .9s ease .25s}
#футер8[data-поиск="найдено"] .мск-черта,#футер8[data-поиск="найдено"] .мск-подпись{opacity:1}

/* ── без курсора (принято 03.09): подписи действий видны, плашки нет, подпись
      нулевого километра встаёт по входу футера в кадр и крупнее ─────────── */
@media (hover:none){
  #футер8 .соцузел{display:flex;flex-direction:column;gap:3px}
  #футер8 .соцподпись{display:block;font:400 9px/1.3 'IBM Plex Mono',monospace;letter-spacing:.06em;
    color:rgba(243,241,234,.42);text-transform:lowercase}
  #футер8 .соцкарта{display:none !important}
  #футер8[data-подпись="видна"] .мск-черта,#футер8[data-подпись="видна"] .мск-подпись{opacity:1}
  #футер8 .мск-черта{left:calc(50% + 6px);width:20px}
  #футер8 .мск-подпись{left:calc(50% + 30px);top:93.2%;font-size:11px;letter-spacing:.06em}
}

/* ── узкие: макет нарисован под 1280, дальше — своё, с сохранением замысла ── */
@media (max-width:1180px){
  #футер8 .соцсетка{gap:48px 40px}
  #футер8 .социмя{font-size:24px}
  #футер8 .полчернила{padding-right:40px}
}
@media (max-width:900px){
  /* половины друг под другом: бумага сверху, чернила снизу; стык — горизонталь */
  #футер8{--поле:24px}
  #футер8 .разворот{grid-template-columns:1fr}
  #футер8 .стык{top:auto;right:0;left:0;bottom:-1px;width:auto;height:2px}
  #футер8 .полбумага{padding:40px 24px 40px}
  #футер8 .полчернила{padding:44px 24px 52px}
  #футер8 .соцсетка{width:100%;padding-right:0}
  #футер8 .черн-низ{flex-direction:column;align-items:stretch;gap:28px;padding-top:36px}
  #футер8 .метблок{padding-bottom:0}
  /* Москва: ширина в долях, высота из пропорции 340/118 — все точки внутри держатся друг друга */
  #футер8 .москва{width:min(340px,100%);height:auto;aspect-ratio:340/118;margin:0 auto}
}
@media (max-width:700px){
  #футер8 .соцблок{width:100%}
  #футер8 .соцсетка{grid-template-columns:1fr;grid-auto-flow:row;grid-template-rows:none;gap:26px 0}
  #футер8 .социмя{font-size:clamp(20px,2.2vw,28px)}
}
/* 04.09: долгота на узких видна — раньше её прятали ниже 559 (решение 03.09 для прежнего
   футера), Павел на телефоне её не нашёл. Теперь линия идёт по Кремлёвской стене слева
   от Спасской башни, как в макете, на всех ширинах; верх ей ставит режиссура. */
@media (max-width:400px){
  #футер8 .пункт{grid-template-columns:repeat(2,minmax(0,1fr))}
  #футер8 .тгимя{font-size:22px}
}
