/* ============================================================
   HOME-HEX — сотовая диаграмма экосистемы на главной
   ------------------------------------------------------------
   Вся геометрия — правильный декагон: 10 узлов на окружности
   R=250px (масштабируется --o), стороны ровно по горизонтали,
   верх/низ зеркальны. Координаты узлов = R·(sin θ, −cos θ),
   θ от 12 часов: ±18°, ±54°, ±90°, ±126°, ±162°.

   Шестигранник — pointy-top (вершины сверху/снизу), правильный:
   ширина W = √3·a, высота 2a → клип 0/25/75/100%.

   Подключается ПОСЛЕ layout/responsive/dark-mode и перекрывает
   их правила. Всё скоупится под body.home-hex — снять класс
   (или убрать <link>) = полный откат к старой диаграмме.
   ============================================================ */

.home-hex {
    /* Клип правильного шестигранника (вершины сверху и снизу) */
    --hex-clip: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
    /* Масштаб орбиты (радиус декагона = 250px · --o) */
    --o: 1;
    /* Прозрачность глобуса в центральной соте */
    --globe-alpha: 0.5;
}

/* ---------- Контейнер ---------- */
.home-hex .diagram-container {
    height: 660px !important;
    transform: none !important;
    margin: 0 auto !important;
}

/* ---------- Сотовый фон на весь экран (от шапки до футера) ----------
   Слои фиксированы на вьюпорт и лежат ПОД контентом (z:-1): шапка и
   футер непрозрачны и накрывают их сверху/снизу. В светлой теме фон
   body пропагируется на canvas (html прозрачен) и слой виден; в тёмной
   html.night-mode красит canvas сам — фон body развязываем, иначе он
   закрыл бы слой. */
body.home-hex.night-mode,
.night-mode body.home-hex { background: transparent !important; }
.night-mode .home-hex .ecosystem-section { background: transparent; }
.home-hex::before {
    content: '';
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    /* Радиальный градиент = «затухание к краям, но не в ноль»;
       сама соторешётка вырезается маской из SVG-паттерна */
    background: radial-gradient(ellipse 62% 56% at 50% 44%,
        color-mix(in srgb, var(--accent) 20%, transparent) 0%,
        color-mix(in srgb, var(--accent) 9%, transparent) 55%,
        color-mix(in srgb, var(--accent) 1.5%, transparent) 100%);
    /* Паттерн: гекс a=17 → тайл 29.44×51 (шестигранник + верт. ребро) */
    /* (ночной вариант — ниже, светлым тоном палитры) */
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29.44' height='51'%3E%3Cpath d='M14.72 0L29.44 8.5V25.5L14.72 34 0 25.5V8.5ZM14.72 34v17' fill='none' stroke='%23000' stroke-width='1'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29.44' height='51'%3E%3Cpath d='M14.72 0L29.44 8.5V25.5L14.72 34 0 25.5V8.5ZM14.72 34v17' fill='none' stroke='%23000' stroke-width='1'/%3E%3C/svg%3E");
    -webkit-mask-repeat: repeat;
    mask-repeat: repeat;
    -webkit-mask-position: 50% 50%;
    mask-position: 50% 50%;
}
/* Ночные палитры: тёмный акцент тонет на тёмном фоне — решётку рисуем
   СВЕТЛЫМ тоном (--emerald-light). ИЕРАРХИЯ ФОНОВ (решение владельца,
   больше не трогать): главная — «лицо», её слой ЯРЧЕ; модули — чтение,
   их слой тише (день 20% против 16%, ночь 30% против 19% — модульные
   значения в header-hex.css). */
.night-mode .home-hex::before {
    background: radial-gradient(ellipse 62% 56% at 50% 44%,
        color-mix(in srgb, var(--emerald-light) 30%, transparent) 0%,
        color-mix(in srgb, var(--emerald-light) 18%, transparent) 55%,
        color-mix(in srgb, var(--emerald-light) 6%, transparent) 100%);
}

