/*
 * Оформление инструментов, перенесённых из темы fortune.
 *
 * Всё ограничено классом post-template-instrument-*, который WordPress ставит
 * на body только у записей с шаблоном инструмента, — остальной сайт не задет.
 *
 * Тема BlackVideo задаёт body { color: #fff } на белом фоне и красит текст
 * отдельными правилами под свою разметку. Разметка старых шаблонов под эти
 * правила не попадает и наследует белый текст на белом фоне, поэтому цвета
 * здесь заданы явно.
 */

body[class*="post-template-instrument-"] .site-content {
    color: #1f2124;
}

body[class*="post-template-instrument-"] .site-content p,
body[class*="post-template-instrument-"] .site-content li,
body[class*="post-template-instrument-"] .site-content div,
body[class*="post-template-instrument-"] .site-content span,
body[class*="post-template-instrument-"] .site-content label,
body[class*="post-template-instrument-"] .site-content td,
body[class*="post-template-instrument-"] .site-content th {
    color: #1f2124;
}

body[class*="post-template-instrument-"] .site-content a {
    color: #16884f;
}

body[class*="post-template-instrument-"] .h2,
body[class*="post-template-instrument-"] .h3,
body[class*="post-template-instrument-"] .h4 {
    color: #1f2124;
    line-height: 1.3;
}

body[class*="post-template-instrument-"] .h2 {
    font-size: 1.4em;
    font-weight: 700;
    margin: 1.2em 0 0.6em;
}

body[class*="post-template-instrument-"] .h3 {
    font-size: 1.2em;
    font-weight: 700;
    margin: 1em 0 0.5em;
}

body[class*="post-template-instrument-"] .h4 {
    font-size: 1em;
    font-weight: 700;
    margin: 0.8em 0 0.3em;
    color: #5c6166;
}

body[class*="post-template-instrument-"] .width-100 {
    width: 100%;
    box-sizing: border-box;
}

body[class*="post-template-instrument-"] .text-right {
    text-align: right;
}

/* Поля ввода */

body[class*="post-template-instrument-"] .site-content select,
body[class*="post-template-instrument-"] .site-content textarea,
body[class*="post-template-instrument-"] .site-content input[type="text"],
body[class*="post-template-instrument-"] .site-content input[type="number"],
body[class*="post-template-instrument-"] .site-content input[type="password"] {
    padding: 9px 11px;
    border: 1px solid #c9ced3;
    border-radius: 4px;
    background: #fff;
    color: #1f2124;
    font: inherit;
    max-width: 100%;
}

body[class*="post-template-instrument-"] .site-content textarea {
    min-height: 96px;
    line-height: 1.45;
}

body[class*="post-template-instrument-"] .site-content textarea::placeholder {
    color: #8a9198;
}

body[class*="post-template-instrument-"] .date-selection__container {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0.8em 0 1.2em;
}

body[class*="post-template-instrument-"] .date-selection__container select {
    min-width: 150px;
}

/* Блок результата */

body[class*="post-template-instrument-"] .blockquote__info {
    margin: 1.2em 0;
    padding: 14px 18px;
    background: #f2f4f6;
    border-left: 3px solid #16884f;
    border-radius: 0 4px 4px 0;
    color: #1f2124;
}

body[class*="post-template-instrument-"] .blockquote__info .h2 {
    margin-top: 0;
}

/* Карта рождения */

body[class*="post-template-instrument-"] .instruments__date-to-birthcard__container {
    margin: 1.2em 0;
    padding: 18px;
    background: #f2f4f6;
    border-radius: 6px;
    text-align: center;
}

body[class*="post-template-instrument-"] .instruments__date-to-birthcard__description {
    color: #5c6166;
    margin-bottom: 6px;
}

body[class*="post-template-instrument-"] .instruments__date-to-birthcard__card {
    font-size: 2.4em;
    font-weight: 700;
    line-height: 1.2;
    color: #1f2124;
}

body[class*="post-template-instrument-"] .site-content ol li {
    margin-bottom: 4px;
}

body[class*="post-template-instrument-"] .site-content img {
    max-width: 100%;
    height: auto;
}

@media (max-width: 600px) {
    body[class*="post-template-instrument-"] .date-selection__container {
        flex-direction: column;
    }

    body[class*="post-template-instrument-"] .date-selection__container select {
        width: 100%;
    }

    body[class*="post-template-instrument-"] .instruments__date-to-birthcard__card {
        font-size: 1.9em;
    }
}

/*
 * Кнопки инструментов в рубрике «Инструменты».
 * Фон — слоновая кость, окантовка и текст — тёмно-зелёный rgb(0,100,0),
 * тот же, которым тема помечает рубрики в лентах записей.
 */

body.category-instrumenty .hentry .entry-title {
    margin: 0 0 8px;
}

body.category-instrumenty .hentry .entry-title a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 86px;
    box-sizing: border-box;
    padding: 16px 18px;
    background: #fffff0;
    border: 2px solid #5c3a1c;
    border-radius: 10px;
    color: #5c3a1c;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    text-decoration: none;
    transition: background-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

body.category-instrumenty .hentry .entry-title a:hover,
body.category-instrumenty .hentry .entry-title a:focus {
    background: #fffef7;
    color: #5c3a1c;
    box-shadow: 0 0 0 3px rgba(92, 58, 28, 0.18), 0 4px 14px rgba(92, 58, 28, 0.28);
    transform: translateY(-1px);
}

body.category-instrumenty .hentry .entry-title a:active {
    transform: translateY(0);
    box-shadow: 0 0 0 3px rgba(92, 58, 28, 0.22);
}

/*
 * Название сайта в шапке.
 * Основная строка — рукописным шрифтом темы с мягким золотым переливом,
 * приписка «Закрытый клуб» — мелкими прописными в разрядку под тонкой линией.
 */

.site-title h1 {
    margin: 0;
}

.site-title h1 a {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 100%;
    padding: 14px 0 16px;
    line-height: 1.06;
    text-decoration: none;
}

.site-title h1 a .site-title__main {
    display: block;
    padding-bottom: 0.06em;
    /* Font Organizer вешает Inter на все span, поэтому шрифт задан явно */
    font-family: "Alexandra Zeferino", "Marck Script", cursive !important;
    font-size: 40px;
    color: #cdc1b1;
    background: linear-gradient(100deg, #b2914f 0%, #f6e8c8 34%, #d8c9ad 62%, #eedaad 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Сам символ «|» в рукописном шрифте почти не читается — рисуем тонкую линию */
.site-title h1 a .site-title__sep {
    display: inline-block;
    width: 1px;
    height: 0.72em;
    margin: 0 0.78em;
    vertical-align: middle;
    font-size: 0;
    background: linear-gradient(180deg,
        rgba(205, 193, 177, 0) 0%,
        rgba(205, 193, 177, 0.95) 50%,
        rgba(205, 193, 177, 0) 100%);
}

.site-title h1 a .site-title__club {
    position: relative;
    display: block;
    margin-top: 11px;
    padding-top: 10px;
    font-family: Inter, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.34em;
    text-transform: uppercase;
    color: rgba(205, 193, 177, 0.72);
    -webkit-text-fill-color: currentColor;
}

.site-title h1 a .site-title__club::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 78px;
    height: 1px;
    background: linear-gradient(90deg, rgba(205, 193, 177, 0.8), rgba(205, 193, 177, 0));
}

@media (max-width: 782px) {
    .site-title h1 a .site-title__main {
        font-size: 25px;
    }

    .site-title h1 a .site-title__club {
        font-size: 10px;
        letter-spacing: 0.26em;
    }
}

/* Шапка темы задана жёсткой высотой 60px — распускаем под две строки названия */

#masthead {
    height: auto;
    min-height: 60px;
}

#masthead .site-title,
#masthead .site-title h1 {
    line-height: normal;
}

/*
 * Единый формат карточек во всех лентах: главная, рубрики, поиск.
 * Тема раскладывает записи плавающими блоками разной высоты — заменяем
 * раскладку на сетку, а миниатюры кадрируем в единое соотношение 4:3.
 */

.content-loop {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
    /* все ряды одной высоты — иначе ряд подстраивается под самую высокую карточку */
    grid-auto-rows: 1fr;
    gap: 24px;
}

.content-loop > .clear,
.content-loop > br {
    display: none;
}

/* у контейнера ленты есть служебные псевдоэлементы очистки от темы;
   в сетке они превращаются в пустые ячейки — первую и последнюю */
.content-loop::before,
.content-loop::after {
    /* правило темы идёт позже нашего файла, поэтому приоритет явно */
    display: none !important;
    content: none !important;
}

.content-loop > .hentry {
    display: flex;
    flex-direction: column;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    background: #fffff0;
    border: 1px solid #5c3a1c;
    border-radius: 10px;
    transition: box-shadow 0.18s ease, transform 0.18s ease;
}

.content-loop > .hentry:hover {
    box-shadow: 0 0 0 3px rgba(92, 58, 28, 0.18), 0 4px 14px rgba(92, 58, 28, 0.28);
    transform: translateY(-1px);
}

.content-loop .thumbnail-link {
    display: block;
}

.content-loop .thumbnail-wrap {
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #f2f4f6;
}

.content-loop .thumbnail-wrap img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.content-loop .entry-header {
    padding: 12px 14px 14px;
}

.content-loop .entry-title {
    /* две строки всегда — иначе плитки с длинными названиями выше остальных */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    min-height: 2.6em;
    margin: 0;
    overflow: hidden;
    font-size: 15px;
    line-height: 1.3;
}

.content-loop .entry-title a {
    color: #1f2124;
    text-decoration: none;
}

.content-loop .entry-meta {
    margin-top: 6px;
    padding: 0;
}

.content-loop .entry-date,
.content-loop .entry-meta,
.content-loop .entry-meta span {
    font-size: 12px;
    color: #5c6166;
}

/* метка рубрики над заголовком */
.content-loop .entry-category {
    margin-bottom: 5px;
    overflow: hidden;
    font-size: 11px;
    line-height: 1.2;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.content-loop .entry-category a {
    color: #5c3a1c;
    text-decoration: none;
}

/* запись без миниатюры — оставляем под неё то же место, чтобы плитки не разъезжались.
   Проверяем именно наличие картинки: у записей под паролем класса has-post-thumbnail нет,
   хотя миниатюра выводится. */
.content-loop > .hentry:not(:has(.thumbnail-wrap))::before {
    content: "";
    display: block;
    aspect-ratio: 4 / 3;
    background: #f2f4f6;
}

/* рука на карточке только там, где клик открывает окно */
body.category-kontakty .content-loop > .hentry {
    cursor: pointer;
}

/*
 * Окно с содержимым записи.
 */

body.cartology-modal-open {
    overflow: hidden;
}

.cartology-modal {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.cartology-modal[hidden] {
    display: none;
}

.cartology-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(17, 17, 17, 0.72);
}

.cartology-modal__window {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 680px;
    max-height: 84vh;
    overflow-y: auto;
    padding: 28px 30px 30px;
    background: #fffff0;
    border: 1px solid rgba(92, 58, 28, 0.35);
    border-radius: 12px;
    box-shadow: 0 18px 60px rgba(0, 0, 0, 0.45);
    color: #1f2124;
    text-align: left;
}

.cartology-modal__close {
    position: absolute;
    top: 10px;
    right: 12px;
    width: 34px;
    height: 34px;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 50%;
    color: #5c6166;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
}

.cartology-modal__close:hover,
.cartology-modal__close:focus {
    background: rgba(92, 58, 28, 0.1);
    color: #5c3a1c;
}

.cartology-modal__title {
    margin: 0 34px 14px 0;
    font-size: 21px;
    line-height: 1.25;
    color: #1f2124;
}

.cartology-modal__content {
    line-height: 1.55;
    color: #1f2124;
}

/* тема красит заголовки и текст в белый — в светлом окне задаём тёмный;
   авторские инлайновые цвета (например, красный) остаются как есть */
.cartology-modal__content p,
.cartology-modal__content li,
.cartology-modal__content div,
.cartology-modal__content span,
.cartology-modal__content strong,
.cartology-modal__content em,
.cartology-modal__content b,
.cartology-modal__content td,
.cartology-modal__content th,
.cartology-modal__content blockquote,
.cartology-modal__content h1,
.cartology-modal__content h2,
.cartology-modal__content h3,
.cartology-modal__content h4,
.cartology-modal__content h5,
.cartology-modal__content h6 {
    color: #1f2124;
}

.cartology-modal__content h1,
.cartology-modal__content h2,
.cartology-modal__content h3,
.cartology-modal__content h4,
.cartology-modal__content h5,
.cartology-modal__content h6 {
    margin: 1.1em 0 0.5em;
    line-height: 1.3;
}

.cartology-modal__content h2 {
    font-size: 18px;
}

.cartology-modal__content h3,
.cartology-modal__content h4,
.cartology-modal__content h5,
.cartology-modal__content h6 {
    font-size: 16px;
}

.cartology-modal__content a {
    color: #5c3a1c;
}

.cartology-modal__content img,
.cartology-modal__content iframe,
.cartology-modal__content video {
    max-width: 100%;
    height: auto;
    border-radius: 6px;
}

.cartology-modal__note {
    color: #5c6166;
}

@media (max-width: 600px) {
    .cartology-modal {
        padding: 12px;
    }

    .cartology-modal__window {
        max-height: 90vh;
        padding: 22px 18px 24px;
    }
}

/*
 * Исключение: рубрика «Инструменты».
 * Там записи без миниатюр, а сама кнопка и есть плитка — заглушка под картинку
 * и рамка карточки только мешают.
 */

body.category-instrumenty .content-loop {
    grid-auto-rows: auto;
    align-items: start;
}

body.category-instrumenty .content-loop > .hentry {
    background: transparent;
    border: 0;
    border-radius: 0;
}

body.category-instrumenty .content-loop > .hentry::before {
    content: none;
}

body.category-instrumenty .content-loop > .hentry:hover {
    box-shadow: none;
    transform: none;
}

body.category-instrumenty .content-loop .entry-header {
    padding: 0;
}

/*
 * Левое меню: пункты в одну строку.
 * У пункта по 15px отступа с каждой стороны, под текст оставалось 120px,
 * и «Главная страница» (134px) с «Характер по карте» (137px) переносились
 * на вторую строку. Сужаем отступы и запрещаем перенос.
 */

#left-menu > li > a {
    /* !important — у темы более сильное правило на отступы пунктов */
    padding-left: 8px !important;
    padding-right: 8px !important;
    /* Font Organizer задаёт кегль с !important — перебиваем тем же */
    font-size: 14px !important;
    white-space: nowrap;
}

/*
 * Кнопки соцсетей в шапке — справа, на уровне названия сайта.
 * Тон тот же, что у названия: тёплый оттенок на тёмном фоне шапки.
 */

.cartology-social {
    display: flex;
    float: right;
    gap: 10px;
    align-items: flex-start;
    margin: 20px 30px 0 20px;
}

.cartology-social__btn {
    display: inline-block;
    padding: 9px 18px;
    border: 1px solid rgba(205, 193, 177, 0.55);
    border-radius: 999px;
    color: #cdc1b1 !important;
    font-family: Inter, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 600;
    letter-spacing: 0.08em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}

.cartology-social__btn:hover,
.cartology-social__btn:focus {
    background: #cdc1b1;
    border-color: #cdc1b1;
    color: #111 !important;
}

@media (max-width: 900px) {
    .cartology-social {
        float: none;
        clear: both;
        margin: 0 0 12px 30px;
    }

    .cartology-social__btn {
        padding: 8px 14px;
        font-size: 11px !important;
    }
}

/*
 * Отступ под прилипшую шапку.
 *
 * Тема делает .site-header фиксированной от 960px и шире (ниже — обычной),
 * а места под неё резервирует как под прежние 60px. После того как в шапке
 * появилась вторая строка, её высота выросла до ~109px, и она стала
 * перекрывать начало содержимого. Особенно заметно на страницах
 * инструментов: их шаблоны выводят текст сразу, без отступов темы.
 */

@media (min-width: 960px) {
    #content {
        padding-top: 66px;
    }

    body[class*="post-template-instrument-"] #content {
        padding-top: 146px;
    }
}

/*
 * Нумерация периодов в инструментах со списками (например «Прогрессии»).
 * Шаблон выводит <ol>, но у списка нулевые отступы, поэтому номера
 * оказывались за краем блока и не были видны.
 */

body[class*="post-template-instrument-"] .site-content ol {
    margin: 0.6em 0 1.2em;
    padding-left: 0;
    list-style: decimal inside;
    counter-reset: none;
}

body[class*="post-template-instrument-"] .site-content ol li {
    margin-bottom: 5px;
    padding: 4px 0 4px 6px;
    border-bottom: 1px solid rgba(92, 58, 28, 0.12);
}

body[class*="post-template-instrument-"] .site-content ol li::marker {
    color: #5c3a1c;
    font-weight: 700;
}

/*
 * Форма заявки (Contact Form 7).
 * Тема красит поля ввода в тёмный — приводим к светлому виду страницы.
 */

.wpcf7-form label {
    display: block;
    margin-bottom: 4px;
    color: #1f2124;
    font-weight: 600;
}

.wpcf7-form p {
    color: #1f2124;
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea {
    width: 100%;
    max-width: 480px;
    padding: 10px 12px;
    background: #fff !important;
    border: 1px solid #c9ced3 !important;
    border-radius: 6px;
    color: #1f2124 !important;
    font: inherit;
}

.wpcf7-form textarea {
    min-height: 110px;
    line-height: 1.5;
}

.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form textarea:focus {
    border-color: #5c3a1c !important;
    outline: none;
}

.wpcf7-form .wpcf7-acceptance .wpcf7-list-item {
    margin: 0;
}

.wpcf7-form .wpcf7-acceptance label {
    display: inline;
    font-weight: 400;
}

.wpcf7-form input[type="submit"] {
    /* тема ставит line-height 42px, из-за чего надпись уезжает вниз */
    height: auto;
    line-height: 1.2 !important;
    text-align: center;
    padding: 13px 26px;
    background: #5c3a1c;
    border: 0;
    border-radius: 8px;
    color: #fffff0;
    font-weight: 700;
    cursor: pointer;
    transition: background-color 0.18s ease;
}

.wpcf7-form input[type="submit"]:hover {
    background: #0a7a34;
}

.wpcf7 form .wpcf7-response-output {
    margin: 1.2em 0 0;
    padding: 12px 16px;
    border-radius: 6px;
    color: #1f2124;
}

/* Главная кнопка шапки — заявка на материал: залита, чтобы выделяться среди соцсетей */

/* Второй ряд в шапке: колода и Луна рядом, под кнопками */
.cartology-social {
    position: relative;
}

.cartology-social__icons {
    position: absolute;
    top: 100%;
    right: 0;
    display: flex;
    gap: 20px;
    align-items: center;
    margin-top: 10px;
}

/* Колода карт в стопке — значок рядом с Луной */
.cartology-deck {
    position: relative;
    display: inline-block;
    width: 27px;
    height: 37px;
    transition: transform 0.2s ease;
}

.cartology-deck i {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: 1px solid #b3aa9c;
    border-radius: 4px;
    background: #f2efe9;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);
    transition: transform 0.2s ease;
}

.cartology-deck i:nth-child(1) {
    background: #ded8cd;
    transform: translate(-8px, 5px) rotate(-15deg);
}

.cartology-deck i:nth-child(2) {
    background: #e9e4db;
    transform: translate(-4px, 2px) rotate(-7deg);
}

/* Верхняя карта — десятка червей в лунных тонах */
.cartology-deck__face {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cartology-deck__face b {
    position: absolute;
    top: 2px;
    left: 3px;
    color: #7d7770;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 8px;
    font-weight: 700;
    line-height: 1;
}

.cartology-deck__heart {
    width: 12px;
    height: 11px;
    margin-top: 3px;
}

.cartology-social__icon:hover .cartology-deck i:nth-child(1),
.cartology-social__icon:focus .cartology-deck i:nth-child(1) {
    transform: translate(-11px, 5px) rotate(-22deg);
}

.cartology-social__icon:hover .cartology-deck i:nth-child(2),
.cartology-social__icon:focus .cartology-deck i:nth-child(2) {
    transform: translate(-5px, 3px) rotate(-12deg);
}

.cartology-social__icon:hover .cartology-deck__face,
.cartology-social__icon:focus .cartology-deck__face {
    transform: translateY(-3px);
}

.cartology-social__icons .cartology-deck {
    flex: 0 0 27px;
    width: 27px;
    height: 37px;
}

.cartology-social__icons .cartology-moon--icon {
    flex: 0 0 44px;
}

.cartology-social__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    text-decoration: none;
}

@media (max-width: 900px) {
    .cartology-social__icons {
        position: static;
        margin: 4px 0 0;
    }
}

.cartology-social__btn--main {
    background: #cdc1b1;
    border-color: #cdc1b1;
    color: #111 !important;
}

.cartology-social__btn--main:hover,
.cartology-social__btn--main:focus {
    background: #f3e6cf;
    border-color: #f3e6cf;
    color: #111 !important;
}

/* Тот же пункт в левом меню — выделен рамкой */

#left-menu > li.cartology-menu-request > a {
    margin: 4px 0;
    padding-right: 5px !important;
    padding-left: 5px !important;
    border: 1px solid rgba(205, 193, 177, 0.55);
    border-radius: 10px;
    color: #cdc1b1 !important;
    font-size: 12px !important;
    text-align: center;
    white-space: nowrap;
}

#left-menu > li.cartology-menu-request > a:hover {
    background-color: #cdc1b1 !important;
    color: #111 !important;
}

/*
 * Каталог библиотеки.
 */

.cartology-catalog {
    align-items: start;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 20px;
    margin: 1.5em 0;
}

.cartology-catalog__card {
    padding: 18px 20px 16px;
    background: #fffff0;
    border: 1px solid #5c3a1c;
    border-radius: 10px;
}

.cartology-catalog__title {
    margin: 0 0 8px;
    font-size: 17px;
    line-height: 1.25;
}

.cartology-catalog__title a {
    color: #5c3a1c !important;
    /* тема подчёркивает ссылки — снимаем с тем же приоритетом */
    text-decoration: none !important;
    font-weight: 700;
}

.cartology-catalog__title a:hover {
    text-decoration: underline;
}

.cartology-catalog__count {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 7px;
    background: rgba(92, 58, 28, 0.1);
    border-radius: 999px;
    color: #5c6166;
    font-size: 11px;
    font-weight: 600;
    vertical-align: middle;
}

.cartology-catalog__desc {
    margin: 0 0 10px;
    color: #5c6166 !important;
    font-size: 13px;
    line-height: 1.45;
}

.cartology-catalog__children {
    margin: 0;
    padding: 0;
    list-style: none;
}

.cartology-catalog__children li {
    /* тема ставит точку-маркер прямо на li */
    list-style: none !important;
    margin: 0 0 4px;
    padding-left: 12px;
    position: relative;
    line-height: 1.4;
}

.cartology-catalog__children li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.62em;
    width: 5px;
    height: 1px;
    background: #5c3a1c;
}

.cartology-catalog__children a {
    color: #1f2124 !important;
    font-size: 14px;
    text-decoration: none !important;
}

.cartology-catalog__children a:hover {
    color: #5c3a1c !important;
}

/*
 * Подпись автора в конце записи.
 */

.cartology-signature {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    margin: 2em 0 0.5em;
    padding-top: 14px;
    border-top: 1px solid rgba(92, 58, 28, 0.25);
}

.cartology-signature__name {
    color: #5c3a1c !important;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.cartology-signature__date {
    color: #5c6166 !important;
    font-size: 13px;
}

/*
 * Архив форума (bbPress).
 * Плагин оформления задаёт тёмно-коричневый фон и чёрный текст на нём —
 * читать невозможно. Переводим на светлую схему сайта.
 */

#bbpress-forums,
#bbpress-forums div.bbp-forum-header,
#bbpress-forums div.bbp-topic-header,
#bbpress-forums div.bbp-reply-header,
#bbpress-forums li.bbp-body ul.forum,
#bbpress-forums li.bbp-body ul.topic,
#bbpress-forums ul.bbp-forums,
#bbpress-forums ul.bbp-topics,
#bbpress-forums ul.bbp-replies,
#bbpress-forums div.even,
#bbpress-forums div.odd,
#bbpress-forums ul.odd,
#bbpress-forums ul.even {
    background: #fff !important;
    color: #1f2124 !important;
    border-color: rgba(92, 58, 28, 0.18) !important;
}

#bbpress-forums ul.odd,
#bbpress-forums div.odd {
    background: #fbfbf6 !important;
}

/* Шапка таблицы */

#bbpress-forums li.bbp-header,
#bbpress-forums li.bbp-header ul,
#bbpress-forums li.bbp-footer,
#bbpress-forums li.bbp-footer ul {
    background: #5c3a1c !important;
    color: #fffff0 !important;
    border-color: #5c3a1c !important;
    font-weight: 600;
}

#bbpress-forums li.bbp-header a,
#bbpress-forums li.bbp-footer a {
    color: #fffff0 !important;
}

/* Текст и ссылки */

#bbpress-forums,
#bbpress-forums p,
#bbpress-forums li,
#bbpress-forums div,
#bbpress-forums span,
#bbpress-forums .bbp-forum-content,
#bbpress-forums .bbp-topic-content,
#bbpress-forums .bbp-reply-content {
    color: #1f2124 !important;
}

#bbpress-forums a {
    color: #5c3a1c !important;
}

#bbpress-forums a:hover {
    color: #0a7a34 !important;
}

/* Названия разделов и тем — крупнее, читаемо */

#bbpress-forums .bbp-forum-title,
#bbpress-forums .bbp-topic-permalink {
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.35;
}

#bbpress-forums .bbp-forum-content {
    font-size: 13px !important;
    color: #5c6166 !important;
    line-height: 1.45;
}

/* Счётчики и служебные подписи */