/* ---------- Лучи от центра (вместо SVG-линий) ---------- */
/* .connection-lines (обёртка) наследует абсолютное позиционирование
   из layout.css — работает и для div. Каждый луч — тонкий div,
   повёрнутый на угол узла (θ − 90°), длиной в радиус орбиты. */
.home-hex .connection-line {
    position: absolute;
    left: 50%;
    top: 50%;
    width: calc(250px * var(--o));
    height: 2px;
    margin-top: -1px;
    transform-origin: 0 50%;
    transform: rotate(var(--rot));
    background: var(--accent);
    opacity: 0.3;
}
/* Углы = позиции узлов (θ−90°). При перестановке сот в итерации 4 имена
   лучей не переназначались (набор углов совпадал) — теперь, когда луч
   подсвечивается со своей сотой, соответствие ОБЯЗАНО быть точным. */
.home-hex .spoke-ifta       { --rot: 252deg; }
.home-hex .spoke-quran      { --rot: -72deg; }
.home-hex .spoke-halal      { --rot: 216deg; }
.home-hex .spoke-hadith     { --rot: -36deg; }
.home-hex .spoke-calendar   { --rot: 180deg; }
.home-hex .spoke-dictionary { --rot: 0deg;   }
.home-hex .spoke-atlas      { --rot: 144deg; }
.home-hex .spoke-digitization { --rot: 108deg; }
.home-hex .spoke-maliya     { --rot: 72deg;  }
.home-hex .spoke-books      { --rot: 36deg;  }

/* Луч подсвеченной соты (ховер или шаг карусели). Луч и сота — соседние
   поддеревья, связь через :has() по контейнеру (имена классов зеркальные:
   .node-X <-> .spoke-X). День — цвет насыщеннее + внешнее свечение. */
.home-hex .connection-line {
    transition: opacity 0.35s ease, background-color 0.35s ease, box-shadow 0.35s ease;
}
.home-hex .diagram-container:has(.node-ifta:is(:hover, .idle-hl))         .spoke-ifta,
.home-hex .diagram-container:has(.node-quran:is(:hover, .idle-hl))        .spoke-quran,
.home-hex .diagram-container:has(.node-halal:is(:hover, .idle-hl))        .spoke-halal,
.home-hex .diagram-container:has(.node-hadith:is(:hover, .idle-hl))       .spoke-hadith,
.home-hex .diagram-container:has(.node-calendar:is(:hover, .idle-hl))     .spoke-calendar,
.home-hex .diagram-container:has(.node-dictionary:is(:hover, .idle-hl))   .spoke-dictionary,
.home-hex .diagram-container:has(.node-atlas:is(:hover, .idle-hl))        .spoke-atlas,
.home-hex .diagram-container:has(.node-digitization:is(:hover, .idle-hl)) .spoke-digitization,
.home-hex .diagram-container:has(.node-maliya:is(:hover, .idle-hl))       .spoke-maliya,
.home-hex .diagram-container:has(.node-books:is(:hover, .idle-hl))        .spoke-books {
    opacity: 1;
    background: var(--emerald);
    box-shadow: 0 0 9px 1px color-mix(in srgb, var(--emerald) 45%, transparent);
}
/* Ночь — неоновое свечение: яркое ядро + широкий ореол */
.night-mode .home-hex .diagram-container:has(.node-ifta:is(:hover, .idle-hl))         .spoke-ifta,
.night-mode .home-hex .diagram-container:has(.node-quran:is(:hover, .idle-hl))        .spoke-quran,
.night-mode .home-hex .diagram-container:has(.node-halal:is(:hover, .idle-hl))        .spoke-halal,
.night-mode .home-hex .diagram-container:has(.node-hadith:is(:hover, .idle-hl))       .spoke-hadith,
.night-mode .home-hex .diagram-container:has(.node-calendar:is(:hover, .idle-hl))     .spoke-calendar,
.night-mode .home-hex .diagram-container:has(.node-dictionary:is(:hover, .idle-hl))   .spoke-dictionary,
.night-mode .home-hex .diagram-container:has(.node-atlas:is(:hover, .idle-hl))        .spoke-atlas,
.night-mode .home-hex .diagram-container:has(.node-digitization:is(:hover, .idle-hl)) .spoke-digitization,
.night-mode .home-hex .diagram-container:has(.node-maliya:is(:hover, .idle-hl))       .spoke-maliya,
.night-mode .home-hex .diagram-container:has(.node-books:is(:hover, .idle-hl))        .spoke-books {
    background: var(--emerald-light);
    box-shadow:
        0 0 5px color-mix(in srgb, var(--emerald-light) 85%, transparent),
        0 0 16px 2px color-mix(in srgb, var(--emerald-light) 50%, transparent);
}