#bbpress-forums .bbp-forum-topic-count,
#bbpress-forums .bbp-forum-reply-count,
#bbpress-forums .bbp-topic-voice-count,
#bbpress-forums .bbp-topic-reply-count,
#bbpress-forums .bbp-forum-freshness,
#bbpress-forums .bbp-topic-freshness,
#bbpress-forums .bbp-meta,
#bbpress-forums .bbp-author-name {
    color: #5c6166 !important;
    font-size: 13px !important;
}

/* Сообщения в теме */

#bbpress-forums div.bbp-reply-author,
#bbpress-forums div.bbp-topic-author {
    background: #f4f6f4 !important;
    color: #1f2124 !important;
}

#bbpress-forums div.bbp-reply-content,
#bbpress-forums div.bbp-topic-content {
    background: #fff !important;
    line-height: 1.6;
}

/* Хлебные крошки и разделители */

#bbpress-forums .bbp-breadcrumb,
.bbp-breadcrumb {
    color: #5c6166 !important;
    font-size: 13px;
}

.bbp-breadcrumb a {
    color: #5c3a1c !important;
}

#bbpress-forums li.bbp-body ul.forum,
#bbpress-forums li.bbp-body ul.topic {
    border-bottom: 1px solid rgba(92, 58, 28, 0.12) !important;
}


/* Форум: читаемая шапка таблицы и скрытие действий (архив только для чтения) */
#bbpress-forums li.bbp-header,
#bbpress-forums li.bbp-header li,
#bbpress-forums li.bbp-header a,
#bbpress-forums li.bbp-header span {
    color: #fffff0 !important;
}

#bbpress-forums li.bbp-header li {
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em;
}

#bbpress-forums .bsp-new-topic,
#bbpress-forums a.subscription-toggle,
#bbpress-forums .bbp-topic-form,
#bbpress-forums .bbp-reply-form,
#bbpress-forums #new-post {
    display: none !important;
}


/* Форум: страница темы — плагин оформления жёстко задаёт ширину 417px */
#bbpress-forums div.reply,
#bbpress-forums div.bbp-reply-content,
#bbpress-forums li.bbp-body div.reply {
    width: auto !important;
    max-width: none !important;
    float: none !important;
    overflow: hidden;
}

#bbpress-forums div.bbp-reply-content {
    margin-left: 140px !important;
    padding: 14px 16px !important;
    background: transparent !important;
}

#bbpress-forums div.bbp-reply-author {
    width: 120px !important;
    float: left !important;
    padding: 14px 0 14px 12px !important;
    background: transparent !important;
    text-align: center;
}

#bbpress-forums li.bbp-header div,
#bbpress-forums li.bbp-header .bbp-reply-author,
#bbpress-forums li.bbp-header .bbp-reply-content,
#bbpress-forums li.bbp-header .bbp-topic-author,
#bbpress-forums li.bbp-header .bbp-topic-content {
    background: transparent !important;
    background-color: transparent !important;
    color: #fffff0 !important;
}

#bbpress-forums li.bbp-body div.reply {
    border-bottom: 1px solid #e3e6e0 !important;
    background: #ffffff !important;
}

#bbpress-forums li.bbp-body div.reply:nth-child(even) {
    background: #fbfbf6 !important;
}

#bbpress-forums div.bbp-reply-content p {
    color: #1f2124 !important;
    line-height: 1.65;
}


/* Страница «Разборы из архива» */
.razbor-vstuplenie {
    font-size: 17px !important;
    line-height: 1.7;
    color: #3a3f45 !important;
    margin-bottom: 32px;
}

.razbor {
    background: #fffff0;
    border: 1px solid #e0d3c0;
    border-left: 4px solid #5c3a1c;
    border-radius: 10px;
    padding: 22px 26px 18px;
    margin: 0 0 26px;
}

.razbor h2,
.entry-content .razbor h2 {
    margin: 0 0 14px !important;
    font-size: 21px !important;
    line-height: 1.3;
    color: #5c3a1c !important;
    border: 0 !important;
    padding: 0 !important;
}

.razbor-vopros {
    color: #5c6166 !important;
    font-size: 15px !important;
    line-height: 1.6;
    margin-bottom: 14px !important;
}

blockquote.razbor-otvet {
    margin: 0 0 16px !important;
    padding: 14px 18px !important;
    background: #ffffff;
    border: 0 !important;
    border-left: 3px solid #5c3a1c !important;
    border-radius: 0 6px 6px 0;
    font-style: normal !important;
    quotes: none;
}

blockquote.razbor-otvet::before,
blockquote.razbor-otvet::after {
    content: none !important;
}

blockquote.razbor-otvet p {
    margin: 0 0 10px !important;
    font-size: 16px !important;
    line-height: 1.7;
    color: #1f2124 !important;
}

blockquote.razbor-otvet p:last-child {
    margin-bottom: 0 !important;
}

.razbor-pravilo {
    margin: 0 !important;
    padding-top: 14px;
    border-top: 1px dashed #e0d3c0;
    font-size: 16px !important;
    line-height: 1.65;
    color: #1f2124 !important;
}

.razbor-pravilo strong {
    color: #5c3a1c;
}

.razbor-final {
    margin-top: 34px;
    padding: 22px 26px;
    background: #f4f6f4;
    border-radius: 10px;
}

.razbor-final h2,
.entry-content .razbor-final h2 {
    margin: 0 0 12px !important;
    font-size: 20px !important;
    color: #5c3a1c !important;
    border: 0 !important;
    padding: 0 !important;
}

.razbor-final p {
    margin: 0 0 10px !important;
    line-height: 1.7;
}

.razbor-final a {
    color: #5c3a1c !important;
    font-weight: 600;
}

@media (max-width: 600px) {
    .razbor,
    .razbor-final {
        padding: 18px 16px;
    }
}


/* Заголовки страниц: тема задаёт белый цвет на белом фоне — не видно */
#content h1,
#content h1.page-title,
#content .entry-header h1.page-title {
    color: #5c3a1c !important;
    font-size: 26px !important;
    line-height: 1.25;
    margin: 0 0 18px !important;
}


/* Место под левое меню на страницах и записях.
   Тема центрирует .single-wrap, не зная о закреплённой панели слева,
   поэтому содержимое уходило под меню. Ниже 960px панель скрыта самой темой. */
@media only screen and (min-width: 960px) {
    .single-wrap {
        width: auto !important;
        margin-left: 252px !important;
        margin-right: 0 !important;
        padding-left: 10px;
        padding-right: 20px;
    }
}


/* Пустая правая колонка не должна отнимать ширину у текста */
@media only screen and (min-width: 960px) {
    body.cartology-no-sidebar .single-wrap #secondary {
        display: none !important;
    }

    body.cartology-no-sidebar .single-wrap #primary {
        width: 100% !important;
        float: none !important;
    }
}


/* Вступление на главной */
.cartology-hero {
    background: #fffff0;
    border: 1px solid #e0d3c0;
    border-left: 4px solid #5c3a1c;
    border-radius: 10px;
    padding: 11px 22px 12px;
    margin: 0 0 16px;
}

.cartology-hero__title {
    margin: 0 0 5px !important;
    font-size: 19px !important;
    line-height: 1.22;
    color: #5c3a1c !important;
    border: 0 !important;
    padding: 0 !important;
}

.cartology-hero__text {
    margin: 0 0 10px !important;
    max-width: 780px;
    font-size: 14px !important;
    line-height: 1.45;
    color: #3a3f45 !important;
}

.cartology-hero__btns {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.cartology-hero__btn {
    display: inline-block;
    padding: 6px 16px;
    border: 1px solid #5c3a1c;
    border-radius: 22px;
    background: #ffffff;
    color: #5c3a1c !important;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none !important;
    transition: background 0.2s ease, color 0.2s ease;
}

.cartology-hero__btn:hover {
    background: #5c3a1c;
    color: #fffff0 !important;
}

/* Тот же цвет, что у плашки «Заказать» */
.cartology-hero__btn--main {
    background: #4d3016;
    border-color: #4d3016;
    color: #ffffff !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.14);
}

.cartology-hero__btn--main:hover,
.cartology-hero__btn--main:focus {
    background: #7a5027;
    border-color: #7a5027;
    color: #ffffff !important;
}

.cartology-hero__btn--main:active {
    background: #301c0c;
    border-color: #301c0c;
    color: #ffffff !important;
}

/* Подвал. Тема печатает его белым текстом на белом фоне — даём тёмную подложку */
#site-bottom {
    margin-top: 40px;
    padding: 34px 30px 26px !important;
    background: #111111;
    border-radius: 10px 10px 0 0;
    text-align: left !important;
}

.cartology-footer__cols {
    display: flex;
    flex-wrap: wrap;
    gap: 28px 30px;
}

.cartology-footer__col {
    flex: 1 1 175px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.cartology-footer__title {
    font-size: 12px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #8f9a8f;
    margin-bottom: 2px;
}

.cartology-footer__col a {
    color: #e8e8dc !important;
    font-size: 15px;
    text-decoration: none !important;
}

.cartology-footer__col a:hover {
    color: #00e676 !important;
}

.cartology-footer__about {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.6;
    color: #a8ada6 !important;
}

.cartology-footer__soc {
    margin-top: 4px;
    font-size: 14px;
    color: #6f756e;
}

.cartology-footer__note {
    margin: 26px 0 6px !important;
    padding-top: 18px;
    border-top: 1px solid #2a2d2a;
    font-size: 13px !important;
    line-height: 1.6;
    color: #7e847c !important;
}

.cartology-footer__copy {
    margin: 0 !important;
    font-size: 13px !important;
    color: #7e847c !important;
}

@media (max-width: 600px) {
    .cartology-hero {
        padding: 20px 16px;
    }

    #site-bottom {
        padding: 26px 18px 20px !important;
    }
}


/* На страницах подвал лежит рядом с .single-wrap, а не внутри неё,
   поэтому уходил под закреплённое меню слева */
@media only screen and (min-width: 960px) {
    .single-wrap + #site-bottom {
        margin-left: 252px;
    }
}


/* Кнопки шапки на узких экранах переносятся, а не уезжают за край */
@media (max-width: 900px) {
    .cartology-social {
        flex-wrap: wrap;
        row-gap: 8px;
        margin-left: 20px !important;
        margin-right: 20px !important;
    }
}





/* Метки записи: тема выводит их сама — оформляем как «хештеги» */
.entry-tags {
    display: block;
    margin: 22px 0 0;
    padding-top: 18px;
    border-top: 1px solid #e3e6e0;
}

.entry-tags .tag-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.entry-tags a[rel~="tag"] {
    display: inline-block;
    padding: 6px 14px !important;
    border: 1px solid #e0d3c0 !important;
    border-radius: 999px !important;
    background: #fffff0 !important;
    color: #5c3a1c !important;
    font-size: 13px !important;
    font-weight: 600;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    text-decoration: none !important;
    white-space: nowrap;
    transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.entry-tags a[rel~="tag"]::before {
    content: '#';
    opacity: 0.65;
}

.entry-tags a[rel~="tag"]:hover,
.entry-tags a[rel~="tag"]:focus {
    background: #5c3a1c !important;
    border-color: #5c3a1c !important;
    color: #fffff0 !important;
}


/* Пояснение к изделиям «Живой материи» */
.cartology-artifact-note {
    margin: 24px 0 0 !important;
    padding: 14px 18px;
    background: #fffff0;
    border-left: 3px solid #5c3a1c;
    border-radius: 0 6px 6px 0;
    font-size: 15px !important;
    line-height: 1.65;
    color: #3a3f45 !important;
}


/* Заголовки, которые тема выводит белым на белом фоне */
#content .comment-reply-title,
#content .widgettitle,
#content .widget-title {
    color: #5c3a1c !important;
}

#content .comment-reply-title small a {
    color: #5c6166 !important;
    font-size: 14px;
    font-weight: 400;
}


/* Заголовок на странице инструмента: лежит прямо в контейнере и наследует белый цвет темы */
#content > .clear > h2,
#content > .clear > h3,
#content .noselect h1,
#content .noselect h2,
#content .noselect h3 {
    color: #5c3a1c !important;
}

#content .noselect h2 {
    margin-top: 26px !important;
    font-size: 20px !important;
}


/* Смысловые группы в левом меню */
#left-menu > li.cartology-group-title {
    list-style: none !important;
    margin: 18px 0 6px 10px !important;
    padding: 0 !important;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.14em;
    line-height: 1.4;
    text-transform: uppercase;
    color: #c69a63;
}

#left-menu > li.cartology-group-title::marker {
    content: none;
}

#left-menu > li.cartology-group {
    margin-left: 10px !important;
    padding-left: 8px !important;
    border-left: 2px solid #8a5a2b;
}

@media (max-width: 959px) {
    #left-menu > li.cartology-group-title {
        margin-left: 0 !important;
    }

    #left-menu > li.cartology-group {
        margin-left: 0 !important;
        padding-left: 8px !important;
    }
}


/* Кнопка поиска: значок темы — шрифтовой, его перебивает плагин шрифтов.
   Рисуем лупу картинкой, чтобы она не зависела от шрифтов. */
#searchform .search-submit .genericon {
    display: block;
    width: 22px;
    height: 22px;
    font-size: 0 !important;
    line-height: 0 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cline x1='15.5' y1='15.5' x2='20.5' y2='20.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px 20px;
}

#searchform .search-input::placeholder {
    color: #9aa09a;
    opacity: 1;
}


/* Прокрутка левой панели.
   Тема подключает свой скрипт прокрутки, но он не работает: нижние пункты
   меню просто обрезаются высотой экрана. Включаем обычную прокрутку. */
@media only screen and (min-width: 960px) {
    .left-sidebar-wrap {
        overflow-y: auto !important;
        overscroll-behavior: contain;
        scrollbar-width: thin;
        scrollbar-color: rgba(255, 255, 255, 0.28) transparent;
    }

    .left-sidebar-wrap .mCustomScrollBox,
    .left-sidebar-wrap .mCSB_container {
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        top: 0 !important;
    }

    .left-sidebar-wrap .mCSB_container {
        padding-bottom: 40px;
    }

    .left-sidebar-wrap .mCSB_scrollTools {
        display: none !important;
    }

    .left-sidebar-wrap::-webkit-scrollbar {
        width: 6px;
    }

    .left-sidebar-wrap::-webkit-scrollbar-track {
        background: transparent;
    }

    .left-sidebar-wrap::-webkit-scrollbar-thumb {
        background: rgba(255, 255, 255, 0.28);
        border-radius: 3px;
    }
}


/* Подпись автора в шапке */
.cartology-author {
    display: block;
    margin-top: 4px;
    font-size: 10px !important;
    letter-spacing: 0.2em;
    line-height: 1.3;
    text-transform: uppercase;
    color: rgba(205, 193, 177, 0.72);
    white-space: nowrap;
}

@media (max-width: 600px) {
    .cartology-author {
        letter-spacing: 0.12em;
        white-space: normal;
    }
}


/* Плашки цены и формата в карточках лент */
.cartology-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin: 8px 0 2px;
}

.cartology-badge {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px !important;
    font-weight: 600;
    line-height: 1.3;
    white-space: nowrap;
    text-decoration: none !important;
}

/* Селекторы с двумя классами — в лентах тема красит любые ссылки в #111 через !important */
.cartology-badge.cartology-badge--sum {
    background: #fffff0;
    border: 1px solid #e0d3c0;
    color: #4d3016 !important;
    font-weight: 700;
}

a.cartology-badge.cartology-badge--price {
    background: #4d3016;
    border: 1px solid #4d3016;
    color: #ffffff !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.14);
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, transform 0.1s ease;
}

a.cartology-badge.cartology-badge--price:hover,
a.cartology-badge.cartology-badge--price:focus {
    background: #7a5027;
    border-color: #7a5027;
    color: #ffffff !important;
    box-shadow: 0 3px 9px rgba(6, 79, 30, 0.45);
    transform: translateY(-1px);
}

/* Нажатие: кнопка «проваливается» */
a.cartology-badge.cartology-badge--price:active {
    background: #301c0c;
    border-color: #301c0c;
    color: #ffffff !important;
    box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.35);
    transform: translateY(1px);
}

.cartology-badge.cartology-badge--format {
    background: #fffff0;
    padding: 4px 9px;
    font-size: 11px !important;
    letter-spacing: 0.03em;
}

.cartology-badge.cartology-badge--pdf {
    border: 1px solid #e57373;
    color: #e53935 !important;
}

.cartology-badge.cartology-badge--word {
    border: 1px solid #7ea3e0;
    color: #1a56b8 !important;
}

.cartology-badge.cartology-badge--audio {
    border: 1px solid #a98fdc;
    color: #6a3fb5 !important;
}

.cartology-badge.cartology-badge--photo {
    border: 1px solid #e0b87e;
    color: #a86b12 !important;
}

.cartology-badge.cartology-badge--table {
    border: 1px solid #7ec4c4;
    color: #0f7b7b !important;
}

/* Предупреждение об авторских материалах в форме заказа */
.cartology-notice {
    margin: 0 0 22px;
    padding: 14px 18px;
    border: 1px solid #e0d3c0;
    border-left: 4px solid #5c3a1c;
    border-radius: 6px;
    background: #fbf6ef;
    color: #3d2c1c;
    font-size: 14px;
    line-height: 1.55;
}

.cartology-notice b {
    color: #5c3a1c;
}

/* Описание рубрики над лентой — чуть мельче основного текста */
.taxonomy-description {
    max-width: 820px;
    font-size: 13.5px !important;
    line-height: 1.6 !important;
}

.taxonomy-description p {
    margin: 0 0 9px !important;
    font-size: 13.5px !important;
    line-height: 1.6 !important;
}

/* Те же плашки в конце самой записи — чтобы заказать, дочитав до конца */
.cartology-badges--single {
    gap: 8px;
    margin: 22px 0 4px;
    padding-top: 16px;
    border-top: 1px solid #e6ddd0;
}

.cartology-badges--single .cartology-badge {
    padding: 7px 16px;
    font-size: 14px !important;
}

.cartology-badges--single .cartology-badge--format {
    padding: 7px 14px;
    font-size: 13px !important;
}

/*
 * Длинные названия рубрик не влезали в панель: у обёртки и у самого списка
 * по 15px отступа с каждой стороны, плюс тема запрещала перенос строк.
 */
#left-menu {
    padding-left: 5px !important;
    padding-right: 5px !important;
}

#left-menu li a {
    white-space: nowrap !important;
}

/* Панель на прежнем месте, но текст внутри тёмной рамки поднят выше */
.left-sidebar-wrap {
    padding-left: 12px !important;
    padding-right: 10px !important;
}

.left-navigation {
    padding-top: 6px !important;
}

#left-menu {
    padding-top: 4px !important;
}

@media (min-width: 901px) {
    .left-sidebar,
    .left-sidebar-wrap {
        width: 248px !important;
    }

    .content-wrap,
    .single-wrap {
        margin-left: 250px !important;
    }
}

#left-menu > li.cartology-group {
    margin-left: 8px;
}

#left-menu > li > a,
#left-menu ul.children > li > a {
    line-height: 1.35;
}

#left-menu > li.cartology-menu-request > a {
    white-space: nowrap !important;
}

/* Луна в шапке и на странице календаря */
.cartology-moon {
    position: relative;
    display: inline-block;
    line-height: 0;
}

.cartology-moon img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
    filter: brightness(1.9) contrast(1.15);
}

.cartology-moon__shadow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.cartology-moon--icon {
    width: 44px;
    height: 44px;
}

.cartology-moon--icon img {
    box-shadow: 0 0 10px rgba(255, 250, 235, 0.28);
}

/* Поверхность медленно поворачивается — тень фазы остаётся на месте */
@keyframes cartology-moon-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.cartology-moon__spin {
    animation: cartology-moon-spin 120s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
    .cartology-moon__spin { animation: none; }
}

.cartology-social__icon:hover .cartology-moon--icon img,
.cartology-social__icon:focus .cartology-moon--icon img {
    box-shadow: 0 0 16px rgba(255, 250, 235, 0.55);
}

/* Страница лунного календаря */
.cartology-moon--big { width: 190px; height: 190px; flex: 0 0 auto; }
.cartology-moon--cell { width: 30px; height: 30px; }

.cartology-moon-today {
    display: flex;
    flex-wrap: wrap;
    gap: 28px;
    align-items: center;
    margin: 6px 0 26px;
    padding: 22px 24px;
    border: 1px solid #e0d3c0;
    border-left: 4px solid #4d3016;
    border-radius: 10px;
    background: #10131a;
}

.cartology-moon-today__text { flex: 1 1 260px; color: #e8e6e1; }

.cartology-moon-today__day {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
    color: #ffffff;
}

.cartology-moon-today__phase {
    margin-top: 4px;
    font-size: 16px;
    color: #cdc1b1;
}

.cartology-moon-facts {
    margin: 14px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.cartology-moon-facts li {
    margin: 0 0 5px !important;
    padding: 0 0 0 16px !important;
    font-size: 14px;
    color: #d7d4cd !important;
    position: relative;
}

.cartology-moon-facts li::before {
    content: '·';
    position: absolute;
    left: 4px;
    color: #b39168;
}

.cartology-moon-facts b { color: #ffffff; }

.cartology-moon-month {
    margin: 26px 0 12px !important;
    font-size: 20px !important;
    text-transform: capitalize;
}

.cartology-moon-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 6px;
    max-width: 640px;
}

.cartology-moon-grid__wd {
    padding: 4px 0;
    font-size: 12px;
    font-weight: 600;
    color: #95826a;
    text-align: center;
    text-transform: uppercase;
}

.cartology-moon-cell {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    padding: 7px 2px 6px;
    border: 1px solid #e6ddd0;
    border-radius: 8px;
    background: #12151c;
}

.cartology-moon-cell--empty { border: 0; background: none; }

.cartology-moon-cell--today {
    border-color: #7a5027;
    box-shadow: 0 0 0 2px rgba(122, 80, 39, 0.25);
}

.cartology-moon-cell__num { font-size: 12px; font-weight: 700; color: #e8e6e1; }
.cartology-moon-cell__day { font-size: 10px; color: #9c8a70; }

.cartology-moon-note {
    max-width: 640px;
    margin-top: 14px !important;
    font-size: 13px !important;
    color: #6b7280 !important;
}

@media (max-width: 600px) {
    .cartology-moon--big { width: 140px; height: 140px; }
    .cartology-moon--cell { width: 24px; height: 24px; }
    .cartology-moon-grid { gap: 4px; }
}

/* Тема красит текст в лентах и на страницах в тёмный — усиливаем селекторы */
#content .cartology-moon-today,
#content .cartology-moon-today__day,
#content .cartology-moon-today__phase,
#content .cartology-moon-facts,
#content .cartology-moon-facts li,
#content .cartology-moon-facts li b,
#content .cartology-moon-cell__num,
#content .cartology-moon-cell__day {
    color: #e8e6e1 !important;
}

#content .cartology-moon-today__day,
#content .cartology-moon-facts li b { color: #ffffff !important; }
#content .cartology-moon-today__phase { color: #cdc1b1 !important; }
#content .cartology-moon-cell__day { color: #a08b70 !important; }
#content .cartology-moon-facts li::before { color: #b39168 !important; }

/* Месяц списком */
.cartology-moon--mini { width: 22px; height: 22px; flex: 0 0 auto; }

.cartology-moon-listtitle {
    margin: 28px 0 10px !important;
    font-size: 18px !important;
}

.cartology-moon-list {
    max-width: 640px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    border: 1px solid #e6ddd0;
    border-radius: 10px;
    overflow: hidden;
}

.cartology-moon-list__item {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 !important;
    padding: 7px 12px !important;
    border-top: 1px solid #f0e9df;
    font-size: 13.5px;
}

.cartology-moon-list__item:first-child { border-top: 0; }
.cartology-moon-list__item::before { content: none !important; }

.cartology-moon-list__item--today {
    background: #f8f2e9;
    font-weight: 600;
}

.cartology-moon-list__date {
    flex: 0 0 92px;
    color: #3a3f45;
    text-transform: capitalize;
}

.cartology-moon-list__phase { flex: 1 1 auto; color: #4d3016; }

.cartology-moon-list__num {
    flex: 0 0 122px;
    color: #6b7280;
    font-size: 12.5px;
    text-align: right;
    white-space: nowrap;
}

#content .cartology-moon-list__date { color: #3a3f45 !important; }
#content .cartology-moon-list__phase { color: #4d3016 !important; }
#content .cartology-moon-list__num { color: #6b7280 !important; }

@media (max-width: 520px) {
    .cartology-moon-list__date { flex-basis: 78px; }
    .cartology-moon-list__num { font-size: 11.5px; }
}

/* Поиск встаёт под кнопками шапки, ровно по их левому краю */
@media (min-width: 901px) {
    .header-search {
        float: right !important;
        clear: right !important;
        width: 150px !important;
        margin: 0 150px 0 0 !important;
    }

    .header-search form,
    .header-search .search-field,
    .header-search input[type="search"] {
        width: 150px !important;
        max-width: 150px !important;
    }
}

/* Поиск внутри приветственной рамки, в правом верхнем углу */
.cartology-hero {
    position: relative;
}

.cartology-hero__search {
    position: absolute;
    top: 12px;
    right: 16px;
    width: 170px;
}

.cartology-hero__search form {
    position: relative;
    margin: 0;
}

.cartology-hero__search input[type="search"],
.cartology-hero__search .search-field {
    width: 170px !important;
    max-width: 170px !important;
    padding: 6px 34px 6px 12px !important;
    border: 1px solid #e0d3c0 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #3d2c1c !important;
    font-size: 13px !important;
    box-sizing: border-box;
}

.cartology-hero__search .search-submit {
    position: absolute !important;
    top: 50% !important;
    right: 4px !important;
    width: 26px !important;
    height: 26px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateY(-50%);
    border-radius: 50% !important;
}

/* на главной поле переехало в рамку — в шапке оно не нужно */
body.home .header-search {
    display: none !important;
}

@media (max-width: 900px) {
    .cartology-hero__search {
        position: static;
        width: auto;
        margin: 0 0 10px;
    }

    .cartology-hero__search input[type="search"],
    .cartology-hero__search .search-field {
        width: 100% !important;
        max-width: 100% !important;
    }
}

@media (min-width: 901px) {
    /* оставляем место под поле поиска в углу рамки */
    .cartology-hero__title,
    .cartology-hero__text {
        padding-right: 200px !important;
    }
}

/* Лупа ровно по центру круглой кнопки: рисуем её фоном */
.cartology-hero__search .search-submit {
    background-color: #8a5a2b !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.6 15.6 21 21'/%3E%3C/svg%3E") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: 13px 13px !important;
    border: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
}

.cartology-hero__search .search-submit:hover,
.cartology-hero__search .search-submit:focus {
    background-color: #089c43 !important;
}

/* Шапка: тёмно-коричневый фон и тёплый янтарный текст */
body .site-header,
body .site-start,
body header#masthead {
    background-color: #1a120c !important;
    background-image:
        linear-gradient(118deg, rgba(96, 66, 40, 0.30), rgba(20, 13, 8, 0.55) 62%),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='v'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.012 0.05' numOctaves='5' seed='21'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 0.62 0 0 0 0 0.48 0 0 0 0 0.32 1 0 0 0 0'/%3E%3CfeComponentTransfer%3E%3CfeFuncA type='table' tableValues='0 0 0.05 0.45 0.1 0 0 0'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23v)'/%3E%3C/svg%3E"),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='420'%3E%3Cfilter id='v'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.004 0.016' numOctaves='6' seed='9'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 0.80 0 0 0 0 0.64 0 0 0 0 0.44 1 0 0 0 0'/%3E%3CfeComponentTransfer%3E%3CfeFuncA type='table' tableValues='0 0 0 0.1 0.9 0.2 0 0'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23v)'/%3E%3C/svg%3E") !important;
    background-repeat: repeat, repeat, repeat !important;
    background-size: auto, 300px 300px, 420px 420px !important;
    border-bottom: 1px solid #34241a !important;
}

body .site-title a,
body .site-title__club,
body .cartology-author {
    color: #e0a35a !important;
}

body .cartology-social__btn {
    border-color: rgba(224, 163, 90, 0.5) !important;
    color: #e0a35a !important;
}

body .cartology-social__btn:hover,
body .cartology-social__btn:focus {
    background: #e0a35a !important;
    border-color: #e0a35a !important;
    color: #150f0a !important;
}

body .cartology-social__btn--main {
    background: #e0a35a !important;
    border-color: #e0a35a !important;
    color: #150f0a !important;
}

body .cartology-social__btn--main:hover,
body .cartology-social__btn--main:focus {
    background: #f0b877 !important;
    border-color: #f0b877 !important;
    color: #150f0a !important;
}

/* Остатки зелёного из темы: рамка выпадающего списка и цвет ссылок */
body #left-menu ul.children {
    border-color: #5c3a1c !important;
}

body .entry-content a,
body .page-content a,
body .taxonomy-description a,
body .cartology-catalog a,
body .comment-content a,
body #site-bottom a {
    color: #8a5a2b !important;
}