/* ---------- Узлы-соты ----------
   ВАЖНО про clip-path: и border/box-shadow, и filter:drop-shadow
   клипаются вместе с элементом (Filter Effects §5: filter считается
   ДО clip-path). Поэтому сам узел НЕ клипается и несёт только тень;
   гекс-форма целиком в псевдослоях: ::after = рамка, ::before =
   поверхность. drop-shadow обводит альфу клипнутых псевдослоёв. */
.home-hex .outer-node {
    /* Позиция = центр контейнера + смещение декагона (задаётся --nx/--ny) */
    left: calc(50% + var(--nx) * var(--o)) !important;
    top:  calc(50% + var(--ny) * var(--o)) !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;

    width: 132px !important;
    height: 152px !important;
    /* min-width гасит легаси responsive.css (110px !important на ≤700 —
       иначе соты «толстеют» и наползают друг на друга на телефонах) */
    min-width: 0 !important;
    /* нижний паддинг чуть больше — подписи смещаются к центру от нижнего
       сужения гекса */
    padding: 2px 14px 8px !important;

    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent;
    filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.10));
}
.home-hex .outer-node::after {
    /* Рамка-гекс (нижний слой) */
    content: '';
    position: absolute;
    inset: 0;
    clip-path: var(--hex-clip);
    background: var(--border-strong);
    z-index: 0;
}
.home-hex .outer-node::before {
    /* Поверхность-гекс (inset ≈ толщина рамки) */
    content: '';
    position: absolute;
    inset: 2px;
    clip-path: var(--hex-clip);
    background: var(--surface-1);
    z-index: 1;
}
.home-hex .outer-node > * {
    position: relative;
    z-index: 2;
}
/* Активная сота = ховер ИЛИ шаг «карусели простоя» (.idle-hl из
   js/home-fx.js — визуально идентичен ховеру) */
.home-hex .outer-node:hover,
.home-hex .outer-node:focus-visible,
.home-hex .outer-node.idle-hl {
    border: none !important;
    box-shadow: none !important;
    background: transparent;
    filter: drop-shadow(0 6px 14px color-mix(in srgb, var(--emerald) 35%, transparent));
}
/* Кант активной соты: акцентная заливка + золотой сегмент, бегущий
   ПРОТИВ часовой. Угол --beam крутит js/home-fx.js (rAF на контейнере,
   наследуется сюда): CSS-анимация зарегистрированной переменной на
   псевдоэлементе в части браузеров не заводится. Без JS — статичный
   золотой сегмент на акцентном канте. */
.home-hex .outer-node:hover::after,
.home-hex .outer-node:focus-visible::after,
.home-hex .outer-node.idle-hl::after {
    background: conic-gradient(from var(--beam, 0deg),
        var(--gold-light) 0deg,
        var(--gold) 52deg,
        var(--accent) 96deg 360deg);
}
/* .idle-hl зеркалит ховер-правила layout.css/dark-mode.css (:hover там
   не сработает без курсора) */
.home-hex .outer-node.idle-hl { translate: 0 -3px; }
.home-hex .outer-node.idle-hl .node-arabic { color: var(--emerald-dark); }
.home-hex .outer-node.idle-hl .node-icon { opacity: 1; }
.night-mode .home-hex .outer-node.idle-hl .node-arabic { color: #a7f3d0; }
.night-mode .home-hex .outer-node.idle-hl .node-sub { color: #d1d5db; }

/* Легаси-правила тёмной темы (dark-mode.css) красили background узла —
   гасим их; рамка/поверхность в псевдослоях темизируются сами
   (--border-strong/--surface-1 ← --white/--dark-gray инлайном от темы). */
.night-mode .home-hex .outer-node,
.night-mode .home-hex .outer-node:hover { background: transparent; }

/* Позиции декагона: (x, y) = R·(sin θ, −cos θ), R = 250px
   Верх (слева направо): Халяль 306°, Ифта 342°, Коран 18°, Хадис 54° */
.home-hex .node-halal      { --nx: -202.25px; --ny: -146.95px; }
.home-hex .node-ifta       { --nx:  -77.25px; --ny: -237.76px; }
.home-hex .node-quran      { --nx:   77.25px; --ny: -237.76px; }
.home-hex .node-hadith     { --nx:  202.25px; --ny: -146.95px; }
/* Середина: Календарь 270°, Муджам 90° */
.home-hex .node-calendar   { --nx: -250px;    --ny: 0px; }
.home-hex .node-dictionary { --nx:  250px;    --ny: 0px; }
/* Низ (слева направо): Атлас 234°, Мактаба 198°, Финансы 162°, Рынок 126° */
.home-hex .node-atlas        { --nx: -202.25px; --ny: 146.95px; }
.home-hex .node-digitization { --nx:  -77.25px; --ny: 237.76px; }
.home-hex .node-maliya       { --nx:   77.25px; --ny: 237.76px; }
.home-hex .node-books        { --nx:  202.25px; --ny: 146.95px; }

/* Типографика узлов под ширину соты (компактный стек — подписи не
   уползают в нижнее сужение гекса) */
.home-hex .node-icon   { width: 22px !important; height: 22px !important; margin-bottom: 4px !important; }
.home-hex .node-arabic { font-size: 24px !important; line-height: 1.25 !important; margin-bottom: 2px !important; }
.home-hex .node-sub    { font-size: 13px !important; line-height: 1.15 !important; }

/* ---------- Центральная сота ----------
   Клип нужен самому .center-node (внутри canvas глобуса), поэтому
   тень несёт обёртка .center-node-shadow — она же позиционируется
   и задаёт размер (см. заметку про Filter Effects §5 выше). */
.home-hex .center-node-shadow {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 232px;
    height: 268px;
    z-index: 10;
    filter: drop-shadow(0 10px 24px color-mix(in srgb, var(--emerald) 30%, transparent));
}
.home-hex .center-node {
    position: absolute !important;
    inset: 0 !important;
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    clip-path: var(--hex-clip);
}
/* Логотип — поверх глобуса, клики/драг проходят сквозь него */
.home-hex .center-node-inner {
    position: relative;
    z-index: 3;
    pointer-events: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
/* Финальный знак concept 1 от каллиграфа (перо+капля+книга, 428×608) */
.home-hex .center-logo-mark {
    display: block;
    width: 61%;
    height: auto;
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.28));
}
/* Канвас глобуса — позади логотипа, полупрозрачный, появляется плавно.
   Сам канвас событий не ловит — за захват отвечает .globe-hit ниже. */
.home-hex .center-globe {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.8s ease;
}
.home-hex .center-globe.ready { opacity: var(--globe-alpha); }
/* Круглая зона захвата ровно по диску глобуса (размер задаёт JS):
   палец/курсор НА диске — вращение (touch-action:none), вне диска —
   обычный скролл страницы. border-radius:50% ограничивает hit-область
   кругом. Активна только когда глобус готов. */
.home-hex .globe-hit {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    z-index: 2;
    cursor: grab;
    touch-action: none;
    pointer-events: none;
}
.home-hex .center-globe.ready + .globe-hit { pointer-events: auto; }
.home-hex .globe-hit.dragging { cursor: grabbing; }

/* Переливание центральной соты: редкий диагональный блик ↘
   (клипается гекс-формой .center-node) */
@media (prefers-reduced-motion: no-preference) {
    .home-hex .center-node::after {
        content: '';
        position: absolute;
        inset: 0;
        z-index: 4;
        pointer-events: none;
        background: linear-gradient(115deg,
            transparent 42%,
            rgba(255, 255, 255, 0.15) 50%,
            transparent 58%) no-repeat;
        background-size: 300% 300%;
        animation: hexSheen 9s ease-in-out infinite;
    }
    /* Быстрый проход слева-сверху вниз-вправо, потом долгая пауза.
       При background-size 300% offset = −2·box·p, т.е. с РОСТОМ позиции
       картинка (и полоса блика) едет вверх-влево — для движения ↘
       анимируем 100% → 0%. */
    @keyframes hexSheen {
        0%   { background-position: 100% 100%; }
        16%  { background-position: 0% 0%; }
        100% { background-position: 0% 0%; }
    }
}

/* «Фонарик»: сотовый фон проявляется локально вокруг курсора в любом
   месте страницы (координаты --mx/--my во вьюпорте ставит js/home-fx.js
   на body). Только для мыши. */
@media (hover: hover) and (pointer: fine) {
    .home-hex::after {
        content: '';
        position: fixed;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        background: radial-gradient(circle 200px at var(--mx, -999px) var(--my, -999px),
            color-mix(in srgb, var(--accent) 32%, transparent),
            transparent 72%);
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29.44' height='51'%3E%3Cpath d='M14.72 0L29.44 8.5V25.5L14.72 34 0 25.5V8.5ZM14.72 34v17' fill='none' stroke='%23000' stroke-width='1'/%3E%3C/svg%3E");
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29.44' height='51'%3E%3Cpath d='M14.72 0L29.44 8.5V25.5L14.72 34 0 25.5V8.5ZM14.72 34v17' fill='none' stroke='%23000' stroke-width='1'/%3E%3C/svg%3E");
        -webkit-mask-repeat: repeat;
        mask-repeat: repeat;
        /* позиция маски = как у ::before, чтобы соты слоёв совпадали */
        -webkit-mask-position: 50% 50%;
        mask-position: 50% 50%;
        opacity: 0;
        transition: opacity 0.5s ease;
    }
    /* Ночью фонарик главной — светлым тоном палитры, ярче модульного (22%) */
    .night-mode .home-hex::after {
        background: radial-gradient(circle 200px at var(--mx, -999px) var(--my, -999px),
            color-mix(in srgb, var(--emerald-light) 42%, transparent),
            transparent 72%);
    }
    .home-hex.spot-on::after { opacity: 1; }
}

/* ---------- Стаггер появления: верхний ряд первым, слева направо ----------
   (переназначение из layout.css: Халяль теперь вверху, Атлас внизу) */
@media (prefers-reduced-motion: no-preference) {
    .home-hex .node-halal        { animation-delay: 0.10s; }
    .home-hex .node-ifta         { animation-delay: 0.16s; }
    .home-hex .node-quran        { animation-delay: 0.22s; }
    .home-hex .node-hadith       { animation-delay: 0.28s; }
    .home-hex .node-calendar     { animation-delay: 0.34s; }
    .home-hex .node-dictionary   { animation-delay: 0.40s; }
    .home-hex .node-atlas        { animation-delay: 0.46s; }
    .home-hex .node-digitization { animation-delay: 0.52s; }
    .home-hex .node-maliya       { animation-delay: 0.58s; }
    .home-hex .node-books        { animation-delay: 0.64s; }

    /* Прорисовка лучей от центра (var(--rot) резолвится по элементу) */
    .home-hex .connection-line {
        animation: hexSpokeDraw 0.7s ease-out 0.25s backwards;
    }
    @keyframes hexSpokeDraw {
        from { transform: rotate(var(--rot)) scaleX(0); }
        to   { transform: rotate(var(--rot)) scaleX(1); }
    }
}

/* ============================================================
   АДАПТИВ — перекрывает !important-правила responsive.css
   ============================================================ */
@media (max-width: 1024px) {
    .home-hex { --o: 0.88; } /* R = 220 */
    .home-hex .diagram-container { height: 590px !important; }
    .home-hex .outer-node  { width: 116px !important; height: 134px !important; }
    .home-hex .center-node-shadow { width: 204px; height: 236px; }
    .home-hex .node-icon   { width: 20px !important; height: 20px !important; }
    .home-hex .node-arabic { font-size: 21px !important; }
    .home-hex .node-sub    { font-size: 12px !important; }
}

@media (max-width: 900px) {
    .home-hex { --o: 0.78; } /* R = 195 */
    .home-hex .diagram-container { height: 530px !important; min-height: 0 !important; }
    .home-hex .outer-node  { width: 104px !important; height: 120px !important; }
    .home-hex .center-node-shadow { width: 184px; height: 212px; }
    .home-hex .node-arabic { font-size: 19px !important; }
    .home-hex .node-sub    { font-size: 11.5px !important; }
}

@media (max-width: 700px) {
    .home-hex { --o: 0.68; } /* R = 170 */
    .home-hex .diagram-container {
        height: 470px !important;
        margin: 0 auto !important;
        transform: none !important;
    }
    .home-hex .outer-node  { width: 90px !important; height: 104px !important; padding: 2px 8px 6px !important; }
    .home-hex .center-node-shadow { width: 148px; height: 171px; }
    .home-hex .node-icon   { width: 15px !important; height: 15px !important; margin-bottom: 2px !important; }
    .home-hex .node-arabic { font-size: 16px !important; margin-bottom: 1px !important; }
    .home-hex .node-sub    { font-size: 10.5px !important; }
}

@media (max-width: 535px) {
    /* R = 165: зазор между соседними сотами ~18px по хорде —
       узлы отдельные, не наползают */
    .home-hex { --o: 0.66; }
    /* высота с запасом ~25px сверху/снизу: скролл-контейнер секции режет
       ink overflow — без запаса свечение активной соты срезалось бы */
    .home-hex .diagram-container {
        width: 430px !important;
        max-width: 430px !important;
        height: 460px !important;
    }
    .home-hex .outer-node  { width: 84px !important; height: 97px !important; padding: 2px 7px 6px !important; }
    .home-hex .center-node-shadow { width: 136px; height: 157px; }
    .home-hex .node-icon   { width: 14px !important; height: 14px !important; }
    .home-hex .node-arabic { font-size: 15px !important; }
    .home-hex .node-sub    { font-size: 10px !important; }

}

/* ---------- Тумблер день/ночь в футере (рядом с языком) ---------- */
.home-hex .main-footer-lang {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}
.home-hex .day-night-toggle {
    display: inline-flex;
    align-items: center;
    /* физический контроль: солнце слева, луна справа в любой локали —
       в RTL иначе translateX(26px) выносит бегунок за трек */
    direction: ltr;
    width: 56px;
    height: 30px;
    padding: 3px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.2);
    cursor: pointer;
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}
.home-hex .day-night-toggle:hover {
    border-color: var(--emerald-light);
    box-shadow: 0 0 0 3px rgba(52, 211, 153, 0.12);
}
.home-hex .day-night-toggle .dnt-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.16);
    color: rgba(255, 255, 255, 0.85);
    transition: transform 0.3s ease;
}
.home-hex .day-night-toggle.is-night .dnt-thumb { transform: translateX(26px); }

/* ============================================================
   ШАПКА: обычная белая — узор отключён (решение владельца, ит.4).
   display:none гасит и легаси-хатамы из layout.css; мягкое зелёное
   свечение за заголовком (.home-hero::after) остаётся.
   ============================================================ */
.home-hex .home-hero::before { display: none; }
.home-hex .day-night-toggle .dnt-thumb svg { width: 14px; height: 14px; display: block; }
/* селекторы с .dnt-thumb: правило svg выше сильнее простого .dnt-moon —
   иначе днём видны ОБЕ иконки */
.home-hex .day-night-toggle .dnt-thumb .dnt-moon { display: none; }
.home-hex .day-night-toggle.is-night .dnt-thumb .dnt-moon { display: block; }
.home-hex .day-night-toggle.is-night .dnt-thumb .dnt-sun { display: none; }