body .entry-content a:hover,
body .page-content a:hover,
body .taxonomy-description a:hover,
body .cartology-catalog a:hover,
body .comment-content a:hover,
body #site-bottom a:hover {
    color: #c69a63 !important;
}

body .cartology-hero__btn,
body .cartology-badge,
body .cartology-social__btn,
body .cartology-catalog__card a {
    color: inherit;
}

/* Зелёные детали темы: полоска у заголовков, кнопка поиска в тексте, простые ссылки */
body #content h1,
body #content h2,
body #content .page-title,
body #content .entry-title,
body .taxonomy-description,
body #content .archive-title {
    border-left-color: #8a5a2b !important;
}

body #content .search-submit,
body #content input[type="submit"],
body .search-form .search-submit,
body .no-results .search-submit {
    background-color: #5c3a1c !important;
    border-color: #5c3a1c !important;
    color: #ffffff !important;
}

body #content .search-submit:hover,
body #content input[type="submit"]:hover,
body .search-form .search-submit:hover {
    background-color: #7a5027 !important;
    border-color: #7a5027 !important;
}

body #content a:not([class]),
body #content a:not([class]):visited {
    color: #8a5a2b !important;
}

body #content a:not([class]):hover {
    color: #c69a63 !important;
}

/* Наведение в левом меню и на карточках — тоже коричневое */
body #left-menu a:hover,
body #left-menu a:focus,
body #left-menu li.current-cat > a,
body #left-menu ul.children a:hover,
body .mobile-menu ul li a:hover {
    color: #c69a63 !important;
}

body #left-menu > li.cartology-menu-request > a:hover {
    background-color: #c69a63 !important;
    color: #17100b !important;
}

body .entry-title a:hover,
body .content-loop .entry-title a:hover,
body .entry-related .hentry .entry-title a:hover,
body .sidebar .widget a:hover,
body .entry-meta a:hover {
    color: #8a5a2b !important;
}

/* Поиск в шапке на внутренних страницах — тот же вид, что в рамке на главной */
body .header-search .search-field,
body .header-search input[type="search"] {
    border: 1px solid rgba(224, 163, 90, 0.45) !important;
    border-radius: 999px !important;
    background: #241811 !important;
    color: #efe3d3 !important;
    padding: 6px 38px 6px 14px !important;
    font-size: 13px !important;
}

body .header-search .search-submit {
    width: 26px !important;
    height: 26px !important;
    top: 50% !important;
    right: 5px !important;
    transform: translateY(-50%) !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background-color: #8a5a2b !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.6 15.6 21 21'/%3E%3C/svg%3E") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: 13px 13px !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
}

body .header-search .search-submit:hover,
body .header-search .search-submit:focus {
    background-color: #a86f36 !important;
}

/* Зелёная подсветка темы при наведении в меню */
body .left-sidebar #left-menu a:hover,
body .left-sidebar #left-menu a:focus,
body .left-sidebar #left-menu li.current-cat > a,
body .left-sidebar #left-menu ul.children a:hover {
    color: #c69a63 !important;
}

.cartology-moon-list__sign {
    flex: 0 0 100px;
    color: #6b7280;
    font-size: 12.5px;
}

#content .cartology-moon-list__sign { color: #7a6a58 !important; }

@media (max-width: 520px) {
    .cartology-moon-list__sign { flex-basis: 74px; font-size: 11.5px; }
    .cartology-moon-list__num { flex-basis: 104px; }
}

/* Все названия рубрик в панели — одним цветом (у родительских тема ставила белый) */
body .left-sidebar #left-menu a,
body .left-sidebar #left-menu a:visited,
body .left-sidebar #left-menu ul.children a,
body .left-sidebar #left-menu li.cat-item > a {
    color: #c69a63 !important;
}

body .left-sidebar #left-menu a:hover,
body .left-sidebar #left-menu a:focus,
body .left-sidebar #left-menu li.current-cat > a {
    color: #f0dcc0 !important;
}

body #left-menu > li.cartology-menu-request > a {
    color: #c69a63 !important;
    border-color: rgba(198, 154, 99, 0.5) !important;
}

body #left-menu > li.cartology-menu-request > a:hover {
    background-color: #c69a63 !important;
    color: #17100b !important;
}

/* Выпадающий список подрубрик — на белом фоне, поэтому текст тёмно-коричневый */
body .left-sidebar #left-menu ul.children a,
body .left-sidebar #left-menu ul.children a:visited,
body #left-menu ul.children > li > a {
    color: #4d3016 !important;
}

body .left-sidebar #left-menu ul.children a:hover,
body .left-sidebar #left-menu ul.children a:focus,
body .left-sidebar #left-menu ul.children li.current-cat > a {
    color: #f0dcc0 !important;
}

/* Страницы инструментов идут без боковой панели — текст упирался в край окна */
body[class*="post-template-instrument-"] .site-content {
    padding-left: 30px !important;
    padding-right: 30px !important;
    box-sizing: border-box;
}

@media (max-width: 700px) {
    body[class*="post-template-instrument-"] .site-content {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

/* Сноска про срок службы отливки */
.cartology-casting-note {
    margin: 18px 0 0 !important;
    padding: 10px 14px;
    border: 1px solid #e0d3c0;
    border-left: 4px solid #8a5a2b;
    border-radius: 6px;
    background: #fbf6ef;
    font-size: 14px !important;
    line-height: 1.5;
}

#content .cartology-casting-note,
#content .cartology-casting-note b,
#content .cartology-casting-note u {
    color: #3d2c1c !important;
}

.cartology-casting-note b { color: #5c3a1c !important; }
.cartology-casting-note u { text-decoration-thickness: 2px; text-underline-offset: 3px; }
/* Масти карт напротив тематических подрубрик «Живой материи» */
.cartology-suit {
    float: right;
    margin-left: 12px;
    font-family: "Segoe UI Symbol", "Noto Sans Symbols 2", "DejaVu Sans", "Arial Unicode MS", Georgia, serif !important;
    font-size: 38px !important;
    font-style: normal;
    font-weight: 400;
    line-height: 0.8;
    vertical-align: middle;
}

.cartology-suit--red {
    color: #b3241f;
}

.cartology-suit--black {
    color: #3a2515;
}
/* Ряд значков в шапке: перо, Одноклассники, МАКС, колода, Луна */
.cartology-social {
    gap: 14px;
    align-items: center;
    margin: 18px 30px 0 20px;
}

.cartology-social__icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    transition: transform 0.16s ease, background-color 0.16s ease, color 0.16s ease,
                border-color 0.16s ease;
}

.cartology-social__icon:hover,
.cartology-social__icon:focus {
    transform: translateY(-2px);
}

.cartology-ico {
    display: block;
    width: 26px;
    height: 26px;
}

.cartology-ico--brand {
    width: 30px;
    height: 30px;
}

.cartology-social__icon--mail {
    color: #e0d3bf;
    border: 1px solid rgba(205, 193, 177, 0.5);
}

.cartology-social__icon--mail:hover,
.cartology-social__icon--mail:focus {
    background: #e0d3bf;
    border-color: #e0d3bf;
    color: #2a1a0d;
}

.cartology-social__sep {
    width: 1px;
    height: 26px;
    margin: 0 2px;
    background: rgba(205, 193, 177, 0.35);
}

.cartology-social .cartology-deck {
    flex: 0 0 24px;
    width: 24px;
    height: 33px;
}

.cartology-social .cartology-moon--icon {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
}

@media (max-width: 900px) {
    .cartology-social {
        gap: 12px;
        margin: 0 0 12px 30px;
    }
}
/* Значки поменьше; на главной — в правом нижнем углу блока с поиском */
.cartology-social__icon {
    width: 32px;
    height: 32px;
}

.cartology-ico {
    width: 21px;
    height: 21px;
}

.cartology-ico--brand {
    width: 24px;
    height: 24px;
}

.cartology-social__sep {
    height: 20px;
}

.cartology-social .cartology-deck {
    flex: 0 0 19px;
    width: 19px;
    height: 26px;
}

.cartology-social .cartology-moon--icon {
    flex: 0 0 27px;
    width: 27px;
    height: 27px;
}

.cartology-hero {
    position: relative;
}

.cartology-hero .cartology-social {
    position: absolute;
    right: 22px;
    bottom: 18px;
    float: none;
    gap: 10px;
    margin: 0;
}

@media (max-width: 700px) {
    .cartology-hero .cartology-social {
        position: static;
        justify-content: flex-end;
        margin: 14px 0 0;
    }
}
/* Луна и колода в шапке — прежний размер; мелкие значки только в блоке с поиском */
.cartology-social .cartology-deck {
    flex: 0 0 27px;
    width: 27px;
    height: 37px;
}

.cartology-social .cartology-moon--icon {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
}

.cartology-hero .cartology-social__icon {
    width: 30px;
    height: 30px;
}

.cartology-hero .cartology-ico {
    width: 20px;
    height: 20px;
}

.cartology-hero .cartology-ico--brand {
    width: 23px;
    height: 23px;
}
/* Весь ряд в блоке с поиском — колода и Луна тоже уменьшены */
.cartology-hero .cartology-deck {
    flex: 0 0 19px;
    width: 19px;
    height: 26px;
}

.cartology-hero .cartology-moon--icon {
    flex: 0 0 27px;
    width: 27px;
    height: 27px;
}

.cartology-hero .cartology-social__sep {
    height: 19px;
}
/* Плашка «Карта дня» — календарный листок, вместо числа карта */
.cartology-daycard {
    position: relative;
    float: right;
    display: block;
    width: 96px;
    margin: 26px 30px 0 18px;
    padding: 0 0 6px;
    border-radius: 10px;
    background: #f3e6d4;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.35);
    color: #4d3016 !important;
    text-align: center;
    text-decoration: none !important;
    transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.cartology-daycard:hover,
.cartology-daycard:focus {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(0, 0, 0, 0.45);
}

.cartology-daycard__rings {
    position: absolute;
    top: -7px;
    left: 0;
    display: flex;
    justify-content: center;
    gap: 12px;
    width: 100%;
}

.cartology-daycard__rings i {
    width: 6px;
    height: 14px;
    border: 2px solid #cdc1b1;
    border-radius: 3px;
    background: #2a1a0d;
}

.cartology-daycard__top {
    display: block;
    padding: 9px 0 5px;
    border-radius: 10px 10px 0 0;
    background: #5c3a1c;
    color: #e8d6bb;
    font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.cartology-daycard__face {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 2px;
    padding: 6px 0 2px;
    font-family: Georgia, "Times New Roman", serif;
    line-height: 1;
}

.cartology-daycard__rank {
    font-size: 30px;
    font-weight: 700;
}

.cartology-daycard__suit {
    font-family: "Segoe UI Symbol", "Noto Sans Symbols 2", "DejaVu Sans", Georgia, serif;
    font-size: 26px;
}

.cartology-daycard--red .cartology-daycard__rank,
.cartology-daycard--red .cartology-daycard__suit {
    color: #b3241f;
}

.cartology-daycard--black .cartology-daycard__rank,
.cartology-daycard--black .cartology-daycard__suit {
    color: #33210f;
}

.cartology-daycard__date {
    display: block;
    font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    font-size: 10px;
    letter-spacing: 0.04em;
    opacity: 0.75;
}

@media (max-width: 900px) {
    .cartology-daycard {
        margin: 0 30px 12px 0;
    }
}
/* Плашка «Карта дня» — вдвое меньше */
.cartology-daycard {
    width: 52px;
    margin: 24px 30px 0 16px;
    padding: 0 0 4px;
    border-radius: 7px;
}

.cartology-daycard__rings {
    top: -4px;
    gap: 7px;
}

.cartology-daycard__rings i {
    width: 4px;
    height: 8px;
    border-width: 1px;
    border-radius: 2px;
}

.cartology-daycard__top {
    padding: 5px 0 3px;
    border-radius: 7px 7px 0 0;
    font-size: 6px;
    letter-spacing: 0.08em;
}

.cartology-daycard__face {
    gap: 1px;
    padding: 4px 0 1px;
}

.cartology-daycard__rank {
    font-size: 17px;
}

.cartology-daycard__suit {
    font-size: 15px;
}

.cartology-daycard__date {
    font-size: 7px;
}
/* Тема задаёт огромный line-height ссылкам в шапке — гасим его в плашке */
.cartology-daycard,
.cartology-daycard span,
.cartology-daycard b {
    line-height: 1.15 !important;
}

.cartology-daycard__face {
    line-height: 1 !important;
}

.cartology-daycard__top {
    padding: 4px 0 3px;
}

.cartology-daycard__date {
    padding-top: 1px;
}
/* Плашка «Карта дня»: чуть крупнее и с подсветкой, чтобы её замечали */
.cartology-daycard {
    width: 66px;
    margin: 20px 30px 0 16px;
    border: 1px solid rgba(224, 178, 116, 0.7);
    box-shadow: 0 0 0 3px rgba(224, 163, 90, 0.18), 0 8px 20px rgba(0, 0, 0, 0.4);
    animation: cartology-daycard-glow 3.2s ease-in-out infinite;
}

.cartology-daycard:hover,
.cartology-daycard:focus {
    animation: none;
    box-shadow: 0 0 0 4px rgba(224, 163, 90, 0.42), 0 10px 24px rgba(0, 0, 0, 0.5);
}

@keyframes cartology-daycard-glow {
    0%, 100% { box-shadow: 0 0 0 3px rgba(224, 163, 90, 0.16), 0 8px 20px rgba(0, 0, 0, 0.4); }
    50%      { box-shadow: 0 0 0 6px rgba(224, 163, 90, 0.34), 0 8px 22px rgba(0, 0, 0, 0.45); }
}

.cartology-daycard__top {
    font-size: 7px;
    letter-spacing: 0.1em;
}

.cartology-daycard__rank {
    font-size: 22px;
}

.cartology-daycard__suit {
    font-size: 19px;
}

.cartology-daycard__date {
    font-size: 8px;
}

.cartology-daycard__rings i {
    width: 5px;
    height: 10px;
}

@media (prefers-reduced-motion: reduce) {
    .cartology-daycard {
        animation: none;
    }
}
/* Плашка «Расклад на год» */
.cartology-daycard--year .cartology-daycard__top {
    background: #4d3016;
}

.cartology-year-ico {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 3px;
    padding: 8px 12px 6px !important;
}

.cartology-year-ico i {
    width: 100%;
    height: 9px;
    border: 1px solid #8a5a2b;
    border-radius: 2px;
    background: #e6d3b8;
}

.cartology-year-ico i:nth-child(2) {
    background: #b3241f;
    border-color: #b3241f;
}

/* Страница расклада на год */
.cartology-year-form {
    margin: 18px 0 22px;
    padding: 16px 18px;
    border: 1px solid #e2d5c0;
    border-radius: 12px;
    background: #fbf7ee;
}

.cartology-year-form__label {
    margin: 0 0 10px;
    font-weight: 600;
    color: #4d3016;
}

.cartology-year-form__row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.cartology-year-form select {
    min-width: 108px;
    padding: 9px 12px;
    border: 1px solid #d9c9b0;
    border-radius: 8px;
    background: #fff;
    color: #33210f;
    font-size: 15px;
}

.cartology-year-form button {
    padding: 9px 22px;
    border: 0;
    border-radius: 999px;
    background: #4d3016;
    color: #f3e6d4;
    font-size: 15px;
    cursor: pointer;
    transition: background-color 0.16s ease;
}

.cartology-year-form button:hover {
    background: #7a5027;
}

.cartology-year__head {
    margin: 0 0 14px;
}

.cartology-year__age {
    margin: 0 0 6px;
    font-size: 17px;
}

.cartology-year__age span {
    color: #7a6a55;
    font-size: 14px;
}

.cartology-year__base {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    font-size: 17px;
}

.cartology-year__table {
    width: 100%;
    margin: 0 0 16px;
    border-collapse: collapse;
}

.cartology-year__table th {
    padding: 10px 12px;
    border-bottom: 2px solid #e2d5c0;
    color: #7a6a55;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-align: left;
    text-transform: uppercase;
}

.cartology-year__table td {
    padding: 10px 12px;
    border-bottom: 1px solid #efe6d6;
    font-size: 16px;
    vertical-align: middle;
}

.cartology-year__table tr.is-now td {
    background: #fbf1dd;
    font-weight: 600;
}

.cartology-year__extra {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin: 0 0 16px;
    padding: 12px 14px;
    border: 1px dashed #e2d5c0;
    border-radius: 10px;
}

.cartology-year__extra-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
}

.cartology-year__note {
    color: #7a6a55;
    font-size: 14px;
}

.cartology-chip {
    display: inline-flex;
    align-items: baseline;
    gap: 2px;
    min-width: 46px;
    padding: 5px 10px;
    border: 1px solid #ddcdb2;
    border-radius: 7px;
    background: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 18px;
    line-height: 1;
    text-decoration: none !important;
    justify-content: center;
}

.cartology-chip span {
    font-family: "Segoe UI Symbol", "Noto Sans Symbols 2", "DejaVu Sans", Georgia, serif;
}

.cartology-chip--red {
    color: #b3241f !important;
}

.cartology-chip--black {
    color: #33210f !important;
}

a.cartology-chip:hover {
    border-color: #8a5a2b;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}
/* Тема красит таблицы тёмным — в раскладе нужна светлая */
.cartology-year__table,
.cartology-year__table tr,
.cartology-year__table th,
.cartology-year__table td {
    background: transparent !important;
    color: #33210f !important;
    border-color: #efe6d6 !important;
}

.cartology-year__table th {
    background: #f7efe1 !important;
    color: #7a6a55 !important;
    border-bottom: 2px solid #e2d5c0 !important;
}

.cartology-year__table tr.is-now td {
    background: #fbf1dd !important;
    color: #33210f !important;
}

.cartology-year__table tr:hover td {
    background: #fdf8ee !important;
}
.cartology-year__more {
    margin: 4px 0 0;
    font-size: 16px;
}

.cartology-year__more a {
    color: #7a5027 !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.cartology-year__more a:hover {
    color: #4d3016 !important;
}
/* Обе плашки одного размера */
.cartology-daycard__face {
    height: 30px;
    box-sizing: content-box;
    align-items: center;
    justify-content: center;
}

.cartology-year-ico {
    grid-template-rows: repeat(2, 1fr);
    gap: 2px;
    padding: 4px 12px !important;
    height: 30px;
    box-sizing: border-box;
}

.cartology-year-ico i {
    height: auto;
}
/* Ровно одинаковые плашки: одна высота, сетка внутри «Расклада» */
.cartology-daycard {
    display: flex !important;
    flex-direction: column;
    height: 68px;
    box-sizing: border-box;
}

.cartology-daycard__face {
    flex: 1 1 auto;
    height: auto;
    padding: 2px 0 !important;
}

.cartology-year-ico {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 1fr;
    gap: 3px;
    width: 100%;
    padding: 3px 11px !important;
    box-sizing: border-box;
}

.cartology-year-ico i {
    width: auto;
    height: auto;
    min-height: 8px;
    border: 1px solid #8a5a2b;
    border-radius: 2px;
    background: #e6d3b8;
}

.cartology-daycard__date {
    padding-bottom: 1px;
}
/* Как получить материал */
.cartology-buy {
    margin: 26px 0 6px;
    padding: 18px 22px;
    border: 1px solid #e2d5c0;
    border-radius: 12px;
    background: #fbf7ee;
}

.cartology-buy__title {
    margin: 0 0 10px !important;
    color: #4d3016 !important;
    font-size: 19px !important;
}

.cartology-buy__steps {
    margin: 0 0 10px;
    padding-left: 22px;
}

.cartology-buy__steps li {
    margin: 0 0 7px;
    color: #33210f;
    font-size: 16px;
    line-height: 1.5;
}

.cartology-buy__steps a {
    color: #7a5027 !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.cartology-buy__note {
    margin: 0;
    color: #7a6a55;
    font-size: 14px;
}

/* Бесплатные инструменты */
.cartology-free {
    margin: 16px 0 4px;
    padding-top: 14px;
    border-top: 1px solid #ece2d0;
}

.cartology-free__title {
    margin: 0 0 10px;
    color: #7a6a55;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.cartology-free__row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.cartology-free__item {
    display: block;
    padding: 9px 16px;
    border: 1px solid #d9c9b0;
    border-radius: 10px;
    background: #fff;
    color: #4d3016 !important;
    text-decoration: none !important;
    transition: border-color 0.16s ease, box-shadow 0.16s ease;
}

.cartology-free__item b {
    display: block;
    font-size: 15px;
}

.cartology-free__item span {
    display: block;
    color: #8a7a63;
    font-size: 12px;
}

.cartology-free__item:hover {
    border-color: #8a5a2b;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
}

/* Разделы вдоль нижней границы шапки */
.cartology-topnav {
    position: absolute;
    left: 30px;
    bottom: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.cartology-topnav__item {
    padding: 6px 15px;
    border: 1px solid rgba(205, 193, 177, 0.45);
    border-radius: 999px;
    color: #e0d3bf !important;
    font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 12px !important;
    letter-spacing: 0.06em;
    line-height: 1.1 !important;
    text-decoration: none !important;
    text-transform: uppercase;
    white-space: nowrap;
    transition: background-color 0.16s ease, color 0.16s ease, border-color 0.16s ease;
}

.cartology-topnav__item:hover,
.cartology-topnav__item:focus {
    background: #e0d3bf;
    border-color: #e0d3bf;
    color: #2a1a0d !important;
}

@media (max-width: 900px) {
    .cartology-topnav {
        position: static;
        margin: 0 0 12px 30px;
    }
}
/* Место под нижний ряд разделов в шапке */
@media (min-width: 901px) {
    .site-header .site-start {
        padding-bottom: 44px;
    }

    .cartology-topnav {
        bottom: 12px;
    }
}
/* Разделы — на одной линии с «Закрытый клуб» */
@media (min-width: 901px) {
    .site-header .site-start {
        padding-bottom: 0;
    }

    .cartology-topnav {
        top: 60px;
        bottom: auto;
        left: 210px;
        gap: 7px;
    }

    .cartology-topnav__item {
        padding: 5px 13px;
        font-size: 11px !important;
    }
}
/* Кнопка «Показать» — тема задаёт большой line-height, текст уезжал вниз */
.cartology-year-form__row {
    align-items: center;
}

.cartology-year-form button,
.cartology-year-form select {
    line-height: 1.2 !important;
    height: 42px;
    box-sizing: border-box;
}

.cartology-year-form button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
/* Карта дня: плашка-кнопка и всплывающее описание */
.cartology-daycard-wrap {
    position: relative;
    float: right;
}

.cartology-daycard {
    float: none;
    border: 1px solid rgba(224, 178, 116, 0.7);
    cursor: pointer;
    font: inherit;
    text-align: center;
}

.cartology-daycard__pop {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    z-index: 60;
    width: 300px;
    padding: 16px 18px;
    border: 1px solid #e2d5c0;
    border-radius: 12px;
    background: #fbf7ee;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.4);
    color: #33210f;
    text-align: left;
}

.cartology-daycard__pop p {
    margin: 0 0 9px;
    font-size: 14px;
    line-height: 1.5;
}

.cartology-daycard__pop-head {
    color: #4d3016;
    font-size: 17px !important;
    font-weight: 700;
}

.cartology-daycard__pop-head span {
    color: #8a7a63;
    font-size: 13px;
    font-weight: 400;
}

.cartology-daycard__more {
    display: inline-block;
    margin-top: 2px;
    color: #7a5027 !important;
    font-size: 14px;
    text-decoration: underline;
    text-underline-offset: 3px;
}

@media (max-width: 900px) {
    .cartology-daycard-wrap {
        float: none;
    }

    .cartology-daycard__pop {
        right: auto;
        left: 0;
        width: min(300px, calc(100vw - 60px));
    }
}
/* Нижняя граница плашек — на линии «Елена Лагодская» */
@media (min-width: 901px) {
    .cartology-topnav {
        top: 84px;
        bottom: auto;
    }
}
/* Ряд разделов — по центру шапки */
@media (min-width: 901px) {
    .cartology-topnav {
        left: 50%;
        transform: translateX(-50%);
    }
}
/* «Расклад на год» — рядом с картой дня */
.cartology-daycard--year {
    float: right;
    margin-right: 14px;
}

.cartology-daycard-wrap {
    margin-right: 30px;
}

.cartology-daycard-wrap .cartology-daycard {
    margin-right: 0;
}
/* Поиск в шапке — закреплён на одном месте и не наезжает на плашки */
@media (min-width: 901px) {
    .site-header .header-search {
        position: absolute !important;
        right: 210px;
        bottom: 8px;
        top: auto !important;
        left: auto !important;
        z-index: 6;
        margin: 0 !important;
        float: none !important;
    }
}

@media (max-width: 900px) {
    .site-header .header-search {
        position: static !important;
        margin: 0 30px 12px !important;
    }
}
/* Окна у плашек шапки — как выпадающие подрубрики */
.cartology-pop-wrap {
    position: relative;
    display: inline-block;
}

.cartology-pop {
    position: absolute;
    top: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    z-index: 70;
    width: 330px;
    max-width: calc(100vw - 40px);
    padding: 16px 18px;
    border: 1px solid #e2d5c0;
    border-radius: 12px;
    background: #fbf7ee;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.4);
    color: #33210f;
    text-align: left;
    white-space: normal;
}

.cartology-pop-wrap:hover .cartology-pop[hidden] {
    display: block !important;
}

.cartology-pop p {
    margin: 0 0 9px;
    font-size: 14px;
    line-height: 1.5;
}

.cartology-pop__head {
    color: #4d3016;
    font-size: 17px !important;
    font-weight: 700;
}

.cartology-pop__list {
    margin: 0 0 8px;
    padding-left: 18px;
    font-size: 14px;
    line-height: 1.5;
}

.cartology-pop__list li {
    margin: 0 0 6px;
}

.cartology-pop a {
    color: #7a5027 !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.cartology-pop__all {
    display: inline-block;
    margin-top: 4px;
    font-weight: 600;
}

.cartology-topnav__item.cartology-pop-btn {
    cursor: pointer;
    font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
    background: transparent;
}
.cartology-pop[hidden] {
    display: none !important;
}

.cartology-pop:not([hidden]) {
    display: block;
}

.cartology-pop-wrap:hover .cartology-pop[hidden] {
    display: block !important;
}
/* Шапка: плашки, разделы и поиск — фиксированные места */
@media (min-width: 901px) {
    .site-header .site-start {
        padding-bottom: 34px;
    }

    .cartology-daycard-wrap {
        margin: 12px 30px 0 0;
    }

    .cartology-daycard--year {
        margin: 12px 14px 0 0;
    }

    .cartology-topnav {
        top: 76px;
        bottom: auto;
        flex-wrap: nowrap;
        align-items: center;
    }

    .site-header .header-search {
        right: 30px !important;
        bottom: 6px !important;
        top: auto !important;
    }
}
/* Все плашки разделов — одного размера */
.cartology-topnav__item,
a.cartology-topnav__item,
button.cartology-topnav__item {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    height: 28px;
    padding: 0 15px !important;
    box-sizing: border-box;
    font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 11px !important;
    font-weight: 400;
    letter-spacing: 0.06em;
    line-height: 1 !important;
}
/* Шапка: выравнивание плашек и высота */
@media (min-width: 901px) {
    .site-header .site-start {
        padding-bottom: 16px;
    }

    .cartology-daycard-wrap {
        margin: 10px 30px 0 0;
    }

    .cartology-daycard-wrap .cartology-daycard {
        margin: 0 !important;
    }

    .cartology-daycard--year {
        margin: 10px 14px 0 0 !important;
    }

    .cartology-topnav {
        top: 57px;
        height: 28px;
        flex-wrap: nowrap;
    }

    .site-header .header-search {
        right: 30px !important;
        bottom: 6px !important;
    }
}
/* Нижняя окантовка плашек — ровно на линии «Елена Лагодская» */
@media (min-width: 901px) {
    .cartology-topnav {
        top: 80px;
    }
}
/* Ряд разделов — на сантиметр правее центра */
@media (min-width: 901px) {
    .cartology-topnav {
        transform: translateX(calc(-50% + 38px));
    }
}
/* Расшифровка карты в Меркурии — окно при наведении */
.cartology-merc {
    position: relative;
    display: inline-block;
}

.cartology-merc__pop {
    position: absolute;
    right: 0;
    left: auto;
    top: calc(100% + 8px);
    z-index: 40;
    display: none;
    width: 320px;
    max-width: calc(100vw - 48px);
    padding: 14px 16px;
    border: 1px solid #e2d5c0;
    border-radius: 12px;
    background: #fbf7ee;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
    color: #33210f;
    font-family: Inter, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    text-align: left;
    white-space: normal;
}

.cartology-merc:hover .cartology-merc__pop,
.cartology-merc:focus-within .cartology-merc__pop {
    display: block;
}

.cartology-merc__head {
    display: block;
    margin-bottom: 8px;
    color: #4d3016;
    font-size: 15px;
}

.cartology-merc__text,
.cartology-merc__row {
    display: block;
    margin-bottom: 8px;
    font-size: 13.5px;
    line-height: 1.5;
}

.cartology-merc__row em {
    font-style: normal;
    color: #8a6a45;
}

.cartology-merc__wait {
    display: block;
    margin-bottom: 8px;
    color: #9b8a77;
    font-size: 13.5px;
}

.cartology-merc__more {
    display: block;
    color: #6b5340;
    font-size: 13px;
    line-height: 1.5;
}

.cartology-merc__more a {
    color: #7a5027 !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.cartology-merc__more a:hover {
    color: #4d3016 !important;
}

.cartology-merc__sep {
    color: #b8a68f;
}

.cartology-year__extra-item .cartology-merc__pop {
    width: 300px;
}

.cartology-year__table tr:first-child td {
    position: relative;
}



/* Лунные сутки — описание дня */
.cartology-moon-day {
    margin: 18px 0 24px;
    padding: 16px 18px;
    border: 1px solid #e2d5c0;
    border-left: 4px solid #b08d57;
    border-radius: 10px;
    background: #fbf7ee;
}

.cartology-moon-day__head {
    display: block;
    margin-bottom: 6px;
    color: #4d3016;
    font-size: 16px;
}

.cartology-moon-day__text {
    margin: 0;
    color: #33210f;
    font-size: 15px;
    line-height: 1.6;
}

.cartology-moon-list__symbol {
    margin-left: 10px;
    color: #7a5027;
    font-size: 13px;
    border-bottom: 1px dotted #b08d57;
    cursor: help;
}

/* Подпись сайта не выводим в шапке — она нужна поисковику, а не в строке с названием */
.site-header .site-description,
#masthead .site-description {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

/* Разделитель в названии: высота задавалась в em при нулевом шрифте — линии не было видно */
.site-title h1 a .site-title__sep {
    width: 2px !important;
    height: 19px !important;
    margin: 0 14px !important;
}

@media (max-width: 600px) {
    .site-title h1 a .site-title__sep {
        height: 14px !important;
        margin: 0 9px !important;
    }
}

/* Шапка выше: под плашками остаётся воздух, окантовка видна целиком */
@media (min-width: 901px) {
    .site-header .site-start {
        padding-bottom: 30px !important;
    }
}

@media (max-width: 900px) {
    .site-header .site-start {
        padding-bottom: 22px !important;
    }
}

/* Приглашение в группу — в подвале страниц «Живой материи» */
.cartology-footer .cartology-ok,
.cartology-ok {
    display: flex !important;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    margin: 0 0 26px;
    padding: 16px 22px;
    background: #e0d3bf;
    border: 1px solid #b0743a;
    border-radius: 10px;
    text-decoration: none !important;
    color: #262018 !important;
}

.cartology-ok:hover {
    background: #e9dfcd;
}

.cartology-ok__badge {
    flex: 0 0 auto;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: #b0743a;
    color: #e0d3bf;
    font: 700 24px/52px Georgia, "Times New Roman", serif;
    text-align: center;
}

.cartology-ok__body {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.cartology-ok__title {
    font-size: 19px;
    font-weight: 700;
    color: #262018;
}

.cartology-ok__note {
    font-size: 14px;
    line-height: 1.45;
    color: #4d4238;
}

.cartology-ok__link {
    font-size: 15px;
    font-style: italic;
    color: #8f5a22;
    text-decoration: underline;
}

@media (max-width: 560px) {
    .cartology-ok {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
}

/* ---------- Плашка «Ваша карта рождения» ---------- */
.cartology-bc {
    margin: 26px 0 34px;
    border: 1px solid #cdc1b1;
    border-radius: 12px;
    background: #ffffff;
    overflow: hidden;
}

.cartology-bc__head {
    background: #fffff0;
    border-bottom: 1px solid #e2d5c0;
    padding: 20px 22px 16px;
}

.cartology-bc__kicker {
    font-size: 11px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: #8a5a2b;
    margin-bottom: 7px;
}

.cartology-bc__title {
    margin: 0 0 6px;
    font-size: 22px;
    line-height: 1.3;
    color: #5c3a1c;
}

.cartology-bc__lead {
    margin: 0;
    font-size: 15px;
    color: #5c6166;
}

.cartology-bc__form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 16px 22px 0;
}

.cartology-bc__form select {
    min-width: 132px;
    padding: 9px 12px;
    border: 1px solid #cdc1b1;
    border-radius: 8px;
    background: #ffffff;
    color: #1f2124;
    font-size: 15px;
    cursor: pointer;
}

.cartology-bc__hint {
    margin: 10px 0 0;
    padding: 0 22px 18px;
    font-size: 12.5px;
    color: #8f867d;
}

.cartology-bc__res {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    border-top: 1px dashed #e2d5c0;
    padding: 20px 22px 22px;
}

.cartology-bc__res[hidden] {
    display: none;
}

.cartology-bc__card {
    position: relative;
    flex: 0 0 118px;
    width: 118px;
    height: 168px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #cdc1b1;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 3px 12px rgba(92, 58, 28, .14);
}

.cartology-bc__card b {
    font-size: 58px;
    line-height: 1;
    font-weight: 400;
}

.cartology-bc__cor {
    position: absolute;
    font-size: 15px;
    line-height: 1.05;
    text-align: center;
}

.cartology-bc__cor--tl {
    top: 7px;
    left: 9px;
}

.cartology-bc__cor--br {
    right: 9px;
    bottom: 7px;
    transform: rotate(180deg);
}

.cartology-bc__card--red {
    color: #a8202c;
}

.cartology-bc__card--black {
    color: #1f2124;
}

.cartology-bc__body {
    flex: 1;
    min-width: 0;
}

.cartology-bc__name {
    font-size: 22px;
    color: #5c3a1c;
    margin-bottom: 2px;
}

.cartology-bc__sub {
    font-size: 14px;
    font-style: italic;
    color: #8a5a2b;
    margin-bottom: 11px;
}

.cartology-bc__text {
    margin: 0 0 15px;
    font-size: 15px;
    line-height: 1.6;
    color: #33210f;
}

.cartology-bc__btn {
    display: inline-block;
    padding: 10px 20px;
    border: 1px solid #5c3a1c;
    border-radius: 22px;
    background: #5c3a1c;
    color: #fffff0 !important;
    font-size: 14.5px;
    text-decoration: none !important;
}

.cartology-bc__btn:hover {
    background: #4d3016;
    border-color: #4d3016;
}

.cartology-bc__all {
    display: inline-block;
    margin-left: 14px;
    font-size: 13.5px;
    color: #7a5027 !important;
}

.cartology-bc__miss {
    margin: 12px 0 0;
    font-size: 12.5px;
    color: #8f867d;
}

@media (max-width: 600px) {
    .cartology-bc__res {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .cartology-bc__all {
        display: block;
        margin: 12px 0 0;
    }
}

/* Пункт «Ваша карта рождения» — плашкой, как «Получить материал». */
#left-menu > li.cartology-menu-karta > a {
    margin: 4px 0;
    padding-right: 5px !important;
    padding-left: 5px !important;
    border: 1px solid rgba(205, 193, 177, 0.55);
    border-radius: 10px;
    color: #cdc1b1 !important;
    font-size: 12px !important;
    text-align: center;
    white-space: nowrap;
}

#left-menu > li.cartology-menu-karta > a:hover {
    background-color: #cdc1b1 !important;
    color: #111 !important;
}

/* Списки сильных и слабых сторон в плашке «Ваша карта рождения». */
.cartology-bc__cols {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 6px 26px;
    margin: 0 0 14px;
}

.cartology-bc__cols[hidden] {
    display: none;
}

.cartology-bc__coltitle {
    margin-bottom: 4px;
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.cartology-bc__coltitle--plus {
    color: #3f6b3a;
}

.cartology-bc__coltitle--minus {
    color: #8a5a2b;
}

.cartology-bc__list {
    margin: 0 0 8px;
    padding-left: 18px;
    font-size: 14px;
    line-height: 1.5;
    color: #33210f;
}

.cartology-bc__list li {
    margin: 0 0 2px;
}

.cartology-bc__gen {
    margin: 0 0 15px;
    padding: 12px 14px;
    border-left: 3px solid #cdc1b1;
    background: #fffff0;
    font-size: 14.5px;
    line-height: 1.6;
    color: #33210f;
}

.cartology-bc__gen[hidden] {
    display: none;
}

/* «Ещё сильных и слабых сторон» и блок «Что в полном разборе». */
.cartology-bc__more {
    margin: -4px 0 14px;
    font-size: 13.5px;
    color: #8f867d;
}

.cartology-bc__more[hidden] {
    display: none;
}

.cartology-bc__buy {
    margin: 0 0 16px;
    padding: 14px 16px;
    border: 1px solid #e2d5c0;
    border-radius: 10px;
    background: #ffffff;
}

.cartology-bc__buy[hidden] {
    display: none;
}

.cartology-bc__buytitle {
    margin-bottom: 8px;
    font-size: 12px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #8a5a2b;
}

.cartology-bc__buylist {
    margin: 0 0 10px;
    padding-left: 18px;
    font-size: 14px;
    line-height: 1.55;
    color: #33210f;
}

.cartology-bc__buylist li {
    margin: 0 0 3px;
}

.cartology-bc__buyfoot {
    font-size: 13.5px;
    color: #5c3a1c;
}

/* ------------------------------------------------------------------
   Плашки шапки в едином тёмном виде: «Знаки судьбы», «Расклад», «Карта дня».
   Слева направо они идут в этом порядке — плавающие блоки строятся справа налево.
   ------------------------------------------------------------------ */
.cartology-daycard-wrap {
    float: right;
    width: auto;
}

.cartology-daycard {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    padding: 8px 6px 7px;
    background: linear-gradient(180deg, #151822 0%, #0e1015 100%);
    border: 1px solid rgba(201, 162, 39, 0.45);
    border-radius: 12px 12px 6px 6px;
    box-shadow: none;
    animation: none;
    color: #ded5c4 !important;
}

.cartology-daycard:hover,
.cartology-daycard:focus {
    border-color: #c9a227;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.5);
    animation: none;
}

/* пружинка блокнота в новом оформлении не нужна */
.cartology-daycard__rings {
    display: none;
}

.cartology-daycard__top {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #c9a227;
    font-family: "Manrope", "Segoe UI", sans-serif;
    font-weight: 700;
    font-size: 7px;
    line-height: 1.2;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.cartology-daycard__face {
    margin: 1px 0 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: #ded5c4;
}

.cartology-daycard__rank {
    color: #ded5c4;
}

.cartology-daycard__suit {
    color: #e3c665;
}

.cartology-daycard__date {
    margin-top: 2px;
    color: #b3ab9c;
    font-size: 9px;
    line-height: 1.2;
}

/* «Знаки судьбы» — та же коробочка, только с надписью вместо карты */
.cartology-znaki,
.cartology-znaki * {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    font: inherit;
    color: inherit;
    letter-spacing: normal;
    text-transform: none;
    text-decoration: none;
    float: none;
    line-height: inherit;
    box-sizing: border-box;
}

.cartology-znaki {
    float: right;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
    width: 66px;
    height: 68px;
    margin: 20px 30px 0 16px;
    padding: 6px 4px;
    line-height: 1.3;
    text-align: center;
    cursor: pointer;
    background: linear-gradient(180deg, #151822 0%, #0e1015 100%);
    border: 1px solid rgba(201, 162, 39, 0.45);
    border-radius: 12px 12px 6px 6px;
    transition: border-color 0.18s, box-shadow 0.18s;
}

.cartology-znaki:hover,
.cartology-znaki:focus {
    border-color: #c9a227;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.5);
}

.cartology-znaki__name {
    font-family: "Cormorant Garamond", Georgia, serif;
    font-weight: 300;
    font-size: 13px;
    line-height: 1.05;
    color: #ded5c4;
}

.cartology-znaki__name em {
    font-style: normal;
    color: #e3c665;
}

.cartology-znaki__go {
    margin-top: 3px;
    font-family: "Manrope", "Segoe UI", sans-serif;
    font-weight: 700;
    font-size: 7px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #c9a227;
}

/* масть и достоинство на тёмной плашке */
.cartology-daycard--black .cartology-daycard__rank,
.cartology-daycard--red .cartology-daycard__rank {
    color: #ded5c4;
}

.cartology-daycard--black .cartology-daycard__suit {
    color: #ded5c4;
}

.cartology-daycard--red .cartology-daycard__suit {
    color: #d9564a;
}

/* На широком экране кнопки «MENU» нет — ряд плашек стоит у самого края */
@media (min-width: 901px) {
    .cartology-daycard-wrap {
        margin-right: 30px;
    }
}

/* «Знаки судьбы» встают вровень с соседями: те же отступы, что у «Расклада» */
@media (min-width: 901px) {
    .cartology-znaki {
        margin: 10px 14px 0 0;
    }
}

/* На узких экранах ряд плашек уходит под кнопку «MENU», а не наезжает на неё */
@media (max-width: 900px) {
    .cartology-daycard-wrap {
        margin: 46px 30px 0 0;
    }

    .cartology-daycard-wrap .cartology-daycard {
        margin: 0 !important;
    }

    .cartology-daycard--year {
        margin: 46px 14px 0 0 !important;
    }

    .cartology-znaki {
        margin: 46px 14px 0 0;
    }
}

/* Плашка «Карта рождения» — четвёртая в ряду, с астрологическим кругом */
.cartology-astro,
.cartology-astro * {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    font: inherit;
    color: inherit;
    letter-spacing: normal;
    text-transform: none;
    text-decoration: none;
    float: none;
    line-height: inherit;
    box-sizing: border-box;
}

.cartology-astro {
    float: right;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
    width: 66px;
    height: 68px;
    margin: 20px 30px 0 16px;
    padding: 6px 4px;
    line-height: 1.2;
    text-align: center;
    cursor: pointer;
    background: linear-gradient(180deg, #151822 0%, #0e1015 100%);
    border: 1px solid rgba(201, 162, 39, 0.45);
    border-radius: 12px 12px 6px 6px;
    transition: border-color 0.18s, box-shadow 0.18s;
}

.cartology-astro:hover,
.cartology-astro:focus {
    border-color: #c9a227;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.5);
}

.cartology-astro__top,
.cartology-astro__date {
    font-family: "Manrope", "Segoe UI", sans-serif;
    font-weight: 700;
    font-size: 7px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #c9a227;
}

.cartology-astro__date {
    font-weight: 600;
    color: #b3ab9c;
    letter-spacing: 0.1em;
}

.cartology-astro__wheel {
    width: 32px;
    height: 32px;
    margin: 1px 0;
    fill: none;
    stroke: #ded5c4;
    stroke-width: 1;
}

.cartology-astro__wheel circle {
    stroke: #ded5c4;
}

.cartology-astro__wheel line {
    stroke: #8a8172;
}

.cartology-astro__wheel line.ax {
    stroke: #e3c665;
    stroke-width: 1.2;
}

@media (min-width: 901px) {
    .cartology-astro {
        margin: 10px 14px 0 0;
    }
}

@media (max-width: 900px) {
    .cartology-astro {
        margin: 46px 14px 0 0;
    }
}

/* Ряд разделов ниже, под ним больше воздуха */
@media (min-width: 901px) {
    .cartology-topnav {
        top: 96px;
    }

    .site-header .site-start {
        padding-bottom: 46px !important;
    }
}

@media (max-width: 900px) {
    .cartology-topnav {
        top: 73px;
    }

    .site-header .site-start {
        padding-bottom: 36px !important;
    }
}

/* Круг в плашке — как на классической натальной карте */
.cartology-astro__wheel circle.band {
    fill: none;
    stroke: #ded5c4;
    stroke-width: 3.4;
    opacity: 0.92;
}

.cartology-astro__wheel circle.rim {
    fill: none;
    stroke: #8d8577;
    stroke-width: 0.7;
}

.cartology-astro__wheel line.div {
    stroke: #2a2620;
    stroke-width: 0.8;
}

.cartology-astro__wheel line.tick {
    stroke: #6f6858;
    stroke-width: 0.6;
}

.cartology-astro__wheel line.asp {
    stroke: #8a7038;
    stroke-width: 0.65;
    opacity: 0.62;
}

/* «Знаки судьбы» — как соседние плашки: надпись, масти, надпись */
.cartology-znaki__top,
.cartology-znaki__date {
    font-family: "Manrope", "Segoe UI", sans-serif;
    font-weight: 700;
    font-size: 7px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #c9a227;
}

.cartology-znaki__date {
    font-weight: 600;
    letter-spacing: 0.1em;
    color: #b3ab9c;
}

.cartology-znaki__suits {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1px 5px;
    margin: 3px 0 2px;
}

.cartology-znaki__suits i {
    font-style: normal;
    font-size: 13px;
    line-height: 1;
    color: #ded5c4;
}

.cartology-znaki__suits i.red {
    color: #d9564a;
}

/* ------------------------------------------------------------------
   Все четыре плашки подписаны одинаково: верхняя строка золотом,
   нижняя — молочно-серым, один шрифт, размер и разрядка.
   ------------------------------------------------------------------ */
.cartology-daycard__top,
.cartology-znaki__top,
.cartology-astro__top {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    font-family: "Manrope", "Segoe UI", sans-serif;
    font-weight: 700;
    font-size: 7px;
    line-height: 1.2;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #c9a227;
}

/* у «Расклада» от прежнего вида оставалась коричневая подложка */
.cartology-daycard--year .cartology-daycard__top,
.cartology-daycard--black .cartology-daycard__top {
    background: transparent;
    color: #c9a227;
}

.cartology-daycard__date,
.cartology-znaki__date,
.cartology-astro__date {
    margin-top: 2px;
    font-family: "Manrope", "Segoe UI", sans-serif;
    font-weight: 600;
    font-size: 7px;
    line-height: 1.2;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #b3ab9c;
}

/* Отклик на наведение и нажатие — одинаковый у всех четырёх плашек */
.cartology-daycard,
.cartology-znaki,
.cartology-astro {
    transition: border-color 0.18s, box-shadow 0.18s, transform 0.18s;
}

.cartology-daycard:hover,
.cartology-daycard:focus-visible,
.cartology-znaki:hover,
.cartology-znaki:focus-visible,
.cartology-astro:hover,
.cartology-astro:focus-visible {
    border-color: #e3c665;
    box-shadow: 0 0 0 3px rgba(224, 163, 90, 0.22), 0 10px 22px rgba(0, 0, 0, 0.55);
    transform: translateY(-2px);
}

.cartology-daycard:active,
.cartology-znaki:active,
.cartology-astro:active {
    transform: translateY(0);
    box-shadow: 0 0 0 3px rgba(224, 163, 90, 0.3), 0 4px 10px rgba(0, 0, 0, 0.5);
}

/* Надписи всех плашек — на одной линии: верхняя к верху, нижняя к низу */
.cartology-daycard,
.cartology-znaki,
.cartology-astro {
    justify-content: space-between;
    gap: 0;
    padding: 7px 4px 6px;
}

.cartology-daycard__face,
.cartology-znaki__suits,
.cartology-astro__wheel {
    margin-top: auto;
    margin-bottom: auto;
}

.cartology-znaki__suits {
    margin-left: auto;
    margin-right: auto;
}

/* Значок Яндекс.Метрики в подвале — рядом с копирайтом */
.cartology-metrika {
    display: inline-block;
    margin: 12px 0 0;
    line-height: 0;
    opacity: 0.75;
    transition: opacity 0.18s;
}

.cartology-metrika:hover {
    opacity: 1;
}

.cartology-metrika img {
    display: block;
    width: 88px;
    height: 31px;
    border: 0;
    border-radius: 4px;
}

/* Sidebar viewport bounds on the home page, archives and posts. */
@media only screen and (min-width: 960px) {
    body .left-sidebar {
        top: var(--cartology-sidebar-top, 140px) !important;
        bottom: 0 !important;
        height: auto !important;
    }
    body .left-sidebar-wrap {
        height: 100% !important;
        max-height: 100% !important;
        min-height: 0 !important;
        margin-top: 0 !important;
        padding-top: 12px !important;
        padding-bottom: 24px !important;
        box-sizing: border-box;
        overflow-y: auto !important;
        overscroll-behavior-y: contain;
        touch-action: pan-y;
    }
}
